Arduino based Tiltmeter

Arduino based Tiltmeter using MPU 6050 Accelerometer (DIY)


tiltmeter (or inclinometer) is a sensitive meter for measurement of change in inclination angle. This project is about to design and implement digital tiltmeter that can sense the tilt from -180 to 180 degree on dual axis. Accelerometer is used as tilt sensor. Arduino UNO is used for programming and converting output from sensor into an angle in degrees. Then LCD is used for displaying angles in degrees on both X and Y axis.


Tiltmeters find its applications in

  • Monitoring slightest change in mechanical structure of buildings, dams, bridges, piers and piles.
  • Monitoring rotation in marine structure.
  • Change in earth filled dam
  • Possible damage to buildings due to nearby excavation.
  • Giving early warning before collapsing of any structure.

Design Theory:

MPU 6050:

The MPU 6050 is an inertial measurement unit (IMU) which has 6 Degrees of Freedom (DOF). Outputs from this unit are; three values from the accelerometer and three from the gyroscope. By means of I2C  protocol for communication, this module can be connected to microprocessors. This module is cheap and easily available in market. As we only used gyroscope in MPU 6050 so we will discuss only that:


Gyroscopes work on the principle of Coriolis acceleration. Imagine that there is a fork-like structure that is in a constant back and forth motion. It is held in place using piezoelectric crystals. When this assembly is disturbed in any direction (changes angle), a force acts on piezoelectric crystal in that direction. The signal is collected and feed to the host microcontroller for processing.

Block Diagram:

Here is the block diagram of our circuit. Tilt sensor converts tilt into voltage. Arduino take input in form of voltage and convert it into angle in degrees and display on 16*2 LCD.

figure: Block Diagram (Tiltmeter using Arduino)
figure: Block Diagram (Tiltmeter using Arduino)

Components Required:

  • Arduino Uno
  • Accelerometer (MPU-050)
  • 16×2 LCD display
  • 10 k $$\Omega$$ potentiometer
  • Connecting Wire
  • 9V Battery
  • Switch
  • Circuit Board

Experimental Setup:

9 V battery is attached with Arduino input voltage pin. Arduino gives regulated 5V as it has builtin 7805 regulator. We use four wires of an Accelerometer.Vcc is connected to 5v pin of Arduino and GND is connected to ground pin of Arduino. SCL pin of sensor is connected to analogue pin A5 and SDA pin of sensor is connected to analogue pin A4. A 16×2 LCD is connected with arduino in 4-bit mode. Control pin RS andEn are directly connected to arduino pin 7, 8. And data pin D4-D7 is connected to 9, 10, 11 and 12 of arduino. Circuit diagram is given as under:

Circuit Diagram of Tiltmeter using Arduino and MPU-6050
Figure: Circuit Diagram of Tiltmeter using Arduino


This project is a success. Accelerometer gives output in voltage form which is converted into angle in degrees with the help of Arduino and displayed on LCD separately for X and Y axis. Angles shown are according to the tilt we give.

Visit other instruments design projects.

Check more projects from engineers sharing their experiences.

Give feedback to encourage young engineers for more.  For any query or suggestion, comment below or email us. For more, stay tuned with us on facebook page.

What do you think?