Zpět na domů

Senzor CO₂ s analogovým manometrem na Tasmota

Článek popisuje sestavení analogového CO₂-manometru na bázi SenseAir S8, krokového motoru X27-168 a Tasmota. Podrobně: výběr komponent, úprava knihovny, 3D modely, integrace do chytrého domu. Kód a STL pod GPLv3.

Vlastní analogový senzor CO₂ pro chytrý dům
Advertisement 728x90

# Analogový CO₂ manometr na bázi krokového motoru a Tasmota

Bylo vyvinuto zařízení pro monitorování hladiny CO₂ s ukazatelem na ručičkovém displeji, který imituje automobilový nebo letecký manometr. Používá se senzor SenseAir S8, krokový motor X27-168 s ovladačem VID6608 a firmware Tasmota. Zařízení se integruje do systémů chytrého domu, podporuje webové rozhraní pro nastavení a OTA aktualizace. Komponenty jsou dostupné globálně, sestava nevyžaduje vzácné díly.

Požadavky na zařízení: přesné měření CO₂, teploty, vlhkosti, tlaku; analogový indikátor s podsvícením; varianty stylu (letecký/retro), podsvícení (žárovkové/RGB); provoz bez programátoru pro koncového uživatele.

Výběr komponent a mechaniky

Krokový motor X27-168 — standard pro automobilové přístrojové panely (OPEL, VAZ-2110). Rodina motorů zahrnuje varianty s nulovými senzory a modely s dvěma ručičkami. Ovladač VID6608 realizuje mikrokrokování (1/12 dělení, ~0.028° na krok), snižuje hluk a zvyšuje přesnost podle datasheetu.

Google AdInline article slot

Alternativy jako servomotory byly odmítnuty kvůli hluku, nízké přesnosti a malému úhlu otáčení. Analogové voltmetr nejsou vhodné: malý úhel (90°), křehkost, exotické náhradní díly. Hotové manometry z AliExpress jsou určeny pro street racing, nevhodné pro integraci.

Senzor CO₂ — SenseAir S8 (autorita v segmentu). Doplňkově: klimatické senzory (teplota, vlhkost, tlak). Bez senzorů zařízení funguje na příkazy z chytrého domu.

Prototypování ovladače:

Google AdInline article slot
  • Původně test přes H-Bridge: nízká přesnost, vysoký hluk.
  • S VID6608: plynulý pohyb, přirozená dynamika ručičky.

Integrace do Tasmota

Knihovna SwitecX25 pro ESP32 obsahuje chyby: přetečení char (unsigned v ESP32), absence timeoutů podle datasheetu VID6608. Byla vyvinuta nová knihovna na bázi SwitecX25:

  • Podpora pouze ovladačů typu VID6608 (přímé ovládání je neefektivní).
  • Nastavitelné křivky akcelerace.
  • Správné timeouty a mikrokrokování.
  • Integrace přímo do Tasmota (bez submódulů).

Tasmota byla vybrána pro hotovou podporu chytrého domu (MQTT, HTTP), webové rozhraní, OTA. Byla přidána podpora nástrojových krokových motorů.

Příklad základního nastavení v Tasmota (konfigurace přes webové rozhraní):

Google AdInline article slot
SwitecX25:
  enable: true
  driver: VID6608
  steps: 28800  # Plný otočný úhel
  acceleration: 500

Korpus a 3D tisk

Korpus na bázi dárkových budíků. Tištěné díly na Ender-3: stupnice (letecká/retro), ručička, držáky. Úhel otáčení ~300° zajišťuje čitelnost.

Varianty vybavení:

  • Styl: letecký (kovový vzhled) / retro (vintage).
  • Podsvícení: bez / žárovkové (imitace žárovky) / RGB (adresní páska).
  • Senzory: CO₂ + klima / pouze klima / pouze CO₂ / bez senzorů.

Sestava: PCB s ESP32, ovladačem, konektory. Globální dostupnost: motory ~2€, ovladače ~1.5€, SenseAir S8 ~25€.

Funkcionalita a kalibrace

Displej ukazuje aktuální CO₂ (400-2000 ppm, stupnice se zónami: norma/vyvetřit/kriticky). Aktualizace každých 5-10 s se srovnáním pro plynulost.

Algoritmus pohybu ručičky:

  • Výpočet kroku: target_pos = map(co2_ppm, 400, 2000, 0, max_steps).
  • Akcelerace/brzdění podle S-křivky pro realistickou setrvačnost.
  • Mikrokrokování minimalizuje vibrace.

Integrace: MQTT témata pro CO₂, temp, humidity. Webové rozhraní: grafy, kalibrace nuly, testovací režim.

Co je důležité

  • Přesnost: SenseAir S8 ±50 ppm +30°C, odezva <20 s.
  • Kompatibilita: Tasmota + Home Assistant/MQTT bez dalšího firmware.
  • Opakovatelnost: všechny díly na DigiKey/AliExpress, Gerber v repozitáři.
  • Licence: GNU GPLv3, kód/3D/STL otevřené.
  • Rozšíření: ručička ukazuje libovolnou metriku přes MQTT.

— Editorial Team

Advertisement 728x90

Číst dál