Forum: Mikrocontroller und Digitale Elektronik Schrittmotor ansteuern


von t.r. (Gast)


Lesenswert?

Hallo allerseits !

Ich möchte gerne einen Schrittmotor, den ich aus einem Drucker 
ausmontiert habe, ansteuern. Ich habe etwas gegoogelt und wurde auch 
fündig.
Bei mehreren Beispielen wurde der IC ULN2003 benutzt, darauf hin hab ich 
mich auf mein Fahrrad draufgeschwungen und bin zu Conrad gefahren und 
habe mir die benötigten Teile besorgt. Mein Problem liegt beim 
Anschliessen. Mein Motor (aus einem Epson Drucker) hat 4 Drähte die zum 
Motor führen. Was ist das für ein Motor ? Bipolar oder Unipolar ?. Kann 
ich beim falsch anschliessen den MC (ein Attiny2313) braten ?.

Der Schaltplan ist im Anhang dabei.

Ich bin in diesem Gebiet neu und bitte daher um Verstädnis.

Danke !

lg.

t.r.

von jonny (Gast)


Lesenswert?

anhang sehe ich nicht :)

ich würde mal die dräht mit nem multimeter durchmessen. zwischen einem 
Paar müsstest du dann einen Ohm wert ermitteln können (so bekommste die 
zusammenhängenden kabel)

hier ne  seite wo alles erklärt wird.
http://www.roboternetz.de/wissen/index.php/Schrittmotoren


also ich habe einen 4 adrigen Motor der ist bipolar, aber ich betreibe 
ihn am einem L297 und L298

jonny

von Maxim (Gast)


Lesenswert?

Du willst doch nicht den Motor an den uC DIREKT anschließen?

Ich habe ebenfalls einen Schrittmotor aus einem Epson-Drucker. Er hat 
auch 4 Leitungen und ist bipolar. Das bedeutet, dass die Polarität an 
den zwei Spulen gewechselt werden muss.

Nimm ein Messgerät und finde heraus, welche Leitung zu welcher gehört. 
Bei meinem Motor ist z. B. die erste und die dritte Leitung an eine 
Spule angeschlossen und die zweite + vietre an eine andere.

An dem Treiber-IC sollten 4 Ausänge sein, welche mit A, A-, B, B- oder 
Ähnlichem beschriftet sind. Du musst also eine Spule an A und die zweite 
an B anschließen. Kaputtgehen kann das eigentlich nichts.

Beahcte noch, dass du bei manchen Treiber-ICs Dioden an den Ausgängen 
brauchst, da ein Schrittmotor eine induktive Last ist und wenn der IC 
plötzlich abschaltet, der Motor Strom generiert und dieser über die 
Dioden abfließen muss.

von t.r. (Gast)


Angehängte Dateien:

Lesenswert?

Sorry hab den Schaltplan vergessen. Ist jetzt im Anhang

von jonny (Gast)


Lesenswert?

eigendlich sollte man den MC nicht brutzeln können, wenn das so rigchtig 
angeschlossen wurde.

einfach mal gucken, dass die adern 1-4 mit der o.g. Methode ermittelst.

ich kennen den ULN2003 nicht aber ich denke, dass der auch eine ENABLE, 
TAKT, CW/CCW und H/F Port hat.

der MC muss dann alles richtig auf High oder Low setzten.
Meistens steht im Datenblatt alles was man braucht.

von jonny (Gast)


Lesenswert?

hier nen auzzug aus der o.g. seite

---------------------------------------------
Es gibt auch Schrittmotoren mit 5 Drähten. In diesem Fall sind die 
mittleren Spulenanzapfungen miteinander verbunden und nur als einzige 
Leitung herausgeführt (also beide Common-Anschlüsse /siehe Skizze).



In dem Fall kann man den Motor nicht bipolar ansteuern, sondern muss ihn 
unipolar ansteuern. Mit L297/L298 bzw. RN-Motor usw. wird ein 
Schrittmotor immer bipolar angesteuert, also kann dafür kein Motor mit 5 
Drähten verwendet werden. Da heutzutage Schrittmotoren bevorzugt bipolar 
angesteuert werden um maximales Drehmoment (Kraft) zu erreichen, sollte 
man daher beim Kauf möglichst Motoren mit 4, 6 oder 8 Drähten kaufen.
---------------------------------------------

von jonny (Gast)


Lesenswert?

mist falsch gecklickt:

Ich will damit zeigen, dass der 5 Anschluss, der in deiner Schlatung 
verfügbar ist der Common anschluss ist. eigendlich müsste man ihn 
einfach weglassen können, da du ja nur 4 hat.

Ich garantier aber für nichts.

von t.r. (Gast)


Lesenswert?

Also Kameraden,

ich habe mal den Voltmeter auf Widerstand gestellt und habe die Drähte 
mal durchgetestet und bei der einen zeigte er was mit 30... an und 
ansonsten war da nur die 1. (Was für "nix" steht)

   1      2      3      4
   |      |      |      |  <- Roter draht
   |      |      |      |
   |      |      |      |
   |      |      |      |
   |      |      |      |

Bei mir ist das so, das bei 1 und 3 und bei 2 und 4 was angzeigt wird.

Das heißt doch 1 und 3 ist für die erste Spule und 2 und 4 für die 
zweite Spule.


Ich glaube DIODEN brauch ich nicht, weil bei mehreren 
Beispielschaltungen mit dem ULN2003 nie eine Diode dran war. Eventuell 
ist sie ja schon integriert.

Danke

von Maxim (Gast)


Lesenswert?

Jo, die Dioden sind drin.

von jonny (Gast)


Lesenswert?

das mit

Spule 1 = 1 & 3
Spule 2 = 2 & 4

Wird dann stimmen.

Jetzt wurde ich die so anschließen:

Ausgang 1 -> Motorarder 1
Ausgang 2 -> Motorarder 3
Ausgang 3 -> Motorarder 2
Ausgang 4 -> Motorarder 4
Ausgang 5 -> Frei [Common]

jonny

von t.r. (Gast)


Lesenswert?

Hallo Johnny.

Insgesamt sieht das dann so aus:

MC Ausgang 1 -> ULN2003 Eingang 1    ULN2003 Ausgang 1 -> Motorarder 1
MC Ausgang 2 -> ULN2003 Eingang 2    ULN2003 Ausgang 2 -> Motorarder 3
MC Ausgang 3 -> ULN2003 Eingang 3    ULN2003 Ausgang 3 -> Motorarder 2
MC Ausgang 4 -> ULN2003 Eingang 4    ULN2003 Ausgang 4 -> Motorarder 4


Einen 5. Ausgang brauch ich jar überhaupt nicht. Da dieser Common 
(Mittelanzapfung) nur bei Unipolaren Schrittmotoren sind. (Habe mich 
etwas schlau gemacht, indem ich mir das Tutorial über Schrittmotoren auf 
http://www.roboternetz.de/wissen/index.php/Schrittmotoren durchgelesen 
habe ^^)

Da ich ja noch mehrere Motoren stehen habe, habe ich bei dem anderen was 
anderes gemessen.

Da waren die Spulenarder immer nebeneinander.

Also Spule 1 = Arder 1 und 2
     Spule 2 = Arder 3 und 4

Noch eine Frage:

Dieser Textauszug aus der roboternetz seite bezieht sich doch nur auf 
unipolare Schrittmotoren oder ?

--> Mit einem Ohmmeter kann man die Anschlüsse einfach identifizieren: 
Von Spule 1 - a nach Spule 1 - Common ist der Widerstand halb so groß 
wie der Widerstand von Spule 1 - a nach Spule 1 - b. Der Widerstand nach 
den Anschlüssen von Spule 2 sollte unendlich sein.  <--



Leider habe ich keine Software für den Attiny2313 um den Motor 
anzusteuern. Hast du da ein Source für mich ?

Bedanke mich nochmals.

lg,

t.r.

von t.r. (Gast)


Lesenswert?

Hab noch was vergessen.

Den Schrittmotor muss ich ja nicht direkt mit Spannung versorgen, das 
macht ja der ULN2003. Versorgt dieser ULN2003 den Schrittmotor mit 
seiner eigenen Speisespannung oder verstärkt er die Speisespannung und 
füttert den Schrittmotor mit dieser ? (Hab jetzt nicht im Datenblatt 
geschaut, weil ich "faul" bin das zu suchen :) )

von jonny (Gast)


Lesenswert?

Der Textauszug ist für unipolare, damit wollt eich zeigen, dass der 
ULN2003 sich für diese eignet.

ich denke, dass die Motoren mit der Spannung an CD+ (hoffe ich habe den 
Namen richtig inerinnerung) betrieben werden im Schaltplan sind 's 12V-

Nen Source habe ich gerade nicht zu hand aber es ist nich schwer.

Ermal musst du gucken an welchem eingang des ULN was angesteuert wird. 
Also Takt (Clock), Richtung (CW/CCW), Halb-,Vollschritt(H/F) und Enable.

Dann schaltest du die Pins so, dass du zum Test alles auf High setzt und 
die Clock Leitung alle 2ms invertierst.

Schema:
Alle Leitungen -> High
--Schleife--
clock -> low
2ms warten
clock -> high
2ms warten
--Schleife Ende--

Dann kannste mit High und Low auf den anderen Leitungen rumspielen, doch 
Enable muss immer High sein, wenn die motoren laufen sollen.

jonny

P.S.: So klappt es bei mir mit meiner Ansteuerung, weiß nicht genau ob 
es mit dme ULN auch klappt

von Lothar (Gast)


Lesenswert?

Anschließen kannst Du ihn sicher so, nur .... es wird nix passieren. 
Durch die Spulen muss schließlich Strom fließen. Du hast zwei Spulen, 
die kannst Du jetzt entweder mit zwei Brücken ansteuern, oder, was 
einfacher ist, je eine Seite an V+ und mit zwei Transis steuern. Ob der 
ULN2003 da ausreichcht??? Es gibt auch LeistungsFETs im Doppelpack in 
SO08 Verpackung. Was Du dann damit machst, Vollschritt, Halbschritt, 
Microschritt ist Dir überlassen. Ein bisschen Theorie über Stepper ist 
aber nötig. Da ist auch ein bisschen Physik von Nöten, die Teile 
unterliegen physikalischen Gesetzen, wie Moment, Beschleunigung....
Nicht ganz ohne.
Viel Erfolg
Grüsse
Lothar

von jonny (Gast)


Lesenswert?

Also ich habe die "Standart-Ansterung" Mit L297 und L298 wie die von 
Roboternetz aufgebaut und die ist wirklich einfach anzusteuern. Hat 
jedoch nur 1/2 Schritt.

Dafür habe ich auch Source

jonny

von t.r. (Gast)


Lesenswert?

Danke Johnny.


Der ULN2003 hat ja aber keine speziellen Eingänge für Clock etc...
Die muss ich ja selber festlegen oder versteh ich da etwas falsch ?.

von jonny (Gast)


Lesenswert?

Wie gesagt, ich habe keine Ahnung vom ULN, aber das Prinzip ist denke 
ich nicht ganz anders^^

Kanns ein das ich die hier völlige sch... erzähle. Wenn du nicht genau 
weißt wie du den Anzusteurn hast, würde ich ein Projekt aus dem Internet 
suchen oder einfar die Roboternetztschlatung nachbauen. Dafür habe ich 
Source, Efahrung usw.


kostet auch nicht mehr als 10€

jonny

von t.r. (Gast)


Lesenswert?

Hehe Johnny ^^

Ja... hab heute erst wieder paar € investiert und will auch nicht so 
viel investieren :p. Da ich nur ein einfacher Schüler ohne Job bin g 
erklärt alles.

Hast du eventuell ICQ oder MSN ?

Hilft es dir was, wenn ich dir ein fertiges Source schiek wie man das 
mit dem ULN2003 macht ? Habe doch eins gefunden. In C und Bascom.

Danke für deine Hilfe.

von jonny (Gast)


Lesenswert?

naja einfacher Schüler bin ich auch und muss ab Montag wider was lernen 
xD

Stell das für C mal bitte als Anahng hier ins Forum. Ich möchte jetzt 
nicht in ICQ, denn dann bin ich bis morgen am scheiben (war 2 Wochen 
nicht drinn xD)

jonny

von t.r. (Gast)


Angehängte Dateien:

Lesenswert?

Ist im Anhang.

Ja jetzt musst du ja nicht in ICQ On kommen :). Ich dachte, dass du mich 
mal später adden könttest. Lernen muss ich morgen :(. Dienstag eine GEO 
Klausur
x(

Mein ICQ Nummer lautet: 210203152

von t.r. (Gast)


Lesenswert?

Guten Tag !

Also ich hab die Schaltung gebaut und diesen Source hochgeladen:

$regfile = "attiny2313.dat"
$crystal = 12000000


Dim Testin As Integer , Wa As Integer

Config Portb = Output

Wa = 5

Do

      Portb = 9                                             ' turn on Q1
      Waitms Wa                                             ' wait 2wa 
ms
      Portb = 0                                             ' turn off 
Q1


      Portb = 3                                             ' turn on Q2
      Waitms Wa                                             ' wait 2wa 
ms
      Portb = 0


      Portb = 6                                             ' turn on Q3
      Waitms Wa                                             ' wait 2wa 
ms
      Portb = 0                                             ' turn off 
Q3


      Portb = 12                                            ' turn on Q4
      Waitms Wa                                             'wait wams
      Portb = 0                                             'turn off Q4
      Return

Loop

Dieser Source ist für ein unipolaren Schrittmotor gedacht. Ich dachte 
ich teste es mal, aber der Motor hat sich nicht bewegt. Ist das normal 
das bei de Eingang des ULN2003 nur 2.5V gemessen werden. Die Leitung 
kommt aber vom MC direkt und das sind ja 5V. Oder kann das der Voltmeter 
nicht so genau Messen, weil die Leitungen so schnell low und high 
gesetzt werden ?.

Kann mir jemand mal ein Source für einen bipolaren Schrittmotor 
schreiben ? Ich bekomm es irgendwie net gebacken.

Danke im Voraus !

lg,

t.r.

von Marco (Gast)


Lesenswert?

Wie soll ein bipolarer Schrittmotor denn mit dem ULN2003 
(Transistor-Array) funktionieren bei dem dann auch noch wenn ich richtig 
verstanden habe garkein Stromfluss zustande kommt weil der Motor keinen 
Commonanschluss hat, der auf Versorgungsspannung liegt?

Braucht man dafür nicht einen Treiber mit zwei "H-Brücken"?

von Roland P. (pram)


Lesenswert?

@Marco
genau, sagt ihm doch mal einer, dass das quatsch ist, einen (bipolaren) 
Schrittmotor mit einem ULN anzusteuern.

Besorg dir einen Schrittmomtortreiber-IC wie oben schon erwähnt, die 
kannst du evtl auch mit einem Taster am Clock-Eingang ansteuern.
Es gibt da auch jede Menge verschiedene Typen, aber mit dem ULN wirds so 
definitiv nix.

Gruß
Roland

von blackout (Gast)


Lesenswert?

Ja leute.

Das heißt, dann wird im Internet nur überwiegennd "scheisse" erzählt 
oder wie ???

Man wieder unnötig Bausteine eingekauft ^^.

von jonny (Gast)


Lesenswert?

naja unnötig nur für bipolare.

Schaltung für einen bipolaren habe ich weiter oben geposted (link)
und soure kann ich dann auch geben. (für AVR in C -WinAVR-)

jonny

von t.r. (Gast)


Lesenswert?

gut und schön, aber dieser Baustein kostet bei C..... 6€ !

Sorry, aber ich finde das irgendwie teuer :(

von Marco (Gast)


Lesenswert?

Such mal bei Pollin nach "Schrittmotor". Kostet da nicht mal die Hälfte 
;)

von t.r. (Gast)


Lesenswert?

hehe danke !!

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.