For safety reasons, need to limit the range of joints angular positions q1, q2, q3.
The differential mechanism used for the transmission introduces relations between the motors angular positions m1 and m2. I don't know if it is feasible, but the best would be to verify that
q1 = (1/8)*(m1 + m2);
q2 = (1/8)*(m1-m2);
are in a given range, which is tunable.
Updated by Anthony Mallet over 6 years ago
- Tracker changed from Pull request to Bug
Since this component is meant to be generic, i.e. it does not assume
anything special about the connected system, setting relative
constraints between joint angles seems difficult.
This would require to be able to pass a formal mathematical expression
that could be evaluated dynamically (so that nothing is hardcoded in
the code), which seems a bit overkill for this component.
What you really need in the long term is an "arm" component. I could
start developing this. In this component there would typically be a
kinematic model, joints limits as you want them, etc.
In the dynamixel component, setting static position limits for
individual joints would still makes sense, though. Would this be
helpful for your safety concerns or not at all?