2. BLE 示例

BLE示例代码可以从这里下载:lynxphone-main.zip.

代码是使用了Expo(https://expo.dev)工具的React Native app。只在iOS上测试过。

2.1. 编译安装

2.2. 运行

运行 app,出现如下图界面:

../_images/IMG_%E9%A6%96%E9%A1%B5.jpeg

2.3. 扫描

点击 “▶︎️”开始扫描设备,图标会变成 “◼︎”。可以再次点击以停止扫描。

../_images/IMG_%E6%89%AB%E6%8F%8F.jpeg

扫描到到的设备会出现在列表里。左侧依次是序列号,MTU和信号强度(不实时更新)。

备注

每次开始扫描都会清除当前的设备列表

2.4. 跳远测试

  1. 准备硬件

    硬件设备连接并上电

  2. 点击“Connect”连接设备,成功之后会显示如下截图
    ../_images/IMG_%E8%BF%9E%E6%8E%A5.jpeg
  3. 点击“Handshake”

    成功之后会显示 版本号硬件类型。如果硬件类型和预想的不一致,则表明传感器出了问题

  4. 点击“Measure”开始测量

    因为是示例代码,所以默认填写了超时30秒。 如果处理成功,会显示 "SUCCESS"。

  5. 测试

    跳到光栅可测范围内

  6. 结果

    如果检测到光栅被遮挡且位置稳定约0.5秒,则立即返回结果。结果是被遮挡的范围。起点从光栅接线端开始计算。

    如果未能在规定时间内检测到,则返回超时。界面上对应位置会显示错误。

  7. 再次测试

    点击“Measure”开始再次测量

2.5. 坐位体前屈测试

  1. 准备硬件

    硬件设备连接并上电

  2. 点击“Connect”连接设备,成功之后会显示如下截图
    ../_images/IMG_%E8%BF%9E%E6%8E%A5.jpeg
  3. 点击“Handshake”

    成功之后会显示 版本号硬件类型。如果硬件类型和预想的不一致,则表明传感器出了问题

  4. 点击“Measure”开始测量

    因为是示例代码,所以默认填写了超时30秒。 如果处理成功,会显示 "SUCCESS"。

  5. 测试

    推动遮挡板移动至少1cm并停下

  6. 结果

    如果检测到遮挡板移动了至少1cm并停下约0.4秒,则立即返回结果。结果是此时传感器和遮挡板之间的距离。

    如果未能在规定时间内检测到,则返回超时。界面上对应位置会显示错误。

  7. 再次测试

    点击“Measure”开始再次测量

2.6. 压力垫计时测试

  1. 准备硬件

    此测试需要两份硬件。一个做主(计时开始),一个做副(计时结束)。将设备连接并上电。

  2. 在扫描到的两个设备中选择一个主,一个副。

    点击副设备上的 “Copilot” 将其作为副设备。以后的操作都和此副设备无关,主设备会自动和副设备通信。

    ../_images/IMG_%E5%89%AF%E8%AE%BE%E5%A4%87.jpeg
  3. 点击主设备的“Connect”连接主设备,成功之后会显示如下截图
    ../_images/IMG_%E8%BF%9E%E6%8E%A5.jpeg
  4. 点击“Handshake”

    成功之后会显示 版本号硬件类型。如果硬件类型和预想的不一致,则表明传感器出了问题

  5. 点击“Copilot”

    此时会将副设备的序列号发送给主设备,主设备会自动连接。

    如果命令处理成功,会显示 "SUCCESS"。

    此时需要等待主设备连接副设备。如果成功,会显示",SUCCESS"。

    注意

    要等待主设备连接副设备的结果(",SUCCESS")返回才可以继续操作

  6. 点击“Measure”开始测量

    因为是示例代码,所以默认填写了超时30秒。 如果处理成功,会显示 "SUCCESS"。

  7. 测试

    先踩主设备的压力垫,再踩副设备的压力垫。

  8. 结果

    如果依次检测到主压力垫松开,副压力垫踩上,则立即返回结果。结果是从主压力垫松开到副压力垫踩上的时间。

    如果未能在规定时间内检测到,则返回超时。界面上对应位置会显示错误。

  9. 再次测试

    点击“Measure”开始再次测量