MANUAL
每关节一个滑块手动驱动真机,回路中没有策略。先构建目标姿态并以虚影机械臂预览,CONNECT 连上真机后用 SEND TO REAL 下发;下发过程中按钮变为 STOP,可随时叫停。HOME 把机械臂送回复位姿态。
概览
MANUAL 是唯一回路中无策略、直接驱动机械臂的标签页。适用于硬件调试、停到已知姿态,或检验传输层是否真能驱动机器人。不需要策略服务器。
连接、暂存姿态、下发、或复位
控制列从上到下四个面板:连接真机、下发、调参、目标关节角。
| 面板 / 控件 | 作用 |
|---|---|
| CONNECT(连接真机) | 在「连接 / 断开」之间切换;按钮上方一行显示连接状态(详见连接真机)。传输不是活动类型时置灰。 |
| SEND TO REAL ▶(下发) | 把暂存目标姿态下发到真机。仅在已连接且收到实时数据时可点。下发中按钮变为红色 STOP ■,点击立即停止。 |
| HOME ⌂(复位) | 把目标设为复位姿态并下发。复位姿态来自配置(见配置)。始终可点。 |
| publish rate Hz + APPLY ⤓(调参) | 调整下发频率(每秒帧数)。改值后点 APPLY(或按回车),按钮下方显示 applying… / applied / failed。默认取配置里的 publish_rate。 |
| 滑块(每关节一个) | 设定关节目标角度(j00、j01…,范围约 −3.2 ~ 3.2 rad)。仅更新暂存目标与虚影机械臂,不会移动硬件。 |
SEND TO REAL 是唯一触及机器人的操作。机械臂从当前姿态向暂存目标平滑插值,不会瞬移。
进入页面时目标以当前实测姿态为初值。双臂机器人滑块覆盖两臂全部关节,单个暂存姿态即驱动整机。
连接真机
CONNECT 面板只有一个切换按钮,按钮上方一行显示四种状态之一:
| 状态文字 | 含义 | 按钮 |
|---|---|---|
| SIM DEBUG · no real robot(无真机) | 传输不是活动类型,只能虚影预览。 | CONNECT REAL(置灰) |
| SIM DEBUG · press CONNECT REAL(可连接) | 活动传输可用,尚未连接。 | CONNECT REAL(可点) |
| WAITING FOR ROBOT…(等待真机) | 已请求连接,未收到实时数据。 | CANCEL |
| REAL ROBOT · LIVE(已连接) | 已连接并在接收实时数据。 | DISCONNECT |
LIVE 要求后端持续收到真机数据。机器人未上电或无数据时停在 WAITING FOR ROBOT…,SEND TO REAL 保持锁定。
两条叠加的机械臂
MANUAL 在共享 3D 场景中叠加两条机械臂:
- 实线机械臂——当前实测姿态。
- 虚影机械臂——暂存目标,即
SEND TO REAL将驱动它去往的位置。
两者之间的间隙就是即将命令的运动。
叫停一次看起来不对的运动
下发可随时打断。按从快到稳:
- STOP ■——下发中
SEND TO REAL变为红色 STOP,点击立即停止。 - HOME——改向复位姿态。
- 真正的紧急情况使用机器人自身物理急停按钮——控制台不能替代硬件安全。
SEND TO REAL 何时才真正移动机械臂
两个条件:传输类型与连接状态。CONNECT 仅在 zmq、ros1、ros2 下可用;SEND TO REAL 在连上且收到实时数据后才启用。dataset 没有活动机械臂,仅能虚影预览。
MANUAL 始终可用。与 COLLECT 或 EVAL/RESULT(需配置段触发)不同,MANUAL 始终存在。普通的deploy 配置会激活 DEBUG、MANUAL、REPLAY。
MANUAL 需要的配置
MANUAL 没有自己的配置段——任意 deploy 配置都可工作。重要的是两件事:robot 定义(使滑块映射到关节,且 HOME 有目标)和活动传输(使 SEND TO REAL 能触及机械臂)。启动:
eva --config configs/01_deploy/my_robot/manual.py --web-port 8080
最小 deploy 配置——替换标注的值:
# deploy 配置:MANUAL 通过活动传输驱动真机。 # 路径相对于本文件。 _base_ = ['../../00_base/defaults.py'] robot = dict( type='', # 待填:机器人键,例如 'ur5e'(见下表)。 initial_qpos=None, # HOME 的复位姿态。None 使用机器人自带默认。 ) transport = dict( type='', # 待填:'zmq'、'ros1' 或 'ros2'。 )
传输还需要连接信息。IP、端口、话题名在传输层中配置。在那之前,SEND TO REAL 不会移动任何东西。
| 字段 | MANUAL 为何在意 |
|---|---|
transport.type | 必须是 zmq、ros1 或 ros2,SEND TO REAL 才能触及活动机械臂。dataset 没有活动机械臂。 |
robot.type | 选择机器人与滑块暴露的关节。内置键:agilex_AGILEX、arx_r5、dual_franka、agibot_g2、r1_lite、ur5e。自定义机器人见添加新机器人。 |
robot.initial_qpos | HOME 的目标姿态。None 使用机器人自带默认。需指定 HOME 时显式设置,并确认无碰撞。 |
publish_rate | TUNING 面板里 publish rate Hz 输入框的默认值;运行时可调。 |
成功与失败各是什么样
| 你看到…… | 说明…… |
|---|---|
| 虚影机械臂随滑块移动 | 暂存正常。尚未触及硬件。 |
状态变为 REAL ROBOT · LIVE | 已连上并在接收实时数据;SEND TO REAL 可用。 |
状态停在 WAITING FOR ROBOT… | 收不到真机数据。检查上电、急停、传输连接信息。 |
| 实线机械臂缓慢追上虚影 | 真机正在移动到目标。 |
| SEND TO REAL 变灰 | 传输是 dataset、未连接或未收到实时数据。详见连接真机。 |