How to "not control" a joint/coordinate
Posted: Tue May 03, 2022 8:16 am
Hello all,
I created a simple example modelled after the ControllerExample from OpenSim.
Basically I added an extra joint that is not to be controlled, so it can move freely as allowed by physics,
but I can't get it to work.
The system consists of a pendulum hanging from a ceiling. But between the ceiling and the pendulum itself there is a sliderjoint. The green body is sitting between the sliderjoint and the pinjoint of the pendulum.
The idea is that when the pendulum is swinging that the entire pendulum will also be moving via the slider.
This works perfectly when, in the gui, I set the pendulum out of balance and do a Forward Dynamics simulation.
But when creating the motion via the ControllerPendulum.cpp program the slider does not move at all!
It seems that somehow the extra joint/coordinate (carJoint/carpos) also has a prescribed position and speed, both
being zero initially.
But I don't want that, this joint should not be controlled. It does not have a controller.
It should behave just like in a forward dynamics simulation.
Can this "controlling" be turned off for coordinates that have no controller?
Or is this a limitation of OpenSim?
Thanks in advance,
Sietse Achterop
I created a simple example modelled after the ControllerExample from OpenSim.
Basically I added an extra joint that is not to be controlled, so it can move freely as allowed by physics,
but I can't get it to work.
The system consists of a pendulum hanging from a ceiling. But between the ceiling and the pendulum itself there is a sliderjoint. The green body is sitting between the sliderjoint and the pinjoint of the pendulum.
The idea is that when the pendulum is swinging that the entire pendulum will also be moving via the slider.
This works perfectly when, in the gui, I set the pendulum out of balance and do a Forward Dynamics simulation.
But when creating the motion via the ControllerPendulum.cpp program the slider does not move at all!
It seems that somehow the extra joint/coordinate (carJoint/carpos) also has a prescribed position and speed, both
being zero initially.
But I don't want that, this joint should not be controlled. It does not have a controller.
It should behave just like in a forward dynamics simulation.
Can this "controlling" be turned off for coordinates that have no controller?
Or is this a limitation of OpenSim?
Thanks in advance,
Sietse Achterop