14. Measure Temperature and send data to server
Overview of LM35 Temperature sensor:
The LM35 datasheet specifies that this ICs are precision
integrated-circuit temperature sensors, whose output voltage is linearly proportional
to the Celsius (Centigrade) temperature. The LM35 thus has an advantage over
linear temperature sensors calibrated in ˚ Kelvin, as the user is not required
to subtract a large constant voltage from its output to obtain convenient
Centi-grade scaling. The LM35 does not require any
external calibration or trimming to provide typical accuracies of ±1»4˚C at room temperature and ±3»4˚Cover a full −55 to +150˚C temperature range.
LM35 Features:
- Calibrated directly in o Celsius (Centigrade)
- Linear + 10.0 mV/oC scale factor
- 0.5oC accuracy guarantee able (at +25oC)
- Rated for full −55o to +150oC range
- Suitable for remote applications.
- Low cost due to wafer-level trimming
- Operates from 4 to 30 volts
- Less than 60 µA current drain
- Low self-heating, 0.08oC in still air
- Nonlinearity only ±1»4oC typical
- Low impedance output, 0.1 Ω for 1 mA load
Pin configuration of LM35 Sensor:
- Pin1(VCC): Supply voltage.
- Pin2(output): Output voltage.
- Pin3(GND): Ground.
Connection of LM35:
The Output pin of LM35 is Connected to A0 pin of ESP8266 Module, Ground
pin is connected to the ground pin of ESP8266 Module and VCC is connected to
3V3 Pin of ESP8266 module.
Program:
#include
<ESP8266WiFi.h> #include <WiFiClient.h>
#include <ESP8266WebServer.h>
const char* ssid=
"WI-FI CAMPUS"; //replace with your network crediants const char*
password="kuchbhi@123";
ESP8266WebServer
server(80); //instantiate server at port 80(http port) String
page="";
float data;
float analogValue,mv;
void setup(void)
{
pinMode(A0,INPUT); delay(1000);
Serial.begin(115200);
WiFi.begin(ssid,
password); //begin Wifi connection
Serial.println(""); //wait
for connection while(WiFi.status()!=WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("connected to"); Serial.println(ssid);
Serial.print("IP address:"); Serial.println(WiFi.localIP());
server.on("/",[](){
page="<h1>Sensor to Node MCU web
Server</h1><h3>Data:</h3><h4>"+String(data)+"</h4>";
server.send(200,"text/html",page);
});
server.begin();
Serial.println("Web
server started!");
}
void loop()
{
mv=(analogValue/1024.0)*3300; // to convert the analog value in millivolt
data=mv/100;
Comments
Post a Comment