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.
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: 3635
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