撰写动捕映射配置文件
1. 准备
若希望使用TeleXperience的动捕映射功能,则需要撰写动捕映射配置文件。
以OpenLoong为例:
首先在OpenLoong
路径下找到vr_configs.yml
,将其中的wo_controller
设置为fasle以启动设备内置的控制器。
在OpenLoong
路径下,创建mocap_to_robot_command_v2.yml
文件作为动捕映射配置文件。
2. 撰写配置文件
动捕映射配置文件包括ros节点设置和映射参数设置:
- ros节点设置,包括设置ros节点通信频率
rate
以及通信话题名称mocap_topic
,joint_target_topic
,joint_state_topic
。 - 映射参数设置,对 应
map
,写入动捕部位对应机器人关节的信息。
mocap_to_robot_command_v2.yml
示例如下:
pub_joint: True
rate: 10
mocap_topic: "/mocap/sensor_data"
joint_target_topic: "/io_teleop/target_joint_from_mocap"
joint_state_topic: "/io_teleop/joint_states"
joints: [
"J_arm_l_01",
"J_arm_l_02",
"J_arm_l_03",
"J_arm_l_04",
"J_arm_l_05",
"J_arm_l_06",
"J_arm_l_07",
"J_arm_r_01",
"J_arm_r_02",
"J_arm_r_03",
"J_arm_r_04",
"J_arm_r_05",
"J_arm_r_06",
"J_arm_r_07",
]
map:
l_arm: [
["X", "J_arm_l_01", -1],
["Y", "J_arm_l_02", 1],
["Z", "J_arm_l_03", -1],
]
l_forearm: [
["X", "J_arm_l_04", 1],
["Y", "", 0],
["Z", "", 0],
]
l_hand: [
["Z", "J_arm_l_05", -1],
["Y", "J_arm_l_06", -1],
["X", "J_arm_l_07", 1],
]
r_arm: [
["X", "J_arm_r_01", 1],
["Y", "J_arm_r_02", -1],
["Z", "J_arm_r_03", -1],
]
r_forearm: [
["X", "J_arm_r_04", 1],
["Y", "", 0],
["Z", "", 0],
]
r_hand: [
["Z", "J_arm_r_05", -1],
["Y", "J_arm_r_06", 1],
["X", "J_arm_r_07", 1],
]
注意事项:
- 文件名
mocap_to_robot_command_v2.yml
,文件中各变量名称(eg.pub_joint
,rate
),以及通信话题内容(eg."/mocap/sensor_data"
)无需改动,改动可能造成控制器无法正常运行。 - ros节点通信频率
rate
按实际通信频率设置。 pub_joint
确定是否开启动捕映射,True为开启,False关闭。- 映射参数
map