Einen Motor über einen Arduino zu betreiben ist relativ einfach, allerdings wird in aber in 90% aller Fälle eine externe Spannungsquelle benötigt um den Motor zu betreiben. Das liegt in der Leistungsaufnahme des Motors. Dieser benötigt mehr Strom und oft auch mehr Spannung als die 5 Volt des Arduino Bords.
Ich habe ein Netzteil mit 9 Volt Gleichspannung verwendet. Beim Anschließen ist darauf zu achten, dass der Minuspol des Arduino und der Minuspol des Netzteils verbunden sind. Der Pluspol des Netzgerätes und der Pluspol des Arduino dafür auf keinen Fall direkt miteinander verbunden sein, sondern nur über die Basis des Transistors. Sonst sind Schäden am PC oder am Bord möglich.
Den Aufbau der Schaltung seht ihr auf dem Breadbord:
- Als Transistor habe ich einen BC 547 verwendet.
- Die Diode ist eine 1 N4001, die das Arduino Bord vor Spannung aus dem Motor schützen soll.
- Die Basis hat einen 22 Ohm Widerstand, je nach Transistor, muss dieser kleiner oder größer gewählt werden.
- Der Pull Down Widerstand hat 1 K.Ohm
Angesteuert bzw. programmiert habe ich mit Minibloq. Um den Motor anzusteuern, reicht es einen Ausgang auf high = an oder auf low = aus, zu setzten. Soll der Motor in der Geschwindigkeit verändert werden, muss ein PWM Ausgang verwendet werden. In dem Feld links kann die Geschwindigkeit verändert werden, wobei 0 aus und 255 die maximale Geschwindigkeit ist.
Hier noch ein Beispiel, wie mit einem Taster der Motor anläuft. Wird der Taster losgelassen, bleibt der Motor stehen.