更新时间:2026-08-05 GMT+08:00
分享

命令与按键关联

关联到已注册的命令实例

keymap的value是命令实例名(YAML commands段的key)

hardware:
  config:
    commands:
      go_home:              # ← 实例名
        type: go_home
        joints: [0, 0, 0, 0, 0, 0]
      state:                # ← 实例名
        type: get_state

runtime:
  keyboard_control:
    enabled: true
    keymap:
      "h": go_home          # → 执行 go_home 实例
      "s": state            # → 执行 state 实例

关联到生命周期命令

pause_resume和graceful_stop是内置保留命令,不需要在commands段声明,只能通过保留键触发。

启动时校验

  • 配置校验(from_config):keymap结构、保留键、类型正确性,有错立即报错退出。
  • 命令存在性校验(from_config):keymap值对应的命令实例是否存在,有错立即报错退出。
keymap:
  "x": unknown_cmd     # ← 如果 unknown_cmd 未注册 → ValueError 退出

错误消息示例

ValueError: keymap key 'x' → 'unknown_cmd': no such command.
  Available commands: ['go_home', 'state']
  Fix: register a command named 'unknown_cmd' or change the keymap.

相关文档