www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 5Phasen-Schrittmotoransteuerung


Autor: Pieter (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

nur mal als Anregung:
Zur Ansteuerung eines 5-Phasen-Schrittmotors habe ich die Schaltung im 
Anhang mal aufgebaut. Die Platine ist 60x60mm groß.

Mit Gruß
Pieter

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist die Schaltung eine Frage oder eine Antwort ?

Auf den ersten Blick stört der unzureichende Reset des 4051 und die 
Verwendung eines GAL. Viele andere hier würden lieber einen ATmega 8 
verwenden.

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Reset ist völlig i.O.
Aber mich stört auch das GAL.

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

was ist denn "schlimmes" an einem GAL???
Der Stromchopper läuft über den GAL, der Hardwareaufwand wäre sonst zu 
groß.
Über MC-Typen streite ich nicht, jerder soll den verwenden den er mag.

mfg
Pieter

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nichts schlimmes, nur das man halt einen GALEP oder sonstwas braucht.
Ich hab einen, aber viele anscheinend nicht.
Aber was anderes: Ist Dein Programm größer als 2k?

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

zum GAL-Brennen verwende ich eine Minmalschaltung nach
http://www.geocities.com/mwinterhoff/program.htm
Der GAL ist eigendlich nur ein Dekoder 1aus20 zu 2x5Ausgänge mit 
Endlagen und Stromüberwachung.
Ein CPLD ist von der Gehäusebauform nicht brauchbar.
Das MC-Programm als Testversion sind nur 500 Bytes, ohne jede 
Optimierung.
Den 89C4051 verwende ich nur, weil der Preisunterschied zum 89C2051 
minimal ist.
Werden alle Bauteile gekauft, kostet die Ansteuerung ca 25EUR + ca 7EUR 
Leiterplatte.

mfg
Pieter

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Werden alle Bauteile gekauft, kostet die Ansteuerung ca 25EUR + ca 7EUR
>Leiterplatte.

Klingt gut, und notfalls auf Lochraster.
Jetzt bin ich schon gespannt auf das Programm.
Endlich mal wieder was mit einem 2051, immer diese AVRs ;-)
Hast Du schon mal den LP mit SPI programmiert?

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Über MC-Typen streite ich nicht, jeder soll den verwenden den er mag.

Muß man ja auch nicht, wenn man akzeptiert, daß die Timer vom 4051 für 
diese Anwendung eher schlecht als recht sind und ein AVR deutlich höhere 
Schrittfrequenzen erlaubt.
Wieviel Schritte/Sek. brauchst Du denn ? 1000 oder 10000 ?
Ich glaube die ICL.... erlauben eine nicht zu hohe Versorgungsspannung; 
da würde ich zumindest 24V besser noch mehr anstreben. Gut, auch das 
hängt wieder von der max. Schrittfrequenz ab.

> Der Reset ist völlig i.O.
Stimmt, wenn man keine Ansprüche an die Zuverlässigkeit stellt.

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Stimmt, wenn man keine Ansprüche an die Zuverlässigkeit stellt.

Dazu muß man wissen, daß der 4051 intern einen Widerstand nach Gnd hat.
Irgendwas zwischen 10 und 30k. Da wärs ja Unsinn, einen weiteren
Widerstand parallel zu schalten.

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Dazu muß man wissen, daß der 4051 intern einen Widerstand nach Gnd hat.

Oh, das ist völlig neu für mich. Aber gerne lerne ich dazu.
Aber was macht denn dieser Widerstand, wenn durch einen 
Versorgungsspannungswackler VCC auf sagen wir 3V absinkt und dann wieder 
ansteigt ?

Autor: Pieter (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

also Lochraste ist ungünstig, die Platine dient gleichzeitig als 
"Kühlfläche".
Timer brauche ich nicht. Am Port wird einfach eine Zahl zwischen 0 und 
20 ausgegeben, den Rest erledigt der GAL.
Mit dieser Schaltung und endsprechendem GAL-Programm kann ein 
Schrittmotor mit 2 bis 5 Phasen angesteuert werden.
Anbei das GAL-Programm für 5Phasen Halbschrittbetrieb. Macht 1000 
Steps/Umdrehung. Mir reicht 1U/s, macht 1ms pro Schritt. Bei meinem 
Motor (2A, 0,3Ohm, 0,5mH) reichen 12V. Um 24V zur Versorgung nehmen zu 
können, müssen andere Treiber rein. Die maximale UGS von 20V wird sonst 
überschritten.
Zum RESET. Der 89Cx051 arbeitet von 3 bis 6V. Die Rohspannung wird 
direkt aus der Motorspannung gewonnen. Sollte doch mal so ein 
Spannungseinbruch vorkommen, bleibt der Motor stehen, da keine weitere 
Ansteuerung duch den MC erfolgt. Stromchopper läuft davon unabhängig 
über den GAL.
Das MC Programm im einfachsten Falle überwacht 2 Pins (Takt und 
Richtung) und zählt den Portausgang rauf oder runter. Die beiden anderen 
Pins könnten zur Antwort genutzt werden, so in Richtung "Step ok".
Ob serielle Ansteuerung besser ist muß ich erst noch prüfen. Ist aber 
auch kein Problem.

mfg
Pieter

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Pieter,

Vielen Dank.
>Hast Du schon mal den LP mit SPI programmiert?

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sei mir nicht böse, aber für so einfache Anforderungen stehen 
Kosten-Nutzen in keinem günstigen Verhältnis.
Diese Anforderungen können von einem unipolaren Stepper mit einfachster 
Ansteuerung (4xMOSFET) genausogut erledigt werden. Dafür braucht man 
keinen teuren 5-phasigen Motor.

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

zu Kosten-Nutzen: Hatte in meiner "Kramkiste" einen kompletten 
Kugelgewindeantrieb mit 25mm Steigung und 5-Phasenschrittmotore liegen.
Mit der 1000der Auflösung habe ich ohne weiteren Aufwand 25µm je Stepp.
Andere Schrittmotore hätte ich neu kaufen müssen und Mircostepping ist 
auch nicht ganz ohne.

8051 habe ich noch nicht per SPI programmiert.
Meine Varianten sind:
-klassische HV-parallel Programmer
-seriell per COM (8051ED2)
-per USB (80C5131)

mfg
Pieter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.