如何解决Kuka Simulation中的转矩控制“爆炸”
我一直在使用kuka iiwa,并且尝试使用drake设置模拟。我使用的是Drake中提供的示例“ kuka_iiwa_arm”,并启动了带有ukaus_control标志为“ true”的kuka_simulation文件,以便能够进行扭矩控制。我还修改了文件“ kuka_plan_runner.cc”以发送iiwa_command,方法是复制机器人的当前位置并将相应的扭矩命令添加为:
for (int joint = 0; joint < kNumJoints; joint++) {
iiwa_command.joint_position[joint] = iiwa_status_.joint_position_measured[joint];
iiwa_command.joint_torque[joint] = 0;
}
我开始发送零扭矩,几秒钟后,我向一个关节发送了一个小扭矩。这样做时,经过8到10个仿真步骤,该控制器已失控,并发送了很高的输出(1.10 ^ 20),并且仿真崩溃。
我查看了用于计算扭矩的KukaTorqueController类,当我禁用了阻尼项时,模拟效果很好,但是并不理想,因为当您停止发送扭矩命令时,手臂会继续漂移,因为不是阻尼项。有没有办法解决此问题或检查是什么使控制器中的阻尼项失效?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。