Steuerung der automatischen Legostein-Montieranlage
Kategorie: Automatische Legostein Montieranlage
In Bearbeitung
Autor: Philip Strümper, Marcel Mertens
Betreuer: Prof. Dr. Mirek Göbel
Einleitung
Dieser Artikel ist eine Vorlage für einen Wiki-Artikel. Tipp: Kopieren Sie den gesamten Quelltext und ändern Sie ihn so, dass er Ihr Projekt beschreibt.
Dieser Artikel ist aus der Kategorie "How-To". Automatische Legostein Montieranlage
Vorbereitung
Vor Beginn der Programmierung müssen Vorbereitungen getroffen werden, um die Programmstruktur festzulegen bzw. den Arbeitsablauf beim programmieren zu vereinfachen. Hierbei ist eine gute Kommunikation mit den weiteren Gruppen entscheidend, um Schnittstellen bzw. Ein- und Ausgänge der einzelnen Module und Komponenten zu definieren. Nach Rücksprache mit den Gruppen entstand der Funktionsplan.
Funktionsplan
![](/wiki/images/thumb/9/93/Funktionsplan.jpg/400px-Funktionsplan.jpg.png)
Der Funktionsplan ist eine schematische Darstellung der gesamten Lego-Montieranlage. Innerhalb des Funktionsplans sind alle benötigten Ein- und Ausgänge der Anlage an deren Position aufgetragen. Dabei sind die Eingänge in Blau und die Ausgänge in Rot eingefärbt. Für die Anlage werden folgende Ein- und Ausgänge benötigt:
- Eingänge
- Motor Ansteuerung
- Ausgänge
- Spannzylinder/Sensor für "Förderband voll"
Förderung und Rückführung der Legosteine
- Eingänge
- Endlage Schrottposition
- Endlage Position Vibrationswendelförderer
- Endlage Greifer oben/unten
- Farbsensor
- Lichtschranke
- Ausgänge
- Ansteuerung Motor Förderband
Variablendefinition
Grafcet Plan
Relais Schaltungen
Grundlage SPS
Geschichte der SPS
Ursprünglich wurden Steuerungen von Maschinen und Anlagen mit Relaisschaltungen erstellt. Dabei wurden die Kontakte in Reihe oder parallel geschaltet, um so die gewünschte Steuerung zu realisieren. Vorwiegend wurden dabei binäre und boolesche Signale verarbeitet.
Es entstand der Begriff "Programmierbare Steuerung" durch die amerikanische Bezeichnung für "Programmable Computer" oder abgekürzt PC. Mittlerweile wird die Abkürzung PC für "Personal Computer" verwendet. So musste man einen neuen Namen erfinden. Daraus entstand die Abkürzung SPS und steht für "Speicher Programmierbare Steuerung".
Entstanden ist die Idee der programmierbaren Steuerungen 1968 von General Motors. Man suchte nach anderen Möglichkeiten als die verbindungsprogrammierten (festverdrahteten) Relais-, Schütz- oder Elektroniksteuerungen. Folgende Kriterien sollten ausschlaggebend für die neue Art von Steuerungen sein:
- Eine Steuerung sollte bei Veränderungen möglichst rasch umprogrammierbar sein, beispielsweise wenn die Anlagen umgebaut werden.
- Die Kosten für die Entwicklung einer Steuerung sollte den anderen bekannten Steuerungstypen überlegen sein. Auch sollte die Steuerung zuverlässiger arbeiten.
Die Forderung der "Speicherprogrammierbaren Steuerungen" konnte durch die fortschreitende Technologie erfüllt werden. Eine SPS besteht aus einem bit- oder wortorientiertem Prozessor mit verschiedenen Speichermedien. Es gibt auch spezielle Software um komplexe Steuerungsprogramme in einer anwenderorientierten Programmiersprache zu programmieren (FUP, KOP, AWL, Graph).
Nach und nach wurden fest verdrahtete Relaissteuerungen durch Mikroprozessoren ersetzt. Steuerungsprogramme konnten schnell erstellt und verändert werden. Damit die Techniker bei ihrer Denkweise bleiben konnten, wurde die Programmierung mit Kontaktplan (KOP) entwickelt. Ein Kontaktplan lehnt sich ganz stark an Stromlaufplänen an. Somit wurde den Technikern ein einfacher Umstieg ermöglicht. Später wurde die maschinenorientierte Anweisungsliste (AWL) sowie der grafische Funktionsplan (FUP) entwickelt.
Nachdem man zuerst vorwiegend mit Binärsignalen gearbeitet hatte, entwickelten die Hersteller auch die Möglichkeit, Zeiten, Zahlen oder Gleitkommazahlen zu verarbeiten. Somit war es möglich, auch mit Analogwerten zu arbeiten.
1992 wurde die internationale Norm IEC 61131 definiert. Diese Norm soll eine herstellerunabhängige und einheitliche Programmiersprache für SPS darstellen. Die meisten SPS-Systeme können heutzutage mit dieser internationalen Norm programmiert werden. Als Programmiersprachen werden weitgehend die maschinenorientierten Sprachen AWL, KOP und FUP verwendet. [2].
Vorstellung SPS-Phönix
Nach der Definition der Ein- und Ausgänge kann die Hardware dementsprechend ausgesucht werden. Durch die Vorgaben des Praktikums wird sich für eine Steuerung der Firma Phönix entschieden. Jede SPS besitzt eine Recheneinheit. Diese bildet das Fundament der gesamten Steuerung. Das Grundelement der SPS bildet in diesem Fall die Axiocontrol zur direkten Steuerung von Axioline I/Os von der Firma Phönix mit 2 Ethernet-Schnittstellen und einen integrierten Bus-System. An diesem Bus-System sind verschiedene Baugruppen angeschlossen. Durch diese modulare Bauweise kann sich die SPS auf verschiedene Situationen anpassen.
Auf der folgenen Abbildung ist eine Phönix SPS zu erkennen. Links im Bild befindet sich die Steuereinheit AXC 1050. In der Mitte befindet sich dann ein Eingangsbaustein mit 16 Eingängen. Dieser ist mit dem Internen I/O Bus mit der Steuereeinheit verbunden. Rechts ist der Ausgangsbaustein mit 16 Ausgängen zu sehen. Verbunden ist die Baugruppe mit einem zusätzlichen Analog Baustein. Die Kommunikation der beiden Blöcke findet mit dem Ethernetkabel statt.
Vorstellung Programmiersprachen
Die Programmierung der SPS findet am Computer statt. Um dort die Logik in einen Maschinencode zu kompilieren muss eine Schnittstelle mit einem Softwareprogramm erfolgen. Mit unterschiedlichen Programmiersprachen kann dies erfolgen. Nachfolgend werden die wichtigsten und meist verwendete Programmiersprachen dargestellt.
AWL
Die Anweisungsliste AWL nach der Norm IEC DIN EN 61131-3 ist eine maschinennahe textbasierende Programmiersprache. In der Programmiersprache Anweisungsliste AWL werden einzelne Anweisungen in der Reihenfolge geschrieben wie die CPU diese dann abarbeiten soll. Die Programmiersprache AWL ist Bestandteil der Basissoftware der meisten Speicher Programmierbaren Steuerungen. Mit Hilfe von inkrementellen Editoren können in AWL die Bausteine bearbeitet werden. Mit einem quellorientierten Editor können AWL-Quellen erstellt und in Bausteine übersetzt werden. [3].
KOP
Mit der Darstellungsart KOP haben SPS-Programmierer eine Möglichkeit, die Programme grafisch zu erstellen und darzustellen. Damit Elektrikern ein Einstieg oder Umstieg in die SPS-Programmierung erleichtert wird, ist die Programmdarstellung ähnlich wie bei Stromlaufplänen. So wurde eine Brücke für Elektriker geschaffen, die bisher nur mit Verbindungsprogrammierten Steuerungen vertraut waren, bei der eine Steuerung durch Verdrahtung von Schützen und Relais realisiert wird. Die Darstellungsart KOP wurde in der Programmiernorm 61131-3, neben weiteren wie AWL und FUP, als eine Standardprogrammiersprache festgelegt.
Bei der Programmierung in KOP werden Symbole wie Öffner, Schließe, Spulen oder Lampen benutzt, die auch in Stromlaufplänen verwendet werden. In einem Netzwerk bilden sie durch Zusammenfassung zu logischen Strukturen einen Teil des gesamten Programms, das in der Regel aus mehreren Netzwerken besteht. Nachfolgend eine Übersicht in einer Bildergalerie mit den verschiedenen Darstellungsarten FUP, KOP und AWL zum Vergleich. [4].
FUP
Ein SPS-Programm kann mit Graph und KOP grafisch erstellt und dargestellt werden. Die Möglichkeit, die Programmierung grafisch vorzunehmen, gibt es auch mit dem Funktionsplan, kurz FUP genannt. Hierbei werden Bausteine mit Symbolen benutzt, die aus der booleschen Algebra bekannt sind und in Blockdarstellung abgebildet. So wird auch bei komplexen Funktionen der logische Aufbau eines SPS-Programms übersichtlich dargestellt.
Besonders Anfänger beginnen die ersten Programmierschritte mit FUP, da das Verhalten von Ein- und Ausgängen so am besten nachvollziehbar ist. Die Programmierung mit FUP ist in der Programmiernorm 61131-3, neben weiteren als ein Standard festgelegt. Für die Erstellung des Programms wird ein inkrementeller Editor benutzt.
In FUP werden keine Symbole für Öffner wie in KOP benutzt. Stattdessen erfolgt die Darstellung des Öffnerverhaltens durch die Negation der Eingänge. In der nachfolgenden Bildergalerie ist eine Übersicht mit den verschiedenen Darstellungsarten AWL, KOP und FUP zum Vergleich. [5].
STL
Als Standard Template Library (STL) werden verschiedene in der Programmiersprache C++ geschriebene Bibliotheken bezeichnet. Diese Programmiersprache basiert aus der rein textbasierten Programmiersprache von C++. Erfahrende Programmierer nutzen diese Sprache um komplexe Schaltungen oder Abläufe zu programmieren.
Programmierung Legostein-Montieranlage
Der folgende Artikel beschäftigt sich mit der Programmierung der SPS. Zunächst werden die Grundlagern der verwendeten Funktionsbausteine erleutert, um die nachfolgende Programmierung besser nachvollziehen zu können.
Grundlagen FUP & Funkltionsbausteine
Der Funktionsplan (FUP) wurde als Programmsprache für das Programm genutzt. Diese Programmierung ist sehr benutzerfreundlich und leicht zu verstehen. Im Funktionsplan gibt es Funktionsbausteine die unterschiedlichste Funktionen besitzten. Nachfolgend sind die wichtigsten Bausteine genauer erleutert:
AND-Baustein
Der AND-Baustein ist in der elektrotechnik eine Reihenschaltung. Alle Aktionen müssen ausgeführt werden damit der nächste Schritt gesetzt wird. Auf der nachfolgen Abbildung ist die gut durch die angefügte Wahrheitstabelle zur erkennen. Dieser Baustein ist mit einem Kaufmänischen UND zu kennzeichnen. &
OR-Baustein
Der OR-Baustein ist in der elektrotechnik eine Parallelschaltung. Nur eine Bedingung muss erfüllt werden, damit der Ausgang gesetzt wird. In der nachfolgenden Abbildung ist dieser genauer beschrieben. Auch hier wird das Verhalten der Funktion mit einer Wahrheitstabelle dargestellt.
SR-Glied
Mit der Operation "Flipflop setzen rücksetzen" können Sie das Bit eines angegebenen Operanden abhängig vom Signalzustand an den Eingängen S und R setzen oder rücksetzen. Wenn der Signalzustand am Eingang S "1" und am Eingang R "0" ist, wird der angegebene Operand auf "1" gesetzt. Wenn der Signalzustand am Eingang S "0" und am Eingang R "1" ist, wird der angegebene Operand auf "0" zurückgesetzt.
Der Eingang R dominiert den Eingang S. Bei einem Signalzustand "1" an beiden Eingängen S und R wird der Signalzustand des angegebenen Operanden auf "0" zurückgesetzt. Bei einem Signalzustand "0" an beiden Eingängen S und R wird die Operation nicht ausgeführt. Der Signalzustand des Operanden bleibt in diesem Fall unverändert. Der aktuelle Signalzustand des Operanden wird auf den Ausgang Q übertragen und kann an diesem abgefragt werden. [6].
Farbsensor
Schaltschrankbau
Ausblick
- Einbindung des UR3 Roboter
- Ansteuerung der Zahnriemenachse mithilfe des GeckoDrive
- Auswahl und Einbindung eines geeigneten Farbsensors
Literaturverzeichnis
- ↑ Eigene Fotos
- ↑ Geschichte der SPS
- ↑ SPS Lehrgang AWL
- ↑ SPS Lehrgang KOP
- ↑ SPS Lehrgang FUP
- ↑ Logikfunktionen SR
Kategorie: Automatische Legostein Montieranlage