Introduction: Gravitational Acceleration Measurement

The purpose of this project is to give a global overview of a science laboratory to students who are discovering physics. It covers the different important points of a manipulation:

- the development of the theory of a simple situation,

- the characterization of equipment and measurement uncertainties,

- the adjustment of the theoretical model to the measurements performed,

- criticism of the results obtained and

- what improvement can be done to the manipulation.

Manipulation consists of dropping an object and measuring the time it takes for it to travel different distances in order to determine gravitational acceleration.


For this project, you will need:

  • 1 arduino
  • 2 LEDs (+ adapted resistances if needed)
  • 2 photoresistors
  • 1 marble
  • 2 strong magnets
  • a 10 kΩ resistance
  • Some conductive wires
  • Breadboard (optional)

You should also have access to a 3D printer and to a soldering iron.

Step 1: The Underlying Theory

On Earth, every object undergoes Earth's gravitational acceleration. Thus, an object dropped with no initial velocity will follow a uniformly accelerated straight line trajectory.

According to Newtonian dynamics, if we assume an x-axis pointing towards the center of the earth, the x-position of a falling object as a function of time is:

x(t) = x_o + v_o * t + (g * t²)/2


  • x_o is the initial position,
  • v_o the initial velocity and
  • g the gravitational acceleration.

A basic algebra gives us the following linear relationship:

(x - x_o)/t = v_o + (g * t)/2

Thus, if we measure the time taken by an object to travel different known distances [x - x_o] and report this distance divided by time [(x - x_o)/t] as a function of time, we will obtain a line. By adjusting it, we will be able to determine g.

Step 2: Equipment

We must measure the time taken by an object to fall between two points separated by a known distance. To do this, we will print two modules in which the object will fall. On each of these modules we leave spaces in order to put a LED and a photoresistor in front of it. Thus, by connecting these electronic components to a voltage source, the passage of the object through a module will modify the current leaving the photoresistor. This modification of the electrical signal allows us to program an arduino to measure the time elapsed between the two passes.

The first thing to do is to create the modules. I designed mines with tinkercad and there are downloadable here: . Keep in mind that this system is adapted to my material and it is possible that you have to adapt it for yours. For example, I suggest you to enlarge the ring so that your object can pass through it more easily (I struggled quiet a lot with mine). I used strong magnets to fix the modules to a magnetic wall (e.g. blackboard, fridge,...) while keeping the possibility to move them easily.

When the modules are in place, it is time to connect every components to the arduino. As represented in the third figure, the photoresistors are connected to the 5V pin at one side and to the analog pins A0 and A1 at the other side. A 10kΩ resistance is connected between those analog pins and the ground in order to avoid electronic noise. Then the LEDs are connected to the voltage and put in front of the photoresistors (according to your LEDs, you could have to add some resistances to avoid overloading).

Finally, we only have to program the arduino so that it gives us in the serial monitor the measurement of the time between the two passes. My code is shown in figure 4 and 5.

Step 3: The Actual Measurements

Now that all the equipment is in place, it is time to make our measurements.

If we take back the theoretical expression obtained in step 1, x_o and v_o are respectively the expression of position and velocity of the object when it passes the first module. Knowing that, we can easily understand that we should drop the object at a constant position respectively to the first module and with the same procedure for each drop.

Thus, the first module should stay at the same position and we should only move the second module. Each time it is moved, the distance between each module must be measured as well as the time traveled by the object. At this point in the laboratory session, it is very important to determine how accurate the measurement is. For example, if we measure the distance between the two photoresistors, it is clear that we cannot be more precise than the size of the photoresistor itself. To see the global linear comportment, taking five to ten measurements and determining their precision is enough.

Step 4: Plotting and Fitting

After the measurements, we have four set of data: the differences of positions Δx, their uncertainties Δ(Δx), the times elapsed t and their uncertainties Δt. To see the linear comportment, we have to plot Δx/t as a function of t and we should also plot their uncertainties. As we do not know the uncertainties of Δx/t, we have to calculate them. Suppose we have a function f with unknown uncertainties that takes as arguments the two variables A and B with known uncertainties ΔA and ΔB. Thus, the theory of the propagation of uncertainties tells us that:

Δf(A,B) = |df(A,B)/dA| * ΔA + |df(A,B)/dB| * ΔB

This relation allows us to determine Δ(Δx/t):

Δ(Δx/t)= Δ(Δx)/t + (Δx/t²) * Δt

which allows us to plot the graph on figure 1. From there, you can use different methods to adjust the linear trend. Depending on your student's level in math, you can either adjust it to the eye or use the least square method. If you adjust it to the eye, it is interesting to trace the minimal and maximal acceptable slope in order to have an idea of the magnitude of error you are making. If you use the least square method, the errors on the different parameters are given by the square root of the diagonal of the matrix of covariance. In my case, I used the least square method and after a small developpment obtained g = (11 ± 1) m/s², which is acceptable knowing that the mean value of g on earth is g = 9,806 65 m/s².

Step 5: Conclusion

At this point in the project, the objective has been achieved: we have measured the gravitational acceleration on Earth and determined the uncertainty of the measurement. What remains to be done is to ask ourselves what we can do to go further. For example, as mentioned earlier, in my case the ring through which the object passed was a little too small, which led to several times to contacts between the object and the ring, and therefore to uncertainties. Another great improvement would be to create an automatic system to release the object. The latter will make it possible to avoid the constraint of human uncertainty in the procedure that is supposed to be identical each time.

Many different improvements can be imagined: a long tube with about ten photoresistors arranged at regular intervals to make only one launch and store all the data in a text file, better management of the different threads, testing if all the objects actually undergo the same acceleration,... The purpose of this step is to stimulate the interest and creativity of students in the manufacture of new techniques!