Four Bar Path Synthesis

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

Part 1: Four Bar Linkage Synthesis

Part 3: Four Bar Function Synthesis

Part 4: Four Bar Motion Synthesis

Four Bar Path Synthesis

With four bar path synthesis, we are only concerned that a point on a link will follow the path we specify.  The angle of the input link (crank) may or may not be of concern.  When the crank angle is not important, it's called untimed.  For timed synthesis, the crank angle must be at a given angle when the point is at a specific precision point.


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 distance of the linkage point to its corresponding precision point.  Maximum error is the worst error of a linkage point from its corresponding precision point.

Path Synthesis Examples

We'll do an example of untimed and timed synthesis.

Untimed Example

The precision points for a path and the plot of these points are shown below.

Open the four bar synthesis form.  We want to design a linkage with the point on link 3 (the coupler).  Select link 3 as the link of interest.

Synthesis Type

This will be path synthesis, path must be selected (it's already selected by default).

Link of Interest

The link of interest is the link that has the point that will follow the path.  We will use link 3 which is the coupler.


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

To select the x coordinates, click the minimize button to the right of the path x values box.  A selector window will appear.  Select the range containing the coordinates and click OK.

Do the same for the y coordinates.


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 10 inches.

To improve performance, we also apply maximum constraints of 20 to the remaining links and the point radius.  The path has more travel in the x direction and is approximately 20.  Therefore we'll use 20 as a maximum constraint.


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 path 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 path 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 of precision points with the linkage point path, and an error log.

The final errors are:

Average error = .125

Maximum error = .326

Timed Example

The precision points and link 2 angles for a path and the plot of these points are shown below.

Open the synthesis form and select link 3.  Since this is a timed example, click on the Timed positions radio button in the Path frame.

When Timed positions is selected, a box for the link 2 angles will appear.  Select the range of values for link 2 angles.

Select the x and y coordinates the same as we did in the untimed example.  For this example, there are no hard constraints.  To improve performance we'll add soft constraints to link lengths and point radius.

The maximum travel is in the y direction and is approximately 88.  We'll apply 88 as maximum constraints.

In this example, we'll make two runs.  The first will minimize average error.  Then we'll minimize maximum error and compare the two runs.

The results for the first run is shown below.  The final errors are:

Average error = .992

Maximum error = 2.706

The results for the second run is shown below.  The final errors are:

Average error = 1.491

Maximum error = 1.655

Both runs were performed using approximately 20,000 iterations.

Run 1 average error is less than run 2, and run 2 maximum error is less than run 1.  For problems where a solution with very low error is possible, choosing average or maximum error will likely have little difference.

When an exact solution is not possible, the choice of average or maximum error is more important.  Choosing average error will usually result in most points having a better solution with at least one outlier (maximum error point).  Choosing maximum error will usually result in the worst point being "less bad", but at the expense of overall error.