主要内容

使用Arduino板上的BLE外围设备和中心设备控制LED状态

这个例子展示了如何使用Arduino®硬件的Simulink®支持包金宝app来配置Ar金宝appduino外设和中心设备之间的蓝牙®低能量(BLE)通信。它还展示了如何从中央设备控制外围设备上的板载LED的状态,反之亦然,使用BLE通信。

先决条件

有关如何在Arduino硬件上运行Simulink模型的更多信息,请参见金宝app入门Arduino硬件

所需的硬件

  • 两个Arduino电路板。您可以使用Arduino Nano 33 IoT、Arduino MKR Wifi 1010或Arduino Nano 33 BLE Sense。为了说明目的,本示例使用一个Arduino Nano 33 IoT和一个Arduino Nano 33 BLE Sense。

  • 两个案板。

  • 两个按钮开关。

  • 跳线。

依赖关系

实现这个例子需要你成功地在每个支持的Arduino板上部署这些Simulink模型:金宝app金宝app

金宝app仿真软件模型名称| |部署硬件的目的  ------------------------------------------------------------------------------------------- 1。arduino_BLE_peripheral | Arduino Nano 33 IoT |作为外围设备2arduino_BLE_central | Arduino Nano 33 BLE Sense |作为中心设备

硬件设置

连接任意GPIO引脚和Arduino板的地面之间的按钮开关。

为了便于说明,在本例中,一个按钮开关连接引脚2和Arduino Nano 33物联网板的接地,而另一个按钮连接引脚2和Arduino Nano 33 BLE Sense板的接地。

配置Arduino外设型号并校准参数

这个例子使用了来自Simulink Support Package 金宝appfor Arduino Hardware的预先配置的Si金宝appmulink模型。

要打开Simulink模金宝app型,请在MATLAB®命令窗口中运行此命令。

open_system (“arduino_BLE_peripheral”

这个Sim金宝appulink模型充当服务器,接收来自客户端模型的数据请求并发送响应。

在外围模式下,Arduino Nano 33物联网板提供的服务可用于中央模式下运行的Arduino Nano 33 BLE Sense板。成功连接Arduino外围设备和中央板后,服务内的特性就可用了。您可以使用自己的uuid为服务和特征指定自己的自定义服务和特征。

连接Arduino外围设备引脚2的按钮状态控制Arduino中心设备上的LED。

建模选项卡,选择金宝app模型设置

在“配置参数”对话框中,选择目标硬件资源>BLE属性

配置这些BLE属性。

  1. 外围设备名称ArduinoBLEPeripheral

  2. 外围本地名称ArduinoBLEPeripheral

有关如何配置Arduino BLE属性的更多信息,请参见BLE属性

外围中央

的BLE Send块外围中央区域将按钮状态从外围模式配置的Arduino板传递到中心模式配置的Arduino板。这个按钮状态决定了中央板上的LED是亮的还是灭的。

在“块参数”对话框中配置这些参数数字输入块。

  1. 密码2

  2. 销模式输入引体向上

  3. 样品时间0.1

在“块参数”对话框中配置这些参数祝福送块。

  1. 模式外围(服务器)

  2. 选择指定使用UUID

  3. 选择服务由BLE设备广播。在本例中,参数设置为df801ed6 - a405 11 - eb - bcbc - 000000000000

  4. 从可用的特征中设置的服务服务参数。在本例中,参数设置为df801ed6 - a405 11 - eb - bcbc - 000000000001

外围的中心

中的BLE Receive块外围的中心区域接收从中央模式配置的Arduino板到外设模式配置的Arduino板的按钮状态。这个按钮状态决定了外围板上的LED是亮的还是灭的。

在“块参数”对话框中配置这些参数祝福收到块。

  1. 模式外围(服务器)

  2. 选择指定使用UUID

  3. 选择服务由BLE设备广播。在本例中,参数设置为df801ed6 - a405 11 - eb - bcbc - 000000000000

  4. 从可用的特征中设置的服务服务参数。在本例中,参数设置为df801ed6 - a405 11 - eb - bcbc - 000000000002

  5. 数据大小1

  6. 样品时间0.1

在“块参数”对话框中配置数字输出块。

  1. 密码13

在Arduino板上部署Arduino外围Simul金宝appink模型

  1. 将Arduino Nano 33物联网板连接到上位机。

  2. 打开arduino_BLE_peripheral金宝app仿真软件模型。

  3. 硬件选项卡的Simulin金宝appk模型,设置硬件板Arduino Nano 33物联网

  4. 硬件选项卡中的金宝app模式部分中,选择机上运行然后点击构建、部署和启动

配置Arduino中央模型并校准参数

这个例子使用了来自Simulink Support Package 金宝appfor Arduino Hardware的预先配置的Si金宝appmulink模型。

要打开Simulink模金宝app型,请在MATLAB命令窗口中运行此命令。

open_system (“arduino_BLE_central”

这个Sim金宝appulink模型充当客户端,发送服务器Simulink模型所请求的数据。在中央模式下,使用硬件安装向导扫描可用的外围设备。从中心板选择外围设备后,服务内的特性就可用了。

连接到Arduino中心设备引脚2的按钮状态控制着Arduino外围设备上的LED。

外围中央

中的BLE Receive块外围中央区域接收从外围模式配置的Arduino板到中心模式配置的Arduino板的按钮状态。这个按钮状态决定了中央板上的LED是亮的还是灭的。

在“块参数”对话框中配置这些参数祝福收到块。

  1. 模式中心(客户端)

  2. 点击扫描.按照上面的说明去做硬件设置向导。

  3. 向导完成扫描外围设备后,选择外围设备特征在Arduino外设Simulink模型中配置的参数。金宝app在本例中,set外围设备ArduinoBLEPeripheral特征df801ed6 a405 - 11 - eb bcbc - 000000000000 \ df801ed6 a405 - 11 - eb - bcbc - 000000000001

  4. 数据大小1

  5. 样品时间0.1

在“块参数”对话框中配置数字输出块。

  1. 密码13

外围的中心

的BLE Send块外围的中心区域将按钮状态从中央模式配置的Arduino板传递到外设模式配置的Arduino板。这个按钮状态决定了外围板上的LED是亮的还是灭的。

在“块参数”对话框中配置这些参数数字输入块。

  1. 密码2

  2. 销模式输入引体向上

  3. 样品时间0.1

在“块参数”对话框中配置这些参数祝福送块。

  1. 模式中心(客户端)

  2. 外围设备ArduinoBLEPeripheral

  3. 特征df801ed6 a405 - 11 - eb bcbc - 000000000000 \ df801ed6 a405 - 11 - eb - bcbc - 000000000002

在Arduino Board上部署Arduin金宝appo Central Simulink模型

  1. 将Arduino Nano 33 BLE Sense板连接到上位机。

  2. 打开arduino_BLE_central金宝app仿真软件模型。

  3. 硬件选项卡的Simulin金宝appk模型,设置硬件板Arduino Nano 33 BLE Sense

  4. 硬件选项卡中的金宝app模式部分中,选择机上运行然后点击构建、部署和启动

  5. 对于配置为外围设备的Arduino板,按下按钮,观察配置为中心设备的Arduino板上的LED的变化。

  6. 对于配置为中心设备的Arduino板,按下按钮,观察配置为外围设备的Arduino板上的LED的变化。

另请参阅