Introduction: The Brachistochrone Curve

About: We are two young inventors. We like using digital fabrication, electronics and various other fields of knowledge to create projects that focus on simplicity, efficiency, utility, and aesthetics. Be sure to fol…

The brachistochrone curve is a classic physics problem, that derives the fastest path between two points A and B which are at different elevations. Although this problem might seem simple it offers a counter-intuitive result and thus is fascinating to watch. In this instructables one will learn about the theoretical problem, develop the solution and finally build a model that demonstrates the properties of this amazing principle of physics.

This project is designed for high school students to make as they are covering related concepts in theory classes. This hands-on project not only strengthens their grasp on the topic but also offers a synthesis of several other fields to develop. For example while building the model, students are going to learn about optics through Snell's law, computer programming, 3d modelling, digital frabrication and basic woodworking skills. This allows an entire class to contribute dividing the work among themselves, making it a team effort. The time required to make this project is around a week and can then be demonstrated to the class or to younger students.

There is no better way to learn than through STEM, so follow on to make your very own working brachistochrone model. If you like the project do vote for it in the classroom contest.

Step 1: Theoretical Problem

The brachistochrone problem is one that revolves around finding a curve that joins two points A and B that are at different elevations, such that B is not directly below A, so that dropping a marble under the influence of a uniform gravitational field along this path will reach B in the quickest time possible. The problem was posed by Johann Bernoulli in 1696.

When Johann Bernoulli asked the problem of the brachistochrone, on June 1696, to the readers of Acta Eruditorum, which was one of the first scientific journals of the German-speaking lands of Europe, he received answers from 5 mathematicians: Isaac Newton, Jakob Bernoulli, Gottfried Leibniz, Ehrenfried Walther von Tschirnhaus and Guillaume de l'Hôpital each having unique approaches!

Alert: the following steps contain the answer and reveal the beauty behind this fastest path. Take a moment to try and think about this problem, maybe you might crack it just like one of these five geniuses.

Step 2: Using Snell's Law to Demonstrate

One of the approaches for solving the brachistochrone problem is to tackle the problem by drawing analogies with Snell's Law. Snell's Law is used to describe the path that a beam of light would follow to get from one point to another while transitioning through two different media, using Fermat's principle, which says that a beam of light will always take the quickest route. A formal derivation of this equation can be found by visiting the following link.

Since a free-falling object under the influence of the gravitational field can be compared to a beam of light transitioning through changing media, each time that the beam of light encounters a new medium, the beam gets slightly deviated. The angle of this deviation can be calculated using Snell's law. As one continues to add layers of reducing densities in front of the deviated beam of light, until the beam reaches the critical angle, where the beam simply gets reflected, the trajectory of the beam describes the brachistochrone curve. (the red curve in the diagram above)

The brachistochrone curve is in fact a cycloid which is the curve traced by a point on the rim of a circular wheel as the wheel rolls along a straight line without slipping. Thus if we need to draw the curve one can simply use the method above to generate it. Another unique property of the curve is that a ball released from any point of the curve will take exactly the same time to reach the bottom. The following steps describe the process of making a classroom experiment by constructing a model.

Step 3: Practical Experiment Model

The model consists of lasercut paths that act as tracks for the marbles. To demonstrate that the brachistochrone curve is the fastest path from point A to B we decided to compare it with two other paths. As quite a few people would intuitively feel that the shortest part is the fastest we decided to put a straight slope connecting both points as the second path. The third one is a steep curve, as one would feel that the sudden drop would generate enough speed to beat the rest.

The second experiment in which the balls are released from different heights on three brachistochrone paths, results with the balls reaching at the same time. Thus our model features 3d printed guides that provide easy interchangeability between the acrylic panels letting conduct both experiments.

Finally the release mechanism ensures that the balls are dropped together and the timing module at the bottom records the timings as the balls reach the bottom. To achieve this we have embedded three limit switches that are activated when the balls trigger it.

Note: One could simply copy this design and make it out of cardboard or other materials that are easily available

Step 4: Materials Needed

Here are the parts and supplies to make a working model of the brachistochrone experiment



  • Limit Switchx 4- these switches will act as the timing system

The total cost of the model came to around 30$

Step 5: 3D Printing

Several parts such as the release mechanism and the control box were made with the help of a 3d printer. The following list contains the total number of parts and their printing specifications. All the STL files are provided in a folder attached above, allowing one to make their needed modifications if necessary.

  • Control Box x 1, 20% infill
  • Guide x 6, 30% infill
  • End Stop x 1, 20% infill
  • Pivot Arm x 1, 20% infill
  • Pivot Mount x 1, 30% infill
  • Release Piece x 1, 20% infill

The parts were printed in PLA as there is no particular stress acting on the pieces. In total it took around 40 hours of printing.

Step 6: Laser Cutting the Paths

The various paths that we designed on fusion 360 were exported as .dxf files and then laser-cut. We chose opaque white acrylic having a thickness of 3mm to make the curves. One can even make it out of wood with hand tools but it is important to ensure that the material chosen is rigid as flexibility might affect how the balls roll down.

  • 6 x Brachistochrone Curve
  • 2 x Steep Curve
  • 2 x Straight Curve

Step 7: Cutting the Wood

The frame of the model is made out of wood. We chose 1" by 4" pine as we had some remaining from a previous project, although one can use a wood of their choice. Using a circular saw and a guide we cut two pieces of wood of length:

  • 48cm which is the length of the path
  • 31cm which is the height.

We cleaned up the rough edges by lightly sanding it on the disc sander.

Step 8: Drilling the Holes

Before screwing the two pieces together, mark the wood's thickness on one end of the bottom piece and center three equidistant holes. We used a 5mm bit to create a pilot hole on both pieces of wood and countersunk the hole on the bottom piece to allow the screw head to be driven in flush.

Note: Be careful not to split the vertical piece of wood as one will be drilling into the end grain. Also use long wood screws as it is important that the frame doesn't shake and the top due to the leverage.

Step 9: Embedding the Heat-sinks and the Magnets

As the threads in 3d printed parts tend to wear out over time we decided to embed heat-sinks. The holes are slightly undersized to allow the heat-sink to better grip to the plastic. We placed M3 heat-sinks over the holes and pushed them in with the tip of a soldering iron. The heat melts the plastic, letting the teeth wedge itself in. Make sure that they are flush with the surface and have gone in perpendicularly. In total there are 8 spots for the threaded inserts: 4 for the lid and 4 to mount the Arduino Uno.

To facilitate mounting the timing unit, we embedded magnets in the box, making it easy to detach if changes are ever required. The magnets need to orient the same direction before being pushed in place.s

Step 10: Attaching the Limit Switches

The three limit switches are attached to one side of the timing unit that faces the bottom of the paths. Thus as the balls click the switches one can determine which ball reached first and display the timing on an LCD display. Solder on small strips of wire to the terminals and secure them in the slots with a dab of CA glue as they shouldn't loosen after continuous knocks.

Step 11: LCD Display

The lid of the timing unit has a rectangular cutout for the lcd screen and a hole for the "start" button. We secured the display with dabs of hot glue till it was flush with the surface of the lid and fixed the red button with its mounting nut.

Step 12: Wiring the Electronics

The wiring consists of connecting the various components into the right pins on the Arduino. Follow the wiring diagram attached above to setup the box.

Step 13: Uploading the Code

The Arduino code for the brachistochrone project can be found attached below. There are two openings in the electronics compartment for easy access to the Arduino's programming port and for the power jack.

The red button that is attached on top of the box is used to start the timer. Once the marbles roll down the curves and trigger the limit switches, which is placed at the bottom, the timings are sequentially recorded. After all three balls hit, the LCD screen displays the results, aligned with the respective curves (pictures attached above). Once you have noted the results in case a second reading is required, simply press the main button again to refresh the timer and repeat the same process.

Step 14: The 3d Print Guides

The guides that were 3d printed had a 3mm material base before the supporting walls started. Therefore when the acrylic panels would be slid into place there would be a gap between the panel and the wooden frame, decreasing the steadiness of the path.

Therefore the guide needed to be embedded by 3mm into the wood. As we didn't have a router, we took it to a local workshop and got it done on a milling machine. After a bit of sanding the prints fit snugged and we could secure it with wood screws from the side. Attached above is a template for the placement of the 6 guides on the wooden frame.

Step 15: Adding the Stopper and the Timing Unit

As the timing module was a separate system we decided to make a quick mounting and detaching system by using magnets. In this way one can easily program it might simply taking out the unit. Instead of making a template to transfer the position of the magnets that need to be embedded in the wood we simply let them connect to the ones on the box and then put a bit of glue and placed the box on the piece of wood. The glue marks got transferred to the wood letting us quickly drill the holes in the accurate spots. Finally attach the 3d printed stopper and the timing unit should fit snugly yet be able to detach with a slight pull

Step 16: The Release Mechanism

The release mechanism is straightforward. Use a nut and bolt to tightly connect the C section to the pivot arm, making them one secure piece. Then drill two holes in the middle of the vertical wood and attach the mount. Slip a pivoting shaft and the mechanism is complete.

Step 17: The Experiment

Now that the model is ready one can do the following experiments

Experiment 1

Carefully slide in the acrylic panels of the straight path, the brachistochrone curve, and the steep path (in this order for the best effect). Then pull the latch up and place the three balls at the top of the curve making sure they are perfectly aligned with each other. Hold them tightly in place with the latch down. Make one student release the balls and another one press the red button to start the timing system. Finally observe the balls roll down the path and analyse the results displayed on the timing module. Setting up a camera to record slow motion footage is even more exciting as one can see the race frame by frame.

Experiment 2

Like the previous experiment slide in the acrylic panels but this time all the paths need to be the brachistonchrone curve. Carefully ask a student to hold the three balls at different elevations this time and push the red button as the balls are released. Watch the astonishing moment as the balls line up perfectly before the finish line and confirm the observations with the results.

Step 18: Conclusion

The making of the brachistochrone model is a hands-on way to see the magical ways in which science functions. Not only is the experiments fun to watch and engaging but also it offers a synthesis of learning aspects. While primarily a project meant for high school students, both practically and theoretically, this demonstration can easily be grasped by younger children and could be shown as a simplified presentation.

We would like to encourage people to make things, be it a success or failure, because at the end of the day STEM is always fun! Happy making!

Do drop a vote in the classroom contest if you liked the instructables and leave your feedback in the comment section.

Classroom Science Contest

Grand Prize in the
Classroom Science Contest