loading data from collector
This commit is contained in:
@ -26,11 +26,13 @@ void collector_setup(){
|
||||
// Initialize device.
|
||||
dht_in.begin();
|
||||
dht_out.begin();
|
||||
for( int a = 0; a < 4* WEEK*collector.bucket ; a = a + 1 ) {
|
||||
collector.add( random(10, 30) , random(10 , 30) );
|
||||
}
|
||||
}
|
||||
|
||||
void collector_loop(){
|
||||
delay(delayMS);
|
||||
collector.add(1 , 2);
|
||||
|
||||
// Get temperature event and print its value.
|
||||
Serial.print(F("Temperature inside: "));
|
||||
@ -41,18 +43,48 @@ void collector_loop(){
|
||||
Serial.println("°C");
|
||||
}
|
||||
|
||||
void Collector::add(float in , float out)
|
||||
{
|
||||
minute += in;
|
||||
counter++ ;
|
||||
if(counter % bucket){
|
||||
int at_week = counter / bucket;
|
||||
week_in[at_week] = minute / bucket;
|
||||
minute = 0;
|
||||
}
|
||||
if(counter % (bucket*bucket)){
|
||||
int at_week = counter / bucket;
|
||||
month_in[at_week] = minute / bucket;
|
||||
counter = 0;
|
||||
}
|
||||
void Collector::add(float in , float out)
|
||||
{
|
||||
minute += in;
|
||||
counter++ ;
|
||||
if(counter % bucket){
|
||||
int at_week = counter / bucket;
|
||||
week_in[at_week] = minute / bucket;
|
||||
minute = 0;
|
||||
}
|
||||
if(counter % (bucket*bucket)){
|
||||
int at_week = counter / bucket;
|
||||
month_in[at_week] = minute / bucket;
|
||||
counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
String Collector::one_week(float week[]){
|
||||
String data = "[";
|
||||
data += week[0];
|
||||
for( int a = 1; a < WEEK ; a = a + 1 ) {
|
||||
data += "," ;
|
||||
data += week[a] ;
|
||||
}
|
||||
return data + "]";
|
||||
}
|
||||
|
||||
String Collector::week_data(){
|
||||
String data = "[";
|
||||
return data + one_week(week_in) + "," + one_week(week_out) + "]";
|
||||
}
|
||||
|
||||
String Collector::one_month(float month[]){
|
||||
String data = "[";
|
||||
data += month[0];
|
||||
for( int a = 1; a < MONTH ; a = a + 1 ) {
|
||||
data += "," ;
|
||||
data += month[a] ;
|
||||
}
|
||||
return data + "]";
|
||||
}
|
||||
|
||||
String Collector::month_data(){
|
||||
String data = "[";
|
||||
return data + one_month(month_in) + "," + one_month(month_out) + "]";
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include "server.hpp"
|
||||
#include "collector.hpp"
|
||||
#include <FS.h>
|
||||
|
||||
#define DBG_OUTPUT_PORT Serial
|
||||
@ -37,38 +38,23 @@ bool handleFileRead(String path ){
|
||||
return false;
|
||||
}
|
||||
|
||||
void handleHours(){
|
||||
|
||||
void getWeekly() {
|
||||
Serial.println("Weekly start");
|
||||
String data = collector.week_data();
|
||||
Serial.println("Weekly end");
|
||||
server.send(200, "text/html", data);
|
||||
}
|
||||
|
||||
int LDRPin = A0;
|
||||
int LDRReading = 0;
|
||||
|
||||
int milisInterval = 2000;
|
||||
int count = 0;
|
||||
|
||||
void getData() {
|
||||
//This is a JSON formatted string that will be served. You can change the values to whatever like.
|
||||
// {"data":[{"dataValue":"1024"},{"dataValue":"23"}]} This is essentially what is will output you can add more if you like
|
||||
Serial.println("Data start");
|
||||
LDRReading = analogRead(LDRPin);
|
||||
String text2 = "{\"data\":[";
|
||||
text2 += "{\"dataValue\":\"";
|
||||
text2 += "LDRReading";
|
||||
text2 += "\"},";
|
||||
text2 += "{\"dataValue\":\"";
|
||||
text2 += "count";
|
||||
text2 += "\"}";
|
||||
text2 += "]}";
|
||||
Serial.println("Data end");
|
||||
server.send(200, "text/html", text2);
|
||||
count++;
|
||||
void getMonthly() {
|
||||
Serial.println("Monthly start");
|
||||
String data = collector.month_data();
|
||||
Serial.println("Monthly end");
|
||||
server.send(200, "text/html", data);
|
||||
}
|
||||
|
||||
void server_setup(){
|
||||
LittleFS.begin();
|
||||
server.on("/data", getData);
|
||||
server.on("/hour", handleHours);
|
||||
server.on("/weekly", getWeekly);
|
||||
server.on("/monthly", getMonthly);
|
||||
|
||||
server.begin();
|
||||
Serial.println("HTTP server started");
|
||||
|
Reference in New Issue
Block a user