Hogyan készítsünk padlótisztító robotot ultrahangos érzékelővel?

Az automatikus padlótisztító robot nem új koncepció. De ezeknek a robotoknak van egy fő problémájuk. Nagyon drágák. Mi van, ha olcsó padlótisztító robotot tudunk gyártani, amely ugyanolyan hatékony, mint a piacon elérhető robot. Ez a robot ultrahangos érzékelőt fog használni, és elkerüli az akadályokat. Ezzel az egész szobát megtisztítja.



(Ez a kép a Circuit Digest-ből készült)

Hogyan kell használni az ultrahangos érzékelőt egy automatikus padlótisztító robot elkészítéséhez?

Amint most ismerjük projektünk absztraktját. Gyűjtsünk össze még néhány információt a munka megkezdéséhez.



1. lépés: Az alkatrészek összegyűjtése

A projekt megkezdésének legjobb módja az, ha a kezdetekkor elkészíti a teljes alkatrészek listáját, és az egyes komponensek rövid tanulmányozását végzi. Ez segít elkerülni a kellemetlenségeket a projekt közepén. Az alábbiakban a projektben felhasznált összes alkatrész teljes listája megtalálható.



  • Autó kerék alváz
  • Akkumulátor
  • Show Brush

2. lépés: Az alkatrészek tanulmányozása

Most, hogy rendelkezésünkre áll az összes alkatrész teljes listája, lépjünk előre és tanulmányozzuk röviden az egyes alkatrészek működését.



Az Arduino nano egy mikrokontroller kártya, amelyet egy áramkörben különböző feladatok vezérlésére vagy végrehajtására használnak. Égetünk egy C kód az Arduino Nano-n, hogy elmondja a mikrokontroller táblának, hogyan és milyen műveleteket hajtson végre. Az Arduino Nano pontosan ugyanolyan funkcionalitással rendelkezik, mint az Arduino Uno, de meglehetősen kicsi. Az Arduino Nano táblán található mikrovezérlő az ATmega328p.

Arduino Nano

Az L298N nagyáramú és nagyfeszültségű integrált áramkör. Ez egy kettős teljes híd, amelyet a standard TTL logika elfogadására terveztek. Két engedélyező bemenettel rendelkezik, amelyek lehetővé teszik a készülék független működését. Két motor csatlakoztatható és működtethető egyszerre. A motorok fordulatszáma a PWM csapok segítségével változtatható.



L298N motorvezérlő

A HC-SR04 tábla egy ultrahangos érzékelő, amely két tárgy közötti távolság meghatározására szolgál. Adóból és vevőből áll. Az adó átalakítja az elektromos jelet ultrahangos jellé, a vevő pedig az ultrahangos jelet visszaalakítja elektromos jellé. Amikor az adó ultrahangos hullámot küld, akkor az visszatükröződik, miután ütközött egy bizonyos objektummal. A távolság kiszámítása az idő felhasználásával történik, amelyre az ultrahangos jelnek az adóból történő visszajutása és a vevőhöz való visszatérése szükséges.

Ultrahangos érzékelő

3. lépés: Az alkatrészek összeszerelése

Mivel már tudjuk, hogy az összes alkatrész hogyan működik, állítsuk össze az összes alkatrészt, és kezdjünk el robotot gyártani.

Vegyünk egy autó kerékvázát, és szereljünk fel egy bemutató kefét az alvázak elé. Szerelje fel a Scotch Brite-et a robot alá. Győződjön meg arról, hogy közvetlenül a cipőkefe mögött van. Most helyezzen egy kis kenyérlemezt a tokok tetejére, mögötte pedig a Motor meghajtót. Helyesen csatlakoztassa a motorokat a motor meghajtójához, és óvatosan kösse össze a motor meghajtó csapjait az Arduino-val. Helyezzen egy elemet az alváz mögé. Az akkumulátor feltölti a motorvezérlőt, amely táplálja a motorokat. Az Arduino a motort vezetőtől is átveszi az áramot. A Vcc tű és az ultrahangos érzékelő földje az Arduino 5 V-jához és földeléséhez csatlakozik.

Kördiagramm

4. lépés: Az Arduino használatának megkezdése

Ha még nem ismeri az Arduino IDE-t, ne aggódjon, mert az Arduino IDE mikrokontroller táblával történő beállításának és használatának lépésről lépésre történő leírását az alábbiakban ismertetjük.

  1. Töltse le az Arduino IDE legújabb verzióját innen: Arduino.
  2. Csatlakoztassa Arduino Nano kártyáját a laptophoz, és nyissa meg a kezelőpanelt. a vezérlőpulton kattintson a gombra Hardver és hang . Most kattintson a gombra Eszközök és nyomtatók. Itt keresse meg azt a portot, amelyhez a mikrokontroller kártya csatlakozik. Az én esetemben az COM14 de a különböző számítógépeken más.

    Port keresése

  3. Kattintson az Eszköz menüre, és állítsa a táblára Arduino Nano.

    Tábla beállítása

  4. Ugyanabban az Eszköz menüben állítsa be a portot arra a portszámra, amelyet korábban a Eszközök és nyomtatók .

    Port beállítása

  5. Ugyanebben az Eszköz menüben állítsa a Processort értékre ATmega328P (Old Bootloader).

    Processzor

  6. Töltse le az alább csatolt kódot, és illessze be az Arduino IDE-be. Kattintson a feltölteni gombot a mikrovezérlő-alaplapon lévő kód beírásához.

    Feltöltés

Kattintson a gombra itt a kód letöltéséhez.

5. lépés: A kód megértése

A kód elég jól kommentált és magától értetődő. De mégis, az alábbiakban röviden elmagyarázzuk.

1. Kezdetben az Arduino összes gombját inicializáljuk.

int enable1pin = 8; // csapok az első Motor int motor1pin1 = 2; int motor1pin2 = 3; int enable2pin = 9; // csapok a második Motor int motor2pin1 = 4; int motor2pin2 = 5; const int trigPin = 11; // Tüskék az ultrahangos érzékelőhöz const int echoPin = 10; const int buzzPin = 6; hosszú időtartam; // Az ultrahangos érzékelő úszó távolságának változói;

2. void setup () egy olyan függvény, amelyben beállítottuk az összes csapot INPUT vagy OUTPUT néven. A Baud Rate is ebben a funkcióban van beállítva. Az átviteli sebesség az a sebesség, amellyel a mikrovezérlő kártya kommunikál a csatlakoztatott érzékelőkkel.

void setup () {Soros.kezdés (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode (buzzPin, OUTPUT); pinMode (enable1pin, OUTPUT); pinMode (enable2pin, OUTPUT); pinMode (motor1pin1, OUTPUT); pinMode (motor1pin2, OUTPUT); pinMode (motor2pin1, OUTPUT); pinMode (motor2pin2, OUTPUT); }

3. void loop () egy ciklusban folyamatosan futó függvény. Ebben a körben elmondtuk a mikrovezérlőnek, hogy mikor kell tovább haladni, ha 50 cm-ben nem található akadály. A robot élesen jobbra fordul, ha akadályt talál.

void loop () {digitalWrite (trigPin, LOW); késleltetés mikroszekundum (2); digitalWrite (trigPin, HIGH); késleltetés mikroszekundum (10); digitalWrite (trigPin, LOW); időtartam = pulseIn (echoPin, HIGH); távolság = 0,034 * (időtartam / 2); if (távolság> 50) // Haladj előre, ha nem található akadály {digitalWrite (enable1pin, HIGH); digitalWrite (enable2pin, HIGH); digitalWrite (motor1pin1, HIGH); digitalWrite (motor1pin2, LOW); digitalWrite (motor2pin1, HIGH); digitalWrite (motor2pin2, LOW); } else if (távolság<50) // Sharp Right Turn if an obstacle found { digitalWrite(enable1pin, HIGH); digitalWrite(enable2pin, HIGH); digitalWrite(motor1pin1, HIGH); digitalWrite(motor1pin2, LOW); digitalWrite(motor2pin1, LOW); digitalWrite(motor2pin2, LOW); } delay(300); // delay }

Most, hogy mindent megtárgyaltunk, amire szükség van egy automatikus padlótisztító robot elkészítéséhez, élvezze saját költségtakarékos és hatékony padlótisztító robotjának elkészítését.