Indholdsfortegnelse:
Video: Mecanum Omni Wheels Robot Med GRBL Stepper Motors Arduino Shield: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Mecanum Robot - Et projekt, jeg har ønsket at bygge lige siden jeg så det på Dejans gread mechatronics blog: howtomechatronics.com
Dejan gjorde virkelig et godt stykke arbejde med at dække alle aspekter fra hardware, 3D -print, elektronik, kode og en Android -app (MIT's App -opfinder)
Dette er et fantastisk overhoul -projekt, der opdaterer alle en færdigheds færdigheder.
Jeg havde få ændringer til projekterne
Jeg ville ikke bruge den specialfremstillede print, han brugte, men et gammelt GRBL -skjold, jeg havde derhjemme.
Jeg ville bruge BlueTooth
Så:
Forbrugsvarer
Arduino Uno + GRBL Shield
Steppermotorer
HC-06 BlueTooth-modul
12V Lipo batteri
Trin 1: Hardware
Trykte hjulene og monterede dem som her:
Tilsluttede 4 trinmotorer til chassiset (i mit tilfælde en ubrugt skuffe med forsiden nedad)
Førte kablerne til toppen af robotten.
Trin 2: Elektronik
Jeg brugte mit HC-06 BT-modul, Det sværeste var at indstille GRBL -skjoldet til at fungere med 4 trinmotorer, da der ikke er nogen god vejledning til det, Der er et behov for at sætte Jumpere, som det kan ses på det vedhæftede billede, for at få "Tool" -udgangen fra skjoldet til også at styre en trinmotor. skal også sætte "Enable" Jumper
tilslutning af de 4 stepper og det er det.
Jeg leverede også strøm fra 12V batterier - to stes - en til Arduino og en til GRBl Shield
Trin 3: Arduino -kode
/* === Arduino Mecanum Wheels Robot === Smartphone -kontrol via Bluetooth af Dejan, www. HowToMechatronics.com Libraries: RF24, www. HowToMechatronics.com AccelStepper af Mike McCauley: www. HowToMechatronics.com
*** /6 4/7 12/13 ved hjælp af A4988 driver 12V
Dejans kode bruger SoftwareSerial, og min vil bruge standard RX, TX -benene (0, 1) i Arduino Uno Bemærk: Sørg for at rempve RX TX -stifterne, når du uploader skitse til arduinoen, eller uploaden mislykkes.
*/ #include
// Definer trinmotorer og benene, som vil bruge AccelStepper LeftBackWheel (1, 2, 5); // (Type: driver, 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; // for indgående serielle data int wheelSpeed = 100;
ugyldig opsætning () {Serial.begin (9600); // åbner seriel port, indstiller datahastighed til 9600 bps // Indstil startfrøværdier for stepperne LeftFrontWheel.setMaxSpeed (600); LeftBackWheel.setMaxSpeed (600); RightFrontWheel.setMaxSpeed (600); RightBackWheel.setMaxSpeed (600);
}
void loop () {if (Serial.available ()> 0) {// læs den indgående byte: incomingByte = Serial.read ();
c = incomingByte; switch (c) {case 71: Serial.println ("Jeg modtog Rotate right W"); rotateRight (); pause; case 65: Serial.println ("Jeg modtog Rotate left Q"); rotateLeft (); pause; sag 1: Serial.println ("jeg modtog BK/LFT"); moveRightBackward (); pause; sag 2: Serial.println ("jeg modtog BK"); moveBackward (); pause; sag 3: Serial.println ("jeg modtog BK/RT"); moveRightBackward (); pause; sag 4: Serial.println ("jeg modtog VENSTRE"); moveSidewaysLeft ();
pause; sag 5: Serial.println ("jeg modtog STOP"); stopMoving (); pause; sag 6: Serial.println ("jeg modtog RT"); moveSidewaysRight (); pause; sag 7: Serial.println ("jeg modtog FWD/LFT"); moveLeftForward (); pause; sag 8: Serial.println ("jeg modtog FWD"); komme videre(); pause; sag 9: Serial.println ("jeg modtog FWD/RT"); moveRightForward (); pause; standard: Serial.print ("Ikke en kommando"); Serial.println (incomingByte, DEC); pause; }} // 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); }
Trin 4: Appinventor
En ny appinventor -app med anderledes og enklere funktionalitet (ingen optagelser)
Send venligst besked, og jeg sender til dig - uploads mislykkes.
Pas på.
Anbefalede:
CNC Servo Stepper (i stand til GRBL): 4 trin
CNC Servo Stepper (GRBL Capable): Dette projekt er en ret simpel motorstyring, der gør det muligt at bruge billige kraftige DC -motorer med GRBL til at betjene ledeskruerne på en CNC -maskine. Tjek videoen ovenfor for en demonstration af denne controller på min hjemmebyggede CNC -maskinkon
Arduino Mega Stepper Shield til en Rubiks Cube Solver: 4 trin
Arduino Mega Stepper Shield til en Rubiks Cube Solver: For et stykke tid siden arbejdede jeg på en maskine, der automatisk løser enhver krypteret 3x3 Rubiks Cube. Du kan se mine instruktioner om det her. I projektet blev stepper -drivere fra polulu brugt til at køre seks motorer. For at to skal forbinde disse d
Sådan ændres Standard Hot Wheels til R/C Hot Wheels: D: 6 trin (med billeder)
Sådan ændres Standard Hot Wheels til R/C Hot Wheels: D: Siden jeg var lille, elsker jeg Hot Wheels Cars. Det gav mig inspiration til design fantasy -køretøjer. Denne gang overgik de sig selv med Star War Hot Wheels, C-3PO. Jeg vil dog mere end bare at skubbe eller rejse på et spor, jeg besluttede, “L
Wi-fi-styret FPV Rover Robot (med Arduino, ESP8266 og Stepper Motors): 11 trin (med billeder)
Wi-fi-styret FPV Rover Robot (med Arduino, ESP8266 og Stepper Motors): Denne instruktør viser, hvordan man designer en fjernstyret tohjulet robotrover over et wi-fi-netværk ved hjælp af en Arduino Uno tilsluttet et ESP8266 Wi-fi-modul og to trinmotorer. Robotten kan styres fra almindelige internetbrowsere
Mecanum Wheel Robot - Bluetooth -styret: 5 trin (med billeder)
Mecanum Wheel Robot - Bluetooth -styret: Siden jeg kan huske har jeg altid ønsket at bygge en mecanum hjulrobot. De mecanum -hjulplatforme, der var tilgængelige på markedet, var lidt for dyre for mig, så jeg besluttede at bygge min robot fra bunden. Ligesom ingen anden robot -meacanum -hjulrobot