A place to discuss everything related to Newton Dynamics.
Moderators: Sascha Willems, walaber
by pr0t0z » Wed May 30, 2012 12:16 pm
Hi all,
I'm developing an application to simulate the behaviour of several robotic manipulators using OpenGL for rendering graphics and NewtonGameDynamics as the physics engine. I'm currently debating struggling to implement a velocity controller to each joint.
One of the requirements for the simulated behaviour is that the manipulator should have high precision movements. The client control program sends in regular intervals of 50 ms the new angular velocity to each joint. I'm controlling the joint acceleration by accessing the "m_accel" in NewtonHingeSliderUpdateDesc.
The output acceleration of each joint, is not equal to the input acceleration, so the system doesn't reach the desired velocity, and as a consequence the spatial precision is terrible. As a matter of fact, the output acceleration is lower and noisier.
I suppose that newton simulates some friction to counteract the imposed velocity. So i'm currently trying to understand the physics meaning of the m_minFriction and m_maxFriction in the NewtonHingeSliderUpdateDesc object. And also the physical meaning of the Stiffness of each joint, which can be set by NewtonJointSetStifness. Understanding the theoretical meaning would help me devise a control strategy to get the joint to behave as i need.
Can someone help me on this one?
Thanks in advance
Carlos Faria (pretty much a newbie in NGD)
-
pr0t0z
-
- Posts: 15
- Joined: Wed May 30, 2012 11:57 am
by Julio Jerez » Wed May 30, 2012 1:40 pm
you need to use the joints from the joint library class, in the newtonTools folder.
also the out acceleration of joint may not be equal to the desired imput if there are other forces acting on the set, then the output will the acceleration that minize the error on all joints. the equeation the solver satify is this
fex0 + f1(c1) + f1(c2) + .... = m1 * A1
fex2 + f1(c1) + f2(c2) + .... = m2 * A1
...
..
subject to the constyratins
F0minfrict < f1(c1) < F1minfrict
F0minfrict < f1(c1) < F1minfrict
and Fc1 * a1 = 0
and Fc2 * a2 = 0
these is a set of equation an dteh fx, are contatring force that are spefioced accidin teh teh geonmetry of teh contrating.
is solve using a linear search convex quadratic optimization.
It is not alway teh case that all contraint can be satified eactly fo rmany reasons.
oen is numeracal condition numeb of teh system matrix, the other is Joint that impose big stiffenes in the system.
when a friction limit violated tha mean the accelertion will be different, but this is normal.
-
Julio Jerez
- Moderator

-
- Posts: 12426
- Joined: Sun Sep 14, 2003 2:18 pm
- Location: Los Angeles
-
Return to General Discussion
Who is online
Users browsing this forum: No registered users and 1 guest