- Potřebný materiál:
- Pracovní koncept hasicího robota:
- Kruhový diagram:
- Programování vašeho Arduina:
- Práce hasičského robota:
Podle National Crime Records Bureau (NCRB) se odhaduje, že více než 1,2 lakh úmrtí bylo způsobeno kvůli požárním nehodám v Indii od 2010-2014. I když existuje mnoho preventivních opatření pro požární nehody, k těmto přírodním katastrofám nebo katastrofám způsobeným člověkem občas dojde. V případě požáru, k záchraně lidí ak hašení, jsme nuceni využívat lidské zdroje, které nejsou bezpečné. S pokrokem technologie, zejména v robotice, je velmi možné nahradit lidi roboty pro boj s ohněm. To by zlepšilo účinnost hasičů a také by jim zabránilo v riskování lidských životů. Dnes se chystáme postavit Fire Fighting Robot pomocí Arduina, který automaticky detekuje oheň a spustí vodní čerpadlo
V tomto projektu se naučíme, jak pomocí Arduina postavit jednoduchého robota, který by se mohl pohybovat směrem k ohni a odčerpávat kolem něj vodu, aby oheň uhasil. Je to velmi jednoduchý robot, který by nás naučil základní koncept robotiky; jakmile budete rozumět následujícím základům, budete moci vytvářet složitější roboty. Pojďme tedy začít…
Potřebný materiál:
- Arduino UNO
- Senzor požáru nebo Senzor plamene (3 Nos)
- Servomotor (SG90)
- Řídicí modul motoru L293D
- Mini DC ponorné čerpadlo
- Malá prkénka
- Robotický podvozek s motory (2) a koly (2) (jakýkoli typ)
- Malá plechovka
- Připojovací vodiče
Kupte si všechny výše uvedené komponenty pro hasicího robota Arduino.
Pracovní koncept hasicího robota:
Hlavním mozkem tohoto projektu je Arduino, ale ke snímání požáru používáme modul Fire sensor (plamenový senzor), který je zobrazen níže.
Jak vidíte, tyto senzory mají IR přijímač (fotodioda), který se používá k detekci požáru. Jak je tohle možné? Při požáru vyzařuje malé množství infračerveného světla, které bude přijímáno infračerveným přijímačem na modulu snímače. Pak použijeme Op-Amp ke kontrole změny napětí na IR přijímači, takže pokud je detekován požár, výstupní pin (DO) dá 0V (LOW) a pokud není oheň, výstupní pin bude 5V (VYSOKÝ).
Umístíme tedy tři takové senzory do tří směrů robota, abychom zjistili, kterým směrem oheň hoří.
Detekujeme směr požáru, kterým se můžeme pomocí motorů pohybovat v blízkosti požáru, a to tak, že naše motory projdeme modulem L293D. Když jsme u ohně, musíme ho uhasit pomocí vody. Pomocí malého kontejneru můžeme nést vodu, do kontejneru je také umístěno 5V čerpadlo a celý kontejner je umístěn na servomotoru, abychom mohli řídit směr, kterým musí být voda stříkána. Pojďme nyní pokračovat v připojení
Kruhový diagram:
Kompletní schéma zapojení tohoto hasicího robota je uvedeno níže
Můžete buď připojit všechna zobrazená připojení pro nahrání programu, abyste zkontrolovali funkčnost, nebo můžete kompletně sestavit robota a poté pokračovat v připojeních. Oba způsoby připojení jsou velmi jednoduché a měli byste být schopni to napravit.
Na základě robotického podvozku, který používáte, možná nebudete moci použít stejný typ kontejneru, který používám. V takovém případě použijte vlastní kreativitu k nastavení čerpacího systému. Kód však zůstane stejný. Použil jsem malou hliníkovou plechovku (plechovku na studené nápoje), abych do ní vložil čerpadlo a nalil do něj vodu. Poté jsem celou plechovku sestavil na servomotor, abych kontroloval směr vody. Můj robot vypadá po montáži asi takhle.
Jak vidíte, upevnil jsem servo žebro na dno nádoby pomocí lepidla a pomocí matic a šroubů jsem upevnil servomotor s podvozkem. Můžeme jednoduše umístit nádobu na motor a spustit čerpadlo uvnitř, aby čerpalo vodu ven skrz trubici. Celý kontejner lze poté otočit pomocí serva k ovládání směru vody.
Programování vašeho Arduina:
Jakmile budete připraveni na hardware, můžete nahrát Arduino kód pro nějakou akci. Kompletní program je uveden na konci této stránky. Zde jsem však dále vysvětlil několik důležitých kousků.
Jak víme, požární čidlo vydá HIGH při požáru a vydá LOW při požáru. Pokud tedy došlo k požáru, musíme tyto senzory stále kontrolovat. Pokud tam není žádný oheň, žádáme motory, aby zůstaly zastaveny tím, že všechny kolíky budou vysoko, jak je uvedeno níže
if (digitalRead (Left_S) == 1 && digitalRead (Right_S) == 1 && digitalRead (Forward_S) == 1) // Pokud není detekován oheň, všechna čidla jsou nulová {// Nepohýbejte robotem digitalWrite (LM1, HIGH); digitalWrite (LM2, HIGH); digitalWrite (RM1, HIGH); digitalWrite (RM2, HIGH); }
Podobně, pokud dojde k požáru, můžeme požádat robota, aby se pohyboval tímto směrem otáčením příslušného motoru. Jakmile dosáhne ohně, levé a pravé čidlo nebude detekovat oheň, protože by stál přímo před ohněm. Nyní použijeme proměnnou s názvem „ oheň “, která by spustila funkci pro odložení požáru.
else if (digitalRead (Forward_S) == 0) // If Fire is straight ahead {// Posun robota vpřed digitalWrite (LM1, HIGH); digitalWrite (LM2, LOW); digitalWrite (RM1, HIGH); digitalWrite (RM2, LOW); oheň = pravda; }
Jakmile se proměnná palba stane skutečnou, bude kód arduino hasicího robotu vykonávat funkci put_off_fire, dokud nebude oheň odložen . To se provádí pomocí níže uvedeného kódu.
while (fire == true) {put_off_fire (); }
Uvnitř put_off_fire () musíme jen zastavit robota tím, že uděláme všechny piny vysoko. Poté zapněte čerpadlo, aby se voda vytlačila ven z nádoby, zatímco je to provedeno, můžeme také použít servomotor k otáčení nádoby tak, aby se voda rovnoměrně rozdělila. To se provádí pomocí níže uvedeného kódu
void put_off_fire () {zpoždění (500); digitalWrite (LM1, HIGH); digitalWrite (LM2, HIGH); digitalWrite (RM1, HIGH); digitalWrite (RM2, HIGH); digitalWrite (pumpa, VYSOKÁ); zpoždění (500); for (pos = 50; pos <= 130; pos + = 1) {myservo.write (pos); zpoždění (10); } for (pos = 130; pos> = 50; pos - = 1) {myservo.write (pos); zpoždění (10); } digitalWrite (pumpa, NÍZKÁ); myservo.write (90); fire = false; }
Práce hasičského robota:
Doporučuje se kontrolovat výstup robota v krocích, místo toho, abyste jej poprvé spustili společně. Můžete postavit robota až po servomotor a zkontrolovat, zda je schopen úspěšně sledovat oheň. Poté můžete zkontrolovat, zda čerpadlo a servomotor fungují správně. Jakmile vše funguje podle očekávání, můžete spustit program níže a užít si kompletní práci hasičského robota.
Kompletní práci robota najdete na videu níže. Maximální vzdálenost, do které lze oheň detekovat, závisí na velikosti požáru, u malé zápalky je vzdálenost relativně menší. K ovládání citlivosti robota můžete také použít potenciometry v horní části modulů. K napájení robota jsem použil powerbanku, můžete použít baterii nebo ji dokonce napájet 12V baterií.
Doufám, že jste pochopili projekt a rádi byste stavěli něco podobného. Pokud máte nějaké potíže se získáním tohoto sestavení, použijte sekci komentářů níže k odeslání vašich požadavků nebo použijte fóra k technické pomoci.
V naší sekci Robotika najdete další skvělé kutilské roboty.