Hallo zusammen, nachdem ich nun schon einige Stunden wegen Schrittmotoren und deren Ansteuerung im Netz gesucht habe fühle ich mich als Neuling in dieser Materie von der Fülle der Informationen regelrecht erschlagen und hoffe hier Hilfe zu finden :-) Zu meinem Problem: ich möchte einen Drehkondensator mit Luftdielektrikum und Poti am anderen Ende der Achse, so wie er zu Analogzeiten in Radios verwendet wurde, mit einem Schrittmotor antreiben. Einen Schrittmotor möchte ich deshalb, weil ich dann kein zusätzliches Getriebe benötige, das unerwünschtes Spiel in die Konstruktion bringt. Der Drehko verfügt über eine Untersetzung von 3:1, d.h. von min. bis max. (180 Grad) sind 1,5 Drehungen nötig. Von Hand lässt er sich mit einem Knopf von etwa 2 cm Durchmesser ganz leicht drehen. Wie hoch das Drehmoment meiner Hand dabei ist weiß ich natürlich nicht :-) Nun stellen sich mir insbesondere zwei Fragen: 1. Welchen (möglichst preisgünstigen) Motor sollte ich wählen und 2. welches Treiber-IC (oder fertiges Board) sollte ich nehmen? Wie ich gelesen habe scheinen bipolare Schrittmotore mit 2 Phasen und 1,8 Grad pro Schritt weit verbreitet zu sein. Teilweise findet man auch solche mit 0,9 Grad pro Schritt. Da gibt es dann NEMA 11, 14, 17 und andere mit jeweils unterschiedlichen Spulenspannungen und Strömen. Aber welchen nehmen? Ich habe Schwierigkeiten mich da zurecht zu finden. Ebenso bei den Treiber-ICs. Da gibt es einfache (L297/L298) und intelligente (A4988, DRV8825), alles auch jeweils schon fertig auf einem Board. Das Ganze soll in einem wasserdichten Gehäuse im Außenbereich eingesetzt und ferngesteuert werden. Die Steuerung (Software) soll entweder mit einem AVR-Mikrocontroller (evtl. Arduino) oder einem Raspberry Pi Pico erfolgen. Ideal für mich wäre eine Betriebsspannung von 12 V. Ich hoffe, dass ich mein Problem detailliert genug beschrieben habe. Kann mir vielleicht jemand von Euch Hinweise und Tipps zur Auswahl der Komponenten geben? Vielen Dank für Eure Hilfe, Ralf, DL5EU
:
Verschoben durch Moderator
Das Ansteuern eines Schrittmotors ist ein bekanntes Problem. Was Du Dir aber vorher(!) noch überlegen sollst: 1. Wie weißt Du, in welcher Stellung der Kondensator ist? Der Schrittmotor selber weiß es nicht. Der kann nur vor- und zurückfahren. Gängige Lösungen hierfür sind: - Endlagenschalter - Encoder, die Dir die Position zurückgeben - Ein zweiter Drehkondensator auf der Achse oder im Aufbau selber, den Du messen kannst. - Einfach an den Anschlag fahren und idealerweise den Strom dabei messen, damit Du mitbekommst, wann Du am mechanischen Ende bist. Bevor Du anfängst, solltest Du hierfür eine Antwort haben. 2. Fernsteuerung wie? seriell, Ethernet WLAN Bluetooth? Reine Mikrocontrollerarchitekturen sind für sowas wie Ethernet oder WLAN weniger geeignet - geht zwar, aber kleine Linux-Kisten wie ein Pi ohne Pico können das besser und mit weniger Aufwand.
Ralf G. schrieb: > Nun stellen sich mir insbesondere zwei Fragen: Mir auch. Ralf G. schrieb: > weil ich dann kein zusätzliches Getriebe benötige, das unerwünschtes > Spiel in die Konstruktion bringt Na ja, so schlimm sind Getriebe nicht Ralf G. schrieb: > Der Drehko verfügt über eine Untersetzung von 3:1 offenbar ist das ja akzeptabel. Schrittmotore haben 2 Probleme: sie brauchen Strom um ihre Position zu halten, zwischen Vollschritten pfeifen sie auch gerne durch die Stromregelung. Und sie arbeiten in Schritten, bei dir also 300 Kapazitätswerte wenn man nur Vollschritte nutzt. Vollschritte sind deshalb gut, weil man dann doch den Strom abschalten kann und kein pfeifen hat. Vollschritte können auch durch unipolare Schrittmotore gut erreicht werden. Die lassen sich durch ULN2003 ansteuern. Du findest solche Schrittmotore in alten Floppylaufwerken (TEAC FD55). Damit sind sie gratis. Der ULN sitzt auch auf der Platine. COM des ULN geht NICHT an plus, sondern über eine Z-Diode (12V) an plus. Es wird nur in Villschritten und Halbschritten positioniert, keine Mikroschritte. Die Leistung reicht aus, die Geschwindigkeit wohl auch, es wird halt so schnell wie ein Floppymotor den Kopf von Spur 0 bis 79 verschiebt, unter 1 Sekunde. Wenn dir aber 300 Drehkondensatorpositionen nicht reichen, brauchst du eine andere Lösung. z.B. ein zusätzliches Getriebe. Zahnriemen sind spielfrei und leise.
Überlege mal zu einem Modellbau-Servo. Einfache Ansteuerung, proportional und ohne Strom hält er. Du brauchst nur eine PWM.
Der TE erwähnte ja das Poti am anderen Ende des Drekos, was ich als Positionsermittlung des Schrittmotores interpretiere. Ist ob der Temperaturschwankungen zwar nicht sehr genau bei Betrieb ausserhalb, aber zur Begrenzung des Fahrweges und der ungefähren Einstellung ausreichend. Das Poti soll wohl den Drehwinkel zurückmelden, aus dem man dann evtl die Kapazität grob ermitteln kann. Zusätzliche Endschalter sind dennoch besser, um Referenzpunkte zu haben.
Frank K. schrieb: > Reine > Mikrocontrollerarchitekturen sind für sowas wie Ethernet oder WLAN > weniger geeignet. Nein! Für Ethernet sind sogar kleine Mikrocontrollerarchitekturen wie AVR oder kleine STM32 sehr gut geeignet, seit es die Ethernet Controller W5100 und W5500 gibt, die man ganz locker per SPI steuern kann. Selbst mit einem Mega328P oder einem (auch sehr kleinem) STM32F091, STM32F103 (Bluepill) oder STM32F401/411 (Blackpill) gelingt eine vollständige TCP- und/oder UDP Implementierung inklusive einfacher Hardware-Ansteuerungen. Da betrachte ich mal, einen kleinen Linux-Controller für so eine Aufgabe zu verwenden, als "mit Kanonen auf Spatzen schiessen".
Frank K. schrieb: > 1. Wie weißt Du, in welcher Stellung der Kondensator ist? Wie bereits geschrieben hat der Drehko ein Poti am anderen Ende der Achse. Das wollte ich zur Positionsbestimmung nutzen. > 2. Fernsteuerung wie? seriell, Ethernet WLAN Eins davon. Ich dachte an seriell oder WLAN (Pico W). Letzteres habe ich noch nicht probiert, wäre aber vielleicht eine Möglichkeit. Ein Pi ohne Pico ginge natürlich auch, aber das ist derzeit nicht mein Problem. Michael B. schrieb: > Na ja, so schlimm sind Getriebe nicht Einfache Getriebe haben immer ein gewisses Spiel und bei so kleinen Schritten könnte das evtl. störend sein. Das Getriebe im Drehko hat gegeneinander verspannte Zahnräder und kein Spiel. > sie brauchen Strom um ihre Position zu halten Ist das in meinem Fall relevant? Es dreht ja niemand von Hand an dem Drehko und von selbst verstellt er sich ja wohl nicht wenn der Strom aus ist. > Vollschritte sind deshalb gut, weil man dann doch den Strom abschalten > kann und kein pfeifen hat. Stimmt. Da müsste ich ermitteln wieviel Kapazitätsänderung pro Schritt bei fast ausgedrehtem Drehko das gibt und ob das noch akzeptabel ist.
Ralf G. schrieb: > Ist das in meinem Fall relevant? Es dreht ja niemand von Hand an dem > Drehko und von selbst verstellt er sich ja wohl nicht wenn der Strom aus > ist. Ich glaube nicht. Die haben schon ein gewisses Haltemoment. Edit: auch ohne Strom!
:
Bearbeitet durch User
Ralf G. schrieb: > Ich hoffe, dass ich mein Problem detailliert genug beschrieben habe. > Kann mir vielleicht jemand von Euch Hinweise und Tipps zur Auswahl der > Komponenten geben? Hallo Ralf, hab' hier auf dem Schreibtisch ein:
1 | 28BYJ-48 – 5V Stepper Motor |
2 | 5.625° / Schritt. 64 Schritte / Umdrehung |
3 | Gearing 1:32 ──▶ 2048 Vollschritte / Umdrehung |
4 | ──▶ 4096 Halbschritte / Umdrehung |
5 | Kritische Grenzwerte (experimentell ermittelt): |
6 | Sanft** min: 1230µs/Schritt ──▶ 24rpm (Pulse 50% duty) |
7 | Voll min: 980µs/Schritt ──▶ 30rpm |
8 | Halb min: 430µs/Schritt ──▶ 30rpm |
9 | |
10 | ** um auch mehrfach in den Endanschlag laufen zu können. |
11 | Über |
Hat aber seinen Preis, 'nen Fünfer inkl. Board (ULN2003A) Gerade bei Vollschrittbetrieb ist das Ding recht kräftig (schafft ein straffes Drahtpoti völlig problemlos).
Gunnar F. schrieb: > Überlege mal zu einem Modellbau-Servo Ich muss einen Bereich von etwa 540 Grad überstreichen (1,5 Umdrehungen) und bezweifle, dass das mit einem Servo geht. Und wenn, dann wohl auch nur mit einem zusätzlichen Getriebe o.ä. Wastl schrieb: > Da betrachte ich mal, einen kleinen Linux-Controller für so eine > Aufgabe zu verwenden, als "mit Kanonen auf Spatzen schiessen". :-) war auch mein erster Gedanke.
Norbert schrieb: > Gearing 1:32 Auf den bin ich auch gestoßen, habe ihn aber wegen des Getriebes nicht in Betracht gezogen. Wie sieht es mit dem Spiel aus? Geschwindigkeit ist nicht das Thema und außerdem habe ich das Poti zur Positionsbestimmung (Endanschlag).
:
Bearbeitet durch User
H. H. schrieb: > Welchen Job soll der Drehko denn machen? Eine Magnetloop für Empfang abstimmen. Ich habe starke Funkstörungen und eine abgestimmte Magnetloop (schmalbandig) nur für Empfang ist bisher das einzige Mittel, das ich gefunden habe, um die Störungen einigermaßen zu unterdrücken. Eine breitbandige Loop bringt in meinem Fall nichts. Die BNetzA ist bereits eingeschaltet, kann aber nicht viel tun.
Ralf G. schrieb: > Wie sieht es mit dem Spiel aus? Vorhanden, aber minimal (Geschätzt ¹/₁₀°). Hatte zuerst in der Software einen leichten Zurück/Vorwärts Mechanismus eingebaut um den ›Druck‹ immer von der gleiche Seite kommen zu lassen. Nie gebraucht.
Frank K. schrieb: > Das Ansteuern eines Schrittmotors ist ein bekanntes Problem. Welches Problem? Ralf G. schrieb: >> 1. Wie weißt Du, in welcher Stellung der Kondensator ist? > Wie bereits geschrieben hat der Drehko ein Poti am anderen Ende der > Achse. Das wollte ich zur Positionsbestimmung nutzen. Womit willst Du denn die Sollposition vorgeben? Drehencoder, Taster +/- oder ebenfalls ein Poti?
Mi N. schrieb: > Womit willst Du denn die Sollposition vorgeben? Drehencoder, Taster +/- > oder ebenfalls ein Poti? Eins davon. Mit einem µC lassen sich alle drei abfragen (habe ich schon gemacht). Ist aber letztlich auch egal und hat nichts mit meiner Frage zu tun. Es geht mir um die Motore und Treiber, die ich dafür verwenden kann. Sollte ich keinen passenden Antrieb finden spielt die Art, wie die Sollposition vorgegeben wird nämlich keine Rolle mehr, da das Projekt dann bereits gestorben ist.
Ralf G. schrieb: > Zu meinem Problem: ich möchte einen Drehkondensator mit Luftdielektrikum > und Poti am anderen Ende der Achse, so wie er zu Analogzeiten in Radios > verwendet wurde, mit einem Schrittmotor antreiben. Hallo Die Beschreibung und deine Funkkennung lässt mich vermuten, dass es sich bei deinem Projekt um eine Funkanwendung handelt. Dazu fällt mir nämlich ein, dass mein Bruder vor 40 Jahren mal etwas ähnliches bauen wollte um einen Kurzwellenbereich zu scannen(weis das nicht mehr ganau, da nicht direkt involviert). Das scheiterte damals an der verfügbaren Computertechnik, da wenn der Computer lief, der Kurzwellenempfang nicht mehr sinnvoll möglich war. Dahe prüfe zunächst mal ob das nicht auch bei dir passieren könnte. MfG
Es gibt einen ESP32 Schrittmotorcontroller, also nur noch Kabel anstecken und Software. https://www.heise.de/news/IoT-Steuer-Board-fuer-Schrittmotoren-9850033.html
Ralf G. schrieb: > Eine Magnetloop für Empfang abstimmen. Die Güte wird sich in Grenzen halten, da sind 1,8° Schritte bestimmt ausreichend. Einen bipolaren Schrittmotor für den Zweck könntest du gegen Portoersatz (Warensendung) von mir bekommen. Ansteuerung dann mit einem billigen Modul und z.B. Arduino. Dafür gibt's bestimmt auch genügend Codeschnipsel, die man nur zusammenklicken muss.
DL5EU, Luftdrehko, Aussenbereich klingt nach Antennenabstimmgerät. Wenn keine reproduzierbare Position angefahren werden soll, sondern immer wieder auf maximale Anpassung verstellt werden muss, dann empfehle ich einen der 12V Getriebemotore von Pollin. Den TDY-12 für 8€ gibt es von 1-80U/Minute. Da reicht es zwei Drähte ins Haus zu legen und mittels H-Brücke anzusteuern. An die Drehko-Hauptachse kommen zwei Endschalter mit Dioden, die bei Auslösung nur noch die Gegenrichtung zulassen. Ist die Position nötig, dann zusätzlich ein Poti an die Hauptachse montieren. Wenn es unbedingt ein Schrittmotor sein soll, dann ist was fertiges für 5€ mit Programmcodebeispiel nützlich: https://www.pollin.de/p/joy-it-uln2003-treiber-mit-5v-schrittmotor-810676 https://www.pollin.de/media/89/e1/90/1701729046/D810676-B.pdf?ts=1719377549 Dieses Board mit ULN2003 treibt bis 12V 0,5A und passt an den Arduino Dazu dieser 1,8° Schrittmotor für 3€: https://www.pollin.de/p/minebea-schrittmotor-17pm-k077bp01cn-10-2v-0-3a-1-80-310689 https://www.seeedstudio.com/document/pdf/ULN2003%20Datasheet.pdf?
Gunnar F. schrieb: > Ich glaube nicht. Die haben schon ein gewisses Haltemoment. > Edit: auch ohne Strom! Er bleibt nur auf Vollschritten stehen ihne Strom, Mikro oder Halbschritte verliert er - in Richtung zum nächsten Vollschritt. Das wurde schon geschrieben, warum brauchst du es extra nochmal ?
Wolf17 schrieb: > Dieses Board mit ULN2003 treibt bis 12V 0,5A und passt an den Arduino > Dazu dieser 1,8° Schrittmotor für 3€: Der bipolare Schrittmotor lässt dich durch den unipolaten Treiber nicht steuern. Glücklicherweise liegt dem Treiber ein passender Schrittmotor bei. Er hat jedoch ein Getriebe, was Ralf nicht will.
Ralf G. schrieb: >> Womit willst Du denn die Sollposition vorgeben? Drehencoder, Taster +/- >> oder ebenfalls ein Poti? > Eins davon. Mit einem µC lassen sich alle drei abfragen (habe ich schon > gemacht). Ist aber letztlich auch egal und hat nichts mit meiner Frage > zu tun. > > Es geht mir um die Motore und Treiber, die ich dafür verwenden kann. Und von allem zusammen hängt ab, ob ein Controller notwendig ist, oder externe Schrittimpulse 1:1 an den Motortreiber durchgereicht werden können. Nimm einen Motor, der mechanisch gut paßt; der Rest ist ebenfalls Kinderkram. > Sollte ich keinen passenden Antrieb finden spielt die Art, wie die > Sollposition vorgegeben wird nämlich keine Rolle mehr, da das Projekt > dann bereits gestorben ist. Das nenne ich mal 'motiviert'.
Armin X. schrieb: > Das scheiterte damals an der verfügbaren Computertechnik, da wenn der > Computer lief, der Kurzwellenempfang nicht mehr sinnvoll möglich war. Wie ich bereits geschrieben habe wurde die BNetzA bereits eingeschaltet. Etwas im eigenen Haus konnte als Störquelle ausgeschlossen werden. Rüdiger B. schrieb: > Es gibt einen ESP32 Schrittmotorcontroller, also nur noch Kabel > anstecken und Software. Es gibt auch Motoren mit integriertem Controller. Wolf17 schrieb: > Ist die Position nötig, dann zusätzlich ein Poti an die Hauptachse > montieren. Ist schon dran. Danke für die vielen Links. Vielleicht ist da etwas dabei. Mi N. schrieb: > Und von allem zusammen hängt ab, ob ein Controller notwendig ist, oder > externe Schrittimpulse 1:1 an den Motortreiber durchgereicht werden > können. In meinem ersten Post hatte ich geschrieben: "Die Steuerung (Software) soll entweder mit einem AVR-Mikrocontroller (evtl. Arduino) oder einem Raspberry Pi Pico erfolgen." Vielleicht hätte ich erwähnen sollen, dass der Controller mit nach draußen in das Gehäuse soll. Mi N. schrieb: > Das nenne ich mal 'motiviert'. Ich bin nur realistisch. An der Funkstation (wo Handabstimmung möglich ist) bringt mir die Antenne nichts, weil sie da immer noch zu nah an der Störquelle ist (bereits ausprobiert). Also muss die Antenne nach draußen und weiter weg vom Nachbarn (auch ausprobiert, mit Erfolg). Also Fernabstimmung. Und ohne passenden Antrieb macht das ja wohl keinen Sinn. Oder sehe ich das falsch? Michael B. schrieb: > Er hat jedoch ein Getriebe, was Ralf nicht will. Norbert schrieb, dass das Getriebe des genannten Motors fast kein Spiel hat, also könnte ich es ja mal probieren. Zumal durch die Untersetzung die Schritte sehr klein werden. Thomas S. schrieb: > Das Poti soll wohl den Drehwinkel zurückmelden Genau. Und das Verhalten bei Temperaturänderungen hatte ich tatsächlich nicht bedacht. Danke für den Hinweis. Danke Euch allen für Eure Beiträge. Da habe ich wieder etwas zum Nachdenken :-) Ralf, DL5EU
Ralf G. schrieb: > Wie ich bereits geschrieben habe wurde die BNetzA bereits eingeschaltet. > Etwas im eigenen Haus konnte als Störquelle ausgeschlossen werden. Glaubst Du, dass die Ansteuerung Deines Schrittmotors niiiie stört? Wahrscheinlich solltest Du den Drehko so mechanisch festhalten, dass Du nach gewünschte Einstellung durch SM den Haltestrom weglassen kannst? Solange der SM läuft, glaube ich noch nicht an ungestörten Empfang. Bin schon neugierig.
Lu schrieb: > Glaubst Du, dass die Ansteuerung Deines Schrittmotors niiiie stört? Das weiß ich nicht. Ich grübele seit Monaten darüber, wie ich die Fremdstörungen loswerden kann, dass ich diesen Punkt bei meinen Überlegungen vollkommen vergessen habe. Da wäre ein "normaler" Motor dann vielleicht besser. Den Controller könnte ich abschirmen. Ich müsste es ausprobieren.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.