Noob frage mehrere schrittmotoren ansteuern

hallo,
ich bin neuling hier im board und überhaupt der welt von arduino. ich plane eine 4 achsen steuerung.

im moment ist mein arduino starterpacket zu mir unterwegs und drum hab ich schon mal dieses forum durchgeblättert und hätte auch erste fragen:

mein endprodukt wird ein kamera-slider (eine motorisierte führungsschine mit schlitten, 1.4 meter lang, 1. achse), auf der sich eine pan/tilt vorrichtung befindet (2. und 3. achse), auf der sich ein follow focus befindet (4. achse).

die vier achsen werde ich über usb mit einem browser steuern und auslesen.

ich möchte die vier achsen gleichzeitig bewegen

so nun die ersten fragen:

(1)
bei meiner ersten recherche habe ich festgestellt, dass schrittmotoren für das projekt am besten geeignet sind. ausserdem bin ich auf das thema "schrittmotorsteuerung" gestossen und herausgefunden, dass ich etwas wie zb. easydriver benötige, um schrittmotoren am arduino betreiben zu können. frage: brauche ich pro schrittmotor ein easydriver modul?

(2)
ich möchte permanent die position der vier achsen auslesen können. grund: es soll möglich sein, schlitten, pan/tilt und focus per hand einzustellen und die positionen der achsen zu speichern (am computer)
frage: kann ich das mit den schrittmotoren (in dem fall als drehgeber verwendet) realisieren oder muss ich mich um geeignete (zusätzliche) messsysteme umsehen?

(3)
ich gehe von einem kameragewicht inkl. optik von 1-1.5 kg aus. wie finde ich heraus welche motoren geeignet sind, bzw. kann mir jemand mit erfahrung motoren empfehlen?

(4)
alternativ habe ich ein wenig in die richtung 2 drehmotoren (für slider und focus) und 2 servos (für pan/tilt) recherchiert. bin leider nicht schlau genug geworden, um herauszufinden, ob das eine bessere lösung wäre. frage: kann mich jemand aufklären?

ich freue mich auf antworten, tips und tricks und wünsche einen schönen tag!

Moin David,

Jeder Stepper benötigt einen Easydriver.

Ein Stepper gibt kein Feedback. Da kämen dann Servoantriebe ins Spiel.

Was für eine Kamera möchtest Du nutzen? Daraus ergeben sich die mechanischen Anforderungen.

Vermutlich möchtest Du eine sanfte Kameraführung realisieren. Normale Modellbauservos wären dafür ungeeignet.

Gruß

Sebastian

es gibt 2 nette Module: Easydriver4.2 http://www.watterott.com/de/EasyDriver-v4-Schrittmotor-Treiber oder den von Pololu http://www.watterott.com/de/Pololu-A4983-Schrittmotortreiber
Der von Pololu ist etwas teurer kann aber mehr Strom geben und kann 16tel Schritte machen. Achtung damit Microschritte funktinieren mußt Du eine hohe Versorgungspannung haben ( 2 bis 3 mal über der nominalspannung des Motors) und den Motorstrom auf nennwert einstellen Alternativ kannst Du auch voll oder Halbschritte einstellen; da hast Du weniger Probleme.
Antworten:

  1. Ja, einen Driver pro Motor
  2. Du brauchst einen Sensor für die Home-Position. Wenn DU den Motor manuel bewegst weißt Du nicht mehr wo du bist. Du kannst die Motoren per Tasten bewegen die den entaprechenden Motor bewegen.(vor, zurück ecc.) Für manuelle Bewegung brauchst Du einen absoluten Positionssensor; das ist aber problematischer un viel teurer; einen Positionssensor für eine Distanz von 1,4m ist nicht so ohne.
  3. Die Datenblätter geben ein Drehmoment in Funktion der Rotationsgeschwindigkeit an; anhand dem kanst Du Dich orientieren. Die Auswahl ist auch in funktion der Bewegungsgeschwindigkeit die Du haben willst.
  4. Was meinst Du mit Drehmotoren? Drehstommotore? Für jede andere Art von motoren außer Schrrittmotore brauchst Du Positionssensoren.
    Grüße Uwe

Was für eine Kamera möchtest Du nutzen? Daraus ergeben sich die mechanischen Anforderungen.

Das riecht verdächtig nach VDSLR, also 7D, 5D oder 550D

Ich habe für meine VDSLR ein FollowFocus mit Positionspeicher usw realisiert, aber mit einem Servo.

Das Problem bei Steppern an Objektiven ist, dass sie dir leicht die Optik abdrehen, wenn irgendwas mit den Einstellungen falsch ist.

Es gibt z.B. das Motorshield von Adafruit:
http://www.ladyada.net/make/mshield/
Wenn Du eine 100%ige Kontrolle der Motorposition brauchst müsstest Du Motore mit Incrementalgebern einsetzen, ich denke das aber reichen sollte wenn Du eine Grundinitialisierung durchführst, sprich Dir einen Nullpunkt holst und dann einfach die Steps zählst. (Jeder handelsübliche Scanner summt beim Einschalten kurz rum und holt sich damit (über eine Lichtschranke) seine Nullposition.
Steppermotor an sich lassen sich nicht als Drehgeber verwenden (deshalb Incrementalgeber)

Welche Motore Du brauchst hängt von der leichtgängigkeit der Optik ab (Zoom und Focus) und für PAN und Tilt wirst Du Dir ein Rig bauen müssen und da jenach Kontruktion des Rig´s doch etwas kräftigere Motore einsetzen müssen, was somit auch Folgen in Hinsicht auf die Stromversorgung hat

Du kannst Du ja mal die Angebote von z.B. Manfrotto oder hier
http://www.cinevate.com/catalog/index.php?cPath=34
(preislich indiskutabel)
mal ansehen.

@ Apogee ... hast Du einen Zahnkranz an Deine Optik geschraubt ??? grins

Ich benutze einen kommerziellen Followfocus, der natürlich immer mit Zahnkränzen funktioniert, die man ans Objektiv schraubt.

Das ganze dann halt motorisiert und mit Logikboard ausgestattet.

Du kannst Du ja mal die Angebote von z.B. Manfrotto oder hier
http://www.cinevate.com/catalog/index.php?cPath=34
(preislich indiskutabel)
mal ansehen.

Warum ist das preislich indiskutabel?

na ich bitte Dich.... rund 1000? ... nur für den Focus..
OK wenn man einen Dukaten-Esel sein eigen nennt, spielt das keine Rolle.. sprengt aber in den meisten Fällen den Hobby-Etat...

aber das liegt natürlich auch im Auge des Betrachters (warum hast Du dann keine 5 MKII ?? grins) aber immer hin siehts ja nach ner Leica-Linse auch oder täusche ich mich ??

Ein Rig kostet in der Grundaustattung ca 5000-7000 Euro. Wer das ausgeben will, kann es tun, wer nicht kann natürlich auch mit Holz und Legosteinen etwas bauen und das auf PVC Rohre spaxen.

Das Investment hat man aber mit ca 10 Shoots auch wieder drin und ich möchte die Zuverlässigkeit des Systems nicht missen.

Die Frage ist natürlich ob man das will, braucht, was man damit macht und überhaupt. Ich freu mich dass ich eine Cam habe, die annähernd an die RED rankommt, trotzdem aber nur ein Drittel kostet und wenns sein muss auch one-man bedient werden kann.

Das ist übrigens ein Beispielbild und nicht von mir.

erstmal vielen dank für die vielen antworten. ja, apogee, du riechst richtig.

zum status: im moment sind arduino starterkit, 3 schrittmotoren, 3 easydriver und ein arduinobuch zu mir unterwegs.

bezüglich meiner idee auch per hand positionen auslesen zu lassen: ich glaub das verwerf ich erstmal.

die frage die im moment bleibt ist folgende:

(1) geh ich richtig in der annahme, dass ein schrittmotor in kombination mit einem endschalter eine positionsbestimmung ermöglicht? die idee wäre - motor fährt zum endschalter - dort wird die position auf null gestellt - ab diesem zeitpunkt können positionen mittels zählung der steps angefahren werden. geht das so?

eine zusatzfrage an apogee: ich überlege ebenfalls den fokus mit einem servo zu steuern. nachdem du sowas schon gebaut hast würdest du mich diesbezüglich mit mehr informationen ausstatten?

ich danke nochmal für antworten, tips und tricks. bin gespannt, wann meine bestellung bei mir eintrifft und wie schwer/leicht ich mich tun werd das alles hinzubekommen.

Hallo theMPloc

  1. ja; du mußt aber nach dem Einschalten den Motor zur Endstellung ( Positionsschalter ) fahren und dann in die Grundstellung zurück. Ab da kannst Du mit den Schritten rechnen: zB: 100 schritte vor, 5 grad nach rechts gedreht usw.

Zu Easydriver: wenn Du Microschritte machen willst, dann brauchst Du einen höhere Spannung als die Nominalspannung des Motors weil Du den Motor Stromsteuerst.

Grüße Uwe

Ich habe die Servosteuerung über einen kommerziellen FollowFocus gelöst. Allerdings geht das nur, wenn der Focusbereich mit 180° Servo voll abgedeckt ist. Ich habe verschiedene Vorwahl Einstellungen für meine 3 Primes, ein 50mm ein 35mm und ein 24mm. Darin sind die maximalen Werte gespeichert, die ich über einen DIP-Switch ansteuere, damit ich mir nix abdrehe.

Dahinter hängt ein spezieller Servo-Arduino, und daran über ein DIN Kabel die Keypads. Es gibt:

Focus +
Focus -
Fastmode (die Schritte von Focus +/- sind gröber) - mit blauer Statusled
Record Position (mit roter Statusled, ob man im Recmode ist)
4 x Position Slot
Movie Record (startet die Aufnahme an der Kamera)

Die Keypads habe ich vorne an den beiden SchulterRig-Griffen angebracht.

Grüsse

apogee

@uwefed: vielen dank für die info. das hab ich mir so gedacht. bezüglich microsteppinghätte ich folgende frage:

ich habe mal testweise folgende motoren bestellt:

Hersteller TRINAMIC
Schrittmotor mit Flanschmaß 42x42mm
Baulänge: 33,3mm
Haltemoment: 0,26Nm
Phasenstrom: 1,0A

· Hybrid-Schrittmotor, 1,8°
· High Torque Version
· 2 Phasen, bipolar
· Eckige Bauweise, Flanschmaß 42x42mm (NEMA17)
· 200 Schritten/Umdrehung (1,8 Grad Schrittwinkel)
· 5mm Achse
· Litzenlänge: 300mm typ.
· Optimiert für Microstepping
(Lieferbar ab Januar 2006)

kannst du mir sagen, welche werte ein passendes netzteil haben muss, um drei dieser motoren zu betreiben (mit microstepping)?

danke schon im voraus!

Hallo theMPloc
Diese Motoren kannst Du nicht mit der vollen Leistung am Easydriver betreiben da dieser max 750 mA geben kann. Du kannst diese Motoren verwenden. Sie funktionieren mit dem Easydriver.
Falls Du die volle Leistung (mit 1 A versorgen) willst brauchst Du den Treiber von Pololu. Der kann 2 A geben und hat 16tel Microsteps.

Zur Spannung und Netzteil:
Bei den Daten fehlen einige Angaben. (Wicklungswiderstand ..) Kannst Du bitte das Model des Motors schicken ( oder die Seite des Shops)
Grüße Uwe

lieber uwefed. danke für die infos. hier die seite mit allen daten des motors:

http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=C39;GROUPID=3299;ARTICLE=62652;START=0;SORT=artnr;OFFSET=16;SID=22QECqZNS4ARYAACO04YM0bc2b3691bb0c08f5005efaff3254535

soweit ich dich verstanden habe, kann ich mit dem motor und den easydrivern mal herumexperimentieren aber für microstepping brauch ich die kontroller von pololu. liege ich da richtig?

hab mir gerade die seite von pololu angeshen und werde nicht fündig bezüglich des controllers. kannst du mir da eine artikelnummer oder einen link geben?

vielen dank für deine hilfe. ich bin schon sehr gespannt wie ich mich durch das projekt wurschteln werde. bis jetzt hab ich ja noch nichts. meine bestellungen sollten die kommende woche eintrudeln. im moment recherchiere und plane ich bezüglich eines gui-frontends (basierend auf flash) mit dem ich das dann alles steuern will.

Hallo theMPloc

easydrivern mal herumexperimentieren aber für microstepping brauch ich die kontroller von pololu.

Nein; Du kannst auch den Easydriver verwenden; Du kannst aber den Motor nur mit 750mA ansteuern. Der Easydriver limitiert auf diesen Strom. Darum hast Du weniger Drehmoment zur Verfügung.

Laut: http://www.trinamic.com/tmc/media/Downloads/QMot_motors/QSH4218/QSH4218_manual.pdf
Ist V= 5,3V, I=1A; Rcoil=5,3Ohm
Im Kapitel 6.3 Motor Driver Supply Voltage steht
Ich glube bezogen auf die DriverICs TMC236, TMC246 (microstepping Driver von Trinamic)
Minimal driver supply voltage = 2Vn;
Otimum driver supply voltage = 4
Vn bis 22*Vn
Ich glaube das gleiche gilt für den Easydrive mit dem A3967 Easy Driver stepper motor driver
Also daraus müßten 24V richtig sein.

Für das Netzteil:
Easydriver 1/8 Microstep:
http://www.allegromicro.com/en/Products/Part_Numbers/3967/3967.pdf Auf Seite 9 steht die Tabelle der der Ströme der beiden Phasen. Das MAximum ist bei 45Grad mit 70,71%vom eingestellten Strom; das heißt es fließen bei 750 mA max einstellbaren Strom total zwischen 750mA und 1060mA pro Motor.
Pololu mit 1/8 oder 1/16 Microstep):
http://www.allegromicro.com/en/Products/Part_Numbers/4983/4983.pdf Auf Seite 9 steht die Tabelle der der Ströme der beiden Phasen. Das Maximum ist bei 45Grad mit 70,71%vom eingestellten Strom; Unter der Annahme, daß Du 1A Strom einstellst hast Du zwischen 1000mA und 1414mA pro Motor.

Also brauchst Du ein Netzteil das pro Motor (gerechnet mit Nennstrom) 1,4A bringt ( ich hab nicht vertanden wieviele Schrittmotoren und wieviele Servos Du hast).

Den Pololu bekommst Du hier:
http://www.watterott.com/de/Pololu-A4983-Schrittmotortreiber ohne 5V und 3,3V Spannunsstabilisatoren auf dem Board
http://www.watterott.com/de/Pololu-A4983-Schrittmotortreiber-R mit 5V und 3,3V Spannunsstabilisatoren auf dem Board
Diese basieren auf dem A4983.
Bei Pololu findest Du sie unter Motion Control Modules; Motor Drivers; Pololu item #: 1202 bzw Pololu item #: 1201
Pololu - A4983 Stepper Motor Driver Carrier

Verrate welches Objektiv Du da an Deiner Kamera hast hast. Es muß so wie das Foto das apogee eingebunden hat ein nichtautofokus-Objektiv sein.

Grüße Uwe

Verrate welches Objektiv Du da an Deiner Kamera hast hast. Es muß so wie das Foto das apogee eingebunden hat ein nichtautofokus-Objektiv sein.

Alle an die VDSLR mountbaren Objektive haben einen MF Modus, ich denke aber er benutzt ein 50mm 1.8 EF oder sowas.

ich denke aber er benutzt ein 50mm 1.8 EF oder sowas.

Die Reihe EF von Canon sind aber Autofokusobjektive für EOS Spiegelreflexkameras.

edit: Nochmal Deinen Beitrag durchgelesen: Du meinst er benutzt ein Autofokusobjektiv in Manualfokus-Modus.

Grüße Uwe

Wie ich bereits sagte, ich filme selbst auf so etwas wie der Threadstarter einsetzt.

Alle an die VDSLR mountbaren Objektive haben einen manuellen Fokus Modus. Punkt.

/Zum Edit: Richtig.

apogee hat absolut recht. jedes objektiv kann man auch manuell scharfstellen.

@ uwefed: so, war jetzt eine weile mit planungsarbeiten beschäftigt und hätte nochmal eine frage bezüglich netzteil:

ich denke das projekt mit drei schrittmotoren an. später würde ich gerne noch zwei weitere schrittmotoren dazubauen. kannst du mir ein geeignetes netzteil empfehlen?

ich arbeite mitlerweile mit eine programmierer zusammen, der mir hilft, die steuerung via flash zu realisieren. wenn dich das projekt interessiert, halte ich dich gerne am laufenden.

thanx.