Tartalomjegyzék:

Haladó vonalkövető robot: 22 lépés (képekkel)
Haladó vonalkövető robot: 22 lépés (képekkel)

Videó: Haladó vonalkövető robot: 22 lépés (képekkel)

Videó: Haladó vonalkövető robot: 22 lépés (képekkel)
Videó: JM60 - SZABADON ÉLNI ! - avagy Hogyan ne légy robot :) 2024, December
Anonim
Image
Image
Prototípuskészítés - Perfboard
Prototípuskészítés - Perfboard

Ez egy fejlett vonalkövető robot, amely a Teensy 3.6 és a QTRX vonalérzékelőre épül, és amelyeket én építettem, és amelyeken már régóta dolgozom. A korábbi vonalkövető robotom tervezésében és teljesítményében jelentős javulás tapasztalható. A robot sebessége és reakciója javult. A teljes szerkezet kompakt és könnyű. Az alkatrészek a keréktengely közelében vannak elhelyezve, hogy minimálisra csökkentsék a szögimpulzusokat. A nagy teljesítményű mikro fém hajtómotorok biztosítják a megfelelő forgatónyomatékot, az alumínium kerékagy szilikon kerekek pedig nagyon nagy tapadást biztosítanak nagy sebességnél. A támasz pajzs és a kerekek kódolói lehetővé teszik a robot számára pozíciójának és tájolásának meghatározását. A fedélzetre szerelt Teensyview segítségével minden lényeges információ megjeleníthető, és a fontos programparaméterek nyomógombokkal frissíthetők.

A robot építésének megkezdéséhez szüksége lesz a következő kellékekre (és sok időre és türelemre).

Kellékek

Elektronika

  • Teensy 3.6 Fejlesztési Tanács
  • Prop Shield mozgásérzékelőkkel
  • Sparkfun TeensyView
  • Pololu QTRX-MD-16A fényvisszaverő érzékelő tömb
  • 15x20 cm kétoldalas prototípus NYÁK
  • Pololu S9V11F3S5 feszültségszabályozó
  • Pololu állítható 4-5-20V-os fokozható feszültségszabályozó U3V70A
  • MP12 6V 1580 rpm mikro hajtóműves motor kódolóval (x2)
  • DRV8833 Dual Motor Driver Carrier (x2)
  • 3,7 V, 750 mAh Li-Po akkumulátor
  • BE/KI kapcsoló
  • Elektrolit kondenzátor 470uF
  • Elektrolit kondenzátor 1000uF (x2)
  • Kerámia kondenzátor 0.1uF (x5)
  • Nyomógombok (x3)
  • 10 mm -es zöld LED (x2)

Hardver

  • Atom szilikon kerék 37x34mm (x2)
  • Pololu golyós görgő 3/8”-os fémgolyóval
  • N20 motortartó (x2)
  • Csavar és anyák

Kábelek és csatlakozók

  • 24AWG rugalmas vezetékek
  • 24 tűs FFC -DIP megszakítás és FFC kábel (A típus, 150 mm hosszú)
  • Kerek női csapfej
  • Kerek, hüvelyes csatlakozófejű hosszú csatlakozó
  • Derékszögű kétsoros női fejléc
  • Derékszögű kétsoros fejfej
  • Férfi csapfej
  • Férfi tűcsapfej

Eszközök

  • Multiméter
  • Forrasztópáka
  • Forrasztó huzal
  • Huzalcsupaszító
  • Drótvágó

1. lépés: Rendszerek áttekintése

Ahogy korábban terveztem egy önkiegyenlítő robotot, ez a robot egy töréstáblák halmaza, amelyek egy perforációs táblára vannak felszerelve, és amelyek egy szerkezet célját is szolgálják.

Az alábbiakban bemutatjuk a robot főbb rendszereit.

Mikrokontroller: Teensy 3.6 fejlesztőlap 32 bites 180 MHz-es ARM Cortex-M4 processzorral.

Vonalérzékelő: A Pololu QTRX-MD-16A 16 csatornás analóg kimeneti vonalérzékelő tömbje közepes sűrűségű elrendezésben (8 mm-es szenzorosztás).

Hajtás: 6 V, 1580 fordulat / perc, nagy teljesítményű, mikro -fém hajtómotorok mágneses kerékkódolóval és alumínium kerékagyakra szerelt szilikon kerekekkel.

Odometria: Mágneses kerék enkóderpárok a koordináták és a megtett távolság becsléséhez.

Tájolásérzékelő: Prop pajzs mozgásérzékelőkkel a robot helyzetének és irányának becsléséhez.

Tápegység: 3.7V, 750mAh lipo akkumulátor áramforrásként. A 3.3V fel/le szabályozó táplálja a mikrokontrollert, az érzékelőket és a kijelző eszközt. Állítható léptető szabályozó hajtja a két motort.

Felhasználói felület: Teensyview az információk megjelenítéséhez. Három nyomógombos kiiktatás a felhasználói adatok fogadására. Két szám 10 mm átmérőjű zöld LED jelzi az állapotot futás közben.

2. lépés: Kezdjük el a prototípus -készítést

Image
Image

A fenti áramkört a perfboardon fogjuk megvalósítani. Először el kell készítenünk a kitörési tábláinkat úgy, hogy a fejrészeket forrasztjuk rájuk. A videó ötletet ad arra vonatkozóan, hogy mely fejléceket melyik kitörési táblára kell forrasztani.

Miután a fejrészeket forrasztotta a kitörő táblákra, halmozza fel a Teensyview és a nyomógombos kitörést a Teensy tetejére.

3. lépés: Prototípus -készítés - Perfboard

Prototípuskészítés - Perfboard
Prototípuskészítés - Perfboard

Szerezze be a 15x20 cm -es, kétoldalas prototípus perforált táblát, és jelölje meg a határvonalat egy állandó jelölővel, amint az a képen látható. Fúrjon M2 méretű lyukakat az érzékelő tömb, a görgőkorong és a mikro fém hajtómotorok fehér körrel megjelölt helyekre történő felszereléséhez. Később a forrasztás és az összes alkatrész tesztelése után vágjuk le a peremet a határ mentén.

A prototípus elkészítését a fejléc csapjainak és foglalatainak forrasztásával kezdjük. A kitörési táblákat később ezekre a fejlécekre illesztik be. Ügyeljen a fejlécek helyzetére a parkettalapon. Az összes vezetéket összekötjük a fejlécek ezen elrendezése alapján.

4. lépés: Prototípus -készítés - Prop Shield

Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield
Prototípuskészítés - Prop Shield

Először forrasztjuk a csatlakozókat a támaszpajzshoz. Mivel csak a támasztópajzs mozgásérzékelőit használjuk, csak az SCL, SDA és IRQ csapokat kell csatlakoztatnunk, kivéve a tápellátás 3V -os és földelt csapjait.

A csatlakozás befejezése után helyezze be a Teensy és a prop pajzsot, és kalibrálja a mozgásérzékelőket az itt említett lépések végrehajtásával.

5. lépés: Prototípuskészítés - teljesítmény és föld

Prototípuskészítés - Erő és föld
Prototípuskészítés - Erő és föld

Forrasztja le az összes táp- és földelőcsatlakozást a képen látható módon. Helyezze be az összes törőlapot a helyére, és biztosítsa a folytonosságot egy multiméter segítségével. Ellenőrizze a fedélzeten lévő különböző feszültségi szinteket.

  • Li-po kimeneti feszültség (általában 3V és 4,2V között)
  • Fokozatos fel/le szabályozó kimeneti feszültség (3.3V)
  • Állítható fokozó szabályozó kimeneti feszültség (6V-ra állítva)

6. lépés: Prototípuskészítés - motoros vezető

Prototípuskészítés - motoros vezető
Prototípuskészítés - motoros vezető
Prototípuskészítés - motoros vezető
Prototípuskészítés - motoros vezető
Prototípuskészítés - motoros vezető
Prototípuskészítés - motoros vezető

A DRV8833 kettős motoros meghajtó -hordozókártya csatornánként 1,2 A folyamatos és 2 A csúcsáramot képes leadni. A két csatornát párhuzamosan csatlakoztatjuk egy motor meghajtásához. Forrasztja a csatlakozásokat az alábbi lépések végrehajtásával.

  • Párhuzamosan helyezze el a motor bemenetét és a két kimenetét a motor meghajtótartójában, amint az a képen látható.
  • Csatlakoztassa a bemeneti vezérlő vezetékeket a motor meghajtójához.
  • Csatlakoztasson egy 1000uF elektrolit kondenzátort és egy 0,1uF kerámia kondenzátort a két hordozólemez Vin és Gnd csatlakozóihoz.
  • Csatlakoztasson egy 0,1uF kerámia kondenzátort a motor meghajtó kimeneti csatlakozóihoz.

7. lépés: Prototípuskészítés - vonalérzékelő tömbfejléc

Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc
Prototípuskészítés - vonalérzékelő tömbfejléc

A Teensy 3.6 két ADC -vel rendelkezik - ADC0 és ADC1, amelyek 25 hozzáférhető tűre vannak multiplexelve. A két ADC -ből egyszerre bármelyik két csaphoz férhetünk hozzá. Nyolc vonalérzékelőt csatlakoztatunk az ADC0 és az ADC1 -hez. A páros számérzékelők az ADC1 -hez, a páratlan számérzékelők az ADC0 -hoz lesznek csatlakoztatva. Forrasztja a csatlakozásokat az alábbi lépések végrehajtásával. Később csatlakoztatjuk a vonalérzékelőt FFC segítségével DIP adapterhez és kábelhez.

  • Csatlakoztassa az összes páros érzékelőcsapot (16, 14, 12, 10, 8, 6, 4, 2) az ábrán látható módon. Vezesse át a vezetéket a 12 érzékelőcsap csatlakoztatásához a perfboard hátoldalán.
  • Csatlakoztassa az emitter vezérlőcsapját (EVEN) a 30 -as Teensy csaphoz.
  • Csatlakoztassa az összes páratlan érzékelőcsapot (15, 13, 11, 9, 7, 5, 3, 1) a képen látható módon.
  • Csatlakoztasson egy 470uF elektrolit kondenzátort a Vcc és Gnd feszültségre.

Ha alaposan szemügyre veszi a vonalérzékelő csapjait és a hozzájuk tartozó fejléccsapokat a táblán, akkor észre fogja venni, hogy a vonalérzékelő felső sora a perboardon lévő fejléc alsó sorához igazodik, és fordítva. Ennek az az oka, hogy amikor a vonalérzékelőt a kétsoros derékszögű fejlécek segítségével a perfboardhoz csatlakoztatjuk, a sorok megfelelően illeszkednek. Elég sok időbe telt, amíg rájöttem erre, és kijavítottam a programban a pin -kiosztásokat.

8. lépés: Prototípus -készítés - Micro Gear Motor és Encoder

Prototípuskészítés - Micro Gear Motor és Encoder
Prototípuskészítés - Micro Gear Motor és Encoder
  • Rögzítse a mikro -fém hajtómotort kódolóval N20 -as motortartók segítségével.
  • Csatlakoztassa a motort és a jeladót a képen látható módon.
  • Bal kódoló - Teensy csapok 4 és 0
  • Jobb kódoló - Teensy csapok 9 és 27

9. lépés: Prototípus -készítés - LED -ek

Prototípuskészítés - LED -ek
Prototípuskészítés - LED -ek
Prototípuskészítés - LED -ek
Prototípuskészítés - LED -ek

A két LED jelzi, hogy a robot észlelt -e kanyart vagy sem. 470 ohmos sorozatú ellenállást használtam a LED-ek csatlakoztatásához a Teensy-hez.

  • A bal oldali LED -anód a 6 -os Teensy -tűhöz
  • Jobb LED -anód a 8 -as Teensy -tűhöz

10. lépés: Prototípuskészítés - kitörések

Image
Image
Prototípusok - kitörések
Prototípusok - kitörések

Most, hogy befejeztük a forrasztást a perfboardon, óvatosan levághatjuk a perfboardon megjelölt határ mentén, és eltávolíthatjuk a perfboard további darabjait. Ezenkívül rögzítse a két kereket és a görgő kereket.

Helyezze be az összes törőlapot a megfelelő foglalatba. Az FFC-DIP törés behelyezéséről és a QTRX-MD-16A vonalérzékelő rögzítéséről lásd a videót.

11. lépés: A szoftverkönyvtárak áttekintése

Szoftvertárak áttekintése
Szoftvertárak áttekintése

Programozni fogjuk a Teensyt az Arduino IDE -ben. Mielőtt elkezdenénk, szükségünk lesz néhány könyvtárra. Az általunk használt könyvtárak:

  • Kódoló
  • Teensyview
  • EEPROM
  • ADC
  • NXPMotionSense

És néhányat kifejezetten ehhez a robothoz írtak,

  • Nyomógomb
  • LineSensor
  • TeensyviewMenu
  • Motorok

Az erre a robotra jellemző könyvtárakat részletesen tárgyaljuk, és letölthetők a következő lépésekben.

12. lépés: A könyvtárak magyarázata - Nyomógomb

Ez a könyvtár a nyomógombos kioldótábla és a Teensy összekapcsolására szolgál. A használt funkciók a következők

PushButton (int leftButtonPin, int centerButtonPin, int rightButtonPin);

Ennek a konstruktornak az objektum létrehozásával történő meghívása konfigurálja a nyomógomb csapjait INPUT_PULLUP módba.

int8_t waitForButtonPress (void);

Ez a funkció megvárja, amíg egy gombot megnyomnak és elengednek, és visszaadja a kulcskódot.

int8_t getSingleButtonPress (érvénytelen);

Ez a funkció ellenőrzi, hogy megnyomnak -e egy gombot és elengedik -e. Ha igen, akkor visszaadja a kulcskódot, különben nullát ad vissza.

13. lépés: A könyvtárak magyarázata - vonalérzékelő

A LineSensor a könyvtár a vonalérzékelő tömb és a Teensy összekapcsolására. Az alábbiakban a használt funkciókat mutatjuk be.

LineSensor (void);

Ennek a konstruktornak az objektum létrehozásával történő meghívása inicializálja az ADC0 és az ADC1 programot, kiolvassa a küszöbértéket, a minimális és a maximális értéket az EEPROM -ból, és konfigurálja az érzékelőcsapokat bemeneti módba, és az emitter vezérlőcsapot kimeneti üzemmódba.

void calibrate (uint8_t calibrationMode);

Ez a funkció kalibrálja a vonalérzékelőket. A calibrationMode lehet MIN_MAX vagy MEDIAN_FILTER. Ezt a funkciót részletesen ismertetjük egy későbbi lépésben.

void getSensorsAnalog (uint16_t *sensorValue, uint8_t mód);

Az érvként elküldött három mód bármelyikében olvassa az érzékelő tömböt. Az üzemmód a kibocsátók állapota, és lehet BE, KI vagy VÁLTÁS. A TOGGLE mód kompenzálja az érzékelő által a környezeti fény hatására bekövetkező visszaverődési értékeket. Az ADC0 -hoz és az ADC1 -hez csatlakoztatott érzékelők szinkronban olvashatók.

int getLinePosition (uint16_t *sensorValue);

Kiszámítja az érzékelő tömb vonal feletti pozícióját súlyozott átlag módszerrel.

uint16_t getSensorsBinary (uint16_t *sensorValue);

Az érzékelők állapotának 16 bites ábrázolását adja vissza. A bináris érték azt jelzi, hogy az érzékelő túl van a vonalon, a bináris nulla pedig azt jelzi, hogy az érzékelő a vonalon kívül van.

uint8_t countBinary (uint16_t binaryValue);

Az érzékelőértékek 16 bites ábrázolásának átadása ennek a függvénynek a vonalon túli érzékelők számát adja vissza.

void getSensorsNormalized (uint16_t *sensorValue, uint8_t mód);

Olvassa be az érzékelő értékeit, és minden érzékelő értékét a megfelelő min és max értékekre korlátozza. Az érzékelő értékei ezután a megfelelő min és max tartományok között 0 és 1000 közötti tartományba kerülnek.

14. lépés: A könyvtárak magyarázata - TeensyviewMenu

A TeensyviewMenu az a könyvtár, ahol a megjelenítési menü funkciói érhetők el. Az alábbiakban a használt funkciókat mutatjuk be.

TeensyViewMenu (érvénytelen);

A konstruktor meghívása létrehoz egy LineSensor, PushButton és TeensyView osztályú objektumot.

void intro (void);

Ez a menüben való navigáláshoz használható.

érvénytelen teszt (érvénytelen);

Ezt belsőleg hívják a menüben, amikor a vonalérzékelő értékeit tesztelés céljából meg kell jeleníteni a Teensyview -n.

15. lépés: A könyvtárak magyarázata - motorok

A Motors a két motor meghajtásához használt könyvtár. Az alábbiakban a használt funkciókat mutatjuk be.

Motorok (üres);

Ennek a konstruktornak az objektum létrehozásával történő meghívása konfigurálja a motorirányszabályozót és a PWM vezérlőcsapokat kimeneti módba.

void setSpeed (int leftMotorSpeed, int rightMotorSpeed);

Ennek a funkciónak a meghívása a két motort érvként megadott sebességgel hajtja. A sebesség értéke -255 és +255 között lehet, negatív előjellel jelezve, hogy a forgásirány megfordul.

16. lépés: Tesztelés - kódoló odometria

Tesztelni fogjuk a mágneses kerék jeladókat, és megjelenítjük a robot által megtett pozíciót és távolságot.

Töltse fel a DualEncoderTeensyview.ino oldalt. A program megjeleníti a kódoló kullancsokat a Teensyview -n. A kódoló kullancsot növeszt, ha előre mozgatja a robotot, és csökken, ha hátra mozgatja.

Most töltse fel az EncoderOdometry.ino fájlt. Ez a program megjeleníti a robot helyzetét x-y koordinátákban, megjeleníti a teljes megtett távolságot centiméterben és a szöget fokokban.

Utaltam a Seattle Robotics Society által végrehajtott holtszámlálás végrehajtására az Odometry által R/C szervo differenciálhajtással rendelkező roboton, hogy meghatározzuk a helyzetet a kódoló kullancsokból.

17. lépés: Tesztelés - Prop Shield Motion Sensors

Győződjön meg arról, hogy kalibrálta a mozgásérzékelőket az itt említett lépések végrehajtásával.

Most töltse fel a PropShieldTeensyView.ino fájlt. Látnia kell a gyorsulásmérő, a giroszkóp és a magnetométer értékeit mind a három tengelyen a Teensyview -n.

18. lépés: A program áttekintése

A haladó vonalkövető programja Arduino IDE nyelven íródott. A program az alábbiakban ismertetett sorrendben működik.

  • Az EEPROM -ban tárolt értékek beolvasásra kerülnek, és megjelenik a menü.
  • A LAUNCH megnyomására a program belép a ciklusba.
  • A normalizált vonalérzékelő értékek kiolvasásra kerülnek.
  • A vonal pozíciójának bináris értékét normalizált szenzorértékekkel kapjuk meg.
  • A vonalon túli érzékelők számát a vonal pozíciójának bináris értékéből számítják ki.
  • A kódoló kullancsok frissülnek, és a teljes megtett távolság, az x-y koordináták és a szög frissül.
  • A 0 és 16 közötti bináris szám különböző értékeihez utasításkészlet hajtódik végre. Ha a bináris szám 1 és 5 között van, és ha a vonalon túl lévő érzékelők szomszédosak egymással, akkor a PID rutin meghívásra kerül. A forgást a bináris érték és a bináris szám más kombinációiban hajtják végre.
  • A PID rutinban (ami ténylegesen PD rutin) a motorokat a hiba, a hiba változása, a Kp és a Kd értékek alapján számított fordulatszámmal hajtják.

A program jelenleg nem méri az orientációs értékeket a prop pajzsból. Ez egy folyamatban lévő munka, és frissítés alatt áll.

Töltse fel a TestRun20.ino fájlt. A következő lépésekben látni fogjuk, hogyan kell navigálni a menüben, módosítani a beállításokat és hogyan kell kalibrálni a vonalérzékelőket.

19. lépés: Navigálás a menüben és a beállításokban

A menüben a következő beállítások találhatók, amelyek a bal és a jobb gombbal navigálhatók, és a középső nyomógombbal választhatók ki. A beállításokat és azok funkcióit az alábbiakban ismertetjük.

  1. KALIBRÁL: A vonalérzékelők kalibrálása.
  2. TESZT: A vonalérzékelő értékeinek megjelenítése.
  3. INDÍTÁS: A kezdő sor követése.
  4. MAX SEBESSÉG: A robot sebességének felső határának beállítása.
  5. FORGATÁSI SEBESSÉG: A robot sebességének felső határának beállítása, amikor kanyart hajt végre, azaz amikor mindkét kerék egyenlő sebességgel fordul ellentétes irányban.
  6. KP: Arányos állandó.
  7. KD: Származékos állandó.
  8. RUN MODE: Két üzemmód - NORMAL és ACCL - közötti választáshoz. NORMAL módban a robot előre meghatározott sebességgel fut a vonal helyzetének megfelelően. ACCL üzemmódban a robot MAX SPEED -jét ACCL SPEED váltja fel a pálya előre meghatározott szakaszaiban. Ez felgyorsíthatja a robotot a pálya egyenes szakaszain. A következő beállítások csak akkor érhetők el, ha a RUN MODE beállítása ACCL.
  9. LAP DISTANCE: A versenypálya teljes hosszának beállítása.
  10. ACCL SEBESSÉG: A robot gyorsulási sebességének beállítása. Ez a sebesség helyettesíti a MAX SPEED -et a pálya különböző szakaszaiban, az alábbiak szerint.
  11. NEM. OF LÉPÉSEK: Az ACCL SPEED használatának lépéseinek számának beállítása.
  12. 1. LÉPÉS: Annak a szakasznak a kezdő és befejező távolságának beállítása, amelyben a MAX SPEED -et ACCL SPEED váltja fel. Minden szakaszban külön beállítható a kezdő és a végső távolság.

20. lépés: Vonalérzékelő kalibrálása

Image
Image

A vonalérzékelő kalibrálása az a folyamat, amellyel a 16 érzékelő mindegyikének küszöbértékét meghatározzák. Ez a küszöbérték annak eldöntésére szolgál, hogy egy adott érzékelő túl van -e a vonalon, vagy sem. A 16 érzékelő küszöbértékeinek meghatározásához a két módszer bármelyikét használjuk.

KÖZÉPSZŰRŐ: Ezzel a módszerrel a vonalérzékelőket a fehér felület fölé helyezik, és előre meghatározott számú érzékelőleolvasást vesznek mind a 16 érzékelőre. Mind a 16 érzékelő medián értékeit meghatározzuk. Ugyanez a folyamat megismétlődik, miután a vonalérzékelőket a fekete felületre helyezték. A küszöbérték a fekete -fehér felületek medián értékeinek átlaga.

MIN MAX: Ennél a módszernél az érzékelő értékeit addig olvassuk, amíg a felhasználó leállítást nem kér. Az egyes érzékelők által észlelt maximális és minimális értékek tárolásra kerülnek. A küszöbérték a minimális és maximális értékek átlaga.

Az így kapott küszöbértékek 0 és 1000 közötti tartományba vannak leképezve.

A vonalérzékelők MIN MAX módszerrel történő kalibrálása a videóban látható. A vonalérzékelők kalibrálása után az adatok megjeleníthetők a képen látható módon. A következő információk jelennek meg.

  • A vonal helyzetének 16 bites bináris ábrázolása 1-es bináris számmal, amely azt jelzi, hogy a megfelelő vonalérzékelő a vonal felett van, és egy bináris 0 azt jelzi, hogy a vonalérzékelő a vonalon kívül van.
  • A vonalon túli érzékelők számának száma.
  • A 16 érzékelő minimális, maximális és érzékelői értékei (nyers és normalizált), egy -egy érzékelővel.
  • A vonal helyzete -7500 és +7500 között van.

A minimális és maximális vonalérzékelő értékeit ezután az EEPROM tárolja.

21. lépés: Tesztfuttatás

Image
Image

A videó egy próbaüzemről szól, amelyben a robotot úgy programozzák, hogy álljon le egy kör megtétele után.

22. lépés: Végső gondolatok és fejlesztések

Robot verseny
Robot verseny

A robot építéséhez összeállított hardvert nem használja ki teljes egészében az azt futtató program. A programrészen sok fejlesztés történhet. A támaszpajzs mozgásérzékelőit jelenleg nem használják pozíció és tájolás meghatározására. A kódolók kilométerszámítási adatai kombinálhatók a támaszpajzs orientációs adataival, hogy pontosan meghatározzák a robot helyzetét és irányát. Ezek az adatok felhasználhatók a robot programozására, hogy több körben tanulja meg a pályát. Javaslom, hogy kísérletezzen ezen a részen, és ossza meg eredményeit.

Sok szerencsét.

Robot verseny
Robot verseny

Második díj a robotok versenyében

Ajánlott: