Forum: Mikrocontroller und Digitale Elektronik Auswahl Schrittmotor+Encoder oder Servo


von Jo H. (91jonas)


Lesenswert?

Hallo zusammen,

ich bin gerade dabei einen Motor für einen Prüfstand auszuwählen bzw. 
darüber zu recherchieren. Dabei bin ich immer wieder hier im Forum 
gelandet.
Folgende Punkte stehen in der Anforderungsliste:
-Drehmoment > 1Nm
-Auflösung <= 1° (wobei eigentlich eher mindesten 0,1° gefordert sind.
-Encoder am Ausgang

Aus Kostengründen ist wohl ein Schrittmotor geplant. Mit Mikroschritten 
sollte so eine Auflösung ja theoretisch möglich sein. Der Motor soll 
beispielsweise immer 0,1° weiterdrehen und dann stehenbleiben damit eine 
Messung erfolgen kann (oder langsam weitergedreht werden, das weiß ich 
momentan leider nicht). Ist so etwas praktisch überhaupt ohne große 
Abweichung machbar? Ich habe etwas von 0,05° mechanischer Genauigkeit 
und bis zu 40% Drehmomentverlust bei Mikroschritten gelesen.

In der NEMA 23 Baugröße gibt es Motoren mit 0,9° Vollwinkel aber nur 
1,8Nm. Würde das Drehmoment bei Mikroschritten noch ausreichen oder 
sollte ein etwas stärkerer Schrittmotor mit 1,8° Vollschritten gewählt 
werden (1/16 Schritte würde denke ich reichen)?

Da auch ein Encoder verwendet werden soll, habe ich eher nach 
Schrittmotoren mit Encodern geschaut. Hierbei habe ich eigentlich nur 
bei Nanotec brauchbare Encoder mit 5000cpr gefunden, der Rest war eher 
300-500cpr. Habt ihr Tipps, wo ich noch etwas suchen könnte? 5000cpr / 
Impulse pro Umdrehung bedeutete doch, dass ich eine Auflösung von 0,072° 
und nicht 0,018° habe? Es sollte dann wahrscheinlich ein Closed-Loop 
Controller benutzt werden? Vermute, dass es sonst etwas viel Bastelei 
wird

Wäre es für die oben genannte Anwendung nicht sinnvoller ein Servomotor 
zu nutzen wie z.B. diesen hier: 
https://nodna.de/Dynamixel-MX-28T-Robot-Servo ? Offenbar ist der Servo 
mit Matlab relativ einfach ansteuerbar und der Controller hierfür ist 
mit 80€ wahrscheinlich günstiger als ein hochwertiger 
Schrittmotor-Controller.
Danke schon mal!

von Kolja L. (kolja82)


Lesenswert?

Großes Modellbau Servo,
Elektronik raus,
RDC80 rein
Und die Regelung selber bauen

von Wolfgang (Gast)


Lesenswert?

Jo H. schrieb:
> Mit Mikroschritten sollte so eine Auflösung ja theoretisch möglich sein.

Brauchst du Auflösung oder Genauigkeit?

Nicht jeder Schrittmotor eignet sich, um bei Mikroschrittbetrieb habwegs 
gleich große Mikroschritte zu machen.

von Toxic (Gast)


Lesenswert?

Kolja L. schrieb:
> Großes Modellbau Servo,
> Elektronik raus,
> RDC80 rein
> Und die Regelung selber bauen

Ich bin immer wieder verbluefft ueber so einfache,aber geniale 
Loesungsansaetze.
Auf sowas waere ich selbst nie gekommen - der TO offensichtlich auch 
nicht.Schande ueber uns.....?

von Michael B. (laberkopp)


Lesenswert?

Jo H. schrieb:
> -Encoder am Ausgang
> Aus Kostengründen ist wohl ein Schrittmotor geplant. Mit Mikroschritten
> sollte so eine Auflösung ja theoretisch möglich sein.

Klingt wie grober Unsinn, ein Schrittmotor mit Encoder.

Nimm für 0.1 Grad einen Schrittmotor und untersetze den mit einem 
Zahnriemengetriebe 1:4.5 damit Viertelschrittpositionen den 0.1 Grad 
entsprechen und verzichte auf den Encoder, du bekommst auch noch 
zusätzlich mehr Drehmoment, es reichen dann ja schon 0.25Nm Motore.

Microschritte erlauben zwar eine genauere Positionierung, aber das 
Drehmoment muss ja auch den Motor so genau auf Position halten, und das 
wird immer schwerer wenn es nicht um 1 Grad sondern bei Belastung nur 
0.1 Grad nachgeben darf:
1
1/1 100 %
2
1/2 70.71 %
3
1/4 38.27 %
4
1/8 19.51 %
5
1/16 9.80 %
6
1/32 4.91 %
7
1/64 2.45 % 
8
1/128 1.23 %
9
1/256 0.61 %
man müsste den Motor also massiv (hier Faktor 10) überdimensionieren 
(also ein 10Nm Motor damit er die 1/16 Mikroschrittposition mit 1Nm 
halten kann).

Jo H. schrieb:
> Wäre es für die oben genannte Anwendung nicht sinnvoller ein Servomotor
> zu nutzen wie z.B. diesen hier:

Er wird mit 0,088° Auflösung angegeben, meistens sind Modellbauservos 
aber WEIT schlechter. Ob der Roboterservo mit seinem magnetischen 
Encoder das wirklich erfüllt was er bewirbt, halte ich für zweifelhaft.

Der Vorteil von (Gleichstrom-)Servos: Sie brauchen nur dann viel Strom, 
wenn sie stark gegenhalten oder sich viel bewegen müssen. Ein 
Schrittmotor hingegen braucht immer so viel Strom wie er für das höchste 
geforderte Drehmoment benötigt, und bei Bewegung ein bischen mehr.

: Bearbeitet durch User
von Jo H. (91jonas)


Lesenswert?

Danke für die bisherigen Antworten!

Basteleien mit Modellbauservos sind nicht möglich. Einen Encoder 
montieren ist schon umständlich genug für diesen Einsatzzweck.

Leider ist keine Genauigkeit in der Anforderungsliste gegeben aber die 
0,1° sollten möglichst genau angefahren werden. Wobei das ja selbst mit 
einem 5000 Impulse/Umdrehung Encoder eher ein Ratespiel ist... Wenn 1,3° 
vorliegen wird das doch vom Encoder mit einer Auflösung von 0,072° nicht 
erkannt? Oder irre ich mich da?

Gibt es spezielle Hersteller von besonders genauen Schrittmotoren oder 
ist das eher bauformabhängig?

Ein Zahnriemenantrieb ist leider eigentlich nicht möglich. In der 
geplanten Konstruktion (stammt nicht von mir, ich soll jetzt den Motor 
aussuchen) soll an den Motor ein Ritzel montiert werden, welches ein 
Zahnrad antreibt, das wiederum einen Hebel bewegt. Der Encoder soll 
dafür da sein, dass die Position des Motors bzw. des Ritzels bekannt 
ist.

Das bisherige zusammengefasst: (bitte korrigiert mich, wenn ich da 
falsch liege)
-der Encoder ist eigentlich überflüssig (es ist auch keine kritische 
Konstruktion, bei der ein Schrittfehler irgendetwas zerstört. Es wären 
"nur" die Messwerte falsch)
-bei 1/16 Schritten brauche ich 10x so viel Drehmoment, dann ist es aber 
möglich 0,1° einzustellen
-das Servo erreicht vermutlich nicht die angegebene Auflösung

Wenn ich stur die Anforderungen der Anforderungsliste (Auflösung < 1°, 
Encoder)  erfüllen möchte, könnte ich doch einen Nema 23 mit 0,9° 
Vollschritten im Vollschrittbetrieb und einen 5000crp Encoder verwenden?

Hat jemand Erfahrungen mit diesem Servo: 
https://nodna.de/Dynamixel-Pro-M42-10-S260-R Die Auflösung wäre 
natürlich super, aber ich vermute, dass dies zu teuer wäre.

Ich habe auch noch etwas nach "richtigen" Servomotoren gesucht. 
http://www.kocomotion.de/produkte/servomotoren-steuerungen/servomotoren-acm-serie.html 
das erscheint mir mit 10000 crp relativ brauchbar.

von Michael B. (laberkopp)


Lesenswert?

Jo H. schrieb:
> Gibt es spezielle Hersteller von besonders genauen Schrittmotoren

5-polige Motoren mit 500 Schritten (5 phase stepping motor).

Jo H. schrieb:
> Ein Zahnriemenantrieb ist leider eigentlich nicht möglich. In der
> geplanten Konstruktion (stammt nicht von mir, ich soll jetzt den Motor
> aussuchen) soll an den Motor ein Ritzel montiert werden, welches ein
> Zahnrad antreibt, das wiederum einen Hebel bewegt.

Dann ist doch die Genauigkiet völlig wurscht, das Ritzel läuft sowieso 
nicht spielfrei.
Und man könnte jede andere Untersetzung wählen, es ist eh schon ein 
Zahnradgertiebe.

von Kolja L. (kolja82)


Lesenswert?

Michael B. schrieb:
>> soll an den Motor ein Ritzel montiert werden, welches ein
>> Zahnrad antreibt, das wiederum einen Hebel bewegt.
>
> Dann ist doch die Genauigkiet völlig wurscht, das Ritzel läuft sowieso
> nicht spielfrei

Haben Zahnrad Getriebe eine gleichförmige Umlauf Geschwindigkeit?

von Jo H. (91jonas)


Lesenswert?

Die Genauigkeit der Getriebestufe und der Hebelkonstruktion soll 
untersucht werden. Es sollen die Auswirkungen der 
Fertigungsabweichungungen untersucht werden (Gemeinschaftsprojekt 
mehrere Lehrstühle, ich bin Hiwi an einem Konstruktionslehrstuhl). Für 
diese Anwendung ist es wichtig die Position des Ritzels/Motors zu kennen 
(deshalb auch der Encoder am Ritzel bzw. Motor) und möglichst genau 
einzustellen. Alle Abweichungen danach sind quasi gewollt. Es ist also 
kein mechanischer Aufbau, mit dem etwas anderes geprüft wird, sondern 
die Getriebestufen etc. sind die Prüfkörper.

Stimmt es, dass das Drehmoment eines 5-poligen Motors beim Mikrostepping 
nicht abnimmt sondern sogar etwas zunimmt? Dann könnte dieser ja schon 
mal etwas besser dimensioniert werden.

Was haltet ihr denn von dem Servomotor aus meinem vorherigen Post? Wäre 
soetwas zur möglichst genauen Einstellung + Ausgabe nicht geeigneter?

Habe gerade gesehen, dass für die Auflösung und Genauigkeit des Encoders 
<0,1° gefordert ist. Leider fehlt bei den meisten Encodern diese Info. 
Ich habe jetzt einen Katalog gefunden, in dem Hall-Sensoren eine 
Genauigkeit von 0,1° und optische Sensoren eine Genauigkeit von 0,01° 
haben. Kann ich das als Richtwert verwenden?

von Wolfgang (Gast)


Lesenswert?

Jo H. schrieb:
> Habe gerade gesehen, dass für die Auflösung und Genauigkeit des Encoders
> <0,1° gefordert ist. Leider fehlt bei den meisten Encodern diese Info.

Was sind das denn für Encoder, bei denen der entscheidende Parameter 
nicht spezifiziert ist.

Von Wachendorf gibt es beispielsweise Inkremental-Encoder (z.B. WDG 58) 
mit 25000 Pulsen pro Umdrehung, also einer Auflösung von 0,0036°. Die 
Genauigkeit ist allerdings deutlich schlechter als die 0,0036°.

von Georg (Gast)


Lesenswert?

Jo H. schrieb:
> Ich habe jetzt einen Katalog gefunden, in dem Hall-Sensoren eine
> Genauigkeit von 0,1° und optische Sensoren eine Genauigkeit von 0,01°
> haben

Das ist doch völlig irrelevant, es zählt nur, was der Hersteller für den 
Encoder angibt, die Art der internen Sensoren ist seine Sache, das muss 
man garnicht wissen. Decoder ohne Genauigkeitsangaben sind von 
vornherein ungeeignet.

Jo H. schrieb:
> Was haltet ihr denn von dem Servomotor aus meinem vorherigen Post?

Da ist es ziemlich schwierig, den Motor auf weniger als ein Grad zu 
positionieren, ohne Erfahrung ist das praktisch nicht machbar. 
Üblicherweise verwendet man ein Getriebe, aber das scheidet ja aus.

Georg

von Wolfgang (Gast)


Lesenswert?

Kolja L. schrieb:
> Haben Zahnrad Getriebe eine gleichförmige Umlauf Geschwindigkeit?

Das kommt auf die Konstruktin drauf an
https://youtu.be/WYcqJ5HdxA4?t=71

von Yasa (Gast)


Lesenswert?

Macht doch so wie die Industry, yaskawa umrichter + motor, zb. Gebraucht 
SGDH und SGMAH bis 400watt kosten beide um die 300$. Die kannst du 
analog, puls und über bus ansteuern...

von Jo H. (91jonas)


Lesenswert?

Vielen Dank für die bisherigen Antworten!

Georg schrieb:
> Das ist doch völlig irrelevant, es zählt nur, was der Hersteller für den
> Encoder angibt, die Art der internen Sensoren ist seine Sache, das muss
> man garnicht wissen. Decoder ohne Genauigkeitsangaben sind von
> vornherein ungeeignet.

Das ist mir natürlich klar. Ich habe nur überlegt, ob ich einen groben 
Wert für z.B. die Servomotoren mit Hall-Sensor annehmen kann. Aber da so 
ein Motor ohne Erfahrung nur schwer genau positionierbar ist, hat sich 
das sowieso erledigt.
Encoder ohne Genauigkeitsangabe sind wahrscheinlich unbrauchbar? Wenn 
diese gut wäre, so würde der Hersteller sie ja angeben...

Georg schrieb:
> ...Üblicherweise verwendet man ein Getriebe, aber das scheidet ja aus.
Meine Idee war eigentlich so ein "herkömmliches" Schrittmotorgetriebe zu 
verwenden (keinen Zahnriemenantrieb). Das Demonstratorgetriebe und 
demnach auch das Schrittmotorgetriebe sind immer vorgespannt und werden 
nur in eine Richtung gedreht. Durch den in jedem Fall benötigten Encoder 
sollten die spielbedingten Abweichungen auffallen. Motor und Endstufe 
könnten dann auch deutlich kleiner und günstiger ausfallen.

5 polige Schrittmotoren (und Endstufen) habe ich leider nicht wirklich 
viele gefunden, jedenfalls viel viel weniger als 2 polige Motoren. Es 
wäre daher eigentlich einfacher einen 2 poligen 10Nm Motor statt einem 5 
poligen 1Nm Motor zu verwenden.

Gibt es denn hier im Forum eventuell Erfahrungswerte zur Genauigkeit der 
Dynamixel Pro Serien (https://nodna.de/Dynamixel-Pro-M42-10-S260-R) ? 
Auf der Hersteller- und Shopseite habe ich leider nichts gefunden. Auf 
meine Mail wurde mir leider auch noch nicht geantwortet. Besonders 
interessant wäre dies, da offenbar eine MATLAB Schnittstelle vorhanden 
ist.

Dies bringt mich auch zum nächsten Punkt. Angenommen es wird ein 2 
poliger Schrittmotor wird noch ein Encoder benötigt. Die Ansteuerung 
(z.B. um Prüfpläne abzufahren) sollte mit MATLAB möglich sein. 
Funktioniert dies generell über die serielle Schnittstelle/USB des 
Controllers? Mit MATLAB habe ich zwar schon ein paar Sachen gemacht aber 
noch nie eine Schnittstelle angesteuert. Eine allgemeine Antwort darüber 
habe ich beim SUchen leider auch nicht gefunden, nur gezielte Fragen wie 
Controller "..." mit MATLAB angesteuert werden kann.
Hier: 
http://www.schrittmotor-blog.de/ansteuern-von-schrittmotoren-mit-arduino/ 
wurde ein Arduino Controller angebaut, der wiederrum über Matlab 
angesteuert werden könnte. Aber ansich sollte das doch auch über ein 
MATLAB Schnittstelleninterface funktionieren?
Gibt es für die Verwendung von MATLAB irgendwelche besonders geeigneten 
Controller? Habe dazu leider nichts gefunden.

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Hallo,

> 5 polige Schrittmotoren (und Endstufen) habe ich leider nicht wirklich
> viele gefunden, jedenfalls viel viel weniger als 2 polige Motoren. Es
> wäre daher eigentlich einfacher einen 2 poligen 10Nm Motor statt einem 5
> poligen 1Nm Motor zu verwenden.

5 polige Schrittmotoren gibt es nicht. Die Polpaarzahlen von 
Schrittmotoren liegen typischerweise eher bei 25 oder 50. Was du meinst 
ist 2-phasig bzw. 5-phasig. Das ist ein großer Unterschied. 5-phasige 
Motoren werden nur noch von Oriental Motor hergestellt und vertrieben. 
Früher auch von Berger Lahr, die dann irgendwann auf 3-phasige Motoren 
umgestellt haben.

Mit freundlichen Grüßen
Thorsten Ostermann

von Jo H. (91jonas)


Lesenswert?

Oh, vielen Dank. Zu meiner Verteidigung, oben steht auch einmal 5 polig 
;)

Ich habe jetzt nochmal auf der deutschen Seite gesucht. Folgendes wäre 
meine Wahl:

Motor: PKP566FMN24B, 0,36° Vollschritte 1Nm Drehmoment bis 250rpm 
(völlig ausreichend) 
(http://www.orientalmotor.de/Products/Stepper_motors/Stepper_motors/high_torque_5phase_motors_pkp/?&filter1=Hohe+Aufl%C3%B6sung&filter2=60+mm&arid=23957&dwn=artnr 
)

Treiber: CVD528BR-K (2,8A/Phase, hätte etwas Reserve) ( 
http://www.orientalmotor.de/Products/Stepper_motors/Drivers_cvd5/?&filter1=Rechtw.+m.+Montageplatte&arid=20328&dwn=artnr 
)

Controller: SCX11-Serie Universal Controller ( 
http://www.orientalmotor.de/Products/Stepper_motors/Controllers/Universal_controller_scx11/?&filter2=SCX11&arid=9804&dwn=artnr 
)

Hätte die Kombination euren Segen?

Wäre zwar Open-Loop, weil (so wie ich es verstehe) nur inkrementelle 
Encoder direkt vom Controller unerstützt werden aber wir einen optischen 
Absolutencoder verwenden wollen.
Bei den Closed-Loop Kombinationen ist eine Positioniergenauigkeit von 
0,05° angegeben. Werde nochmal nachfragen, ob das den Anforderungen 
entspricht. Dann könnte auf den zusätzlichen Encoder verzichtet werden.
Der Controller scheint auch "einfach" bedienbar zu sein. Entweder über 
die Software und bis 100 Programme, Programmaufruf über 
serielle/Schnittstelle oder Direktbefehle vom Rechner via Schnittstelle. 
Das sollte dann auch mit MATLAB gehen und evtl. könnte hier auch der 
Absolutencoder eingebunden werden

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Oriental hat inzwischen auch Absolut-Encoder. Melde dich doch per Mail 
bei mir, dann mache ich dir ein Angebot.

Mit freundlichen Grüßen
Thorsten Ostermann

von Chris Henschel (Gast)


Lesenswert?

Ist schon eine Weile her, doch ich glaube ich hätte einen guten Servo 
motor für dich, insofern du bei der Genauigkeit auf +/- 0.25 Grad gehen 
kannst (1 Sigma).

Der HDrive17 mit Präzisionsgetriebe, es handelt sich um einen 
feldorientiert closed loop Schrittmotor-Servo welcher eine Kennlinie 
ähnlich wie bei einem DC-Motor aufweist, aber wesentlich mehr Drehmoment 
bei gleichem Volumen hat.

Das ganze mit nur wenigen Zeilen Code direkt aus Matlab steuerbar, keine 
Adapter - der Servo hat direkt Ethernet.

alles weitere auf www.henschel-robotics.ch

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.