FACTR 重力补偿与实时反馈遥操-4.启动FACTR 远程操作程序
子类和 YAML 配置文件准备就绪后,即可启动 FACTR 力反馈遥操作系统。以下步骤概述了启动过程以及启动后的预期结果:
1.手动将引导臂移动到YAML 文件中calibration_joint_pos参数指定的关节配置位置。
这样可以确保与从动臂进行正确的校准。
重要提示:还要将主夹爪的扳机位置调整到与从夹爪的闭合状态相对应。
2.使用自定义启动文件启动 teleop 节点。例如,从以下<repo_root>目录启动:
ros2 launch launch/factr_teleop.py
3.检查 USB 延迟计时器(自动):
ü 如果 USB 延迟计时器未设置为 1,脚本将报错退出,并打印出修复该错误所需的命令:
echo 1 | sudo tee /sys/bus/usb-serial/devices/<ttyUSBx>/latency_timer
例如:
echo 1 | sudo tee /sys/bus/usb-serial/devices/ttyUSB0/latency_timer

ü 该过程在“USB延迟”部分有更详细的解释。
ü 设置正确的延迟后,重新运行启动命令。
4.将引导臂与以下部件匹配initial_match_joint_pos:
脚本运行无误后,按照终端提示将引导臂移动到指定的关节配置位置initial_match_joint_pos。
当位置匹配后,远程操作将自动开始——实现重力补偿、零空间控制和力反馈。
注意:程序结束后,引导臂应自动停止工作并停止供电。但实际情况可能并非总是如此。如果引导臂仍然通电,只需拔下并重新插上引导臂的电源线即可将其完全关闭。
重力补偿演示
我们提供了一个额外的示例,该示例不与跟随者 Franka 机械臂通信或向其发送命令,因此无需额外的用户实现即可轻松启动——只要dynamixel_port在 YAML 文件中正确配置了参数即可。
该演示展示了引导臂的重力补偿和零空间调节功能。
本示例使用的子类FACTRTeleopFrankaGravComp位于:
<repo_root>/src/factr_teleop/factr_teleop/factr_teleop_grav_comp_demo.py

对应的YAML配置文件如下:
<repo_root>/src/factr_teleop/factr_teleop/configs/grav_comp_demo.yaml

要启动演示,请确保主臂移动到如图所示的配置位置,

然后运行:
ros2 launch launch/factr_teleop_grav_comp_demo.py

注意:您可以通过调整 YAML 文件中的gain参数来微调重力补偿gravity_comp。

增加增益会增强重力补偿效果;
降低增益则会减弱效果。