Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

4-Rad Arduino Roboter per Dabble App steuern

Komponenten und Zubehör

KomponenteMenge
Arduino UNO1
Steckbrett (generic)1
DC-Motor (generic)4
HC-05 Bluetooth-Modul1
Steckbrücken (generic)1
Texas Instruments L293D Dual H-Brücke Motortreiber1
DC-Klemmblock1
Motorbefestigungen1
Räder1

Apps und Online-Dienste

Projektbeschreibung

Ein einfacher, spaßiger 4-Rad-Roboter, der per Bluetooth mit der Dabble-App (Gamepad-Modul) gesteuert wird. Ideal als DIY-Geschenk.

Schritt 1: Benötigte Teile

Arduino Uno, Steckbrett, Chassis, Motorbefestigungen, 4 DC-Motoren, Räder, Motortreiber (L293D), HC-05 Bluetooth, DC-Klemmblock, Batterie, Steckbrücken.

Schritt 2: Chassis bauen

Chassis umdrehen, 4 Motorbefestigungen mit M3-Schrauben montieren, DC-Motoren mit M2-Schrauben befestigen, Räder auf Motorwellen stecken, Chassis umdrehen → Fertig.

Schritt 3: Gehirn hinzufügen

Arduino Uno auf Chassis platzieren, Steckbrett für Verkabelung nutzen.

Schritt 4: Verkabelung & Motortreiber

L293D versorgt 4 Motoren (Arduino liefert nicht genug Strom). Linke zwei Motoren parallel, rechte zwei parallel. Anschlüsse:

Schritt 5: Smartphone verbinden

HC-05 Bluetooth-Modul gemäß Schaltplan anschließen (TX/RX gekreuzt).

Schritt 6: Batterie anschließen

Zusätzliche Stromquelle für Motoren über DC-Klemmblock/DC-Buchse.

Schritt 7: Arduino-Code

Code hochladen (siehe unten). Nutzt Dabble-Bibliothek, Gamepad-Modul im Digital-Modus. HC-05 Baudrate ≤ 38400 für Arduino UNO.

Schritt 8: Betrieb

Dabble App starten, Bluetooth verbinden, Gamepad-Modul wählen, linke Steuerkreuz-Tasten: Hoch=Vorwärts, Runter=Rückwärts, Links=Links, Rechts=Rechts.

Schritt 9: Fazit

Roboter ist einsatzbereit. Dabble bietet noch viele weitere Module (z. B. Sensoren, IoT, Kamera).

Code

robot.ino

/* Arduino 4-Rad Roboter Steuerung per Dabble App (Gamepad Digital Mode)
 * HC-05 Bluetooth: Tx -> Pin 2, Rx -> Pin 3
 * Für Arduino UNO: Bluetooth Baudrate <= 38400
 * Geschrieben von Punit Chotaliya, STEMpedia, 16.01.2019
 */
#define CUSTOM_SETTINGS
#define INCLUDE_GAMEPAD_MODULE
#include 

#define motor1_en 10
#define motor2_en 11
#define motor1_dir1 4
#define motor1_dir2 5
#define motor2_dir1 6
#define motor2_dir2 7

void setup() {
  Serial.begin(9600);
  Dabble.begin(38400);
  for (unsigned int i = 4; i < 8; i++) {
    pinMode(i, OUTPUT);
  }
  pinMode(motor1_en, OUTPUT);
  pinMode(motor2_en, OUTPUT);
}

void loop() {
  Dabble.processInput();
  if (GamePad.isUpPressed()) {
    Serial.print("UP");
    forward();
  } else if (GamePad.isDownPressed()) {
    Serial.print("DOWN");
    backward();
  } else if (GamePad.isLeftPressed()) {
    Serial.print("Left");
    left();
  } else if (GamePad.isRightPressed()) {
    Serial.print("Right");
    right();
  } else {
    Serial.println("stop");
    Stop();
  }
}

void forward() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, HIGH);
  digitalWrite(motor1_dir2, LOW);
  digitalWrite(motor2_dir1, HIGH);
  digitalWrite(motor2_dir2, LOW);
}

void backward() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, LOW);
  digitalWrite(motor1_dir2, HIGH);
  digitalWrite(motor2_dir1, LOW);
  digitalWrite(motor2_dir2, HIGH);
}

void left() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, LOW);
  digitalWrite(motor1_dir2, HIGH);
  digitalWrite(motor2_dir1, HIGH);
  digitalWrite(motor2_dir2, LOW);
}

void right() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, HIGH);
  digitalWrite(motor1_dir2, LOW);
  digitalWrite(motor2_dir1, LOW);
  digitalWrite(motor2_dir2, HIGH);
}

void Stop() {
  analogWrite(motor1_en, 0);
  analogWrite(motor2_en, 0);
  digitalWrite(motor1_dir1, LOW);
  digitalWrite(motor1_dir2, LOW);
  digitalWrite(motor2_dir1, LOW);
  digitalWrite(motor2_dir2, LOW);
}

evive Library

Nur als Download verfügbar (C/C++).

Schaltplan

Verkabelungsbild im Projekt enthalten.

Herstellungsprozess

  1. Bluetooth-gesteuerter Raspberry Pi Roboter mit Audio-Feedback bauen
  2. Internet-gesteuerter Video-Streaming-Roboter mit Arduino & Raspberry Pi bauen
  3. WLAN-gesteuerter Raspberry Pi Roboter mit Python bauen – Schritt-für-Schritt
  4. LED-Helligkeit per PWM und Taster am Arduino Mega steuern
  5. Android-gesteuertes Roboterfahrzeug mit Raspberry Pi Motor Shield
  6. Servogesteuerter Hindernisvermeidungs-Roboter: Bauen mit Arduino & HC-SR04
  7. Autonomer Linienfolger-Roboter mit Arduino UNO
  8. Arduino-basierter 6-DoF Roboterarm mit Nunchuk-Steuerung
  9. Sprachgesteuerter Roboter mit Arduino Nano bauen
  10. MobBob: Eigenen Arduino-Roboter bauen, per Android-Smartphone steuern