Tartalomjegyzék:

UCL beágyazott - B0B a vonalkövető: 9 lépés
UCL beágyazott - B0B a vonalkövető: 9 lépés

Videó: UCL beágyazott - B0B a vonalkövető: 9 lépés

Videó: UCL beágyazott - B0B a vonalkövető: 9 lépés
Videó: Устранение неисправностей оптоволокна: Руководство ИТ-администратора 2024, Július
Anonim
UCL beágyazott - B0B a vonalkövető
UCL beágyazott - B0B a vonalkövető

Ez B0B.*

A B0B egy általános rádióvezérelt autó, amely ideiglenesen egy vonalkövető robot alapját szolgálja.

Mint sok előtte lévő vonalkövető robot, ő is mindent megtesz, hogy egy vonalon maradjon, amelyet a padló és a kontrasztos anyag, esetünkben ragasztószalag közötti átmenet okoz.

Sok más vonalkövető robottól eltérően a B0B adatokat is gyűjt és WiFi-n keresztül küld.

Teljesen túlzás egy hobbi projekt számára, de számos olyan témát tartalmaz, amelyeket érdekesnek találhat. Ez az útmutató leírja születését, feladatait és azt, hogyan készíthet olyan embert, mint ő.

Ez magában foglalja azt is, hogy haragszunk a különböző elektronikai eszközökre, amiért nem úgy működnek, ahogy szerettük volna, és a nehézségek leküzdésére tett lépéseinkre (ESP 8266-01).

A projekt működéséhez 2 kód van. Az első kód az ESP8266 modulhoz tartozik, amelyet az Arduino programozóként használunk, a második kód pedig az Arduino -n fut.

1. lépés: Alkatrészek

Ehhez a projekthez szüksége lesz:

Hardver:

• 1x autórádió, (ESC -vel és kormányszervóval kell rendelkezni).

Többnyire részvényes Traxxas 1/16 E-Revo VXL-t használtunk, főleg azért, mert ez volt a miénk, és nagyon bíztuk benne, hogy képesek leszünk irányítani egy Arduino-val. Azért is, mert a végén nem kis mennyiségű extra hardvert fog szállítani, bízunk benne, hogy ez nem jelent problémát az 1/16 E-Revo számára.

Azonban a legtöbb (könnyen szétszedhető) rádióvezérelt autó valószínűleg helyette használható, és a folyamat nagyon hasonló lesz.

• Egy csomó ragasztószalag.

A színnek a lehető legnagyobb mértékben ellentétben kell lennie a padlóval. Vizsgálati környezetünkben fehér szalagot használtunk sötét padlón.

• 1x Arduino Mega 2560.

Valószínűleg a kisebb Arduino -k is rendben vannak, de nyomni kell a csapokért.

• 1x nagy kenyértábla.

Elég egy is, de volt egy kisebb is, hogy elkülönítsük a többi feszültségű vezetéket, hogy csökkentsük a felhasználói hibák kockázatát.

• 1x TCRT5000 IR analóg érzékelő (ütközés elkerülésére).

A pontos márka/modell nem számít, ha kompatibilis az Arduino -val és méri a távolságot. Keressen olyan kulcsszavakat, mint a „Távolság”, „akadályérzékelő”. Technikailag a digitális érzékelő kisebb kódváltozások esetén is működik, de analóg érzékelőt használunk.

• 1x vagy 2x gravitáció: analóg szürkeárnyalatos érzékelő v2

Az egyik a vonalkövető számára szükséges. A pontos modell nem számít, amíg a visszavert fény intenzitását nézi, és analóg jelet bocsát ki. A második a „szoba” érzékeléshez nem a várt módon működött, és kihagyható, vagy egy alternatíva, például RGB színérzékelő található, feltehetően a jobb hatás érdekében. Ezt még tesztelnünk kell.

• 1 x 8266-01 ESP.

Az ESP 8266 számos verziója elérhető. Csak a 8266-01-gyel rendelkezünk, és nem tudjuk garantálni, hogy az ESP-kód más verzióval fog működni.

• 1 x ESP8266-01 Wi-Fi pajzs.

Technikailag opcionális, de ha ezt nem használja, minden, ami a Wi-Fi modulhoz kapcsolódik, sokkal bonyolultabb lesz. Az útmutató azonban feltételezi, hogy rendelkezik ezzel (ha nem, keresse meg az online útmutatókat az ESP-01 helyes csatlakoztatásához az Arduino-hoz), mivel helytelenül ez károsíthatja és valószínűleg károsítja a modult.

• Akkumulátorok a jármű számára és akkumulátorok a kiegészítő elektronika táplálására.

Egy pár 2,2 AH kapacitású, 7,4 V -os Lipo akkumulátort használtunk párhuzamosan a tápellátáshoz. Képesnek kell lennie arra, hogy bármilyen akkumulátort használjon, amelyet általában a választott járművel használ. Ha 5 V felett van, de 20 V alatt, akkor a kapacitás fontosabb, mint a névleges feszültség.

• Sok jumper kábel.

Felhagytam ezek pontos számolásával. Ha úgy gondolja, hogy elege van, akkor valószínűleg nem.

• Végül, hogy mindent rögzítsen, fel kell szerelnie az Arduino-t, az érzékelőket, a kenyérsütő lapot és a Wi-Fi modult az Ön által választott járműre. Az eredmény attól függ, hogy mit használ alapként, és milyen anyagok állnak rendelkezésre.

Használtuk:

• Cipzár.

• Néhány szuper ragasztó.

• Kis méretű papírhulladék/gyantacső, megfelelő átmérővel.

• Régi szabadkőműves hátlap képkeretből, méretre vágva.

• Még egy kis ragasztószalag.

• Bármilyen szerszám, amely szükséges a rádióvezérelt autó kiválasztásához.

Többnyire kis csavarhúzó készletet használtunk, több bittel, de időnként ki kellett húzni az autóhoz tartozó készlet szerszámkészletet.

Szoftver:

• Csomó-piros

Az adatgyűjtés fontos része.

• MQTT szerver.

A középső ember a járművünk és a csomópont között. Kezdetben a teszteléshez a test.mosquitto.org oldalt használtuk

Később használtuk:

• CloudMQTT.com

Ez sokkal megbízhatóbb volt, ami több mint kompenzálta, hogy kissé bonyolultabb volt a beállítása.

• WampServer.

Az adatgyűjtés utolsó része. Konkrétan az SQL adatbázisát fogjuk használni az összegyűjtött adatok tárolására.

2. lépés: Elektromos diagram

Elektromos diagram
Elektromos diagram

3. lépés: Fizikai felépítés

Fizikai felépítés
Fizikai felépítés
Fizikai felépítés
Fizikai felépítés
Fizikai felépítés
Fizikai felépítés

Megoldásunk egyenes megközelítésű a fizikai összeszereléshez.

Az eredeti vevőkészüléket és vízálló burkolatát eltávolították az RC autóból, mivel erre nincs szükség.

Megállapítottuk, hogy az első kerekek között van egy megfelelő hely a vonalkövető érzékelőnk számára, ezért tartottuk a helyén úgy, hogy egy cipzárt hurkoltunk az első csúszólemez fölé.

Az ütközés elleni védelemhez használt érzékelő be van ékelve az első lökhárító mögé. Még mindig védve van az ütközésektől, és súrlódása is megfelelő. Végül olyan enyhe felfelé irányuló szögben néz előre. Ez tökéletes.

A szabadkőműves lemez (hátlapja a régi képkeretből) tetején kis méretű papír/gyanta cső van, méretre vágva, és az aljára ragasztva. Ezek illeszkednek a karosszériához, és egyszerűen a tetején ülnek, mindent biztonságosan tartva. Feltéve, hogy a csövet a lemezhez rögzítő ragasztó tart, és nem dől túlzottan, ez a helyén marad. Azt is érdemes megjegyezni, hogy a lemez a kerekek és a lökhárítók védőgömbjén belül van. Az Arduino Mega -t és a két kenyeretáblát dupla oldalsó szalaggal vagy a ragasztószalag hurkával rögzítették a lemezre.

Nem történt különleges intézkedés a WiFi-modul biztosítására. Ez nem a miénk, így a ragasztását vagy leragasztását feleslegesnek ítélték, mivel annyira könnyű, hogy nem fog sokat mozogni, és a vezetékek elegendőek a helyükön tartásához.

Végül van egy érzékelőnk a „helyiségek” észlelésére, amelyet az egyik hátsó kerék rögzített a felfüggesztés alkatrészeire. Üzemelés közben ennek távol kell lennie attól a vonaltól, amelyet a jármű használ a navigáláshoz.

4. lépés: ESP8266 modul

ESP8266 modul
ESP8266 modul
ESP8266 modul
ESP8266 modul

A WiFi modul, az ESP8266 két különböző tűs beállítást igényel. Egy beállítást kell használni, amikor a modult új programmal villogja, és az Arduino Mega 2560 programozóként használja. A másik beállítás a modulra vonatkozik, amikor használatban van, és információt küld az MQTT Broker -nek.

Az Arduino IDE használatával kódot tölthet fel az ESP8266 modulba, telepítenie kell egy táblakezelőt és egy további táblák kezelőt

Az alapkezelő alatt telepítse az esp8266 fórumkezelőt. Könnyen megtalálható az "esp" kereséssel. Fontos, hogy a 2.5.0 verziót telepítse, nem régebbi, nem újabb.

Más táblák kezelői URL -címek beállításai alatt másolja be ezt a sort:

arduino.esp8266.com/stable/package_esp8266c…

Ahhoz, hogy bármit fel tudjon tölteni az ESP8266 modulba, egy speciális tűbeállítást kell használnia, hogy felvillanhassa a modult. Ezt minden alkalommal meg kell tenni, amikor módosítani szeretné a modulon futó aktuális kódot. Ne felejtse el kiválasztani a megfelelő ESP8266 modult az alaplapkezelőből, mielőtt felvillan a modul. Ebben a projektben az általános ESP8266 lapot választottuk. A modul villogó csapjának beállítása a szegmens első képén található.

Az ESP8266 modul villogása után meg kell változtatni a csap beállítását. A beállítás megkönnyítése érdekében választhat adaptert is. Ebben a projektben úgy döntöttünk, hogy mindig van egy adapter, amikor a modul fut. A csap beállítása adapterrel a szegmens második képén található.

Az ESP8266 modulra felvillantandó kód beállítja a kapcsolatot a WiFi -vel és az MQTT Brokerrel, ebben az esetben felhasználónévvel és jelszóval, de megtehető anélkül is, ha elvégzi a szükséges módosításokat, amelyeket a kód megjegyzései írnak le. Ehhez a projekthez brókerünk felhasználónevet és jelszót igényelt a működéshez. A modul olvassa a bejövő üzeneteket a soros portról, amelyhez csatlakozik. Elolvassa az Arduino kód által létrehozott minden új sort, megfejti az üzenetet és újból létrehozza az üzenetet. Ezt követően elküldi az üzenetet a kódban megadott MQTT Broker -nek. Az ESP8266 modul kódja:

5. lépés: Arduino

A WiFi modul konfigurálása után megnézzük azt a programot, amelyet az RC autó motorjának és szervójának vezérlésére használnak. Az autó a központi érzékelő szürkeárnyalatos információi szerint fog reagálni, amelyet ebben a projektben "vonalérzékelőnek" is neveznek. Egyértelműen az a célja, hogy a vonalérzékelőből származó információkat egy előre beállított érték közelében tartsa, amely megegyezik a világos és a sötét vagy a projekt, fehér és fekete közötti váltáskor rögzített információkkal. Tehát ha az érték túlságosan eltér egymástól, akkor a szervó kimenete a vonal előre beállított értéke közelében fogja irányítani az autót.

A program két gombbal rendelkezik, amelyek indító és leállító gombként működnek az RC autóban. Technikailag a "stop" gomb egy "élesítés" gomb, amely kifejezése megegyezik a motornak küldött PWM értékkel, amely miatt az RC autó leáll. A start gomb olyan PWM értéket küld, amely megegyezik az alig haladó RC autóval, mivel túl gyorsan fog haladni, ha túl nagy lendületet vesz.

Az ütközés-elkerülés érzékelőt az RC autó elejére szerelik fel annak érzékelésére, hogy az előre vezető út szabad-e vagy el van zárva. Ha blokkolja, az RC autó megáll, amíg az akadály el nem tűnik/el nem távolodik. Az érzékelő analóg jelét használják annak meghatározására, hogy valami akadályozza -e az utat, és kritériumként szolgál a továbblépéshez és a megálláshoz.

Egy másodlagos szürkeárnyalatos érzékelőt, a "Szobaérzékelőt" használják annak érzékelésére, hogy az RC autó melyik szobába lépett. Hasonló elven működik, mint a vonalérzékelő, de nem a világos és a sötét közötti változást keresi, hanem egy adott tartományon belüli értékeket, amelyek a helyiségérzékelő által látott érték függvényében különböző helyiségeknek felelnek meg.

Végül a program létrehoz egy sor információt a szenzorokból a WiFi modul számára, hogy elolvassa, majd elküldi az MQTT Broker -nek. Az információs sor karakterláncként jön létre, és a megfelelő sorozathoz íródik, amelyhez a WiFi modul csatlakozik. Fontos, hogy a sorozatba való írás csak olyan gyakran történjen, ahogyan a WiFi modul képes beolvasni a bejövő üzenetet, de ne felejtse el késleltetni ezt a kódot, mivel ez zavarja az RC autó képességét a sor követésére. Ehelyett használja a "millis" parancsot, mivel lehetővé teszi a program késedelem nélküli futtatását, de miután az Arduino bekapcsolása óta meghatározott mennyiségű milliszám eltelt, üzenetet ír a sorozatnak anélkül, hogy blokkolná a kódot, ugyanúgy, mint a késleltetés.

Az Arduino Mega 2560 kódja:

6. lépés: MySQL adatbázis

A WampServer egy webes fejlesztői környezet a Windows számára, amely lehetővé teszi számunkra PHP és MySQL adatbázissal rendelkező alkalmazások létrehozását. A PhpMyAdmin lehetővé teszi számunkra, hogy könnyen kezeljük adatbázisunkat.

A kezdéshez látogasson el a következő webhelyre:

Ebben a projektben a 3.17 x64 bites verziót használjuk a Windows számára. A telepítés után győződjön meg arról, hogy minden szolgáltatás fut, ami azt jelenti, hogy a kis ikon piros vagy narancssárga helyett zöldre vált. Ha az ikon zöld, akkor elérheti a PhpMyAdmin alkalmazást a MySQL adatbázis kezeléséhez.

Nyissa meg a MySQL -t a PhpMyAdmin használatával, és hozzon létre egy új adatbázist. Nevezzen valami megfelelőt, amire emlékezhet, ebben a projektben „line_follow_log” -nak hívták. Az adatbázis létrehozása után létre kell hoznia egy táblázatot az adatbázisban. Győződjön meg arról, hogy az oszlopok száma megfelel. A projektben 4 oszlopot használunk. Az egyik oszlop egy időbélyegző, az utolsó három pedig a jármű adatainak tárolására szolgál. Minden oszlophoz használjon megfelelő adattípust. Az időbélyeg oszlophoz a „longtext”, a többihez a „mediumtext” kifejezést használtuk.

Ennyit kell tennie a PhpMyAdmin és a MySQL rendszerben. Ne feledje az adatbázisát és a táblázatot a Csomó-vörös témakörben.

7. lépés: Node-Red

Az adatgyűjtés kezelésére egy meglehetősen egyszerű folyamatot használunk csomópont-vörösben. Csatlakozik az MQTT szerverünkhöz, és ír a MYSQL adatbázisunkba.

Ehhez szükségünk van néhány palettára a különböző funkciók működéséhez, és szükségünk van egy tényleges kódra a futtatásához.

Először is. Szükségünk lesz a következő raklapokra.

Node-red-contrib-mqtt-broker: Ez a kapcsolat az MQTT brókerünkkel.

Csomópont-piros-műszerfal: Dashboardunk, amely az összegyűjtött adatok vizuális megjelenítéséhez szükséges.

Node-red-node-mysql: Kapcsolatunk az SQL adatbázissal.

Ez nem célja, hogy teljes körű útmutató legyen a csomó-vöröshez, de elmagyarázom, hogy mit tesz a csomó-vörös áramlás.

Korábban problémáink voltak a választott MQTT szerverünkkel, amelyek látszólag véletlenszerűen meghaltak/lekapcsolódtak, ezért minden változtatás elkeserítő erőfeszítés volt, mivel nem volt világos, hogy a változtatások előnyösek voltak -e, vagy nem, amikor nem láttuk az eredményt. Tehát a "Meghalt a szerver?" "Nem" beadja a következő blokkot az MQTT szerverünknek. Ha nem halott, a „Nem” jelenik meg a hibakeresési ablakban. Ez nem csak tesztelésre szolgál, hanem arra kényszeríti a vörös csomópontot, hogy megpróbáljon újra csatlakozni az MQTT szerverhez.

A 'Teszt sztring' jelmez karakterláncot küld az MQTT brókernek. Ezt a karakterláncot úgy formáztuk, hogy hasonló legyen ahhoz, amit az Arduino -tól kapunk. Ez megkönnyítette a hálózat konfigurálását, amely dekódolja az üzeneteket anélkül, hogy a projektnek futnia kellene, és adatokat kellene gyűjtenie.

A munkaterület utolsó folyamata két szegmensre osztható. Az alsó ág egyszerűen beolvassa a beérkező üzeneteket, közzéteszi őket a hibakeresési ablakban, és elmenti őket az SQL szerverre.

A csatlakoztatott kapcsolók nagy hálózata egy funkciócsomópontot követ, ha ott történik az igazi „varázslat”.

A folyamatfüggvény beolvassa a bejövő karakterláncot, felosztja azt minden pontosvesszővel, és a kimeneteket továbbítja. A következő kapcsolók két különböző bejövő információ egyikét keresik. Az egyik kimeneten mindig egy adott információ halad át, a másik opció a második kimeneten keresztül távozik. Ezt követően a kapcsolóblokkok második csoportja. Csak egy meghatározott bemenettel aktiválódnak, és valami mást adnak ki.

Egy példa, az „akadály”, mint az összes többi, bináris választás, vagy világos vezetni, vagy nem. Tehát 0 -t vagy 1 -et kap. A 0 -t a „tiszta” ágra, 1 -et az „Obstructed” ágra küldi. A „Törlés”, „Akadálymentesített” kapcsolók, ha aktiválva vannak, valami konkrét, Tiszta vagy akadályozott kimenetet eredményeznek. A zöld folyamatblokkok a hibakeresési ablakban jelennek meg, a kék pedig az irányítópultunkon.

A „status” és a „location” ágak pontosan ugyanúgy működnek.

8. lépés: MQTT Broker

A bróker egy szerver, amely az üzeneteket az ügyfelektől a megfelelő cél ügyfelekhez irányítja. Az MQTT Broker olyan, ahol az ügyfelek az MQTT Library segítségével csatlakoznak a brókerhez hálózaton keresztül.

Ehhez a projekthez létrehoztunk egy MQTT Brokert a CloudMQTT szolgáltatás használatával, ingyenes előfizetéssel a "Cute Cat" verzióhoz. Ennek vannak korlátai, de nem lépjük túl a projektben szereplőket. A WiFi modul csatlakozhat a brókerhez, és a bróker ezután átirányítja az üzeneteket egy megfelelő cél ügyfélhez. Ebben az esetben az ügyfél a Node-Red. A CloudMQTT szolgáltatás felhasználónevet és jelszót állít be szerveréhez, így nagyobb biztonságot garantálunk. Alapvetően azt jelenti, hogy csak a felhasználónévvel és jelszóval rendelkezők férhetnek hozzá ehhez a CloudMQTT szolgáltatáshoz. A felhasználónév és a jelszó kulcsfontosságú a kapcsolat beállításakor az ESP8266 kódon, valamint a Node-Red kódon.

A Bróker által kapott üzenetek folyamatos statisztikája kellemes szolgáltatás, amellyel meg lehet nézni, hogy az előfizetési csomag mennyire jól kezeli az általa továbbított információkat.

Szép tulajdonság az a lehetőség, hogy üzeneteket küldhetünk a brókerről a WiFi modulra, de ezeket nem használtuk ebben a projektben.

9. lépés: Hobbi elektronika

Mielőtt elkezdtük, egy korábbi projektből tudtuk, hogy az állványkormány szervót PWM jelű, hasonló vezetékekkel rendelkező Arduino -ról lehet vezérelni, és ugyanazon a rádióvevőn különböző csatornákra kell csatlakoztatni, feltételeztük az elektronikus sebességszabályozót (ESC most be), amely a motort vezérli, hasonlóképpen vezérelhető az Arduino PWM -en keresztül.

Ennek az elméletnek a tesztelésére egy kis Arduino vázlatot készítünk. A vázlat analóg bemenetet olvas be a potenciométerből, átformálja az értéket 0, 1024 -ről 0, 255 -re, és a kapott értéket egy PWM tűre adja ki, az analogWrite () használatával, miközben az R/C autó egy kis dobozon volt, és kerekek eltávolítva.

Miután végigsöpört a fazékmérő tartományán, az ESC úgy tűnt, hogy „felébred”, és fel -le tudjuk fojtani, és az Arduino -t is ki kell nyomtatni az értékeket a soros kapcsolatra, hogy nyomon követhessük őket.

Úgy tűnt, hogy az ESC -nek nem tetszenek egy bizonyos küszöbérték alatti értékek, jelen esetben a 128. A 191 -es jel semleges fojtószelepnek, a 255 pedig maximális fojtószelepnek tekintette.

Nem kellett változtatnunk a jármű sebességén, és tökéletesen haladtunk a leglassabb sebességgel, ami miatt mozogni lehetett. A 192 volt a legalacsonyabb érték, amely megfordítaná a motort, azonban még össze kell szerelnünk mindent, és nem vagyunk biztosak abban, hogy ez a kimenet elegendő lenne -e a jármű mozgatásához a végső összeszerelés után, azonban egy kicsit nagyobb érték megadása triviális.

A potenciométer megkerülése és a fix érték bevitele a kódba azonban nem működött. Az ESC egyszerűen villogott, és nem forgatta a motort, a fojtószelep beállítását a kézikönyv szerint kell elvégezni.

A dühös hibaelhárítás, különböző értékek dobása, különböző vezetékek használata, sőt az Arduino által használt PWM frekvencia megváltoztatásával való kísérletezés is több furcsaságot eredményezett.

Időszakos kérdésnek tűnt, néha futni kezdett, máskor nem volt hajlandó semmit tenni. Egyszerűen csak pislogott tovább. Az eredeti vezérlővel és vevővel végzett teszt megerősítette, hogy az ESC továbbra is pontosan a tervezett módon működik, ami még furcsábbá tette a problémákat. A magasabb értékeket figyelmen kívül hagyta és folyamatosan villogott, az alacsonyabb értékeket az ESC visszatért, hogy boldog zöldre ragyogjon, de mégsem fordult meg.

Miben különbözött a potenciométertől, az állomány -adótól és -vevőtől, valamint a fix értékeket biztosító verziótól?

Néha a rendeltetésszerűen és a várakozásoknak megfelelően működő munka nem nagyon fed át a Venn -diagramon. Ebben az esetben, ha játékról van szó, nem lehet esélye annak, hogy a modell egyszerűen leszedje vagy eltörje az ujjait, vagy hajat kapjon a kerekekben vagy a hajtásláncban, amikor a modell bekapcsol, még akkor is, ha valami olyasmi, mint az adó furcsa tartása, be van kapcsolva a gázpedál bármely más pozíció, mint a semleges.

„Állítsa be a fojtószelep -beállítást”, pontosan ezt jelenti. Az ESC semleges jelet vár, amikor bekapcsol, mielőtt megkapja, hogy nem tesz semmit. Általában az adó mindig üres helyzetben van, amikor az ESC be van kapcsolva, és onnan boldogan vezet. Ha nem, akkor valószínűleg legalább egyszer visszaáll a semleges helyzetbe, mire a modell szilárdan a talajon áll, és a kezelő késznek érzi magát a versenyre.

A potenciométer használata közben „végigsöpörtünk” a tartományokon, és akkor elkezdett működni. Egyszerűen élesedett, amikor a potenciométer elsöpörte a semleges helyzetet, majd működött.

Az alacsonyabb tartományok azonban továbbra sem tetszettek az ESC -nek. Kiderült, hogy ez a PWM terhelési ciklusok terméke.

Akár tervezésből, akár technikai okból történt, mind a kormány szervó, mind az ESC figyelmen kívül hagyja az 50% -os üzemi ciklus alatti jeleket. Ez akkor fordulhat elő, ha a vevő/adó leáll, vagy lemerül az áram, a modell visszatér semleges helyzetbe, és nem indul el a távolba teljes hátrameneti gázzal. Hasonlóképpen, a szervó csak 180 fokban forog, és nincs szüksége a teljes tartományra.

Ezzel az új tudással a kezében új Arduino vázlatot hoztak létre. A kezdeti verzió elfogadja a soros monitorba bevitt karakterláncokat, egész számmá alakítja, és a szervokönyvtár használatával írja át a PWM pin -be, és írja ()*. Ha új értéket ad meg a soros monitoron, az írási () érték frissül.

A tesztelés során a Traxxas ESC állományt egy Mtroniks G2 Micro -ra cserélték, de ugyanúgy kell működniük, bár a pontos értékek kissé eltérhetnek.

Ez a könyvtár az ESC -t szervóként kezeli, ez látszólag rendben van. A Servo.h könyvtárból származó write () függvény 0 -ról 180 -ra megy, a várható élesítési jel várhatóan a közepén lesz.

A G2 Micro írás közben () élesedik 90 körüli értéktartományban, de nehéz volt meghatározni, mivel úgy tűnik, hogy „emlékezik” arra, hogy élesítették.

A Traxxas VXL-s3 várhatóan 91-es írási () értékkel élesedik.

Az élesítési jelzés után az ESC vagy boldogan fogadta a PWM jeleket, függetlenül attól, hogy az Arduino függvények hogyan generálták őket, és ennek megfelelően vezérli a motort.

Apropó funkciók; a Servo.h könyvtárból származó szabványos analogWrite (), valamint write () és writeMicroseconds () mind felcserélhető módon használható, csak ne feledje, hogy mit tesz, és végső soron semmi más, mint a ciklus. A WriteMicroseconds () használható, ha nagyobb részletességre van szükség, ne feledje, hogy a tartomány 1000 és 2000 között van, az élesítés vagy a „semleges” pedig 1500 -nál várható. A szabványos 128 és 255 között lehet, 191 körül pedig semleges.

Ajánlott: