Warum ich einen Servomotor mit dem Raspberry Pi ansteuern möchte erkläre ich nachfolgend. Ich möchte auf der Vorderseite und Rückseite meines Roboter Autos jeweils einen Ultraschall Sensor installieren. Mein Problem ist, dass die Sensoren einen Öffnungswinkel von 15 Grad haben. Um einen besseren Überblick zu erhalten was vor oder hinter dem Roboter-Auto los ist möchte ich die Ultraschallsensoren etwas nach links und rechts drehen. Die Idee ist die Ultraschallsensoren um ca. 35 Grad nach links und rechts drehen zu können. Damit ich die Sensoren drehen kann benötige ich jeweils einen Servomotor wie diese auch im Modellbau verwendet werden. Entschieden habe ich mich für kleine 9g micro Servomotoren. Diese sind kostengünstig und passen gut in mein Raspberry Pi Roboter.

Das Bild zeigt mein Roboter-Auto von vorne mit einem Servomotor und daran befestigten Ultraschallsensor.

Servo Motor - Raspberry Pi robot car

Servomotor – Raspberry Pi Roboter-Auto

Komponenten Liste

Die Komponenten die ich in diesem  Artikel verwendet habe um die Servomotoren mit einem Raspberry Pi verbinden zu können sind die folgenden:

Raspberry Pi 3 Model B
Preis: EUR 44,00
54 neu von EUR 40,060 gebraucht
1.2GHz Quad-Core, Broadcom BCM2836, 1GB Speicher, VideoCore, LAN, HDMI, 4xUSB 2.0,microSDHC-Cardreader, Bluetooth, W-LAN

CPU-Typen: 1.2GHz Quad-Core 64bit
Chipsatz: Broadcom BCM2837
Externe Anschlüsse: 4x USB 2.0, LAN, HDMI, microSD/SDHC/SDXC-Cardreader, 40pin GPIO, Audio 3.5mm
Netzwerk: 10/100Mbit Fast Ethernet
Grafik:
2x 40pcs Female to Female 2.54mm 0.1 in Jumper Wires F/F (2x40pcs)
Price: $5.99
7 new from $3.270 used
Description: 40pcs chromatic color female to female dupont lines 100% brand new . High quality and in good working condition .
Durable and reusable Easy to install and use A popular choice for construction or repair Be used for electronic project and Genuine Arduino product.
Specification: Length 20cm 1p-1p pin female to female header Compatible with 2.54mm spacing pin headers
Package includes: 2 x A row of 40pcs female to female dupont line

Die Step-Down Konverter habe ich verwendet um einmal den Raspberry Pi mit +5V zu versorgen sowie um die Servomotoren ebenfalls mit +5V versorgen zu können. Leider ist es nicht möglich die Servomotoren direkt an den Raspberry Pi anzuschließen. Hier liefert der Raspberry Pi nicht genügend Strom und würde sicher schaden nehmen.

Die Komponenten die für den Bau des Roboter-Autos benötigt werden finden sich als Übersicht unter dem folgenden Link: Raspberry Pi Roboter-Auto Komponentenübersicht

Einfürhung Servomotoren

Es gibt eine Vielzahl von Servomotoren für unterschiedliche Anwendungsfälle. Aber allen gemeinsam ist, dass sie über drei Kabel für den Anschluss verfügen. Eines für die +5V, eines für die Erdung GND und eines für das PWM Signal. Abhängig von dem PWM Signal bewegt sich der Servo von einer Position auf die andere Position. Es ist sehr einfach einen Servo mit dem Raspberry Pi zu steuern. Du musst dazu den Servo lediglich an eine externe Stromquelle anschließen (+5V / GND) und normaler weise das gelbe Kabel des Servomotors muss mit dem GPIO Pin des Raspberry Pi verbunden werden der aks OUT / PWM konfiguriert ist. Bitte prüfe die Herstellerangaben des Servomotors welches Kabel für was ist. Weiter muss die externe Stromquelle und der Raspberry Pi eine gemeinsame Erdung haben. Andernfalls wird sich der Servomotor vermutlich nicht richtig bewegen.

Das folgende Bild zeigt zwei unterschiedliche Servomotoren. Beide können mit dem Raspberry Pi an den PWM out Pin angeschlossen werden. Die Stromversorgung des Servomotors muss über eine externe Stromquelle sichergestellt werden.

Different Servo Motors Raspberry Pi robot

Hier seht Ihr zwei Servomotoren

Den Servo Motor an den Raspberry Pi anschließen

Um das Programm welches im nächsten Kapitel beschrieben wird nutzen zu können muss der Servo wie folgt an den Raspberry Pi angeschlossen werden.

  • GPIO 12: Dieser Pin erzeugt das PWM Signal für den ersten Servomotor. Hier wird das gelbe Kabel angeschlossen
  • GPIO 18: Dieser Pin erzeugt das PWM Signal für den zweiten Servomotor. Hier wird das gelbe Kabel angeschlossen
  • Das rote Kabel wird mit den +5V der externen Stromquelle verbunden.
  • Das schwarze Kabel wird mit der Erdung (GND) der externen Stromquelle verbunden
    • Bitte achte darauf, dass die Erdung der externen Stromquelle mit der Erdung des Raspberry Pi’s verbunden sein muss. Andernfalls kann es sein, dass der Servomotor sich nicht richtig bewegt.

Buch - Roboter-Autos mit dem Raspberry Pi: Planen, bauen, programmieren

Ich habe auch ein Buch veröffentlicht, in dem ich den Bau von Roboter Autos mit dem Raspberry Pi Computer Schritt für Schritt beschreibe. Ich erkläre das notwendige Basiswissen beginnend bei der Roboter Elektronik, über das Design des Chassis bis hin zum Navigieren nach GPS. Python ist die für diese Bauanleitung gewählte Programmiersprache. So wird im Buch erklärt wie Ultraschallsensoren ausgelesen werden können oder ein Motortreiber angesteuert wird. Auch kommen der Raspberry Pi und das Betriebssystem Raspbin nicht zu kurz. Mit all diesem Wissen aus dem Buch ist es möglich selber Roboter auf Basis des Raspberry Pi zu bauen.

Roboter-Autos mit dem Raspberry Pi: Planen, bauen, programmieren
Preis: EUR 29,90
59 neu von EUR 29,902 gebraucht von EUR 24,49
Planen, bauen, programmieren. Programmierung und Elektronik spielerisch entdecken. Geeignet für Maker jeden Alters!
Broschiertes Buch
Der Raspberry Pi lernt fahren! Und Sie sind sein Fahrlehrer ...

Let the good times roll: Ohne Vorwissen einfach einsteigen
Alle relevanten Programmier-, Elektronik- und Hardwaregrundlagen
Ferngesteuerte und autonome Modelle bauen; mit vollständiger Teile-Liste
Raspberry Pi und Robotik faszinieren Sie? Dann bringt Sie dieses Buch sicher richtig in Fahrt! Ob Einsteiger oder fortgeschrittener RasPi-Bastler: Schritt für Schritt lernen Sie, wie Sie mit dem Raspberry Pi ein ferngesteuertes Roboter-Auto entwickeln. Oder soll das Auto gleich selber fahren können? Perfekt, denn im zweiten Teil des Buches bauen Sie genau das: ein autonomes Roboter-Auto . Und quasi im Vorbeifahren lernen Sie alle Grundlagen , die Sie für beide Projekte benötigen. Hardware, Elektronik, Bau Ihres bevorzugten Auto-Chassis und natürlich die Programmierung der nötigen Software in Scratch und Python . Die Formel Eins gewinnen Sie mit dem Roboter-Auto vielleicht nicht - viele spannende Erkenntnisse und Lernspaß aber sicher!
Aus dem Inhalt:

Die elektronischen Komponenten kennenlernen: Raspberry Pi, Kamera- und W-LAN-Modul, Motoren, Step-Down-Converter, Ultraschall-Sensor, GPS-Empfänger u. v. m.
Die benötigten Werkzeuge kennenlernen: Lötkolben, Dritte Hand und Co.
Grundlagen zum Elektromotor
So fügt sich alles zusammen: Chassis basteln, Fahrgestell montieren, Elektronik verbauen
Grundlagen der Elektrizitätslehre
Verkabelung der elektronischen Komponenten
Den Raspberry Pi in Betrieb nehmen
Wichtige Linux-Grundlagen
Einführung in die Programmierung mit Scratch und Python
Das google-Auto hat eine und Ihres auch: Die Kamera nutzen
Auto-Steuerung: via W-LAN fernsteuern oder vollständig autonom
Liste der benötigten Elektronik-Komponenten...

Servomotor – Python Programm

Ich habe ein kleines Programm in Python geschrieben um die beiden Servomotoren des Roboter-Autos steuern zu können. Es ist nur ein Beispiel welches erklärt wie Servomotoren gesteuert werden können und wie diese sich von links in die Mitte nach rechts und wieder zurück bewegen. Das Programm kann gerne entsprechend den individuellen Bedürfnissen angepasst werden.

Das Programm gibt es hier zum Download: servo motor python test program

Weiterführende Artikel – Servo Kontroller

Wer aber mehrer Servo Motoren mit einem Raspberry Pi steuern möchte und dies auch hoch präzise kommt um einen Servo Kontroller nicht herum. Ich stelle in den folgenden Artikeln von mir einem Servo Kontroller vor der kostengünstig ist und perfekt am Raspberry Pi funktioniert.

16 Kanal Servo Kontroller I2C Schnittstelle Servo Motoren

16 Kanal Servo Kontroller I2C Schnittstelle Servo Motoren

Video

Das Video zeigt mein aktuelles Roboter-Auto als Prototyp welches mit zwei Servomotoren und zwei Ultraschall Sensoren ausgestattet ist.

(Visited 742 times, 3 visits today)