项目简介
本项目是一个基于Arduino的传感器实施系统,借助Arduino微控制器与Unity项目进行交互,能够实时获取并传输心率传感器数据。系统利用心率传感器采集数据,通过OSC协议将数据发送到指定的IP地址和端口,供Unity项目使用,为开发人员和研究人员提供了实时、可靠的心率数据收集和处理平台。
项目的主要特性和功能
- 心率数据采集:通过Seeed Studio耳夹式心率传感器实时采集心率数据。
- 数据处理与转换:使用PulseSensorPlayground库把原始信号转换为可识别的脉冲、间隔和心率数据。
- 数据传输:通过OSC库将处理后的数据以OSC消息的形式发送到指定的IP地址和端口。
- 灵活配置:用户可在Arduino IDE中轻松修改IP地址和端口等参数,适应不同网络环境。
- 兼容性强:支持Windows操作系统和Arduino IDE,能与Unity项目无缝集成。
安装使用步骤
软件环境搭建(Windows操作系统)
- 安装Arduino IDE:下载并安装最新稳定版的Arduino IDE。
- 安装必要的库:打开Arduino IDE,导航到“库管理器”,搜索并安装OSC 1.3.7和PulseSensorPlayground 1.6.1。
- 配置ESP32开发板:在Arduino IDE中,打开“文件”>“首选项”,设置额外的板卡管理器URL;打开“工具”>“开发板”>“开发板管理器”,安装最新稳定版的
esp32
开发板。
硬件设置(Windows操作系统)
- 连接ESP32 V2:将ESP32 V2微控制器通过USB连接到计算机,确保驱动程序自动安装。
- 查找COM端口:打开“设备管理器”,导航到“端口(COM & LPT)”,找到ESP32 V2对应的COM端口。
- 连接以太网:将ESP32通过以太网板连接到工作站,确保以太网电缆正确连接。
- 查找工作站IP地址:打开命令提示符,输入
arp -a
,找到以太网接口的IP地址。
上传Arduino代码
- 打开Arduino代码:在Arduino IDE中打开项目中的
.ino
文件。 - 配置微控制器通信:在“工具”>“端口”中选择之前记录的COM端口;在“工具”>“开发板”中选择
ESP32 Arduino > Adafruit Feather ESP32 V2
。 - 修改代码中的IP地址:在代码的
Variables
部分,修改receiverIP[]
和ip[]
为工作站的IP地址,修改mac[]
为ESP32 V2的MAC地址。 - 验证并上传代码:使用快捷键
Ctrl+R
验证代码,使用快捷键Ctrl+U
上传代码。
连接Unity项目
- 关闭Arduino IDE:确保Arduino IDE已关闭。
- 配置Unity项目:打开Unity项目,确保HeartRateManager GameObject及其子对象处于激活状态,确保OSCReceiver组件已正确配置。
- 启动Unity项目:进入Play模式,检查是否能接收到来自传感器的OSC数据。
故障排除
- Unity无法接收数据:确保HeartRateManager GameObject及其子对象处于激活状态,检查防火墙设置,确保Unity编辑器未被阻止网络连接。
- Arduino无法上传代码:确保选择了正确的COM端口,尝试更换USB端口或重新连接ESP32。
- 网络连接问题:确保工作站和ESP32连接到同一以太网交换机或路由器,检查防火墙规则,确保允许TCP端口2001的通信。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】