sitemap link mailform link home

Schrittmotor-Controller mit AtTiny2313

Sicherlich gibt es bereits jede Menge Schrittmotor-Controller...

Oft finden die Chips L297 / L298 Verwendung. Die kosten zusammen ca. 5 € und sind für die meisten Projekte mehr als ausreichend.
Siehe auch mein Projekt Interner Link Schrittmotor-Controller.

Viel spannender ist es jedoch, sich einmal selbst mit der Ansteuerung der Schrittmotore zu beschäftigen und das benötigte Impulsmuster mit einem selbst programmierten ATMEL-Mikrocontroller zu erzeugen.
Die beiden Wicklungen eines bipolaren Schrittmotors werden über zwei Motorbrücken / H-Brücken angetrieben, die über das Impulsmuster des ATMELs gesteuert werden.
Die vier Impuls-Ausgänge PB0 bis PB3 (A, B, C, D in der uneren Ansteuerungstabelle) bekommen außerdem noch jeweils eine LED, so dass man im Einzelschrittbetrieb das Impulsmuster der Ansteuerungstabelle an Hand der LEDs mitverfolgen kann.
Da sieht man förmlich, wie der Strom arbeitet! Laughing

Links:

Externer Link Mögliche Probleme bei der Ansteuerung einer H-Brücke

Interner Link  Eigenes Projekt: Elektronischer Polwender mit H-Brücke

Externer Link XY-Tisch mit Schrittmotoren im Eigenbau

 


Die Ansteuerung eines unipolaren Schrittmotors ist ja auf der Seite Interner Link "Schrittmotoren" ausführlich beschrieben worden.

Ansteuerungstabelle: Unipolarer Schrittmotor

Es gibt vier Wicklungen ABCD, die einzeln zu- oder abgeschaltet werden.

 

SchrittABCD
1
1010
2
0110
3
0101
4
1001

 

Ansteuerungstabelle: Bipolarer Schrittmotor

Es gibt nur zwei Wicklungen mit den Anschlüssen AB und CD!

 

SchrittABCD
1+
-
-
+
2+
-
+
-
3-
+
+
-
4-
+
-
+
1+
-
-
+

Die Wicklungen AB bzw. CD "erhalten" Steuerströme jeweils unterschiedlicher Polarität - entsprechend PLUS und MINUS in der unteren Ansteuerungstabelle. Die Wicklungen werden also nicht an- oder abgeschaltet sondern kontinuierlich umgepolt. Das lässt sich pro Wicklung nur mit je einer H-Brücke realisieren.


Ausgangspunkt für die Schaltung des Schrittmotor-Controllers war der von mir bereits gebaute Interner Link "Lampensimulator" mit ATMEL Attiny2313.

Beschaltung des Attiny2313

Attiny2313

 

PDF Datenblatt ATtiny2313

Schaltplan "Lampensimulator"  -Klicken zum Vergrößern:

Schaltplan

Hier der neue Schaltplan des Schrittmotor-Controllers mit den beiden H-Brücken:

Schaltplan

Wir verwenden den internen Taktgeber mit 4 MHz ohne Teiler (daher können der Quarz und die 22pF-Kondensatoren) weggelassen werden.

Die Fuse-Einstellungen können mit dem Externer Link Fuse-Kalkulator "errechnet" werden:

Fuses

ACHTUNG: Manche Fuse-Einstellungen lassen sich (vom Hersteller ganz bewusst gewollt) nicht rückgängig machen. Im schlimmsten Fall kann es passieren, dass sich der ATtiny2313 nicht mehr programmieren lässt. Also schön vorsichtig sein!

Externer Link Hier ein interessanter Artikel zum Thema "Fuses".

Externer Link Hier noch ein Fuse-Calculator für (fast) alle ATMELs

Externer Link Die Fuses können mit dem Programm AVR8 Burn-O-Mat gesetzt werden.

Screenshot


Es wird auf der Platine eine 5-Volt-Versorgung für den Mikrocontroller vorgesehen (LM7805 o.ä.).

Zur Spannungsversorgung mit 7805 ist zu sagen, dass sowohl am Eingang als auch am Ausgang 100-nF-Keramik- oder Folienkondensatoren zum Einsatz kommen sollten. Sonst fängt der 7805 u.U. an zu schwingen. Ein 100-uF-Kondensator am Eingang kann auch nicht schaden. Er liegt dann parallel zum 100-nF-Kondensator.

Ich verwende übrigens statt der 100-nF-Kondensatoren immer 150-nF-Kondensatoren, da ich bei Pollin eine größere Stückzahl preiswert gekauft habe.

7805

Abbildung: 7805 Pinout


Weitere Tutorials und Quellcode-Schnipsel:


Externer Link http://avrbasiccode.wikispaces.com/

Externer Link http://www.mikrocontroller.net/topic/179555

Externer Link http://www.sachsendreier.com/msw/projekte/projekte.html

Externer Link http://www.sachsendreier.com/msw/

Externer Link http://de.wikibooks.org/wiki/C-Programmierung_mit_AVR-GCC/_IO-Ports

Externer Link http://www.bitartist.org/2008/07/testing-external-interrupt-int0-on.html

Externer Link http://www.precifast.de/schrittmotorsteuerung-eigenbau/

Externer Link http://www.mikrocontroller.net/articles/Entprellung


Software Schrittmotor-Controller für Attiny2313 (WinAVR)

 

Bestückung der Schrittmotor-Controller-Platine:

Bestückung

PDF PDF-Vorlage A4 (2 Platinen) zur Platinenherstellung

Zip-Ordner Platinen-Daten  (Sprint Layout)
Zip-Ordner Schaltplan (CircScheme)
Zip-Ordner Software Schrittmotor-Controller für WinAVR (in C, einschließlich Makefile usw. )

PDF Programmierung des AVR-Controllers (Diplomarbeit von Bianca-Charlotte Liehr)


Getestete Schrittmotoren

Epson EM-257

Nominal Voltage 7
Current 0.7
Resistance (Ohms) 10
Torque (in-oz) 44.4
Torque (kg*cm) 3.2
Wires 4
Condition pulled
Steps / Revolution 200
Step Size (degrees) 1.8
NEMA frame size 17

Wird z.B. verwendet in
EPSON Stylus Color 600

EM-257

Fazit: Sehr professioneller und leistungsstarker Schrittmotor, der in der obigen Konfiguration mit Schrittimpulsen bis ca. 780 Hz. läuft.

Pollin PSM42BYGHW603


Schrittwinkel 1,8° (200 Schritte)
Strangspannung 12 V-
Strangwiderstand 30 Ω
Strangstrom 0,4 A
Halte-Moment 0,38 Nm
4 Anschlusslitzen
Welle (øxL): 5x22 mm

Motormaße ohne Welle:
(BxHxT): 42x42x41 mm

Preis: 15,95 €

 

Schrittmotor

Fazit: Sieht sehr professionell aus - ist aber sehr schwach.
Der Schrittmotor läuft mit Schrittimpulsen bis ca. 240 Hz.

 

EM-290
Strangwiderstand 8,5 Ω

 


Fazit: Zu diesem Schrittmotor war kein Datenblatt zu finden.
Der Schrittmotor läuft mit Schrittimpulsen bis ca. 320 Hz.

 

MITSUMI M42SP-7


Schrittwinkel 7,5°
Strangspannung ?? V-
Strangwiderstand 11 Ω
Strangstrom ??? A
Halte-Moment ca. 0,05 Nm
4 Anschlusslitzen

PDF Datenblatt

M42SP

Fazit: Schrittmotore mit dieser Bezeichnung gibt es offenbar mit 50 und 150 Ω - aber auch mit 11 Ω (mein Muster). Die Ohmzahl steht übrigens auf dem Typenschild!
Da die Haltekraft ziemlich klein und der Schrittwinkel ziemlich groß ist, wird dieser Schrittmotor oft in Verbindung mit einem Getriebe verwendet.
Mein Muster wurde aus einem alten Scanner ausgebaut.

In meiner Konfiguration läuft der Schrittmotor bis ca. 360 Hz. - also mit 360 Schritten pro Sekunde.
Das Datenblatt gibt an, dass es bis ca. 600 Hz. funktionieren sollte. Da ich im Testaufbau des Schrittmotor-Controllers aber "langsame" Dioden 1N4007 verwendet habe, könnte das die Urasche für die grundsätzlich "schlechte Performance" der Schaltung sein.

Hier ein Diagramm aus dem Datenblatt eines M42SP-7 mit 50 Ω, das die Abhängigkeit des Drehmoments von der Schrittzahl pro Sekunde angibt:

Diagramm

Meine Empfehlung lautet daher, schnelle Schottky-Dioden zu verwenden:

Hier die Datenblätter geeigneter Dioden:

PDF-Datei Datenblatt BYV27-200

PDF-Datei Datenblatt BYV28-200

PDF-Datei Datenblatt EGP20

Hier werden Dioden vom Typ 1N5819 (1A, 40 V) verwendet:

Externer Link http://cnc-hotwire.de/content/SteuerungEigenbau.html

PDF-Datei Datenblatt 1N5819

Die 1N5819 gibt es bei Pollin (Bestellnummer 140 731) für 0,06 €
Allerdings befürchte ich, dass die Spannungsfestigkeit etwas "grenzwertig" ist.

Geeignet sein dürften eigentlich alle im Datenblatt als "fast rectification diode" klassifizierten Typen.

.

Letzte Änderung:
March 23. 2023 21:04:40
«    top    »