(update property name) |
|||
Ligne 1 : | Ligne 1 : | ||
− | {{ | + | {{Tuto Details |
|Main_Picture=6ème_Sens_IMG_1777.jpg | |Main_Picture=6ème_Sens_IMG_1777.jpg | ||
|Licences=Attribution (CC BY) | |Licences=Attribution (CC BY) | ||
Ligne 15 : | Ligne 15 : | ||
|IsTranslation=0 | |IsTranslation=0 | ||
}} | }} | ||
− | {{ | + | {{Introduction |
|Introduction=Notre projet 6emesens a pour objectif de simplifier l’accès à la culture makers à l’école, de manière frugale, participative et impliquante, en privilégiant l’initiative locale (car c’est compliqué d’installer à grande echelle un objet). Au delà de la techno (perfectible , qui s’améliora, même si la volonté de simplicité est le fil rouge ), il s’agit aussi d’une démarche visant à répondre à un pb : changer les comportements ( ici, aérer) . Nous avons aussi chercher à identifier un pb , et rechercher une solution autour de l’approche makers dans l’éducation. | |Introduction=Notre projet 6emesens a pour objectif de simplifier l’accès à la culture makers à l’école, de manière frugale, participative et impliquante, en privilégiant l’initiative locale (car c’est compliqué d’installer à grande echelle un objet). Au delà de la techno (perfectible , qui s’améliora, même si la volonté de simplicité est le fil rouge ), il s’agit aussi d’une démarche visant à répondre à un pb : changer les comportements ( ici, aérer) . Nous avons aussi chercher à identifier un pb , et rechercher une solution autour de l’approche makers dans l’éducation. | ||
}} | }} | ||
− | {{ | + | {{Materials |
|Material= | |Material= | ||
|Tools= | |Tools= | ||
− | |Tuto_Attachments={{ | + | |Tuto_Attachments={{Tuto Attachments |
|Attachment=Project-Petit ecran-graf-projet.ino | |Attachment=Project-Petit ecran-graf-projet.ino | ||
}} | }} | ||
− | |ExternalAttachmentsLinks={{ | + | |ExternalAttachmentsLinks={{ExternalAttachmentsLinks |
|ExternalAttachmentsLinks=https://youtu.be/p9sslYQ4Ehw | |ExternalAttachmentsLinks=https://youtu.be/p9sslYQ4Ehw | ||
}} | }} | ||
}} | }} | ||
− | {{ | + | {{Separator}} |
− | {{ | + | {{Tuto Step |
|Step_Title= | |Step_Title= | ||
|Step_Content= | |Step_Content= | ||
}} | }} | ||
− | {{ | + | {{Notes |
|Notes=/* | |Notes=/* | ||
Ligne 292 : | Ligne 292 : | ||
} | } | ||
}} | }} | ||
− | {{ | + | {{Tuto Status |
|Complete=Draft | |Complete=Draft | ||
}} | }} |
Auteur Maxwikifab | Dernière modification 9/12/2019 par Clementflipo
Education, transparence et simplicité, arduino 6ème_Sens_IMG_1777.jpg en none Technique 0
/*
*Qualité de l’air avec arduino et capteur Grove v1.3
*Le capteur doit être branché quelques heures avant la première utilisation
*La calibration se fait par laisser le capteur a l’extérieur pendant au moins 20 min
*/
//----------------------------------------------------------------------------------------
// Inclusion des librairies pour OLED
//--------------------------------------
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
//--------------------------------------
//Declaration des variables
//--------------------------------------
#define redLed 13
#define greenLed 8
#define orangeLed 7
#define capteur A0
#define OLED_RESET 4
int valeurCapteur = 0;
String qualite = "";
int volt;
// on déclare notre LCD.
Adafruit_SSD1306 display(OLED_RESET);
void setup() {
Serial.begin(9600);// initialise la communication avec l'ordinateur
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // // initialisation de l'ecran OLED
display.display();
display.clearDisplay(); // Netoie l’ecran
pinMode(redLed, OUTPUT);// indique que la broche redLed est une sortie :
pinMode(greenLed, OUTPUT);// indique que la broche greenLed est une sortie :
pinMode(orangeLed, OUTPUT);// indique que la broche orangeLed est une sortie :
pinMode(capteur, INPUT);// indique que la broche du capteur de la qualité de l'air redLed est une entrée :
display.setCursor(0,0);// On place le curseur en 0,0
display.setTextSize(2);// On définie la taille du texte
display.setTextColor(WHITE);// On définie la couleur du texte
display.println("Heating");
//display.setCursor(0,1);
// display.println("ATTENDRE");
display.display();
delay(20000);
display.clearDisplay();
}
void loop() {
// put your main code here, to run repeatedly:
valeurCapteur = analogRead(capteur);
//volt = (valeurCapteur*5)/1024;
int grafX = 0;
if (valeurCapteur<=45) {
//digitalWrite(greenLed, HIGH);
qualite = "Tout va bien";
Serial.println(qualite);
delay(1000);
display.setCursor(0,0);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("OK");
display.println(valeurCapteur);
grafX = map(valeurCapteur, 0, 135, 0, 127);
display.fillRect(0, 20,grafX, 5, WHITE);
display.display();
display.clearDisplay();
digitalWrite(13, LOW);
}
else if (valeurCapteur>45&& valeurCapteur<=70){
//digitalWrite(greenLed, HIGH);
qualite = "Situation tolerable ";
Serial.println(qualite);
delay(1000);
display.setCursor(0,0);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("AH AH");
display.println(valeurCapteur);
grafX = map(valeurCapteur, 0, 135, 0, 127);
display.fillRect(0, 20,grafX, 5, WHITE);
display.display();
display.clearDisplay();
digitalWrite(13, LOW);
}
else if (valeurCapteur>70&& valeurCapteur<=100){
//digitalWrite(orangeLed, HIGH);
qualite = "Etat mauvais";
Serial.println(qualite);
delay(1000);
display.setCursor(0,0);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("Ca chauffe");
display.println(valeurCapteur);
grafX = map(valeurCapteur, 0, 135, 0, 127);
display.fillRect(0, 20,grafX, 5, WHITE);
display.display();
display.clearDisplay();
digitalWrite(13, LOW);
}
else if (valeurCapteur>100&& valeurCapteur<=135){
//digitalWrite(redLed, HIGH);
qualite = "Ouvrir la fenetre";
Serial.println(qualite);
delay(1000);
display.setCursor(0,0);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("Ouvrez");
display.println(valeurCapteur);
grafX = map(valeurCapteur, 0, 135, 0, 127);
display.fillRect(0, 20,grafX, 5, WHITE);
display.display();
display.clearDisplay();
digitalWrite(13, LOW);
}
else if (valeurCapteur>135){
//digitalWrite(redLed, HIGH);
qualite = "Sortez";
Serial.println(qualite);
delay(1000);
display.setCursor(0,0);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println("Sortez");
display.println(valeurCapteur);
grafX = map(valeurCapteur, 0, 135, 0, 127);
display.fillRect(0, 20,grafX, 5, WHITE);
display.display();
display.clearDisplay();
digitalWrite(13, HIGH);
}
}
Draft
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #