How can I communicate with a BLE device in Simulink?
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
MathWorks Support Team
el 8 de Jul. de 2020
Respondida: MathWorks Support Team
el 8 de Jul. de 2020
I would like to communicate with a BLE (Bluetooth low energy) device in Simulink. However, I found no BLE blocks in the Simulink library. Is this supported?
Respuesta aceptada
MathWorks Support Team
el 8 de Jul. de 2020
There is currently no Simulink block that can directly read from a BLE device using the host PC interface. An enhancement request to add BLE Read/Write blocks to Simulink has been submitted to our development team.
As a workaround, you can add a MATLAB Function Block in your model that leverages the ble() function from MATLAB, which has been available since R2019b:
The code inside the MATLAB Function Block would be along the lines of:
function y = fcn()
persistent b; %automatically initialized to []
persistent hr; %automatically initialized to []
%%extrinsic declarations
coder.extrinsic('ble');
coder.extrinsic('characteristic');
coder.extrinsic('read');
if(isempty(b))
b = ble("UA E39 MODULE");
hr = characteristic(b, "heart rate", "heart rate measurement");
end
%%initialize output
y = zeros(...)
%%read data from BLE device
data = read(hr);
%%post-process the data
y = ...
end
Note that the 'ble'-related functions do not support code generation and therefore need to be declared as extrinsic.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Simulink Functions en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!