Skip to content

踩坑GitHub frankaemika/libfranka8 个月前

libfranka自定义运动生成器触发velocity/acceleration_discontin。 ​

本文由 AI 根据公开内容整理,可能有误,请以原文为准:Time-limited motion generator(GitHub frankaemika/libfranka #219)

状态:有绕过办法

问题 ​

在libfranka中使用Python实现五次多项式关节或笛卡尔运动生成器时,若给定时间过短或指令变化过快,即使数学上连续,仍会触发joint_motion_generator_velocity_discontinuity、cartesian_motion_generator_acceleration_discontinuity等异常导致Move命令被反射中止。

环境 ​

Franka Research 3 (FR3),libfranka/pylibfranka,建议系统镜像版本5.9.2及以上。

解决办法 ​

  1. 查阅 include/franka/rate_limiting.h 源码,获取libfranka内部对速度、加速度及jerk的具体限幅参数,确保自定义生成器输出严格满足这些约束。
  2. 核对 Franka Research 3 官方硬件规格文档中的运动极限,保证规划轨迹不超物理边界。
  3. 参考 examples/generate_joint_position_motion_external_control_loop.cpp 中的外部控制循环限速实现,在发送指令前主动应用速率限制。
  4. 适当延长运动执行时间以降低瞬时动态需求,避免触发安全反射。
  5. 升级至最新版 libfranka 库及 5.9.2 系统镜像以获取最新的限值定义与修复。

讨论原作者:@MaximilianHeckl 等,版权归原作者所有。

来源

本页事实对应的公开页面,以原文为准。

  1. GitHub frankaemika/libfranka #219:Time-limited motion generator访问 2026-10-23