使用vrep/CoppeliaSim仿真多了,经常对同一个场景中的模型关节的设置进行改动。忘了之前改动的东西,导致关节运动冲突,容易造成仿真时机械抖动乱动。用oed引擎仿真时机械臂还会直接散架飞走。这其中主要的原因就是关节参数设置不协调。本文总结关节设置的正确状态。
目录
转动关节
位置控制
如需对转动关节转动角度进行位置控制需要如下设置。
1:设置转动关节可以360°旋转。也可以去掉对勾,根据需要设置pos.min(最小位置),和pos.rang(位置可变范围)
2:设置关节模式为“扭矩/力”驱动。
3:设置最大驱动扭矩值。
4:设置速度限制和目标位置。注意:目标位置(Targetposition)一般设置为0,否则用代码控制时,程序没有开始控制这个关节时,它就会根据设置的值转动。这也是一个容易忽略的点。
5:PID控制,不需要的话要还原成默认设置
速度控制
速度控制时,与位置控制不同的只有如下设置。
1:目标速度,还是要设置为0,否则用代码控制时,程序没有开始控制这个关节时,它就会根据设置的值转动。
2:关掉闭环控制:关掉闭环控制,才可以控制目标速度。
逆运动仿真
逆运动仿真除了要添加IK,关节也要设置成IK模式
设置成Hybrid IK mode其他设置和之前一样。
移动关节
位置控制
1:移动关节必须设置关节活动最小值和关节范围,否则不会动,或引起冲击。
2:设置关节模式为“扭矩/力”驱动。
3:设置最大驱动力值。
4:设置速度限制和目标位置。注意:目标位置(Targetposition)一般设置为0,否则用代码控制时,程序没有开始控制这个关节时,它就会根据设置的值移动。
5:PID控制,不需要的话要还原成默认设置
速度控制
依然是
1: 目标速度设置为0
2:关掉闭环控制
逆运动仿真
关节也要设置成IK模式
设置成Hybrid IK mode其他设置和之前一样。
补充
如果有从动的关节要把从动关节的Control loop enabled的勾去掉,否则会系统会抖动
总结
不能用速度控制代码控制关节位置,反之亦然。不同的控制方案,要设置成对应关节设置。