
Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-23 15:01



Mecanum Robot - Een project dat ik wilde bouwen sinds ik het zag op de geweldige mechatronics-blog van Dejan: howtomechatronics.com
Dejan heeft echt goed werk geleverd met alle aspecten van hardware, 3D-printen, elektronica, code en een Android-app (MIT's App-uitvinder)
Dit is een geweldig overhou-project dat alle vaardigheden van een maker opfrist.
Ik had weinig veranderingen te doen aan de projecten
Ik wilde niet de op maat gemaakte PCB gebruiken die hij gebruikte, maar een oud GRBL-schild dat ik thuis had.
Ik wilde BlueTooth gebruiken
Dus:
Benodigdheden
Arduino Uno + GRBL-schild
Stappenmotoren
HC-06 BlueTooth-module
12V Lipo-batterij
Stap 1: Hardware


De wielen geprint en geassembleerd zoals hier:
4 Stappenmotoren aangesloten op het chassis (in mijn geval een ongebruikte lade ondersteboven)
Leidde de kabels naar de bovenkant van de robot.
Stap 2: Elektronica



Ik heb mijn HC-06 BT-module gebruikt, Het moeilijkste was om het GRBL-schild aan het werk te zetten met 4 stappenmotoren, omdat daar geen goede handleiding voor is, Er moeten jumpers worden geplaatst, zoals te zien is op de bijgevoegde afbeelding, om de "Tool" -uitgang van het schild te maken om ook een stappenmotor te besturen. moet ook "Enable" Jumper zetten
bedrading van de 4 steppers en dat is het.
Ik leverde ook de stroom van 12V-batterijen - twee stes - een voor de Arduino en een voor het GRBl-schild
Stap 3: Arduino-code
/* === Arduino Mecanum Wheels Robot === Smartphone-besturing via Bluetooth door Dejan, www. HowToMechatronics.com Bibliotheken: RF24, www. HowToMechatronics.com AccelStepper door Mike McCauley: www. HowToMechatronics.com
*/ /* 2019-11-12 Gilad Meller (https://www.keerbot.com - wijzig de code om te werken met GRBL arduino-motorschild Stappenmotoren in het schild worden in kaart gebracht als (stap/richting): 2/5 3 /6 4/7 12/13 met A4988-driver 12V
Dejan's code gebruikt SoftwareSerial en de mijne gebruikt de standaard RX, TX-pinnen (0, 1) van de Arduino Uno. Opmerking: zorg ervoor dat u de RX TX-pinnen verwisselt wanneer u de schets naar de Arduino uploadt, anders mislukt het uploaden.
*/ #erbij betrekken
// Definieer de stappenmotoren en de pinnen die AccelStepper LeftBackWheel (1, 2, 5) zullen gebruiken; // (Type: driver, STEP, DIR) - Stepper1 AccelStepper LeftFrontWheel (1, 3, 6); // Stepper2 AccelStepper RightBackWheel (1, 4, 7); // Stepper3 AccelStepper Rechtsvoorwiel (1, 12, 13); // Stepper4
int inkomendeByte = 0, c; // voor inkomende seriële gegevens int wheelSpeed = 100;
void setup() { Serial.begin(9600); // opent seriële poort, stelt datasnelheid in op 9600 bps // Stel initiële seed-waarden in voor de steppers LeftFrontWheel.setMaxSpeed(600); LeftBackWheel.setMaxSpeed(600); Rechtervoorwiel.setMaxSpeed(600); RightBackWheel.setMaxSpeed(600);
}
void loop() {if (Serial.available() > 0) { // lees de inkomende byte: inkomendeByte = Serial.read();
c = inkomende Byte; switch (c) { case 71: Serial.println ("Ik heb ontvangen Draai naar rechts W"); draai naar rechts(); pauze; case 65: Serial.println ("Ik heb Rotate left Q ontvangen"); draai naar links(); pauze; geval 1: Serial.println ("Ik heb BK/LFT ontvangen "); moveRightBackward(); pauze; geval 2: Serial.println ("Ik heb BK ontvangen "); moveBackward(); pauze; geval 3: Serial.println ("Ik heb BK/RT ontvangen "); moveRightBackward(); pauze; geval 4: Serial.println ("Ik heb LINKS ontvangen "); moveSidewaysLeft();
pauze; geval 5: Serial.println ("Ik heb STOP ontvangen "); stop met bewegen(); pauze; geval 6: Serial.println ("Ik heb RT ontvangen "); moveSidewaysRight(); pauze; geval 7: Serial.println ("Ik heb FWD/LFT ontvangen "); moveLeftForward(); pauze; geval 8: Serial.println ("Ik heb FWD ontvangen "); moveForward(); pauze; geval 9: Serial.println ("Ik heb FWD/RT ontvangen "); moveRightForward(); pauze; standaard: Serial.print("Geen opdracht "); Serial.println (incomingByte, DEC); pauze; } } //moveBackward(); moveRobot();
}
void moveRobot() { LeftBackWheel.runSpeed(); LeftFrontWheel.runSpeed(); Rechtsvoorwiel.runSpeed(); RightBackWheel.runSpeed(); }
void moveForward() { LeftFrontWheel.setSpeed(wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RechtsVoorwiel.setSpeed (wielSpeed); RightBackWheel.setSpeed (wielSpeed); } void moveBackward() { LeftFrontWheel.setSpeed(-wheelSpeed); LeftBackWheel.setSpeed(-wheelSpeed); RechtsVoorwiel.setSpeed(-wheelSpeed); RightBackWheel.setSpeed(-wheelSpeed); } void moveSidewaysRight() { LeftFrontWheel.setSpeed(wheelSpeed); LeftBackWheel.setSpeed(-wheelSpeed); RechtsVoorwiel.setSpeed(-wheelSpeed); RightBackWheel.setSpeed (wielSpeed); } void moveSidewaysLeft() { LeftFrontWheel.setSpeed(-wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RechtsVoorwiel.setSpeed (wielSpeed); RightBackWheel.setSpeed(-wheelSpeed); } void roterendeLeft() { LeftFrontWheel.setSpeed(-wheelSpeed); LeftBackWheel.setSpeed(-wheelSpeed); RechtsVoorwiel.setSpeed (wielSpeed); RightBackWheel.setSpeed (wielSpeed); } void roterendeRight() { LeftFrontWheel.setSpeed(wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RechtsVoorwiel.setSpeed(-wheelSpeed); RightBackWheel.setSpeed(-wheelSpeed); } void moveRightForward() { LeftFrontWheel.setSpeed(wheelSpeed); LeftBackWheel.setSpeed(0); RechtsVoorwiel.setSpeed(0); RightBackWheel.setSpeed (wielSpeed); } void moveRightBackward() { LeftFrontWheel.setSpeed(0); LeftBackWheel.setSpeed(-wheelSpeed); RechtsVoorwiel.setSpeed(-wheelSpeed); RightBackWheel.setSpeed(0); } void moveLeftForward() { LeftFrontWheel.setSpeed(0); LeftBackWheel.setSpeed (wheelSpeed); RechtsVoorwiel.setSpeed (wielSpeed); RightBackWheel.setSpeed(0); } void moveLeftBackward() { LeftFrontWheel.setSpeed(-wheelSpeed); LeftBackWheel.setSpeed(0); RechtsVoorwiel.setSpeed(0); RightBackWheel.setSpeed(-wheelSpeed); } void stopMoving() { LeftFrontWheel.setSpeed(0); LeftBackWheel.setSpeed(0); RechtsVoorwiel.setSpeed(0); RightBackWheel.setSpeed(0); }
Stap 4: Appinventor
Een nieuwe appinventor-app met andere en eenvoudigere functionaliteit (geen opnames)
Stuur alstublieft een bericht en ik stuur het naar u - het uploaden mislukt.
Wees voorzichtig.
Aanbevolen:
CNC servo stepper (geschikt voor GRBL): 4 stappen

CNC Servo Stepper (GRBL Capable): Dit project is een vrij eenvoudige motorcontroller die het gebruik van goedkope krachtige DC-motoren met GRBL mogelijk maakt om de spindels van een CNC-machine te bedienen. Bekijk de video hierboven voor een demonstratie van deze controller op mijn zelfgebouwde CNC-machinecon
Hoe maak je een Arduino Shield heel eenvoudig (met behulp van EasyEDA): 4 stappen

Hoe maak je een Arduino Shield heel eenvoudig (met behulp van EasyEDA): In deze Instructable ga ik je leren hoe je heel eenvoudig een Arduino Uno Shield kunt maken. Ik zal niet te veel in detail treden, maar ik heb een video toegevoegd waarin ik ga wat dieper in op het gebruik van de software. Ik gebruik de EasyEDA-webapplicatie sinds ik k
Arduino Power Supply Shield met 3.3v, 5v en 12v uitgangsopties (deel 2): 3 stappen

Arduino Power Supply Shield met 3,3v, 5v en 12v uitgangsopties (deel 2): Hey! Welkom terug bij deel 2 van Arduino Power Supply Shield met 3,3v, 5v en 12v uitgangsopties. Als jullie Deel 1 nog niet hebben gelezen, KLIK HIER. Laten we beginnen… Bij het ontwikkelen van elektronische projecten is de voeding een van de belangrijkste p
[Arduino Robot] Hoe maak je een Motion Capture-robot - Duimen Robot - Servomotor - Broncode: 26 stappen (met afbeeldingen)
![[Arduino Robot] Hoe maak je een Motion Capture-robot - Duimen Robot - Servomotor - Broncode: 26 stappen (met afbeeldingen) [Arduino Robot] Hoe maak je een Motion Capture-robot - Duimen Robot - Servomotor - Broncode: 26 stappen (met afbeeldingen)](https://i.howwhatproduce.com/images/001/image-1599-93-j.webp)
[Arduino Robot] Hoe maak je een Motion Capture-robot | Duimen Robot | Servomotor | Broncode: Thumbs Robot. Gebruikt een potentiometer van MG90S servomotor. Het is erg leuk en makkelijk! De code is heel eenvoudig. Het is slechts ongeveer 30 lijnen. Het ziet eruit als een motion-capture.Laat een vraag of feedback achter! [Instructie] Broncode https://github.c
Wi-fi-gestuurde FPV Rover-robot (met Arduino, ESP8266 en stappenmotoren): 11 stappen (met afbeeldingen)

Wi-fi-gestuurde FPV Rover-robot (met Arduino, ESP8266 en stappenmotoren): deze instructable laat zien hoe je een op afstand bestuurbare tweewielige robotrover via een wifi-netwerk kunt ontwerpen, met behulp van een Arduino Uno die is aangesloten op een ESP8266 wifi-module en twee stappenmotoren. De robot is te besturen vanaf een gewone internetbrows