littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于C++的电动车数据采集与传输系统

项目简介

本项目名为SocoIOT,基于Raspberry Pico W和C++语言开发。其核心是从SuperSoco电动车的TC Pro/Max内部总线读取数据,解析后通过WiFi连接本地MQTT服务器,实现电动车状态信息的发送。项目创建于2023年夏季,虽已实现基本功能,但仍有数据解析错误、蓝牙未实现等问题待解决。

项目的主要特性和功能

  1. 数据读取:能读取TC Pro/Max内部总线数据,包含电池电压、电流、充电状态、BMS温度、电池充放电次数、电池满充次数等。
  2. 数据传输:解析读取的数据,通过MQTT协议发送到本地MQTT服务器,支持多MQTT主题数据发送。
  3. 硬件交互:提供按键、LED等基本硬件接口,可进行屏幕切换、开关及数据记录等操作。
  4. 日志记录:具备SD卡日志记录功能,可记录RS485原始数据。

安装使用步骤

硬件准备

准备Raspberry Pico W和基于Raspberry Pico W的Open Source Gamepad Picopad Wifi作为硬件平台,以及RS485转UART接口模块、JST SM 4针公母连接器等必要硬件。

配置文件准备

准备SD卡,在其根目录创建名为SocoIOT.cfg的配置文件,内容按需修改,示例如下: ```plaintext WIFI_SSID1 = SSID1 WIFI_PASSWORD1 = pass1 MQTT_SERVER_ADDR1 = 192.168.1.1 MQTT_SERVER_PORT1 = 1883 MQTT_BROKER_USERID1 = mqttuser1 MQTT_BROKER_PASSWORD1 = passwd1

WIFI_SSID2 = SSID2 WIFI_PASSWORD2 = PASS2 MQTT_SERVER_ADDR2 = 192.168.1.2 MQTT_SERVER_PORT2 = 1883 MQTT_BROKER_USERID2 = mqttuser2 MQTT_BROKER_PASSWORD2 = passwd2 ```

固件上传

  1. 按住Picopad底部的“Bootsel”按钮。
  2. 将Picopad连接到USB(若已连接则按“Reset”按钮)。
  3. 等待Pico作为大容量存储设备连接,会出现新的驱动器。
  4. SocoIOT.uf2二进制文件复制到新驱动器。
  5. 复制完成后,Picopad会自动重启。

启动项目

将带有配置文件的SD卡插入Picopad,再次重启设备,在Picopad上选择相应配置后启动项目。

由于项目处于开发阶段,可能存在已知问题和不稳定因素,使用前请确保对硬件和软件有一定了解,并谨慎操作。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】