Tartalomjegyzék:

Az akadályok észlelése aszinkron módon ultrahanggal: 4 lépés
Az akadályok észlelése aszinkron módon ultrahanggal: 4 lépés

Videó: Az akadályok észlelése aszinkron módon ultrahanggal: 4 lépés

Videó: Az akadályok észlelése aszinkron módon ultrahanggal: 4 lépés
Videó: Сравнительное тестирование GU10 Zigbee лампочек, Tuya Smart, Ewelink, iHost, Home Assistant 2024, Július
Anonim
Az akadályok észlelése aszinkron módon ultrahanggal
Az akadályok észlelése aszinkron módon ultrahanggal

Egy szórakoztató robotot építek, amelyet autonóm módon szeretnék mozgatni egy házban.

Hosszú munka, és lépésről lépésre haladok.

Ez az oktatható fókusz az akadályok felismerésére szolgál az Arduino Mega segítségével

A HC-SR04 és a HY-SRF05 ultrahangos érzékelők olcsók és egyszerűen használhatók, de bonyolultá válhatnak a komplex robot mikrovezérlő hurokba való integrálásában. Aszinkron módon akartam futtatni az akadályok észlelését.

_

Már közzétettem 3 utasítást a robot tulajdonságairól:

  • Készítse el a kerekekódolót
  • Készítse el WIFI átjáróját
  • Használja az inerciális modul egységet

És egy dokumentáció a mesterséges intelligencia és az ultrahangok kombinálásáról a robot lokalizálásához.

1. lépés: Pontosan mi a probléma az ultrahangos érzékelőkkel és mikrovezérlőkkel?

Pontosan mi a probléma az ultrahangos érzékelőkkel és mikrovezérlőkkel?
Pontosan mi a probléma az ultrahangos érzékelőkkel és mikrovezérlőkkel?
Pontosan mi a probléma az ultrahangos érzékelőkkel és mikrovezérlőkkel?
Pontosan mi a probléma az ultrahangos érzékelőkkel és mikrovezérlőkkel?

Szinkron várakozás és Arduino korlátozások

A mikrokontrollerek kódja ciklusban fut, és nem támogatja a több szálat. Az ultrahangos érzékelők a jel időtartamán alapulnak. Ez az időtartam legfeljebb 30 m -ig tart, és nagyon sokáig kell várni a cikluson belül, amikor a mikrovezérlőknek több motorral és érzékelővel kell foglalkozniuk (például szervó- és egyenáramú motorok kerékkódolókkal).

Tehát egy aszinkron módon futó objektumot akartam kifejleszteni.

2. lépés: Hogyan működik?

Hogyan működik ?
Hogyan működik ?

Az Atmega számára tervezték az akadályok észlelésére. Maximum 4 ultrahangos érzékelőt támogat.

Az időszakos megszakításnak köszönhetően a rendszer akár 4 ultrahangos érzékelőt is felügyelhet. A fő kódnak csak azt kell meghatároznia, hogy melyik érzékelőt kell aktiválni feltétellel és küszöbértékkel. A fő megszakítás csak abban az esetben megszakad, ha megjelenik (feltétel, küszöb).

A fő funkciók a következők:

  • A riasztás az alapvető akadályérzékelés, és megszakítást biztosít, ha a 4 érzékelő közül legalább 1 érzékeli a küszöb alatti távolságot
  • A monitor egy kiterjesztett funkció, amely megszakítást biztosít akár 4 érzékelő távolsági állapotának kombinációjánál. A lehetséges feltételek a küszöbértékek felett, alatt, egyenlők vagy nem egyenlők.

3. lépés: Műszaki adatok

Használja az időzítőt4, így a 6 7 8 -as érintkező nem használható PWM -ként.

Minden érzékelőhöz az objektumnak aktiváló PIN -kódra és megszakító PIN -kódra van szüksége.

Az érzékelők megszakító PIN -kódjai mellett az objektumnak szüksége van egy másik megszakító PIN -kódra a szoftver használatához.

4. lépés: Hogyan kell végrehajtani?

Hogyan kell végrehajtani?
Hogyan kell végrehajtani?

Csatlakoztassa az érzékelőket a fentiek szerint

Töltse le a GitHub adattárból

  • EchoObstacleDetection.cpp,
  • EchoObstacleDetection.h
  • PéldaEchoObstacleDetection.ino

Hozzon létre EchoObstacleDetection könyvtárat az IDE könyvtárában, és helyezze át a.cpp és.h fájlokat

Próbáld ki

Nyissa meg a ExampleEchoObstacleDetection.ino oldalt.

Ez egy egyszerű akadályfelismerési példa 2 ultrahangos érzékelővel.

A kimenet a soros monitoron történik. Először a 2 érzékelő által észlelt távolságokat nyomtatja, majd riasztásokat nyomtat a küszöbérték alatti távolságoktól függően.

Ajánlott: