项目简介
本项目是一个基于Arduino和C++的物联网设备轨迹追踪系统,由手持设备、桌面设备和云端设备三部分构成。通过手持设备与桌面设备感应点的接触,可描绘手持设备的活动轨迹,云端设备负责绑定手持设备与特定人物,并记录个人独特轨迹或提供特定内容。
项目的主要特性和功能
- 设备互动:不固定数量的手持设备与不定数量的桌面设备可通过感应点进行互动,实现轨迹追踪。
- 多设备支持:手持设备采用Raspberry Pi Pico W和电子纸模块,桌面设备使用Raspberry Pi Pico W和磁簧感应开关,云端设备具备网络连接和MQTT功能。
- 数据处理:手持设备和桌面设备本身不存储交互过程和内容,全部交由云端设备处理,云端设备以JSON格式包装并传输指令。
- 远程指令:桌面设备可随时与云端设备通信,手持设备在与桌面设备连接期间可收发指令,指令需以JSON格式传输。
安装使用步骤
硬件准备
- 准备手持设备(Raspberry Pi Pico W、waveshare 1.54 吋电子纸模块、磁铁、3.7v锂电池)、桌面设备(Raspberry Pi Pico W、磁簧感应开关)和具备网络连接功能的云端设备。
- 确保在桌面设备可连接范围内提供2.4GHz、WPA Personal方式的无线网络,且能连接到指定的MQTT broker。
软件配置
- 手持设备:在Arduino环境中,引入相关第三方库。修改
config.h
文件中的NAME_PREFIX
和DEVICE_NAME
,并在epdif.h
和epdif.cpp
中重新定义电子纸模块引脚。 - 桌面设备:同样在Arduino环境中引入第三方库。修改
config.h
文件中的NAME_PREFIX
、DEVICE_NAME
、WIFI_SSID
、WIFI_PASSWORD
、MQTT_SERVER
等参数。 - 云端设备:根据不同软件自行设置MQTT,依据桌面设备的相关配置拼凑输入输出项目。
代码编译与上传
- 在Arduino IDE中分别编译手持设备和桌面设备的代码。
- 将编译好的代码分别上传到手持设备和桌面设备的Raspberry Pi Pico W中。
系统测试与使用
- 开启手持设备,显示待机画面并开始BLE广播。
- 开启桌面设备,自动联网并与MQTT主机建立连接。
- 当手持设备接触桌面设备的感应点时,观察设备互动情况和云端设备的数据记录。
- 可通过云端设备发送JSON格式指令,测试远程指令功能。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】