As I finish up my final semester of Mechanical Engineering, I thought it would be interesting for people to see how Engineers go about Engineering cars.
This article will not be an exhaustive list on what engineers do and how they do those things. I simply will introduce the concepts of idealization and finite element analysis and a bit about reverse engineering.
To guide you through the processes, I will use a connecting rod of a 3.0L Ford Duratec engine and analyze it using a program called Solidworks (Catia recently bought Solidworks, and Catia is what most of the major automotive manufacturers use).
To get an idea what this connecting rod looks like here is a picture.
Now, to analyze this component I required a 3D model of the component. There are a few ways to obtain/make a model. The first way is to get a hold of the original blueprints for the part. I didn't have access to Ford's vast storehouse of part drawings, so I used another method. Technical specifications of the engine and measuring the part I have. Luckily for me, I have access to a laser scanner. Using the laser scanner I was able to create this roughly accurate mesh.
The original scan was about 500,000 polygons (aka made of 500,000 iddy biddy triangles). I decimated that mesh... literally, the one you see in the picture is approximately 50,000 polygons. The mesh size was reduced to help reduce the load on my computer. As you probably noticed by now, there are lots of holes in this model where I didn't get a good scan. This is ok because from here I shall use this scan as a template to trace from, and not as my actual model.
Using specifications found on the ole internet, I further refined this new model. Next, by reducing the sharp angles that don't actually exist on the part I ended up with the final model of the connecting rod.
Unfortunately, all these excess rounded corners do eat up memory so I will idealize the model and suppress them for now. If there appears to be any problems with my final data I can always go back and unsuppress the corners. So my final model looks like this (note that I kept the rounds on the inside diameters since they were larger and had a greater effect)
Now with a 3d model of the part we need to figure out what we are interested in. Do we want to analyze the fatigue? How heat is dissipated through the part? How heat expands the connecting rod around the bearing surfaces? The amount of air friction on the connecting rod? Nahhh, I'm going to do a more critical analysis, I'm going to go into detail of the stress analysis of the part to see where it will fail, and when it will fail.
Usually this is done with a process called finite element analysis (FEA). FEA is where you take a design and break it down into nodes and elements. Nodes are corner points and elements are something like sticks connecting the nodes. By applying a force to a node or a set of nodes the elements will deform. Further, if one node deforms, it will effect its neighbouring nodes and they will deform as well. The end result is that you have a tinker toy like mesh of your part. The more nodes and elements, generally the better your FEA will approximate reality.
Depending on the program you use, you can create these meshes point by point, or by use a computer algorithm to do it for you. Using the algorithm in solidworks, my first mesh of the part turned out as follows.
Now, by applying mesh controls you can put more nodes/elements in to places you care to have more information about. For example, optimizing the mesh above yields the mesh below.
Next, we need to determine the constraints on the system. First, I needed to determine the pressures acting on the piston. After running through some numbers I got the following pressure curve.
This pressure curve assumes the engine is putting out 200ft-lbs of torque. At this point I will idealize my analysis again and assume that the engine puts out 200ft-lbs of torque at every engine speed when at full throttle. This is a big assumption, and has been made because it simplifies the analysis and I am only looking for general effects of the connecting rod and not specific values. If I were trying to optimize the design of the connecting rod this assumption would not have been made.
Next, I have to apply inertial loading on the component. One way to do it is to calculate the inertial force being applied to the center of gravity of the connecting rod for every time step to be analyzed and then distribute that force along one of the outside surfaces of the component. Personally I dislike this idealization and with Solidworks it's easier to not make this idealization.
First, I create a mock assembly with very simplified components.
This assembly allows Solidworks to calculate the motion of the connecting rod, and it allows me to directly apply the pressures in the pressure curve on the piston.
Now that I have all of my loads and constraints. We are ready to set up the simulation.
I'd like to analyze the connecting rod at 6000rpm, and full load. Further, I only care about half of the 4 stroke cycle, or one full revolution. I could calculate the entire cycle, but half of the cycle shows both the relative inertial loading effects and inertial effects with pressure. For this first run I went overboard, over the 0.01s revolution I got Solidworks to calculate the 350 time steps for motion analysis and 252 time steps for stress analysis. I split it between two different computers to run faster, so I hope that explains why the following printscreen gif jumps half way through the cycle.
Tada! A stress animation at 6000rpm and full throttle. Furthermore, the peak stress in the connecting rod in this animation is shown in the figure below.
Next, lets find more data. It would be nice to know how engine speed affects the stresses in the connecting rod.
So to do that I disabled the pressure force to find out what angle the maximum inertial stress occurs. Running the simulation again with 10 times steps instead of 252, I got the following curve of maximum stresses at various angles.
As you can see, the peak inertial load happens at 0 degrees/360 degrees, aka top dead center. So now we have a critical pressure angle (found in the pressure curve), and a critical inertial angle. Using both of these angles and varying the speed the maximum stresses were then found.
In the final bit of analysis I varied the crankshaft speed and comparing both the full throttle and no throttle for critical angles. No throttle in my idealization consisted of no pressure load. I realize that a 3 liter duratec is not capable of revving itself as high as shown in these graphs, but without analyzing these extremes, the graphs would have been very misleading.
Critical Pressure Graph
Critical Inertia Graph
A few conclusions can be drawn from these graphs.
-Inertial effects increase exponentially with increasing engine speed
-The cylinder pressure creates stress in the connecting rod at all engine speeds, and as the engine speeds up, the inertial effects of the piston and connecting rod help to counter the force.
-There is a critical engine speed that correlates to the relatively balanced system, where the effect of inertial forces cancel out the pressure force, thus minimizing the force seen on the connecting rod.
-This critical engine speed varies at different crank angles. At top dead center for this model it's about 6000rpm, however at peak pressure it's at 12000rpm.
-The lower the pressure force the lower this critical engine speed occurs at.
These are very interesting conclusions! Before this analysis, I had always assumed that increasing speed would increase the forces on all of the components in the engine. And this scenario has proven that this is not always true.
If you have any questions, ask below in the comments, or email me at joelimon(at)gmail(dot)com
P.S. This being my final semester of Mechanical Engineering, I'm looking for work internationally and I'm willing to relocate, get a hold of me at the email above if you're interested in my offer, or know of positions I could apply to :)