cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Learn all about the Community Ranking System, a fun gamification element of the PTC Community. X

Using solve block to solve 4 bar linkage FBD / Geometry

ptc-4748382
1-Newbie

Using solve block to solve 4 bar linkage FBD / Geometry

I'm trying to solve a system of equations for a 4 bar linkage for all the geometry and the forces. For some reason the comparitor functions are not actually constraining the system as they should. For example all angles inside a triangle should add to 180deg (pi). ProE does this. MathCad solve block allows this is float slightly off (therefore giving incorrect geometry).

I modeled it in ProE and locked down the geometry I wanted fixed. The main input is 1 of the angles and everything else should be solveable from that.

I've attached 2 MathCad files. 1 for the geometry (using law of cosines and basic trig). Another for the FBD using primarily law of cosines. And a 3rd trying to solve the geometry using only angles and basic trig.

I also attached the FBD sketched out...

Anyone have any advice (specifically on how to "lock down" constraints, if possible)?

Thanks,

Pete

1 ACCEPTED SOLUTION

Accepted Solutions

Pete Johnson wrote:

I decided to put in the entire FBD and see if it could solve it (20 unknowns).

It worked and gives result similar to what we've measured in an actual machine.

Very good, but note that you have used 24 equations to solve for 20 unknowns. You can safely remove, say, the last two equations for theta12 and theta14, and the last two with theta 23 on the LHS (all in the 4 bar linkage section) and still get the same result.

Alan

View solution in original post

12 REPLIES 12

Anyone have any advice (specifically on how to "lock down" constraints, if possible)?

Thanks,

Pete

Assign the angles to the solution vector! See attached.

Alan

Thanks Alan.

I'm still struggling with CTL_4_bar_FBD_solve6.mcdx

c+f should always equal 1019.6 but the solver allows it to change from it's constrained number.

likewise with a+d which I want to "lock down" at 800.24.

Maybe I should stop bothering to find the lengths of the triangles using law of cosines and just use the method I have in CTL_4_bar_dims_angles2.mcdx which you helped me with?

Thanks again!

Pete

Pete Johnson wrote:

Thanks Alan.

I'm still struggling with CTL_4_bar_FBD_solve6.mcdx

c+f should always equal 1019.6 but the solver allows it to change from it's constrained number.

likewise with a+d which I want to "lock down" at 800.24.

Pete

I don't know quite what's happening, but when I recalculate your sheet I get exactly the values you expect! See attached (All I've done in the attached is to use 'separate regions' to see things more clearly, and then recalculated!

Alan

I found an error in my FBD. I forgot to include Fcg in the sum of the y forces on Link 3!! Whoops! Big mistake.

I decided to put in the entire FBD and see if it could solve it (20 unknowns).

It worked and gives result similar to what we've measured in an actual machine.

Pete Johnson wrote:

I decided to put in the entire FBD and see if it could solve it (20 unknowns).

It worked and gives result similar to what we've measured in an actual machine.

Very good, but note that you have used 24 equations to solve for 20 unknowns. You can safely remove, say, the last two equations for theta12 and theta14, and the last two with theta 23 on the LHS (all in the 4 bar linkage section) and still get the same result.

Alan

Do you (or anyone else) know why some of the forces in the resultant matrix are in parentheses? And what that means?

I hope this Group about bar linkage

http://communities.ptc.com/groups/kinematic-models-in-mathcad

wil be interesting and usefuul to you.

Valery (or anyone else),

I would like to solve the FBD system of equations iteratively, changing some of the input constants (Fcg) over a range and plot the results.

I tried creating a For loop and mathcad doesn't allow a solve block inside a program.

I also tried simply making the input constant a range variable, i.e. Fcg:=10000..15000

Can someone point me in the right direction as to how to do this?

Thanks, Pete

Pete Johnson wrote:

I would like to solve the FBD system of equations iteratively, changing some of the input constants (Fcg) over a range and plot the results.

Solution(Fcg):=Find(...)

and you can use this function in your program with different values of Fcg

Pete Johnson wrote:

I also tried simply making the input constant a range variable, i.e. Fcg:=10000..15000

ORIGIN:=10000

Fcg:=10000,10001..15000

Do you mind attaching the modified files you got to work?

Thanks!

Pete

Try the attached.

Alan

Top Tags