INHOUDSOPGAWE:
- Stap 1: Tutoriaal -ligging verander
- Stap 2: Bou die SnappyXO Differential Drive -robot
- Stap 3: Koppel die elektronika aan
- Stap 4: Installeer PreciseMovement Arduino -biblioteek
- Stap 5: Kode
- Stap 6: Hoe dit werk
Video: SnappyXO Precise Mover Robot: 6 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Laat u Arduino -robot reguit vir 'n bepaalde afstand draai of na 'n bepaalde hoek draai met die PreciseMovement Arduino -biblioteek.
Die robot benodig 'n rolbal of gelykstaande om wrywing tot 'n minimum te beperk terwyl hy draai.
www.pololu.com/product/954
U kan die robot vertel om na 'n bepaalde afstand te gaan of na 'n bepaalde hoek te draai. Die program bepaal sy posisie met behulp van dooie afrekening. Aangesien die posisieskattings slegs op die wielsnelheid staatmaak, kan glip aansienlike foute veroorsaak. Die ontwerper van die robot moet versigtig wees om die risiko van glip te verminder.
Dit is getoets om saam met die SnappyXO -robot te werk.
Stap 1: Tutoriaal -ligging verander
Die tutoriaal is na die onderstaande bladsy verskuif. Hierdie tutoriaal word nie meer onderhou nie.
sites.google.com/stonybrook.edu/premo
Stap 2: Bou die SnappyXO Differential Drive -robot
Die PreciseMovement -biblioteek wat ons gaan gebruik, is slegs versoenbaar met differensiële dryfrobotte. U kan kies om ander 2 -wielaangedrewe robotte te gebruik.
Stap 3: Koppel die elektronika aan
Vir die standaard SnappyXO optiese encoder:
D0 (encoder output) -> Arduino Digital Pin
VCC -> Arduino 5V
GND -> GND
Motor- en Arduino -krag:
Die motorbron moet voldoende wees vir die motors wat u gebruik. Vir die SnappyXO -stel word 4AA -batterye gebruik vir die motorvermoë en 9V -batterye vir die Arduino -krag. Maak seker dat hulle almal 'n gemeenskaplike GND het.
Stap 4: Installeer PreciseMovement Arduino -biblioteek
Aflaai:
github.com/jaean123/PreciseMovement-library/releases
Hoe om Arduino -biblioteek te installeer:
wiki.seeedstudio.com/How_to_install_Arduino_Library/
Stap 5: Kode
Arduino -kode:
create.arduino.cc/editor/whileloop/7a35299d-4e73-409d-9f39-2c517b3000d5/preview
Hierdie parameters vereis aanpassing. Ander parameters wat op die kode aanbeveel word, kan aangepas word vir beter prestasie.
- Kontroleer en stel die motorpenne onder ARDUINO PINS.
-
Stel LENGTE en RADIUS.
- LENGTE is die afstand van die linkerwiel na die regterwiel.
- RADIUS is die radius van die wiel.
-
Stel PULSES_PER_REV in, wat die aantal pulse is wat die enkodeerder uitsette vir een wielomwenteling stel.
- Let op: dit verskil van die aantal pulse wat die encoder uitvoer vir een motorasomwenteling, tensy die encoders gekoppel is om direk vanaf die wielas af te lees.
- PULSES_PER_REV = (pulse per omwenteling motoras) x (ratverhouding)
-
Stel STOP_LENGTH in as u sien dat die robot oorskiet na die voorwaartse beweging.
Die robot sal stop sodra die geskatte posisie STOP_LENGTH van die teiken af is. Die STOP_LENGTE is dus die geskatte afstand wat nodig is om die robot tot stilstand te bring
-
PID parameters
KP_FW: Dit is die proporsionele komponent van die voorwaartse beweging. Verhoog dit totdat die robot reguit loop. As u dit nie regkry nie, kan die hardeware waarskynlik 'n fout maak. (bv. wielverstelling, ens.)
KP_TW: Dit is die proporsionele komponent van die draai -beweging PID. Begin eenvoudig vanaf 'n lae waarde en verhoog dit totdat die draaisnelheid, of die hoeksnelheid van die robot terwyl dit draai, vinnig genoeg is, maar dit veroorsaak nie oorskryding nie. Om waarnemings te maak, kan u die robot wissel van 0 tot 90 en terug deur die volgende in die lusfunksie in te voeg
Plaas hierdie in lus om KP_FW af te stem:
verskuif.vooruit (99999);
Plaas dit in 'n lus om van 0 tot 90 af te wissel om KP_TW af te stem:
mover.twist (90); // Draai 90 CW
vertraging (2000);
mover.twist (-90) // Twist 90 CCW
vertraging (2000);
Let daarop dat om die hoeksnelheid by TARGET_TWIST_OMEGA eintlik te draai, die KI_TW ook moet ingestel word, aangesien 'n proporsionele kontroleerder nooit by die presiese teiken sal kom nie. Dit is egter nie nodig om teen die presiese hoeksnelheid te draai nie. Die hoeksnelheid moet net stadig genoeg wees.
Stap 6: Hoe dit werk
As u nuuskierig is oor hoe dit werk, lees verder.
Die voorwaartse beweging word reguit gehou met behulp van die suiwer agtervolgingsalgoritme op 'n reguit pad. Meer oor Pure Pursuit:
Die draai PID -kontroleerder probeer om die draaihoeksnelheid op TARGET_TWIST_OMEGA te hou. Let op dat hierdie hoeksnelheid die hoeksnelheid van die hele robot is, nie van die wiele nie. Slegs een PID -kontroleerder word gebruik en die uitset is die PWM -skryfspoed van beide die linker- en regtermotors. Dooie afrekening word gedoen om die hoek te bereken. Sodra die hoek die foutdrempel bereik het, stop die robot.
Aanbeveel:
Hoe om SMARS Robot te bou - Arduino Smart Robot Tank Bluetooth: 16 stappe (met foto's)
Hoe om SMARS Robot te bou - Arduino Smart Robot Tank Bluetooth: Hierdie artikel word met trots geborg deur PCBWAY. PCBWAY maak prototipe PCB's van hoë gehalte vir mense oor die hele wêreld. Probeer dit self en kry 10 PCB's vir slegs $ 5 by PCBWAY met 'n uitstekende kwaliteit, dankie PCBWAY. Die motorskerm vir Arduino Uno
PAPIER HUNGRY ROBOT - Pringles Recycle Arduino Robot: 19 stappe (met foto's)
PAPIER HUNGRY ROBOT - Pringles Recycle Arduino Robot: Dit is 'n ander weergawe van Hungry Robot wat ek in 2018 gebou het. U kan hierdie robot sonder 3D -drukker maak. Al wat u hoef te doen is om net 'n blikkie Pringles, 'n servomotor, 'n nabyheidssensor, 'n arduino en 'n paar gereedskap te koop. U kan al die
[DIY] Spider Robot (Quad Robot, Quadruped): 14 stappe (met foto's)
[DIY] Spider Robot (Quad Robot, Quadruped): as u ekstra ondersteuning van my nodig het, is dit beter om 'n geskikte donasie aan my te lewer: http: //paypal.me/RegisHsu2019-10-10 opdatering: Die nuwe samesteller sal die probleem met die berekening van die drywende getal veroorsaak. Ek het die kode al verander. 2017-03-26
Joy Robot (Robô Da Alegria) - Open Source 3D -gedrukte, Arduino -aangedrewe robot !: 18 stappe (met foto's)
Joy Robot (Robô Da Alegria) - Open Source 3D -gedrukte, Arduino -aangedrewe robot!: Eerste prys in die Instructables Wheels Contest, Tweede prys in die Instructables Arduino Contest, en naaswenner in die Design for Kids Challenge. Dankie aan almal wat op ons gestem het !!! Robotte kom oral oor. Van industriële toepassings tot u
Die skep van 'n op afstand beheerde Arduino-selfbalanserende robot: B-robot EVO: 8 stappe
Die skep van 'n op afstand beheerde Arduino-selfbalanserende robot: B-robot EVO: ------------------------------------ -------------- UPDATE: daar is 'n nuwe en verbeterde weergawe van hierdie robot hier: die B-robot EVO, met nuwe funksies! ------------ -------------------------------------- Hoe werk dit? B-ROBOT EVO is op afstand beheer