Pimp the code
Redone all The correct indentation and added some modifications
This commit is contained in:
parent
ba9513a33e
commit
8917b9aac6
@ -1,45 +1,43 @@
|
||||
#include <math.h>
|
||||
|
||||
#define WindSensorPin (2) // The pin location of the anemometer sensor
|
||||
#define WindSensorPin (2)
|
||||
|
||||
volatile unsigned long Rotations; // cup rotation counter used in interrupt routine
|
||||
volatile unsigned long ContactBounceTime; // Timer to avoid contact bounce in interrupt routine
|
||||
|
||||
float WindSpeed; // speed miles per hour
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600);
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600);
|
||||
|
||||
pinMode(WindSensorPin, INPUT);
|
||||
attachInterrupt(digitalPinToInterrupt(WindSensorPin), isr_rotation, FALLING);
|
||||
pinMode(WindSensorPin, INPUT);
|
||||
attachInterrupt(digitalPinToInterrupt(WindSensorPin), isr_rotation, FALLING);
|
||||
|
||||
Serial.println("Rotations\tKm/h");
|
||||
Serial.println("Rotations\tKm/h");
|
||||
}
|
||||
|
||||
void loop() {
|
||||
void loop()
|
||||
{
|
||||
Rotations = 0; // Set Rotations count to 0 ready for calculations
|
||||
|
||||
Rotations = 0; // Set Rotations count to 0 ready for calculations
|
||||
sei(); // Enables interrupts
|
||||
delay (3000); // Wait 3 seconds to average
|
||||
cli(); // Disable interrupts
|
||||
|
||||
sei(); // Enables interrupts
|
||||
delay (3000); // Wait 3 seconds to average
|
||||
cli(); // Disable interrupts
|
||||
// convert to mp/h using the formula V=P(2.25/T)
|
||||
// V = P(2.25/3) = P * 0.75
|
||||
|
||||
// convert to mp/h using the formula V=P(2.25/T)
|
||||
// V = P(2.25/3) = P * 0.75
|
||||
|
||||
WindSpeed = (Rotations * 0.75) * 1.609344;
|
||||
|
||||
Serial.print(Rotations); Serial.print("\t\t");
|
||||
Serial.println(WindSpeed);
|
||||
WindSpeed = (Rotations * 0.75) * 1.609344;
|
||||
|
||||
Serial.print(Rotations); Serial.print("\t\t");
|
||||
Serial.println(WindSpeed);
|
||||
}
|
||||
|
||||
// This is the function that the interrupt calls to increment the rotation count
|
||||
void isr_rotation () {
|
||||
|
||||
if ((millis() - ContactBounceTime) > 15 ) { // debounce the switch contact.
|
||||
Rotations++;
|
||||
ContactBounceTime = millis();
|
||||
}
|
||||
|
||||
}
|
||||
void isr_rotation()
|
||||
{
|
||||
if ((millis() - ContactBounceTime) > 15 ) // debounce the switch contact.
|
||||
{
|
||||
Rotations++;
|
||||
ContactBounceTime = millis();
|
||||
}
|
||||
}
|
||||
|
@ -3,17 +3,25 @@
|
||||
#include <math.h>
|
||||
#include <Servo.h>
|
||||
#define WindSensorPin (2)
|
||||
|
||||
|
||||
volatile unsigned long Rotations;
|
||||
volatile unsigned long ContactBounceTime;
|
||||
volatile unsigned long ContactBounceTime;
|
||||
|
||||
unsigned long duration;
|
||||
|
||||
float WindSpeed;
|
||||
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0E, 0xD4, 0x22 };// @dresse MAC de votre Arduino Ethernet
|
||||
byte ip[] = {10,66,240,59};
|
||||
//char server[] = "spe.sin.apo.free.fr"; // nom du site
|
||||
char server[] = "10.66.240.81"; // @PC en local quand on utilise WAMPSERVEUR
|
||||
float T = 0;
|
||||
|
||||
byte mac[] = {0x90, 0xA2, 0xDA, 0x0E, 0xD4, 0x22}; // @Arduino Ethernet
|
||||
byte ip[] = {10, 66, 240, 59};
|
||||
|
||||
char server[] = "10.66.240.81"; // @PC
|
||||
|
||||
String readString;
|
||||
Servo monServomoteur;
|
||||
boolean drapeau= false;
|
||||
boolean drapeau = false;
|
||||
|
||||
|
||||
int D;
|
||||
int LE;
|
||||
int LI;
|
||||
@ -21,316 +29,334 @@ int S;
|
||||
int AM;
|
||||
char c;
|
||||
int pin = 9;
|
||||
unsigned long duration;
|
||||
int position = 0 ;
|
||||
float T = 0;
|
||||
int F = 1/T;
|
||||
int position = 0;
|
||||
|
||||
int F = 1 / T;
|
||||
int Led = 7;
|
||||
int bLed = 3;
|
||||
int gLed = 4;
|
||||
int rLed = 6;
|
||||
int ST;
|
||||
|
||||
|
||||
EthernetClient client;
|
||||
|
||||
|
||||
void setup() {
|
||||
void setup()
|
||||
{
|
||||
pinMode(pin, INPUT);
|
||||
pinMode(bLed, OUTPUT);
|
||||
pinMode(gLed, OUTPUT);
|
||||
pinMode(rLed, OUTPUT);
|
||||
pinMode(Led, OUTPUT);
|
||||
monServomoteur.attach(8);
|
||||
Serial.begin(9600);// mise en marche liaison série
|
||||
Serial.begin(9600); // mise en marche liaison série
|
||||
//Ethernet.begin(mac, ip);
|
||||
if (Ethernet.begin(mac) == 0) {
|
||||
if (Ethernet.begin(mac) == 0)
|
||||
{
|
||||
Serial.println("Failed to configure Ethernet using DHCP");
|
||||
// no point in carrying on, so do nothing forevermore:
|
||||
for(;;);}
|
||||
delay(2000);
|
||||
Serial.println("connecting...");
|
||||
}
|
||||
|
||||
void loop(){
|
||||
//Luxmetre
|
||||
delay(500);
|
||||
duration = pulseIn(pin, HIGH);
|
||||
T = 2*duration;
|
||||
Serial.print("Luminosite (lux): ");
|
||||
F = 1000000*1/T;
|
||||
Serial.println(F, DEC);
|
||||
//Anemometre
|
||||
Rotations = 0;
|
||||
sei();
|
||||
delay (3000);
|
||||
cli();
|
||||
WindSpeed = (Rotations * 0.75) * 1.609344;
|
||||
Serial.print(Rotations); Serial.print("\t\t");
|
||||
Serial.println(WindSpeed);
|
||||
|
||||
envoieBDD();
|
||||
LectureBDD();
|
||||
Traitement();
|
||||
for (;;)
|
||||
;
|
||||
}
|
||||
delay(2000);
|
||||
Serial.println("connecting...");
|
||||
}
|
||||
void isr_rotation () {
|
||||
|
||||
if ((millis() - ContactBounceTime) > 15 ) { // debounce the switch contact.
|
||||
Rotations++;
|
||||
ContactBounceTime = millis();
|
||||
void loop()
|
||||
{
|
||||
//Luxmetre
|
||||
delay(500);
|
||||
duration = pulseIn(pin, HIGH);
|
||||
T = 2 * duration;
|
||||
Serial.print("Luminosite (lux): ");
|
||||
F = 1000000 * 1 / T;
|
||||
Serial.println(F, DEC);
|
||||
//Anemometre
|
||||
Rotations = 0;
|
||||
sei();
|
||||
delay(3000);
|
||||
cli();
|
||||
WindSpeed = (Rotations * 0.75) * 1.609344;
|
||||
Serial.print(Rotations);
|
||||
Serial.print("\t\t");
|
||||
Serial.println(WindSpeed);
|
||||
|
||||
envoieBDD();
|
||||
LectureBDD();
|
||||
Traitement();
|
||||
}
|
||||
|
||||
void isr_rotation()
|
||||
{
|
||||
|
||||
if ((millis() - ContactBounceTime) > 15)
|
||||
{ // debounce the switch contact.
|
||||
Rotations++;
|
||||
ContactBounceTime = millis();
|
||||
}
|
||||
}
|
||||
|
||||
void envoieBDD()
|
||||
{
|
||||
if (client.connect(server, 80)) {
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?lux=");
|
||||
client.print(F);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.print("GET /SLEGPI/ecriture.php?lux=");
|
||||
client.print(F);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
|
||||
if (client.connect(server, 80)) {
|
||||
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?vent=");
|
||||
client.print(WindSpeed);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
//Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.print("GET /SLEGPI/ecriture.php?vent=");
|
||||
client.print(WindSpeed);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
//Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
void LectureBDD()
|
||||
{
|
||||
EthernetServer server(80);
|
||||
server.available();
|
||||
EthernetClient client = server.available();
|
||||
EthernetServer server(80);
|
||||
server.available();
|
||||
EthernetClient client = server.available();
|
||||
if (client)
|
||||
{
|
||||
Serial.println("attente serveur");
|
||||
while (client.connected())
|
||||
Serial.println("attente serveur");
|
||||
while (client.connected())
|
||||
{
|
||||
client.println("z"); //pour la connexion
|
||||
while (client.available()) // Not if - you want to read all the data
|
||||
{
|
||||
char c = client.read();//lecture caractère par caractère
|
||||
//on concatène les caractères et on ne sélectionne qu'un string total de longueur < 40
|
||||
if (readString.length()<40 ) readString.concat(c);
|
||||
// détection de fin de ligne
|
||||
if (c == '\n' )
|
||||
{
|
||||
Serial.println (readString);//écriture des 40 caractères dans le terminal série
|
||||
// index des recherches des mots "ON" et "OUV" dans la chaine readString
|
||||
// si absent alors =-1
|
||||
LI = readString.indexOf('Y');
|
||||
LE = readString.indexOf('Z');
|
||||
S = readString.indexOf('OUV');
|
||||
AM = readString.indexOf('WW');
|
||||
readString="";//initialisation de la variable chaîne readString
|
||||
client.stop();//deconnection de l'arduino
|
||||
Serial.println();
|
||||
|
||||
|
||||
}
|
||||
client.println("z"); //pour la connexion
|
||||
while (client.available()) // Not if - you want to read all the data
|
||||
{
|
||||
char c = client.read(); //lecture caractère par caractère
|
||||
//on concatène les caractères et on ne sélectionne qu'un string total de longueur < 40
|
||||
if (readString.length() < 40)
|
||||
readString.concat(c);
|
||||
// détection de fin de ligne
|
||||
if (c == '\n')
|
||||
{
|
||||
Serial.println(readString); //écriture des 40 caractères dans le terminal série
|
||||
// index des recherches des mots "ON" et "OUV" dans la chaine readString
|
||||
// si absent alors =-1
|
||||
LI = readString.indexOf('Y');
|
||||
LE = readString.indexOf('Z');
|
||||
S = readString.indexOf('OUV');
|
||||
AM = readString.indexOf('WW');
|
||||
readString = ""; //initialisation de la variable chaîne readString
|
||||
client.stop(); //deconnection de l'arduino
|
||||
Serial.println();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Traitement()
|
||||
{
|
||||
if(AM >0){
|
||||
Serial.println("Mode automatique");
|
||||
if (AM > 0)
|
||||
{
|
||||
Serial.println("Mode automatique");
|
||||
|
||||
if(F <1000){
|
||||
digitalWrite(bLed, HIGH);
|
||||
digitalWrite(gLed, HIGH);
|
||||
digitalWrite(rLed, HIGH);
|
||||
digitalWrite(Led, LOW);
|
||||
if (drapeau==true)
|
||||
{
|
||||
drapeau=false;
|
||||
position=0;
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
D=1;
|
||||
ST=0;
|
||||
//allumer
|
||||
|
||||
if (client.connect(server, 80)) {
|
||||
Serial.println("connected");
|
||||
Serial.println("toto");
|
||||
client.print("GET /SLEGPI/ecriture.php?eInt=");
|
||||
client.print(D);
|
||||
Serial.println(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else {
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
if (client.connect(server, 80)) {
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?eExt=");
|
||||
client.print(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(1);
|
||||
Serial.println( "Connection: close" );
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
if (F < 1000)
|
||||
{
|
||||
digitalWrite(bLed, HIGH);
|
||||
digitalWrite(gLed, HIGH);
|
||||
digitalWrite(rLed, HIGH);
|
||||
digitalWrite(Led, LOW);
|
||||
if (drapeau == true)
|
||||
{
|
||||
drapeau = false;
|
||||
position = 0;
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
if (client.connect(server, 80)) {
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?Store=");
|
||||
client.print(ST);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(1);
|
||||
Serial.println( "Connection: close" );
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
D = 1;
|
||||
ST = 0;
|
||||
//allumer
|
||||
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
Serial.println("toto");
|
||||
client.print("GET /SLEGPI/ecriture.php?eInt=");
|
||||
client.print(D);
|
||||
Serial.println(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(F >1000){
|
||||
digitalWrite(bLed, LOW);
|
||||
digitalWrite(gLed, LOW);
|
||||
digitalWrite(rLed, LOW);
|
||||
digitalWrite(Led, HIGH);
|
||||
if (drapeau==false)
|
||||
{
|
||||
drapeau=true;
|
||||
for (int position = 0; position <= 180; position++)
|
||||
{
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
}
|
||||
D=0;
|
||||
ST=1;
|
||||
//et
|
||||
if (client.connect(server, 80)) {
|
||||
Serial.println("connected");
|
||||
Serial.println("toto");
|
||||
client.print("GET /SLEGPI/ecriture.php?eInt=");
|
||||
client.print(D);
|
||||
Serial.println(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else {
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
if (client.connect(server, 80)) {
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?eExt=");
|
||||
client.print(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(1);
|
||||
Serial.println( "Connection: close" );
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
else
|
||||
{
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?eExt=");
|
||||
client.print(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(1);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?Store=");
|
||||
client.print(ST);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(1);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
if (client.connect(server, 80)) {
|
||||
Serial.println("connected");
|
||||
Serial.println("toto");
|
||||
client.print("GET /SLEGPI/ecriture.php?Store=");
|
||||
client.print(ST);
|
||||
Serial.println(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
}
|
||||
} //Allumer les lumieres exterieurs
|
||||
else{
|
||||
Serial.println("Mode manuel");
|
||||
//Eteindre les lumieres exterieurs
|
||||
|
||||
|
||||
|
||||
if(LI >0){
|
||||
digitalWrite(Led, LOW);
|
||||
}//Allumer les lumieres exterieurs
|
||||
else{
|
||||
digitalWrite(Led, HIGH);
|
||||
}//Eteindre les lumieres exterieurs
|
||||
|
||||
|
||||
|
||||
if(LE >0){
|
||||
digitalWrite(bLed, HIGH);
|
||||
digitalWrite(gLed, HIGH);
|
||||
digitalWrite(rLed, HIGH);
|
||||
}//Allumer les lumieres exterieurs
|
||||
else{
|
||||
digitalWrite(bLed, LOW);
|
||||
digitalWrite(gLed, LOW);
|
||||
digitalWrite(rLed, LOW);
|
||||
}//Eteindre les lumieres exterieurs
|
||||
|
||||
|
||||
|
||||
if(S >0){
|
||||
if (drapeau==false)
|
||||
{
|
||||
drapeau=true;
|
||||
for (int position = 0; position <= 180; position++)
|
||||
{
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//Monter le Store
|
||||
else{
|
||||
|
||||
if (drapeau==true)
|
||||
{
|
||||
drapeau=false;
|
||||
position=0;
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
}
|
||||
}//Baisser le Store
|
||||
|
||||
if (F > 1000)
|
||||
{
|
||||
digitalWrite(bLed, LOW);
|
||||
digitalWrite(gLed, LOW);
|
||||
digitalWrite(rLed, LOW);
|
||||
digitalWrite(Led, HIGH);
|
||||
if (drapeau == false)
|
||||
{
|
||||
drapeau = true;
|
||||
for (int position = 0; position <= 180; position++)
|
||||
{
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
}
|
||||
D = 0;
|
||||
ST = 1;
|
||||
//et
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
Serial.println("toto");
|
||||
client.print("GET /SLEGPI/ecriture.php?eInt=");
|
||||
client.print(D);
|
||||
Serial.println(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else
|
||||
{
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?eExt=");
|
||||
client.print(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(1);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
Serial.println("toto");
|
||||
client.print("GET /SLEGPI/ecriture.php?Store=");
|
||||
client.print(ST);
|
||||
Serial.println(D);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 10.66.240.81");
|
||||
Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
}
|
||||
} //Allumer les lumieres exterieurs
|
||||
else
|
||||
{
|
||||
Serial.println("Mode manuel");
|
||||
//Eteindre les lumieres exterieurs
|
||||
|
||||
if (LI > 0)
|
||||
{
|
||||
digitalWrite(Led, LOW);
|
||||
} //Allumer les lumieres exterieurs
|
||||
else
|
||||
{
|
||||
digitalWrite(Led, HIGH);
|
||||
} //Eteindre les lumieres exterieurs
|
||||
|
||||
if (LE > 0)
|
||||
{
|
||||
digitalWrite(bLed, HIGH);
|
||||
digitalWrite(gLed, HIGH);
|
||||
digitalWrite(rLed, HIGH);
|
||||
} //Allumer les lumieres exterieurs
|
||||
else
|
||||
{
|
||||
digitalWrite(bLed, LOW);
|
||||
digitalWrite(gLed, LOW);
|
||||
digitalWrite(rLed, LOW);
|
||||
} //Eteindre les lumieres exterieurs
|
||||
|
||||
if (S > 0)
|
||||
{
|
||||
if (drapeau == false)
|
||||
{
|
||||
drapeau = true;
|
||||
for (int position = 0; position <= 180; position++)
|
||||
{
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Monter le Store
|
||||
else
|
||||
{
|
||||
|
||||
if (drapeau == true)
|
||||
{
|
||||
drapeau = false;
|
||||
position = 0;
|
||||
monServomoteur.write(position);
|
||||
delay(15);
|
||||
}
|
||||
}
|
||||
} //Baisser le Store
|
||||
}
|
||||
|
@ -1,17 +1,14 @@
|
||||
int pin = 10;
|
||||
unsigned long duration;
|
||||
float T = 0;
|
||||
|
||||
int pin = 10;
|
||||
int F = 1/T;
|
||||
int led = 9;
|
||||
int BLUE = 6;
|
||||
int GREEN = 3;
|
||||
int RED = 5;
|
||||
int brightness1 = 200;
|
||||
int brightness2 = 255;
|
||||
int brightness3 = 255;
|
||||
int brightness4 = 0;
|
||||
int brightness5 = 0;
|
||||
int brightness6 = 0;
|
||||
int lum1 = 255;
|
||||
int lum0 = 0;
|
||||
|
||||
void setup()
|
||||
{
|
||||
@ -25,24 +22,23 @@ void loop()
|
||||
{
|
||||
delay(1000);
|
||||
duration = pulseIn(pin, HIGH);
|
||||
T = 2*duration;
|
||||
Serial.print("Luminosite (lux): ");
|
||||
F = 1000000*1/T;
|
||||
Serial.println(F, DEC);
|
||||
T = 2*duration;
|
||||
Serial.print("Luminosite (lux): ");
|
||||
F = 1000000*1/T;
|
||||
Serial.println(F, DEC);
|
||||
|
||||
if (F >= 500)
|
||||
{
|
||||
digitalWrite(led, HIGH);
|
||||
analogWrite(RED, brightness4);
|
||||
analogWrite(GREEN, brightness5);
|
||||
analogWrite(BLUE, brightness6);
|
||||
}
|
||||
else
|
||||
{
|
||||
digitalWrite(led, LOW);
|
||||
analogWrite(RED, brightness1);
|
||||
analogWrite(GREEN, brightness2);
|
||||
analogWrite(BLUE, brightness3);
|
||||
}
|
||||
}
|
||||
|
||||
if (F >= 500)
|
||||
{
|
||||
digitalWrite(led, HIGH);
|
||||
analogWrite(RED, lum0);
|
||||
analogWrite(GREEN, lum0);
|
||||
analogWrite(BLUE, lum0);
|
||||
}
|
||||
else
|
||||
{
|
||||
digitalWrite(led, LOW);
|
||||
analogWrite(RED, lum1);
|
||||
analogWrite(GREEN, lum1);
|
||||
analogWrite(BLUE, lum1);
|
||||
}
|
||||
}
|
@ -2,12 +2,16 @@
|
||||
#include <Ethernet.h>
|
||||
#include <math.h>
|
||||
#define WindSensorPin (2)
|
||||
|
||||
|
||||
volatile unsigned long Rotations;
|
||||
volatile unsigned long ContactBounceTime;
|
||||
float WindSpeed;
|
||||
int pin = 9;
|
||||
|
||||
unsigned long duration;
|
||||
float T = 0;
|
||||
|
||||
int pin = 9;
|
||||
int F = 1/T;
|
||||
int led = 8;
|
||||
int BLUE = 6;
|
||||
@ -19,102 +23,113 @@ int brightness3 = 255;
|
||||
int brightness4 = 0;
|
||||
int brightness5 = 0;
|
||||
int brightness6 = 0;
|
||||
EthernetClient client;
|
||||
|
||||
EthernetClient client;
|
||||
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0E, 0xD4, 0x22 };
|
||||
byte ip[] = { 192, 168, 1, 102 }; //ip arduino
|
||||
|
||||
char server[] = "192.168.1.101"; //ip raspberry
|
||||
|
||||
void setup() {
|
||||
void setup()
|
||||
{
|
||||
|
||||
pinMode(WindSensorPin, INPUT);
|
||||
attachInterrupt(digitalPinToInterrupt(WindSensorPin), isr_rotation, FALLING);
|
||||
pinMode(WindSensorPin, INPUT);
|
||||
attachInterrupt(digitalPinToInterrupt(WindSensorPin), isr_rotation, FALLING);
|
||||
|
||||
Serial.println("Rotations\tKm/h");
|
||||
Serial.println("Rotations\tKm/h");
|
||||
|
||||
pinMode(led, OUTPUT);
|
||||
pinMode(pin, INPUT);
|
||||
Serial.begin(9600);
|
||||
digitalWrite(led, LOW);
|
||||
pinMode(led, OUTPUT);
|
||||
pinMode(pin, INPUT);
|
||||
Serial.begin(9600);
|
||||
digitalWrite(led, LOW);
|
||||
|
||||
if (Ethernet.begin(mac) == 0) {
|
||||
if (Ethernet.begin(mac) == 0)
|
||||
{
|
||||
Serial.println("Failed to configure Ethernet using DHCP");
|
||||
for(;;)
|
||||
for (;;)
|
||||
;
|
||||
}
|
||||
delay(500);
|
||||
Serial.println("connecting...");
|
||||
}
|
||||
|
||||
void loop() {
|
||||
|
||||
void loop()
|
||||
{
|
||||
|
||||
//luxmetre
|
||||
delay(500);
|
||||
duration = pulseIn(pin, HIGH);
|
||||
T = 2*duration;
|
||||
Serial.print("Luminosite (lux): ");
|
||||
F = 1000000*1/T;
|
||||
Serial.println(F, DEC);
|
||||
if (F >= 1000)
|
||||
{
|
||||
digitalWrite(led, HIGH);
|
||||
analogWrite(RED, brightness4);
|
||||
analogWrite(GREEN, brightness5);
|
||||
analogWrite(BLUE, brightness6);
|
||||
}
|
||||
else
|
||||
{
|
||||
digitalWrite(led, LOW);
|
||||
analogWrite(RED, brightness1);
|
||||
analogWrite(GREEN, brightness2);
|
||||
analogWrite(BLUE, brightness3);
|
||||
}
|
||||
|
||||
if (client.connect(server, 80)) {
|
||||
T = 2 * duration;
|
||||
Serial.print("Luminosite (lux): ");
|
||||
F = 1000000 * 1 / T;
|
||||
Serial.println(F, DEC);
|
||||
if (F >= 1000)
|
||||
{
|
||||
digitalWrite(led, HIGH);
|
||||
analogWrite(RED, brightness4);
|
||||
analogWrite(GREEN, brightness5);
|
||||
analogWrite(BLUE, brightness6);
|
||||
}
|
||||
else
|
||||
{
|
||||
digitalWrite(led, LOW);
|
||||
analogWrite(RED, brightness1);
|
||||
analogWrite(GREEN, brightness2);
|
||||
analogWrite(BLUE, brightness3);
|
||||
}
|
||||
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?lux=");
|
||||
client.print(F);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 192.168.1.101");
|
||||
//Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.print("GET /SLEGPI/ecriture.php?lux=");
|
||||
client.print(F);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 192.168.1.101");
|
||||
//Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
delay(500);
|
||||
delay(500);
|
||||
|
||||
//anémometre
|
||||
Rotations = 0;
|
||||
sei();
|
||||
delay (3000);
|
||||
cli();
|
||||
WindSpeed = (Rotations * 0.75) * 1.609344;
|
||||
Serial.print(Rotations); Serial.print("\t\t");
|
||||
Serial.println(WindSpeed);
|
||||
Rotations = 0;
|
||||
sei();
|
||||
delay(3000);
|
||||
cli();
|
||||
WindSpeed = (Rotations * 0.75) * 1.609344;
|
||||
Serial.print(Rotations);
|
||||
Serial.print("\t\t");
|
||||
Serial.println(WindSpeed);
|
||||
|
||||
if (client.connect(server, 80)) {
|
||||
if (client.connect(server, 80))
|
||||
{
|
||||
Serial.println("connected");
|
||||
client.print("GET /SLEGPI/ecriture.php?vent=");
|
||||
client.print(WindSpeed);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 192.168.1.101");
|
||||
//Serial.println(F);
|
||||
Serial.println( "Connection: close" );
|
||||
client.print("GET /SLEGPI/ecriture.php?vent=");
|
||||
client.print(WindSpeed);
|
||||
client.println(" HTTP/1.1");
|
||||
client.println("Host: 192.168.1.101");
|
||||
//Serial.println(F);
|
||||
Serial.println("Connection: close");
|
||||
client.println();
|
||||
client.stop();
|
||||
client.stop();
|
||||
client.println();
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
Serial.println("connection failed");
|
||||
}
|
||||
}
|
||||
void isr_rotation ()
|
||||
{
|
||||
if ((millis() - ContactBounceTime) > 15)
|
||||
{ // debounce the switch contact.
|
||||
Rotations++;
|
||||
ContactBounceTime = millis();
|
||||
}
|
||||
void isr_rotation () {
|
||||
|
||||
if ((millis() - ContactBounceTime) > 15 ) { // debounce the switch contact.
|
||||
Rotations++;
|
||||
ContactBounceTime = millis();
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,14 @@
|
||||
unsigned long duration;
|
||||
float T = 0;
|
||||
|
||||
int bLed = 3;
|
||||
int gLed = 4;
|
||||
int rLed = 6;
|
||||
int pin = 9;
|
||||
unsigned long duration;
|
||||
float T = 0;
|
||||
int F = 1/T;
|
||||
|
||||
void setup() {
|
||||
void setup()
|
||||
{
|
||||
// put your setup code here, to run once:
|
||||
pinMode(pin, INPUT);
|
||||
Serial.begin(9600);
|
||||
@ -15,28 +17,29 @@ void setup() {
|
||||
pinMode(rLed, OUTPUT);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
void loop()
|
||||
{
|
||||
// put your main code here, to run repeatedly:
|
||||
delay(1000);
|
||||
duration = pulseIn(pin, HIGH);
|
||||
T = 2*duration;
|
||||
T = 2 * duration;
|
||||
Serial.print("F: ");
|
||||
F = 1000000*1/T;
|
||||
F = 1000000 * 1 / T;
|
||||
Serial.println(F, DEC);
|
||||
|
||||
if (F<1000)
|
||||
{
|
||||
digitalWrite(bLed, HIGH);
|
||||
digitalWrite(gLed, HIGH);
|
||||
digitalWrite(rLed, HIGH);
|
||||
delay(1000);
|
||||
}
|
||||
if (F < 1000)
|
||||
{
|
||||
digitalWrite(bLed, HIGH);
|
||||
digitalWrite(gLed, HIGH);
|
||||
digitalWrite(rLed, HIGH);
|
||||
delay(1000);
|
||||
}
|
||||
|
||||
if (F>1000)
|
||||
{
|
||||
digitalWrite(bLed, LOW);
|
||||
digitalWrite(gLed, LOW);
|
||||
digitalWrite(rLed, LOW);
|
||||
delay(1000);
|
||||
if (F > 1000)
|
||||
{
|
||||
digitalWrite(bLed, LOW);
|
||||
digitalWrite(gLed, LOW);
|
||||
digitalWrite(rLed, LOW);
|
||||
delay(1000);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user