# CO2传感器校准工具(控制台版) 基于Qt SerialPort的控制台程序,用于CO2传感器的自动校准。 ## 功能特性 - 串口通信:支持/dev/ttyWind,波特率9600 - 自动校准流程:按照标准流程自动执行校准步骤 - 校准完成检测:自动检测校准是否完成(检查返回值的最后几个数字是否小于10) - 命令行参数支持:支持命令行参数配置 - 自动模式:连接后立即开始校准 ## 校准流程 1. **初始化**:发送 `$01,TC0` 2. **设置模式**:发送 `$01,KY18` 3. **第一次校准**:发送 `$01,AC00240^**`(温度值根据实际环境温度设置) 4. **再次设置模式**:发送 `$01,KY18` 5. **第二次校准**:发送 `$01,AC00240^**` - 检查返回值的最后几个数字是否都小于10 - 如果未完成,重复步骤2-3 6. **恢复模式**: - 发送 `$01,KY18` - 发送 `$01,TC00001^**` ## 编译要求 - Qt6 (Core, SerialPort) - CMake 3.16或更高版本 - C++17编译器 ## 编译步骤 ```bash mkdir build cd build cmake .. make ``` 或者使用构建脚本: ```bash ./build.sh ``` ## 使用方法 ### 自动模式(推荐) 连接串口后立即开始校准: ```bash ./build/CO2Correct -a -p /dev/ttyWind -b 9600 -t 24.0 ``` 参数说明: - `-a, --auto`: 自动模式,连接后立即开始校准 - `-p, --port `: 串口设备路径(默认:/dev/ttyWind) - `-b, --baud `: 波特率(默认:9600) - `-t, --temperature `: 校准温度,单位℃(默认:24.0) ### 交互模式 ```bash ./build/CO2Correct -p /dev/ttyWind -b 9600 ``` 然后输入命令: - `start [温度]` - 开始校准(例如:`start 24.0`) - `stop` - 停止校准 - `send <命令>` - 手动发送命令(例如:`send $01,TC0`) - `quit` 或 `exit` - 退出程序 ### 查看帮助 ```bash ./build/CO2Correct --help ``` ## 使用示例 ### 示例1:自动校准(温度24.0℃) ```bash ./build/CO2Correct -a -t 24.0 ``` ### 示例2:指定串口和波特率 ```bash ./build/CO2Correct -a -p /dev/ttyUSB0 -b 9600 -t 25.5 ``` ### 示例3:在远程设备上运行 ```bash # 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连接后执行程序)