Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| www-fuer-alle:co2-ampel [2020/11/20 14:17] – [Programmcode] biebl | www-fuer-alle:co2-ampel [2021/12/04 16:16] (aktuell) – [CO2-Ampel] biebl | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| * [[www-fuer-alle: | * [[www-fuer-alle: | ||
| * Fragen und Anregungen: [[ARDUINO@GymSAS.de]] | * Fragen und Anregungen: [[ARDUINO@GymSAS.de]] | ||
| + | * [[https:// | ||
| + | * [[info: | ||
| ===== Varianten ===== | ===== Varianten ===== | ||
| Zeile 12: | Zeile 14: | ||
| * LEDs, BUZZER, OLED-Anzeige und SD-Speicher (und UHR) | * LEDs, BUZZER, OLED-Anzeige und SD-Speicher (und UHR) | ||
| * LEDs, BUZZER, OLED-Anzeige und WLAN-Anbindung an einen Raspi mit Datenbank und Apache | * LEDs, BUZZER, OLED-Anzeige und WLAN-Anbindung an einen Raspi mit Datenbank und Apache | ||
| - | ===== fertige Ampel - LED mit Buzzer und OLED-Anzeige===== | ||
| - | {{: | + | * [[https:// |
| + | * [[https:// | ||
| + | ===== fertige Ampel - LED mit Buzzer und OLED-Anzeige (ohne UHR und SD-Karte)===== | ||
| + | |||
| + | {{: | ||
| * Nano 5 € | * Nano 5 € | ||
| Zeile 32: | Zeile 37: | ||
| * Vin - +5V | * Vin - +5V | ||
| - | * HD über einen Taster an Masse zur Kalibrierung | + | * HD über einen Taster |
| + | |||
| + | ===== Messbeispiel ===== | ||
| + | |||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== Breadboardvariante ===== | ||
| + | |||
| + | {{: | ||
| ===== Programmcode ===== | ===== Programmcode ===== | ||
| * Zusammenkopierter Sketch | * Zusammenkopierter Sketch | ||
| + | * ACHTUNG: der dieser Sketch ist für die kleinste (billigste) NANO-Variente zur groß. | ||
| * mit UHR und SD-Kartenschreiber | * mit UHR und SD-Kartenschreiber | ||
| * Aufgabe: Reduziere den Programmcode auf ein Minimum | * Aufgabe: Reduziere den Programmcode auf ein Minimum | ||
| Zeile 56: | Zeile 71: | ||
| RTC_DS3231 rtc; | RTC_DS3231 rtc; | ||
| File Messdaten; | File Messdaten; | ||
| + | |||
| + | int z = 0; // globale Zaehlvariable für die SD-Kartennutzung in der loop | ||
| / | / | ||
| Zeile 107: | Zeile 124: | ||
| oled.println(" | oled.println(" | ||
| oled.println(" | oled.println(" | ||
| + | tone(summer, | ||
| + | // delay(20); | ||
| + | noTone; | ||
| + | |||
| / | / | ||
| Zeile 116: | Zeile 137: | ||
| | | ||
| | | ||
| - | tone(summer, | + | noTone; |
| - | | + | |
| | | ||
| | | ||
| Zeile 165: | Zeile 185: | ||
| | | ||
| Serial.write(Messdaten.read()); | Serial.write(Messdaten.read()); | ||
| + | digitalWrite(blau, | ||
| + | digitalWrite(blau, | ||
| + | | ||
| } | } | ||
| | | ||
| Zeile 172: | Zeile 195: | ||
| Serial.println(" | Serial.println(" | ||
| } | } | ||
| + | digitalWrite(blau, | ||
| / | / | ||
| Zeile 181: | Zeile 205: | ||
| } // ENDE Setup | } // ENDE Setup | ||
| - | void loop() { | + | / |
| + | * | ||
| + | * LOOP | ||
| + | * | ||
| + | ***********************************************************************************************************************/ | ||
| + | |||
| + | void loop() { | ||
| + | z = z+1; | ||
| ppm_pwm = readCO2PWM(); | ppm_pwm = readCO2PWM(); | ||
| - | messWertSchreibenSD(); | + | |
| + | | ||
| + | z = 0; // Zaehler zurueck setzen | ||
| + | } | ||
| oledAnzeige(); | oledAnzeige(); | ||
| - | delay(schreibPause); | + | delay(schreibPause); |
| } | } | ||
| + | |||
| + | / | ||
| + | * | ||
| + | * LOOP ENDE | ||
| + | * | ||
| + | ************************************************************************************************************************/ | ||
| + | |||
| + | / | ||
| + | * * | ||
| + | * Funktionen und Prozeduren | ||
| + | * * | ||
| + | *********************************/ | ||
| / | / | ||
| Zeile 266: | Zeile 312: | ||
| oled.println(now.minute(), | oled.println(now.minute(), | ||
| ledRot(); | ledRot(); | ||
| - | | + | ledGruen(); |
| if (ppm_pwm > mittlereQualitaet) { ledGelb(); } | if (ppm_pwm > mittlereQualitaet) { ledGelb(); } | ||
| if (ppm_pwm > schlechteLuft) | if (ppm_pwm > schlechteLuft) | ||
| Zeile 285: | Zeile 331: | ||
| | | ||
| | | ||
| + | | ||
| + | | ||
| | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| | | ||
| } | } | ||