Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
75 views5 pages

Light Intensity Monitor with WebAPI

The document describes an experiment to monitor light intensity and plot the data in a graph on a web API or ThingSpeak platform. The experiment uses an Arduino Uno, ESP8266 WiFi module, photoresistor, and resistors to measure light intensity with a photoresistor. The intensity values are sent via HTTP requests to ThingSpeak where a graph is generated in real-time. The output graph varies according to the changing light intensity measured by the photoresistor.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
75 views5 pages

Light Intensity Monitor with WebAPI

The document describes an experiment to monitor light intensity and plot the data in a graph on a web API or ThingSpeak platform. The experiment uses an Arduino Uno, ESP8266 WiFi module, photoresistor, and resistors to measure light intensity with a photoresistor. The intensity values are sent via HTTP requests to ThingSpeak where a graph is generated in real-time. The output graph varies according to the changing light intensity measured by the photoresistor.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Reg no: 19BEC1402 Lab_Experiment_3

Name: Vivekanandan V Date: 27/08/2021

Light Intensity Monitor using WebAPI

Aim:

To monitor the Intensity of Light and plot the data as a Graph in webAPI or Thinkspeak.

Components:

 Arduino Uno R3
 Multimeter
 Wifi Module ESP-8266
 Photoresistor
 Resistors x3
 Wires

Procedure:

 Open Tinkercad online and create account using Email


 Select circuits under the side panel
 Change file name
 Open the Components library and draw the required components into the Workspace
 Connect them properly
 Open code in txt format and give the appropriate code.
 Open Thinkspace Webpage
 Create a Channel
 Copy the Unique API key and Paste it in the code
 Stimulate
Circuit:

Code:

String ssid = "Simulator Wifi";


String password = ""; // Our virtual wifi has no password (so dont do your banking stuff on this network)
String host = "api.thingspeak.com";
const int httpPort = 80;

// provide your API key below in between thr '=' sign and '&' sign
String uri = "/update?api_key=9W0UVIKCXZWTNDFO&field1=";

int setupESP8266(void)
{
// Start our ESP8266 Serial Communication
Serial.begin(115200); // Serial connection over USB to computer
Serial.println("AT"); // Serial connection on Tx / Rx port to ESP8266
delay(10); //Wait a little for the ESP to respond
if (!Serial.find("OK"))
return 1;

// Connect to 123D Circuits Simulator Wifi


Serial.println("AT+CWJAP=\"" + ssid + "\",\"" + password + "\"");
delay(10); // Wait a little for the ESP to respond
if (!Serial.find("OK")) return 2;
// Open TCP connection to the host:
Serial.println("AT+CIPSTART=\"TCP\",\"" + host + "\"," + httpPort);
delay(50); // Wait a little for the ESP to respond
if (!Serial.find("OK"))
return 3;
return 0;
}
int anydata(void)
{
int temp = map(analogRead(A0),20,358,-40,125);
// Construct our HTTP call
String httpPacket = "GET " + uri + String(temp) + " HTTP/1.1\r\nHost: " + host +"\r\n\r\n";
int length = httpPacket.length();
// Send our message length
Serial.print("AT+CIPSEND=");
Serial.println(length);
delay(10); // Wait a little for the ESP to respond
if (!Serial.find(">"))
return -1;
// Send our http request
Serial.print(httpPacket);
delay(10); // Wait a little for the ESP to respond
if(!Serial.find("SEND OK\r\n"))
return 0;
}
void setup()
{
setupESP8266();
int pin= 7;
pinMode(pin,OUTPUT);
}
void loop()
{
anydata();
delay(100);
Output:

Graph:
Inference:

We can infer that the graph keeps on varying for different light intensity adjusted in the photoresistor,
also this adjustment voltage can be measured in the multimeter connected to it.

Result:

Hence the output has been obtained and verified. The graph has been plotted in WebAPI or thinkspeak.

You might also like