Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
elektronik:schrittmotorsteuerung_mit_dem_easydriver [2013/05/02 22:25] – [Ansteuerung (Quellcode)] Formatierung octoateelektronik:schrittmotorsteuerung_mit_dem_easydriver [2013/05/02 22:27] – Formatierung der Überschriften octoate
Zeile 2: Zeile 2:
 Für mein [[sonstiges:super8scanner|Super 8 Schmalfilm Scanner]] Projekt musste ich mit einem Arduino einen Schrittmotor ansteuern, um die Mechanik des Projektors immer um ein Einzelbild weiter / zurück zu bewegen. Um mir eine Eigenbaulösung einer Schrittmotorsteuerung zu sparen, fiel die Wahl auf den EasyDriver Schrittmotortreiber, der von SparkFun produziert wird, da er recht einfach anzusteuern ist. In Deutschland ist er u.a. bei [[http://www.watterott.com|Watterott]] zu bekommen. An den Schrittmotor hatte ich keine weiteren Anforderungen, ausser, dass er mit dem EasyDriver zusammenarbeiten sollte, also einen Spulenstrom von unter 750mA benötigt. Für mein [[sonstiges:super8scanner|Super 8 Schmalfilm Scanner]] Projekt musste ich mit einem Arduino einen Schrittmotor ansteuern, um die Mechanik des Projektors immer um ein Einzelbild weiter / zurück zu bewegen. Um mir eine Eigenbaulösung einer Schrittmotorsteuerung zu sparen, fiel die Wahl auf den EasyDriver Schrittmotortreiber, der von SparkFun produziert wird, da er recht einfach anzusteuern ist. In Deutschland ist er u.a. bei [[http://www.watterott.com|Watterott]] zu bekommen. An den Schrittmotor hatte ich keine weiteren Anforderungen, ausser, dass er mit dem EasyDriver zusammenarbeiten sollte, also einen Spulenstrom von unter 750mA benötigt.
  
-===== EasyDriver =====+====== EasyDriver ======
  
 {{:elektronik:668x400xeasydriver_v44_description.png?400|}} {{:elektronik:668x400xeasydriver_v44_description.png?400|}}
Zeile 10: Zeile 10:
 **Wichtig:** Der EasyDriver unterteilt einen Einzelschritt in 8 Mikroschritte, d.h. dass bei meinem Schrittmotor mit 200 Schritten pro Umdrehung insgesamt 1600 Mikroschritte (Impulse am Step Eingang) für eine Umdrehung benötigt werden. **Wichtig:** Der EasyDriver unterteilt einen Einzelschritt in 8 Mikroschritte, d.h. dass bei meinem Schrittmotor mit 200 Schritten pro Umdrehung insgesamt 1600 Mikroschritte (Impulse am Step Eingang) für eine Umdrehung benötigt werden.
  
-===== Schrittmotor =====+====== Schrittmotor ======
  
 {{:elektronik:schrittmotor-1.jpg?200|}} {{:elektronik:schrittmotor-2.jpg?200|}} {{:elektronik:schrittmotor-1.jpg?200|}} {{:elektronik:schrittmotor-2.jpg?200|}}
Zeile 24: Zeile 24:
 {{:elektronik:schrittmotor-sm-42byg011-25.pdf|Datenblatt}} {{:elektronik:schrittmotor-sm-42byg011-25.pdf|Datenblatt}}
  
-===== EasyDriver am Arduino =====+====== EasyDriver am Arduino ======
 Beim Anschluss an den Arduino habe ich mich ganz nach einem Tutorial auf [[http://bildr.org/2011/06/easydriver/|Bildr.org]] gerichtet. Da noch ein Arduino Uno zur Verfügung stand und im Projektor auch noch genug Platz war, sprach nichts dagegen sich genau an die Anleitung zu halten. Selbst die Farben der Kabel meines Schrittmotors stimmen mit der Anleitung überein. Beim Anschluss an den Arduino habe ich mich ganz nach einem Tutorial auf [[http://bildr.org/2011/06/easydriver/|Bildr.org]] gerichtet. Da noch ein Arduino Uno zur Verfügung stand und im Projektor auch noch genug Platz war, sprach nichts dagegen sich genau an die Anleitung zu halten. Selbst die Farben der Kabel meines Schrittmotors stimmen mit der Anleitung überein.
 Hier also der Schaltplan für die Verbindung des Arduino Uno mit dem EasyDriver und einem Schrittmotor: Hier also der Schaltplan für die Verbindung des Arduino Uno mit dem EasyDriver und einem Schrittmotor:
Zeile 32: Zeile 32:
 In meinem Setup habe ich zusätzlich noch ein paar Stecker und Buchsen verbaut, um einfachere Kabeldurchführungen in den Projektor zu ermöglichen und um evtl. später selbst Teile einfach austauschen zu können. In meinem Setup habe ich zusätzlich noch ein paar Stecker und Buchsen verbaut, um einfachere Kabeldurchführungen in den Projektor zu ermöglichen und um evtl. später selbst Teile einfach austauschen zu können.
  
-==== Ansteuerung (Quellcode) ====+===== Ansteuerung (Quellcode) =====
 Glücklicherweise hat [[http://bildr.org/2011/06/easydriver/|Bildr]] zwei Routinen für den Arduino unter MIT Lizenz zur Verfügung gestellt, mit der man ganz einfach einen Schrittmotor mit dem EasyDriver ansteuern kann. Die Pins lassen sich, wie bei Arduino Sketches üblich, gleich zu Beginn festlegen, sodass man die Routinen schnell an die eigenen Bedürfnisse anpassen kann. Mit der Methode "rotateDeg" kann man den Schrittmotor um einen zu übergebenden Winkel weiterdrehen (bspw. 90 für 90 Grad), wobei negative Winkel den Schrittmotor zurückdrehen. Mit der Methode "rotate" kann man den Schrittmotor um die zu übergebende Anzahl an Microsteps weiterbewegen, wobei durch das Design des EasyDrivers ein Schritt des Schrittmotors 8 Microsteps sind (siehe oben). Auch hier gilt, dass negative Werte den Schrittmotor rückwärts laufen lassen. Glücklicherweise hat [[http://bildr.org/2011/06/easydriver/|Bildr]] zwei Routinen für den Arduino unter MIT Lizenz zur Verfügung gestellt, mit der man ganz einfach einen Schrittmotor mit dem EasyDriver ansteuern kann. Die Pins lassen sich, wie bei Arduino Sketches üblich, gleich zu Beginn festlegen, sodass man die Routinen schnell an die eigenen Bedürfnisse anpassen kann. Mit der Methode "rotateDeg" kann man den Schrittmotor um einen zu übergebenden Winkel weiterdrehen (bspw. 90 für 90 Grad), wobei negative Winkel den Schrittmotor zurückdrehen. Mit der Methode "rotate" kann man den Schrittmotor um die zu übergebende Anzahl an Microsteps weiterbewegen, wobei durch das Design des EasyDrivers ein Schritt des Schrittmotors 8 Microsteps sind (siehe oben). Auch hier gilt, dass negative Werte den Schrittmotor rückwärts laufen lassen.
  
elektronik/schrittmotorsteuerung_mit_dem_easydriver.txt · Zuletzt geändert: 2014/03/13 08:23 von octoate
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0