CO2传感器校准工具(控制台版)
基于Qt SerialPort的控制台程序,用于CO2传感器的自动校准。
功能特性
- 串口通信:支持/dev/ttyWind,波特率9600
- 自动校准流程:按照标准流程自动执行校准步骤
- 校准完成检测:自动检测校准是否完成(检查返回值的最后几个数字是否小于10)
- 命令行参数支持:支持命令行参数配置
- 自动模式:连接后立即开始校准
校准流程
- 初始化:发送
$01,TC0 - 设置模式:发送
$01,KY18 - 第一次校准:发送
$01,AC00240^**(温度值根据实际环境温度设置) - 再次设置模式:发送
$01,KY18 - 第二次校准:发送
$01,AC00240^**- 检查返回值的最后几个数字是否都小于10
- 如果未完成,重复步骤2-3
- 恢复模式:
- 发送
$01,KY18 - 发送
$01,TC00001^**
- 发送
编译要求
- Qt6 (Core, SerialPort)
- CMake 3.16或更高版本
- C++17编译器
编译步骤
mkdir build
cd build
cmake ..
make
或者使用构建脚本:
./build.sh
使用方法
自动模式(推荐)
连接串口后立即开始校准:
./build/CO2Correct -a -p /dev/ttyWind -b 9600 -t 24.0
参数说明:
-a, --auto: 自动模式,连接后立即开始校准-p, --port <port>: 串口设备路径(默认:/dev/ttyWind)-b, --baud <baud>: 波特率(默认:9600)-t, --temperature <temp>: 校准温度,单位℃(默认:24.0)
交互模式
./build/CO2Correct -p /dev/ttyWind -b 9600
然后输入命令:
start [温度]- 开始校准(例如:start 24.0)stop- 停止校准send <命令>- 手动发送命令(例如:send $01,TC0)quit或exit- 退出程序
查看帮助
./build/CO2Correct --help
使用示例
示例1:自动校准(温度24.0℃)
./build/CO2Correct -a -t 24.0
示例2:指定串口和波特率
./build/CO2Correct -a -p /dev/ttyUSB0 -b 9600 -t 25.5
示例3:在远程设备上运行
# SSH连接到远程设备
ssh root@172.16.0.102
# 运行校准程序
cd /path/to/CO2Correct
./build/CO2Correct -a -t 24.0
输出示例
[12:34:56.789] [信息] CO2传感器校准工具已启动
[12:34:56.790] [成功] 串口已连接: /dev/ttyWind, 波特率: 9600
[12:34:56.791] [信息] 开始校准流程,校准温度: 24.0℃ (编码: 00240)
[12:34:56.792] [信息] 发送: $01,TC0
[12:34:56.850] [信息] 接收: $WI,TC=0
[12:34:56.851] [成功] 步骤1完成: TC0设置成功
...
[12:35:10.123] [成功] 校准完成!所有值均小于10
[12:35:10.125] [成功] 步骤7完成: 恢复模式TC设置成功,校准流程全部完成!
校准流程全部完成!
注意事项
- 确保传感器已正确连接并上电
- 校准温度值需要根据实际环境温度设置
- 如果校准未完成,程序会自动重复步骤2-3,直到所有值都小于10
- 校准完成后,传感器会自动恢复到正常模式
- 程序会自动检测校准是否完成,无需人工干预
远程设备信息
- 设备IP:172.16.0.102
- 用户名:root
- 密码:fa
(可通过SSH连接后执行程序)