Schrittmotor mit debian steuern?

Hast Du Probleme mit Hardware, die durch die anderen Foren nicht abgedeckt werden? Schau auch in den "Tipps und Tricks"-Bereich.
Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 20.07.2016 15:28:14

Leider nicht, VDD ist die Stromversorgung des Treiber-ICs. Watterott schreibt aber, dass es eine ähnliche Platine gibt, auf der VDD aus der Motorspannung erzeugt wird.
Ich habe mir gestern abend die Dokumentation zum Treiber ausführlicher als zuvor angeschaut. Dabei habe ich auch erkannt, daß der Treiber-IC eine eigene Stromversorgung braucht. Die Platine mit VDD aus der Motorspannung habe ich auch gefunden: Pololu A4988 Schrittmotortreiber mit Spannungsregler.
Dieser Treiber liefert wahlweise 5V oder 3,3V für den Treiber-IC aus der Motorspannung. (Läßt sich direkt auf der Platine zusammenlöten, zusätzlich muß ein Jumper auf 5V oder 3,3V gesetzt werden).
Zusätzlich bietet der Treiber einen Überhitzungsschutz, und irgendwelche Kurzschlußschutzfunktionen (die mir etwas unklar sind).
In Richtung des Netzteils gibt es wohl einen Überspannungsschutz, in Richtung der Steuerungspins/des Parallelportadapters nicht.
Die maximale Leistung des Motors kann mit einem Potentiometer begrenzt und mit Hilfe eines Multimeters eingestellt werden.
Minimal brauchst du STEP und DIR und natürlich GND. ENABLE und/oder RESET sind optional um den Strom abzuschalten.
ok. :) Ich denke mal, ich werde alle Pins anschließen; Mit der Funktionsweise einiger Pins ist mir noch nicht alles klar, aber mit der Problematik kann ich mir die Haare raufen, wenn das Gerät erst einmal fertig ist.
Das andere Ende ist o.k., aber für den Centronics-Stecker brauchst du einen passenden Gegenstecker; stopfen ist da aussichtslos.
Ich werde mal in meiner Kabelkiste wühlen, mit etwas Glück finde ich das Centronics-Kabel meines 9-Nadel-Druckers vom Atari ST wieder. :D
Nicht nur eventuell. Wenn versehentlich die "richtigen" Pins verbunden werden, wird der USB-Port zerstört. Ein USB-Port sollte zwar eine Schutzschaltung gegen Spannungsspitzen haben und die verträgt auch 2A bei 12V, aber nur für sehr kurze Zeit. Danach macht sie einen Kurzschluss und die Leiterbahnen brennen durch (oder das Netzteil). Lötfehler und Kurzschlüsse kann man vermeiden, aber im Extremfall macht das Treiber-IC wegen Überhitzung einen internen Kurzschluss. Dann kommt die Motorspannung an DIR und STEP raus... Ja, Optokoppler o.ä. vermindern das Risko deutlich.
Urgs, das hört sich ziemlich fies an.
Ich habe gestern nach den Stichworten "Parallelport Optokoppler" gesucht, und massig Ergebnisse bekommen, aber noch keine klare Lösung gesehen. Kann ein rein mechanischer Optokoppler genug Signalstärke übertragen? Teils war von Verbindungen die Rede, die selbst eine Stromversorgung brauchen. Dafür könnte der Treiber 5V oder 3,3V liefern.
Hier ist mir noch nicht klar, welche Lösung richtig ist bzw. welche Teile konkret benötigt werden.
Warum? Der ganze Ablauf ist doch identisch, egal ob der Laptop die Motorbefehle über den Parallel-Port oder über's Netzwerk sendet. Zum Beispiel: auf dem Pi muss nur der sshd laufen. Der Laptop schickt per ssh die Anzahl der Schritte, der sshd startet ein Script und das steuert den Motor.
ok, stimmt! (Mich kitzelt die Treiber-Parallelport-Variante aber mehr ;-) )
Die Motor-Leistung (genau genommen den Strom) stellst du am Treiber ein, nicht am Netzteil. Grob geschätzt kann der Treiber mit Spannungen von 8 bis 24 Volt jeden sinnvollen Strom liefern. Mit der Spannung kannst du (nur) die maximal mögliche Drehzahl (bzw. das Drehmoment bei gegebener Drehzahl) beeinflussen. Das Netzteil muss also nicht einstellbar sein. Jedes 12V-Steckernetzteil, das 1A oder mehr liefert, ist genauso gut. Ein Laptop-Netzteil mit 16 oder 19 Volt geht auch. Allerdings werden Netzteile sehr optimistisch spezifiziert. Als Daumenregel kann man mit gutem Gewissen die halbe Nennleistung entnehmen.
Gut zu wissen! Insbesondere war mir nicht bekannt, daß man einem Netzteil eher nur die halbe Nennleistung entnehmen sollte. Auch die Spannungsregelung auf dem Treiber mittels Potentiometers ist mir erst gestern richtig aufgefallen und klargeworden. Dann denke ich jetzt, ein Netzteil z.B. 24V und 1A wäre angemessen.

Mir scheint, bis auf die Frage nach geeigneten Optokopplern oder vergleichbarer galvanischer Trennung sind die wichtigsten Punkte für mich jetzt klar. (EDIT: Eventuell der Optokoppler PC847, siehe Ende des Beitrags)

Von den 5V-Modellen habe ich mich innerlich verabschiedet. Interessant waren sie mit dem Gedanken einer USB-Stromversorgung. Doch sind sie schlecht dokumentiert, und der niedrige Preis zeigt sich auch in billigen Bauelementen. (Ich fand ein Bild mit verratschten Plastikzahnrädchen aus dem Motorgetriebe).

Welche Pins am Parallelport die Datenpins sind, weiß ich noch nicht, habe noch keine passende Abbildung gefunden. (Nur reine Pläne oder Fotos, aber kein Foto mit Beschriftung :roll: ) EDIT: Ich habe jetzt ein Bild mit Belegung gefunden.

Zum Anschluß des Motors habe ich Hinweise gefunden, wie ich die Zuordnung der Kabel zu den Spulen mittels Multimeter feststellen kann, das dürfte ich hinbekommen.

Etwas irritiert war ich, daß ich die Drehrichtung des Motors mit DIR wechseln kann, aber nicht definieren kann, ob er sich nun rechts- oder linksherum dreht. Den aktuellen Zustand muß die Software wohl einfach wissen, ohne es tatsächlich wissen zu können.

Teilschritte kann ich mit MS1, MS2 und MS3 festlegen. Sende ich z.B. 111 an diese drei Pins, habe ich 16tel Schritte. Sende ich anschließend 010, bekomme ich 010, oder wird nur der mittlere Pin geschaltet und das Ergebnis ist 101?
Jana hat geschrieben: Nullserie :mrgreen: mit einfachstem Getriebe/Gummiband, verschiedene Rollen mit verschiedenen Dmr. vorsehen und erst mal ausprobieren!
Geringe Kraft? Also ich hatte dazumal einen faustgroßen Schrittmotor nicht mit den Fingern anhalten können. Weiß allerdings nicht mehr, ob der Motor ein zusätzliches Getriebe mit starker Untersetzung, demzufolge Vervielfachung des Drehmomentes enthielt, Dazu kommen wir gleich nochmal.
Ja, so eine Nullserie ist sinnvoll. Auch traue ich dem fischertechnik-Motor sehr viel mehr Kraft zu, als dem 5V-Motörchen. Wenn es sich zeigt, daß eine Gummiband-Ansteuerung präzise genug ist, kann ich auf Schnecke/Zahnrad verzichten und habe den von Dir genannten mechanischen Überlastungsschutz.
Tja, dann entweder einfach, Startpunkt per Tastendruck von deinem Fingerchen bei subjektiv scharfem Bild oder eben Bildauswertung/Automatismus eines scharfen Bildes..
Das gewünschte Motiv und den besten Startpunkt muß ich schon selbst auswählen, das kann mir kein Computer abnehmen ...
ok, ich könnte mich auf die Suche nach dem Motiv beschränken, und der Computer soll selbst den untersten und obersten Punkt finden, an dem das Motiv unscharf wird, aber soviel verlange ich nicht. Auch besteht dabei die Gefahr, daß der Computer entscheidet, das Objektiv kraftvoll auf den Objektträger zu pressen, was nie niemals nicht passieren darf ... Und bei den winzigen Bereichen, in denen das Objektiv bewegt wird, ist auch kein Taster fein genug, um das verhindern zu können.
(Wobei, wenn ich mir das anschaue - das Objektiv kann teleskopartig ein paar mm zusammengeschoben werden, als ein Schutz vor grobmotorischen Mikroskopikern - das könnte wieder genug Spiel für einen Schalter bieten. Im fischertechnik-Plotter sind 2 Schalter eingebaut, die ich verwenden könnte.)
Nichtsdestrtrotz solltest du Endlagenschalter vorsehen, die bei Antriebsende abschalten.
ok, zumindest nach oben könnte ich einen Taster montieren, damit die Serie spätestens nach 20.000 Bildern und 5mm Hub beendet wird, falls ich mich ablenken lasse und vergesse, was da läuft. :lol:
Aber da genügt auch eine Softwarebegrenzung, die nach einer unsinnig hohen Anzahl Bilder automatisch stoppt.
Einen idaelen Mikroskopantrieb könnte auch ein Schraubengetriebe sein: Im einfachsten Fall eine beidseitig gelagerte Schraube/Gewindespindel, eine gegen Drehung gesicherte Mutter (Führung) bewegt sich mit dem Mikroskop auf und ab. Fein- oder am besten Trapezgewinde - aber das ist etwas für Profigeräte, muss nicht sein.
Habe ich nicht wirklich verstanden. :( Der Tisch wird vom Feintriebrad bewegt, das Feintriebrad und das Objektiv bleiben an Ort und Stelle. Einen anderen/zusätzlichen Antrieb halte ich nicht für sinnvoll.
Eine Verbindung Motor-Gummiband-Feintrieb, falls die präzise genug wird, würde mir völlig reichen.
Von USB-Stromversorgung siehst du besser ab.
Davon habe ich mich schon verabschiedet, das bringt mehr Probleme und Gefahren als Nutzen.
Was ein Motor im Überlastfall an Strom/Leistung zieht, muss man schaltungstechnisch berücksichtigen oder man verhindert das von vornherein durch Überlastsicherung/Endabschaltung! Es verteuert oder gefährdet sonst auch die Ausgangsstufe der Ansteuerung. Wir arbeiten doch besser mit Nennstrom/Nennleistung - und nicht Überlastfall!!! :evil:
Der Treiber bietet ein Potentiometer zu Motorstrombegrenzung und hat eine interne Überhitzungsnotabschaltung. Ich denke, das sollte so gehen. Auch könnte ich den Motor zwischen den Schritten abschalten und für 1-3 Sekunden abkühlen lassen. (Da könnte mir das Gummiband Probleme machen, falls es ohne Motorhaltekraft zurückzieht, aber das zeigt sich dann im Praxisversuch).
Du suchst dir vorrangig einen Schrittmotor mit Treiber/Ansteuerplatine, bereits eingebauter (!) Potentilatrennung Richtung USB/GPIO-Steuereingang und separatem Netzteilanschluss für Motor und Ansteuerung. Netzteil an sich ist erstmal nachrangig.
Mit fischertechnik-Schrittmotor, Treiber und Netzteil (und Ansteuerung mit Parallelport-Adapter) habe ich mich eigentlich schon ziemlich festgelegt.
Ein Schutz Richtung Steuereingang ist im Treiber "Pololu A4988 Schrittmotortreiber mit Spannungsregler" nicht enthalten, soweit ich die Dokumentation bisher verstehe.
Auch wenn Du darauf bestehst, daß ich eine Lösung suche, die das bereits enthält: Kannst Du mir einen Tip geben, wie ich eine galvanische Trennung Parallelport<->Treiberplatine am besten verwirkliche? :D Also, welche Optokoppler, oder gar etwas anderes? Stromversorgung mit 5V oder 3,3V könnte der Treiber liefern, je nach Lösungsweg. (EDIT: Eventuell der Optokoppler PC847, siehe Ende des Beitrags)
Fertiglösungen mit USB-Anschluß habe ich trotz langer Suche nicht gefunden, abgesehen etwa vom Arduino-Controller als Zwischenschritt.

Mein Favorit ist noch immer die Treiberplatine mit Parallelport. :wink: Die meisten Fragen dazu sind im Wesentlichen für mich geklärt, bis auf den wichtigen Punkt der galvanischen Trennung.
Jana66 hat geschrieben:Yeah, Martin, geiler :oops: Thread! Feinmechanik, Schrittmotoren, Optik! :THX:
*g* Danke! :D
Für mich ist es der erste Anlauf, Elektronik und ihre Ansteuerung zu verstehen, und es ist auch schön, wenn die virtuelle Computerwelt einen praktischen Bezug zu echten Gegenständen und Anwendungen findet, über Internet und Office-Anwendung hinaus.
Ich freue mich auch sehr über die lebhafte und gute Beratung in diesem Thread! (Etwas schlechtes Gewissen habe ich ja für meine Endloslangpostings :oops:, aber anscheinend werden sie von tapferen debianern doch gelesen ... :THX: )

EDIT:
Ich habe eine Platinenbeschreibung gefunden, wo Parallelport und Schrittmotortreiber verbunden werden. Dort wird der Optokoppler PC847 verwendet. Was ich an die vielen Füße anschließen soll, muß ich erst noch verstehen. :)
Dann habe ich noch einen Pegelwandler mit 8 Kanälen bei Watterott gefunden. Ob der zugleich galvanische Trennung bietet, ist mir noch unklar.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: Schrittmotor mit debian steuern?

Beitrag von cosmac » 20.07.2016 18:54:11

MartinV hat geschrieben:Zusätzlich bietet der Treiber einen Überhitzungsschutz, und irgendwelche Kurzschlußschutzfunktionen (die mir etwas unklar sind).
Ganz einfach: dieses IC geht wahrscheinlich meist nicht kaputt, wenn man an den Motoranschlüssen einen Kurzschluss macht. ICs ohne diesen Schutz gehen garantiert kaputt, wenn man einen Motoranschluss nach GND kurz schließt.
In Richtung des Netzteils gibt es wohl einen Überspannungsschutz
Schutz gegen Verpolung-, nicht gegen Überspannung. Aber mehr als 35 Volt müssen erstmal irgendwo her kommen.
Ich werde mal in meiner Kabelkiste wühlen, mit etwas Glück finde ich das Centronics-Kabel meines 9-Nadel-Druckers vom Atari ST wieder. :D
Wage es ja nicht ein Museumsstück zu meucheln! Aber der Stecker kann eigentlich nicht passen, du baust ja im Prinzip einen Drucker und der USB-Adapter ist das Anschlusskabel.
Kann ein rein mechanischer Optokoppler genug Signalstärke übertragen? Teils war von Verbindungen die Rede, die selbst eine Stromversorgung brauchen. Dafür könnte der Treiber 5V oder 3,3V liefern.
"mechanische" Optokoppler muss ich merken :) Hier funktionieren beide Varianten, die "elektrischen" brauchen einen Widerstand weniger, sind aber teuer.
Etwas irritiert war ich, daß ich die Drehrichtung des Motors mit DIR wechseln kann, aber nicht definieren kann, ob er sich nun rechts- oder linksherum dreht. Den aktuellen Zustand muß die Software wohl einfach wissen, ohne es tatsächlich wissen zu können.
Naja, der Software muss man alles ganz genau erklären, aber dann merkt sie sich das ;) Beim allerersten Einschalten gibt es 3 Möglichkeiten: dreht garnicht, dreht links rum oder dreht rechts rum. Aber anschließend weiß man, dass DIR=0 (z.B.) links bedeutet.
Teilschritte kann ich mit MS1, MS2 und MS3 festlegen. Sende ich z.B. 111 an diese drei Pins, habe ich 16tel Schritte. Sende ich anschließend 010, bekomme ich 010, oder wird nur der mittlere Pin geschaltet und das Ergebnis ist 101?
Du sendest immer den absoluten, neuen Zustand für alle Pins, unabhängig vom vorherigen Zustand.
Jana hat geschrieben:Geringe Kraft? Also ich hatte dazumal einen faustgroßen Schrittmotor nicht mit den Fingern anhalten können. Weiß allerdings nicht mehr, ob der Motor ein zusätzliches Getriebe mit starker Untersetzung, demzufolge Vervielfachung des Drehmomentes enthielt, Dazu kommen wir gleich nochmal.
Hier hat ein Schrittmotor mit 600:1 Getriebe mal eine 8mm-Stahlwelle abgedreht. Der dürfte genauso groß gewesen sein, wie die Plotter-Motoren.
Etwas schlechtes Gewissen habe ich ja für meine Endloslangpostings :oops:, aber anscheinend werden sie von tapferen debianern doch gelesen ... :THX: )
Tja, gestern brauchte ich eine Pause :)
Beware of programmers who carry screwdrivers.

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 20.07.2016 23:41:27

Ich versuche mal, einen kurzen Beitrag zu schreiben. :wink:
Wirklich unklar ist nur noch die Frage nach der Angstschaltung galvanischen Trennung.

Bei meinen Recherchen zu Optokopplern (und Alternativen dazu) bin ich auf auf einen interessanten RS232 Opto-Koppler gestoßen. Einfach auf RS232 aufstöpseln, und der Port ist galvanisch getrennt. :D
Ich habe mir einiges zu RS232 durchgelesen, meine Hoffnung, ähnlich wie mit einem Parallelanschluß arbeiten zu können, ist dahingeschmolzen. :(

Die Verwendung von Optokopplern scheint mir doch recht aufwendig zu sein; anscheinend brauche ich zusätzlich noch Widerstände (warum, habe ich nicht verstanden), und für die Montage brauche ich wahrscheinlich eine zusätzliche Platine.

Die dümmste (vielleicht beste) Frage zuletzt: Kann ich nicht ganz einfach Feinsicherungen verwenden, die bei Überlast durchbrennen? Das ist einfach, billig, und ich kann es verstehen.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

cosmac
Beiträge: 4573
Registriert: 28.03.2005 22:24:30

Re: Schrittmotor mit debian steuern?

Beitrag von cosmac » 21.07.2016 10:13:35

MartinV hat geschrieben:Ich habe eine Platinenbeschreibung gefunden, wo Parallelport und Schrittmotortreiber verbunden werden. Dort wird der Optokoppler PC847 verwendet. Was ich an die vielen Füße anschließen soll, muß ich erst noch verstehen. :)
Im Prinzip brauchen wir genau so etwas, nur nicht so viel davon. Der PC847 hat so viele Füße, weil 4 Optokoppler in einem Gehäuse verbaut sind, jeder hat 4 Pins. Ob man ein großes Gehäuse oder 4 einzelne nimmt, ist Geschmackssache. Bei einzelnen hat man viel mehr Auswahl.
Dann habe ich noch einen Pegelwandler mit 8 Kanälen bei Watterott gefunden. Ob der zugleich galvanische Trennung bietet, ist mir noch unklar.
Bietet er nicht. Und die automatische Richtungsumschaltung ist fast überall überflüssig und da, wo man sie braucht, funktioniert sie nur manchmal. So eine Platine, aber mit normalen Pegelwandler-ICs, wäre ein guter Kompromiss als Angstschaltung.
Bei meinen Recherchen zu Optokopplern (und Alternativen dazu) bin ich auf auf einen interessanten RS232 Opto-Koppler gestoßen. Einfach auf RS232 aufstöpseln, und der Port ist galvanisch getrennt. :D
Ich habe mir einiges zu RS232 durchgelesen, meine Hoffnung, ähnlich wie mit einem Parallelanschluß arbeiten zu können, ist dahingeschmolzen. :(
Speziell mit diesem Teil geht's wirklich nicht gut weil nur die Datenleitungen verbunden sind. Aber ein vollständiger RS232-Port hat 3 Ausgänge TXD, DTR und RTS. Damit könnte man STEP, DIR und noch einen Eingang ansteuern. Man braucht hier unbedingt Pegelwandler/Optokoppler, aber die will man dem Parallelport ja auch spendieren. Die Software wird minimal aufwändiger, weil man ein Programm braucht, das DTR und RTS steuern kann. Zum Ausgleich ist ein RS232-Port wesentlich robuster als USB oder Parallel, er ist kurzschlussfest und verträgt 12 Volt. Mit viel weniger Signalen gibt es auch weniger Fehlerquellen als beim Parallelport. Der kleinere Stecker ist auch kein Nachteil.
Die Verwendung von Optokopplern scheint mir doch recht aufwendig zu sein; anscheinend brauche ich zusätzlich noch Widerstände (warum, habe ich nicht verstanden), und für die Montage brauche ich wahrscheinlich eine zusätzliche Platine.
Ja, anscheinend gibt's nichts fertiges. Aber wenn du löten kannst, ist das doch kein Problem. Optokoppler und Widerstände sind doch ganz pflegeleichte Bauteile. Ein einfacher Optokoppler besteht nur aus einer Leuchtdiode und einem Phototransistor. Die Leuchtdiode braucht einen bestimmten Strom, dafür ist der erste Widerstand zuständig. Der Transistor kann nur ein- oder ausschalten, das Treiber-IC braucht aber 0 Volt und 5 Volt. Solange der Transistor aus ist, kommen die 5 Volt über den zweiten Widerstand. Wenn er einschaltet, macht er praktisch einen Kurzschluss nach GND, also kommen am IC 0 Volt an.
Die dümmste (vielleicht beste) Frage zuletzt: Kann ich nicht ganz einfach Feinsicherungen verwenden, die bei Überlast durchbrennen? Das ist einfach, billig, und ich kann es verstehen.
Leider nicht soo einfach, kleine Sicherungen begrenzen weder Strom noch Spannung. Man braucht also zusätzlich ein Bauteil, das die Spannung solange begrenzt, bis die Sicherung durchgebrannt ist. Während der Zeit muss es die volle Leistung aus dem Netzteil aufnehmen ohne selbst durch zu brennen. Beim Parallelport ist das garnicht möglich, 5 Volt ist normal und 7 Volt ist kaputt. Der Unterschied ist zu klein für einfache Schutzschaltungen. Man müsste das ganze also 2-stufig aufbauen -- kein Problem, aber sicher nicht einfacher als Optokoppler. Und dann hat man noch keine Potentialtrennung.

Potentialtrennung und Angstschaltung haben ja ganz unterschiedliche Aufgaben. Angstschaltungen sind immer angesagt, solange man nicht mit jedem Cent rechnet. Eine Potentialtrennung ist hier für die Funktion völlig überflüssig, die macht das Steckernetzteil. Aber da geht's schon los: macht es die wirklich oder ist es geerdet (bei Laptop-Netzteilen 50:50 Chance). Und wenn es trennt, wie groß wird der Leckstrom vom Netzfilter? Der ist mir egal, ich habe Stecker mit voreilendem Massekontakt -- aber hat die jeder?

Jana66 hat schon Recht: ein Optokoppler und 2 Widerstände erledigen das alles auf einmal; es gibt Alternativen, aber die sind nicht einfacher.
Beware of programmers who carry screwdrivers.

BenutzerGa4gooPh

Re: Schrittmotor mit debian steuern?

Beitrag von BenutzerGa4gooPh » 21.07.2016 12:46:52

Potentialtrennung und Angstschaltung haben ja ganz unterschiedliche Aufgaben. Angstschaltungen sind immer angesagt, solange man nicht mit jedem Cent rechnet. Eine Potentialtrennung ist hier für die Funktion völlig überflüssig, die macht das Steckernetzteil.
Mir geht es mehr um die Entkopplung zwischen PC und Schrittmotor-Steuerung wegen unterschiedlichen Spannungen, wegen eventueller Zerstörung von PC-Bauteilen. Für einen Personenschutz sollten die entsprechenden Netzteile, FI-Schutzschalter sorgen.

Feinsicherungen gibt es träge, mittelträge und flink. Bis die durchbrennen, fließt erst mal der maximale Kurzschlussstrom. In der Zeit haben sich elektronische Bauteile wahrscheinlich verabschiedet. Aber kein Problem, die avisierte Platine besitzt Strombegrenzung.

Sorry tut mir leid, ich bin derzeit etwas in Zeitnot, kann nicht jedes Detail nachvollziehen. Also das mit dem Schraubgetriebe war eine Idee, wenn du schon einen beweglichen Tisch für die Relativbewegung Objekt/objektträger-Objektiv/Mikroskop hast, alles okay.

Zu Optokopplern: Diese bestehen aus einer LED-Fototransistor-Kombination in gemeinsamen Gehäuse, d. h. die brauchen eine entsprechende äußere Beschaltung. Ein reiner Optokoppler nutzt erst mal gar nichts. Deshalb hatte ich eine Fertiglösung empfohlen, die das bereits enthält. Dein Stecker mit Optokopplern sollte alles (standardisiert) tun - so er an 2 standardisierte Schnittstellen angeschlossen wird! Dann braucht man ihn aber wohl nicht zwingend. Die avisierte Platine bietet diese RS232-Schnittstelle von sich aus nicht.

Zu deiner Platine: Wie gesagt, ausgangssmäßig erst mal okay, Strombegrenzung, alles da. Jetzt musst du bitte noch mal sagen, wie du die Ansteuerung der Platine vom PC gedenkst zu tun: Es könnte erst mal prinzipiell funktionieren:
PC mit Konverter USB auf RS232
|
RS232 Opto-Koppler (Richtung Treiber wird ein Optokoppler-RS232-Stecker wohl nicht gehen, da keine entsprechende Schnittstelle an der Treiberplatine. Aber es geht viellcht auch ohne Optokoppler, dazu muss man die Specs der Eingangs-ICs der Treiberplatine nachvollziehen. Oder man nimmt die verlinkte aufwändige Lösung: http://www.roehrenkramladen.de/BOB/bob_2.htm (Schaltplan bisher nicht vollständig nachvollzogen)
|
http://www.watterott.com/de/Pololu-A498 ... ungsregler
|
Schrittmotor

Ist dir das nicht zuviel Bastelei, "Baurich"? Deshalb hatte ich so gedacht:

PC mit USB -> http://www.sprut.de/electronic/pic/proj ... sb4all.htm -> Schrittmotortreiber -> Schrittmotor
(Lösung entspricht nahezu Arduino-Microcontroller als variabler Kodierer für oben verlinkte Schrittmotoren gleich mit zugehöriger Platine!!!. Auch ein Arduino müsste nur einmal programmiert werden, nur als dummer Kodierer, Steuerung macht Debian-PC per USB)

Das habe ich nach kurzem googeln nach "USB Schrittmotorsteuerung" gefunden und für sehr elegant befunden:
https://www.luedeke-elektronic.de/de/El ... an-K8.html
(Vielleicht gib es das irgendwo auch eine Nummer kleiner für 1 Motor.) Technische Daten vorerst nicht nachvollzogen, 750 mA mit max. 30V ergeben max. ca. 20 W Leistung! Dein Debian-PC enthält die gesamte Intelligenz und steuert die einmalig vmtl. mit Windows vorprogrammierte Platine an, so habe ich es bis dato verstanden. Wenn dir so eine Lösung passt, schaue ich mir das auch näher an.

Alle 3 Lösungen (einschließlich Arduino) sollten elektrisch problemlose Fertiglösungen sein, wobei ich Arduino wegen Vielseitigkeit/Preis oder luedeke wegen einer einzigen externen Baugruppe bevorzugen würde.

Und etwas Theorie wegen der Unklarheiten bei den Anschlüssen:
http://rn-wissen.de/wiki/index.php?title=Schrittmotoren

Vielleicht googelst du auch selbst noch mal. Wenn dir das nicht passt, bastele ich (virtuell) an eurer RS232-Lösung mit. Aber erst muss das Konzept klar und clever sein. :mrgreen: Fertiglösungen für Schrittmotortreiber gleich mit RS232-Schnittstelle - also wiederun nur eine Baugruppe nötig:
http://www.ebay.de/sch/i.html?_from=R40 ... g&_sacat=0
Zuletzt geändert von BenutzerGa4gooPh am 21.07.2016 15:15:07, insgesamt 6-mal geändert.

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Schrittmotor mit debian steuern?

Beitrag von ThorstenS » 21.07.2016 14:22:55

Paßt gerade zum Thema - vllt. inspiriert dich das ja: Internet Of Things Microscope

BenutzerGa4gooPh

Re: Schrittmotor mit debian steuern?

Beitrag von BenutzerGa4gooPh » 22.07.2016 10:37:31

Yes, alles da, Führung des Mikroskops, Zahnradgetriebe zur Einstellung, die Umsetzung der Drehbewegung in eine Linearbewegung sehe ich leider nicht - ich tippe auf Zahnrad mit Zahnstange. Wäre am einfachsten für eine manuelle Einstellung.
(Schraubgetriebe haben eine hohe Untersetzung (1..2 mm /Umdr. mit billigem metr. Gewinde in diesem Bereich, steigungsabhängig), unschön für Handbetrieb oder 2. Getriebe mit großer Übersetzung erforderlich)

Bezüglich Schrittmotorsteuerung bin ich gespannt, für welches Konzept sich Martin entscheidet ... . :hail:

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 22.07.2016 20:53:15

Jana66 hat geschrieben:Bezüglich Schrittmotorsteuerung bin ich gespannt, für welches Konzept sich Martin entscheidet ... . :hail:
Ich auch :mrgreen:
Ich habe noch viel gelesen und gesucht, und ich habe noch nicht alle von Dir und cosmac gegebenen Anregungen und Links durchgelesen und durchdacht, daran arbeite ich noch.

Aber als Rückmeldung zwischendurch, ein paar Dinge, über die ich bei meinen weltweiten Nachforschungen gestolpert bin:
heise-Artikel zu einem Schrittmotortreiber aus China mit angeblicher galvanischer Trenung
Dieser Artikel und verschiedene Kommentare im Netz zu verschiedenen China-Geräten ohne Dokumentation zu allerkleinstem Preis läßt mich Abstand halten von manchen verlockenden Angeboten, wie sie besonders bei ebay zu sehen sind.
Beschreibungen wie diese sind lustig, aber vertrauenswürdige Dokumentation sieht anders aus:
Kann jedes mall und mittlere Zweiphasen-oder Vier-Phasen-Hybrid-Schrittmotor anzutreiben
Nimmt new-style bipolaren Konstantstrom Hacken Technologie, die präzise arbeiten Präzision, Vibration klein, lärm und laufen stabil
...
Kommt mit formalen photoelektrischen Koppler
Verbesserte Schaltung, mehr freundlich und stabil Betrieb als die vorherige Version.
Was mir zunehmend auffällt: Galvanische Trennung scheint eher eine Ausnahmeerscheinung zu sein.
Weder der Arduino, noch der Raspberry, noch zahlreiche andere Controller und Treiber scheinen so etwas zu haben. Auch in den Foren zu Arduino und Raspberry scheint nur selten das Gespräch darauf zu kommen.

Fertiglösungen zu galvanischer Trennung sind selten und meist erschreckend teuer.
Eine Ausnahme: Reine Optokopplerplatine mit 4 Input + 4 Output-Kanälen (Schaltplan)

Interessant fand ich Infineon Isoface, Module zur Ansteuerung und galvanischen Trennung von PC/µC und angeschlossenen Geräten. Für den Parallelanschluß scheint ISO1H811G geeignet zu sein. (Datenblatt).
ThorstenS hat geschrieben:Paßt gerade zum Thema - vllt. inspiriert dich das ja: Internet Of Things Microscope
Danke für die Anregung! Das gefällt mir. :)
Das Objektiv ist ein 10:1, damit läßt sich eine ca. 250-fache Vergrößerung noch sinnvoll erreichen. Das ist genug, um interessante Detailansichten zu bekommen, und noch klein genug, um den technischen Aufwand (Beleuchtung, Präzision der Höhenführung, Lichtführung ...) im überschaubaren Rahmen zu halten.
Vielleicht bastele ich irgendwann etwas vergleichbares mit dem 2. Schrittmotor, wenn ich mit dem ersten Erfahrung gesammelt habe. :-)


Ein paar weitere Fundstücke:
Lüdecke, auf den Jana hingewiesen hat, bietet auch einen Bausatz für nur einen Schrittmotor. Ein sehr interessantes Modell. Etwas Angst davor habe ich, weil ich dort wirklich ALLES selbst zusammenlöten muß, und meine Löterfahrung sich bisher auf Reparaturen am Moped beschränkt. :mrgreen: (Hat aber auch keine galvanische Trennung ... :roll: )

Ebenfalls bei Lüdecke ein interessantes Museumsstück: KEMO M106 Schrittmotorsteuerung inklusive galvanischer Trennung und Parallelportanschluß für 17,-.
Das erfüllt schon fast alle Wünsche! So nette Dinge wie Leistungsbegrenzung mit Potentiometer bietet das Gerät nicht ("Passen Sie auf, daß der Motor nicht zu heiß wird" :P ). Ein Zeitschriftartikel beschreibt das Gerät sehr ausführlich.
Die Ansteuerung ist nicht dokumentiert. Es gibt eine GUI für XP. Sie läuft unter wine und sendet auch ohne Gerät Steuerbefehle. Mit etwas reverse engineering könnte ich selbst herausfinden, was die Software an den Parallelport sendet :mrgreen: . Teilschritte bietet die Software nicht an.
Unklar ist mir der Netzteilanschluß, der etwas speziell ist. Lösungen dafür werden im Artikel beschrieben.

:idea: Sehr spannend finde ich dieses Gerät: KEMO M104 Parallelport Modul mit galvanischer Trennung, 4 Kanäle, 6-24V, max 2A.
Das Modul kostet nur 10,-. Ergänzend würde ich nur noch einen USB-Parallelport-Adapter, ein Netzteil und einen D-SUB-Stecker zum Anschließen von Netzteil und Motor brauchen.
Mit dieser Lösung könnte ich die Spulen des Schrittmotors direkt ansteuern und hätte kaum Baurich. (Und es wäre very KISS :lol: )
Zuletzt geändert von MartinV am 24.07.2016 12:50:04, insgesamt 1-mal geändert.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

BenutzerGa4gooPh

Re: Schrittmotor mit debian steuern?

Beitrag von BenutzerGa4gooPh » 23.07.2016 15:18:36

Also wegen der galvanischen Trennung: Mache dich erst mal nicht ganz so heiß. :hail:

Wenn die Platinen oder Baugruppen standardisierte Schnittstellen haben (USB oder RS232), dann sind die Hersteller für das Zusammenspiel verantwortlich. Ganz doof sind sie schon nicht. Die glavanische Trennung ist nicht in jedem Fall vonnöten - Anpassungen kann man auch über Spannungsteiler etc. an gemeinsamer Masse tun. Also die Hersteller der Platinen.

Zu chinesischen Schrittmotorsteuerungen - es war mir auch aufgefallen, hatte meine Links dann korrigiert.
http://www.heise.de/make/artikel/3-Achs ... kelseite=2
Mit Lösungen für Ungereimtheiten, also auch nicht allzu heiß machen. :mrgreen: :THX:

Ich schlage dir nicht umsonst eine Fertiglösung vor. Wenn du magst, löte ich dir gern einen Bausatz zusammen und prüfe den nach Fertigstellung soweit als mir ohne Profitechnik möglich ist. Allerdings ohne viel SMD-Bauteile und natürlich ohne Garantie. Wenn der Bausatz nicht allzu teuer ist - im schlimmsten Fall Pech gehabt oder eben aus 2 mach 1. Details bei Bedarf per PM.

Und nun genieße das schöne Wetter und nichts wird so heiß gegessen wie gekocht. Selbst galvanische Trennung nicht. :mrgreen:

Ich persönlich würde ja eine Lösung nehmen, die schon mal jemand aus Fertigplatinen oder Bausätzen gebaut und dokumentiert hat. Aus den Fehlern anderer lernen ist billiger. Ist so ein Spruch von mir, bei dem ich an Beiträge anderer in diesem Thread bezüglich preiswerter und dokumentierter Fertiglösungen/Programme denke. :mrgreen: :mrgreen: :mrgreen:

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 29.07.2016 16:16:23

Code: Alles auswählen

Also wegen der galvanischen Trennung: Mache dich erst mal nicht ganz so heiß. :hail:
Das sagst Du mir, nachdem ich mir tagelang einen Kopf gemacht habe, bis mir galvanische Dämpfe aus den Ohren quollen ...
Ich schlage dir nicht umsonst eine Fertiglösung vor. Wenn du magst, löte ich dir gern einen Bausatz zusammen und prüfe den nach Fertigstellung soweit als mir ohne Profitechnik möglich ist. Allerdings ohne viel SMD-Bauteile und natürlich ohne Garantie. Wenn der Bausatz nicht allzu teuer ist - im schlimmsten Fall Pech gehabt oder eben aus 2 mach 1. Details bei Bedarf per PM.
Vielen Dank für Dein Angebot! :THX:

Die Lösung, die mir jetzt vorschwebt, werde ich aber wahrscheinlich selbst schaffen können.

Code: Alles auswählen

Ich persönlich würde ja eine Lösung nehmen, die schon mal jemand aus Fertigplatinen oder Bausätzen gebaut und dokumentiert hat. 
Ganz genau meine Lösung gibt es in dieser Form noch nicht, zumindest nicht auffindbar.

Nachdem ich nun einige Zeit tief meditiert und mein Tiefenselbst befragt habe, bin ich nun meiner Entscheidung näher gekommen:
Es wird ein Arduino Uno R3 mit USB-Anschluß und Schrittmotortreiber A4988. Dazu ein Gehäuse für den Arduino, damit er mein Schreibtischchaos überlebt.
Ich überlege, einen Schrittmotor mit weniger Leistung (2,5W oder ähnlich, 1,8°) und feineren Schritten zu nehmen, als der vorhandene Fischertechnik-Motor (12W, 7,5°) das kann.

Dazu beigetragen hat ein Kontakt in einem Mikroskopforum, wo jemand einen autarken Arduino (ohne PC-Anschluß) zur Steuerung eines zum Makrostacking umgebauten Mikroskopes verwendet.
Wir haben uns ausgetauscht, dabei ging es um die Frage, wie Arduino und PC kommunizieren können. (Er ist Linux-Neuling, auch die bash ist für ihn damit neu). Ich habe Vorschläge gemacht, wie die Kommunikation per bash gehen könnte, er hat es getestet, und es ging erstaunlich einfach, trotz serieller Schnittstelle. (Der Arduino-USB-Anschluß fungiert als serieller Port).
Sein Schrittmotor läuft mit 2W, und das ist für den Feintrieb wohl sehr reichlich.

Jetzt überlege ich Feinheiten der Verkabelung/Verlötung.
Ich denke inzwischen, es ist sinnvoll, den Schrittmotor direkt mit der Treiberplatine zu verlöten. An die Treiberplatine kommt außerdem eine Steckdose für einen Netzteilstecker.

Arduino und Treiber möchte ich gern per Steckverbindung verbinden, um den Arduino auch für andere Zwecke verwenden zu können. Dazu könnte ich noch praktischen Rat brauchen.
Gibt es eine "Steckleiste", die direkt auf die Pins vom Arduino paßt? Vielleicht gleich fertig mit Flachbandkabel, wie hier für den Raspi?
Ansonsten habe ich Arduino Stackable Headers gefunden, sieht aus wie eine Pin-Leiste, die man auf eine Pin-Leiste aufstecken kann.

Eventuell könnte ich auch so einen "Stackable Header" verwenden, um Treiber und Motor mit einer Steckverbindung zu versehen. Das würde das System noch modularer machen.

(Meine Fantasie sieht inzwischen noch mehr Verwendungen für Arduino, Treiberplatine und weitere Schrittmotoren :P ).

Viele Grüße, Martin
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

BenutzerGa4gooPh

Re: Schrittmotor mit debian steuern?

Beitrag von BenutzerGa4gooPh » 24.08.2016 10:23:50

Dein oben verlinkter Schrittmotor:
Schrittmotor: Bipolar, 200 Schritte, 28x32mm, 3.8V, 670mA
Etwas viel Leistung für Arduinos GPIO-Pins? 40mA pro GPIO: https://www.arduino.cc/en/Tutorial/DigitalPins
Absatz: Properties of Pins Configured as OUTPUT.

Da fehlt ein ganz einfacher Schaltverstärker zwischen GPIOs des Arduinos und M1-M4 des Schrittmotors, die Kodierung seriell (USB/RS232) auf parallel für M1-M4 kann der Microcontroller (Arduino) mit entsprechender Programmierung selbst. Für den Schaltverstärker benötigt man 4 Leistungstransistoren und etliche Widerstände (etwa 3 pro Transistor) und eine Universalleiterplatte und ein gemeinsames Netzteil für Arduino, Schrittmotor und Schaltverstärker. Dazu empfehle ich einen Scrittmotor, der die gleiche Betriebsspannung hat, wie der Arduino. Verhindert konzeptionell vermeidbare Verlustleistung und Bauteile (Spannungsregler) für Anpassung der Netzteilspannung an unterschiedliche Geräte (Arduino, Schrittmotor, Schaltverstärker). Den Schaltverstärker kann man leicht entsprechend auslegen, berechnen. Suche einen sinnvollen Motor aus (gleiche Spannung wie Arduino und nur die notwendige Leistung) und ich mache dir eine Berechnung und einen Schaltplan für einen simplen Schaltverstärker mit 4 Transistoren und etwa 12 Widerständen! Simpel, weil jeder Transistor die gleiche Beschaltung erhält. Kühlkörper benötigst du auch nicht, da die Transistoren nur schalten. (Verlustleistung tritt nur zwischen den Zuständen auf, Audioverstärker etc.)

Der Arduino hat wohl 7-12V Betriebsspannung. Ich kenne mich mit dem Arduino nicht aus.
http://www.watterott.com/de/Arduino-Uno
Hier stehen auch nur 20 mA pro GPIO!? Reicht gerade mal für LEDs, nicht mal für Relais!
Ich würde einen Schrittmotor mit 9 V oder 12 V suchen! Netzteile dafür sollten vebreitet und demzufolge billig sein.

Wenn du nicht basteln willst, Treiberplatine ohne Arduino, die dann serielles USB/RS232 vom PC in parallel (M1-M4) kodiert und die Leistung bringt für M1-M4 des Schrittmotors. Aber das hatten wir schon.

Und hier alles fertig - mit Ansteuerung:
http://www.hobby-werkstatt-blog.de/ardu ... rduino.php
https://blog.thesen.eu/es-geht-doch-sch ... r-library/
http://www.heise.de/developer/artikel/S ... 27165.html
http://www.halecker.de/kameraslider/201 ... d-treiber/

Suchbegriffe: "schrittmotor arduino steuerung"

Viel Erflolg!

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 24.08.2016 20:08:43

Hallo Jana!

Ich habe hier jetzt eine Schachtel mit Einzelteilen, ich warte nur noch auf die Lötausrüstung, die ich mir leihen will. :) Die hat mein Bruder, und der ist auf Urlaub.

Nebst Kabelage, Steckern, Zahnrädern und anderen Kleinteilen sind die wesentlichen Bestandteile:
- Arduino Uno
- Schrittmotortreiber Pololu A4988 mit Stromversorgung der Steuereinheit über Motorspannung
- Schrittmotor 10,8V/0,4A mit Schrittwinkel 1,8°

Der Arduino bekommt seine Stromversorgung über USB, die Treiberplatine bekommt ein Netzteil, mit dem sowohl der Motor als auch die Steuereinheit der Treiberplatine versorgt werden. Ich habe hier ein 12V/1A Netzteil liegen, mal schauen, ob das reicht.

Somit habe ich mich für eine "Fast-fertig"-Lösung entschieden, bei der ich nur wenige Elemente verbinden muß.

Ich habe Pinleisten und Steckbordkabel gekauft, ich will möglichst mit Steckverbindungen arbeiten, um modular zu bleiben, so daß ich die Treiberplatine z.B. auch für andere Schrittmotoren verwenden kann, anstatt sie direkt mit dem Schrittmotor zu verlöten.

Das Löten dürfte sich auf folgendes beschränken:
Pin-Leisten an Treiberplatine
Stromkupplung für Netzteil an Pin-Stecker
Kabel vom Schrittmotor an Pin-Stecker

Ich hoffe, die Steckverbindungen sind ausreichend, direkte Verlötung von Stromkontakten ist natürlich zuverlässiger.

Etwas trauere ich der Parallelport-Lösung nach, doch die Frage nach der galvanischen Trennung hat mich dann doch verunsichert. Der Arduino bietet einen Überspannungsschutz Richtung Computer.

Die Links zu Arduino und Schrittmotor werden mir sicher noch hilfreich sein, wenn es an die Programmierung des Arduino geht! Bislang kann ich ihn immerhin blinken lassen.

Viele Grüße, Martin
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

BenutzerGa4gooPh

Re: Schrittmotor mit debian steuern?

Beitrag von BenutzerGa4gooPh » 25.08.2016 17:18:06

Also machst du es mit einer fertigen Treiberplatine und Arduino. Ist okay. Die Treiber-Platine kodiert Arduinos zeitlich geänderte "Byte-Folgen" auf den GPIOS nochmals um und verstärkt auch die GPIO-Ausgänge für die Motoranschlüsse. Die gesamte Umkodiererei hätte man auch den Arduino (programmtechnisch) selbst tun lassen können, aber ein einfacher Schaltverstärker für die Strom- und Spannungsanpassung der GPIOs wäre trotzdem vonnöten gewesen. Die Treiber-Datenblätter (20 Seiten) kann ich mir erst nächste Woche ansehen.

Zu deinen Steckverbindungen: Also grob über den Daumen etwas Elektrikerwissen frei aus dem Gedächtnis: 16 Ampere sind Stromgrenze für einen Querschnitt von 1,5 Quadratmillimeter Kupferkabel (16A Auslösestrom von Sicherungen B16 für Kabel NYM-J 3x1,5). 10 Ampere passen gut über 1,6 qmm. Umrechnen auf deine Motorströme kannst du Querschnitte selbst. Deine Stecker haben sicherlich Kontaktzungen - Querschnitte oder Maximmalströme nur aus Datenblättern ersichtlich - aber sicherlich "flächiger" als 0,15 qmm für 1000 mA. Wenn mal ein Kurzschluss passiert, sollen die Kontaktzungen doch zuerst wegbrennen, die Stecker kosten ja kaum was. Allerdings verabschieden sich lange vorher teurere elektronische Bauelemente. Man könnte und sollte nun ein (Labor-) Netzteil mit einstellbarer Spannung UND Strombegrenzung einsetzen. Den Motorstrom brauchst du jedoch trotzdem und elektronische BE verabschieden sich bei Fehlern lange vor der durch den Motor nötigen Strombegrenzung. Also bezüglich Steckverbindungen bei 400 mA - Ball schön flach halten. Wenn du irgendein Billignetzteil verwendest, zusätzliche Feinsicherungen! Durch den induktiven Motorantrieb musst du mal probieren, erst mal flnke und dann mittelträge. Ein kleines Labornetzteil mit einstellbarer Spannung und einstellbarer Strombegrenzung und Anzeigeinstrumenten für Strom und Spannung halte ich für sehr hilfreich und variabel verwendbar. Wenn alles funktioniert, dann mal gegen ein baulich kleineres Festspannungsnetzteil austauschen.
Etwas trauere ich der Parallelport-Lösung nach ...
Die früher von dir in Erwägung gezogene RS232 ist eine elektrische Schnittstelle für serielle Datenübertragung/Protoklolle, m. E. bis etwa 2 MBit/s verwendet. LPT (z. B. für Drucker) gibt es wohl schon lange nicht mehr. Hatte seinen Charme für viele Bastelzwecke, könnte man wie GPIOs verwenden.

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 18.09.2016 14:50:17

Es ist endlich konkret geworden:
Ich habe Arduino, Treiberplatine, Schrittmotor, Mikroskop und PC verbunden.
Schnecke und Zahnrad von Fischertechnik bilden die Kraftübertragung vom Motor auf den Feintrieb des Mikroskopes. Das Zahnrad habe ich mit einer "Heißklebepistole" befestigt. Dieser Kleber ist stabil genug, um das Zahnrad zu halten, und schwach genug, um mit sanfter Gewalt rückstandsfrei abgelöst zu werden:
Bild

Bild
Leider ist zuviel Spiel zwischen Schnecke und Zahnrad, so daß beim Richtungswechsel mehrere Motorschritte lang kein Kontakt besteht. Ich werde beides gegen eine feinere Kombination austauschen:
Bild
Der Motortreiber hat Platz im Arduino Gehäuse gefunden. Leider bietet der Arduino keine 8 nebeneinander liegenden GPIOs an. Zwar liegen eigentlich 14 GPIOs nebeneinander; Jedoch liegt zwischen 7 und 8 eine Lücke, die nicht einer GPIO-Breite entspricht, und 0 und 1 sind für die USB-Kommunikation reserviert. So mußte ich mit verbogenen PINs arbeiten:
Bild Bild

Ein Skript zur Kommunikation mit dem Arduino und Abstimmung mit der Kamera habe ich geschrieben, jetzt können die ersten Fotoserien beginnen.

Mit dieser Zahnrad/Schnecke-Kombination kann ich den Mikroskoptisch um 62,5 nanometer/fullstep heben oder senken. Mit 1/16tel Schritten sind sogar ~3,9 nanometer möglich.
Bei fullsteps kann ich den Motor bei Nichtgebrauch abschalten, und die Position wird gehalten. Bei 1/16 Schritten springt der Motor jedoch zum nächstliegenden Magneten, sobald der Strom weg ist, so daß Teilschritte nur möglich sind, wenn der Motor permanent unter Spannung steht (und warm wird). Die Tischhubhöhe von 62,5 nanometer ist für meine Zwecke aber fein genug.

Zuvor hatte ich eine direkte Verbindung mit großem und kleinem Zahnrad. Ein fullstep hat den Tisch um 1250 nanometer gehoben, das war zuviel. 1/16tel Schritte lagen bei ~78 nanometer, jedoch wurde der Motor mit der Zeit heiß, da ich ihn bei teilschritten nicht abschalten durfte.

Davor hatte ich eine Verbindung mit einem Gummiband. Leider hat das Gummiband die Schritte aber nur mit einiger Verzögerung weitergegeben. Teilschritte wurden in der Gummibandspannung "aufbewahrt", bis genug Spannung aufkam, um das Mikroskoprad zu drehen.

So nähere ich mich Schritt für Schritt einer guten Gesamtlösung. :-)
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

whiizy
Beiträge: 662
Registriert: 23.07.2011 22:09:37

Re: Schrittmotor mit debian steuern?

Beitrag von whiizy » 18.09.2016 15:17:35

Wow, super Projekt!!
Bin schon gespannt auf die ersten zusammengerechneten Bilder! So eine Vorrichtung hätte ich mir gewünscht, als ich mal mit einem USB-Mikroskop sehr verwackelt durch die verschiedenen Bildebenen meiner Plattenspielernadel gehuscht bin. :THX:

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 03.02.2020 18:36:21

Lang ist's her, und das Projekt hat ein paarmal brachgelegen ...
Die letzten Monate habe ich mich ihm aber wieder gewidmet und die Software etwas weiterntwickelt. Der Code ist auf github: https://github.com/mviereck/microscopy-tools

Ein paar Bilder von Blütenpollen:
2474 2476 2477 2478
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: Schrittmotor mit debian steuern?

Beitrag von eggy » 03.02.2020 19:21:48

:THX:
Hast Du ne Idee was das jeweils genau ist?

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 03.02.2020 19:26:46

eggy hat geschrieben: ↑ zum Beitrag ↑
03.02.2020 19:21:48
:THX:
Hast Du ne Idee was das jeweils genau ist?
Von welchen Arten der Pollen stammt, weiß ich (noch) nicht. Ich habe Blütenpollen mikroskopiert, den Bienen gesammelt haben.
Es dürfte umgekehrt leichter sein,wenn ich von mir bekannten Blüten selbst Pollen sammele, dann weiß ich, wovon er stammt.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Schrittmotor mit debian steuern?

Beitrag von ThorstenS » 04.02.2020 17:38:44

wow, ein tolles Ergebnis. Vor allem das gif ist der Wahnsinn =)

fischig
Beiträge: 3601
Registriert: 24.12.2019 12:25:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Schrittmotor mit debian steuern?

Beitrag von fischig » 04.02.2020 19:24:33

Super!!!
Ideen muss man haben und kritisch offen sein für Neues! Respekt und weiterhin viel Erfolg!!! :THX:

Ein Leben ohne Linux und Bienen ist möglich, aber sinnlos! :mrgreen:

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: Schrittmotor mit debian steuern?

Beitrag von MartinV » 06.02.2020 09:38:00

Vielen Dank für die Blumen! :D
Ich gestehe, ich bin auch etwas stolz auf den Erfolg.

Sind Hobbyfotografen hier im Forum?

Das Konzept der Software geht auch für Makrofotografie, auch ohne Schrittmotor.
Dazu könnte ich den Fokus für die Einzelaufnahmen per gphoto2 ändern, anstatt mittels Schrittmotor.
Das ist die nächste angedachte Weiterentwicklung.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: Schrittmotor mit debian steuern?

Beitrag von eggy » 06.02.2020 15:42:00

MartinV hat geschrieben: ↑ zum Beitrag ↑
06.02.2020 09:38:00
Sind Hobbyfotografen hier im Forum?
Hier?! Nee. Auf keinen Fall.

(dass der Fotothread viewtopic.php?f=15&t=166877 ne zweistellige Seitenzahl erreicht hat, hat nix zu sagen :mrgreen: )

Antworten