Build Instructions:
We have included STL files to the 3D print designs used as the basis for the gimbal - three pieces, one acting as the base where the breadboard & one servo will be held, one as the cover for that, and lastly the back portion (which should be split and printed as three different components) which will hold the servos for the other two axes.
The three main parts are:
- An IMU which collects the accelerometer and gyroscope data in three axes
- Raspberry pi computer --> reads the data from the IMU and computes reaction motion for the servos
- High torque servo motors which counteract the motion sensed by the IMU (using code from the Pi) allowing the gimbal to stabilize --> high torque motors should be used for this model given its weight
A conceptual diagram is shown below:

Whilst putting together the components, make sure the three servos coded (using the same codes, just accessing the three different directional variables from the gyroscope data in x, y, and z) are fitted to the right parts of the gimbal.
- As shown in the image directly above, each servo corresponds to a specific plane and therefore reads in data for a specific axis
- XZ plane (y-value data): held in the base of the gimbal, like "yaw" in an airplane
- ZY plane (x-value data): held in the side of the gimbal, like "pitch" in an airplane
- XY plane (z-value data): held in the back of the gimbal, like "roll" in an airplane
Putting together the components: this can be done simply using the printed out model, along with some nuts, washers, and bolts to hold the servos within the corresponding holes in the model
- The servos come with parts allowing for easy attachment, however holes must be drilled to fit sturdily within this model
- One key issue faced was the shallow ridge of the servo making it rather flimsy for the amount of motion this gimbal required
- A solution would be to screw in the servos or use a temporary adhesive, not permanent glue like we used (didn't work well)
Codes: the codes produced essentially work to read in gyroscope data from the IMU and produce corresponding counteracting movements for the servo motors
- Single breadboard connected to all key components including imu, pi computer, and three servos (use half-sized breadboard to fit in gimbal base)