Tartalomjegyzék:
- 1. lépés: Ardunio kód
- 2. lépés: Proteus fájlok
- 3. lépés: Hogyan működik a H-híd
- 4. lépés: Az LDR működése
Videó: Könnyű robot követése és elkerülése Arduino alapján: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Ez egy egyszerű projekt, amely követi vagy kerülje a fényt.
Ezt a szimulációt a Proteus 8.6 pro-ban készítettem. Szükséges összetevők: -1) Arduino uno.
2) 3 LDR.
3) 2 egyenáramú hajtóműves motorok. 4) egy szervo. 5) három 1 k ellenállás. 6) egy H-híd l290D7) egy ki- és bekapcsoló [a program állapotának megváltoztatásához]
8) 9v és 5v Battry
1. lépés: Ardunio kód
Az Arduino kód rövid időn belül módosult, 2016. február 23.]
Ezt a kódot erősen kommentálják, nem akarom elmagyarázni, de ha segítségre van szüksége, lépjen kapcsolatba velem ([email protected])
Megjegyzés: -A programban két feltételt használok: 1. a fénykövetés, 2. a fény elkerülése.
Ha ezek a feltételek teljesülnek, a robot követi vagy elkerüli a fényt. [Ez az LDR minimális értéke, amelyet választok. Normál fényben a tartomány 80-95, de ahogy intenzitása növekszik, egyre több feszültség indukálja azt, ahogy dolgozik a feszültségosztó elvén int a = 400; // Toleranciaérték]
2. lépés: Proteus fájlok
Az Arduino Library letöltéséhez kattintson erre a linkre
3. lépés: Hogyan működik a H-híd
Az L293NE/SN754410 egy nagyon egyszerű H-híd. Két hídja van, az egyik a chip bal oldalán, a másik a jobb oldalon, és 2 motor vezérlésére alkalmas. Akár 1 amper áramot képes meghajtani, és 4,5 és 36 V között működik. A laborban használt kis egyenáramú motor biztonságosan le tud futni alacsony feszültségről, így ez a H-híd tökéletesen fog működni. A H-híd a következő csapokkal és jellemzőkkel rendelkezik: Az 1-es (1, 2EN) csap engedélyezi és letiltja motorunkat, függetlenül attól, hogy HIGH vagy LOWPin 2 (1A) a motorunk logikai csapja (a bemenet HIGH vagy LOW) 3 (1Y) az egyik motorcsatlakozóhoz A 4-5-ös érintkezők a földeléshez A 6-os tű (2Y) a másik motorcsatlakozóhoz A 7-es pin (2A) a motorunk logikai csapja (a bemenet HIGH vagy LOW) 8-as érintkező (VCC2) a motorunk tápegysége, ezt meg kell adni a motor névleges feszültségére A Pin 9-11 nincs csatlakoztatva, mivel ebben a laborban csak egy motort használ A 12-13. pin a földeléshez A 14-15. pin nincs csatlakoztatva A Pin 16 (VCC1) 5V-ra van csatlakoztatva. Fentebb a H-híd diagramja és a példánkban szereplő csapok mit csinálnak. A diagramhoz tartozik egy igazságtáblázat, amely jelzi, hogy a motor hogyan fog működni a logikai csapok állapota szerint (amelyeket az Arduino állít be).
Ebben a projektben az engedélyező csap csatlakozik az Arduino digitális tüskéjéhez, így elküldheti HIGH vagy LOW, és be- vagy kikapcsolhatja a motort. A motor logikai csapjai szintén az Arduino kijelölt digitális csapjaihoz vannak csatlakoztatva, így HIGH és LOW pozícióba küldheti, hogy a motor az egyik irányba forduljon, vagy LOW és HIGH, hogy a másik irányba forduljon. A motor tápfeszültsége a motor feszültségforrásához csatlakozik, amely általában külső tápegység. Ha a motorja 5 V -os és 500 mA -nél kisebb teljesítményű, akkor az Arduino 5 V -os kimenetét használhatja. A legtöbb motor ennél nagyobb feszültséget és nagyobb áramfelvételt igényel, ezért külső tápegységre lesz szüksége.
Csatlakoztassa a motort a H-hídhoz Csatlakoztassa a motort a H-hídhoz a 2. képen látható módon.
Vagy ha külső tápegységet használ az Arduino számára, akkor használhatja a Vin tűt.
4. lépés: Az LDR működése
Most az első dolog, amely további magyarázatra szorulhat, a fényfüggő ellenállások használata. A fényfüggő ellenállások (vagy LDR -ek) olyan ellenállások, amelyek értéke a környezeti fény mennyiségétől függően változik, de hogyan tudjuk észlelni az ellenállást az Arduino segítségével? Nos, nem igazán, de a feszültségszinteket az analóg csapok segítségével észlelheti, amelyek (alaphasználatban) 0-5V között mérhetnek. Most azt kérdezheti, hogy „hogyan alakítjuk át az ellenállás értékeit feszültségváltozássá?”, Egyszerű, feszültségosztót készítünk. A feszültségosztó feszültséget vesz fel, majd ennek a feszültségnek a töredékét adja ki a bemeneti feszültséggel és a használt ellenállások két értékének arányával. Ennek egyenlete:
Kimeneti feszültség = bemeneti feszültség * (R2 / (R1 + R2)) Ahol R1 az első ellenállás értéke, R2 pedig a második értéke.
Most még mindig felmerül a kérdés: „De milyen ellenállási értékei vannak az LDR -nek?”, Jó kérdés. Minél kevesebb a környezeti fény, annál nagyobb az ellenállás, a több környezeti fény alacsonyabb ellenállást jelent. Most az adott LDR -eknél használtam az ellenállási tartományukat 200 - 10 kg ohm között, de ez változik a különbözőeknél, ezért győződjön meg arról, hogy honnan vásárolta őket, és próbálja megtalálni az adatlapot vagy valami hasonlót. Most ebben Az R1 eset valójában az LDR, ezért hozzuk vissza ezt az egyenletet, és végezzünk néhány matematikai-e-mágiát (matematikai elektromos mágiát). Most először át kell alakítanunk ezeket a kilós ohm-értékeket ohmokká: 200 kilo-ohm = 200 000 ohm 10 kiló-ohm = 10 000 ohm Tehát, hogy megtudjuk, mi a kimeneti feszültség, amikor koromsötétben vagyunk, csatlakoztassuk a következő számokat: 5 * (10000 / (200000 + 10000)) A bemenet 5V, mivel ezt kapjuk az Arduino -tól. A fentiek 0,24 V -ot adnak (lekerekítve). Most megtudjuk, hogy mennyi a kimeneti feszültség csúcsfényben a következő számok használatával: 5 * (10000 / (10000 + 10000)) És ez pontosan 2,5 V -ot ad. Tehát ezek azok a feszültségértékek, amelyeket az Arduino analóg csapjaiba fogunk bevinni, de ezek nem azok az értékek, amelyek a „De miért?” Programban lesznek láthatók. kérdezheted. Az Arduino analóg -digitális chipet használ, amely az analóg feszültséget használható digitális adatmá alakítja. Ellentétben az Arduino digitális csapjaival, amelyek csak a HIGH vagy LOW állapotot olvashatják 0 és 5 V között, az analóg érintkezők 0-5 V-ról tudnak olvasni, és ezt 0-1023 számtartományba konvertálni.. valójában kiszámíthatjuk, hogy az Arduino milyen értékeket fog kiolvasni.
Mivel ez lineáris függvény lesz, a következő képletet használhatjuk: Y = mX + C Hol; Y = Digital ValueWhere; m = meredekség, (emelkedés / futás), (digitális érték / analóg érték) Hol; Az Y metszés 0, így kapjuk: Y = mXm = 1023 /5 = 204,6 Ezért: Digitális érték = 204,6 * Analóg érték Tehát a koromsötétben a digitális érték: 204,6 * 0,24 lesz, ami körülbelül 49 csúcsfényben ez lesz: 204,6 * 2,5, ami körülbelül 511 -et ad. Most, ha ezek közül kettőt két analóg tűn állítunk be, két egész változót hozhatunk létre az értékek kettő tárolására, és összehasonlító operátorokat, hogy lássuk, melyik a legalacsonyabb érték, ebbe az irányba fordítva a robotot.
Ajánlott:
5 az 1 -ben Arduino robot - Kövess engem - Sor követése - Sumo - Rajz - Az akadályok elkerülése: 6 lépés
5 az 1 -ben Arduino robot | Kövess engem | Sor követése | Sumo | Rajz | Az akadályok elkerülése: Ez a robotvezérlő kártya tartalmaz egy ATmega328P mikrokontrollert és egy L293D motor meghajtót. Természetesen nem különbözik az Arduino Uno táblától, de hasznosabb, mert nem szükséges másik pajzs a motor meghajtásához! Mentes az ugrástól
Hogyan készítsünk akadályt a robot elkerülése érdekében: 6 lépés
Hogyan készítsünk akadályokat elkerülő robotot: Az akadálykerülő robot egy egyszerű robot, amelyet egy arduino működtet, és amit tesz, az az, hogy csak barangol, és elkerüli az akadályokat. Más szavakkal érzékeli az akadályokat egy HC-SR04 ultrahangos érzékelővel, ha a robot érzékeli a közelben lévő tárgyakat
Hogyan készítsünk akadályt a robot elkerülése érdekében az Arduino használatával: 5 lépés
Hogyan készítsünk akadályt a robot elkerülése érdekében az Arduino használatával: Ebben az oktatható fejezetben megtanítom, hogyan lehet akadályokat elkerülni, hogy elkerülje az Arduino -val működő robotot. Ismernie kell az Arduino -t. Az Arduino egy vezérlőkártya, amely az atmega mikrokontrollert használja. Használhatja az Arduino bármely verzióját, de én
HOGYAN KELL SZERELNI A Lenyűgöző FA ROBOTKAROT (2. RÉSZ: ROBOT az akadályok elkerülése érdekében) - A MIKRO ALAPJÁN: BIT: 3 lépés
HOGYAN KELL SZERELNI A Lenyűgöző FA ROBOT KAROT (2. RÉSZ: ROBOT az akadályok elkerülése érdekében)-A MIKRO ALAPJA: BIT: Korábban bevezetettük az Armbit sorkövetési módban. Ezután bemutatjuk az Armbit telepítését az akadály mód elkerülése érdekében
Hogyan tegyünk akadályokat a robot elkerülése érdekében- Arduino stílus: 4 lépés
Hogyan tegyünk akadályokat a robot elkerülésével- Arduino stílus: Mindig is szerettél volna egy olyan robotot készíteni, amely alapvetően képes elkerülni minden tárgyat. Mégsem volt elég pénze ahhoz, hogy megvásároljon egy igazán drága darabot, már vágott alkatrészekkel, ahol minden anyag ott van az Ön számára. Ha olyan vagy, mint