72 lines
2.9 KiB
Markdown
72 lines
2.9 KiB
Markdown
# CO Sensor
|
|
|
|
## Tagebuch
|
|
10.12.17: MQ-7 Sensor, Stecksockel + Platine bestellt
|
|
|
|
## ToDo
|
|
|
|
Aufbau mit wemos D1 mini und Dual Board
|
|
|
|
1. ggf Temperatur/Luftfeuchte Korrektur
|
|
* Brauche Datasheet sowie Berechnung der Kurven
|
|
2. Low Heat bei bestimmten Umgebungswerten wegen Zerstörungsgefahr durch Wasser
|
|
3. SHT30 Shield (Pin D1 und D2), genauer und einfach anzusteuern
|
|
4. Entscheidung über OLED oder RGB LED
|
|
* OLED Display wird ebenfalls über I2C angesteuert (Pin D1 und D2)
|
|
3. Lokaler Alarm
|
|
* Buzzer Board (Pin D5)
|
|
4. globaler Alarm
|
|
* mqtt/ESP Now
|
|
|
|
## Notizen
|
|
* Spannungsversorgung über NPN --geht da 0,7V Drop --> N-MOSFET https://arduinodiy.wordpress.com/2012/05/02/using-mosfets-with-ttl-levels/
|
|
* IRLML6344 bestellt
|
|
* Kalibrierung?
|
|
* Zwei Möglichkeiten, entweder Clean Air Kalibrierung oder 100ppm Wert + Messgerät
|
|
* ESP8266 Speichern der Kalibrierung im RTC
|
|
* Austausch des Sensors?
|
|
* Platine enthält Pinlöcher für den Sensor sowie den Sockel
|
|
* Spannungsteiler für Ausgangsspannung MQ7
|
|
* Zusätzlicher Ausgang plus Spannungsteiler für 1V (ESP8266)
|
|
* 560k/150k -> 1.056V --> Kondensator benötigt? http://esp8266-projects.org/2016/08/esp8266-internal-adc-2-the-easy-way-example/
|
|
* 3k/820 -> 1.073V --> ggf. zu gering
|
|
* Spannungsteiler für Wemos Board nicht notwendig -> 150kOhm in Reihe zum eingebauten (110k/220k) Spannungsteiler
|
|
* ggf. Kondensator für den Spannungsteiler
|
|
* Regressionsgerade bestimmen
|
|
* http://davidegironi.blogspot.de/2017/07/mq-gas-sensor-correlation-function.html
|
|
* http://davidegironi.blogspot.de/2017/05/mq-gas-sensor-correlation-function.html
|
|
* Achsen sind vertauscht sinnvoller
|
|
* beide Skalen logarithmisch
|
|
* mittels: https://apps.automeris.io/wpd/ die punkte bestimmen
|
|
* power-regresseion berechnen: http://keisan.casio.com/exec/system/14059931777261
|
|
* Min/Max bestimmen
|
|
|
|
Die originale Platine muss angepasst werden. Ohne weiteres nicht zu verwenden. Zerstört ggf. den Sensor an sich
|
|
## Links
|
|
* https://forum.arduino.cc/index.php?topic=294085.0
|
|
* http://www.instructables.com/id/Arduino-CO-Monitor-Using-MQ-7-Sensor/
|
|
* http://www.savvysolutions.info/savvymicrocontrollersolutions/index.php?sensor=mq-7-gas-sensors
|
|
* http://www.savvysolutions.info/savvymicrocontrollersolutions/arduino.php?topic=arduino-mq7-CO-gas-sensor
|
|
* https://www.winsen-sensor.com/sensors/co-sensor/mq-7b.html
|
|
|
|
|
|
## Ablauf
|
|
1. Init System
|
|
2. BurnIn Werte prüfen
|
|
* Falls nicht vorhanden, BurnIn beginnen
|
|
3. Umgebungswerte messen
|
|
4. Prüfen ob Betrieb von Sensor sicher ist ( insbesondere Wasser)
|
|
* Preheat nutzen
|
|
5. Clean Air Kalibrierung durchführen
|
|
* BurnIn Werte korrelieren
|
|
6. Nyquist-Theorem einhalten
|
|
7. Vergleich mit vorherigen Werten im EEPROM auf Abweichung
|
|
8. Warnung bei zu großen Abweichungen, Hinweis auf Alterung
|
|
|
|
9. Übergang zum Regelbetrieb
|
|
* Messwertreihe vorhalten
|
|
* Zu schnelle Wertänderungen lösen Warnung aus
|
|
* Zu hoher Wert löst Warnung aus
|
|
* Meldung an übergeordnete Instanz bei Warnung
|
|
|