How can I communicate with a BLE device in Simulink?

11 visualizaciones (últimos 30 días)
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
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.

Más respuestas (0)

Categorías

Más información sobre Simulink Functions en Help Center y File Exchange.

Etiquetas

Aún no se han introducido etiquetas.

Productos


Versión

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by