Motion Constraint Loop - Is this possible?

Motion Constraint Loop - Is this possible?

Anonymous
Not applicable
3,165 Views
45 Replies
Message 1 of 46

Motion Constraint Loop - Is this possible?

Anonymous
Not applicable

I noticed in my assemblies that the movements locked as soon as I closed a loop of rotational movement constraints, so, as I'm beginning, the doubts came to me:

 

Am I doing something wrong?
Am I doing something illogical?
Am I breaking some basic mechanics concept?
Is it a bug?

 

I have attached a simplified model (Acknowledgments and Credits to @EdilsonMJr) that isolates and illustrates the issue:

Motion Constraint Loop simplified modelMotion Constraint Loop simplified model
With the rotation constraint "Rotação:2" (shown in the pic) suppressed (Loop open), we have movements (by mouse or driving "Ânglulo:5"), with "Rotação:2" enabled (Loop closed) movements lock, intuitively "Rotação:2" should be enabled,  and exactly the lack of this produces wrong movements in my assemblies.

 

 

Could someone give a good technical explanation and clarify what is happening?

Every help is welcome!

 

Regards
GTI

0 Likes
Accepted solutions (3)
3,166 Views
45 Replies
Replies (45)
Message 21 of 46

Anonymous
Not applicable

Hi teacher @TheCADWhisperer,

 

Congratulations, I saw the screencast of your students, very well done.

 

I also saw the Dynamic Simulation of "Teste Contato Dynamic Simulation.zip", it works like a charm. This was my first DS Play that worked!

 

Now I have a good material to study, my goal is to do this DS that you did with the "Teste Contato.zip", but I'm facing some problems. I'm still very unsure, I do not know if the problem is in Inventor, in the PC or in me I would be very grateful if you could help me with the following items:

 

1 - The editing the type of joints in the "Teste Contato Dynamic Simulation.zip" is disabled for me.

Editing the type of joints is disabledEditing the type of joints is disabled

2 -  When I try to do DS in "Teste Contato.zip" the "Convert Restrictions" button is not enabled. I saw this enabled in tutorials.

3 - In the "Insert Joint" I do not have the "Revolution" joint to choose. I've seen other options in tutorials, would it be the Inventor version?

Available JointsAvailable Joints

Do you know what's going on in these items above?

 

Regards

GTI

0 Likes
Message 22 of 46

Anonymous
Not applicable

Hi teacher @TheCADWhisperer,

 

Thank you so much for everything.

 

Well, I found, here is the solution to items 1, 2, 3!

Items 1, 2, 3 solution.Items 1, 2, 3 solution.

Please, could you tell me why the selected parts (Blue) did not appear in the DS of the KY-TestLoop-3 attachment in previous comments?

Missing Parts.Missing Parts.

Regards

GTI

 

0 Likes
Message 23 of 46

TheCADWhisperer
Consultant
Consultant

I see that you made a lot of progress with Dynamic Simulation while I was sleeping - but you did not attach your latest example?

Message 24 of 46

TheCADWhisperer
Consultant
Consultant
Accepted solution

There are two assemblies to examine in the attached folder.

I edited the gears to remove interference.

Note that the Rolling Cone on Cone example solves much faster than the 3D Contact example. 

Rolling Cone on Cone is the theoretical perfect geometry solution.

 

(It took 3 minutes for my machine to calculate 1 second of motion for the 3D Contact example).

Once the contact is solved - you can click Replay and it will play back at faster speed.

I did not adjust Friction or other parameters.

 

You should set Test Loop - Bevel Gears.ipj as your active Project before opening the assemblies.

Message 25 of 46

Anonymous
Not applicable

Hi teacher @TheCADWhisperer,

 

Thank you.

 


@TheCADWhispererescreveu:

I see that you made a lot of progress with Dynamic Simulation while I was sleeping - but you did not attach your latest example?


Not so much, the image you saw in the previous comment (Items 1, 2, 3 solution) is from your "Teste Contato Dynamic Simulation.zip" assembly, I'm still doing the "Teste Contato.zip" DS joints.  I need more time.

 

PS:

I saw your post with TesteLoop.zip 1661 KB attached, I have not yet examined. I need more time.

On the "Missing Parts" image, I forgot to eliminate the interferences of the gears, maybe this is the problem.

 

Regards

0 Likes
Message 26 of 46

Anonymous
Not applicable

Hi teacher @TheCADWhisperer,

 

Thank you so much!

 

You served me the fried fish and I had to learn how to fry, mine was very similar to yours!

Now, yes, proudly, here is attached my first DS "My Fisrt Teste Contato DS.zip".

 

I've tried, but I could not convert constrictions, I had to do one-on-one joints in DS.

 

TheCADWhisperer Teste Contato DS.TheCADWhisperer Teste Contato DS.

My Teste Contato DS.My Teste Contato DS.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Why is it different? How could you do that?

 

 

Regards

 

0 Likes
Message 27 of 46

jan_priban
Alumni
Alumni
Accepted solution

Hi,

 

Constrains loop leads to over-constrained assembly.  Let one relation unconstrained (= instead of closed loop let it open chain) I would suggest staying on two bevel gears and only add rotation constrain between them - simple way is 1:1 between small satellites.  So one input generates two outputs, while one of these outputs is input for another gear. Video attached.

 

Regards

 

Jan Priban, Inventor team

Message 28 of 46

jan_priban
Alumni
Alumni

In Dynamic simulation then it works as well - video attached

 

Jan Priban, Inventor team

Message 29 of 46

TheCADWhisperer
Consultant
Consultant

In Post #26 - did you label those images backwards?

 

I do not use Assembly Joints - I only use the classic Assembly Constraints that I know will predictably convert to desired Dynamic Simulation Joints.

 

Autodesk really dropped the ball on Assembly Joints.

0 Likes
Message 30 of 46

Anonymous
Not applicable

Hi teacher @TheCADWhisperer,

 

Thank you so much!

 


@TheCADWhispererescreveu:

In Post #26 - did you label those images backwards?

No, I'm sure. In Post 26 the labels of the images are correct.

When I open your attachment "Teste Contato Dynamic Simulation.zip ‏607 KB" from post 18, what is in the image "TheCADWhisperer Teste Contato DS." of post 26 is what I see.

 

Take a look at "Teste Contato Dynamic Simulation.zip ‏607 KB" from post 18 and see if it's different.

 


@TheCADWhispererescreveu:

I do not use Assembly Joints - I only use the classic Assembly Constraints that I know will predictably convert to desired Dynamic Simulation Joints.

 

Autodesk really dropped the ball on Assembly Joints.


Good information you've given me, I've seen others act like you and I did not know why.

 

We can read this:

"When entering Dynamic Simulation, components that have mate constraints receive these joints automatically."

 

Here:

https://knowledge.autodesk.com/support/inventor-products/getting-started/caas/CloudHelp/cloudhelp/20...

 

From what I understand in the tutorial above, DS does not convert Assembly Joints, only Assembly Mates Constraints and "Rotativa:1 ,2, 3" are Assembly Joints. That's why I have the doubt.

 

Something strange happened with image "TheCADWhisperer Teste Contato DS." of post 26.

 

PS:

I upgrade my Windows to 1803 and it did not accept my password, I lost hours hacking my PC (It's customized, overlocked, casemodded, etc.) and I'm still fixing things and wasting time. Patience Smiley Frustrated

 

Regards

0 Likes
Message 31 of 46

Anonymous
Not applicable

@jan_priban,

 

Thank you so much for your reply!

 

You understood and went straight to the point, lacked a direct answer as a yes/no.


@jan_pribanescreveu:

Constrains loop leads to over-constrained assembly.  Let one relation unconstrained (= instead of closed loop let it open chain) ...


Well, subtly, you said that Inventor DOES NOT accept closed kinematic chains, just in line, only open.

 

Assuming one over-constraint locks the system, now we discuss "WHY."

 

Here: https://knowledge.autodesk.com/support/inventor-products/getting-started/caas/CloudHelp/cloudhelp/20... reads as follows:

 

"With either Dynamic Simulation or the assembly environment, the intent is to build a functional mechanism. Dynamic Simulation adds to that functional mechanism the dynamic, real-world influences of various kinds of loads to create a true kinematic chain."

 

A true kinematic chain in the real-world can be closed/looped and are very real, common, and important.
A true kinematic chain in the real-world can be closed/looped and does not produce over-constrained assembly.

 

So, inside Inventor, we CAN NOT have a functional mechanism, for example, a cardan shaft backup in a car.

 


@jan_pribanescreveu:

I would suggest staying on two bevel gears and only add rotation constrain between them - simple way is 1:1 between small satellites.


Subliminally @kelly.young already made this suggestion within the "KY-TesteLoop.zip 2788 KB" model in post 7, did not verbally suggest/explained like you.

 


@jan_pribanescreveu:

So one input generates two outputs, while one of these outputs is input for another gear. Video attached.

Very good, very well explained. I understood what you said, if you look, it's the same as what happens in the DS of "My Fisrt Teste Contato DS.zip" of post 26 with entry into the central gear: "one input generates two outputs". That's what you can do inside Inventor today.

 

The more we exercise the clearer the question becomes. Here's what I see in your GearBox assembly:

 

If one constraint is made between the satellites (Small) or between the Crowns (Large) the kinetic chain will be a S, open.
If one constraint is made between a satellite (Small) and a Crown (Large) the kinetic chain will be a C, open.
If the input is in the middle of the chain we will have two outputs.
If the input is at the ends, we will have one outputs.

 

If no one is blunt in your response, I'll issue a conclusion and give this as a solution to this thread.
This is my humble point of view, if I'm mistaken, correct me please.

 

Regards

0 Likes
Message 32 of 46

TheCADWhisperer
Consultant
Consultant

@Anonymouswrote: 

1. A true kinematic chain in the real-world can be closed/looped and are very real, common, and important.

 

2. So, inside Inventor, we CAN NOT have a functional mechanism, for example, a cardan shaft backup in a car.


1. The example I posted with four 3D contacts in a closed loop kinematic chain. 

2. I would start a new thread with new problem statement.

Message 33 of 46

Anonymous
Not applicable

Hi teacher @TheCADWhisperer,

 

Thank you so much!

 

@TheCADWhispererescreveu:
1. The example I posted with four 3D contacts in a closed loop kinematic chain.

Right! This in the DS. I'm very happy that it's possible. Smiley Very Happy

Does 3D Contact (Contact Solver) works in the Assembly?

 

Sorry, I have not even had time to open the attachment "TesteLoop.zip 1661 KB" from your post 24. I'm having some problems here. I'll check at the earliest opportunity.

 

Regards

0 Likes
Message 34 of 46

jan_priban
Alumni
Alumni

Hello,

 

Loop situation is similar to the triangle. If you define all tree angles, triangle will became over-constrained. Last angle is given (180 - Alpha - Beta), no need to define it. I can imagine: if I define Alpha = 60 deg, Beta = 60 deg then I can "define" Gama = 60, but it is luck situation (luck means solver could recognize this case have solution), but in general, I mostly could define Gama <> (not equal) 60 deg and this case does not have solution. So my understanding is: solver is general and lucky cases are not exceptions. Let me find more info, I will be back here.

 

Regards

 

Jan Priban

 

Message 35 of 46

Anonymous
Not applicable

(In response to post 24)

 

Hi teacher @TheCADWhisperer,

 

Thank you.

 


@TheCADWhispererescreveu:

There are two assemblies to examine in the attached folder.

I edited the gears to remove interference.

I examined it.

It's good to appreciate the work of who knows what it does even though I'm not prepared to absorb it completely now.

 

The bevel gears were beautiful. The assembly also looked beautiful, very well done. Elegant techniques. For me it was a perfection that gives pleasure to admire.

 


@TheCADWhispererescreveu:

Note that the Rolling Cone on Cone example solves much faster than the 3D Contact example. 

Rolling Cone on Cone is the theoretical perfect geometry solution.

Yes, but with Rolling Cone on Cone (RCC) we have an open chain. I have a more complex assembly that so far requires a closed chain, I have to test RCC in this assembly to see if RCC will produce flaws.

 


@TheCADWhispererescreveu:

(It took 3 minutes for my machine to calculate 1 second of motion for the 3D Contact example).

It seems my time was shorter in a VM with half of my processing (4 cores and little memory):

3D Contact  Calculate Time3D Contact Calculate Time

If I understood correctly, your message (post 24) partially answers/solves this thread. Congratulations and thank you! Smiley Very Happy Smiley Very Happy Smiley Very Happy

 

You have demonstrated that a closed kinematic chain (a loop) is possible in the Dynamic Simulation environment using 3D Contact joints and that it is not possible using RCC joints, Right?

 

It remains to clarify/answer if it is possible a closed kinematic chain (a loop) in the Assembly environment with Contact Solver or any other, and why.


If I understood correctly, @jan_priban said that this is not possible and this to bring the mathematical justifications, let's wait a little bit more.

 

Regards

0 Likes
Message 36 of 46

Anonymous
Not applicable

Hi @jan_priban,

 

Thank you so much!

 

Your explanations fascinate me.

I like you since the first time because we speak the same language, the language of the universe, the mathematics.

 

We speak of angles:

360°/1   = 3 + 6 + 0 = 9
360°/2   = 1 + 8 + 0 = 9
360°/4   = 0 + 9 + 0 = 9
360°/8   = 0 + 4 + 5 = 9
360°/16  = 2 + 2 + 5 = 9
.
.
.
360°/2^y = a + b + c = 9 (2^y is digital) ?!?

 


@jan_pribanescreveu:

Loop situation is similar to the triangle.

I understood your analogy, this gives me an idea of how you treat the question, but it does not seem correct to me.
I had already imagined that the problem would be this.

 

The math of the triangle is perfect. Gama = 180 - Alpha - Beta
Okay. We can define Alpha and Beta and we'll have the Gama result.
If I understood correctly, we can say that here, our solver is: Gama = 180 - Alpha - Beta and that the angle would be the relation between the gears.

 


@jan_pribanescreveu:

If you define all tree angles, triangle will became over-constrained.


For me this happens because the treatment of the problem is wrong because after I defined the second angle the solver would define the third, then when I defined the "third", there would be four angles in a triangle. Yes, so this is over-constrained.

 

For me this is correct:
Gama is imposed by the mathematical expression (solver), but it exists and has to be present in the equation, it can't be hidden just because it is the result of the others, it has to be exposed, if we want to change it, it has to be visible and the others must be adjusted to maintain the mathematical expression true.

 

If I try to set Alpha, Beta and Gama the solver understands that I want a triangle [a closed true kinematic chain (loop)] and propose the solution and avoids the over-constrained and expoe Alpha, Beta and Gama.

 

If I can see Alpha, Beta and Gama, I can set Alpha, Beta and Gama, like so:
If I define Alpha and Beta the solver sets Gama
If I define Beta and Gama the solver sets Alpha
If I define Gama and Alpha the solver sets Beta

 

If I try to define an Alpha2 or Beta2 or Gama2, the solver would report that this will over-constrained.

 

So I can set the three angles and would never be over-constrained.

 

Is lacking Intelligence for the solver.

 

Regards

0 Likes
Message 37 of 46

Anonymous
Not applicable

Hi @jan_priban,

 

@jan_pribanescreveu:

Let me find more info, I will be back here.


You left expectations, I would very much like to understand why I can not declare an obvious information in Inventor as a Motion Constraint Loop.

 

Do you still want to bring some information here or have you abandoned this thread and I will have to live with this doubt?

 

Regards

0 Likes
Message 38 of 46

jan_priban
Alumni
Alumni

Hi,

Sorry for delay, I was visiting customer when I got confirmation that this is over-constrained assembly. Let's imagine similar situation. Two vertical lines are moving right. Each vertical line is constrained to its horizontal line. So each line has 1 degree of freedom (DOF) - still vertical and aligned to horizontal line can move/slide just right and they can't interact/penetrate each other. They can be considered as two separated mechanisms. Let focus on one "mechanism" (one vertical line). It has 1 degree of freedom, means one parameter can be defined - position/distance in horizontal direction (let say X - coordinate). So position is given by one equation, like x = 20 mm.

When I add second equation (x2 = f(x1)) then I am getting more equations than variables. For velocity/rotation_speed the idea is same, since v = dx/dt

(triangle is the loop and can't rotate even in reality - opposite direction between first and last gear)

 

Regards

 

Jan Priban

 

OverConstrained.jpg

Loop3.jpg

kelly.young has embedded your images for clarity.

Message 39 of 46

jan_priban
Alumni
Alumni

Still thinking about about my post I wanted to re-write it while time frame for edit expires. This answer is not the best

 

Jan Priban

Message 40 of 46

jan_priban
Alumni
Alumni

To simplify explanation I transfered moving gear toots to moving lines. Then I used sketch as example. Both vertical lines represent gear toots. Created dimensions (from zero/center) for both lines - defining toots movement/position. Sketch also gets over-constrained when added dimension between vertical lines. - OverConstrainedSketch.png 

 

Jan Priban

OverConstrainedSketch.png