Files
QT_wuhan_YT/README.md
T
2026-09-09 17:00:37 +08:00

58 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 图数一体机遥控端 QT 界面(wuhan)
依据《QT界面详细设计说明书.md》实现的“玉兔工业无线遥控器(YTZT6K8EART2-aL25)”遥控端界面,
覆盖 ③开机密码(含密码警告/密码管理登录/密码管理/密码重置)④自检 ⑤作业选择 ⑥机器人底盘
⑦机械臂 ⑧气体检测仪 ⑨手动消除 ⑩手动消毒 ⑪调试维护 ⑫故障查询 共 10 个界面,
并配套 **UDP 收包 / 发包通信** 与内置模拟车载端。
## 环境与构建
- Qt 5.15.2 MinGW 32-bit(`F:\QT\5.15.2\mingw81_32`),编译套件 `Desktop Qt 5.15.2 MinGW 32-bit`。
- 用 Qt Creator 打开 `wuhan.pro` 直接构建运行即可(qmake 工程,`QT += network`)。
命令行构建示例:
```bash
export PATH="/f/QT/Tools/mingw810_32/bin:/f/QT/5.15.2/mingw81_32/bin:$PATH"
mkdir -p build && cd build
qmake ../wuhan.pro -spec win32-g++ "CONFIG+=debug"
mingw32-make -j4
```
运行:`debug/wuhan.exe`(1920×1080 全屏无边框)。
## 运行说明
- 开机密码默认 **6789**(可在“忘记密码/修改密码 → 密码管理登录(管理员密码 6789)→ 密码管理 → 重置密码”中修改)。
- 密码正确后进入自检,自检完成 2 秒自动进入“作业选择”;自检异常时可“忽略故障”继续。
- 底部状态条上的**模式徽标可点击**(或按键盘 **M**)在“行车模式 / 机械臂模式”间切换;
行车模式操作底盘,机械臂模式操作机械臂。
- 软急停:各页顶条右上角“急停”按钮,或按键盘 **E**;急停后需点击“复位”恢复。
- ⑨⑩ 运行中“返回”无效(需先停止);调试维护页常显红色警告。
## 通信(UDP 收包 / 发包)
通信层位于 `comm/udpcommunication.cpp`,协议为 **JSON 文本**(`QJsonDocument`):
- 遥控端绑定本地端口 `9000`,向 `127.0.0.1:9001` 发包;
- 内置模拟车载端 `comm/mockvehicle.cpp` 绑定 `9001`,向 `9000` 回传遥测,并对命令作出响应。
上行命令(UI→车载端,`{"t":...}`):`chassis_move` `arm_move` `arm_return` `arm_pause`
`gas_start` `gas_stop` `wash_start` `wash_stop` `ball_valve` `pump_power` `pump_rpm`
`set_param` `selfcheck_start` `estop` `estop_reset`。
下行遥测(车载端→UI):`heartbeat` `chassis` `arm` `wash` `tank` `gas` `valve` `pump`
`estop` `selfcheck` `selfcheck_done`。
可在 `config.ini`(程序目录)中配置 `net/local_port`、`net/remote_host`、`net/remote_port`、
`net/mock`(true 启用内置模拟端,false 连接真实车载端)、`net/selfcheck_fault`(自检故障演示)。
参数(车速、柱塞泵流量、发泡倍数、泡沫比例、空压机流量)与密码经 `QSettings` 持久化,上电自动读取。
## 目录结构
- `app/` 全局常量、配色、应用上下文(AppContext)、QSS 样式、闪烁工具
- `comm/` UDP 通信层 + 内置模拟车载端
- `widgets/` 公共组件:TitleBar / StatusStrip / LedIndicator / NumPadDialog /
ConfirmDialog / AlarmBanner / ParamControl / DataCard / FaultTable
- `pages/` 各界面(继承 BasePage)