Forum: Mikrocontroller und Digitale Elektronik Schrittmotor+Schaltung


von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe gehört, hier sind die absoluten Profis !
Habe schon ein bisschen im Forum rumgesucht, aber noch nichts passendes
gefunden!
Habe die 2 Schrittmotoren, die auf dem Bild zu sehen sind
und würde gerne wissen, ob ich diese mit folgender Schaltung an meinem
ATMega16 betreiben kann.....
hier die Schaltung.....
http://www.roboternetz.de/wissen/images/0/02/Schaltungstep298.gif

die teile hätt ich hier auch rumliegen...
aber die Schaltung ist doch nur für einen Motor, richtig?

das einzige was zum Mikrocontroller geht sind doch die Leitungen
GND +5V ENABLE CW und CLOCK richtig ??
wobei ich ja dann nur 3Ports brauche ?!?

Die Motoren stammen aus zwei Scannern (gleiche Scanner, aber waren
verschiedene Motoren drinn) lol
Das Netzteil von den Scannern lieferte 12V,
wieviel Volts soll ich dann auf Motorspannung U1, U2 legen (das sind
doch einmal + und einmal -, richtig)


Danke

von Cinderella (Gast)


Lesenswert?

Der Schaltungslink funktioniert nicht.

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

doch der funktioniert, jedenfalls bei mir,
falls immer noch nicht, ist im anhang nochmal die schaltung !!

von Profi (Gast)


Lesenswert?

Der Link wird umgeleitet nach
http://www.roboternetz.de/images/ersatzbild.gif
Darin steht: Foto findest Du im www.roboternetz.de
http://www.roboternetz.de/wissen/images/0/02/Schaltungstep298.gif


Tatsächlich, der Link stimmt, scheinbar kann er nur direkt von
http://www.roboternetz.de/wissen/index.php/Bild:Schaltungstep298.gif
aufgerufen werden.

Die Schaltung ist die klassische L297/L298-Schaltung.
Die 0,5 Ohm Rs müssen induktivitätsarm sein, also keine gewickelten
Drahtwiderstände.
Der Motor hat 6 Anschlüsse, also 2 Spulen mit Mittelanzapfung. Sie
wurden vermutlich unipolar angesteuert. Für diese Schaltung evtl. nur
die beiden äußeren Enden anschließen. Die ermittelt man mit einem Ohm-
oder Amperemeter. Die Mittelanzapfungen offen lassen.
Am besten sind Motoren mit 8 Anschlüssen, damit kann man wählen, ob man
die Wicklungen parallel oder seriell schaltet.

Ja, die Schaltung ist für einen Motor.
Ja, drei Ports genügen.

von Anfänger (Gast)


Lesenswert?

Hallo,
bin also grad dabei die schaltung auf zu bauen
und stelle fest, das der scheiss 297 komisch in dem Datasheet
beschrieben ist von der Pin-belegeung...
kann ich das ding nicht ganz normal über "Corner-Pinning"
anklemmen, so wie man jeden IC anklemmt ??
irgendwie scheint mir der GND ganz woanders zu sitzen....

Datenblatt im Anhang,
Habe auch keine IC-Fassung, muss also fix-löten und irgendwie den IC
kühlen, richtig ??
Also wie soll ich da die Belegung dran löten?

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

Ähhm
datenblatt vergessen

von Sonic (Gast)


Lesenswert?

Steht doch direkt auf Seite 1 !!! Augen auf!!!

von Anfänger (Gast)


Lesenswert?

Hallö,
also sind Pin 12 und Pin 2 die Spannungsversorgung und nicht wie man es
gelernt hat über "Corner Pinning" ??

von Sonic (Gast)


Lesenswert?

Das ist doch kein 74er TTL-IC, auf jeden Fall bei jedem IC drauf achten
und vorher das Datenblatt genau angucken! Ich weiß nicht wo du das
"Corner-Pinning" gelernt hast, aber vergiss das am Besten schnell
wieder!

von Anfänger (Gast)


Lesenswert?

mkay also nur pin 2 und pin 12 :D

von Anfänger (Gast)


Lesenswert?

bin bisher eigentlich immer gut mit dem scheiss corner pinning zurecht
gekommen, also der L297 ist der erste IC, den ich sehe wo das mit der
Beschaltung anders ist, deshalb war ich jetzt voll verwirrt...

von Michael U. (Gast)


Lesenswert?

Hallo,

dann hast Du noch nicht allzuviele ICs gesehen... ;)
Klappt nur bei 74er und teilweise 4000er Serie.
Beim 7491 fiel man damit aber schon ganz früher auf die Schnauze. :)

Also wirklich immer Datenblatt befragen, ist sonst schade um die ICs.

Gruß aus Berlin
Michael

von Anfänger (Gast)


Lesenswert?

Alles klar Michael,
werde mir deinen Ratschlag zu Herzen nehmen....
Stimmt wohl hatte bisher eigentlich nur mit der 74er Family zu tun...
das sind halt die besten :P lol


Danke !

MfG,
A

von Anfänger (Gast)


Lesenswert?

Hallo
noch mal ne Frage zu der Schaltung
http://www.roboternetz.de/wissen/index.php/Bild:Schaltungstep298.gif

da sind ja an der rechten seite unten bei den 4 dioden die
0,5 Ohm widerstände drinne, habe aber nur 1 Ohm Widerstände hier
und wenn ich die messe haben die wegen der Toleranz so um die
1,5-1,7Ohm

kann ich die auch dafür nehmen, oder ist das an der stelle kritisch
????

Sonst steht die ganze Schaltung schon, schön alle Bahnen selber gezogen
oder mit Kabeln sieht wild aus :P
kann ja später mal nen bild stellen....

von Anfänger (Gast)


Lesenswert?

wenn ich 2 von den Widerständen parallel schalte, habe ich immer noch
etwas über 1 ohm.....

von Stephan H. (stephan-)


Lesenswert?

Mit den Widerständen misst der IC die Stromaufnahme der Motoren.
Mußt Du für Deine anpassen.

von Anfänger (Gast)


Lesenswert?

Ahso,
hmm und wie mach ich das dann ?

ich dachte da muss je ein 0,5er rein....
wenn ich nun 4 1er Widerstände parallel schalte erhalte ich 0,8ohm

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Wenn du den Strom nicht messen mußt/willst, kannst du die Widerstände
auch durch Drahtbrücken ersetzen.

von Anfänger (Gast)


Lesenswert?

jetzt les ich grad in dem artikel folgendes:

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.


kann ich also meine Schrittmotoren (5draht) garnicht mit der schaltung
ansteuern ??? :(
mist schaltung fertig und dann kann ich die nicht nutzen lol

hier das bild zum text
http://www.roboternetz.de/wissen/images/b/bf/Stepper5draehte.gif

von Volker (Gast)


Lesenswert?

"wenn ich nun 4 1er Widerstände parallel schalte erhalte ich 0,8ohm"

Den physikalischen Gesetzmäßigkeiten zufolge ergibt das 0,25Ohm. Ich
glaube eher, daß dein Meßgerät nicht geeignet ist.
Schliesse mal die Meßspitzen kurz, wenn dein Meßgerät dann nicht 0,00
Ohm anzeigt, musst du den gemessenen Wert berücksichtigen.

Volker

von inoffizieller WM-Rahul (Gast)


Lesenswert?

>Schrittmotoren (5draht)
ist ein unipolarer Schrittmotor.

http://de.wikipedia.org/wiki/Schrittmotor

Mit dem L298 kann man ganz wunderbar biploare Schrittmotoren (wie man
sie beim Zerlegen von 5,25"-Laufwerken findet) betreiben.

von linki (Gast)


Lesenswert?

Nicht Bilder verlinken sondern die Seiten, sonst gibts Probleme mit der
Anzeige
http://www.roboternetz.de/wissen/index.php/Schrittmotoren

von Anfänger (Gast)


Lesenswert?

hmm toll,
schaltung fertig und dann merk ich das ich die überhaupt nicht für
meine motoren nehmen kann :P
wo bekomm ich denn günstig (sehr günstig) bipolare Schrittmotoren her
?


welche schaltung könnt ihr denn für meine unipolaren schrittmotoren
empfehlen ?

von Volker (Gast)


Lesenswert?

wo bekomm ich denn günstig (sehr günstig) bipolare Schrittmotoren her


schau hier mal nach:

http://www.pollin.de

von Anfänger (Gast)


Lesenswert?

kennt ihr denn eine schaltung, mit der ich meine unipolaren
Schrittmotoren ansteuern kann ?

könnt ihr mir das was empfehlen, womit ihr gute erfahrungen gemacht
habt ??

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Einen unipolaren Schrittmotor kann man problemlos mit ein paar
NPN-Transistoren (oder auch N-Kanal-MOSFET) betreiben. Der gemeinsame
Pol hängt dann an +.
Die sind sogar einfacher anzusteuern.

von Anfänger (Gast)


Lesenswert?

Aber wie sieht es dann mit dem PWM Signal aus ??
muss ich dann an die 4 Leitungen ein PWM-Signal liefern,
also mehrere verschiedene PWM's ??

hat jemand eventuell nen Link zu einer Unipolarschrittmotor Schaltung,
würd da gerne ma nen Bild von sehen, kann mir das noch nicht so ganz
konkret vorstellen :(

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Das Bild oben rechts auf der (von mir geposteten) Wiki-Seite zeigt die
Beschaltung eines unipolaren Schrittmotors.
Die Links auf der Seite sind auch sehr interessant.
PWM brauchst du übrigens nur, wenn du noch feinere Schritte machen
willst.
Einen Stepper (sehr verbreiteter Name für Schrittmotor) ohne L297/L298
zu betreiben erfordert ganze 4 Portpins (mit Verstärker) und etwas
"Hirnschmalz" (aber eigentlich sehr wenig davon).

von Anfänger (Gast)


Lesenswert?

auf einer anderen seite fand ich folgendes...:
Unipolar: Für diese Art der Steuerung benötigt der Motortreiber jeweils
zwei Transistoren pro Wicklung (Strang)

-> also für meinen Motor insgesamt 8 NPN-Transistoren....

und wenn ich jetzt mal so gucke was ich an Transistoren da habe ist das
nicht viel :(
1) 10x BC639  NPN
2) 10x BC640  PNP

so nun habe ich bisher noch wenig erfahrung mit Transistoren,
bzw. keinerlei. Erkennt man auch daran das ich immer noch 10 von 10
Transistoren hier liegen habe, die ich mal irgendwann bestellt habe :)

Also 4 Portpins habe ich wohl noch frei, wobei mir erstmal wichtig ist
das der Motor läuft,später soll er dann über pwm gesteuert werden,
damit es noch genauer wird, wie du sagtest....

So nun die restlichen Fragen die mir noch erhalten blieben:

1)  Wie verschalte ich das mit Transistoren ?
2)  Kann ich diese Schaltung beibehalten, wenn ich später was mit
    PWM machen will, oder brauch ich da wieder ne andere Schaltung??
3)  Was genau meinst Du bitte mit Verstärker, etwa die NPN?

Dankeschön !!!!!!!!

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Hast du zu deinem Schrittmotor ein Datenblatt?

von Anfänger (Gast)


Lesenswert?

Nee,
habe die beide ausm Scanner gemopst,
kann nur sagen das das Netzteil des Scanners nen Output von 12V hatte

mehr weiß ich darüber nicht, ok ich weiß noch, das der rote Draht meine
beiden Mittelanzapfungen miteinander vereint, da der Widerstand von
jedem Draht zu diesem gleich ist....

von inoffizieller WM-Rahul (Gast)


Lesenswert?

>das der rote Draht meine beiden Mittelanzapfungen miteinander >vereint,
da der Widerstand von
>jedem Draht zu diesem gleich ist....
Den packt man dann an +12V.
Die anderen 4 Anschlüsse kannst du testweise mit Masse verbinden.
Wenn du das in der richtigen Reihenfolge machst, "dreht" der Motor in
eine Richtung - dreht man die Reihenfolge um, dreht er andersherum.
Der Motor müsste zumindest zucken, wenn du eine Spule bestromst.
Wenn du dann einen NPN-Trasistor in die Leitung zur Masse schaltest,
kannst du mit einem Mikrocontroller diesen schalten und damit die Spule
mit Strom versorgen oder eben nicht. Freilaufdiode nicht vergessen.

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

meinst Du das in etwa so ???

Bitte nicht schlagen, falls es voll Banane ist :P
Falls da noch Vorwiderstände rein müssen, um den Strom zu begrenzen der
vom uc kommt habe ich da mal welche reingezeichnet, keine Ahnung ob die
dahin müssen....

Nur weiß ich noch nicht wo ich mit der Freilauf Diode hin soll

brauch ich da dann 4 Stck von ??
Muss mal gucken was ich für Dioden hier habe

ähh da hätte ich die 15x   1N 4148
gehen die ??

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Nicht ganz!
Der rote Draht deines Motor wird mit (+) verbunden.
Die Emitter der Transistoren kommen direkt an Masse.
Vorwiderstände: 1kOhm vielleicht...
Freilaufdioden: 1N4148 sollten gehen. Die kommen an den Kollektor der
Transistoren (Anode) und die Kathode kommt an (+).
Hast du mal probiert, den Motor ohne Transistoren zu einer Bewegung zu
überreden?

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

Also so wie in dieser Schaltung ??

Aber wo kommt dann die Leitung von +12V dran ?
AUch einfach an jeden Strang nach der Diode, also zwischen Diode und
Wicklung?
Und GND von der 12V Spannungsquelle wieder mit den ganzen Emittern und
dem GND vom uc verbinden ??

Dann brauch ich wegen der Freilauf Dioden keinen Widerstand mehr
zwischen +12V und Collector, richtig, dafür sind die Dioden doch ?

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Hast du dir das Bild auf der Wikipedia-Seite angeguckt?
Bis auf die Polarität der Spannungsquelle ist das der gleiche Aubau,
den du brauchst (es fehlen noch die Freilaufdioden, die du aber nicht
wirklich richtig eingebaut hast).
Hätte ich einen Scanner hier, würde ich dir was malen... hab ich aber
nicht.

von inoffizieller WM-Rahul (Gast)


Lesenswert?

http://nanotec.de/page_static_animation_de.html

Da sind die Transistoren zwar "falsch" (als Emitterfolger
geschaltet), aber das Funktionsprinzip wird gut dargestellt.

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

Also muss Diode nicht auf die Wicklung sondern an +12V  ??
so wie auf dem Bild im Anhang ??

und wohin dann mit den wicklungen ?
kannst du da nicht einfach mit paint oder so reinkritzeln ? :)

von Volker (Gast)


Lesenswert?

Die Wicklungen an die Kollektoren der Transistoren.

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

habe da mal was vorbereitet,
siehe anhang einfach downloaden und mit paint reinmalen :)

von Volker (Gast)


Lesenswert?

Im Prinzip ist zu jeder Wicklung die Diode parallel geschaltet, Anode
und die eine Seite der Wicklung geht an den Kollektor, Kathode und die
andere Seite der Wicklung (ist ja dein gemeinsamer +) an +12V.

Wenn ich bei Google "Freilaufdiode" eingebe, finde ich viele Eniträge
mit Zeichnungen und teilweise auch mit guten Erklärungen der
Funktionsweise.
Wir helfen gern, aber etwas Eigeninitiative kann nicht schaden.

von inoffizieller WM-Rahul (Gast)


Angehängte Dateien:

Lesenswert?

Klasse Idee...

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

ok nu hab ich geschnallt :P

also so wie im anhang ist es jetzt richtig ??

von Michael Wilhelm (Gast)


Angehängte Dateien:

Lesenswert?

Noch einmal etwas übersichtlicher.
Aber, mess mal den ohmschen Widerstand einer Spule durch, berechne den
Strom durch die Spule unbd suche dir danach die Freilaufdiode aus.

MW

von inoffizieller WM-Rahul (Gast)


Lesenswert?

@Anhang:ja!

von Anfänger (Gast)


Lesenswert?

:)

Juhu ich habe es :P

Nun muss ich nur noch rausfinden wleche Leitung welche ist....

aber ich weiss schonmal, das wenn ich abwechselnd an braun und schawrz
12V anlege läuft er im kreis  :)

von Anfänger (Gast)


Lesenswert?

Hallo,

also habe die Schaltung auf meinem Breed-Board aufgebaut und
ein Programm geschrieben, doch leider tut sich da überhaupt nichts mit
dem Stepper..... :(

Kann es daran liegen, das die Widerstände falsch dimensioniert sind,
oder vielleicht weil ich das Programm mit 8MHz durchlaufe und das für
die Wicklungen zu schnell ist ???

Quaöen oder warm werden tut hier nichts, das ist schonmal ein gute
Zeichen...hier das Programm....
=======================================================================
////////////////////////////////////////
////    Include-Teil  ////
////////////////////////////////////////
#include <avr/io.h>
#include <stdint.h>
#include <stdlib.h>

//////////////////////////////////////
//    Hauptprogramm  //
//////////////////////////////////////
void main(void)
{
////////////////////////////////////////
////  Variablendeklarationen    ////
////////////////////////////////////////
int Mot_A, Mot_B, Mot_C, Mot_D, Mode;
Mot_A=0;
Mot_B=0;
Mot_C=0;
Mot_D=0;
Mode=0;

////////////////////////////////////////
////  Portbelegungen    ///
////////////////////////////////////////
DDRC    =  0xff;  //Port C als Ausgang definieren


while(1)
{
  if(Mode == 0)    //Wenn Mode == Half
  {
    PORTC = 0x03;
    PORTC = 0x01;
    PORTC = 0x09;
    PORTC = 0x08;
    PORTC = 0x0C;
    PORTC = 0x04;
    PORTC = 0x06;
    PORTC = 0x02;
  }
  else        //Wenn Mode == FULL
  {
    PORTC = 0x03;
    PORTC = 0x09;
    PORTC = 0x0C;
    PORTC = 0x06;
  }
}
}
=======================================================================

von Anfänger (Gast)


Lesenswert?

Hallo habe mal nen bisschen rumgemessen....

also von GND zum roten Draht (Mittelanzapfung) messe ich
so um die 15V, aber von GND zu den einzelnen Spulen auch....
aber diese sollten doch eigentlich gegen Masse gezogen werden oder ??
habe bereits eine Verzögerung ins Programm gebastelt, auf der Strecke
Portpin->Basis kann man immer schön messen, wie die Spannung von 5V auf
0V abfällt und das in einem guten zeitlichen Rahmen......

Helfen euch diese Angaben, oder soll ich nochmals woanders rummessen
???

von Sonic (Gast)


Lesenswert?

Versuch mal die Ausgangsmuster zu invertieren, immer nur eine Spule
unbestromt lassen, so sind die Teile nurmalerweise ausgelegt. Wenn du
einen Motor mit 2 Spulen und Mittelanzapfungen hast wird er so nicht
laufen, dann ist er Bipolar. Die Mittelanzapfung brauchst du dann
nicht, dann müssen nur die Sulen jeweils umgepolt werden, der Motor hat
dann auch weniger Steps pro Umdrehung.

von Anfänger (Gast)


Lesenswert?

Was denn nu passiert, war grad was am schreiben und plötzlich postet der
2mal nen alten beitrag von mr ????
hmm egal, also

wenn ich mit den 12V Netzteil direkt immer abwechselnd an
schwarz und braun mit GND verbinde und rot dabei immer an die +12V
halte, dann zuckt er in kleinen schritten im kreis
dafür habe ich dann folgendes programm gebastelt....
====================================================================
#include <avr/io.h>
#include <stdint.h>
#include <stdlib.h>
#include <util/delay.h>

void schlaf(float anz)
{
  for(int i = anz; i > 0; i -= 0.25)
  {
    _delay_ms(250);
  }
}


//////////////////////////////////////
//    Hauptprogramm  //
//////////////////////////////////////
void main(void)
{
////////////////////////////////////////
////  Variablendeklarationen    ////
////////////////////////////////////////
int Mot_A, Mot_B, Mot_C, Mot_D, Mode;
Mot_A=0;
Mot_B=0;
Mot_C=0;
Mot_D=0;
Mode=0;

////////////////////////////////////////
////  Portbelegungen    ///
////////////////////////////////////////
DDRC    =  0xff;  //Port C als Ausgang definieren


while(1)
{
  if(Mode == 0)    //Wenn Mode == Half
  {
   PORTC = 0x01;
schlaf(50);
PORTC = 0x04;
schlaf(50);
  }
  else        //Wenn Mode == FULL
  {
    PORTC = 0x03;
    PORTC = 0x09;
    PORTC = 0x0C;
    PORTC = 0x06;
  }
}
}
====================================================================

aber trotzdem sind die spulen auch auf 12V gelegt und nicht wie sie
sollten an GND !!

von Anfänger (Gast)


Lesenswert?

Das Problem liegt also denke ich nicht im Programm, sondern in der
Schaltung, an der Basis liegen abwechselnd ja 0 und +5V an,
das der Transistor eigentlich immer schalten sollte...

von Anfänger (Gast)


Lesenswert?

habe mal die 12V versorgung abgeklemmt und wenn ich jetzt messen von
GND -> Spule also vor Diode(Anode)
dann mess ich, dass der immer abwechselnd 0V und 5V anliegen hat, aber
sobald ich die +12V dranpapp geht nichts mehr und steht immer bei
15,98V
Also ist doch was in der Schaltung nicht korrekt oder ????

von Anfänger (Gast)


Angehängte Dateien:

Lesenswert?

wieso zieht der bei der Schaltung im Anhang denn nur die Spule an der
Stelle xy auf, wenn die 12V abgeklemmt wird ???

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.