Tutorial: Data Acquisition System


Data Acquisition System

What is Data acquisition?

Data acquisition is the process of measuring physical quantities such as voltage, current, temperature, pressure, or sound with the help of electronic and mechanical devices. The process is usually carried out by using an array of sensors connected with a computer.

Why is Data Acquisition necessary?

The first requirement for any scientific claim to be acceptable is to be backed by some physical observations and measured data. This is where data acquisition techniques come into play.

What is data acquisition system?

A data acquisition system is a combination of hardware and software components that enable a computer to receive and interpret some physical form of signal.

What are the basic components of a Data acquisition system?

In short, a data acquisition system can be divided into three parts:
  1. Sensors: Sometimes also called transducers, convert some physical quantity, such as pressure, temperature etc. to a corresponding voltage signal.Sensors are mainly of two types, analog and digital sensors.
  2. Processing Unit: Receives the sensor input and is used for signal conditioning and analog to digital conversion.
  3. Computer: Acts as a means to process, interpret, store and display the data received from the processing unit to a user readable format with the help of some suitable software.

DIY  Simple Data Acquisition System

WARNING: Electronics can be dangerous if you don't know what you're doing. Please take all    necessary precautions while working with electrical circuits. Use this guide at your own risk!

STEP 1: What you need.
  1. Arduino UNO ( As Processing unit)
  2. Rotary Potentiometer (Sensor)
  3. Arduino IDE ( Software)
  4. Computer
  5. Processing Development Environment ( Software)
STEP 2: Electrical Connections

 Make the connections as shown in the diagram.

STEP 3: Coding in the Arduino IDE.

STEP 4: Coding in the Processing Development Environment.
  • To make the code more readable and easily understandable, I like to split the code in 6 tabs as follows:

  1. DIY_Data_Logger(Main tab): This tab contains your setup and loop for the program. Also, this is where you define your global variables, and include libraries. 
  2. dataLogging: This tab contains the part of the code that enables you to interact with the "soft switches" in your program. 
  3. demo: Usually this part is not required. I use it to to get a preview while developing the software.
  4. keyEvent: This event is triggered whenever a key is pressed. In our code, we use it to enter the name of our data file.
  5. mouseEvent: This event is triggered on mouse click. In our code, we use it to navigate through the software.
  6. serialEvent: This event receives the input from the arduino.
STEP 5: Hit the play button in the processing, and start logging data to your computer. :)

To get all the resource files of this tutorial, go to the following link.

ADVANCED APPLICATION: Data acquisition system for a Formula Student Car. 

The system consists of about 20 sensors:

  • 4 Linear Potentiometers: To measure the suspension deflection under static and dynamic loads.
  • 4 Wheel speed sensors.
  • Accelerometer
  • Steering position sensor
  • Manifold absolute pressure sensor(MAP)
  • Air temperature sensor(ATS)
  • Water temperature sensor(WTS)
  • Gear Position sensor(GPS)
  • Flow rate sensor(FRS)
  • Battery Voltage sensor
  • Battery current sensor
  • Crank Position sensor
  • Clutch position sensor
As you will see, the above system is an extension of the simple Data acquisition system that we made in this tutorial. By simply expanding the hardware and software tools used in this tutorial, it is possible to make any simple software for your mechatronics projects.


  1. Did you use an arduino uno for the advanced version? Or a larger MCU?

    1. Hey! I used an arduino MEGA for the advanced project.

  2. This blog gives a lot of technical information about data acquisition

  3. Hey! I can't seem to understand how you connect the data logger, once completed, to a computer?? I also don't really get how you could use this to log data values of current and voltage measurements??

  4. thanks for the quality information , would like to appreciate the content , if looking for more information related to Electrical Engineering Visit:Electrical Engineering

  5. You should mainly superior together with well-performing material, which means that see it: air monitor

  6. Thank you for sharing such a useful article. I had a great time. This article was fantastic to read. Continue to publish more articles on

    Data Engineering Services

  7. Thanks for posting! I really like what you've acquired here; You should keep it up forever!Private Tutor in Vero Beach Best of luck

  8. This could be one specific with the most beneficial blogs Private Tutor Boca Raton We have ever arrive across on this subject. Really Wonderful. I’m also an expert in this topic so I can understand your hard work.

  9. I’ve desired to post about something similar to this on one of my blogs and this has given me an idea. Private Tutor in Boynton Beach Cool Mat.

  10. Its wonderful blog really very nice site and blog facility.every title is very nice and very fatastic concept.Private Tutor in Boynton Beach Thanks for sharing the information.


Post a Comment

Popular posts from this blog

Project: FSAE Variable length Intake Manifold(VLIM)

Project: Electronic Steering Wheel