Einstiegsaufgaben Arduino Kit Motor Extension

Einstiegsaufgaben Arduino Kit Motor Extension

In diesem Recipe werden Einstiegsaufgaben mit dem Arduino Kit Motor Extension aufgeführt. Falls du dich noch nicht mit dem Arduino auskennst empfehle ich dir, erst das Recipe Starten mit Arduino  und die Einstiegsaufgaben Arduino anzuschauen. Die Einstiegsaufgaben sind auf die Komponenten im Arduino Kit Motor Extension ausgerichtet. Das Kit ist als Ergänzung zum Arduino Kit Basic zu verstehen.

Einstiegsaufgaben mit dem Arduino Kit Motor Extension

Ansteuerung des grossen Servos

Um einen großen Servo an ein Arduino anzuschließen und mit einer separaten Spannungsversorgung zu betreiben, solltest du sicherstellen, dass der Servo und das Arduino stabil mit der richtigen Spannung versorgt werden, ohne das Arduino zu überlasten. Hier ist eine Schritt-für-Schritt-Anleitung, wie du den Servo richtig anschließt:

Welche Teile/Komponenten brauchst du?
  • Arduino UNO
  • Servo (4.8-6V Betriebsspannung)
  • DC Netzteil mit 6V Ausgangsspannung
  • Jumper Kabel
Verkabelung
a. Servo mit externer Spannungsquelle verbinden:
  • Vcc (Servo) rotes KabelExterne Stromquelle (5V/6V)
    Der Servo benötigt eine eigene Stromquelle, die genügend Leistung liefern kann (in der Regel 5V oder 6V, je nach Modell). Achte darauf, die korrekte Spannung entsprechend den Anforderungen des Servos zu wählen.
  • GND (Servo) schwarzes Kabel GND der externen Stromquelle
    Verbinde den GND-Anschluss des Servos mit dem GND der externen Stromquelle.
b. Arduino mit Servo verbinden:
  • Signal (Servo)PWM Pin des Arduino (z.B. Pin 11)
    Verbinde das Signalkabel des Servos mit einem PWM-fähigen Pin des Arduino (z.B. Pin 11). Dieser Pin steuert den Servo durch die Sendung von Impulsen.
  • GND (Arduino)GND der externen Stromquelle
    Verbinde den GND des Arduino mit dem GND der externen Stromquelle. Das ist wichtig, damit die Signalreferenz für den Servo und das Arduino gemeinsam genutzt wird und die Kommunikation funktioniert.
WICHTIG:

Der GND der externen Stromquelle muss mit dem GND des Arduino verbunden werden, um eine gemeinsame Erdung zu gewährleisten, da das Signal sonst nicht korrekt übertragen wird.

Code

Hier findest du einen Beispielcode, welcher den Servo bewegen lässt.

Zusätzliche Hinweise
  • Strombedarf des Servos: Achte darauf, dass die externe Spannungsquelle genug Strom liefert, um den Servo während seiner Bewegung zu versorgen. Große Servos können Spitzenströme benötigen, die das Arduino überlasten würden, wenn sie direkt angeschlossen werden.
  • Vermeidung von Störungen: Wenn du längere Kabel verwendest, könnte es zu Spannungsabfällen kommen. Es hilft, dickere Kabel für die Stromversorgung des Servos zu verwenden.

 

Motor ansteuern mit dem Motorshield

Das Quad DC Motor Driver Shield für Arduino ermöglicht es, bis zu vier Gleichstrommotoren (DC-Motoren) gleichzeitig zu steuern. Im folgenden Beispiel werde ich dir zeigen, wie du dieses Shield mit einem Getriebe-Motor verbindest, um den Motor zu steuern. Wir verwenden hier nur einen Motor für die Demonstration, aber das Prinzip gilt auch für mehrere Motoren.

Welche Teile / Komponenten brauchst du?
  • Arduino UNO
  • DFRobot Motorshield
  • Getriebemotor (gelb/blau)
  • DC Netzteil mit 6V Ausgangsspannung
  • Jumper Kabel
Verkabelung

a. Motorverbindung:

  • Verbinde den Motor mit den Motoranschlüssen des Motor Driver Shield (z.B. M1). Beachte die Polarität, wenn du die Drehrichtung kontrollieren möchtest.

b. Spannungsversorgung:

  • Das Quad DC Motor Driver Shield benötigt eine externe Stromquelle, um den Motor mit ausreichend Spannung und Strom zu versorgen.
  • VCC (Motor Shield) → Externe Stromquelle (9V) (der Getriebemotor hat eine Spannung von 3-9V).
  • GND (Motor Shield) → GND der externen Stromquelle.

c. Arduino mit Motor Driver Shield verbinden:

  • Das Motor Driver Shield wird direkt auf das Arduino Uno-Board gesteckt, sodass keine zusätzlichen Kabel für die Steuerung des Shields benötigt werden.
Code

Hier findest du den Beispielcode

Was macht der Sketch? Der Sketch steuert einen DC-Motor vorwärts und rückwärts. Die Geschwindigkeit wird über den PWM-Wert von E1 (Pin 3) eingestellt, und die Drehrichtung wird über M1 (Pin 4) gesteuert. Der Motor läuft 2 Sekunden vorwärts, dann 2 Sekunden rückwärts, und dieser Zyklus wiederholt sich kontinuierlich.

  • E1 (Pin 3) wird verwendet, um die Geschwindigkeit des Motors über PWM zu steuern.
  • M1 (Pin 4) wird verwendet, um die Drehrichtung des Motors zu steuern (LOW für vorwärts, HIGH für rückwärts).

 

Ansteuern Schrittmotor mit dem CNC Shield

Das Arduino CNC Shield ermöglicht das Ansteuern von Schrittmotoren, welche oft für den Betrieb einer CNC-Maschine, 3D Drucker oder Lasercutter eingesetzt werden. In dem Video Tutorial werden die grundsätzlichen Schritte zur Installation erklärt -> https://tube.switch.ch/channels/Dcqw1ga3NL Achtung: im Video werden die DRV8255 Motortreiber verwendet. Im Kit sind aber nun die A4988 bestückt. Sie sind zwar pin-gleich aber die Einstellschraub befindet sich auf der anderen Seite des Boards.

Welche Teile / Komponenten brauchst du?
  • Arduino UNO
  • Arduino CNC Shield V3
  • Schrittmotoren (NEMA 17 oder ähnliche)
  • Schrittmotor-Treiber (A4988)
  • Externe Stromversorgung für Motoren (12V)
Verkabelung
Schritt 1: CNC Shield auf Arduino montieren

Stecke das CNC Shield V3 vorsichtig auf das Arduino UNO. Achte darauf, dass alle Pins korrekt ausgerichtet sind und das Shield vollständig auf dem Arduino sitzt.

Schritt 2: Schrittmotor-Treiber installieren

Setze die Schrittmotor-Treiber (A4988) in die dafür vorgesehenen Steckplätze des CNC Shields ein. Achte darauf, dass die Pins richtig ausgerichtet sind. Im Beispiel setzen wir den Treiber in den Slot X. Achte, dass die kleine Stell-Schraube nach unten ausgerichtet ist.

Schritt 3: Verkabelung des Schrittmotors

Verbinde die 4 Drahtanschlüsse des Motors mit den entsprechenden Anschlusskabel an das CNC Shield.

Schritt 4: Stromversorgung anschließen

Verbinde die Stromversorgung mit dem CNC Shield. Beachte, dass das CNC Shield selbst über den Arduino mit Strom versorgt wird, aber die Schrittmotoren benötigen eine separate Stromquelle (12V).

Schließe die Stromversorgung an die Vcc- und GND-Pins des CNC Shields an, um sicherzustellen, dass der Motor ausreichend Strom erhält.

Code

Lade die Basic StepperMotor Library in deiner Arduino IDE herunter, um die Schrittmotoren direkt zu steuern.

  1. Öffne die Arduino IDE.
  2. Gehe zu Sketch > Bibliothek einbinden > Bibliothek verwalten und suche nach „BasicStepperMotorLibrary“.
  3. Installiere die Bibliothek.

Hier ist ein einfaches Beispiel, das einen Motor steuert. In diesem Github Repo findest du zusätzliche Beispielprogramme.

Hinweise

Um zu verhindern, dass der Schrittmotor überhitzt und zuviel Strom zieht, muss das Strom-Limit eingestellt werden.

Kurze Erklärung zur Stromlimit-Einstellung für den Stepper:
  1. Datenblatt des Motors: Der Stepper hat einen maximalen Strom von 1.2A (Imax) und einen Rcs von 0.05 Ohm.
  2. Berechnung von VREF (0.48V):
  3. Vorbereitung:
    • Stelle sicher, dass das CNC Shield auf 12V läuft, der Stepper aber noch nicht angeschlossen ist.
    • Nutze ein Voltmeter:
      • Schwarze Mess-Spitze an GND (Ground).
      • Rote Mess-Spitze am VREF-Pin des Stepper-Treibers.
  4. VREF einstellen:
    • Drehe den Potentiometer mit einem Schraubenzieher, bis das Voltmeter ca. 0.48V (480mV) anzeigt.

Das ist der Wert, mit dem du den maximalen Strom für deinen Stepper korrekt einstellst.

Fehlerbehebung
  • Wenn der Motor nicht dreht oder vibriert, kann es sein, dass der Stromlimit zu niedrig eingestellt ist. Versuche, den Referenzwert leicht zu erhöhen.
  • Ueberprüfe die Jumper unter dem Motor-Treiber. Diese legen die MICROSTEPS fest. Die Einstellung muss mit der Einstellung der Software übereinstimmen.
  • Überprüfe die Verkabelung, um sicherzustellen, dass alle Verbindungen korrekt sind.
  • Wenn der Motor überhitzt, verringere das Stromlimit.