Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
2
2021-010
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
2021-010
2021-010
Commits
b0eb3637
Commit
b0eb3637
authored
Jul 06, 2021
by
Wijekoon W.M.G.S-IT18130812
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'IT18132588' into 'master'
It18132588 See merge request
!5
parents
a0e71670
93b66091
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
197 additions
and
13 deletions
+197
-13
Esp-32-wifi_module/test1/test1.ino
Esp-32-wifi_module/test1/test1.ino
+197
-13
No files found.
Esp-32-wifi_module/test1/test1.ino
View file @
b0eb3637
#include <Adafruit_TSL2561_U.h>
#include <WiFi.h>
#include "ESPAsyncWebServer.h"
#include <Adafruit_Sensor.h>
#include <Wire.h>
const
int
ledPin1
=
32
;
const
int
ledPin2
=
33
;
const
char
*
ssid
=
"Lakshan|-_-|"
;
const
char
*
password
=
"641080748v"
;
AsyncWebServer
server
(
80
);
String
header
;
float
ir
;
float
nir
;
float
full
;
...
...
@@ -17,17 +25,42 @@ void configureSensor(void)
tsl
.
setGain
(
TSL2561_GAIN_1X
);
tsl
.
setIntegrationTime
(
TSL2561_INTEGRATIONTIME_101MS
);
}
void
setup
()
{
pinMode
(
ledPin1
,
OUTPUT
);
pinMode
(
ledPin2
,
OUTPUT
);
configureSensor
();
Serial
.
begin
(
9600
);
Wire
.
begin
();
}
String
readNir
()
{
uint16_t
y
=
0
;
uint16_t
z
=
0
;
tsl
.
getLuminosity
(
&
y
,
&
z
);
nir
=
z
;
Serial
.
println
(
nir
);
return
String
(
nir
);
}
String
readVis
()
{
uint16_t
y
=
0
;
uint16_t
z
=
0
;
tsl
.
getLuminosity
(
&
y
,
&
z
);
full
=
y
;
vis
=
full
-
nir
;
Serial
.
println
(
vis
);
return
String
(
vis
);
}
String
readNdvi
()
{
uint16_t
y
=
0
;
uint16_t
z
=
0
;
tsl
.
getLuminosity
(
&
y
,
&
z
);
NDVI
=
(
nir
-
vis
)
/
(
nir
+
vis
);
Serial
.
println
(
NDVI
);
return
String
(
NDVI
);
}
void
loop
()
{
void
loop
(){
digitalWrite
(
ledPin1
,
HIGH
);
digitalWrite
(
ledPin2
,
HIGH
);
/*
int ms = 500;
delay(ms);
digitalWrite (ledPin1, HIGH);
...
...
@@ -38,14 +71,165 @@ digitalWrite (ledPin2, HIGH);
tsl.getLuminosity(&y, &z);
full = y;
ir
=
z
;
vis
=
full
-
ir
;
nir
=
ir
;
nir =
z;
vis = full -
n
ir;
NDVI = (nir - vis)/(nir + vis);
Serial.print(nir); Serial.println(" 1 (600-1100nm)");
Serial.print(vis); Serial.println(" 1 (Visible)");
Serial.print(NDVI); Serial.println(" 1 (NDVI)");
Serial.println("");
// Display the HTML web page
client.println("<!DOCTYPE html><html>");
client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">");
client.println("<link rel=\"icon\" href=\"data:,\">");
client.println("<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}");
client.println("text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}");
// Web Page Heading
client.println("<body><h1>ESP32 Web Server</h1>");
// Display
client.println("<p><span>NIR</span><span>%nir%</span></p>");
client.println("<p><span>Visible</span><span>%vis%</span></p>");
client.println("<p><span>NDVI</span><span>%NDVI%</span></p>");
header = "";
// Close the connection
client.stop();
Serial.println("Client disconnected.");
Serial.println("");
}
*/
}
const
char
index_html
[]
PROGMEM
=
R"rawliteral(
<!DOCTYPE HTML><html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
<style>
html {
font-family: Arial;
display: inline-block;
margin: 0px auto;
text-align: center;
}
h2 { font-size: 3.0rem; }
p { font-size: 3.0rem; }
.units { font-size: 1.2rem; }
.dht-labels{
font-size: 1.5rem;
vertical-align:middle;
padding-bottom: 15px;
}
</style>
</head>
<body>
<h2>NDVI</h2>
<p>
<span class="dht-labels">NIR Reflection</span>
<span id="temperature">%nir%</span>
</p>
<p>
<span class="dht-labels">VIS reflection (RED)</span>
<span id="temperature">%vis%</span>
</p>
<p>
<span class="dht-labels">NDVI</span>
<span id="humidity">%ndvi%</span>
</p>
</body>
<script>
setInterval(function ( ) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("nir").innerHTML = this.responseText;
}
};
xhttp.open("GET", "/nir", true);
xhttp.send();
}, 10000 ) ;
setInterval(function ( ) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("vis").innerHTML = this.responseText;
}
};
xhttp.open("GET", "/vis", true);
xhttp.send();
}, 10000 ) ;
setInterval(function ( ) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("ndvi").innerHTML = this.responseText;
}
};
xhttp.open("GET", "/ndvi", true);
xhttp.send();
}, 10000 ) ;
</script>
</html>)rawliteral"
;
String
processor
(
const
String
&
var
){
//Serial.println(var);
if
(
var
==
"nir"
){
return
readNir
();
}
else
if
(
var
==
"vis"
){
return
readVis
();
}
else
if
(
var
==
"ndvi"
){
return
readNdvi
();
}
return
String
();
}
void
setup
()
{
pinMode
(
ledPin1
,
OUTPUT
);
pinMode
(
ledPin2
,
OUTPUT
);
configureSensor
();
Serial
.
begin
(
9600
);
Wire
.
begin
();
// Connect to Wi-Fi network with SSID and password
Serial
.
print
(
"Connecting to "
);
Serial
.
println
(
ssid
);
WiFi
.
begin
(
ssid
,
password
);
while
(
WiFi
.
status
()
!=
WL_CONNECTED
)
{
delay
(
500
);
Serial
.
print
(
"."
);
}
// Print local IP address and start web server
Serial
.
println
(
""
);
Serial
.
println
(
"WiFi connected."
);
Serial
.
println
(
"IP address: "
);
Serial
.
println
(
WiFi
.
localIP
());
server
.
on
(
"/"
,
HTTP_GET
,
[](
AsyncWebServerRequest
*
request
){
request
->
send_P
(
200
,
"text/html"
,
index_html
,
processor
);
});
server
.
on
(
"/nis"
,
HTTP_GET
,
[](
AsyncWebServerRequest
*
request
){
request
->
send_P
(
200
,
"text/plain"
,
readNir
().
c_str
());
});
server
.
on
(
"/vis"
,
HTTP_GET
,
[](
AsyncWebServerRequest
*
request
){
request
->
send_P
(
200
,
"text/plain"
,
readVis
().
c_str
());
});
server
.
on
(
"/ndvi"
,
HTTP_GET
,
[](
AsyncWebServerRequest
*
request
){
request
->
send_P
(
200
,
"text/plain"
,
readNdvi
().
c_str
());
});
server
.
begin
();
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment