← 首页 CoreFusion · ARM-8 CONSOLE

双臂 8 路控制模拟台 Dual-Arm 8-Servo Console · 每臂 4 关节 × 2

未接真硬件;独立控制器局部 id 0..7,预留 +20 并入整机总线;左右方向反相由装配侧极性处理
3D 人物加载中…(离线演示包:three.js 本地副本,无需联网)

手势(GESTURES 关键帧库,线性插值+缺省补中位)/ Gestures

动作剧本(手势时间轴,同 gesture_script.py)/ Gesture script

预置
就绪:选预置剧本点"载入",或直接编辑下方 JSON 后播放。

· 剧本 = [{t 秒, action:{type:'gesture', name:手势名}}] 时间轴,按 t 派发到既有手势 管线(50Hz 步进+限速+互锁;预备/跟随开关照常生效)。预置时间轴数据、清洗排序与游标派发口径同 bionic_arm/gesture_script.py(check_alignment 锁定);预置节拍满足"无抢占"约束(相邻手势间隔 ≥ 前一手势完整时长,单测锁定),手动编辑允许抢占(同手势按钮语义)。急停或任何手动操作即打断。 JSON 可改可复制(无下载)。节点侧编排归联调按需(如实标注)。

安全控制 · 0xC3 语义(急停冻结,释放后 hold)/ Safety

协调层(肢体协调,镜像自 motion_coordination.py)/ Coordination

增强对照:—(开启"预备/跟随"后点手势查看)
颈提示 yaw +0.0° pitch +0.0°

· 同步步进 = sync_step_toward 同式:T = maxj(|err_j|/max_dps_j), 全关节按 min(1, dt/T) 同比例推进 —— 同时启动、同时到达,每关节速度 |err_j|/T ≤ 限速(不变量内建)。 开关默认关 = 现状逐关节限速步进。
· 预备/跟随 = enhance_gesture 同式:首个运动段前插反向 8% 蓄力帧(+0.25s 平移后续), 末段到位后插 5% 过冲帧(+0.30s)+ 回稳帧(+0.48s),再经 fit_to_speed 逐段拉伸超速段; 播完仍停在原末位姿(语义不变)。开关默认关 = 原始关键帧。
· 颈部 yaw/pitch 指针与表情徽章 = neck_hint / FACE_HINTS 的叠加偏置建议(数据契约): 消费方 = 表情引擎颈部通道 / 情绪意图,由消费方自行限幅,联调归后续;yaw 正 = 向左,pitch 正 = 抬头。
· 诚实边界:预备/跟随参数与提示角为演示层工程值(非动捕标定); 左侧火柴人不画颈,颈部提示只以本仪表显示。
· 常量(COORD/NECK_HINTS/FACE_HINTS)逐值镜像自 bionic_arm/motion_coordination.py。

8 路关节滑杆(min/max = 软限位,初值 = 中位)/ Joints

左臂 L(id 0-3)

右臂 R(id 4-7)

· 限速步进与 arm_control.step_toward 同式:逐关节 step = clamp(err, ±MAX_DPS·dt), 手势与手动共用此层;dt = 真实时钟差钳 [0, 0.1s]。
· 手势按 sample_gesture 同式驱动目标(相邻关键帧线性插值,缺省关节补中位),播完停在末位姿; 拖任一滑杆即手动接管。
· 急停(0xC3 ARG=1)冻结当前位姿并忽略指令;恢复(ARG=0)后保持冻结位姿(hold), 直到第一个新指令(拖滑杆/点手势/镜像/回中)才恢复跟随 —— 语义同固件。
· 镜像 = mirror_pose:左右换边、数值不取反(物理方向相反由装配/标定侧极性处理)。
· 常量(关节表/软限位/限速/手势库/NODE_HZ/ARM_ID_OFFSET)逐值镜像自 bionic_arm/arm_control.py,由 check_alignment 门禁锁定。

下发帧预览 · 协议 v2 数据帧(SOF=0xA5,CRC16-CCITT,50Hz)/ Frame preview

状态 / Status

模式 跟随 · seq 0 · 运动中 0/8 路
步进 50Hz 下发 · 限速 120/120/160/200 °/s(肩俯/肩滚/肘/腕)
步进模式 逐关节限速 · 关键帧 原始