22 KiB
22 KiB
08-xyzbc-trt 界面与图标分析
目标
本文面向后续 Web 数控系统界面开发,集中整理 xyzbc-trt 相关的界面组成、交互入口和图标资产。分析依据来自:
- LinuxCNC
configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.ini - LinuxCNC
xyzbc-trt.xmlPyVCP 面板与switchkins_postgui.hal - LinuxCNC
xyzbc-trt-gui.pyVismach 三维机床模型 - Web 项目
app/src/ui/gmoccapy-shell.js - Web 项目
app/src/profiles/xyzbc-trt.js - Web 图标清单
app/src/ui-reference/gmoccapy-button-icons.json - Web 图标注册表
app/src/ui/gmoccapy-icon-registry.js
xyzbc-trt 机床界面基线
| 项 | 内容 |
|---|---|
| 机床配置 | sim-xyzbc-trt-kins (switchkins) |
| 坐标/轴 | XYZBC,5 轴/5 joints |
| 主界面来源 | LinuxCNC AXIS |
| 右侧扩展面板 | PyVCP SWITCHKINS |
| 三维机床 | Vismach xyzbc-trt-gui |
| 默认程序 | demos/xyzbc_switchkins.ngc |
| 工具表 | xyzbc-trt.tbl |
| 参数文件 | xyzbc.var |
| 运动学 | xyzbc-trt-kins sparm=identityfirst |
| 切换模式 | M429 identity、M428 XYZBC TCP、M430 USERK |
必须覆盖的界面
1. 主工作台 Shell
Web 首屏应直接是可操作 CNC 仿真界面,不做营销页。当前 gmoccapy-shell 已拆出以下区域:
| 区域 | Web region | 必备内容 | 关键状态 |
|---|---|---|---|
| 标题/会话栏 | titlebar |
项目名、profile 选择、会话名、来源、当前行、运行状态 | machineProfile、sessionName、sourceMode、machine.mode |
| 五轴预览 | preview |
3D/Canvas 机床、刀路、TCP、刀轴、当前程序、工具摘要、RTCP 状态 | preview、toolPreview、toolAxisVector、rtcpState |
| DRO 坐标 | dro |
X/Y/Z/A/B/C、G54/Abs、DTG、TCP、tool-axis、RTCP 状态 | dro、toolAxisVector |
| G-code/MDI | gcode |
程序行、当前行、高亮、执行状态、LinuxCNC source 选择、staging、MDI 输入、MDI 历史 | programLines、activeLine、machineFileStaging、mdiHistory |
| 右侧状态栏 | status-sidebar |
急停、上电、复位、AUTO、MANUAL、JOG、MDI、IDENTITY、TCP | task gate、mode、estop、power、switchkins |
| 信息/诊断页 | info-tabs |
Tool info、G-code properties、gmoccapy diagnostics、LinuxCNC parity、Task/HAL、HAL pins | runtime readiness、source map、HAL/model 状态 |
| Override | override |
Rapid override、Feed override、ignore limits、optional block、optional stop | feed、gmoccapyGui |
| 主轴/冷却 | spindle-coolant |
Flood、Mist、主轴 FWD/STOP/REV、RPM、spindle override | coolant、spindle |
| 底部控制栏 | bottom-controls |
Open、Reload、Run、Stop、Pause/Resume、Step、Home、Tool、Touch、MDI、Full、Save/Restore、Audit | command gates、session、program run |
2. AXIS 等效页面
LinuxCNC 原生 xyzbc-trt 使用 AXIS,因此 Web 需要覆盖这些 AXIS 语义:
| 原生 AXIS 区域 | Web 等效模块 | 开发要点 |
|---|---|---|
| 菜单/工具栏 | 底部控制栏 + 文件/编辑/工具页入口 | 文件打开、重载、运行、暂停、停止、单步、从行运行、编辑 |
| 程序文本区 | G-code panel | 当前行高亮、执行进度、状态、解释器/canonical 来源 |
| 预览区 | Preview panel | 机床模型、完整预览路径、已执行路径、视角/缩放/清除 |
| 坐标显示 | DRO panel | XYZBC、DTG、G54/Abs、TCP、tool-axis |
| MDI | MDI panel | 输入框、执行按钮、历史/快捷命令、M428/M429/M430 |
| 状态栏 | Sidebar + titlebar | ESTOP、POWER、MODE、RUN、PAUSE、HOMED、INTERP/TASK |
| Override | Override panel | Feed/Rapid/Spindle override、可选段跳过、可选停止 |
3. PyVCP SWITCHKINS 面板
原生 xyzbc-trt.xml 提供一个必须在 Web 中等效实现的 PyVCP 面板:
| 控件 | 文本 | HAL pin/net | LinuxCNC 动作 | Web 动作 |
|---|---|---|---|---|
kinstype-legends |
0:IDENTITY / 1: XYZBC / 2: USERK |
kinstype.is-0/1/2 -> pyvcp.multilabel.0.legend* |
显示当前 kinematics 类型 | 高亮当前 switchkins 类型 |
type0-button |
IDENTITY |
pyvcp.type0-button -> halui.mdi-command-00 |
M429 |
SET_KINS_TYPE identity |
type1-button |
TCP:XYZBC |
pyvcp.type1-button -> halui.mdi-command-01 |
M428 |
SET_KINS_TYPE tcp-xyzbc |
type2-button |
userk |
pyvcp.type2-button -> halui.mdi-command-02 |
M430 |
USERK 占位/受 gate 控制 |
vismach-clear |
vismach-clear |
pyvcp.vismach-clear -> vismach.plotclear |
清除 Vismach 轨迹 | CLEAR_PREVIEW |
4. Vismach 等效三维机床界面
Web 五轴场景必须按 xyzbc-trt-gui.py 的 HAL 语义驱动,不应只画静态模型。
| Vismach/HAL 信号 | 来源 | 目标 | Web 展示 |
|---|---|---|---|
table-x |
joint.0.pos-fb |
xyzbc-trt-gui.table-x |
工作台 X 平移 |
saddle-y |
joint.1.pos-fb |
xyzbc-trt-gui.saddle-y |
鞍座 Y 平移 |
spindle-z |
joint.2.pos-fb |
xyzbc-trt-gui.spindle-z |
主轴 Z 平移 |
tilt-b |
joint.3.pos-fb |
xyzbc-trt-gui.tilt-b |
B 倾斜轴 |
rotate-c |
joint.4.pos-fb |
xyzbc-trt-gui.rotate-c |
C 回转轴 |
tool-offset |
motion.tooloffset.z / xyzbc-trt-kins.tool-offset |
GUI + kins | 刀长/刀具 TCP 偏置 |
x-offset |
xyzbc-trt-kins.x-offset |
GUI | TRT 几何 X 偏置,默认 -20 |
z-offset |
xyzbc-trt-kins.z-offset |
GUI | TRT 几何 Z 偏置,默认 -15 |
5. 文件/程序页面
| 页面/状态 | 必备能力 | 关联图标 |
|---|---|---|
| 程序加载 | 打开本地 .ngc/.nc/.tap/.gcode/.txt,选择 LinuxCNC staged source |
open_file、select_file |
| 文件浏览 | 上级目录、Home、Jump to、刷新、上一项/下一项、选择、返回 | chevron_up、home_folder、user_defined_folder、refresh、chevron_left/right、back_to_app |
| 程序运行 | Run、Stop、Pause、Step、Run from line、Reload、Optional block | play、stop、pause、pause_active、step、run_from_line、refresh、skip_optional_* |
| 编辑 | 编辑、保存、另存、新建、撤销、重做、注释、搜索、分屏预览 | edit_code、save、save_as、new_document、edit_undo、edit_redo、comment、split_view |
6. 手动/JOG/回零/对刀页面
| 页面 | 必备控件 | xyzbc-trt 注意点 |
|---|---|---|
| 回零 | Ref all、Unref all、X/Y/Z/B/C 单轴回零、返回、分页 | XYZBC 应使用 X/Y/Z/B/C;A 图标是资产存在但本机型不应作为主轴显示 |
| Touch off | X/Y/Z/B/C touch off、返回、分页、可选 block height | 同上,优先按当前 profile 轴生成 |
| Jog | 连续/增量、慢速/快速、Ignore limits、轴 jog、关节 jog | 非平凡 kinematics 下 joint jog 需要单独 gate |
| MDI | MDI 输入、历史命令、M428/M429/M430 快捷 | M428/M429/M430 是 switchkins 核心入口 |
7. 刀具/偏置/设置/诊断页面
| 页面 | 必备能力 | 说明 |
|---|---|---|
| Tool page | 选择刀具、换刀、M61 Q 设置当前刀、X/Z tool touch off、ToolEdit 添加/删除/保存/刷新/计算器 | xyzbc-trt.tbl 是数据源 |
| Offset page | 坐标偏置计算器、编辑 offsets、set selected、zero G92 | 文字按钮为主,少量计算器图标 |
| Settings page | 声音、字体、DRO/DTG/offset 显示、键盘行为、窗口模式、run from line、unlock、tool measurement | 很多控件无图标,按表单控件实现 |
| Diagnostics | LinuxCNC parity、Task/HAL、INI、source map、HAL pins、gmoccapy comms、native/Web 对比 | 以只读诊断表格为主 |
Web 已注册核心图标
app/src/ui/gmoccapy-icon-registry.js 当前直接注册的核心按钮如下,开发首屏应优先使用这些 id:
| buttonId | 语义 | active 图标 | inactive/default 图标 |
|---|---|---|---|
tbtn_estop |
急停/急停复位 | main_switch_on |
main_switch_off |
tbtn_on |
机器上电 | power_on |
power_off |
rbt_manual |
手动模式 | mode_manual_active |
mode_manual_inactive |
rbt_mdi |
MDI 模式 | mode_mdi_active |
mode_mdi_inactive |
rbt_auto |
Auto 模式 | mode_auto_active |
mode_auto_inactive |
tbtn_setup |
设置页 | mode_settings_active |
mode_settings_inactive |
tbtn_user_tabs |
用户/Jog 页 | mode_user_tabs_active |
mode_user_tabs_inactive |
btn_load |
打开程序 | - | open_file |
btn_reload |
重载 | - | refresh |
btn_run |
运行 | - | play |
btn_stop |
停止 | - | stop |
tbtn_pause |
暂停 | pause_active |
pause |
btn_step |
单步 | - | step |
btn_homing |
回零菜单 | - | ref_all |
btn_tool |
刀具页 | - | hsk_mill_tool |
btn_touch |
对刀/坐标设定 | - | touch_off |
ref_all |
全部回零 | - | ref_all |
btn_fullscreen |
全屏预览 | fullscreen_close |
fullscreen_open |
rbt_forward |
主轴正转 | spindle_right_on |
spindle_right |
rbt_reverse |
主轴反转 | spindle_left_on |
spindle_left |
rbt_stop |
主轴停止 | spindle_stop_on |
spindle_stop |
tbtn_flood |
Flood 冷却 | coolant_flood_active |
coolant_flood_inactive |
tbtn_mist |
Mist 冷却 | coolant_mist_active |
coolant_mist_inactive |
btn_zoom_in |
放大 | - | zoom_in |
btn_zoom_out |
缩小 | - | zoom_out |
rbt_view_x |
X 视角 | - | tool_axis_x |
rbt_view_y |
Y 视角 | - | tool_axis_y |
rbt_view_z |
Z 视角 | - | tool_axis_z |
rbt_view_p |
透视/Fit | - | tool_axis_p |
tbtn_view_tool_path |
刀路显示/清除 | - | toolpath |
tbtn_view_dimension |
尺寸显示 | - | dimensions |
btn_exit |
退出 | - | logout |
btn_save_session |
保存会话 | - | save |
图标分类总览
原始 gmoccapy 图标清单包含 211 行记录,当前复制到项目资产中的图标文件为 112 个。按界面类别统计如下:
| 类别 | 行数 | 按钮数 | 主要按钮 |
|---|---|---|---|
| 右侧主状态栏 | 14 | 7 | rbt_auto、rbt_manual、rbt_mdi、tbtn_estop、tbtn_on、tbtn_setup、tbtn_user_tabs |
| 底部主按钮栏 | 7 | 6 | btn_exit、btn_homing、btn_tool、btn_touch、tbtn_fullsize_preview0、tbtn_switch_mode |
| Auto 程序运行栏 | 13 | 10 | btn_edit、btn_from_line、btn_load、btn_reload、btn_run、btn_step、btn_stop、tbtn_pause |
| MDI/宏按钮栏 | 11 | 9 | calculator、keyboard、macro_0..4、next_button、previous_button |
| 回零按钮栏 | 10 | 10 | home_axis_x/y/z/a/b、ref_all、unref_all、分页、返回 |
| 对刀/坐标设定按钮栏 | 9 | 9 | touch_x/y/z/a/b、分页、返回、block_height |
| 手动/Jog 面板 | 4 | 2 | chk_ignore_limits、tbtn_turtle_jog |
| Jog 增量选择栏 | 6 | 6 | rbt_0..5 |
| Jog 轴按钮 | 10 | 10 | x+/x-、y+/y-、z+/z-、a+/a-、b+/b- |
| Jog 关节按钮 | 10 | 10 | 0+/0- 到 4+/4- |
| 冷却/主轴控制 | 11 | 5 | rbt_forward、rbt_reverse、rbt_stop、tbtn_flood、tbtn_mist |
| 预览/视图 | 10 | 10 | 缩放、视角、尺寸、刀路、清除 |
| 编辑器搜索/编辑 | 8 | 8 | 注释、撤销、重做、搜索、替换 |
| 编辑页底部栏 | 9 | 8 | 返回、计算器、键盘、新建、重载、保存、另存、分屏 |
| 刀具页底部栏 | 6 | 6 | 返回、换刀、设置当前刀、按编号选择、X/Z tool touch off |
| 文件选择栏 | 9 | 9 | 返回、上级、home、jump、刷新、上一项、下一项、选择、排序 |
| 内嵌 ToolEdit 控件 | 5 | 5 | 添加、保存、计算器、删除、刷新 |
| 内嵌 OffsetPage 控件 | 4 | 4 | 计算器、编辑、设置选中、Zero G92 |
| 设置页控件 | 42 | 42 | 声音、字体、DRO、DTG、offset、键盘、窗口、unlock、tool measurement |
| Glade 静态按钮 | 13 | 13 | HAL meter/scope/show、status、calibration、classicladder 等 |
已复制图标文件清单
图标根目录:
web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/assets/gmoccapy-icons
状态/模式/电源
img_emergency__main_switch_on__48.pngimg_emergency_off__main_switch_off__48.pngimg_machine_on__power_on__48.pngimg_machine_off__power_off__48.pngimg_auto_on__mode_auto_active__48.pngimg_auto__mode_auto_inactive__48.pngimg_manual_on__mode_manual_active__48.pngimg_manual__mode_manual_inactive__48.pngimg_mdi_on__mode_mdi_active__48.pngimg_mdi__mode_mdi_inactive__48.pngimg_settings_on__mode_settings_active__48.pngimg_settings__mode_settings_inactive__48.pngimg_user_tabs_on__mode_user_tabs_active__48.pngimg_user_tabs__mode_user_tabs_inactive__48.png
程序运行/编辑/文件
img_open__open_file__32.svgimg_reload1__refresh__32.pngimg_run__play__32.pngimg_stop__stop__32.pngimg_pause__pause__32.pngimg_pause_active__pause_active__32.pngimg_step__step__32.pngimg_run_from__run_from_line__48.pngimg_skip_optional_active__skip_optional_active__32.pngimg_skip_optional_inactive__skip_optional_inactive__32.pngimg_editor__edit_code__32.pngimg_edit-undo__edit_undo__32.pngimg_edit-redo__edit_redo__32.pngimg_edit_comment__comment__32.pngimg_edit_menu_new__new_document__32.svgimg_edit_menu_reload__refresh__32.pngimg_edit_menu_save__save__32.pngimg_edit_menu_save_as__save_as__32.pngimg_edit_menu_close__back_to_app__48.svgimg_edit_menu_calculator__calculator_open__32.pngimg_edit_menu_keyboard__keyboard__32.pngimg_edit_menu_keyboard_hide__keyboard_hide__32.pngimg_split_view__split_view__32.png
预览/视角/刀路
img_zoom_in__zoom_in__24.pngimg_zoom_out__zoom_out__24.pngimg_view_x__tool_axis_x__24.pngimg_view_y__tool_axis_y__24.pngimg_view_y2__tool_axis_y_inv__24.pngimg_view_z__tool_axis_z__24.pngimg_view_p__tool_axis_p__24.pngimg_tool_path__toolpath__24.pngimg_dimensions__dimensions__24.pngimg_tool_clear__clear__24.pngimg_fullsize_preview0_open__fullscreen_open__48.pngimg_fullsize_preview0_close__fullscreen_close__48.pngimg_fullsize_preview1_open__fullscreen_open__48.pngimg_fullsize_preview1_close__fullscreen_close__48.png
主轴/冷却
img_spindle_forward__spindle_right__48.pngimg_spindle_forward_on__spindle_right_on__48.pngimg_spindle_reverse__spindle_left__48.pngimg_spindle_reverse_on__spindle_left_on__48.pngimg_spindle_stop__spindle_stop__48.pngimg_spindle_stop_on__spindle_stop_on__48.pngimg_coolant_on__coolant_flood_active__48.pngimg_coolant_off__coolant_flood_inactive__48.pngimg_mist_on__coolant_mist_active__48.pngimg_mist_off__coolant_mist_inactive__48.png
回零/对刀/Jog
img_ref_all__ref_all__48.pngimg_ref_menu__ref_all__48.pngimg_unref_all__unref_all__48.pngimg_ref_x__ref_x__48.pngimg_ref_y__ref_y__48.pngimg_ref_z__ref_z__48.pngimg_ref_a__ref_a__48.pngimg_ref_b__ref_b__48.pngimg_ref_menu_close__back_to_app__48.svgimg_ref_paginate_next__chevron_right__32.svgimg_ref_paginate_prev__chevron_left__32.svgimg_touch_off__touch_off__48.pngimg_touch_x__touch_x__48.pngimg_touch_y__touch_y__48.pngimg_touch_z__touch_z__48.pngimg_touch_a__touch_a__48.pngimg_touch_b__touch_b__48.pngimg_touch_menu_close__back_to_app__48.svgimg_touch_paginate_next__chevron_right__32.svgimg_touch_paginate_prev__chevron_left__32.svgimg_continuous__jog_continuous__24.pngimg_turtle_jog__jog_speed_slow__32.pngimg_rabbit_jog__jog_speed_fast__32.png
文件浏览/导航
img_back_file_load__back_to_app__48.svgimg_back_tool__back_to_app__48.svgimg_close__logout__48.pngimg_dir_up__chevron_up__32.svgimg_home__home_folder__32.svgimg_jump_to__user_defined_folder__32.svgimg_refresh_dir__refresh__32.pngimg_sel_next__chevron_right__32.svgimg_sel_prev__chevron_left__32.svgimg_select__select_file__32.pngimg_up__chevron_up__24.svgimg_down__chevron_down__24.svg
刀具/ToolEdit/Offset
img_tools__hsk_mill_tool__48.pngimg_toolchange__mill_tool_change__48.pngimg_index_tool__mill_tool_set_num__48.svgimg_tool_by_no__mill_tool_change_num__48.svgimg_tool_add__add__32.pngimg_tool_save__save__32.pngimg_tool_calculator__calculator_open__32.pngimg_tool_delete__delete__32.pngimg_tool_reload__refresh__32.pngimg_offset_calculator__calculator_open__32.png
MDI/宏/键盘
img_macro_menu_calculator__calculator_open__32.pngimg_macro_menu_keyboard__keyboard__32.pngimg_macro_menu_keyboard_hide__keyboard_hide__32.pngimg_macro_menu_stop__stop__32.pngmacro_0__macro_image.pngmacro_4__macro_image.png
xyzbc-trt 专用界面规则
- 轴显示以
XYZBC为准。A 轴相关图标可保留为通用资产,但xyzbc-trt主界面、回零、Touch Off、DRO、Jog 应显示 X/Y/Z/B/C。 TCP:XYZBC是核心按钮,不应写成TCP:XYZAC。对应 MDI 命令为M428。IDENTITY对应M429,在identityfirst配置中 switchkins type0是 identity。USERK对应M430,若 Web runtime 暂未实现完整 USERK,应保留按钮但通过 gate/提示标明状态。vismach-clear必须清除 Web 机床/刀路预览,不应只清除文本状态。- B/C 角轴限制、joint 限制和 TCP/toolAxis 计算必须来自 profile/INI/kinematics runtime,不应从 UI 字符串推断。
- 诊断页面要明确区分“图标/界面参考已具备”和“WASM artifact/runtime 已具备”,避免把 UI 对标误判为运动语义完成。
AXIS 源程序按钮级对标矩阵
本轮新增要求:Web 页面按钮不仅要“看起来像 AXIS”,还要按 LinuxCNC 源程序按钮语义逐项验证。依据路径:
/home/mes123456/cnc_wams/linuxcnc/src/emc/usr_intf/axis/scripts/axis.py
configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.xml
configs/sim/axis/vismach/5axis/table-rotary-tilting/switchkins_postgui.hal
Web 端按钮矩阵实现位置:
app/src/ui/axis-shell.js :: AXIS_BUTTON_PARITY
验收要求:
| 类别 | Web action | LinuxCNC 来源 | 必须验证的状态效果 |
|---|---|---|---|
| 急停/上电 | estop、power |
commands.estop_clicked、commands.onoff_clicked |
ESTOP/ESTOP_RESET 可双向切换;上电后 taskState=on |
| 程序运行 | run-ready、run、pause、resume、step、stop、reload |
task_run、task_pause、task_resume、task_step、task_stop、reload_file |
运行前置、AUTO 模式、暂停/继续/单步/停止状态正确 |
| 文件 | open、stage |
open_file、PROGRAM_PREFIX |
Open 从全局 AXIS shell 触发文件选择;LinuxCNC 文件 staging 可验证 |
| 手动/MDI | tab-manual、tab-mdi、mdi-form、mdi-history |
ensure_manual、ensure_mdi、send_mdi、MDI history |
模式切换、MDI 历史和 MDI 命令状态一致 |
| 回零/Jog/对刀 | home-all、jog-minus、jog-plus、touch-off、tool-touch-off |
home_all_joints、jog_minus、jog_plus、touch off 逻辑 |
选中关节映射到 X/Y/Z/B/C;Jog 改变对应轴;touch off 发等效 MDI |
| Override | feed/rapid/spindle-override-* |
set_feedrate、set_rapidrate、set_spindlerate |
override 按 LinuxCNC 范围约束变化 |
| 主轴/冷却 | spindle-forward、spindle-stop、spindle-reverse、toggle-flood、toggle-mist |
AXIS spindle/coolant 控件与 F7/F8/F9/F10 | 主轴方向、使能、冷却状态变化 |
| 视图/轨迹 | view-x/y/z/p、clear-preview |
set_view_x/y/z/p、clear_live_plot |
视角状态和 live plot buffer 清除 |
| PyVCP switchkins | kins-identity、kins-tcp、kins-userk、clear-preview |
pyvcp.type*-button -> halui.mdi-command-*、vismach.plotclear |
M429/M428/M430 分别设置 identity/TCP/userk,清轨迹生效 |
浏览器验收必须实际点击关键按钮并观察状态变化,不得只检查 DOM 存在。当前 tests/browser/xyzbc_trt_browser_smoke.html 已覆盖 ESTOP/复位、上电、回零、MDI、M428/M429/M430、Jog、override、主轴、冷却、视图、清轨迹和 run-ready。
开发组件拆分建议
| 组件 | 输入状态 | 输出动作 |
|---|---|---|
MachineTitlebar |
profile、session、source、mode、activeLine | select-profile |
FiveAxisPreview |
path samples、joint pose、tcp、toolAxis、toolPreview、selectedView | view/zoom/fit/clear/fullscreen |
DroPanel |
XYZBC DRO、DTG、TCP、toolAxis、offset mode | 切换 DRO 显示模式 |
ProgramPanel |
program lines、activeLine、execution feedback、source list | open/reload/stage/select source/run MDI |
StatusSidebar |
task policy、estop、power、mode、switchkins | estop/power/reset/mode/kintype |
PyvcpSwitchkinsPanel |
kinstype active、panel schema | M429/M428/M430/clear |
OverridePanel |
feed/rapid/spindle override、optional block/stop | override step/reset/toggle |
SpindleCoolantPanel |
spindle、coolant、gates | FWD/STOP/REV/flood/mist |
HomingPanel |
axes、homed state | home axis/ref all/unref all |
TouchOffPanel |
axes、offset context | touch axis/block height |
JogPanel |
jog axis/joint mode、increment、limits | jog press/release、increment、ignore limits |
ToolPage |
tool table、selected tool、tool offsets | select/change/index/save/edit |
FilePage |
OPFS/project files、current dir、selected file | navigate/select/open |
SettingsPage |
gmoccapy settings | form updates |
DiagnosticsPage |
INI、HAL、Task/HAL、WASM、parity、evidence | audit/refresh |
最小首屏 icon 集合
如果先实现可运行首屏,必须先接入这些图标:
- 急停/上电:
tbtn_estop、tbtn_on - 模式:
rbt_manual、rbt_mdi、rbt_auto - 程序:
btn_load、btn_reload、btn_run、btn_stop、tbtn_pause、btn_step - Switchkins:
IDENTITY、TCP:XYZBC、USERK可先用文字按钮,但状态要接 HAL/MDI 语义 - 预览:
rbt_view_x、rbt_view_y、rbt_view_z、rbt_view_p、btn_zoom_in、btn_zoom_out、tbtn_view_tool_path - 主轴/冷却:
rbt_forward、rbt_stop、rbt_reverse、tbtn_flood、tbtn_mist - 回零/刀具/对刀:
btn_homing、btn_tool、btn_touch - 会话/退出:
btn_save_session、btn_exit