INT 21h

Hi, I am Vladimir Smagin, SysAdmin and Kaptain. Telegram Email / GIT / RSS / GPG

Датчики MQ-2 и MQ-7 для ESP8266 и Arduino

№ 11876 В разделах: Electronics ESP8266 от January 3rd, 2023,
В подшивках: , , ,

Судя по реакции на различные раздражители, а также принцип работы с ними они сделаны на основе одного и того же катализатора из оксида олова. Оба определили наличие газа из зажигалки, оба на отлично определили пары метанола, этанола и изопропанола. Выдыхаемый человеком воздух не влияет на них никак. Также оба были помещены под купол рядом со свечок, при затухании свеча должна была выделить угарный газ, незначительные изменения показал лишь 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 минут с прогревом в течении минуты.

Нет комментариев »

tm1637 clock with weather on esp8266 (esp-01)

№ 11433 В разделах: 3D printing Electronics ESP8266 от November 27th, 2021,
В подшивках: , , ,

3D models:
clock-white.stl
cable-stop.stl

А вот так выглядит после установки стекломаски из черной тонировочной пленки для авто

Нет комментариев »

Smooth LED blink on Arduino, ESP8266, etc

№ 11244 В разделах: Electronics ESP8266 Programming от March 8th, 2021,
В подшивках: ,

Human eye can’t see led switching because its too fast, same effect used in old TV and displays with CRT, most of 7-segment indicators and other things. Change timings between on and off state to change brightness and effect duration.

int sv_max=20;
int sv_min=0;

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  int pause_on=sv_min;
  int pause_off=sv_max;
  // Smooth turn on
  while(pause_on < sv_max) {
    pause_on++;
    pause_off--;
    digitalWrite(LED_BUILTIN, HIGH);
    delay(pause_on);
    digitalWrite(LED_BUILTIN, LOW);
    delay(pause_off);
  }
  pause_on=sv_max;
  pause_off=sv_min;
  // Smooth turn off
  while(pause_on > sv_min) {
    pause_on--;
    pause_off++;
    digitalWrite(LED_BUILTIN, HIGH);
    delay(pause_on);
    digitalWrite(LED_BUILTIN, LOW);
    delay(pause_off);
  }
}

Нет комментариев »

Weather and time on matrix display

№ 10974. В разделах: Electronics ESP8266 от April 2nd, 2020

В подшивках: , , ,

Wifi manager for ESP8266

№ 9737 В разделах: Electronics ESP8266 Programming от February 13th, 2019,
В подшивках: , ,

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: Lysistrata had a good idea.