# edq254-tool **Repository Path**: thammer/edq254-tool ## Basic Information - **Project Name**: edq254-tool - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-12 - **Last Updated**: 2026-06-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EDQ254 Tool EDQ254 雷达传感器上位机配置工具,基于 Qt5 开发,支持 Windows 和 Linux 双平台。 ## 功能 - **设备管理**:添加/删除设备、批量扫描在线设备、修改设备 ID 与波特率 - **参数配置**:读取/设置传感器各项参数(光照阈值、延时时间、感应距离等) - **实时监控**:查看设备状态(有人/无人)、光照度值等实时数据 - **通信日志**:记录串口收发的原始十六进制数据,便于调试 - **设备定位**:远程触发设备蜂鸣/闪烁,方便现场查找 ## 架构 ``` src/ ├── main.cpp # 应用入口 ├── protocol/ │ ├── edq254_defs.h # 协议常量(功能码、操作类型、帧结构) │ ├── edq254_protocol.h/.cpp # 帧组包/解包、校验 ├── communication/ │ ├── serial_manager.h/.cpp # 串口管理(QSerialPort 封装) │ ├── device_channel.h/.cpp # 请求队列、超时重试、主动上报分发 ├── model/ │ ├── device_info.h/.cpp # 单设备数据模型 │ ├── device_list_model.h/.cpp # 设备列表模型(QAbstractListModel) └── ui/ ├── main_window.ui/h/.cpp # 主窗口(串口连接、设备列表、日志) ├── param_panel.ui/h/.cpp # 参数配置面板 ├── monitor_panel.ui/h/.cpp # 实时监控面板 ├── device_mgmt_panel.ui/h/.cpp # 设备管理面板(ID/波特率/批量扫描) └── device_item_delegate.h/.cpp # 设备列表自定义绘制(在线状态 + 删除按钮) ``` ## 依赖 - **Qt 5.15+**(Widgets、SerialPort) - **CMake 3.16+** - **C++17** 编译器 ## 构建 ### Linux ```bash # 安装 Qt5 开发包 # Ubuntu/Debian sudo apt install qtbase5-dev libqt5serialport5-dev cmake ninja-build # Fedora/RHEL sudo dnf install qt5-qtbase-devel qt5-qtserialport-devel cmake ninja-build # 构建 cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -B build -S . cmake --build build --target edq254-tool -j $(nproc) ``` ### Windows ```bash # 前提:安装 Visual Studio BuildTools + Qt 5.15.2 msvc2019_64 # 初始化 MSVC 64 位环境 call "C:\Program Files (x86)\Microsoft Visual Studio\...\vcvars64.bat" # 构建(指定 Qt5 路径) cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ^ -DQt5_DIR=D:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5 ^ -B cmake-build-release -S . cmake --build cmake-build-release --target edq254-tool -j 3 ``` > **注意**:Qt 5.15.2 msvc2019_64 是 64 位版本,必须使用 64 位 MSVC 编译器(`vcvars64.bat`)。 ### 一键打包 #### Windows ```bash # 完整打包(编译 + 依赖收集 + 安装包) .\package.bat Release # 仅打包不生成安装包 .\package.bat Release noinstaller ``` 脚本会自动检测 MSVC、Qt5、CMake、NSIS 的安装路径。产物: - `package/edq254-tool/` — 免安装绿色版 - `package/edq254-tool-setup.exe` — NSIS 安装包(需安装 NSIS) #### Linux ```bash # 自动检测环境,生成 DEB 和/或 RPM 包 ./package-linux.sh Release # 只生成 DEB ./package-linux.sh Release deb # 只生成 RPM(yum/dnf 安装) ./package-linux.sh Release rpm ``` 脚本会自动检测系统环境: - 在 Debian/Ubuntu 上生成 `.deb` 包 - 在 RHEL/CentOS/Fedora 上生成 `.rpm` 包 产物位于 `package/` 目录,安装方式: ```bash # DEB sudo dpkg -i package/edq254-tool-*.deb # RPM sudo rpm -ivh package/edq254-tool-*.rpm # RHEL/CentOS sudo dnf install package/edq254-tool-*.rpm # Fedora ``` ## 使用 1. 连接 EDQ254 传感器到电脑串口 2. 在工具栏选择串口和波特率,点击**连接** 3. 点击**扫描设备**或**添加设备**加入设备列表 4. 选中设备后,在标签页中操作: - **参数配置**:读取/修改传感器参数 - **实时监控**:查看设备实时状态 - **设备管理**:修改设备 ID、波特率、批量扫描 ### 串口名说明 | 平台 | 示例 | |------|------| | Linux | `/dev/ttyUSB0`、`/dev/ttyACM0` | | Windows | `COM3`、`COM4` | 程序会自动枚举可用串口,无需手动输入。 ## 通信协议 基于 EDQ254 规格书 §8 RS-485 串口通讯协议: - **帧头**:`0xAE` - **帧结构**:帧头 + 设备地址(2) + 协议版本(1) + 操作类型(1) + 数据长度(1) + 数据(n) + 校验(1) - **操作类型**:设置参数(`0x00`)、读取参数(`0x01`)、设置应答(`0x02`)、读取应答(`0x03`)、主动上报(`0x04`) - **请求队列**:FIFO 顺序执行,支持超时重试(默认 500ms × 3 次) ## 许可证 Copyright © EXC. All rights reserved.