-
Notifications
You must be signed in to change notification settings - Fork 142
Description
I believe there is a problem with how angle limits are calculated when a motor is in indirect orientation. Here is a sample config
"base_arm":{
"id":2,
"orientation":"indirect",
"type":"MX-64",
"angle_limit":[-180, 180],
"offset":-50.0
},As long is my angle limits are relaxed (here, -180 to 180), everything is fine. Now, if I move the arm in compliant mode, I find my angle limits are [40, 100]. Now, if I modify my config and add those values as angle limits and turn the motors on, my base_arm joint finds itself completely outside of the angle limits and bends over to try to get back within the limits.
When checking base_arm.angle_limit, the values seems off: [10, -50]. I guess it is [-min-offset, -max-offset], but it doesn't look right. Sorry for not being more precise, I'm rather new to pypot and dynamixels, not sure if direct/indirect is pypot or dynamixel specific.