DerFalkner
26.09.2006, 11:24
Sicher nicht zum ersten und wohl auch kaum zum letzten Male der stumme Schrei nach Hilfe von einem Newbie zum Thema Motoren, deren Sinn und vor allem Ansteuerung.
Was ich vor habe:
Im Grunde will ich nur ein Instrumentenbrett für einen Flugsimulator wie etwa Orbiter (http://de.wikipedia.org/wiki/Orbiter_%28Simulator%29) oder FlightGear (http://de.wikipedia.org/wiki/FlightGear) bauen. Das soll dann einfach per USB an den Rechner angeschlossen werden und auf ein paar "Uhren" die Höhe, Geschwindigkeit, Steigrate, Richtung und bestenfalls noch die Fluglage anzeigen. Der PC soll dabei nicht mit der Steuerung der Instrumente belastet werden, sondern lediglich die Daten an den Controller des Instrumentenbretts reichen, der sie dann in die entsprechenden Steuersignale umsetzt.
Bei der Suche nach Lösungen haben sich nun zwei Möglichkeiten ergeben, die ich aus meiner zugegeben elektrotechnisch beschränkten Sicht beschreiben will:
Gleichstrommotor
Vorteil: Leichte Ansteuerung durch "Strom drauf und gut", je nach gewünschter Drehrichtung gepolt, je nach gewünschter Geschwindigkeit mehr oder weniger Spannung.
Nachteil: Die Position muss irgendwie codiert sein, damit man den Zeiger auch wiederfindet. Das ginge entweder über eine Kamera, die über Bilderkennung die Position des Zeigers ermittelt, was aber doch erheblich Rechenaufwand bedeutet, oder über den Sensorchip einer optischen Maus, der entweder Striche zählt, ihre Durchgangsrichtung ermittelt oder mit dem 16x16 CMOS Bild einen GrayCode auswertet. Ein Poti, welches sich mit dem Motor dreht wäre vielleicht auch noch eine Möglichkeit.
Ist mir persönlich aber irgendwie zu ungenau und im Grunde reagiert die Steuerung auf Sensorwerte, statt zu agieren, sie arbeitet also nach dem Motto "Jetzt dreh ich den Motor mal so lange, bis ich zehn Grad weiter bin und höre dann auf" statt "Ich weiß, wo ich hin soll, dazu dreh ich zehn Grad nach links".
Schrittmotor
Vorteil: Durch einen oder mehrere Mikroschalter lässt sich die Position des Zeigers eindeutig bestimmen und von da an die Sollstellung gezielt erreichen. Da der Zeiger oder ein etwaiges Umsetzungsgetriebe nicht all zu viel Last bedeuten, sollte es kaum bis gar nicht zu Aussetzern oder Zählfehlern kommen.
Nachteil:Die Vielzahl an Ansteuermöglichkeiten. In den letzten Wochen meiner Suche im Web haben sich mir unzählige Lösungsmöglichkeiten eröffnet, die von einfachem
Anschließen der Spannung per Hand (http://www.strippenstrolch.de/hauptseite/cms/index.php?Elektronikbasteln:Bauteile:Der_Schrittmo tor_mit_6_Anschl%FCssen) über die fast schon als klassisch zu bezeichnende, weil viel zitierte Steuerung via L29x (https://www.roboternetz.de/wissen/index.php/Schrittmotor#Schrittmotoransteuerung) (x=3, 7, 9) bis hin zur Mikroschrittsteuerung über AVR samt Steuer- und Treiberplatine (http://www.s-line.de/homepages/schweikert/SMCtrl/smctrldocu.htm).
Letztere scheint mir reichlich ausgereift und vielseitig einsetzbar, jedoch stellt sich mir die Frage nach Aufwand und Nutzen. Es ist zwar schön, einen Schrittmotor per Sinuswelle anzusteuern und damit ein gleichmäßiges Drehen zu erreichen, aber ein grobes Drehen mit einer H-Brücke und hoher Übersetzung sollte ein ähnliches Ergebnis auf der Anzeige bieten...?
Vor allem erschließt sich mir nicht, ob ich nun eine H-Brücke selbst mit Transistoren basteln soll, die L29x Schaltung nehmen oder gar ein Leistungstreiber IC wie den L6219 (http://www.st.com/stonline/products/literature/ds/1377.pdf), der hier (http://telin.rug.ac.be/~ps/stepper/) verwendet wird oder den UDN2916 (http://www.allegromicro.com/datafile/2916.pdf), der hier (http://www.geocities.com/researchtriangle/lab/6584/motor_page.html) verbaut wurde oder den ULN2803, der in diesem Forum an anderer Stelle diskutiert wird...
Habe hier zudem vier KP54FP8-755 bipolare Schrittmotoren rumliegen, zu denen ich kein passendes Datenblatt finden kann und die ich gerne verwenden will. Ich tendiere also zur Schrittmotorenlösung, kann mich aber schlichtweg nicht entscheiden, wie ich die ansteuern soll...
Was ich vor habe:
Im Grunde will ich nur ein Instrumentenbrett für einen Flugsimulator wie etwa Orbiter (http://de.wikipedia.org/wiki/Orbiter_%28Simulator%29) oder FlightGear (http://de.wikipedia.org/wiki/FlightGear) bauen. Das soll dann einfach per USB an den Rechner angeschlossen werden und auf ein paar "Uhren" die Höhe, Geschwindigkeit, Steigrate, Richtung und bestenfalls noch die Fluglage anzeigen. Der PC soll dabei nicht mit der Steuerung der Instrumente belastet werden, sondern lediglich die Daten an den Controller des Instrumentenbretts reichen, der sie dann in die entsprechenden Steuersignale umsetzt.
Bei der Suche nach Lösungen haben sich nun zwei Möglichkeiten ergeben, die ich aus meiner zugegeben elektrotechnisch beschränkten Sicht beschreiben will:
Gleichstrommotor
Vorteil: Leichte Ansteuerung durch "Strom drauf und gut", je nach gewünschter Drehrichtung gepolt, je nach gewünschter Geschwindigkeit mehr oder weniger Spannung.
Nachteil: Die Position muss irgendwie codiert sein, damit man den Zeiger auch wiederfindet. Das ginge entweder über eine Kamera, die über Bilderkennung die Position des Zeigers ermittelt, was aber doch erheblich Rechenaufwand bedeutet, oder über den Sensorchip einer optischen Maus, der entweder Striche zählt, ihre Durchgangsrichtung ermittelt oder mit dem 16x16 CMOS Bild einen GrayCode auswertet. Ein Poti, welches sich mit dem Motor dreht wäre vielleicht auch noch eine Möglichkeit.
Ist mir persönlich aber irgendwie zu ungenau und im Grunde reagiert die Steuerung auf Sensorwerte, statt zu agieren, sie arbeitet also nach dem Motto "Jetzt dreh ich den Motor mal so lange, bis ich zehn Grad weiter bin und höre dann auf" statt "Ich weiß, wo ich hin soll, dazu dreh ich zehn Grad nach links".
Schrittmotor
Vorteil: Durch einen oder mehrere Mikroschalter lässt sich die Position des Zeigers eindeutig bestimmen und von da an die Sollstellung gezielt erreichen. Da der Zeiger oder ein etwaiges Umsetzungsgetriebe nicht all zu viel Last bedeuten, sollte es kaum bis gar nicht zu Aussetzern oder Zählfehlern kommen.
Nachteil:Die Vielzahl an Ansteuermöglichkeiten. In den letzten Wochen meiner Suche im Web haben sich mir unzählige Lösungsmöglichkeiten eröffnet, die von einfachem
Anschließen der Spannung per Hand (http://www.strippenstrolch.de/hauptseite/cms/index.php?Elektronikbasteln:Bauteile:Der_Schrittmo tor_mit_6_Anschl%FCssen) über die fast schon als klassisch zu bezeichnende, weil viel zitierte Steuerung via L29x (https://www.roboternetz.de/wissen/index.php/Schrittmotor#Schrittmotoransteuerung) (x=3, 7, 9) bis hin zur Mikroschrittsteuerung über AVR samt Steuer- und Treiberplatine (http://www.s-line.de/homepages/schweikert/SMCtrl/smctrldocu.htm).
Letztere scheint mir reichlich ausgereift und vielseitig einsetzbar, jedoch stellt sich mir die Frage nach Aufwand und Nutzen. Es ist zwar schön, einen Schrittmotor per Sinuswelle anzusteuern und damit ein gleichmäßiges Drehen zu erreichen, aber ein grobes Drehen mit einer H-Brücke und hoher Übersetzung sollte ein ähnliches Ergebnis auf der Anzeige bieten...?
Vor allem erschließt sich mir nicht, ob ich nun eine H-Brücke selbst mit Transistoren basteln soll, die L29x Schaltung nehmen oder gar ein Leistungstreiber IC wie den L6219 (http://www.st.com/stonline/products/literature/ds/1377.pdf), der hier (http://telin.rug.ac.be/~ps/stepper/) verwendet wird oder den UDN2916 (http://www.allegromicro.com/datafile/2916.pdf), der hier (http://www.geocities.com/researchtriangle/lab/6584/motor_page.html) verbaut wurde oder den ULN2803, der in diesem Forum an anderer Stelle diskutiert wird...
Habe hier zudem vier KP54FP8-755 bipolare Schrittmotoren rumliegen, zu denen ich kein passendes Datenblatt finden kann und die ich gerne verwenden will. Ich tendiere also zur Schrittmotorenlösung, kann mich aber schlichtweg nicht entscheiden, wie ich die ansteuern soll...