切换机器人¶
在工作空间和启动文件中更换机器人型号。
前提条件¶
工作空间已克隆并初始化
目标机器人的描述已可用
步骤¶
1. Initialize Robot Description¶
如果机器人描述尚未初始化:
在 open-deploy-ws 中优先用 ./init_repo.sh,让 src/robot-descriptions/ 下嵌套模块与 submodules_visibility.conf 一致(manipulator/Dobot、manipulator/ARX 等)。不要 git submodule update --init --recursive。
2. Rebuild¶
cd ~/open-deploy-ws
colcon build --symlink-install
source install/setup.bash
3. Launch with New Robot¶
ros2 launch ocs2_arm_controller demo.launch.py robot:=<robot_name>
机器人名称¶
品牌 |
本文档集使用的 |
来源 |
|---|---|---|
Dobot |
|
|
方舟无限(ARX) |
|
ARX how-to / 描述包 |
高擎(HighTorque) |
|
|
Dyna |
|
|
使用与你已初始化的 {key}_description 对应的键。
示例:从 Dobot 切换到 ARX¶
# Demo default robot key is cr5 (demo.launch.py)
ros2 launch ocs2_arm_controller demo.launch.py
# After init has ARX descriptions, launch Acone (dual-arm, not Lift 2S)
ros2 launch ocs2_arm_controller demo.launch.py robot:=arx_acone
arx_acone 是 Acone(双臂)。全身 ARX Lift 2S(arx_lift2s)在 arx-lift2s 分支上使用 split_body.launch.py / full_body.launch.py — 见 ARX Lift 2S。Taku(taku)在描述切到 feature/agilex 后使用同一套分体 / 全身启动:公开 mock 是 split_body.launch.py;full_body.launch.py 需要私有 ocs2_wbc_controller 子模块 — Taku / feature/agilex。高擎 Panthera HT 的启动名是 panthera_ht — 见 高擎 Panthera HT。cr5 / arx_acone / panthera_ht 仍用 demo.launch.py。
末端执行器(type / left_type / right_type)¶
没有 gripper:= 参数。末端由 robot_common_launch 选择:
对称末端:
type:=<eef_key>左右不同:同时传
left_type:=与right_type:=;此时不要再传type:=(create_eef_side_launch_arguments())type也可以是臂拓扑left/right/dual(不会展开成left_type/right_type)OCS2 的
demo/split_body/full_body通过create_robot_profile_launch_arguments()声明这些参数。basic_joint_controller的demo.launch.py只声明type。
use_profile_eef:=true(默认)时应用 profile YAML 的 defaults.end_effectors。设 use_profile_eef:=false 以强制使用命令行键。合并顺序:CLI > profile > xacro 默认值。力传感器(ft / left_ft / right_ft)和 TCP 偏移是独立项,除非 CLI 覆盖,否则始终使用 profile。
# README: ignore profile EEF, set L/R from CLI
ros2 launch ocs2_arm_controller demo.launch.py \
robot:=<robot_name> \
robot_profile:=/path/to/machine_profile.yaml \
use_profile_eef:=false \
left_type:=rg75 right_type:=linkerhand_o7
完整表格见 robot-descriptions-common(robot_common_launch README)。
验证¶
RViz 显示正确的机器人模型
/joint_states中的关节名称与新机器人匹配控制器接受适合该机器人的指令
故障排除¶
找不到软件包¶
colcon build --symlink-install
source install/setup.bash
URDF 错误¶
查看描述软件包的 README 以了解依赖项。
关节限位不正确¶
每台机器人在 URDF 中都有自己的关节限位。请确认目标位姿在限位范围内。