Four Bar Function Synthesis

This is part of a series for synthesizing four bar linkages using MEboost.  In this article we will use four bar function synthesis to design a linkage.  It's recommended to view part 1 for terms and conventions used in MEboost.

Part 1: Four Bar Linkage Synthesis

Part 2: Four Bar Path Synthesis

Part 4: Four Bar Motion Synthesis

Four Bar Function Synthesis

With four bar function synthesis, there is a relationship between the input link angle (link 2) and the output link angle (link 3 or 4).  Hence the name function synthesis.  This is by definition timed.

The linkage acts as a function generator.  Given a function: y = f(x).  We want to design a linkage where x → θ2 and y → θ4.


MEboost treats synthesis as an optimization problem.  The objective function to be minimized is either average error or maximum error.  Error is measured by the difference of the desired output link angle and the resulting output link angle on the synthesized linkage.  Maximum error is the worst error of an output link angle from its corresponding precision point angle.

Function Generator Example

We'll design a linkage to generate the function y = x^2 for values of x from 1 to 3.  Link 2 will be the input and link 4 will be the output.

We can choose the start and end angles of links 2 and 4.

θ2i = 60 deg.

θ2f = 150 deg.

θ4i = 220 deg.

θ4f = 310 deg.

Since x is the input, we can choose values for x.  These values result in precision points for synthesis.

We will choose x in increments of .2.  This will give us 11 precision points.  The x inputs and corresponding y values are shown below.

Mapping function values to link angles

Before synthesis, we need values of θ2 and θ4 for precision points.  We do this by mapping values of x to values of θ2, and values of y to θ4.  The equations to do this is shown below:

θ2 = θ2i + (range of θ2/range of x)(x - xi) = 15 + 45x

θ4 = θ4i + (range of θ4/range of y)(y - yi) = 208.75 + 11.25y

Calculating each value, we get the following link angles:


Now that we have linkage precision points, we can synthesize the linkage.  Open the four bar synthesis form.

Synthesis Type

This will be function synthesis, so function must be selected.  The function pane will activate.

Link of Interest

Since we are using link 4 as the output, select link 4 as the link of interest.


Function is where we define the precision points.  The precision point angles must be entered in a worksheet.  You can type the range address directly in the box or select the range.

To select the link 2 angles, click the minimize button to the right of the link 2 angles box.  A selector window will appear.  Select the range containing the angles and click OK.

Do the same for link 4 angles.


We can constrain the dimensions of the linkage by entering minimums and/or maximums in the appropriate boxes.  For this example, we want link 1 (the frame) to be exactly 5.


We need to set a stopping criteria so that when error drops to this level the synthesis process will stop.  You can also stop the process manually as we'll do later.


When the synthesis process stops, a report will be created for the results.  You can create the report in a new sheet in the current workbook or in a new workbook.

Now we're ready to start four bar function synthesis.  Click run and a progress form will appear.  The progress form will show average error, maximum error, and the current best solution.  NOTE: The process is paused to capture this screen shot.  To resume, click the Run button on the progress form.

Since we are using average error as the objective to minimize, maximum error is for informational purposes only.  Maximum error is useful in assessing the fit.  A relatively low average error with a large maximum error suggests that most points match the function well, but one or two may be way off.  This can tell when it's time to stop or continue for a better solution.

Once errors reach an acceptable level, we can manually stop the synthesis process by clicking the Stop button on the progress form.  The synthesis report will then be created.  The report shows the synthesized linkage dimensions, a comparison chart of link 4 precision point angle versus the synthesized link 4 angle, and an error log.  The angles in the chart line up well enough that the blue line is underneath the orange line.

The final errors are:

Average error = .046

Maximum error = .144

Transforming Link 4 Angles to y

Now that we've synthesized the linkage, we need to transform link 4 angles to y.  This is accomplished by rearranging the equation used to map y to θ4, and solving for y.

y = (θ4-208.75)/11.25

Error Analysis

It would be good to know how well the linkage generates the function.  We can do an error analysis at each precision point.  All of the data is put in a worksheet and error is calculated by:

error = 100(y - linkage_y)/y   where linkage_y is the output from the synthesized linkage

From column J, the maximum y error is 0.66% at the second precision point.