mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Ablauf Schrittmotor-Controller


Autor: Sanderas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Abend zusammen!

Ich stehe vor einem Problem, dass mich ziemlich verwirrt. Und zwar 
versuche ich einen Schrittmotor über einen ATMEGA8 anzusteuern. Der 
ATMEGA8 enthält die gesammte Software, die für die Steuerung notwendig 
ist. Wie ich jedoch alle diese Funktionen zeitlich so verschachteln 
soll, dass sie auch wirklich sauber ablaufen und der Schrittmotor 
"regelmässig" angesteuert wird, bereitet mir etwas Kopfzerbrechen.

1. Muss der uC das Takt/Richtungs-Signal vom Computer empfangen (Ich 
verwende EMC)

2. Der uC muss in einer stetigen, gleichmässigen Schlaufe die Spulen im 
PWM Modus ansteuern. Spule A und Spule B haben zudem verschiedene 
Spannungen, da das ganze im Mikroschritt-Modus abläuft.

Mein bisheriger Lösungsansatz funktioniert, aber leider nicht sehr gut. 
Durch das Step-Signal vom LPT wird ein externer Interrupt ausgelöst, der 
eine Funktion auslöst, die den nächsten Pointer-Wert lädt. In der 
Main-Funktion wird mittels einer Delay-Schlaufe und einer Laufvariable, 
die mit einer oberen Grenze, in diesem FAll dem Wert 64, verglichen 
wird, ein PWM erzeugt.

Der Schrittmotor läuft, aber nicht sauber, und zudem springt er sehr 
oft. Mir scheint der Fehler beim Interrupt zu liegen... Kann man den LPT 
auch über UART benutzen?

Um sicher zu sein, dass für jedes Step-Signal auch ein Schritt 
geschieht, müsste da die Schrittfrequenz grösser als die STep-Frequenz 
sein, nicht? ansonsten kommt es dann eben zu ungenauigkeiten, indem ein 
Schritt einfach nicht ausgeführt wird, weil bereits das nächste Signal 
angekommen ist..

Ich möchte keine komplette Lösung, sondern nur gerne einen 
übersichtlichen und verständlichen Ablauf, damit ich mir das Ganze etwas 
vorstellen kann.

Besten Dank
gruss

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

sieh Dir das Innenschaldbild vom TB6560 an...der macht aus Takt/Richtung 
eine Microschrittansteuerung.
Ausserdem wird der Spulenstrom gesteuert, nicht die Spannung!

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.