№ 11876 В разделах: Electronics
ESP8266
от January 3rd, 2023,
В подшивках: Arduino, ESP8266, Sensors, Smart Home
Судя по реакции на различные раздражители, а также принцип работы с ними они сделаны на основе одного и того же катализатора из оксида олова. Оба определили наличие газа из зажигалки, оба на отлично определили пары метанола, этанола и изопропанола. Выдыхаемый человеком воздух не влияет на них никак. Также оба были помещены под купол рядом со свечок, при затухании свеча должна была выделить угарный газ, незначительные изменения показал лишь MQ-7.
У обоих датчиков есть цифровой выход с низким и высоким уровнем сигнала и аналоговый выход для АЦП. Понятно дело, что цифровой выход считать очень просто и часто даже не нужен МК чтобы сработала какая-то логика, например, через реле включить сигнализацию, а вот с аналоговой ногой уже не все так просто. Уровень выходного аналогового сигнала регулируется переменным сопротивлением под приемлемый уровень начального сигнала. У меня отладочная плата на ESP8266, но и для всяких андурин принцип работы ровно тот же. Никаких специальных библиотек не требуется, только использовать встроенный АЦП.
#define MQAnalogPin A0 int gasLevelWarning = 300; void setup() { Serial.begin(9600); } void loop() { int gasLevel = analogRead(MQAnalogPin); Serial.print(gasLevel); if (gasLevel > gasLevelWarning) { Serial.println(": WARNING! GAS LEAK!"); } else { Serial.println(": clean"); } delay(50); }
Тестируем
Я не уверен, что из-за нагревательного элемента внутри эти датчики можно держать включенными постоянно иначе он может выйти из строя, нужно будет сделать подключение через оптрон или транзистор и опрашивать, скажем, раз в 15-30 минут с прогревом в течении минуты.
№ 10029 В разделах: 3D printing
Electronics
от May 11th, 2019,
В подшивках: 3D модель, Smart Home
https://www.thingiverse.com/thing:3621513
Под 2-канальное реле
https://www.thingiverse.com/thing:3625989
Ссылки по теме:
№ 9737 В разделах: Electronics
ESP8266
Programming
от February 13th, 2019,
В подшивках: ESP8266, Smart Home, WifiManager
In Arduino IDE library you can find wifi manager (https://github.com/tzapu/WiFiManager). It will help you to connect your device to you home wifi without hardcoding credentials.
My projects where used wifi managers:
If you interested check whole tag.
Sample code:
#include <ESP8266WiFi.h> #include <DNSServer.h> #include <ESP8266WebServer.h> #include <WiFiManager.h> void setup() { .... WiFiManager wifiManager; wifiManager.autoConnect("my-device-name"); .... }
More examples here.
Fortune cookie: Between two evils, I always pick the one I never tried before. -- Mae West