Servo: malý motor, který ví, kam se má otočit

Motorů a pohonů existuje spousta. Některé se jen točí, jiné potřebují složité řízení a u některých musíme řešit přesné počítání kroků. Servo je proti tomu docela příjemná součástka. Neříkáme mu totiž jen „toč se“, ale rovnou „natoč se sem“.

Právě proto jsou serva oblíbená v modelářství, robotice, jednoduchých mechanických projektech a různých bastlících pokusech. Hodí se všude tam, kde potřebujeme něco pootočit do určité polohy. Třeba klapku, páčku, ukazatel, ručičku, zámek, přepínač nebo malý mechanický mechanismus.

V článku se podíváme na to, co servo vlastně je, jak funguje, jak ho připojit k Arduinu a na co si dát pozor, aby se místo hezkého pohybu nedostavilo jen cukání, bzučení a resetování desky.

levné mikro servo SG90
Pokračování textu Servo: malý motor, který ví, kam se má otočit

Rotační enkodér s tlačítkem a Arduino

Otočný ovladač zná asi každý. Najdeme ho na rádiích, zesilovačích, měřicích přístrojích, 3D tiskárnách nebo v různých menu elektronických zařízení. Na první pohled může rotační enkodér vypadat trochu jako obyčejný potenciometr, ale funguje úplně jinak.

Potenciometr má začátek, konec a podle natočení mění odpor. Rotační enkodér se může otáčet stále dokola a neposílá Arduinu přímo žádnou analogovou hodnotu. Místo toho při otáčení vytváří impulzy, ze kterých si Arduino dokáže spočítat, jestli se ovladačem otáčí doprava nebo doleva.

V tomto článku se podíváme na jednoduchý mechanický rotační enkodér s integrovaným tlačítkem. Nebude to hotový modul na DPS, ale samotná součástka. To je důležité, protože takový enkodér nemá vývody VCC, GND, CLK, DT a SW jako hotové moduly. Má jen kontakty samotného enkodéru a zvlášť kontakty tlačítka.

Pokračování textu Rotační enkodér s tlačítkem a Arduino

MeshCore 9. díl – repeater SenseCAP Solar Node P1

Už delší dobu si hraju s myšlenkou rozšíření lokální MeshCore sítě v mém okolí. Ruční zařízení fungují dobře, ale jakmile je člověk mezi domy, za kopcem nebo nízko nad zemí, dosah je samozřejmě omezený. Největší rozdíl u podobných sítí většinou neudělá vyšší výkon, ale dobré umístění antény.

Proto vznikl plán umístit trvalý repeater na střechu paneláku. Výhoda je jasná – vysoké místo, dobrý výhled do okolí a možnost pokrýt větší část města. Původně jsem chtěl na střechu umístit repeater vlastní konstrukce ale nakonec jsem se rozhodl o objednání hotového řešení. Když už má být zařízení na domě dlouhodobě, mělo by vypadat rozumně, být mechanicky bezpečné a co nejméně nápadné.

Po chvíli hledání jsem narazil na hotový solární uzel SenseCAP Solar Node P1 od Seeed Studio. Prodává se jako komunikační uzel pro Meshtastic, ale hardwarově je to univerzální LoRa zařízení postavené na modulu XIAO nRF52840 Plus a rádiovém modulu Wio-SX1262. Má integrovaný 5W solární panel, LoRa čip SX1262, Bluetooth 5.0, anténu 2 dBi, podporu čtyř akumulátorů 18650 a rozměry zhruba 191 × 201 × 42 mm.

Pokračování textu MeshCore 9. díl – repeater SenseCAP Solar Node P1

Měření proudu a napětí s Arduinem: senzor INA219

Senzorů a modulů pro Arduino existuje opravdu hodně. Některé měří teplotu, jiné vlhkost, světlo, tlak nebo vzdálenost. Tentokrát se podíváme na modul INA219, který slouží k měření napětí, proudu a výkonu.

Na první pohled je to malý nenápadný modul s několika piny, ale pro různé pokusy je hodně užitečný. Díky němu můžeme zjistit, kolik proudu odebírá LED pásek, motor, Arduino projekt, malý solární panel nebo třeba zařízení napájené z baterie.

Velká výhoda INA219 je v tom, že neposílá do Arduina jen nějakou neurčitou analogovou hodnotu. Komunikuje přes sběrnici I2C a hodnoty dostaneme rovnou jako napětí, proud a výkon. Pro začátečníka je to tedy docela jednoduchý způsob, jak si začít hrát s měřením spotřeby.

V článku si ukážeme, co modul INA219 umí, jak se zapojuje, proč se musí připojit do série se zátěží a jak si naměřené hodnoty zobrazit v Arduino IDE.

modul od Laskakitu
Pokračování textu Měření proudu a napětí s Arduinem: senzor INA219

Měření světla s Arduinem: senzor VEML7700

Senzorů pro Arduino existuje spousta. Některé měří teplotu, jiné vlhkost, tlak, proud, napětí nebo třeba vzdálenost. Tentokrát se podíváme na senzor VEML7700, který slouží k měření intenzity okolního světla.

Na první pohled je to malý a nenápadný modul, ale pro různé pokusy je docela zajímavý. Na rozdíl od obyčejného fotorezistoru nevrací jen neurčitou hodnotu typu „víc světla / míň světla“, ale umí pracovat přímo s hodnotou v luxech. Díky tomu se dají naměřené hodnoty mnohem lépe porovnávat.

V článku si ukážeme, co VEML7700 vlastně měří, jak ho připojit k Arduinu, jak nainstalovat knihovnu a jak z něj dostat první hodnoty. Přidám i několik jednoduchých praktických příkladů, které se dají snadno upravit pro vlastní projekty.

senzor VEML7700
Pokračování textu Měření světla s Arduinem: senzor VEML7700

E-ink info panel: od nápadu po funkční dashboard

Už delší dobu jsem si chtěl postavit nějaké malé domácí zobrazovadlo. Ne tablet, ne monitor a ne další svítící displej, ale něco úsporného, dobře čitelného a ideálně takového, co může stát někde na stole nebo viset na zdi a průběžně ukazovat užitečné informace.

Nakonec padla volba na e-ink displej. Tedy stejný princip, jaký se používá třeba ve čtečkách knih. Hlavní výhoda je jasná: obraz zůstane na displeji i bez trvalého napájení a při běžném použití není potřeba nic podsvěcovat. Pro zobrazování počasí, stavu baterie, solárního měření a pár dalších údajů je to skoro ideální.

Cílem nebylo udělat univerzální chytrý displej, ale jednoduchý a spolehlivý dashboard, který po probuzení stáhne aktuální data, překreslí obrazovku a zase usne.

Pokračování textu E-ink info panel: od nápadu po funkční dashboard

ESP teploměr k bazénu

Začíná bazénová sezóna, a tak je nejvyšší čas oprášit a aktualizovat bazénový teploměr. Původní verze odesílala naměřená data na ThingSpeak, ale po zkušenostech s monitoringem solárního parapetu jsem se rozhodl vytvořit novou verzi ve stejném duchu – tentokrát s ukládáním a zobrazováním dat na vlastním hostingu.

Pokračování textu ESP teploměr k bazénu

MeshCore 8. díl – Bootloader OTAFix a OTA aktualizace repeateru s nRF52840

V minulých dílech jsme se věnovali nastavení repeateru, stavbě solárního opakovače, Room Serveru a T-Decku. Tentokrát zůstaneme opět u repeateru, ale podíváme se na věc, která se začne hodit hlavně ve chvíli, kdy už je zařízení hotové, zavřené v krabičce a ideálně někde venku.

Řeč bude o OTA aktualizaci firmware.

OTA znamená Over The Air, tedy aktualizaci bez nutnosti připojení USB kabelem. Firmware se do zařízení nahraje bezdrátově.

U repeateru to dává velký smysl, protože často neleží na stole vedle počítače, ale bývá umístěný venku – na střeše, na půdě, na stožáru, v krabičce u solárního panelu nebo na jiném hůře dostupném místě.

A přesně v takové situaci člověk nechce, nebo ani nemůže, pokaždé zařízení rozebírat, tahat k němu kabel, připojovat ho k počítači a po aktualizaci zase všechno znovu skládat a utěsňovat.

Pokračování textu MeshCore 8. díl – Bootloader OTAFix a OTA aktualizace repeateru s nRF52840

Monitoring solárního panelu nejen pro MeshCore

Pro svůj parapetový solární systém, který primárně napájí MeshCore repeater, jsem si postavil jednoduchý monitoring. Nejde o žádné laboratorní měření ani profesionální řešení, ale o praktický způsob, jak mít přehled o tom, co se v napájení skutečně děje. Chtěl jsem vidět, kolik energie panel během dne dodává, jak se mění napětí baterie a jestli má celé řešení dostatečnou rezervu i ve dnech, kdy slunce zrovna moc nesvítí. Právě taková data jsou u solárně napájeného zařízení hodně užitečná, protože podle nich se dá poznat, jestli je návrh opravdu použitelný pro dlouhodobý provoz.

Pokračování textu Monitoring solárního panelu nejen pro MeshCore