外观
踩坑GitHub frankaemika/franka_ros24 个月前
Gazebo仿真中FrankaRobotModel运动学接口不可用
本文由 AI 根据公开内容整理,可能有误,请以原文为准:Franka Kinematics at Controller Level(GitHub frankaemika/franka_ros2 #63)
状态:有绕过办法
问题
在ROS 2控制器开发中,FrankaRobotModel类的正运动学工具函数仅支持真机硬件,无法用于Gazebo仿真环境。仿真中缺少该接口导致无法直接获取用户指定关节位置对应的运动学数据,阻碍了控制器算法的仿真验证与测试。
环境
franka_ros2 (humble分支), Gazebo仿真器, ROS 2 Controllers
解决办法
- 从Gazebo话题获取
joint_states中的关节位置、速度与力矩数据作为计算输入。 - 使用 KDL 或 Pinocchio 库基于上述状态实时计算质量矩阵M、科氏力C及重力项G。
- 同样利用 KDL 或 Pinocchio 计算雅可比矩阵等运动学参数。
- 参考 franka_ros2 humble 分支下
franka_gazebo/franka_ign_ros2_control/src/model_kdl.cpp中的重力项计算实现逻辑。
讨论原作者:@jcarpinelli-bdai 等,版权归原作者所有。
来源
本页事实对应的公开页面,以原文为准。