Arduino/C2/Analog-to-Digital-Conversion/English-timed

From Script | Spoken-Tutorial
Revision as of 14:58, 22 January 2020 by PoojaMoolya (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:01 Welcome to the Spoken Tutorial on Analog to Digital Conversion using Arduino.
00:07 In this tutorial, we will learn about : ADC i.e. Analog to Digital Conversion
00:14 ADC pins in Arduino

ADC Resolution

00:19 DHT11 Temperature and Humidity sensor
00:23 Serial Monitor and Serial Plotter
00:27 To follow this tutorial, you should have a basic knowledge of:

Electronics and C or C++ programming language

00:37 To record this tutorial, I am using:

Arduino Uno board

00:43 Ubuntu Linux 16.04 OS

and Arduino IDE

00:50 We require few external components such as

DHT11 sensor

00:57 Breadboard and Jumper wires
01:02 In this tutorial, we will detect the temperature and humidity using DHT11 sensor.
01:09 This sensor collects analog values and gives it to Arduino Uno.
01:15 Arduino ADC pins will convert these analog values to digital values.
01:21 Next, we will understand the concept of resolution.
01:25 Arduino Uno has 10-bit resolution.
01:28 This means, it can detect (2 to the power of 10) i.e. 1024 discrete analog levels.
01:37 Resolution is the smallest change that can be measured
01:42 Arduino gives 5Voltz output voltage, so 5Voltz divided by 1024 levels gives 4.89miliVoltz.
01:56 That means, Arduino Uno can be sensitive to a minimal change of 4.89miliVoltz.
02:04 This shows the circuit connection for DHT11 with Arduino.
02:10 Arduino Uno has 6 in-built ADC channels (A0 to A5).
02:17 ADC channels read analog signal in the range of 0-5Voltz.
02:23 Pin 1 of the DHT11 sensor is connected to 5Voltz pin of Arduino.
02:30 Pin 2 of the DHT11 sensor is the Data pin.
02:35 This Data pin of the sensor is connected to analog pin A0 of Arduino.
02:42 Pin 3 of the DHT11 sensor is connected to the ground pin of the Arduino.
02:48 This is the live setup of the connection, as shown in the circuit diagram.
02:53 Now we will write the program in Arduino IDE.
02:57 Open Arduino IDE.
03:00 First we need to download the DHT11 arduino library to run this program.
03:06 Click on Sketch menu in the menu bar.
03:10 Select Include Library and then click on Manage Libraries option.
03:16 A new window will appear.
03:19 In the top right corner, we can see a search tab.

Here, type DHT11 and press Enter.

03:28 We can see various libraries for DHT11 sensor.
03:33 Scroll down to the bottom of the screen and select SimpleDHT by Winlin.
03:39 In the version drop down box, we can select the latest version of the library.
03:45 Click on Install button to install the library.
03:49 The DHT11 library is now installed in the Arduino IDE.
03:54 Click on the Close button at the right bottom of the window.
03:59 Let us add this library to the program.
04:02 Click on the Sketch menu and select Include Library.
04:06 Newly downloaded library usually appear at the end.
04:11 So scroll down to the bottom of the list and select SimpleDHT.
04:17 We can see the header file SimpleDHT.h added in the code window.
04:24 Type the code as shown.
04:27 Here we have initialized the data pin of DHT11 sensor which is connected to A0.
04:34 This command creates a DHT object.
04:38 Inside void setup function, type the code as shown:
04:43 Serial.begin() function initiate the serial communication.
04:48 It sets the data rate in bits per second for serial data transmission.
04:54 9600 represents the baud rate.
04:58 delay(500) is the delay time for the sensor to boot.
05:03 Serial.print command prints the header as specified here.
05:08 Now we will write the code for void loop.
05:12 We have created two variables, temperature and humidity for DHT sensor output.
05:20 dht11.read, reads the data from the sensor.
05:25 It stores the result in microcontroller’s register.
05:29 These lines prints the temperature in degree Celsius and humidity in percentage.
05:36 delay(2000) updates the current humidity and temperature readings every 2 seconds.
05:43 This code is available in the Code files link of this tutorial.

You can download and use it.

05:51 Click on the compile button to verify your program.
05:55 A pop up window will appear to save the current program.

Save the program as DHT11.

06:05 Now click on upload button to upload the current program on Arduino.
06:11 We will see the output in the Serial monitor screen.
06:15 For this, click on the Tools menu and select Serial monitor.
06:21 The serial monitor window opens.
06:25 Temperature and humidity of the current place is displayed as expected.

Close the window.

06:33 Next we will see the output in the serial plotter.
06:37 Let us modify the program.
06:40 Comment the line Serial.print( “Temperature & Humidity :”); as shown.
06:47 This will not print the text Temperature and Humidity.
06:52 For plotting, we require only the values of temperature and humidity.
06:58 Let us upload the current program to see the results on serial plotter.
07:04 Click on the tools menu and select serial plotter.

The serial plotter window opens.

07:12 We can see two lines simultaneously plotting the points.
07:18 The blue line indicates the temperature which is around 28 to 30 °C.
07:25 The red line is the humidity reading which is near to 45%.
07:31 The readings will vary depending upon where the experiment is done.
07:36 Now cover the sensor with your hands and you will see the fluctuating readings.
07:43 Close the window.
07:45 It is useful for humidity readings between 20% to 80% with ∓5% RH i.e. (Relative Humidity)
07:56 It is useful for temperature readings between 0 to 50 °C with ∓2 °C
08:06 This brings us to the end of this tutorial. Let us summarize.
08:12 In this tutorial, we learnt about:

ADC i.e. Analog to Digital Conversion

08:19 ADC pins in Arduino

ADC Resolution

08:25 DHT11 Temperature and Humidity sensor

Serial Monitor and Serial Plotter

08:33 As an assignment:

Raise an alarm by glowing the built in LED pin 13 of the Arduino

08:41 Modify the above existing code.

Hint: Use If-else statement.

08:48 Add 1 or 2 °C to the temperature value that you get on the serial monitor.
08:55 To increase the temperature reading, cover the DHT11 sensor with your hands.
09:02 Refer to the Assignment link of this tutorial for the source code.
09:07 The video at the following link summarizes the Spoken Tutorial Project

Please download and watch it.

09:15 The Spoken Tutorial Project Team conducts workshops and gives certificates.
09:21 Please post your timed queries in this forum
09:27 Spoken Tutorial Project is funded by MHRD, Government of India
09:34 This tutorial has been contributed by FOSSEE and Spoken Tutorial Project, IIT Bombay.

And this is Saurabh signing off.

Thanks for joining.

Contributors and Content Editors

PoojaMoolya