Ansteuerung einer Schrittmotorachse mit SPS und HMI
Autor: Matthias Stork, Lukas Kriete
Einleitung
Im Rahmen des Praktikums „Produktionstechnik“ im Studiengang Mechatronik mit dem Schwerpunkt „Global Production Engineering“ soll ein Projekt der praktischen Automatisierungstechnik mit Hilfe einer Speicherprogrammierbaren Steuerung (SPS)-Anlage realisiert werden. Konkret befasst sich dieses Projekt mit einer Schrittmotorachse, welche von einer Siemens Simatic SPS in Kombination eines HMI angesteuert wird.
Vorgehensweise nach V-Modell
Anforderungsdefinition
Die Anforderungsdefinition legt verbindliche Anforderungen an ein zu entwickelndes System dar. Zu Projektbeginn wurde ein von zwei Personen gut transportierbarer Aufbau, welcher sowohl eine digitale, als auch eine analoge Bedienbarkeit ermöglichen soll, festgelegt. Eine Einkaufsliste zur Bestellung der benötigten Materialien wurde der Anforderungsdefinition entsprechend erstellt.
Systementwurf
Die Systementwürfe (funktional und technisch) beinhalten die detaillierten Spezifikationen der im Projekt verwendeten Bauteile und Schnittstellen.
Funktionaler Systementwurf
Der funktionale Systementwurf gibt Aufschluss über die Verbindungen der jeweiligen Komponenten. Hierbei steht die Funktionsweise im Fokus.
Technischer Systementwurf
Der technische Systementwurf gibt Aufschluss über die Daten und Signale, welche die Systemkomponenten benötigen bzw. genieren, empfangen oder aussenden.
Komponentenspezifikation
Die Schnittstellen, Aufgaben und Spezifikationen der ausgewählten Bauteile werden in der Komponentenspezifikation beschrieben. In diesem Projekt wurden folgende Komponenten verbaut und genutzt:
Hardware:
SPS-Aufbau
Netzteil | SIMATIC ET 200SP (T.Nr. 6EP7133-6AE00-0BN0) |
Steuerung | SIMATIC CPU 1515SP PC2 (T.Nr. 6ES7677-2DB40-0AA0) |
Mensch-Maschinen Schnittstelle | SIMATIC HMI Comfort Panel (T.Nr. 6AV2-124-0GC01-0AX0) |
Analoges Eingangsmodul | T.Nr. 6ES7134-6HB00-0DA1 |
Analoges Ausgangsmodul | T.Nr. 6ES7135-6HB00-0DA1 |
Digitales Eingangsmodul | T.Nr. 6ES7131-6BF00-0CA0 |
Digitales Ausgangsmodul | T.Nr. 6ES7132-6BF00-0CA0 |
- SIEMENS Hutschiene
- Widerstände 1,2 kOhm um die Eingänge des GeckoDrive mit den Ausgängen der SPS beschalten zu können
Schrittmotortreiber: GeckoDrive G201X
Eingangsspannung | 18-80 VDC |
maximale Stromaufnahme des angeschl. Motors | 7 A |
Induktivität des Motors | 1-50 mH |
Eingangsfrequenz des Step-Input | 0-200 kHz |
Spannung der Inputs | 3,3-5 VDC |
Inputs | Spannungsversorgung, Disable, Direction, Step, Common, Current Set |
Outputs | Winding A+B (1 Schrittmotor) |
- Netzteil für den GeckDrive: Tisch- und Wand-Festspannungsgeräte Serie PS-500 (PS 524-05 R)
Schrittmotor: Igus NEMA 23 MOT-AN-S-060-020-056-L-D-AAAD
Nennspannung | 24-48 V DC |
max. Eingangsspannung | 60 V DC |
Nennstrom | 4,2 A |
Haltemoment | 2,0 Nm |
Schrittwinkel | 1,8° |
Widerstand pro Phase | 0,5 Ω ± 10% |
Induktivität pro Phase | 1,9 mH ± 20% |
Pin 1 | Signal A/ (braun) |
Pin 2 | Signal A (weiß) |
Pin 3 | Signal B/ (blau) |
Pin 4 | Signal B (schwarz) |
Pin 5 | PE |
Encoder
M12 8-polig | 5 V DC |
Impulse/Umdrehung [1/min] | 500 |
Index | Ja |
Line Treiber | RS422 Protokoll |
Pin 1 | Signal A (weiß) |
Pin 2 | Signal A/ (braun) |
Pin 3 | Signal B (grün) |
Pin 4 | Signal B/ (gelb) |
Pin 5 | 0V (grau) |
Pin 6 | Signal N/ (rosa) |
Pin 7 | Signal N (blau) |
Pin 8 | 5V DC (rot) |
- Mean Well DR-15-5 Hutschienen-Netzteil (DIN-Rail) 5 V/DC 2.4 A 12 W 1
Bremse
M8 3-polig | 24 V DC |
Leistung | 8 - 11 W |
Haltemoment | 0,4 - 2,0 Nm |
Massenträgheitsmoment | 0,01 - 0,07 kgcm² |
Pin 1 | Signal Bremse (24V) (braun) |
Pin 2 | Signal 0V (blau) |
Pin 3 | Signal - (schwarz) |
Software:
- SIEMENS Totally Integrated Automation Portal (TIA-Portal)
- Simatic Software Pack: PLC F+HMI
Sammelordner Datenblätter
Entwicklung im TIA Portal
Erstellung der Hardware im TIA-Portal
-
Damit die Schrittmotorachse mithilfe des TIA Portals programmiert werden kann, muss zuerst in dem TIA Portal von Siemens ein neues Projekt erstellt werden. Für dieses Projekt wird der Projektname "Projekt_Schrittmototachse" vergeben. Durch das Klicken auf "Erstellen" wird diese Projekt erstellt.
-
Unter dem Abschnitt "Geräte & Netze" kann eine Speicherprogrammierbare (kurz SPS) in dem TIA Portal hinzu gefügt werden. In diesem Fall handelt es sich um eine PC-System -> Open Controller -> CPU 1515SP PCF. Durch Klicken auf die Schaltfläche "Hinzufügen" wird der Open Controller in dem Projekt hinzugefügt.
-
Da das System aus einer SPS und einem Human Maschine interface (kurz HMI) besteht, muss dieses zusätzlich hinzugefügt werden. In dem diesem Fall handelt es sich um ein TP700 Comfort HMI.
-
In dem TIA Portal muss zudem die Verbindung der SPS und des HMIs konfiguriert werden. Unter dem Abschnitt "Netzsicht" wir durch "Drag and Drop" (ziehen und loslassen) die Ethernet-Verbindung von dem PC System und des HMI gemäß des tatsächlichen Anschlusses erstellt.
-
Bei der SPS werden die verwendeten Ein- und Ausgangskarten hinzugefügt. Im letzten Schritt werden zudem die IP-Adressen der SPS und des HMIs konfiguriert. Um eine korrekte Projektierung der Hardware sicherzustellen, wird dies im TIA Portal zuerst übersetzt und anschließend in die Hardware heruntergeladen. Wenn die Leuchten der SPS und der Ein- und Ausgangskarten grün leuchten, ist die Projektierung der Hardware korrekt.
Programmierung im TIA Portal
Variablen
Als erstes werden die PLC-Variablen in dem TIA-Portal erstellt. Dieses sind die Eingänge und Ausgänge, die mit den Ein- und Ausgangskarten eingelesen werden können.
-
Dieses sind die Analogen Eingänge (Analogen Inputs = AI) von dem Bedienelementen und dem Encoder. In der ersten Spalte befindn
-
Digitale Ausgänge
-
Variablen des HMI & Motors
-
Variablen, die das HMI nutzt
SPS-Programm
Im folgenden wird anhand der selbst programmierten Funktionsbausteines "AnsteuerungMotor" die Funktionsweise der Ansteuerung erklärt. Dieser Baustein kann für die analoge und digitale Steuerung verwendet werden.
-
Ansteuerung des Motors: Taster des HMIs werden abgefragt, sowie die gewünschte Soll-Position des Schlittens. Die obere und untere Grenze wird in cm angegeben; hier 10 bzw. 90cm, da der Schlitten eine Breite von ca. 20cm besitzt und sich die Soll-Position auf die Schlittenmitte bezieht.
-
-
Verfahrrichtung des Motors abhängig von HMI-Eingabe steuern: Der Motor verfährt, je nach betätigtem Taster, in eine bestimmte Richtung. Die Steps werden hierzu über die Soll-Position berechnet, welche über einen festen Faktor von Distanz in Zentimeter in Steps umgerechnet wird (1cm entspricht ca. 285 Steps).
-
Einhaltung der Grenzen prüfen: Es wird geprüft, ob die aktuelle Position die Grenzen der Schrittmotorachse einhält und der Stop-Taster nicht aktiv ist. Ist dies der Fall, verfährt der Motor mit einer Verzögerung von 2ms zwischen den Steps in die gewünschte Richtung.
-
Schlitten nach links verfahren lassen bei zeitgleicher Aktualisierung der Ist-Position: Da der Motor nach links verfährt, muss von der aktuellen Position der Verfahrweg subtrahiert werden. Um Rundungsfehler zu vermeiden, passiert dies nicht nach jedem Step, sondern erst nach dem 28ten Steps.
-
Schlitten nach rechts verfahren lassen bei zeitgleicher Aktualisierung der Ist-Position: Da der Motor nach rechts verfährt, muss von der aktuellen Position der Verfahrweg subtrahiert werden. Um Rundungsfehler zu vermeiden, passiert dies nicht nach jedem Step, sondern erst nach dem 28ten Steps.
Alle verbauten Komponenten müssen im TIA-Portal korrekt ausgewählt und konfiguriert werden. Hierbei sind die in der Hardwareliste angegebenen Teilenummern zur eindeutigen Identifizierung der Komponenten von großer Bedeutung.
GeckoDrive am 24V Ausgang der SPS betreiben
Um die Eingänge des GeckoDrives nicht zu beschädigen, mussten Widerstände an den Ausgängen des digitalen Ausgangsmoduls benutzt werden. Der Wert der Widerstände wurde mit der Formel berechnet, was einen Widerstandswert von 1,2kOhm ergab.
Komponententest
Um die verbauten Komponenten zu testen, wurde zunächst eine Sichtprüfung der Anlage durchgeführt. Die richtige Auswahl der Betriebsmittel und Sicherheitseinrichtungen und der Schutz gegen direktes Berühren wurden überprüft. Da ein Not Aus zu diesem Zeitpunkt nicht vorhanden war, konnte dieser nicht getestet werden. Im Anschluss wurden die ausgegebenen Spannungen der verschiedenen Netzteile mit Hilfe eine Spannungsmessgeräts überprüft.
Der GeckoDrive wird über ein externes Netzteil mit 24V versorgt, der Encoder mit 5V, was im Stromlaufplan kenntlich gemacht wurde. Die Anlage wurde nun des Plan entsprechend verdrahtet, so dass weitere Tests durchgeführt werden konnten.
Mit Hilfe eines Oszilloskops wurde der Spannungsverlauf des Schrittmotors und des Encoders überprüft. Beide lieferten die erwarteten Rechtecksignale.
Ein einfaches SPS-Programm, welches ein Drehrichtungssignal (Direction) und ein Schrittsignal (Step) an den GeckoDrive übermittelte, diente zur Überprüfung der korrekten Funktion des Schrittmotors. Die Bremse des Motors wurde zunächst durch den Direktanschluss an das 24V Netzteil danach durch Beschaltung über einen digitalen Ausgang der SPS auf Funktion geprüft. Die Bremse stoppt den Motor sobald keine Spannung anliegt. Der Signalverlauf wurde mittels der Beobachtungsfunktion des TIA-Portals überwacht.
Integrationstest
Bedienungsanleitung
Der Benutzer bedient die Anlage ausschließlich über das Interface des HMI. Die dargestellte Schrittmotorachse wird in Echtzeit aktualisiert und zeigt somit immer die aktuelle Position des Schlittens an.
- Der Benutzer trägt einmalig die aktuelle Position des Schlittens in das entsprechende Feld im Interface ein. Die Achse ist nun einsatzbereit.
- Der gewünschte Verfahrweg des Schlittens kann nun eingetragen werden oder mit Hilfe der [+] [-] Schaltflächen in 5cm-Schritten eingestellt werden.
- Nach Eingabe des Verfahrwegs muss nun die Fahrtrichtung durch Druck auf die Schaltfläche [Links] oder [Rechts] ausgewählt werden.
- Die Schaltfläche [Stop] hält den Motor umgehend an und muss zum Deaktivieren erneut gedrückt werden.
Sollte die eingegebene Endposition das Achsenlimit von 0 bzw. 100cm unter- oder überschreiten, verfährt der Schlitten bis zur maximal möglichen Position und stoppt dort automatisch. Wird eine Soll-Position von 0cm eingegeben, fährt der Motor im Handbetrieb, d.h. solange die Richtungstaste gedrückt ist, verfährt der Motor.
Abnahmetest & Systemtest
Fazit
Die Schrittmotorachse kann mit einer ansprechenden Bedienoberfläche über das HMI gesteuert werden. Der GeckoDrive-Schrittmotortreiber erhält hierzu von der SPS die Informationen zur Drehrichtung und Anzahl der auszuführenden Motorschritte. Die Achse lässt sich über eine Strecke von 100cm verfahren. Der Benutzer hat die Möglichkeit den Schlitten auf 0,1cm genau zu positionieren und kann auf dem Display jederzeit die aktuelle Position des Schlittens ablesen.
Lessons Learned
- Bearbeitung eines Projekts nach Vorgabe des V-Modells
- Dimensionierung und Verdrahtung von Komponenten nach Datenblattvorgabe
- Inbetriebnahme und Programmierung einer Speicherprogrammierbaren Steuerung von Siemens
- Dokumentation eines umfangreichen Projekts
Blick in die Zukunft
Da der Großteil der bestellten Komponenten nicht rechtzeitig geliefert worden ist, fehlt dem Projekt die analoge Ansteuerung. Diese könnte in der Zukunft implementiert werden, wodurch auch die Limitation der SPS in Bezug auf die Verfahrgeschwindigkeit des Motos umgangen werden könnte. Über den GeckoDrive soll laut Datenblatt eine Einstellbarkeit der Geschwindigkeit durch Anschluss eines Potentiometers möglich sein. Neben dem Handbetrieb und Geschwindigkeitsregelung des Motors kann auf dem analogen Bedienelement der Not-Aus untergebracht werden.
Eine Halterung für die SPS und das HMI würden sowohl die Handhabung als auch den Transport der Anlage deutlich vereinfachen.
Quellen
→ zurück zur Übersicht: Praktikum Produktionstechnik