I'm trying to replicate the behaviour of the joint of the iCub robot (http://eris.liralab.it/iCub/dox/html/index.html) in order to simulate it.
The joints of the robot are very rigid and they are controlled specifying the desired final position or directly setting the velocity of the motors.
I tryed... but I'm defenitely not able to implement a very rigid joint using the customjoint api provided by Newton.
My code is browseable at http://eris.liralab.it/italk/dox/html/index.html
In particular, the code for setting the desired position of a joint is at row 289 of
http://eris.liralab.it/italk/dox/html/p ... ource.html
I used a AddAngularRow for rotation the hinge joint to the desired position. But the newton never reach the desired position setted by AddAngularRow because the gravity force act against the movement and the final position is different.
The worst situation is when the arm of the robot is opened, and the gravity force acting on the hand is amplified (due to lever rule) on the shoulder and so, the shoulder start to flex down.
In the real robot the joint are very rigid, and there is no gravity effect on joints movements. So, I need to add rigidity to my custom joints in order to move the joint in the desired position and keep the joint exactly in that position even is the gravity acts against the joint.
I tryed to use the same tricks for blocking the rotational movements with AddLinearRow used on rows 214-219 for implementing the hinge rotation toward the desired position... but I'm not able to do that. (I tryed... but I failed

Anybody can help me to solve this problems ???
Thank you,
Gianluca M.