Satura rādītājs:

Mecanum Omni riteņu robots ar GRBL pakāpju motoriem Arduino vairogs: 4 soļi
Mecanum Omni riteņu robots ar GRBL pakāpju motoriem Arduino vairogs: 4 soļi

Video: Mecanum Omni riteņu robots ar GRBL pakāpju motoriem Arduino vairogs: 4 soļi

Video: Mecanum Omni riteņu robots ar GRBL pakāpju motoriem Arduino vairogs: 4 soļi
Video: Вебинар KUKA Mobile Robotics 2024, Novembris
Anonim
Mecanum Omni riteņu robots ar GRBL Stepper Motors Arduino vairogu
Mecanum Omni riteņu robots ar GRBL Stepper Motors Arduino vairogu
Mecanum Omni riteņu robots ar GRBL Stepper Motors Arduino vairogu
Mecanum Omni riteņu robots ar GRBL Stepper Motors Arduino vairogu
Mecanum Omni riteņu robots ar GRBL Stepper Motors Arduino vairogu
Mecanum Omni riteņu robots ar GRBL Stepper Motors Arduino vairogu

Mecanum Robot - projekts, kuru es gribēju veidot kopš tā laika, kad to ieraudzīju Dejana gread mechatronics emuārā: howtomechatronics.com

Dejan patiešām paveica labu darbu, aptverot visus aparatūras, 3D drukāšanas, elektronikas, koda un Android lietotnes aspektus (MIT lietotņu izgudrotājs)

Šis ir lielisks kapitālais projekts, kas atsvaidzina visas veidotāja prasmes.

Man bija nelielas izmaiņas projektos

Es negribēju izmantot pēc pasūtījuma izgatavotu PCB, ko viņš izmantoja, bet veco GRBL vairogu, kas man bija mājās.

Es gribēju izmantot BlueTooth

Tātad:

Piegādes

Arduino Uno + GRBL vairogs

Stepper motori

HC-06 BlueTooth modulis

12V Lipo akumulators

1. darbība. Aparatūra

Aparatūra
Aparatūra
Aparatūra
Aparatūra

Apdrukāja riteņus un samontēja tos šeit:

Šasijai pievienoti 4 pakāpju motori (manā gadījumā neizmantota atvilktne uz augšu uz leju)

Kabeļi novirzīti uz robota augšpusi.

2. solis: elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Es izmantoju savu HC-06 BT moduli, Visgrūtāk bija iestatīt GRBL vairogu darbam ar 4 pakāpju motoriem, jo tam nav labas rokasgrāmatas, Ir nepieciešams ievietot džemperus, kā redzams pievienotajā attēlā, lai padarītu vairoga "rīka" izvadi arī soļu motora vadību. arī jāieliek "Iespējot" džemperis

vadu 4 pakāpienus un viss.

Es piegādāju arī strāvu no 12 V baterijām - diviem stiem - vienu Arduino un otru GRBl Shield

3. darbība: Arduino kods

/* === Arduino Mecanum Wheels Robot === Viedtālruņa vadība, izmantojot Bluetooth, izmantojot Dejan, www. HowToMechatronics.com Bibliotēkas: RF24, www. HowToMechatronics.com Mike McCauley AccelStepper: www. HowToMechatronics.com

*//* 12.11.2019 Gilads Mellers (https://www.keerbot.com - modificējiet kodu, lai tas darbotos ar GRBL arduino motora vairogu /6 4/7 12/13, izmantojot A4988 draiveri 12V

Dejana kodā tiek izmantota programmatūraSerial, un manējais izmantos Arduino Uno standarta RX, TX tapas (0, 1).

*/ #iekļaut

// Definējiet soļu motorus un tapas, kuras izmantos AccelStepper LeftBackWheel (1, 2, 5); // (Tips: vadītājs, STEP, DIR) - Stepper1 AccelStepper LeftFrontWheel (1, 3, 6); // Stepper2 AccelStepper RightBackWheel (1, 4, 7); // Stepper3 AccelStepper RightFrontWheel (1, 12, 13); // Stepper4

int ienākošais baits = 0, c; // ienākošajiem sērijas datiem int wheelSpeed = 100;

void setup () {Serial.begin (9600); // atver seriālo portu, nosaka datu pārraides ātrumu līdz 9600 bps // Iestatiet sākotnējās sēklu vērtības stepperiem LeftFrontWheel.setMaxSpeed (600); LeftBackWheel.setMaxSpeed (600); RightFrontWheel.setMaxSpeed (600); RightBackWheel.setMaxSpeed (600);

}

void loop () {if (Serial.available ()> 0) {// lasīt ienākošo baitu: inputingByte = Serial.read ();

c = ienākošais baits; slēdzis (c) {71. gadījums: Serial.println ("Es saņēmu Rotate right W"); rotateRight (); pārtraukums; 65. gadījums: Serial.println ("Es saņēmu Rotate left Q"); rotateLeft (); pārtraukums; 1. gadījums: Serial.println ("Es saņēmu BK/LFT"); moveRightBackward (); pārtraukums; 2. gadījums: Serial.println ("es saņēmu BK"); moveBackward (); pārtraukums; 3. gadījums: Serial.println ("es saņēmu BK/RT"); moveRightBackward (); pārtraukums; 4. gadījums: Serial.println ("Es saņēmu LEFT"); moveSidewaysLeft ();

pārtraukums; 5. gadījums: Serial.println ("Es saņēmu STOP"); stopMoving (); pārtraukums; 6. gadījums: Serial.println ("Es saņēmu RT"); moveSidewaysRight (); pārtraukums; 7. gadījums: Serial.println ("Es saņēmu FWD/LFT"); moveLeftForward (); pārtraukums; 8. gadījums: Serial.println ("Es saņēmu FWD"); moveForward (); pārtraukums; 9. gadījums: Serial.println ("Es saņēmu FWD/RT"); moveRightForward (); pārtraukums; noklusējums: Serial.print ("Nav komanda"); Serial.println (ienākošais baits, DEC); pārtraukums; }} // 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. solis: Appinventor

Jauna appinventor lietotne ar atšķirīgu un vienkāršāku funkcionalitāti (bez ierakstiem)

Lūdzu, sūtiet ziņu, un es jums - augšupielāde neizdodas.

Rūpēties.

Ieteicams: