jitter in joints

A place to discuss everything related to Newton Dynamics.

Moderators: Sascha Willems, walaber

Re: jitter in joints

Postby blackbird_dream » Mon Nov 05, 2018 10:38 am

teh problem is that contacts can't be factored in a way the can be solve fast, so I have to be selective as to what contact can be made part of the contraction.

I understand it's what I expressed when I talked about a conflict between friction and force control in the joints
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby Julio Jerez » Mon Nov 05, 2018 4:25 pm

Ok, I did some more testing and bad knew is that what I thought was the problem it isn't.

The good knew is that there most be a real bug that some how is masked but some other set up.
In a way I prefer this because the other alternative of options I do no really like.

I am now start to simply the test until I get a minimal set up that is easing to debug.
I remove the tires, and increase the mass of the load to 1500 kq, while the parts are from 30 to 50.
and the pallets are 10kg, so this is quite, is quite unrealistic but that's not the reason that behaves the way it does, there must be some other bug.

I see a big explosion the movement the pallet touches the load, I see what else I can remove and see if still reproduce the bug.
if you sync you can see what I got so far.
anyway, I am curios to see what is so dramatic so I will continues tonight.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 12:51 am

ok I think have the fixed now. As I suspected it was actually a logic bug caused by the skeleton logic that was right before but broke at some point.
I also realize there is another bug there with friction but that is not really an issue for you, and I will fix it something after I complete the vehicle

anyway I try to set the mass tha you gave me, but I am confused as to hwo much your fork lift weight your masses all seem to be low, these are the masses you gave me, and I assume they are kg.

M=203
M=177.75
M=101.21
M=58
M=46.6
M=46.6


my demo I have to set the body to 2500, in order to lifg a 1500 kg
this is because teh weigh on teh pallet act as a level.

these are my masses why I belei are more extrem that your case

2500.0f body
50.0f parts
50.0f
50.0f
50.0f
50.0f
40.0f
30.0f
20.0f
10.0f
10.0f

the 10 are the palletes which are lifting a 1500 weight, and is seem quite solid to me.
please try it out before you sync and tell me if this is ok. This will rule out any bug on teh joints or the unity plug in.

I actually try for a few minute and it seem rock solid to me, I see zero jitter and the masses are quite extreme, and not even realistic in my case, because ios no true teh the palleted of a fork lifg will weight 10 kg, in facr heavy equipment is quiet hevier that the load they are design to handle, but to me this is fine.

anyway please chek it out and let me know.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby blackbird_dream » Tue Nov 06, 2018 7:00 am

The case study includes the mast only, no chassis, no wheels.
The mast is connected to the ground with the top joint (in the kinematic hierarchy) i.e. the hinge joint (d.o.f.1) according to the diagram:
Image
I ran the test with the new build. It's much better.
It's still jittering but gets stabilized after a while. Here 2 videos with 2 weights :

1205 kg https://youtu.be/TRYCVeqb1_I
2000 kg https://youtu.be/lA53LLoUa6I
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 8:29 am

I thought I saw a video of the whole thing moving like a vehicle?
In. a previous post you mentioned and expantion joint, and you add that is does jitter without it, what is an expantion joint?
is that what moves the tooth horizontally?

the jitter when you start to move, I think I know what it is,
it is the other bug I said I found, it is because when I added the option to deal with contact to the joint solver, I did not added the capability to calculate coulomb friction, instead I added a hack that uses the normal force calculated in previous frame as the normal for the calculatation the friction limits.

this work well when dealing with similar masses ratios, but breaks down in cases like yours.

in 1.52 this was called adaptive friction, but I decided to remove it because iterative solver can calculate the friction normal per iteration, so that option was not longer needed.
them when adding the joint solver since joints do not need coulomb friction, the option was not needed it still, but now we come full circle, the joint solver now deal with contacts, but only uses the adaptive friction trick which generate that jitter when the forces are changing drastically.

the problem with the coulomb friction trick, is the is add a transients behavior when the force in one frame is very different than the calculated normal force for the current frame.
the most extreme example is imagine a ball hitting the ground, at the mover of contact the normal force has not been calculated yet, therefore the friction is zero, then in next frame it use the normal force to calculate the friction, but since the ball is bouncing off the ground, the normal force is zero, and friction should be zero, but is not,
so what we get is a delay in the friction force which the to stabilize in most cases, but your case it last a long time because the problem persist.

I copy the solver that deal with this cases in the joint solver, but is not fully completed yet, I will do so this weekend.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby blackbird_dream » Tue Nov 06, 2018 9:14 am

no all the videos in this post are made with a mast clamped to the ground.
In the other posts The mast was modeled with the whole vehicle, not here.
What I called expansion joint is the degree of freedom n°4 in my first sketch. It's the translation of the fork arms. I googled it and the right term seems to be :
Fork positioner - is a hydraulic attachment that moves the tines (forks) together or apart. This removes the need for the operator to manually adjust the tines for different sized loads.


is that what moves the tooth horizontally?
Yes or No. Not the tooth but the tines. If you call the tooth both the tines they can be translated horizontally by dof 3.

If you believe you can fix the issue caused by the adapative friction model, that would be excellent even a progress compared to v1.5.3
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 10:35 am

oh I see, I think we are talking about the same thing

I will make the change no mater wat, what of the thing that the fail miserable as well is stuff like
vehicles, tire force are very similar to what you have and even more extreme at high speed and is one of teh thing that make vehicle hard to do with rigid body solvers.

I'd like recreate before make I made the change, so in the sandbox I just set the mass of the vehicle chassis to zero and I also set the weight to 3500 kg, this, I think is analogous to your test,
but my test still seems quite stable, I have to struggle waking it up because it goes to sleep right away since the wake up code only active the vehicle body.

anyway what is wrong is wrong and if I can get it better I will.
I will work slowly doring the week on that solver, and I will try to get it working by the weekend.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby blackbird_dream » Tue Nov 06, 2018 10:54 am

the issue is now on the road/wheel interaction.
It seems better control of the joint is at the cost of stronger impulses:

previous build newton-dynamics-1b2d94f659e0610101084b55d567338590cc297f:
https://youtu.be/TX68qHOvU_U
newton-dynamics-047ce489ec301a0c03d769a5b407a9a36185ed4e:
https://youtu.be/A9ibg4Af1Kw

more precisely something changed and goes wrong in the steering joint
Last edited by blackbird_dream on Tue Nov 06, 2018 11:04 am, edited 3 times in total.
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 10:57 am

OK I set up teh sand box demo like yours, but I do not see as much jitter as you are seeing,
I even set the load to 4000kg, and still seem stable.

the load weight is set here
static void MakeHeavyLoad (DemoEntityManager* const scene, const dMatrix& location)
{
dFloat mass = 4000.0f;

can you sync and run the sandbox, and tell me if this is what you expects
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 11:00 am

But that can't be, the change I made could cause that problem, if anything it soudl be the other way around.

when I play the full vehicle I do not see anythong like that. There must be some other problem some where.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby blackbird_dream » Tue Nov 06, 2018 11:14 am

I ran the demo in the sandbox. This is not exactly the same test.
In Unity the joint controls are done with the target position being updated realtime.
it is smooth. Here the lift slider control works by steps. difficult to control with precision. But no jitter. the load makes the FLT tip forward
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby blackbird_dream » Tue Nov 06, 2018 11:24 am

the test of the single mast is here
https://we.tl/t-xU4Muwgw9F
Maybe you or Sweenie have 5 minutes to test it.

Maybe it's the actuation of the joint in the Unity model which causes troubles ?
Last edited by blackbird_dream on Tue Nov 06, 2018 11:31 am, edited 1 time in total.
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 11:30 am

I am confuse, target works step by step? all it does is that I set the target position with a slider.
how do you do it differently?
and what does is mean the FLT tilt forward?
anyway, since is worse let us disable the change until the coulomb friction is fixed.

I remember you once mentioned that the tires are not rigid bodies or that they do not collide with the ground, instead you apply the force directly.
can you tell me how the tire collision with the ground happens?

I committed the fix disabled until I get the solver going, sync and let us see if it is how it was before the fix.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: jitter in joints

Postby blackbird_dream » Tue Nov 06, 2018 11:39 am

In fact it's due to the speed of the joint actuator. It takes a while to reach the desired position.
In my test the position is updated by small steps so it looks smoother.
I meant the load is so high it makes the truck tilt frontward.
let me upload a video.
here it is:
https://youtu.be/oPCfvZYMY0Y
about the wheels they are newtonbody for which I compute the torsor realtime. The rear wheels are newton body steered through a vertical hingejoint actuator. They are the source of troubles. The steering seems now to generate high forces
User avatar
blackbird_dream
 
Posts: 279
Joined: Wed Jun 07, 2006 3:08 pm
Location: Italy

Re: jitter in joints

Postby Julio Jerez » Tue Nov 06, 2018 11:59 am

ah, yes that's what I was saying before, a fork lift because how it is arragend can't lift something that is heavier than it own weight,
for that I change the mass of the body at the begging.
when I made about 2000kg, (I suppose light for the real thing)
the it cal lift about 2000 kg.

but anyway, I the thing is that regardless what it does,
you simulation got worse, with the right fix.
that unsettling.
I will try to get the final part of the fix in sometime today and tommorw then we check again, and we move to see the unity project.
Julio Jerez
Moderator
Moderator
 
Posts: 11045
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

PreviousNext

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest