Forum: Mikrocontroller und Digitale Elektronik Closed loop Schrittmotor Arduino


von Marco (Gast)


Lesenswert?

Hallo zusammen,

ich bin Teil einer Technikerprojektgruppe und wir sollen einen Auftrag 
erfüllen, bei dem wir eine, im Durchmesser 1,70m große Drehplatte 
entwerfen und antreiben sollen.

Zum antreiben wollen wir einen Arduino verwenden und am liebsten einen 
closed loop stepper Motor (nema) verwenden.

Diese Ideen stammen aus Recheren aus dem Internet, da wir keine größere 
Erfahrung in dem Thema haben.

Meine Frage ist nun: Könntet ihr uns Tipps geben welchen Stepper man am 
besten verwendet?

Die Platte wird im gesamten ein ungefähres Gewicht von 150kg haben und 
soll sich nur Schrittweise drehen. Ein Schritt soll 22,5 Grad betragen 
und hat eine Zeitvorgabe von ungefähr 10 Sekunden.

Der Motor sollt ein nötiges Drehmoment aufweisen, um dieses Gewicht 
immer Schrittweise ein wenig weiter zu bewegen.

Vielen Dank schon jetzt für euere Hilfe!

von Walter T. (nicolas)


Lesenswert?

Marco schrieb:
> Könntet ihr uns Tipps geben welchen Stepper man am
> besten verwendet?

Den, der laut Datenblatt das gewünschte Drehmoment im gewünschten 
Drehzahlband aufweist. Für einen closed-loop-Steuerung ist ein 
Sicherheitsaufschlag 50...100% ausreichend.

: Bearbeitet durch User
von Thomas F. (igel)


Lesenswert?

Marco schrieb:
> Die Platte wird im gesamten ein ungefähres Gewicht von 150kg haben

wenn sich die Platte drehen soll dann ist da Gewicht weniger 
interessant, mehr das Massenträgheitsmoment.

> und soll sich nur Schrittweise drehen. Ein Schritt soll 22,5 Grad betragen
> und hat eine Zeitvorgabe von ungefähr 10 Sekunden.

Also muss das Ding erst mal beschleunigen, drehen und dann wieder 
abbremsen:
https://www.mikrocontroller.net/attachment/125751/rampenbild.gif

Mit der vorgegeben Zeit kann man nun ein Beschleunigungs- und 
Bremsmoment ausrechnen. Dann noch eine Übersetzung und Antriebsart 
festlegen. Nun weiß man wie stark der Motor sein muss.

von MaWin (Gast)


Lesenswert?

Marco schrieb:
> Könntet ihr uns Tipps geben

Erstmal Grundlagen, seid ihr noch nicht in de 8. Schulklasse ?

Welches Trägheitsmoment hat die 8.5mm dünne Platte, welche 
Beschleunigung braucht man um den Winkel in 10 Sekunden (5 Sekunden 
Beschleunigung, 5 Sekunden abbremsen) zu schaffen, welche 
Geschwindigkeit bei 12.25 GradC, wie viel Nm braucht man um so schnell 
bei dem Trägheitsmoment auf dieses Tempo zu kommen, und damit wie viel 
Watt Antriebsleistung.

http://wwwex.physik.uni-ulm.de/lehre/physing1/node22.html
https://www.torcbrain.de/drehmoment-und-leistung/

Dann ein wenig Anforderungen präzisieren: Wie genau müssen die 22.5 Grad 
eingehalten werden ?

Man kann jetzt schon folgende Schlussfolgerungen treffen:

1. closed loop UND Schrittmotoren ist grober Unsinn, entweder ein 
normaler Motor und closed loop, oder ein Schrittmotor ohne closed loop.

2. Schrittmotoren sind zu schwach und uneffizient, und daher zu teuer.

3. Man braucht in jedem Fall ein Getriebe

4. Warum Arduino ?

von Marco (Gast)


Lesenswert?

MaWin schrieb:
> Erstmal Grundlagen, seid ihr noch nicht in de 8. Schulklasse ?

Danke vorab für die absolut notwendigen Nettigkeiten....

> Wie genau müssen die 22.5 Grad
> eingehalten werden ?
+- 1 Grad Toleranz

> 3. Man braucht in jedem Fall ein Getriebe
Wir Planen ein Keilriemensystem zu realiesieren, sprich bewegen wir eine 
Riemenscheibe und darüber dann die Platte

> 4. Warum Arduino ?
"Diese Ideen stammen aus Recheren aus dem Internet", wie gesagt haben 
wir die Anregungen selbst zusammen getragen und anhand von ähnlichen 
Projekten sind wir beim Arduino stehen geblieben.

von erkenner (Gast)


Lesenswert?

Marco schrieb:
> Vielen Dank schon jetzt für euere Hilfe!

Also wieder mal: ich hab keine Ahnung und bitte bringt mir
hier die komplette Lösung der Aufgfabe. Ich möchte dass mir
gebratene Tauben in den Mund fliegen.

von Marco (Gast)


Lesenswert?

erkenner schrieb:
> Also wieder mal: ich hab keine Ahnung und bitte bringt mir
> hier die komplette Lösung der Aufgfabe. Ich möchte dass mir
> gebratene Tauben in den Mund fliegen.

Ich bitte um Verzeihung.

Wie konnte ich mir erlauben meine offene Frage in einem Forum für 
entsprechendes Thema zu stellen.

Danke für hilfreiche Antwort und freundliche Art und Weise diese 
mitzuteilen.

von Thomas Z. (usbman)


Lesenswert?

Du suchst also einen ganz normalen Rundschalttisch?.
Früher hätte man das mit einem einfachen AC Motor + Sperrnocken gelöst. 
Heute muss es natürlich ein Arduino mit einem viel zu schwachen 
Schrittmotor sein.

Bei 150kg Scheibengewicht ist ein Schrittmotor eine schlechte Lösung. 
Viel zu hoher Stromverbrauch und schlechtes Haltemoment. Closed Loop ist 
übrigens kein Ersatz für schwache Antriebsleistung.

Sowas baut man nicht selbst, sondern kauft das fertig.

von Marco (Gast)


Lesenswert?

Thomas Z. schrieb:

> Sowas baut man nicht selbst, sondern kauft das fertig.

Das Problem ist, dass wir als Projekt das selber realisieren sollen.
Ein Microcontroller soll die Platte Ansteuern. Einen passenden Antrieb 
zu finden der "stark" genug ist und samt Treiber zu diesem Controller 
passt ist gar nicht so leicht.

von Michael M. (Gast)


Lesenswert?

sry kein Angriff, aber kommt mir vor das Kunst Studenten mal wieder ein 
auf Elektiker machen sollen, da es ja jetzt Arduinos gibt :(

okay jetzt mal Konstiktive.

paar Schlagworte.

AC Motor mit Bremse, Phasenanschnitt , Winkelmesser (oder Löcher in 
Scheibe und lichtschranke), Frequenzumrichter (teuere Variante). DC 
Motor, H-Brückentreiber.

    +-----> H-Brücke -> DC Motor -> Getriebe -> Scheibe
    |               oder
Arduino --> Phasenanschnitt -> Motor mit bremse -> Getriebe -> Scheibe
    |
    +<---- feedback winkelgeber
    |
    +<--- Taster AN/AUS
    |
    +<--- Notaus

MaWin schrieb:
> Welches Trägheitsmoment hat die 8.5mm dünne Platte, welche
> Beschleunigung braucht man um den Winkel in 10 Sekunden (5 Sekunden
> Beschleunigung, 5 Sekunden abbremsen) zu schaffen, welche
> Geschwindigkeit bei 12.25 GradC, wie viel Nm braucht man um so schnell
> bei dem Trägheitsmoment auf dieses Tempo zu kommen, und damit wie viel
> Watt Antriebsleistung.
>
> http://wwwex.physik.uni-ulm.de/lehre/physing1/node22.html
> https://www.torcbrain.de/drehmoment-und-leistung/

fang mal an nach den Muster die gewünschten Größen aus zu rechnen. Die 
Leute mögen es nicht konkret was vor zu schlagen bzw vor zu kauen(eher 
den weg zum selbstlernen) aber Fehler mögen die gerne korregieren.

Also fang mal an zeig deine Fortschritte, darauf wirst du umgehen 
korrekturen erhalten und die paar die nur pöbeln einfach ignorieren.

Wenn du erstmal Trägheit,Wingekgeschwindigkeit,Nm Drehmoment,Leistung 
etc hast kann man dir auch bei der Kompenentensuche helfen ;)

good luck :)

Gruß

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Thomas Z. schrieb:
> Heute muss es natürlich ein Arduino mit einem viel zu schwachen
> Schrittmotor sein.
Ich sehe hier keine sinnvolle Anwendung für irgendeinen Schrittmotor.

Und die Regel- bzw. Positionierschleife wird einfach über einen 360° 
Drehgeber mit 1024 Strichen geschlossen.

Marco schrieb:
> Einen passenden Antrieb zu finden der "stark" genug ist und samt
> Treiber zu diesem Controller passt ist gar nicht so leicht.
Kauf einen Asynchronmotor mit ein paar hundert Watt (man kann da 
übrigens das nötige Drehmoment ausrechnen, damit der nicht unnötig groß 
wird) und dazu passend einen kleinen Umrichter mit 10V-Schnittstelle, 
dann wird der Rest ganz einfach...

: Bearbeitet durch Moderator
von Michael M. (Gast)


Lesenswert?

oh "Technikerprojektgruppe" hatte ich überlesen.

ufff .. naja sollte Formeln umstellen und Werte berechnen schonmal nicht 
so das Problem sein ;)

p.s würde mich an den Formeln dran lang hangeln... von Trägheit über 
Dreh/Anlauf-Moment bis du bei Leistung angekommen bist.


Gruß

von MaWin (Gast)


Lesenswert?

Marco schrieb:
> Das Problem ist, dass wir als Projekt das selber realisieren sollen

Dann fang doch mal an, du hast alle Formeln bekommen und die für eine 
Lösung benötigten Werte genannt bekommen  warum hast du sie IMMER NOCH 
NICHT ausgerechnet ?

Willst du das als Entwicklungsauftrag nach China schicken weil ihr eine 
Grundrechenartphobie habt ?

von Irgend W. (Firma: egal) (irgendwer)


Lesenswert?

Marco schrieb:
> closed loop stepper Motor (nema)

Warum jetzt schon auf feste Baugrößen festlegen wenn du noch garnicht 
genau weisst was du benötigst?
- https://en.wikipedia.org/wiki/Stepper_motor#NEMA_stepper_motors
- http://www.cncitalia.net/file/pdf/nemastandard.pdf

Benötigst du überhaupt den geschlossen loop? Wäre ein verlorener Schritt 
(der meist eine Folge unzureichender Dimensionierung des Motors ist) 
wirklich so tragisch das dem gegengesteuert werden muss?

Anderen langt da durchaus ein Schalter um die Nullpostion zu erkenn 
damit beim Einschalten ein Referenzpunkt angefahren werden kann (und bei 
jeder Umdrehung bekommst du damit noch die Info ob noch alles stimmt).

Marco schrieb:
> Die Platte wird im gesamten ein ungefähres Gewicht von 150kg haben und
> soll sich nur Schrittweise drehen. Ein Schritt soll 22,5 Grad betragen
> und hat eine Zeitvorgabe von ungefähr 10 Sekunden.

Hast du überhaupt schonmal ausgerechnet, was du für ein Drehmoment 
benötigst um das zu beschleunigen und wieder abzubremsen 
(+Sicherheitsaufschlag)? Vorher brachst du dir über Baugrößen usw. 
überhaupt keine Gedanken machen.

Ich würde mal tippen das du dann ganz schnell bei dem Thema Getriebe 
bist und nicht mehr bei Direktantrieb. Damit langt dann eventuell ein 
direkt am Motor angebauter Positionsgeber alleine sowieso schon nicht 
mehr aus.
Bei Direktantrieb geht das mit den 22,5° sowieso nicht bei den üblichen 
Schrittmotoren. Da bist du dann ganz schnell bei dem Prinzip eines 
Servoantriebs...

- https://de.wikipedia.org/wiki/Servoantrieb

von Marco (Gast)


Lesenswert?

MaWin schrieb:

> Dann fang doch mal an, du hast alle Formeln bekommen und die für eine
> Lösung benötigten Werte genannt bekommen  warum hast du sie IMMER NOCH
> NICHT ausgerechnet ?
>
> Willst du das als Entwicklungsauftrag nach China schicken weil ihr eine
> Grundrechenartphobie habt ?

Haha okay... und was genau ist dein Problem, um sich gleich so 
auszudrücken?

Immer "lustige" Pöbeleien aber auch noch kein sinnvoller Kommentar 
deinerseits. Ganz stark.

Viel Spaß noch weiter den Forums-Rambo zu spielen.

von Marco (Gast)


Lesenswert?

Irgend W. schrieb:

> Ich würde mal tippen das du dann ganz schnell bei dem Thema Getriebe
> bist und nicht mehr bei Direktantrieb.
Also direkt soll er auch nicht angetrieben werden. Möglicherweise ein 
Missverständnis. Wir wollten eine Riemenscheibe mit Riemen und 
Übersetzung verwenden.

> Da bist du dann ganz schnell bei dem Prinzip eines
> Servoantriebs...
Da sind wir jetzt auch gelandet und in der Planung. Müssen noch ein paar 
Berechnungen machen aber es wir vermutlich mehr Sinn ergeben.

Vielen Dank für den Kommentar!

von pegelwendler (Gast)


Lesenswert?

Muss das Schrittsignal elektronisch sein?
Und sind die 10 Sekunden wichtig oder nur ganz ungefähr?

Man könnte den (Getriebe)Motor auch einfach hoffnungslos 
überdimensionieren und die schwere Platte auf eine leichte Platte legen. 
Rutschkupplung für Arme.
An den Rand des Tisches kommen einige Sperrzähne, siehe "Freilauf", da 
gibts bei Google ein schönes Bild.
Motor ein, Sperrzahn per Hebel entriegeln und loslassen. Wenn der Motor 
am nächsten Sperrzahn angekommen ist wieder ausschalten. 16 Sperrzähne 
kriegt ihr da absolut easy reingesägt.

Die benötigte Drehgeschwindigkeit für den Motor ermittelt ihr im 
Versuch.

Dann spart man sich das ganze Theoriekarussell und wenn ihr heute noch 
nach einem Motor schaut, könnt ihr morgen in den Baumarkt und am Montag 
steht das Ding.

Praktisch denken!

von Jester (Gast)


Lesenswert?

Marco schrieb:
> Wir wollten eine Riemenscheibe mit Riemen und
> Übersetzung verwenden.

Zahnriemen?

Ein Keil- oder Flachriemen hat Schlupf. Damit ist die Position der 
Scheibe nicht mehr aus der Schrittzahl ableitbar.

Reicht dir die per Riemenantrieb erreichbare Untersetzung aus?

von Wolfgang S. (wolfgang_s278)


Lesenswert?

Ich habe hier noch einen 12Volt/100Watt Servomotor liegen, dessen 
Leistung dafür ausreicht.
Ein PWM-Antrieb mit einer H-Brücke wäre dann die Lösung.

Bei Interesse einfach mal anfragen.

von Wolfgang (Gast)


Lesenswert?

MaWin schrieb:
> Warum Arduino ?

Nimm es einfach so hin.
Es gibt so viele verschiedene und die Aufgabe stellt so wenig spezielle 
Anforderungen, das es fast egal ist, welches Board und welche Umgebung 
für die SW-Entwicklung eingesetzt wird.

von Wolfgang (Gast)


Lesenswert?

Irgend W. schrieb:
> Wäre ein verlorener Schritt (der meist eine Folge unzureichender
> Dimensionierung des Motors ist) wirklich so tragisch das dem
> gegengesteuert werden muss?

Hast du bei einem Schrittmotor (außer bei Einzelschrittbetrieb) schon 
einmal erlebt, dass er nur einen einzelnen Schritt verliert?
Das ist eher die Ausnahme.

von Jobst M. (jobstens-de)


Lesenswert?

Servomotor. Gibt es fertig mit Ansteuerung und Getriebe. Dazu einen 
6-Bit Graycode auf die Unterseite Deines Tellers aufmalen, drucken, 
lasern, kleben.
Alle 22,5° einen 1° breiten Zielcode, sollte bei dem Umfang kein Problem 
sein. Davor und dahinter Bremscodes in benötigtem Winkel und dazwischen 
jeweils einen Code für "volle Fahrt". Also 64 Codes mit 
unterschiedlichem Winkel.

Du kannst dann also ohne eine Referenzfahrt jede gewünschte Position 
sofort und direkt anfahren:

1. An welcher Position bin ich?
2. Wo will ich hin?
3. Bin ich schon da? Ja: Gehe zu 9
4. Rechts rum oder links rum, was ist kürzer?
5. Richtung setzen und Motor auf schnelle Drehzahl beschleunigen(!)
6. Auf Bremscode warten
7. Motor auf langsame Drehzahl abbremsen
8. Auf Zielcode warten
9. Motor stoppen. Ziel erreicht.

Man könnte noch eine Bremse einbauen um die Platte gegen nachträgliche 
Verdrehung zu sichern. Die müsste dann entsprechend gelöst (5) und 
betätigt (9) werden.

So, und nun fertig bauen! Ich will was sehen! Bilder!

Gruß
Jobst

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Obacht, wenn ihr hier so lapidar von "Servo" redet, und dabei an Lenze, 
Schneider, Siemens und SEW denkt, dann kann es trotzdem sein, dann der 
TO (wegen Arduino) als "Servo" so ein Ding für ein Modellflugzeug aus 
dem Internet kramt..

Aus diesem Grund schreibt man besser "Servoachse" und verwendet die im 
Schaltschrankbau üblichen Begriffe "Umrichter", "Synchronmotor", 
"Asynchronmotor" usw.

Und das ist auch die Ebene von fertigen, käuflichen Standardbauteilen, 
auf der ein Techniker in seiner Projektarbeit unterwegs zu sein hat.

Jester schrieb:
> Position der Scheibe
Ermittelt man wie gesagt mit einem Drehgeber (absolut oder inkremental) 
mit 1024 Strichen auf der Achse. Die 1024 deshalb weil 360° / 22,5° = 16 
Segmente sind, die sich dann jeweils auf 64 Schritte auflösen lassen. 
Und die Positionierung damit auf +-0,35° genau ist.
Natürlich könnte man noch Vierfachauswertung machen und die 
Positiosgenauigkeit auf 0,1° verbessern.

: Bearbeitet durch Moderator
von Christian B. (cb1969)


Lesenswert?

Marco schrieb:
> ich bin Teil einer Technikerprojektgruppe

Warum wird diese dann nicht aus Technikern zusammengesetzt?

von Jester (Gast)


Lesenswert?

Lothar M. schrieb:
> Jester schrieb:
>> Position der Scheibe
> Ermittelt man wie gesagt mit einem Drehgeber (absolut oder inkremental)
> mit 1024 Strichen auf der Achse. Die 1024 deshalb weil 360° / 22,5° = 16
> Segmente sind, die sich dann jeweils auf 64 Schritte auflösen lassen.
> Und die Positionierung damit auf +-0,35° genau ist.
> Natürlich könnte man noch Vierfachauswertung machen und die
> Positiosgenauigkeit auf 0,1° verbessern.

Unglücklich gequotet!

Ich hatte was ganz anderes geschrieben, dass nämlich unter gewissen 
Umständen (Antrieb mit einem vom TO präferieten Schrittmotor und 
Untersetzung über schlupfende Riemen) die Position der Scheibe nicht 
mehr aus der Schrittzahl ableitbar ist.

Aber der TO meldet sich eh nicht mehr. Dadurch sind eure erarbeiteten 
Vorschläge ... ehhm, Lösungen für eine Hausaufgabe ... eh für'n A*sch.

von Stefan F. (Gast)


Lesenswert?

Marco schrieb:
> einen closed loop stepper Motor (nema) verwenden

Nema ist keine Bezeichnung für einen bestimmten Motor, sondern eine 
Normreihe für dessen Befestigungs-Flansch.

von Stefan F. (Gast)


Lesenswert?

Wolfgang schrieb:
> Hast du bei einem Schrittmotor (außer bei Einzelschrittbetrieb) schon
> einmal erlebt, dass er nur einen einzelnen Schritt verliert?
> Das ist eher die Ausnahme.

Aber sicher doch, zum Beispiel bei Nadel- und Tintenstrahl-Druckern, 
Flachbett-Scannern und Fotokopieren. Ist ein sehr typisches Fehlerbild, 
wenn die Mechanik schwergängig wird.

von STK500-Besitzer (Gast)


Lesenswert?

Wolfgang schrieb:
>> Hast du bei einem Schrittmotor (außer bei Einzelschrittbetrieb) schon
>> einmal erlebt, dass er nur einen einzelnen Schritt verliert?
>> Das ist eher die Ausnahme.

Stefan F. schrieb:
>Aber sicher doch, zum Beispiel bei Nadel- und Tintenstrahl-Druckern,
>Flachbett-Scannern und Fotokopieren. Ist ein sehr typisches Fehlerbild,
>wenn die Mechanik schwergängig wird.

Auch gerne bei ungeregelte "Fräßmaschinen" (z.B. Stepcraft) / 
Käsefräsen, wenn die Vorschubgeschwindigkeit zu hoch gewählt wurde.

von Stefan F. (Gast)


Lesenswert?

Marco, ich habe auch keine Ahnung wie man die nötige Leistung des Motors 
berechnet. Deswegen würde ich das schrittweise mit Experimenten angehen. 
Erstmal die Drehscheibe bauen und mit einer Kurbel antreiben. Dabei 
bekommst du ganz grob ein Gefühl, wie stark der Antrieb sein muss. Das 
hängt ja auch sehr stark von der Geschwindigkeit ab.

Bei Pollin gibt es immer wieder richtig billige Getriebemotoren zu 
kaufen, da kannst du dich durch probieren, ohne dabei arm zu werden.

Schrittmotoren sind hier ganz schlecht, weil sie beim Anlaufen wenig 
Drehmoment haben. Da kannst du viel besser einen DC Getriebemotor 
verwenden, der langsam mit viel Kraft startet und dann (vernünftig 
geregelt) die gewünschte Drehzahl erreicht.

DC Motoren kannst du für den Anfang mit einem Labornetzteil ansteuern. 
Wenn du weißt, wie viel Strom und Spannung nötig sind, kannst du einen 
passenden Motortreiber kaufen bzw. selbst entwickeln.

Pfiffige Leute treiben ihre Spaßgefährte mit den Motoren und Getrieben 
von Akkuschraubern an. Das wäre vielleicht auch eine Richtung, in die du 
gehen magst.

von Walter T. (nicolas)


Lesenswert?

Stefan ⛄ F. schrieb:
> Marco, ich habe auch keine Ahnung wie man die nötige Leistung des Motors
> berechnet.

Wer eine Techniker-Arbeit schreibt, sollte das allerdings haben. Es ist 
nicht so, als sei die Berechnung Hexenwerk. (Zumindest bei einem 
Maschinenbau-Techniker. Bei einem Zahntechniker sieht das anders aus - 
aber danach sieht die Aufgabenstellung auch nicht aus.)

Roloff/Matek ist das Mittel der Wahl.

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.