Hello friends, i hope you all are fine and enjoying. Today i am going to share a new project which is Interfacing of temperature sensor LM35 with Arduino UNO in Proteus ISIS. Up till now i have worked on a number of projects regarding temperature sensor devices and i have been using 18B20 IC for temperature measurements and i have also uploaded a tutorial on Interfacing of Temperature Sensor 18B20 with Arduino.
Recently i got a chance to work on a project regarding temperature sensing but the condition of this project was that to use only LM35 for temperature detection. Then i get to know much about LM35, its operating conditions and features. So i thought i should also upload its tutorial as it will also be advantageous for you people. Because learning new things is always a charm. Another excellent thing about LM35 is that its quite cheap as compared to other temperature sensors like 18B20. And as its cheap that’s why its not very reliable, if you personally ask me then I will prefer 18B20 over LM35 because of its accurate readings. Now lets move towards its interfacing and its practical applications. First of all, let’s have a quick look on introduction of LM35 and then we will design it in Proteus ISIS.
Introduction of LM35 Temperature Sensor
LM35 is an electrical sensor which is used to measure temperature of its surrounding. It’s output is generated in the form of Electrical signal and this electrical signal is proportional to the input temperature, which it detects. Lm35 is much more sensitive then other temp measuring devices (not accurate) and that’s why it is most widely used temp detection device now-a-days. The internal circuitry of this IC is sealed and the external conditions will have no effect on the operation of LM35 and also its output is not effected under any conditions.LM35 is a 3 pin IC and it is used for temperature detection. The physical appearance of LM35 is shown in the image given below:
- As you can see in the above image that LM35 is a 3 pin IC.
- The first pin is used for supply from source. Since this IC operates on 5 volts so 5 volts from source are applied at this pin.
- The middle pin is its data pin and through this pin LM35 gives its output and when it measures a temerature then it generates a electrical signal proportional to that temperature and through this pin data is send to the external circuit.
- The last pin is for GND and through this pin GND is provided to LM35 IC.
Interfacing of temperature sensor LM35 with Arduino
As my today’s tutorial is about interfacing of LM35 with Arduino so let’s start it. I have connected LM35 with Arduino micro controller and it is shown in the image given below:
- As you can see in the above image, i have connected a LM35 IC with Arduino UNO micro controller.
- The VCC pin of LM35 is connected to +5V of Arduino board.
- Since LM35 generates Analogue value at its output pin that’s why I have connected this pin to ‘A0’ pin of Arduino board. This pin of Arduino board is used to receive analog data from external source.
- And the last pin is connected to the GND pin of Arduino board.
- After connecting the circuit, now upload the below code in your Arduino board.
#define TempPin A0
Serial.begin(9600); // Initializing Serial Port
TempValue = analogRead(TempPin); // Getting LM35 value and saving it in variable
float TempCel = ( TempValue/1024.0)*500; // Getting the celsius value from 10 bit analog value
float TempFarh = (TempCel*9)/5 + 32; // Converting Celsius into Fahrenhiet
Serial.print("TEMPRATURE in Celsius = "); //Displaying temperature in Celsius
Serial.print(" | ");
Serial.print("TEMPRATURE = "); // Displaying Temperature in Fahrenheit
Interfacing of temperature sensor LM35 with Arduino in Proteus ISIS
- Now let’s do this project in Proteus. Proteus also has LM35 sensor in its database which we are gonna use here.
- Moreover, we also know about Arduino Library for Proteus, so using that library we are gonna interface LM35 with Arduino in Proteus ISIS.
- First of all, design the same circuit as shown in above figure in Proteus software as shown below:
- Its the same circuit as we designed before, the only addition is the virtual terminal. We are using it to check the values. Its simply like the Serial Monitor we use in Arduino software.
- So, now using the above code, create the hex file and upload it in Proteus.
- Now hit run and if everything goes fine then you will get results as shown in below figure:
- You can see the Virtual Terminal is showing the same value as shown on the sensor which is 33 in Celsius and later I converted it to Fahrenheit.
Its quite simple and I have also commented the code but still if you find trouble then ask in comments and I will resolve them. Will meet in the next tutorial, till then take care!!! 🙂