Tag Archives: matlab
Using a Single Event Function to Account for Multiple Events
Hi All,
I have been using event functions in my simulation and they are great. Just ran into a case where I would like to stop the numerical integration after two of my event functions trigger… Can I cherry pick event functions and make a single event function to take care of all?
I am assuming that the event value starts positive and crosses zero at some point. Then, I could probably call another event function inside my current event function, correct? And then, may be I can use max function to choose the largest event value to make sure that all the events are triggered? Will this method work? If so, could this method suffer computationally?
The problem here is that, for the case having multiple events, I do not necessarily know in advance which event would occur first!
Many thanks in advance! 🙂
Sincerely,
Taehun KimHi All,
I have been using event functions in my simulation and they are great. Just ran into a case where I would like to stop the numerical integration after two of my event functions trigger… Can I cherry pick event functions and make a single event function to take care of all?
I am assuming that the event value starts positive and crosses zero at some point. Then, I could probably call another event function inside my current event function, correct? And then, may be I can use max function to choose the largest event value to make sure that all the events are triggered? Will this method work? If so, could this method suffer computationally?
The problem here is that, for the case having multiple events, I do not necessarily know in advance which event would occur first!
Many thanks in advance! 🙂
Sincerely,
Taehun Kim Hi All,
I have been using event functions in my simulation and they are great. Just ran into a case where I would like to stop the numerical integration after two of my event functions trigger… Can I cherry pick event functions and make a single event function to take care of all?
I am assuming that the event value starts positive and crosses zero at some point. Then, I could probably call another event function inside my current event function, correct? And then, may be I can use max function to choose the largest event value to make sure that all the events are triggered? Will this method work? If so, could this method suffer computationally?
The problem here is that, for the case having multiple events, I do not necessarily know in advance which event would occur first!
Many thanks in advance! 🙂
Sincerely,
Taehun Kim ode, event function MATLAB Answers — New Questions
how to convert numerical dataset to image ?
I have a numeric dataset of 2816 x 2500 doubles. I want to convert it to an image format file for convolutional neural network input and then see some of these images. What command should I use?
the size of my file is too large for upload here…I have a numeric dataset of 2816 x 2500 doubles. I want to convert it to an image format file for convolutional neural network input and then see some of these images. What command should I use?
the size of my file is too large for upload here… I have a numeric dataset of 2816 x 2500 doubles. I want to convert it to an image format file for convolutional neural network input and then see some of these images. What command should I use?
the size of my file is too large for upload here… matlab code, image MATLAB Answers — New Questions
How do I change and save Check Box name in app designer so that it loads when I restart the app next time?
I’m trying to change and save a Check Box name given an input from the user from a Edit Field.
I used some code from Here as a starter.
At the top I have defined some functions that I’m using
methods (Access = public)
function saveState(app)
state.CheckBox.Text= app.InputEditField.Value;
state.CheckBox.Text = app.InputEditField.Value;
save(‘MyAppDefaultValues.mat’,’state’);
end
function loadState(app)
load(‘MyAppDefaultValues.mat’,’state’);
app.CheckBox.Text = state.InputEditField.Value;
app.CheckBox.Text = state.InputEditField.Value;
end
end
After that I have the code to try to load a specific state that has been saved.
function startupFcn(app)
try
app.loadState;
catch
end
end
Then I have the code that changes the name of the check box.
function InputEditFieldValueChanged(app, event)
value = app.InputEditField.Value;
app.CheckBox.Text = value;
end
Finally I have the closing out function that will save the state right before closing.
function UIFigureCloseRequest(app, event)
app.saveStateC;
delete(app)
end
What can I change to attain the results I want?I’m trying to change and save a Check Box name given an input from the user from a Edit Field.
I used some code from Here as a starter.
At the top I have defined some functions that I’m using
methods (Access = public)
function saveState(app)
state.CheckBox.Text= app.InputEditField.Value;
state.CheckBox.Text = app.InputEditField.Value;
save(‘MyAppDefaultValues.mat’,’state’);
end
function loadState(app)
load(‘MyAppDefaultValues.mat’,’state’);
app.CheckBox.Text = state.InputEditField.Value;
app.CheckBox.Text = state.InputEditField.Value;
end
end
After that I have the code to try to load a specific state that has been saved.
function startupFcn(app)
try
app.loadState;
catch
end
end
Then I have the code that changes the name of the check box.
function InputEditFieldValueChanged(app, event)
value = app.InputEditField.Value;
app.CheckBox.Text = value;
end
Finally I have the closing out function that will save the state right before closing.
function UIFigureCloseRequest(app, event)
app.saveStateC;
delete(app)
end
What can I change to attain the results I want? I’m trying to change and save a Check Box name given an input from the user from a Edit Field.
I used some code from Here as a starter.
At the top I have defined some functions that I’m using
methods (Access = public)
function saveState(app)
state.CheckBox.Text= app.InputEditField.Value;
state.CheckBox.Text = app.InputEditField.Value;
save(‘MyAppDefaultValues.mat’,’state’);
end
function loadState(app)
load(‘MyAppDefaultValues.mat’,’state’);
app.CheckBox.Text = state.InputEditField.Value;
app.CheckBox.Text = state.InputEditField.Value;
end
end
After that I have the code to try to load a specific state that has been saved.
function startupFcn(app)
try
app.loadState;
catch
end
end
Then I have the code that changes the name of the check box.
function InputEditFieldValueChanged(app, event)
value = app.InputEditField.Value;
app.CheckBox.Text = value;
end
Finally I have the closing out function that will save the state right before closing.
function UIFigureCloseRequest(app, event)
app.saveStateC;
delete(app)
end
What can I change to attain the results I want? app designer MATLAB Answers — New Questions
How can I find status of my model execution?
Interested in showing progress of the model run to user who kicks-off model using MathWorks Http client. is there any out of the box solution available to achieve this?Interested in showing progress of the model run to user who kicks-off model using MathWorks Http client. is there any out of the box solution available to achieve this? Interested in showing progress of the model run to user who kicks-off model using MathWorks Http client. is there any out of the box solution available to achieve this? modelling execution status, status MATLAB Answers — New Questions
Unable to load MathworksSimulation Plugin in Unreal
Hi,
I have installed "Vehicle Dynamics Blockset Interface for Unreal Engine 4 Projects" and trying to run the Custom method to open the AutoVrtlEnv project in Unreal.
I have followed the procedure https://in.mathworks.com/help/vdynblks/ug/support-package-for-customizing-scenes.html, installed UE4.19 (tried with 4.19.2, 4.19.0, 4.19.2_release tags from Unreal github directories and buiding the executable as EPIC Launcher is having only UE4.24 and UE4.23 versions as of now).
When tried to open the project from Matlab environment, I am getting the following errors:
Missing or incompatible:
2. If I choose No in the above option (step 1) then getting the error as failed to load:
3. If I press OK in step 2, the Epic launcher app is launched which provides only the latest 4.24 version launch option.
4. If I press Yes in step 1, the AutoVrtlEnv project is opened but having the Load errors as below:
5. Also having the MathworksSimulation Plugin disabled:
6. If I try to enable, the Unreal application is asking for a restart and the same sequence continues. Below snapshots are for your reference on the unreal version being used:
Note that the source is built using the Github https://github.com/EpicGames/UnrealEngine/tree/4.19. I also tried with https://github.com/EpicGames/UnrealEngine/tree/4.19.2-release and https://github.com/EpicGames/UnrealEngine/tree/4.19.0-release. But all are providing the same above errors only.
7. I tried opening the AutoVrtlEnv project using the latest UE 4.24.1. But getting the following error:
8. If I provide No, then the project is not loaded. If I press Yes, then getting the following error:
Request your support in adding the MathworksSimulation plugin inside Unreal engine and use the custom mode to edit the scenes in VehicleDynamicsBlockset.Hi,
I have installed "Vehicle Dynamics Blockset Interface for Unreal Engine 4 Projects" and trying to run the Custom method to open the AutoVrtlEnv project in Unreal.
I have followed the procedure https://in.mathworks.com/help/vdynblks/ug/support-package-for-customizing-scenes.html, installed UE4.19 (tried with 4.19.2, 4.19.0, 4.19.2_release tags from Unreal github directories and buiding the executable as EPIC Launcher is having only UE4.24 and UE4.23 versions as of now).
When tried to open the project from Matlab environment, I am getting the following errors:
Missing or incompatible:
2. If I choose No in the above option (step 1) then getting the error as failed to load:
3. If I press OK in step 2, the Epic launcher app is launched which provides only the latest 4.24 version launch option.
4. If I press Yes in step 1, the AutoVrtlEnv project is opened but having the Load errors as below:
5. Also having the MathworksSimulation Plugin disabled:
6. If I try to enable, the Unreal application is asking for a restart and the same sequence continues. Below snapshots are for your reference on the unreal version being used:
Note that the source is built using the Github https://github.com/EpicGames/UnrealEngine/tree/4.19. I also tried with https://github.com/EpicGames/UnrealEngine/tree/4.19.2-release and https://github.com/EpicGames/UnrealEngine/tree/4.19.0-release. But all are providing the same above errors only.
7. I tried opening the AutoVrtlEnv project using the latest UE 4.24.1. But getting the following error:
8. If I provide No, then the project is not loaded. If I press Yes, then getting the following error:
Request your support in adding the MathworksSimulation plugin inside Unreal engine and use the custom mode to edit the scenes in VehicleDynamicsBlockset. Hi,
I have installed "Vehicle Dynamics Blockset Interface for Unreal Engine 4 Projects" and trying to run the Custom method to open the AutoVrtlEnv project in Unreal.
I have followed the procedure https://in.mathworks.com/help/vdynblks/ug/support-package-for-customizing-scenes.html, installed UE4.19 (tried with 4.19.2, 4.19.0, 4.19.2_release tags from Unreal github directories and buiding the executable as EPIC Launcher is having only UE4.24 and UE4.23 versions as of now).
When tried to open the project from Matlab environment, I am getting the following errors:
Missing or incompatible:
2. If I choose No in the above option (step 1) then getting the error as failed to load:
3. If I press OK in step 2, the Epic launcher app is launched which provides only the latest 4.24 version launch option.
4. If I press Yes in step 1, the AutoVrtlEnv project is opened but having the Load errors as below:
5. Also having the MathworksSimulation Plugin disabled:
6. If I try to enable, the Unreal application is asking for a restart and the same sequence continues. Below snapshots are for your reference on the unreal version being used:
Note that the source is built using the Github https://github.com/EpicGames/UnrealEngine/tree/4.19. I also tried with https://github.com/EpicGames/UnrealEngine/tree/4.19.2-release and https://github.com/EpicGames/UnrealEngine/tree/4.19.0-release. But all are providing the same above errors only.
7. I tried opening the AutoVrtlEnv project using the latest UE 4.24.1. But getting the following error:
8. If I provide No, then the project is not loaded. If I press Yes, then getting the following error:
Request your support in adding the MathworksSimulation plugin inside Unreal engine and use the custom mode to edit the scenes in VehicleDynamicsBlockset. matlab, simulink, vehicle dynamics blockset, unreal engine, mathworkssimulation plugin, autovrtlenv MATLAB Answers — New Questions
Empirical relations generation for big data
Hi everyone, I am asking if there is an empirical realtions generator. I have a large set of data which are stored in multiple 5-D arrays and i want to replace each array with a suitable empirical relation to make me able to generate-by embedded coder-an effective and executable C code for a model that uses these data. This is also to reduce the generated files size to be burnable on the chip.
Is there any automatic tool or automated method for that?
Thanks alot !Hi everyone, I am asking if there is an empirical realtions generator. I have a large set of data which are stored in multiple 5-D arrays and i want to replace each array with a suitable empirical relation to make me able to generate-by embedded coder-an effective and executable C code for a model that uses these data. This is also to reduce the generated files size to be burnable on the chip.
Is there any automatic tool or automated method for that?
Thanks alot ! Hi everyone, I am asking if there is an empirical realtions generator. I have a large set of data which are stored in multiple 5-D arrays and i want to replace each array with a suitable empirical relation to make me able to generate-by embedded coder-an effective and executable C code for a model that uses these data. This is also to reduce the generated files size to be burnable on the chip.
Is there any automatic tool or automated method for that?
Thanks alot ! simulink, embedded coder, matlab coder, matlab, c++, mathematics MATLAB Answers — New Questions
Filled error bars to a plot
Hello,
I have been trying to create some error bars in my MATLAB script. However, I think there are some problems. I have made a figure with three plots, and I wish to have "filled" error bars for the DO and pH. Additionally, the error bars for biomass have lines between the points, which I don’t know how to remove. It would be nice if only the error bars were present.
I have inserted the code to my plot and data. Excel file is attached aswell.
growth = readtable("growthWT2.xlsx")
time = [growth.Time_h_];
timeOD = [growth.Time_h__1];
DO_1 = [growth.O21];
DO_2 = [growth.O22];
DO_3 = [growth.O23];
mean_DO = [growth.MeanO2];
S_DO = [DO_1 DO_2 DO_3];
stand_DO = std(S_DO,0,2);
pH_1 = [growth.pH1];
pH_2 = [growth.pH2];
pH_3 = [growth.pH3];
mean_pH = [growth.meanPH];
S_pH = [pH_1 pH_2 pH_3];
stand_pH = std(S_pH,0,2);
Bio_1 = [growth.biomass1];
Bio_2 = [growth.biomass2];
Bio_3 = [growth.biomass3];
mean_bio = [growth.MeanBio];
S_bio = [Bio_1 Bio_2 Bio_3];
stand_bio = std(S_bio,0,2);
% mean values
t = tiledlayout(2,1);
nexttile
yyaxis left
fill([time, flip(time)], [mean_DO+stand_DO, flip(mean_DO-stand_DO)], ‘b’, ‘FaceAlpha’, 0.3, ‘EdgeColor’, ‘none’)
hold on
plot(time, mean_DO, ‘b’)
ylabel(‘DO’)
yyaxis right
fill([time, flip(time)], [mean_pH+stand_pH, flip(mean_pH-stand_pH)], ‘r’, ‘FaceAlpha’, 0.3, ‘EdgeColor’, ‘none’)
hold on
plot(time,mean_pH, ‘r’)
ylabel(‘pH’)
legend(‘DO’, ‘DO Std Dev’ ,’pH’, ‘pH Std dev’)
nexttile
plot(timeOD,mean_bio,’o’)
hold on
errorbar(timeOD, mean_bio, stand_bio)
ylabel(‘Biomass [g/L]’)
legend(‘Biomass’, ‘Biomass Std Dev’)
title(t,’Growth parameters of PR01 average value’)
xlabel(t,’Time [h]’)Hello,
I have been trying to create some error bars in my MATLAB script. However, I think there are some problems. I have made a figure with three plots, and I wish to have "filled" error bars for the DO and pH. Additionally, the error bars for biomass have lines between the points, which I don’t know how to remove. It would be nice if only the error bars were present.
I have inserted the code to my plot and data. Excel file is attached aswell.
growth = readtable("growthWT2.xlsx")
time = [growth.Time_h_];
timeOD = [growth.Time_h__1];
DO_1 = [growth.O21];
DO_2 = [growth.O22];
DO_3 = [growth.O23];
mean_DO = [growth.MeanO2];
S_DO = [DO_1 DO_2 DO_3];
stand_DO = std(S_DO,0,2);
pH_1 = [growth.pH1];
pH_2 = [growth.pH2];
pH_3 = [growth.pH3];
mean_pH = [growth.meanPH];
S_pH = [pH_1 pH_2 pH_3];
stand_pH = std(S_pH,0,2);
Bio_1 = [growth.biomass1];
Bio_2 = [growth.biomass2];
Bio_3 = [growth.biomass3];
mean_bio = [growth.MeanBio];
S_bio = [Bio_1 Bio_2 Bio_3];
stand_bio = std(S_bio,0,2);
% mean values
t = tiledlayout(2,1);
nexttile
yyaxis left
fill([time, flip(time)], [mean_DO+stand_DO, flip(mean_DO-stand_DO)], ‘b’, ‘FaceAlpha’, 0.3, ‘EdgeColor’, ‘none’)
hold on
plot(time, mean_DO, ‘b’)
ylabel(‘DO’)
yyaxis right
fill([time, flip(time)], [mean_pH+stand_pH, flip(mean_pH-stand_pH)], ‘r’, ‘FaceAlpha’, 0.3, ‘EdgeColor’, ‘none’)
hold on
plot(time,mean_pH, ‘r’)
ylabel(‘pH’)
legend(‘DO’, ‘DO Std Dev’ ,’pH’, ‘pH Std dev’)
nexttile
plot(timeOD,mean_bio,’o’)
hold on
errorbar(timeOD, mean_bio, stand_bio)
ylabel(‘Biomass [g/L]’)
legend(‘Biomass’, ‘Biomass Std Dev’)
title(t,’Growth parameters of PR01 average value’)
xlabel(t,’Time [h]’) Hello,
I have been trying to create some error bars in my MATLAB script. However, I think there are some problems. I have made a figure with three plots, and I wish to have "filled" error bars for the DO and pH. Additionally, the error bars for biomass have lines between the points, which I don’t know how to remove. It would be nice if only the error bars were present.
I have inserted the code to my plot and data. Excel file is attached aswell.
growth = readtable("growthWT2.xlsx")
time = [growth.Time_h_];
timeOD = [growth.Time_h__1];
DO_1 = [growth.O21];
DO_2 = [growth.O22];
DO_3 = [growth.O23];
mean_DO = [growth.MeanO2];
S_DO = [DO_1 DO_2 DO_3];
stand_DO = std(S_DO,0,2);
pH_1 = [growth.pH1];
pH_2 = [growth.pH2];
pH_3 = [growth.pH3];
mean_pH = [growth.meanPH];
S_pH = [pH_1 pH_2 pH_3];
stand_pH = std(S_pH,0,2);
Bio_1 = [growth.biomass1];
Bio_2 = [growth.biomass2];
Bio_3 = [growth.biomass3];
mean_bio = [growth.MeanBio];
S_bio = [Bio_1 Bio_2 Bio_3];
stand_bio = std(S_bio,0,2);
% mean values
t = tiledlayout(2,1);
nexttile
yyaxis left
fill([time, flip(time)], [mean_DO+stand_DO, flip(mean_DO-stand_DO)], ‘b’, ‘FaceAlpha’, 0.3, ‘EdgeColor’, ‘none’)
hold on
plot(time, mean_DO, ‘b’)
ylabel(‘DO’)
yyaxis right
fill([time, flip(time)], [mean_pH+stand_pH, flip(mean_pH-stand_pH)], ‘r’, ‘FaceAlpha’, 0.3, ‘EdgeColor’, ‘none’)
hold on
plot(time,mean_pH, ‘r’)
ylabel(‘pH’)
legend(‘DO’, ‘DO Std Dev’ ,’pH’, ‘pH Std dev’)
nexttile
plot(timeOD,mean_bio,’o’)
hold on
errorbar(timeOD, mean_bio, stand_bio)
ylabel(‘Biomass [g/L]’)
legend(‘Biomass’, ‘Biomass Std Dev’)
title(t,’Growth parameters of PR01 average value’)
xlabel(t,’Time [h]’) filled error bars, plot MATLAB Answers — New Questions
Filter Design for SHM Feature Engineering
Hello,
My research involves feature engineering signals. I am wondering if anyone can point me in the right direction for using/designing filters to generate features for classification and regression analyses of signals. I found a good source video about using the peaks of filters. However, it is a shot in the dark for me to develop the right filter. Let me know if anyone can point me in the right direction.
LukeHello,
My research involves feature engineering signals. I am wondering if anyone can point me in the right direction for using/designing filters to generate features for classification and regression analyses of signals. I found a good source video about using the peaks of filters. However, it is a shot in the dark for me to develop the right filter. Let me know if anyone can point me in the right direction.
Luke Hello,
My research involves feature engineering signals. I am wondering if anyone can point me in the right direction for using/designing filters to generate features for classification and regression analyses of signals. I found a good source video about using the peaks of filters. However, it is a shot in the dark for me to develop the right filter. Let me know if anyone can point me in the right direction.
Luke signal processing, feature extraction, filter design MATLAB Answers — New Questions
diff not working on a vector of values
Is there a reason why I cant calculate the difference between each of these values (x1)
This is the code Im using
[x1,y1]=SpotFind_NXC(app,ax2); %my function to locate x,y coordinates of spots in an image
x1
class(x1)
xdiff=abs(diff(x1))
and the command window:
x1 =
98.00
97.68
97.75
98.32
221.00
220.99
221.32
221.32
344.00
343.99
344.33
344.25
ans =
‘double’
Unrecognized function or variable ‘diff’.
2nd Question, once it works, how can I group these into "similar values". so ideally I would want the median (or mean) of the 1st group (98.00, 97.68. 97.75, 98.32), and then the median of the 2s group around 221 and the 3rd group around 344.
Thanks
JasonIs there a reason why I cant calculate the difference between each of these values (x1)
This is the code Im using
[x1,y1]=SpotFind_NXC(app,ax2); %my function to locate x,y coordinates of spots in an image
x1
class(x1)
xdiff=abs(diff(x1))
and the command window:
x1 =
98.00
97.68
97.75
98.32
221.00
220.99
221.32
221.32
344.00
343.99
344.33
344.25
ans =
‘double’
Unrecognized function or variable ‘diff’.
2nd Question, once it works, how can I group these into "similar values". so ideally I would want the median (or mean) of the 1st group (98.00, 97.68. 97.75, 98.32), and then the median of the 2s group around 221 and the 3rd group around 344.
Thanks
Jason Is there a reason why I cant calculate the difference between each of these values (x1)
This is the code Im using
[x1,y1]=SpotFind_NXC(app,ax2); %my function to locate x,y coordinates of spots in an image
x1
class(x1)
xdiff=abs(diff(x1))
and the command window:
x1 =
98.00
97.68
97.75
98.32
221.00
220.99
221.32
221.32
344.00
343.99
344.33
344.25
ans =
‘double’
Unrecognized function or variable ‘diff’.
2nd Question, once it works, how can I group these into "similar values". so ideally I would want the median (or mean) of the 1st group (98.00, 97.68. 97.75, 98.32), and then the median of the 2s group around 221 and the 3rd group around 344.
Thanks
Jason diff MATLAB Answers — New Questions
How to subscribe to multiple BLE characteristics that have the same service and characteristic UUID
I am trying to figure out how to subscribe to multiple temperature sensors from a BLE device. My goal is to read all 8 temperature sensors at 1Hz. The BLE device has an environmental sensing service, here are what it’s characteristics look like.
"ServiceName" "ServiceUUID" "CharacteristicName" "CharacteristicUUID" "Attributes"
"Generic Attribute" "1801" "Service Changed" "2A05" "Indicate"
"Generic Attribute" "1801" "Custom" "2B29" 1×2 string
"Generic Attribute" "1801" "Custom" "2B2A" "Read"
"Generic Access" "1800" "Device Name" "2A00" "Read"
"Generic Access" "1800" "Appearance" "2A01" "Read"
"Generic Access" "1800" "Peripheral Preferred Connection Parameters" "2A04" "Read"
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
The 1×2 string is
"Read" "Notify"
The line that I am using works when there is one temperature sensor but not when there are multiple. The line is
characteristic(sensor, "Environmental Sensing", "Temperature")
When I call this line when there are multiple sensors present I get the following error Failed to discover descriptors. If device is disconnected, then clear existing ble object and recreate it. The BLE device is a nRF52 based chip that I wrote the code for with Zephyr. If there is something wrong with how I made the GATT then I can go fix it to work with Matlab better. The descriptors have a characteristic user data field that gives a name for each temperature sensor as Sensor X where X is 0-7. I have confirmed hat the device is not the issue and is programmed correctly by testing it nRF connect.
Update:
Stepping through the code I found the error coming from how the ble message is being given to the transport. It is passing a vector and not a scalar that it seems like it is expecting. For example in Characteristic.m line 315,
methods(Access = {?matlabshared.blelib.Descriptor, ?matlabshared.blelib.read.characteristic.Interface, ?matlabshared.blelib.write.characteristic.Interface})
function output = execute(obj, cmd, varargin)
peripheral = obj.getParent;
% Supress warning that might be thrown in get.Connected
ws = warning(‘off’, ‘MATLAB:ble:ble:deviceDisconnected’);
c = onCleanup(@() cleanup(ws));
if ~peripheral.Connected
matlabshared.blelib.internal.localizedError(‘MATLAB:ble:ble:failToExecuteDeviceDisconnected’);
end
output = peripheral.execute(cmd, obj.ServiceIndex, obj.CharacteristicIndex, varargin{:});
function cleanup(ws)
warning(ws.state, ‘MATLAB:ble:ble:deviceDisconnected’);
end
end
end
For the line
output = peripheral.execute(cmd, obj.ServiceIndex, obj.CharacteristicIndex, varargin{:});
the arguments are
cmd = DISCOVER_DESCRIPTORS
obj.ServiceIndex = 3
obj.CharacteristicIndex = [1;2;3;4;5;6;7;8]
It seems like obj.CharacteristicIndex should be just a number to get it to work.
It seems like the source of the issue starts in ble.m line 411 when
cinfo.Index = find(subtable.CharacteristicUUID == uuid);
returns a column vector instead of a scalar
function cinfo = validateCharacteristic(obj, sinfo, input)
% Check if input is a valid characteristic name or UUID supported
% on the peripheral and return index of the characteristic for
% the specified service
% Validate data type
info = matlabshared.blelib.internal.ServicesCharacteristicsDescriptorsInfo.getInstance;
uuid = info.getCharacteristicUUID(sinfo.UUID, input);
uuid = info.getShortestUUID(uuid);
% Find portion of the table that has the same ServiceUUID
subtable = obj.Characteristics(obj.Characteristics.ServiceUUID == obj.Services.ServiceUUID(sinfo.Index), :);
try
uuid = validatestring(uuid, subtable.CharacteristicUUID);
catch e
if strcmpi(e.identifier,’MATLAB:ambiguousStringChoice’)
throwAsCaller(e);
else
matlabshared.blelib.internal.localizedError(‘MATLAB:ble:ble:unsupportedCharacteristic’);
end
end
cinfo = info.getCharacteristicInfoByUUID(sinfo.UUID, uuid);
cinfo.Index = find(subtable.CharacteristicUUID == uuid);
cinfo.Attributes = subtable.Attributes{cinfo.Index};
end
end
It looks like edits to the files are locked so I can’t quite write a new version of the functions to try and handle the case of multiple entries.I am trying to figure out how to subscribe to multiple temperature sensors from a BLE device. My goal is to read all 8 temperature sensors at 1Hz. The BLE device has an environmental sensing service, here are what it’s characteristics look like.
"ServiceName" "ServiceUUID" "CharacteristicName" "CharacteristicUUID" "Attributes"
"Generic Attribute" "1801" "Service Changed" "2A05" "Indicate"
"Generic Attribute" "1801" "Custom" "2B29" 1×2 string
"Generic Attribute" "1801" "Custom" "2B2A" "Read"
"Generic Access" "1800" "Device Name" "2A00" "Read"
"Generic Access" "1800" "Appearance" "2A01" "Read"
"Generic Access" "1800" "Peripheral Preferred Connection Parameters" "2A04" "Read"
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
The 1×2 string is
"Read" "Notify"
The line that I am using works when there is one temperature sensor but not when there are multiple. The line is
characteristic(sensor, "Environmental Sensing", "Temperature")
When I call this line when there are multiple sensors present I get the following error Failed to discover descriptors. If device is disconnected, then clear existing ble object and recreate it. The BLE device is a nRF52 based chip that I wrote the code for with Zephyr. If there is something wrong with how I made the GATT then I can go fix it to work with Matlab better. The descriptors have a characteristic user data field that gives a name for each temperature sensor as Sensor X where X is 0-7. I have confirmed hat the device is not the issue and is programmed correctly by testing it nRF connect.
Update:
Stepping through the code I found the error coming from how the ble message is being given to the transport. It is passing a vector and not a scalar that it seems like it is expecting. For example in Characteristic.m line 315,
methods(Access = {?matlabshared.blelib.Descriptor, ?matlabshared.blelib.read.characteristic.Interface, ?matlabshared.blelib.write.characteristic.Interface})
function output = execute(obj, cmd, varargin)
peripheral = obj.getParent;
% Supress warning that might be thrown in get.Connected
ws = warning(‘off’, ‘MATLAB:ble:ble:deviceDisconnected’);
c = onCleanup(@() cleanup(ws));
if ~peripheral.Connected
matlabshared.blelib.internal.localizedError(‘MATLAB:ble:ble:failToExecuteDeviceDisconnected’);
end
output = peripheral.execute(cmd, obj.ServiceIndex, obj.CharacteristicIndex, varargin{:});
function cleanup(ws)
warning(ws.state, ‘MATLAB:ble:ble:deviceDisconnected’);
end
end
end
For the line
output = peripheral.execute(cmd, obj.ServiceIndex, obj.CharacteristicIndex, varargin{:});
the arguments are
cmd = DISCOVER_DESCRIPTORS
obj.ServiceIndex = 3
obj.CharacteristicIndex = [1;2;3;4;5;6;7;8]
It seems like obj.CharacteristicIndex should be just a number to get it to work.
It seems like the source of the issue starts in ble.m line 411 when
cinfo.Index = find(subtable.CharacteristicUUID == uuid);
returns a column vector instead of a scalar
function cinfo = validateCharacteristic(obj, sinfo, input)
% Check if input is a valid characteristic name or UUID supported
% on the peripheral and return index of the characteristic for
% the specified service
% Validate data type
info = matlabshared.blelib.internal.ServicesCharacteristicsDescriptorsInfo.getInstance;
uuid = info.getCharacteristicUUID(sinfo.UUID, input);
uuid = info.getShortestUUID(uuid);
% Find portion of the table that has the same ServiceUUID
subtable = obj.Characteristics(obj.Characteristics.ServiceUUID == obj.Services.ServiceUUID(sinfo.Index), :);
try
uuid = validatestring(uuid, subtable.CharacteristicUUID);
catch e
if strcmpi(e.identifier,’MATLAB:ambiguousStringChoice’)
throwAsCaller(e);
else
matlabshared.blelib.internal.localizedError(‘MATLAB:ble:ble:unsupportedCharacteristic’);
end
end
cinfo = info.getCharacteristicInfoByUUID(sinfo.UUID, uuid);
cinfo.Index = find(subtable.CharacteristicUUID == uuid);
cinfo.Attributes = subtable.Attributes{cinfo.Index};
end
end
It looks like edits to the files are locked so I can’t quite write a new version of the functions to try and handle the case of multiple entries. I am trying to figure out how to subscribe to multiple temperature sensors from a BLE device. My goal is to read all 8 temperature sensors at 1Hz. The BLE device has an environmental sensing service, here are what it’s characteristics look like.
"ServiceName" "ServiceUUID" "CharacteristicName" "CharacteristicUUID" "Attributes"
"Generic Attribute" "1801" "Service Changed" "2A05" "Indicate"
"Generic Attribute" "1801" "Custom" "2B29" 1×2 string
"Generic Attribute" "1801" "Custom" "2B2A" "Read"
"Generic Access" "1800" "Device Name" "2A00" "Read"
"Generic Access" "1800" "Appearance" "2A01" "Read"
"Generic Access" "1800" "Peripheral Preferred Connection Parameters" "2A04" "Read"
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Temperature" "2A6E" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
"Environmental Sensing" "181A" "Humidity" "2A6F" 1×2 string
The 1×2 string is
"Read" "Notify"
The line that I am using works when there is one temperature sensor but not when there are multiple. The line is
characteristic(sensor, "Environmental Sensing", "Temperature")
When I call this line when there are multiple sensors present I get the following error Failed to discover descriptors. If device is disconnected, then clear existing ble object and recreate it. The BLE device is a nRF52 based chip that I wrote the code for with Zephyr. If there is something wrong with how I made the GATT then I can go fix it to work with Matlab better. The descriptors have a characteristic user data field that gives a name for each temperature sensor as Sensor X where X is 0-7. I have confirmed hat the device is not the issue and is programmed correctly by testing it nRF connect.
Update:
Stepping through the code I found the error coming from how the ble message is being given to the transport. It is passing a vector and not a scalar that it seems like it is expecting. For example in Characteristic.m line 315,
methods(Access = {?matlabshared.blelib.Descriptor, ?matlabshared.blelib.read.characteristic.Interface, ?matlabshared.blelib.write.characteristic.Interface})
function output = execute(obj, cmd, varargin)
peripheral = obj.getParent;
% Supress warning that might be thrown in get.Connected
ws = warning(‘off’, ‘MATLAB:ble:ble:deviceDisconnected’);
c = onCleanup(@() cleanup(ws));
if ~peripheral.Connected
matlabshared.blelib.internal.localizedError(‘MATLAB:ble:ble:failToExecuteDeviceDisconnected’);
end
output = peripheral.execute(cmd, obj.ServiceIndex, obj.CharacteristicIndex, varargin{:});
function cleanup(ws)
warning(ws.state, ‘MATLAB:ble:ble:deviceDisconnected’);
end
end
end
For the line
output = peripheral.execute(cmd, obj.ServiceIndex, obj.CharacteristicIndex, varargin{:});
the arguments are
cmd = DISCOVER_DESCRIPTORS
obj.ServiceIndex = 3
obj.CharacteristicIndex = [1;2;3;4;5;6;7;8]
It seems like obj.CharacteristicIndex should be just a number to get it to work.
It seems like the source of the issue starts in ble.m line 411 when
cinfo.Index = find(subtable.CharacteristicUUID == uuid);
returns a column vector instead of a scalar
function cinfo = validateCharacteristic(obj, sinfo, input)
% Check if input is a valid characteristic name or UUID supported
% on the peripheral and return index of the characteristic for
% the specified service
% Validate data type
info = matlabshared.blelib.internal.ServicesCharacteristicsDescriptorsInfo.getInstance;
uuid = info.getCharacteristicUUID(sinfo.UUID, input);
uuid = info.getShortestUUID(uuid);
% Find portion of the table that has the same ServiceUUID
subtable = obj.Characteristics(obj.Characteristics.ServiceUUID == obj.Services.ServiceUUID(sinfo.Index), :);
try
uuid = validatestring(uuid, subtable.CharacteristicUUID);
catch e
if strcmpi(e.identifier,’MATLAB:ambiguousStringChoice’)
throwAsCaller(e);
else
matlabshared.blelib.internal.localizedError(‘MATLAB:ble:ble:unsupportedCharacteristic’);
end
end
cinfo = info.getCharacteristicInfoByUUID(sinfo.UUID, uuid);
cinfo.Index = find(subtable.CharacteristicUUID == uuid);
cinfo.Attributes = subtable.Attributes{cinfo.Index};
end
end
It looks like edits to the files are locked so I can’t quite write a new version of the functions to try and handle the case of multiple entries. bluetooth, ble, identical characteristics, subscriptions MATLAB Answers — New Questions
Root locus with two inputs?
Hello,
I have a simulink model with two inputs, and I’m trying to get the root locus plot of it. Is this possible?
Thank you.Hello,
I have a simulink model with two inputs, and I’m trying to get the root locus plot of it. Is this possible?
Thank you. Hello,
I have a simulink model with two inputs, and I’m trying to get the root locus plot of it. Is this possible?
Thank you. simulink, input, transfer function MATLAB Answers — New Questions
How to Retreive All Time Data
When I run my simulink model, I generate a table in the workspace in a script that is run after simulation. This script gets the time from the output of the simulation as Time=out.tout. I can also get the data by exporting it from the simulation data inspector. When I use the simulation data inspector I get more time points that I do when I use the out.tout data method.
I would like to get the data in the simulation output to use when I generate the table in the workspace as it has more data of interest on and around some step changes in the simulation. How do I get non-truncated data without saving from the simulation data inspector? I would like to automate this and get it in workspace as the simulation will run many times and I use the workspace table to generate charts for each trial run.When I run my simulink model, I generate a table in the workspace in a script that is run after simulation. This script gets the time from the output of the simulation as Time=out.tout. I can also get the data by exporting it from the simulation data inspector. When I use the simulation data inspector I get more time points that I do when I use the out.tout data method.
I would like to get the data in the simulation output to use when I generate the table in the workspace as it has more data of interest on and around some step changes in the simulation. How do I get non-truncated data without saving from the simulation data inspector? I would like to automate this and get it in workspace as the simulation will run many times and I use the workspace table to generate charts for each trial run. When I run my simulink model, I generate a table in the workspace in a script that is run after simulation. This script gets the time from the output of the simulation as Time=out.tout. I can also get the data by exporting it from the simulation data inspector. When I use the simulation data inspector I get more time points that I do when I use the out.tout data method.
I would like to get the data in the simulation output to use when I generate the table in the workspace as it has more data of interest on and around some step changes in the simulation. How do I get non-truncated data without saving from the simulation data inspector? I would like to automate this and get it in workspace as the simulation will run many times and I use the workspace table to generate charts for each trial run. simulink, time, data, simulink data inspector, for loop MATLAB Answers — New Questions
Traitement d’image Cheminée Industrielle
Hello,
if anyone can help me on this subject
I’m at engineering school and I’m working on a project where we have to determine the condition of an industrial chimney (presence of rust/cracks). To do this, we capture the chimney and then process the image to determine whether the section photographed has any defects. I tried a first code with different tools:
-Contour detection with Canny Edge
-Segmentation using Thresholding
-Morphological analysis
I didn’t have much success, as some of the photos show welds, but it only detects welds and not cracks.
I’ve started looking into CNNs but I don’t know if it’s necessary.
I enclose a photo of the chimney
Thanks in advanceHello,
if anyone can help me on this subject
I’m at engineering school and I’m working on a project where we have to determine the condition of an industrial chimney (presence of rust/cracks). To do this, we capture the chimney and then process the image to determine whether the section photographed has any defects. I tried a first code with different tools:
-Contour detection with Canny Edge
-Segmentation using Thresholding
-Morphological analysis
I didn’t have much success, as some of the photos show welds, but it only detects welds and not cracks.
I’ve started looking into CNNs but I don’t know if it’s necessary.
I enclose a photo of the chimney
Thanks in advance Hello,
if anyone can help me on this subject
I’m at engineering school and I’m working on a project where we have to determine the condition of an industrial chimney (presence of rust/cracks). To do this, we capture the chimney and then process the image to determine whether the section photographed has any defects. I tried a first code with different tools:
-Contour detection with Canny Edge
-Segmentation using Thresholding
-Morphological analysis
I didn’t have much success, as some of the photos show welds, but it only detects welds and not cracks.
I’ve started looking into CNNs but I don’t know if it’s necessary.
I enclose a photo of the chimney
Thanks in advance transferred MATLAB Answers — New Questions
Problem with Casadi 3.6.5 installation on Matlab r2023b on Mac ARM64
Tried running below code to test Casadi in Matlab.
import casadi.*
x = MX.sym(‘x’)
disp(jacobian(sin(x),x))
Im getting the below error
Unrecognized function or variable ‘casadiMEX’.
Error in casadi.GenMX.sym (line 833)
[varargout{1:nargout}] = casadiMEX(356, varargin{:});Tried running below code to test Casadi in Matlab.
import casadi.*
x = MX.sym(‘x’)
disp(jacobian(sin(x),x))
Im getting the below error
Unrecognized function or variable ‘casadiMEX’.
Error in casadi.GenMX.sym (line 833)
[varargout{1:nargout}] = casadiMEX(356, varargin{:}); Tried running below code to test Casadi in Matlab.
import casadi.*
x = MX.sym(‘x’)
disp(jacobian(sin(x),x))
Im getting the below error
Unrecognized function or variable ‘casadiMEX’.
Error in casadi.GenMX.sym (line 833)
[varargout{1:nargout}] = casadiMEX(356, varargin{:}); casadi, arm64, r2023b MATLAB Answers — New Questions
Generate a time series from power spectral density
I have a force PSD of 2X2X63 acting at 2 points of 63 frequencies defined. For each frequency, there is a 2×2 matrix representing the auto and cross variances of the force. I want to construct a time signal of 2xN size where N is the size of the time signal. How do I do it?I have a force PSD of 2X2X63 acting at 2 points of 63 frequencies defined. For each frequency, there is a 2×2 matrix representing the auto and cross variances of the force. I want to construct a time signal of 2xN size where N is the size of the time signal. How do I do it? I have a force PSD of 2X2X63 acting at 2 points of 63 frequencies defined. For each frequency, there is a 2×2 matrix representing the auto and cross variances of the force. I want to construct a time signal of 2xN size where N is the size of the time signal. How do I do it? psd, fft, ifft MATLAB Answers — New Questions
A moving point plot in MATLAB figure with animation.
My program calculates position of a point on Z plane as (X,Y). I need to plot (X,Y) in Z-plane with a moving point showing location of point over the time in a single MATLAB figure. Please help.My program calculates position of a point on Z plane as (X,Y). I need to plot (X,Y) in Z-plane with a moving point showing location of point over the time in a single MATLAB figure. Please help. My program calculates position of a point on Z plane as (X,Y). I need to plot (X,Y) in Z-plane with a moving point showing location of point over the time in a single MATLAB figure. Please help. plot, animation MATLAB Answers — New Questions
Does Embedded Coder support Infineon Aurix Devices?
Hi There,
I am heading System Applications Team at Infineon India.
Some of our customers are keen to have MATLAB support for our Aurix Microcontrollers.
Would like to know what support is currently available & what are the options?
Thanks,
AvinashHi There,
I am heading System Applications Team at Infineon India.
Some of our customers are keen to have MATLAB support for our Aurix Microcontrollers.
Would like to know what support is currently available & what are the options?
Thanks,
Avinash Hi There,
I am heading System Applications Team at Infineon India.
Some of our customers are keen to have MATLAB support for our Aurix Microcontrollers.
Would like to know what support is currently available & what are the options?
Thanks,
Avinash infineon, aurix MATLAB Answers — New Questions
Problem 56313. Find Air Temperature from Cricket Stridulation Rate
function y = getTemperature_F(nchirps_in_14s)
x=[20 30 40 50]
F=0;
y=x;
y=fliplr(y);
while F<=50
F=F+110;
y=F-y;
end
end
%whats wrong with my answer i am not getting it.function y = getTemperature_F(nchirps_in_14s)
x=[20 30 40 50]
F=0;
y=x;
y=fliplr(y);
while F<=50
F=F+110;
y=F-y;
end
end
%whats wrong with my answer i am not getting it. function y = getTemperature_F(nchirps_in_14s)
x=[20 30 40 50]
F=0;
y=x;
y=fliplr(y);
while F<=50
F=F+110;
y=F-y;
end
end
%whats wrong with my answer i am not getting it. homework MATLAB Answers — New Questions
how to ask to the user to insert a command while a function is being executing?
In a previous version of my code, I implemented a function which reads data from serial port. While the function was storing and managing data received through the serial port, the user can each time insert a command "stop" which advice the connected device to stop the communication. The code was this:
configureCallback(controller,"byte",1,@readData)
%%
val = input(‘Comando: ‘,’s’);
% command start
writeline(controller, val);
%%
val = input(‘Comando: ‘,’s’);
% command stop
writeline(controller, val);
I’m trying to do the same but with my peripheral connected to my pc through bluetooth low energy.
However, I don’t know how to make the funcion works and the script asking for the command simultaneously, it seems like configureCallback function is not working in this case.
%% write START
val = input(‘Comando: ‘,’s’);
% Convert string to uint8 array
val_bytes = uint8(val);
% command start
write(c_write,val_bytes,’WithoutResponse’);
%% read data
if finished==0
% Set the callback function for the characteristic
c_read.DataAvailableFcn = @bleDataReceived;
end
%% write STOP
val = input(‘Comando: ‘,’s’);
% Convert string to uint8 array
val_bytes = uint8(val);
% command start
write(c_write,val_bytes,’WithoutResponse’);
i wrote this, but the function is continuosly reading after command start is sent without letting me the chance to insert the command stop.In a previous version of my code, I implemented a function which reads data from serial port. While the function was storing and managing data received through the serial port, the user can each time insert a command "stop" which advice the connected device to stop the communication. The code was this:
configureCallback(controller,"byte",1,@readData)
%%
val = input(‘Comando: ‘,’s’);
% command start
writeline(controller, val);
%%
val = input(‘Comando: ‘,’s’);
% command stop
writeline(controller, val);
I’m trying to do the same but with my peripheral connected to my pc through bluetooth low energy.
However, I don’t know how to make the funcion works and the script asking for the command simultaneously, it seems like configureCallback function is not working in this case.
%% write START
val = input(‘Comando: ‘,’s’);
% Convert string to uint8 array
val_bytes = uint8(val);
% command start
write(c_write,val_bytes,’WithoutResponse’);
%% read data
if finished==0
% Set the callback function for the characteristic
c_read.DataAvailableFcn = @bleDataReceived;
end
%% write STOP
val = input(‘Comando: ‘,’s’);
% Convert string to uint8 array
val_bytes = uint8(val);
% command start
write(c_write,val_bytes,’WithoutResponse’);
i wrote this, but the function is continuosly reading after command start is sent without letting me the chance to insert the command stop. In a previous version of my code, I implemented a function which reads data from serial port. While the function was storing and managing data received through the serial port, the user can each time insert a command "stop" which advice the connected device to stop the communication. The code was this:
configureCallback(controller,"byte",1,@readData)
%%
val = input(‘Comando: ‘,’s’);
% command start
writeline(controller, val);
%%
val = input(‘Comando: ‘,’s’);
% command stop
writeline(controller, val);
I’m trying to do the same but with my peripheral connected to my pc through bluetooth low energy.
However, I don’t know how to make the funcion works and the script asking for the command simultaneously, it seems like configureCallback function is not working in this case.
%% write START
val = input(‘Comando: ‘,’s’);
% Convert string to uint8 array
val_bytes = uint8(val);
% command start
write(c_write,val_bytes,’WithoutResponse’);
%% read data
if finished==0
% Set the callback function for the characteristic
c_read.DataAvailableFcn = @bleDataReceived;
end
%% write STOP
val = input(‘Comando: ‘,’s’);
% Convert string to uint8 array
val_bytes = uint8(val);
% command start
write(c_write,val_bytes,’WithoutResponse’);
i wrote this, but the function is continuosly reading after command start is sent without letting me the chance to insert the command stop. matlab, functions, function, callback, ble, bluetooth MATLAB Answers — New Questions
Extract certain values in .mat file
Hi,
I have a mat file with 1250×1 data and I want to extract specific values from the 1250. For example I want to extract every 2nd or every 5th values.
As an example, the mat file contains the following values:
-0.13793 -0.114746 -0.204773 -0.224304 -0.181274 -0.192566 -0.159912 -0.174866 -0.134888 -0.148926
For every 2nd I want to read: -0.114746 -0.224304 -0.192566 -0.174866 -0.148926
For every 5th I want to read: -0.181274 -0.148926
What is the best command to do this? Thank you.Hi,
I have a mat file with 1250×1 data and I want to extract specific values from the 1250. For example I want to extract every 2nd or every 5th values.
As an example, the mat file contains the following values:
-0.13793 -0.114746 -0.204773 -0.224304 -0.181274 -0.192566 -0.159912 -0.174866 -0.134888 -0.148926
For every 2nd I want to read: -0.114746 -0.224304 -0.192566 -0.174866 -0.148926
For every 5th I want to read: -0.181274 -0.148926
What is the best command to do this? Thank you. Hi,
I have a mat file with 1250×1 data and I want to extract specific values from the 1250. For example I want to extract every 2nd or every 5th values.
As an example, the mat file contains the following values:
-0.13793 -0.114746 -0.204773 -0.224304 -0.181274 -0.192566 -0.159912 -0.174866 -0.134888 -0.148926
For every 2nd I want to read: -0.114746 -0.224304 -0.192566 -0.174866 -0.148926
For every 5th I want to read: -0.181274 -0.148926
What is the best command to do this? Thank you. extract data MATLAB Answers — New Questions