Kazalo:
- 1. korak: spremenjena lokacija vadnice
- 2. korak: Zgradite robota za diferencialni pogon SnappyXO
- 3. korak: Priključite elektroniko
- 4. korak: Namestite knjižnico PreciseMovement Arduino
- 5. korak: Koda
- 6. korak: Kako deluje
Video: SnappyXO natančen robot za premikanje: 6 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
S pomočjo knjižnice PreciseMovement Arduino naredite svojega robota Arduino naravnost na določeno razdaljo ali zasukajte pod določenim kotom.
Robot potrebuje valjar za kroglice ali enakovreden material za zmanjšanje trenja med zvijanjem.
www.pololu.com/product/954
Robotu lahko poveste, naj gre naprej na določeno razdaljo ali se obrne v določen kot. Program določi svoj položaj na podlagi mrtvega računa. Ker ocene položaja temeljijo le na hitrosti kolesa, bo zdrs povzročil znatno napako. Oblikovalec robota mora biti previden, da čim bolj zmanjša tveganje zdrsa.
To je bilo preizkušeno za delo z robotom SnappyXO.
1. korak: spremenjena lokacija vadnice
Vadnica je bila premaknjena na spodnjo stran. Ta vadnica se ne vzdržuje več.
sites.google.com/stonybrook.edu/premo
2. korak: Zgradite robota za diferencialni pogon SnappyXO
Knjižnica PreciseMovement, ki jo bomo uporabljali, je združljiva samo z roboti z diferencialnim pogonom. Lahko se odločite za uporabo drugih robotov s pogonom na 2 kolesa.
3. korak: Priključite elektroniko
Za standardni optični kodirnik SnappyXO:
D0 (izhod za kodirnik) -> Arduino Digital Pin
VCC -> Arduino 5V
GND -> GND
Moč motorja in Arduina:
Vir energije motorja mora ustrezati motorjem, ki jih uporabljate. Za komplet SnappyXO se za moč motorja uporabljajo 4AA baterije in 9V baterija za napajanje Arduino. Prepričajte se, da imajo vsi skupni GND.
4. korak: Namestite knjižnico PreciseMovement Arduino
Prenesi:
github.com/jaean123/PreciseMovement-library/releases
Kako namestiti Arduino knjižnico:
wiki.seeedstudio.com/How_to_install_Arduino_Library/
5. korak: Koda
Koda Arduino:
create.arduino.cc/editor/ whileloop/7a35299d-4e73-409d-9f39-2c517b3000d5/preview
Te parametre je treba prilagoditi. Druge parametre, označene s priporočenimi na kodi, je mogoče prilagoditi za boljše delovanje.
- Preverite in nastavite zatiče motorja pod ARDUINO PINS.
-
Nastavite LENGTH in RADIUS.
- LENGTH je razdalja od levega kolesa do desnega kolesa.
- RADIUS je polmer kolesa.
-
Nastavite PULSES_PER_REV, ki je število impulzov, ki jih dajalnik oddaja za en vrtljaj kolesa.
- Upoštevajte, da se to razlikuje od števila impulzov, ki jih dajalnik odda za en vrtljaj gredi motorja, razen če so dajalniki priključeni za branje neposredno z gredi kolesa.
- PULSES_PER_REV = (impulzi na en vrtljaj gredi motorja) x (prestavno razmerje)
-
Nastavite STOP_LENGTH, če vidite, da se robot po premiku naprej prestreže.
Robot se bo ustavil, ko je ocenjeni položaj STOP_LENGTH stran od cilja. Tako je STOP_LENGTH približna razdalja, ki je potrebna, da se robot ustavi
-
PID parametri
KP_FW: To je sorazmerna komponenta gibanja naprej. Povečajte to število, dokler robot ne gre naravnost. Če s to nastavitvijo ne morete priti naravnost, je verjetno kriva strojna oprema. (npr. neusklajenost koles itd.)
KP_TW: To je proporcionalna komponenta PID gibanja zvijanja. Preprosto začnite z nizko vrednostjo in to povečujte, dokler hitrost zvijanja ali kotna hitrost robota med zvijanjem ni dovolj hitra, vendar ne povzroči prekoračitve. Za opazovanje lahko robot zamenjate od 0 do 90 in nazaj, tako da v funkcijo zanke vstavite naslednje
To nastavite v zanko za nastavitev KP_FW:
mover.forward (99999);
To nastavite v zanko, če želite zamenjati od 0 do 90 za nastavitev KP_TW:
mover.twist (90); // Twist 90 CW
zamuda (2000);
mover.twist (-90) // Twist 90 CCW
zamuda (2000);
Upoštevajte, da je za dejansko zvijanje kotne hitrosti na TARGET_TWIST_OMEGA potrebno nastaviti tudi KI_TW, saj se proporcionalni krmilnik nikoli ne bo postavil na natančen cilj. Ni pa treba zvijati pri ravno takšni kotni hitrosti. Kotna hitrost mora biti le dovolj počasna.
6. korak: Kako deluje
Če vas zanima, kako deluje, preberite dalje.
Premik naprej se vzdržuje naravnost z uporabo algoritma čistega zasledovanja na ravni črti. Več o Pure Pursuit:
PID krmilnik zvijanja poskuša ohraniti kotno hitrost zvijanja na TARGET_TWIST_OMEGA. Upoštevajte, da je ta kotna hitrost kotna hitrost celotnega robota in ne koles. Uporablja se samo en PID krmilnik, izhod pa je hitrost zapisovanja PWM tako levega kot desnega motorja. Za izračun kota se opravi mrtvi obračun. Ko kot doseže prag napake, se robot ustavi.
Priporočena:
Premikanje po besedilnem zaslonu (vodnik od A do Ž): 25 korakov (s slikami)
Drsni prikaz besedila (Vodnik od A do Ž): V tem navodilu / videoposnetku vas bom vodil po korakih po korakih, kako narediti pomikanje besedila z Arduinom. Ne bom razlagal, kako narediti kodo za Arduino, pokazal vam bom, kako uporabljati obstoječo kodo. Kaj in kje morate sodelovati
Arduino natančen in natančen voltmeter (0-90V DC): 3 koraki
Arduino natančen in natančen merilnik voltov (0-90V DC): V tem navodilu sem z relativno natančnostjo in natančnostjo z uporabo Arduino Nano zgradil voltmeter za merjenje visokih napetosti DC (0-90v). Preskusne meritve, ki sem jih opravil, so bile dovolj natančne, večinoma znotraj 0,3v dejanske napetosti, izmerjene z
Samodejno premikanje strani: 8 korakov
Samodejno preklapljanje strani: osnove: mornarsko = servožut = zglobno = PLA ali karkoli drugega, res je precej preprost koncept, da potisnete razgibano roko pod svojo stran, nato pa, ko končate branje strani, pritisnete drugo roko (ravno) in jo obrne stran za
Premikanje po povezanem seznamu z uporabo rekurzije - Java: 12 korakov
Premikanje po povezanem seznamu z uporabo rekurzije - Java: Dobrodošli in hvala, ker ste izbrali ta nabor navodil, ki vam bo pokazal, kako ustvariti rekurzivno funkcijo. Za razumevanje korakov, ki jih boste izvedli, je potrebno osnovno znanje jave. Na splošno ta 12-stopenjski postopek ne bi smel več trajati
Izjemno natančen lok s peresom z visoko močjo, dolgi doseg in izjemno natančen lok !!!: 6 korakov
Izjemno natančen lok za peresnike z visoko močjo, dolgega dosega in izrednega natančnosti !!!: To je še eden izmed tistih znanih lokov za peresa !!! =) Uživajte! P.S. te stvari so nekako močne, ne ciljajte na nekoga.DISCLAIMER: Ne morete me tožiti, če s tem kaj prekinete. Vključno z ljudmi in živalmi. To je moj prvi Instructable, zato prosim