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

Mechanism - Crank, rod & piston assembly


Mechanism - Crank, rod & piston assembly

Hi all, I posted this on mcadcentral this morning but thought I'd try here aswell. This is my first post so please be gentle..... Sorry for the length of the post but I just wanted to describe how I've set up the assembly....... I'm currently working in Pro/E Mechanism with a flat plane V8 crank, rod and piston assembly. Basically I want to be able to create measures which will give me results for the 5 main bearing loads but I'm struggling. I have set up Mechanism to analyse the system over one engine cycle (2 crank revolutions) and have applied combustion loads to the top of each piston as a function of the "crank_angle" measure I have set up. I have applied "connection reaction" measures to the Mechanism joints between piston and rod little end and between crankpin and rod big end. I get good results from these measures. The forces are of the correct order and they vary as expected over the engine cycle. I have an excel spreadsheet I wrote a few years ago for a similar engine which I'm using as a reference to verify the results. However, I'm struggling with the crank main bearing loads. I have assembled 5 'rings' as "ground" parts to the assembly to represent the main bearings. These are assembled to a skelton part within the assembly via a crank centrline axis and dutum planes to position axially. I have then assembled the crank using the same skeleton crank centreline axis as a pin joint and have used a datum plane from the same skeleton to specify the translation. My servo motor to turn the crank assembly is applied to this pin joint. Just for starters I have further constrained the crank by adding another pin joint at main bearing 3. I've done this by using the axis within the main bearing part and the local axis created through the 3rd main within the crank part. I then add the measure and run the analysis. I do get a load at main bearing 3 but its a constant 75N which just isn't right. Adding another pin joint to the crank produces 2 measures of a constant 50N which is also wrong. Just writing this has made me think that maybe I should assemble the crank using 5 pin joints made to the 5 main bearing parts and leave out the initial constraint to the skeleton part. I'm not sure how applying my servo to one of these joints will affect the results but I'm not in position to test this theory at the moment. If anyone has any ideas I'd be very grateful. Surely someone out there has attempted to set this kind of thing up in Mechanism before. Many thanks in advance, Adam
This thread is inactive and closed by the PTC Community Management Team. If you would like to provide a reply and re-open this thread, please notify the moderator and reference the thread. You may also use "Start a topic" button to ask a new question. Please be sure to include what version of the PTC product you are using so another community member knowledgeable about your version may be able to assist.

Hi Adam, I can't help directly, but if I were doing what you are trying to do, I would experiment firstly with a simplified assembly. i.e. a single cylinder 2 main bearing crank. When you get the results that you expect, then apply the same method to the multi-cylinder model. I will be interested to hear your final solution. I asume you are using Wildfire 5? Regards, Mike

Hi Mike, Thanks for your thoughts. It would probably be a good idea to try a simplified model. I've been playing around with the assembly a little more this morning. I've tried to simplyfy things by removing the main bearing parts I was using and have just used my skeleton part to constrain the crank. I've now created 5 pin joints at the points of interest and applied the appropriate measures. Interestingly, 4 of the main bearing loads are now a constant 30N but the pin joint which appears as the first crankshaft constraint in the assembly shows what appears to be the 'overall' load applied to the crank. This load varies as expected with crank angle and I can also pick out the effect of the combustion loads. I have swapped the first constraint to the centre of the crank and this 'overall' load moves to the same point....... I just need to find a way to split this overall load across the 5 main bearings.... P.S. I'm using WF3. Thanks again, Adam

Hello again Adam, The reason I'm interested in your problem is that soon I will need to do similar loading estimates for a suspension. I have used mechanism with great success in the past for animation, but never as a tool for loading calcs. Will I need an enhanced version of 'mechanism', or can the basic version do it? Mike

Hi Mike, I think there are three Mechanism modules. The first is "Design_Animation", the second is "Mechanism_Design" and the one you'll need to measure loads in "Mechansim_Dynamics". Have a look at the link below (shows how to set-up a pedal bicycle mechanism and tranfer the loads to mechanica) which might be helpful:,b3jsqcsB,w Unfortunately, I can't find anything similar to help me with my crank issue. Cheers, Adam

Okay, I have the same problem on compressor. PTC explain me that is due to the "hyperstatisme" of the model, but I never find the solution.


There is an "easy" fix for this situation. I have modeled many engines and complete valve trains in the past and the one key element to obtaining accurate bearing support loads is redundancies. You must create a set of joints that will not generate any redundancies. You can measure "system" quantities like DOF and redundancies as a measure to make sure you're OK. The trick is creating 6DOF joints for all your bearing supports and applying a heavy spring or servo motor to constrain the radial directions. When you do this, redundant supports can be calculated accurately. I say it's "easy" because the process is simple, but it is more involved than applying pin joints everywhere. You'll need to make a co-ord system on the shaft and bearing/housing in the same locations of the center of the bearing (so their centers and rotation axes line-up exactly upon assembly). You'll also need datum points on both parts at the center of these co-ords to reference for translation "zeros". Apply servo motors to the X & Y (radial) directions and make sure to add these to the dynamic analysis definition. You will obtain accurate bearing loads. I did this many years ago while developing an engine bearing system for a very large European automaker. They ended-up re-formulating their calculations 3 times until theirs matched mine ... they agreed errors were found in their calcs - twice.

BTW - the new "Bushing Load" in Creo 2 may be a good substitute for my 6DOF approach - I just tried it for the first time a couple days ago. I didn't seem to get the same results as using 6DOFS, but I need to spend more time with it before passing judgment.


Attention: Creo 7.0 Customers
Please consider upgrading
End of Life announcement here.

NEW Creo+ Topics:
PTC Control Center
Creo+ Portal
Real-time Collaboration