Kazalo:
Video: Mecanum Omni Wheel Robot z koračnimi motorji GRBL Arduino ščit: 4 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Mecanum Robot - Projekt, ki sem ga želel zgraditi, odkar sem ga videl na Dejanovem blogu mehatronike poželenih: howtomechatronics.com
Dejan je res dobro opravil vse vidike strojne opreme, 3D tiskanja, elektronike, kode in aplikacije za Android (MIT -ov izumitelj aplikacij)
To je odličen nadgradni projekt, ki osveži vse sposobnosti izdelovalca.
Pri projektih sem imel nekaj sprememb
Nisem hotel uporabiti PCB po meri, ki ga je uporabil, ampak star ščit GRBL, ki sem ga imel doma.
Hotel sem uporabiti BlueTooth
Torej:
Zaloge
Arduino Uno + GRBL ščit
Koračni motorji
Modul HC-06 BlueTooth
12V Lipo baterija
1. korak: Strojna oprema
Kolesa so natisnili in jih sestavili, kot je prikazano tukaj:
Priključeni 4 koračni motorji na ohišje (v mojem primeru neuporabljen predal s stranjo navzdol)
Kable napeljite na vrh robota.
2. korak: Elektronika
Uporabil sem svoj HC-06 BT modul, Najtežje je bilo nastaviti ščitnik GRBL za delo s štirimi koračnimi motorji, saj za to ni dobrega vodila, Obstaja potreba po namestitvi skakalcev, kot je prikazano na priloženi sliki, da bo izhod "Orodje" ščita tudi za krmiljenje koračnega motorja. Prav tako morate postaviti mostiček "Omogoči"
ožičenje 4 korakov in to je to.
Napajal sem tudi iz 12V baterij - dve strani - eno za Arduino in eno za GRBl Shield
3. korak: Arduino koda
/* === Arduino Mecanum Wheels Robot === Upravljanje pametnega telefona prek Bluetootha Dejan, www. HowToMechatronics.com Knjižnice: RF24, www. HowToMechatronics.com AccelStepper avtorja Mike McCauley: www. HowToMechatronics.com
*//* 2019-11-12 Gilad Meller (https://www.keerbot.com - spremenite kodo za delo s ščitnikom motorja GRBL arduino Koračni motorji v ščitu so preslikani kot (korak/smer): 2/5 3 /6 4/7 12/13 z uporabo gonilnika A4988 12V
Dejanova koda uporablja programsko opremo SoftwareSerial, moja pa bo uporabljala standardne zatiče RX, TX (0, 1) Arduino Uno Opomba: Poskrbite, da boste zatiči RX TX pri nadgradnji skice na arduino ali nalaganje ne uspeli.
*/ #vključi
// Določimo koračne motorje in zatiče, ki bodo uporabljali AccelStepper LeftBackWheel (1, 2, 5); // (Vrsta: voznik, STEP, DIR) - Stepper1 AccelStepper LeftFrontWheel (1, 3, 6); // Stepper2 AccelStepper RightBackWheel (1, 4, 7); // Stepper3 AccelStepper RightFrontWheel (1, 12, 13); // Stepper4
int incomingByte = 0, c; // za dohodne serijske podatke int wheelSpeed = 100;
void setup () {Serial.begin (9600); // odpre zaporedna vrata, nastavi hitrost prenosa podatkov na 9600 b/ s // Nastavi začetne vrednosti semena za koračnike LeftFrontWheel.setMaxSpeed (600); LeftBackWheel.setMaxSpeed (600); RightFrontWheel.setMaxSpeed (600); RightBackWheel.setMaxSpeed (600);
}
void loop () {if (Serial.available ()> 0) {// preberite dohodni bajt: incomingByte = Serial.read ();
c = dohodniByte; stikalo (c) {primer 71: Serial.println ("Prejel sem Zavrti desno W"); rotateRight (); zlom; primer 65: Serial.println ("Prejel sem Zavrti levo Q"); rotateLeft (); zlom; primer 1: Serial.println ("prejel sem BK/LFT"); moveRightBackward (); zlom; primer 2: Serial.println ("prejel sem BK"); moveBackward (); zlom; primer 3: Serial.println ("prejel sem BK/RT"); moveRightBackward (); zlom; primer 4: Serial.println ("prejel sem LEFT"); moveSidewaysLeft ();
zlom; primer 5: Serial.println ("Prejel sem STOP"); stopMoving (); zlom; primer 6: Serial.println ("prejel sem RT"); moveSidewaysRight (); zlom; primer 7: Serial.println ("prejel sem FWD/LFT"); moveLeftForward (); zlom; primer 8: Serial.println ("prejel sem FWD"); premikaj se naprej(); zlom; primer 9: Serial.println ("prejel sem FWD/RT"); moveRightForward (); zlom; privzeto: Serial.print ("Ni ukaz"); Serial.println (incomingByte, DEC); zlom; }} // moveBackward (); moveRobot ();
}
void moveRobot () {LeftBackWheel.runSpeed (); LeftFrontWheel.runSpeed (); RightFrontWheel.runSpeed (); RightBackWheel.runSpeed (); }
void moveForward () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (wheelSpeed); } void moveBackward () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (-wheelSpeed); } void moveSidewaysRight () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (wheelSpeed); } void moveSidewaysLeft () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (-wheelSpeed); } void rotateLeft () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (wheelSpeed); } void rotateRight () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (-wheelSpeed); } void moveRightForward () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (0); RightFrontWheel.setSpeed (0); RightBackWheel.setSpeed (wheelSpeed); } void moveRightBackward () {LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (0); } void moveLeftForward () {LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (0); } void moveLeftBackward () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (0); RightFrontWheel.setSpeed (0); RightBackWheel.setSpeed (-wheelSpeed); } void stopMoving () {LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed (0); RightFrontWheel.setSpeed (0); RightBackWheel.setSpeed (0); }
4. korak: Appinventor
Nova aplikacija appinventor z drugačno in enostavnejšo funkcijo (brez posnetkov)
Prosim, pošljite sporočilo in jaz vam pošljem - nalaganje ne uspe.
Poskrbite.
Priporočena:
Robotska ročica 3D s koračnimi motorji, ki jih upravlja Bluetooth: 12 korakov
Robotska ročica 3D s koračnimi motorji, ki jih nadzira Bluetooth: V tej vadnici bomo videli, kako narediti 3D robotsko roko, s koračnimi motorji 28byj-48, servo motorjem in 3D natisnjenimi deli. Tiskano vezje, izvorna koda, električni diagram, izvorna koda in veliko informacij so na moji spletni strani
Ročna roka 6 osi DIY (s koračnimi motorji): 9 korakov (s slikami)
DIY Robot Arm 6 Axis (with Stepper Motors): Po več kot enem letu študij, prototipov in različnih napak mi je uspelo zgraditi robota iz železa / aluminija s 6 stopinjami svobode, ki ga nadzirajo koračni motorji. Najtežji del je bila zasnova, ker Želel sem doseči 3 temeljne cilje
Odvračilni ukrep proti vlomu 'Sam doma'/ Uporabite Attiny13 za vožnjo z motorjem s koračnimi motorji in servo motorjem: 5 korakov
Odvračilni ukrep proti vlomilcem „Sam doma“/ Uporabite Attiny13 za vožnjo s koračnim motorjem in servo motorjem: To je morda eden mojih najbolj čudnih projektov doslej :-) Toda tudi če vas ne zanima, da bi vlomilce zadržali stran, lahko ta projekt uporabite za vse, kar želite potrebujete pogon koračnega motorja ali servo motorja ali celo več enosmernih motorjev z Attiny13. Mo
Mobilni robot Omni Wheel - IoT: 4 koraki
Mobilni robot Omni Wheel - IoT: V tem navodilu vam bom predstavil zasnovo mobilnega robota z več kolesi, ki ga upravljate prek wi -fi -ja. Bistvena razlika v primerjavi s klasičnim krmiljenjem, kot sta bluetooth ali radijski nadzor, je v tem, da je robot povezan z lokalnim omrežjem (LAN) in
Rover FPV Rover Robot (z Arduino, ESP8266 in koračnimi motorji): 11 korakov (s slikami)
Rover FPV Rover Robot (z Arduino, ESP8266 in koračnimi motorji): Ta navodila kažejo, kako oblikovati daljinsko vodeni dvokolesni robotski rover prek omrežja wi-fi z uporabo Arduino Uno, povezanega z modulom Wi-Fi ESP8266 in dva koračna motorja. Robota je mogoče upravljati iz navadnih internetnih obrvi