DC-Motor

Was ist es?

Ein Elektromotor wandelt an Ihn übermittelte elektrische in kinetische Energie. Es gibt Wechsel- und Gleichstrommotoren, in diesem Beispiel wird der Gleichstrommotor behandelt. Der einfließende Strom wird durch eine Spulenwicklung geleitet, dies Magnetisiert den Rotor. Ein fest mit dem Gehäuse verbundener Stator besitzt ebenfalls ein festes Magnetfeld. Der Rotor beginnt bei angeschaltetem Strom seine Rotation, um sich nach den Polen des Stators auszurichten. Ein Kommutator sorgt dafür, dass nach jeder halben Drehung die Pole des Rotors getauscht werden. So entsteht eine permanente Rotation. Kleine Elektromotoren, wie z.B. in Mobiltelefonen für die Vibrationsfunktion verbaut sind, können direkt an einen Mikrocontroller angeschlossen werden. Voraussetzung ist, dass der Motor mit den geringen Ausgangsspannungen eines Mikrocontrollers „arbeitsfähig „ist. In diesem Beispiel wird der Motor mithilfe einer H-Brücke angesteuert und von einem Akku mit der nötigen Spannung versorgt.

Schaltplan

CODE

DC-Motor.py
import RPi.GPIO as GPIO		#Import von Bibliotheken
import time
 
GPIO.setmode(GPIO.BOARD)	#GPIO-Belegung auf die des Shields stellen
GPIO.setup (11, GPIO.OUT)	#Beide angeschlossenen GPIOs als Ausgang deklarieren
GPIO.setup (13, GPIO.OUT)
 
try:						#Try-Huelle, damit das Programm korrekt beendet werden kann
   while 1:
      GPIO.output(11, GPIO.LOW)		#Den Motor starten, indem ein GPIO Strom ausgibt, der andere nicht.
      GPIO.output(13, GPIO.HIGH)	
      print("Motor dreht vorwaerts")	
 
      time.sleep(3)					#3 Sekunden warten
 
      GPIO.output(13, GPIO.LOW)		#Die GPIOs umgekehrt schalten, Drehrichtung wird invertiert 
      GPIO.output(11, GPIO.HIGH)		#Wichtig: Erst den Aktiven GPIO auf "low" stellen!
      print("Motor dreht rueckwaerts")
 
      time sleep (3)
except KeyboardInterrupt:			#Hier folgt, was passieren soll, wenn strg-c gedrueckt wird
   pass
   GPIO.output(11, GPIO.LOW)		#GPIOs stromlos schalten
   GPIO.output(13, GPIO.LOW)
   GPIO.cleanup()					#GPIO-Belegungen löschen
   print("Programm vollstaendig beendet")

Hinweise

Wichtig ist, dass sämtliche 0-Leiter (also alle Grounds) über den Ground des Raspberry PIs angeschlossen werden. Außerdem ist immer darauf zu achten, dass zunächst alle 0-Leiter angeschlossen werden und erst dann die Spannung angelegt wird, sonst nimmt der Raspberry oder die H-Brücke Schaden.