-
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo Ruppi,
ein CPLD ist ein programmierbarer Logikbaustein, größer als ein GAL, kleiner als ein FPGA. Ich habe so ein IC genommen, da ich noch ein paar Sonderfunktionen mit in die Schaltung aufgenommen habe, die wenn sie aus Einzel-ICs aufgebaut worden wären, die Schaltung aufgebläht hätten.
Für einen bipolaren Motor brauchst du zwei EPROMs, zwei DACs und eine Zählereinheit. Die gilt für beide EPROMs, da die Mikrostep-Spannungsfolgen ja konstant 90° auseinander sein müssen.
In ein EPROM schreibst du also einen Sinus von 0-360° und in das andere den Cosinus 0-360°, beginnend mit ADresse 0. Die Anzahl der einzelnen Sinussegmente bestimmt die erreichbare Schrittzahl, ist klar.
Ich habe dir gerade mal den Schaltplan gezeichnet.
Bild hier
/Reset ist low aktiv und setzt die Zähler gleich 0, Dir legt die Drehrichtung fest und ein Puls an Step bewirkt einen einzelnen Schritt.
Der Prozessor muss also für jeden Schritt nur einmal einen Port toggeln. Von der Frequenz, mit der das passiert, ist die Verfahrgeschwindigkeit abhängig. Die Pulse habe ich mit einem Timer-interrupt erzeugt. Der Prozessor muss sonst keine intelligenten Aufgaben im Zusammenhang mit der Steuerung wahrnehmen.
Der Analogteil ist nicht mitgezeichnet. Der AD7524 ist ein r2r-DAC und braucht einen I/U-Konverter (im Datenblatt ist eine Standardapplikation).
Jan
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen