Ampel-Demonstrator: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(107 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Datei:Titelbild Ampel.jpeg|750px|rechts]]
[[Datei:Fertige Ampel.jpg|750px|thumb|rechts| |Abbildung 1: Fertige Ampel]]
'''Autoren:''' [[Benutzer:Alexander Hammelbeck|Alexander Hammelbeck]] & [[Benutzer:Alexander Thumann|Alexander Thumann]]
'''Autoren:''' [[Benutzer:Alexander Hammelbeck|Alexander Hammelbeck]] & [[Benutzer:Alexander Thumann|Alexander Thumann]] [[Benutzer:Thomas Datche | Thomas Datche]], [[Benutzer:Mohamed Soliman| Mohamed Soliman]], [[Benutzer:Lukas-Erich Mücke | Lukas Mücke]], [[Benutzer:Markus Belsch| Markus Belsch]]<br/>
 


'''Betreuer''' [[Benutzer:Mirekgoebel|Prof. Dr. Mirek Göbel]] & [[Benutzer:Marc Ebmeyer|Marc Ebmeyer]]
'''Betreuer''' [[Benutzer:Mirekgoebel|Prof. Dr. Mirek Göbel]] & [[Benutzer:Marc Ebmeyer|Marc Ebmeyer]]


'''Wintersemester 20/21'''
'''Wintersemester 20/21 & 21/22 & 22/23'''


zurück zum Hauptartikel: [[Praktikum Produktionstechnik]]
zurück zum Hauptartikel: [[Praktikum Produktionstechnik]]
Zeile 11: Zeile 12:
Im Rahmen des Studiengangs Mechatronik der Hochschule Hamm-Lippstadt wird im 7.Semester das Praktikum Produktionstechnik durchgeführt. Das Praktikum ist Teil des Schwerpunktes Global Production Engineering.
Im Rahmen des Studiengangs Mechatronik der Hochschule Hamm-Lippstadt wird im 7.Semester das Praktikum Produktionstechnik durchgeführt. Das Praktikum ist Teil des Schwerpunktes Global Production Engineering.


In diesem Praktikum geht es um die Realisierung eines mechatronischen Systems mit Hilfe einer speicherprogrammierbaren Steuerung (SPS) von Siemens. Diese SPS soll einen eigens entwickelten Ampel-Demonstrator steuern.
In diesem Praktikum geht es um die Realisierung eines mechatronischen Systems mit Hilfe einer speicherprogrammierbaren Steuerung (SPS) von Siemens. Diese SPS soll einen eigens entwickelten Ampel-Demonstrator (siehe Abbildung 1) steuern.  
 
 


==='''Aufgabenstellung'''===
==='''Aufgabenstellung'''===


Die Aufgabe des Praktikums war es, ein Ampelmodell zu konstruieren und dies mit einer Siemens SPS (ET200SP) zu steuern. Die Ampelanlage soll den Verkehrsfluss für Autos, Fußgänger und Fahrradfahrer regeln. Die Grünphase der Fußgänger soll durch ein Tastsignal angefordert werden. Des Weiteren sollen Fahrzeuge durch entsprechende Sensorik erkannt werden (Näherungssensoren). Bei der Bearbeitung dieses Projektes sind folgende Punkte zu beachten, zu bearbeiten und zu dokumentieren:
Die Aufgabe des Praktikums war es, ein Ampelmodell zu konstruieren und dies mit einer Siemens SPS (ET200SP) zu steuern. Die Ampelanlage soll den Verkehrsfluss für Autos, Fußgänger und Fahrradfahrer regeln. Die Grünphase der Fußgänger soll durch ein Tastsignal angefordert werden. Des Weiteren sollen Fahrzeuge durch entsprechende Sensorik erkannt werden (Näherungssensoren).
*Ampeldemonstrator muss im Vorfeld genau geplant werden
 
*Kreuzungsaufbau muss von Grund auf neu erstellt werden
Außerdem wurde die Ampelanlage im WS 21/22 mithilfe von induktiven und kapazitiven Sensoren erweitert. Hierdurch sollten Fahrradfahrer und Fußgänger, sowie wartende Autos erkannt werden und die Ampel entsprechend geschaltet werden.
*Gehäuse für Ampelanlagen konstruieren
 
*Verdrahtung aller elektronischen Komponenten
Im WS 22/23 wurde die Ampelanlage um einen Infrarotsensor und einen Krankenwagen erweitert. Die Ampelanlage schaltet damit die Straße auf grün, auf der der Krankenwagen fährt. Hierdurch soll eine Notfallsituation simuliert werden.
*Siemens SPS muss aufgebaut, verdrahtet und implementiert werden, sodass diese die Kreuzung steuert
 
*Dokumentation des gesamten Projektes in SVN und als Wiki-Artikel
Allen Ausarbeitungen gemein war eine ausführliche Dokumentation im Wiki und im SVN, inklusive Verdrahtungsplänen, Aufzeigen der Software etc.


=='''Vorgehensweise nach V-Modell'''==  
=='''Vorgehensweise nach V-Modell'''==  
Zeile 28: Zeile 31:
Damit eine strukturierte Vorgehensweise zur Bearbeitung des Projektes sichergestellt werden kann, wird dieses nach den Vorgaben des V-Modells (vgl. Abbildung 2) durchgeführt.  
Damit eine strukturierte Vorgehensweise zur Bearbeitung des Projektes sichergestellt werden kann, wird dieses nach den Vorgaben des V-Modells (vgl. Abbildung 2) durchgeführt.  


Die nachfolgenden Punkte sind als Link zum SVN hinterlegt.
Zur Datenabspeicherung wurde der Client [https://tortoisesvn.net/index.de.html TortoiseSVN]<ref>[https://tortoisesvn.net/index.de.html ''TortoiseSVN Client'']</ref> verwendet. Die nachfolgenden Punkte sind als Link zum SVN hinterlegt.


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/01_Anforderungsdefinition/ '''Anforderungsdefinitionen''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/01_Anforderungsdefinition/ '''Anforderungsdefinition''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/01_Anforderungsdefinition/ ''Anforderungsdefinition'']</ref>


In den Anforderungsdefinitionen wird festgelegt, welche grundlegende Dinge im Voraus an das Projekt gestellt werden und auch einzuhalten sind.
In den Anforderungsdefinitionen wird festgelegt, welche grundlegende Dinge im Voraus an das Projekt gestellt werden und auch einzuhalten sind.
Zeile 42: Zeile 45:
*Dokumentation
*Dokumentation


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/02_Funktionaler_Systementwurf/ '''Funktionaler Systementwurf''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/02_Funktionaler_Systementwurf/ '''Funktionaler Systementwurf''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/02_Funktionaler_Systementwurf/ ''Funktionaler Systementwurf'']</ref>
 
*Lösungsneutraler Entwurf des Ampel-Demonstrators
*Lösungsneutraler Entwurf des Ampel-Demonstrators


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/03_Technischer_Systementwurf/ '''Technischer Systementwurf''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/03_Technischer_Systementwurf/ '''Technischer Systementwurf''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/03_Technischer_Systementwurf/ ''Technischer Systementwurf'']</ref>
 
*Definition der Schnittstellen und die Zerlegung des Systems in überschaubarere Teilsysteme
*Definition der Schnittstellen und die Zerlegung des Systems in überschaubarere Teilsysteme


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/ '''Komponentenspezifikation''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/ '''Komponentenspezifikation''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/ ''Komponentenspezifikation'']</ref>
 
*Funktion der einzelnen Komponenten sowie deren Schnittstellen untereinander
*Funktion der einzelnen Komponenten sowie deren Schnittstellen untereinander


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/ '''Programmierung/Entwicklung''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/ '''Programmierung/Entwicklung''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/ ''Programmierung/Entwicklung'']</ref>
 
*Grafcet-Entwicklung
*Grafcet-Entwicklung
*CAD-Modell der Ampel erstellen und additiv fertigen
*CAD-Modell der Ampel erstellen und additiv fertigen
Zeile 57: Zeile 64:
*E-Pläne erstellen
*E-Pläne erstellen


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/06_Komponententest/ '''Komponententest''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/06_Komponententest/ '''Komponententest''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/06_Komponententest/ ''Komponententest'']</ref>
 
*Inbetriebnahme der Komponenten
*Inbetriebnahme der Komponenten
*Fehlersuche und Behebung
*Fehlersuche und Behebung
*Programmverbesserung
*Programmverbesserung


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/07_Integrationstest/ '''Integrationstest''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/07_Integrationstest/ '''Integrationstest''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/07_Integrationstest/ ''Integrationstest'']</ref>
 
*Test, ob die Komponenten wie geplant miteinander kommunizieren
*Test, ob die Komponenten wie geplant miteinander kommunizieren


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/09_Systemtest/ '''Systemtest''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/09_Systemtest/ '''Systemtest''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/09_Systemtest/ ''Systemtest'']</ref>
 
*Test, ob das implementierte System mit den spezifischen Anforderungen übereinstimmt
*Test, ob das implementierte System mit den spezifischen Anforderungen übereinstimmt


<u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/08_Abnahmetest/ '''Abnahmetest''']:</u>
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/08_Abnahmetest/ '''Abnahmetest''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/08_Abnahmetest/ ''Abnahmetest'']</ref>
 
*Test, ob das Projekt wie gewünscht umgesetzt worden ist
*Test, ob das Projekt wie gewünscht umgesetzt worden ist


=='''CAD-Modell der Ampelanlage'''==
 
== Funktionaler Systementwurf==
 
Mit Hilfe der TIA-Portal 15.1 Software konnte die Ampelanlage erfolgreich funktionieren. Die Signale werden von der Steuerungseinheit(SPS) empfangen und bearbeitet. Das wiederholt sich, bis ein Stop-Befehl eintritt.
[[Datei:Funktionaler Systementwurf WS22 23 Ampel.png|500px|thumb|links| Abbildung 2.1:Ampel-Demonstrator-Anforderungsliste.PNG|Abbildung 3:Funktionaler Systementwurf]]
 
<br clear=all>
 
== Technischer Systementwurf ==
Bei dem technischen Systementwurf wurde auf einer genaueren und detaillierteren Beschreibung und Darstellung des Systems. Um ein besseres Verständnis für das System zu bekommen, wurden ganzen Funktionen der Ampelanlage wurden als Funktionspackete hinterlegt und im technischen Systementwurf dargestellt.
[[Datei:Ampel-Technischer_Systementwurf.PNG|600px|thumb|links| Abbildung 2.2:Ampel-Technischer_Systementwurf.PNG|Abbildung 4:Technischer Systementwurf]]
 
<br clear=all>
 
=='''CAD-Modelle'''==


Die acht Ampeln bestehen jeweils aus zwei Bauteilen, zum einen aus dem Standfuß (vgl. Abbildung 3) und zum anderen aus der Säule (vgl. Abbildung 4). Der Standfuß dient einerseits zur Befestigung der Ampel auf der (50 x 50) cm großen Grundplatte und zur Halterung des Tasters. Die Säule dient als Aufnahme für die LED-Module. Beide Bauteile können formschlüssig durch leichten Druck gefügt werden, sodass eine Miniaturampel entsteht. Alle Teile wurden zuvor additiv (generative Fertigung) mit Hilfe eines 3D-Druckers gefertigt. Dafür wurden die Bauteile (Standfuß und Säule) mit SOLIDWORKS konstruiert und in einem entsprechendem Dateiformat (STL) gespeichert, welches vom 3D-Drucker weiterverwendet werden kann.  
Die acht Ampeln bestehen jeweils aus zwei Bauteilen, zum einen aus dem Standfuß (vgl. Abbildung 3) und zum anderen aus der Säule (vgl. Abbildung 4). Der Standfuß dient einerseits zur Befestigung der Ampel auf der (50 x 50) cm großen Grundplatte und zur Halterung des Tasters. Die Säule dient als Aufnahme für die LED-Module. Beide Bauteile können formschlüssig durch leichten Druck gefügt werden, sodass eine Miniaturampel entsteht. Alle Teile wurden zuvor additiv (generative Fertigung) mit Hilfe eines 3D-Druckers gefertigt. Dafür wurden die Bauteile (Standfuß und Säule) mit SOLIDWORKS konstruiert und in einem entsprechendem Dateiformat (STL) gespeichert, welches vom 3D-Drucker weiterverwendet werden kann.  


Im Folgenden sind die Darstellungen der CAD-Modelle zu erkennen. Die Originaldateien können <u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/CAD/ '''hier''']:</u> eingesehen werden.  
Der Krankenwagen besteht aus mehreren Einheiten. Das Seitenteil wurde als 1 Block mit 8 Löchern gefertigt (4 für je ein Rad und die anderen 4 als Aufnahme für das Unterteil des Krankenwagens) Mittels Lötkolben wurden Gewindeeinsätze in die Löcher gepresst. Damit konnte der gesamte Aufbau verschraubt werden. Dieses Vorgehen bietet den Vorteil, den Krankenwagen durch lösen der 4 unten liegenden Schrauben öffnen zu können.
Bei der Konstruktion des Krankenwagens und des IR-Empfängers wurde auf Autodesk Fusion360 zurückgegriffen - Die Dateien liegen aber ebenfalls im STL-Format vor. Dadurch können sie direkt in ein Slicer-Programm gegeben werden und mittels 3D-Druck gefertigt werden.
 
Im Folgenden sind die Darstellungen der CAD-Modelle zu erkennen. Die Originaldateien können [https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/CAD/Ampel hier]
und
[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/CAD/Krankenwagen hier]
eingesehen werden.  


{| class="wikitable"
{| class="wikitable"
Zeile 81: Zeile 112:
| [[Datei:Säule_Ampel.PNG|800px|thumb|left|Abbildung 4: Säule Ampel]]
| [[Datei:Säule_Ampel.PNG|800px|thumb|left|Abbildung 4: Säule Ampel]]
| [[Datei:Zeichnung_Ampel.PNG|800px|thumb|left|Abbildung 5: Bemaßung Ampel]]
| [[Datei:Zeichnung_Ampel.PNG|800px|thumb|left|Abbildung 5: Bemaßung Ampel]]
|
|-
| [[Datei:HalterungIRMEmpfängerUnten.png|600px|thumb|left|Abbildung 6: Halterung-IR-Empfänger-Unterteil]]
| [[Datei:HalterungIREmpfänger Oben.png|600px|thumb|left|Abbildung 7: Halterung-IR-Empfänger-Oberteil]]
|-
| [[Datei:Krankenwagen Seite.png|800px|thumb|left|Abbildung 8: Krankenwagen Seitenteil]]
|}
|}


Zeile 115: Zeile 152:


==='''Schaltpläne'''===
==='''Schaltpläne'''===
Der Schaltplan wurde mit der kostenlosen Software SEE Electrical erstellt, welche <u>[https://see-electrical-free.de.softonic.com/ '''hier''']:</u> heruntergeladen werden kann. Die Dateien können unter diesem <u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/E-Plan/ '''Link''']:</u> eingesehen werden.  
Der Schaltplan wurde mit der kostenlosen Software SEE Electrical erstellt, welche [https://see-electrical-free.de.softonic.com/ '''hier''']<ref>[https://see-electrical-free.de.softonic.com/ ''SEE Electrical'']</ref> heruntergeladen werden kann. Die Dateien können unter diesem [https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/E-Plan/ '''Link''']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/E-Plan/ ''Schaltpläne'']</ref> eingesehen werden.
{| class="wikitable" <u>[https://see-electrical-free.de.softonic.com/ '''hier''']:</u>
 
| [[Datei:Pinbelegung Sub-D.PNG|350px|thumb|left|Abbildung 7: Pinbelegung 50-poliger Sub-D Stecker & Sub-D Anschlussblock]]
{| class="wikitable" <u>[https://see-electrical-free.de.softonic.com/ '''hier''']</u>
| [[Datei:Verdrahtungsplan Autoampel.PNG|500px|thumb|left|Abbildung 8: Verdrahtungsplan LED`s Autoampel]]
| [[Datei:Verdrahtungsplan Autoampel.PNG|500px|thumb|left|Abbildung 7: Verdrahtungsplan LED`s Autoampel]]
| [[Datei:Verdrahtungsplan Fußgängerampel Bundesstr.PNG|500px|thumb|left|Abbildung 9: Verdrahtungsplan LED`s Fußgängerampel Bundesstraße]]
| [[Datei:Verdrahtungsplan Fußgängerampel Bundesstr.PNG|500px|thumb|left|Abbildung 8: Verdrahtungsplan LED`s Fußgängerampel Bundesstraße]]
|-
| [[Datei:Verdrahtungsplan Fußgängerampel Hauptstr.PNG|500px|thumb|left|Abbildung 9: Verdrahtungsplan LED`s Fußgängerampel Hauptstraße]]
| [[Datei:Verdrahtungsplan Sensoren.PNG|500px|thumb|left|Abbildung 10: Verdrahtungsplan Induktiver Sensoren]]
| [[Datei:Verdrahtungsplan Taster.PNG|500px|thumb|left|Abbildung 11: Verdrahtungsplan aller Taster]]
|}
 
'''Tabelle Pinbelegung'''
 
Die Pinbelegung des Sub-D-Steckers kann in dieser Tabelle eingesehen werden. Des Weiteren befindet sich eine Exceltabelle im SVN, die  [https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/E-Plan/ ''hier'']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/05_Entwicklung/E-Plan/ ''Pinbelegung Sub-D'']</ref> eingesehen werden kann.
 
{| class="wikitable"
|-
! Ein- und Ausgänge !! Pinbelegung Sub-D !! Farbe Sub-D !! Adresse SPS
|-
| Spannungsversorgung 0 V || 1 || blau || 0 V 
|-
| Spannungsversorgung 24 V || 2 || rot || 24 V 
|-
| BA-rot || 3 || schwarz || A 4.1
|-
| BA-gelb || 4 || grau || A 4.2 
|-
| BA-grün || 5 || lila || A 4.3 
|-
| BF-1-rot || 6 || braun || A 4.4 
|-
| BF-1-grün || 7 || rosa || A 4.5 
|-
| BF-2-rot || 6 || braun || A 4.4 
|-
| BF-2-grün || 7 || rosa || A 4.5 
|-
| HA-rot || 8 || weiß || A 5.1
|-
| HA-gelb || 9 || grün || A 5.2 
|-
| HA-grün || 10 || gelb || A 5.3 
|-
| HF-1-rot || 11 || weiß-rosa || A 5.4
|-
| HF-1-grün || 12 || grau-braun || A 5.5
|-
| HF-2-rot || 11 || weiß-rosa || A 5.4 
|-
| HF-2-grün || 12 || grau-braun || A 5.5
|-
| BFT-1 || 13 || braun-rot || E 8.4
|-
| BFT-2 || 14 || weiß-grau || E 8.5
|-
| HFT-1 || 15 || weiß-rot || E 9.4 
|-
| HFT-2 || 16 || gelb-braun || E 9.5 
|-
| BIS || 17 || grün-braun || E 8.1
|-
| HIS || 18 || rot-blau || E 9.1
|-
|-
| [[Datei:Verdrahtungsplan Fußgängerampel Hauptstr.PNG|500px|thumb|left|Abbildung 10: Verdrahtungsplan LED`s Fußgängerampel Hauptstraße]]
| [[Datei:Verdrahtungsplan Sensoren.PNG|500px|thumb|left|Abbildung 11: Verdrahtungsplan Induktiver Sensoren]]
| [[Datei:Verdrahtungsplan Taster.PNG|500px|thumb|left|Abbildung 12: Verdrahtungsplan aller Taster]]
|}
|}


=='''SPS-Programmierung mit TIA-Portal Version 15.1 '''==
=='''SPS-Programmierung mit TIA-Portal V15.1 '''==


==='''Vorbereitungen für die Programmierungen'''===
==='''Vorbereitungen für die Programmierungen'''===
Bevor die Funktionen des Ampel-Demonstrators in der Software (TIA-Portal Version 15.1) von Siemens programmiert werden können, müssen alle Komponenten (Ein- und Ausgänge) ein bestimmten Namen und eine Adresse erhalten. Dafür wurden alle Komponenten des Systems aufgelistet (vgl. Abbildung 13) und anschließend zusammengefasst, da viele Komponenten (bspw. die vier Autoampeln auf der Bundesstraße) gleich schalten. Die zusammengefasste Liste ist in Abbildung 14 dargestellt. Die Originaldateien sind durch diesen [https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/ '''Link''']: zu erreichen.  
Bevor die Funktionen des Ampel-Demonstrators in der Software von [https://support.industry.siemens.com/cs/document/109761045/simatic-step-7-und-wincc-v15-1-trial-download?dti=0&lc=de-WW Siemens TIA-Portal V15.1]<ref>[https://support.industry.siemens.com/cs/document/109761045/simatic-step-7-und-wincc-v15-1-trial-download?dti=0&lc=de-WW ''Siemens TIA-Portal V15.1'']</ref> programmiert werden können, müssen alle Komponenten (Ein- und Ausgänge) ein bestimmten Namen und eine Adresse erhalten. Dafür wurden alle Komponenten des Systems aufgelistet (vgl. Abbildung 12) und anschließend zusammengefasst, da viele Komponenten (bspw. die vier Autoampeln auf der Bundesstraße) gleich schalten. Die zusammengefasste Liste ist in Abbildung 13 dargestellt. Die Originaldateien sind über diesen [https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/ Link]<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/ ''Originaldateien für Beschriftungen im Ampeldemonstrator'']</ref> erreichbar.  


{| class="wikitable"
{| class="wikitable"
| [[Datei:Komponenten_Ampel.PNG|1000px|thumb|left|Abbildung 13: Auflistung der Komponenten]]
| [[Datei:Komponenten_Ampel.PNG|1000px|thumb|left|Abbildung 12: Auflistung der Komponenten]]
|-
|-
| [[Datei:Kreuzung_Bezeichnungen.PNG|800px|thumb|left|Abbildung 14: Kreuzung Bezeichnungen]]
| [[Datei:Kreuzung_Bezeichnungen.PNG|800px|thumb|left|Abbildung 13: Kreuzung Bezeichnungen]]
|}
|}


Zeile 140: Zeile 231:


{| class="wikitable"
{| class="wikitable"
| [[Datei:Ampelphasen Auto und Fußgänger.PNG|800px|thumb|left|Abbildung 15: Ampelphasen]]
| [[Datei:Ampelphasen Auto und Fußgänger.PNG|800px|thumb|left|Abbildung 14: Ampelphasen]]
|}
|}


Mit Hilfe des Ampelphasendiagramms (vgl. Abbildung 15) wurde ein Ablaufplan (vgl. Abbildung 16) in der kostenlosen Software PapDesigner erstellt, welcher als Programmiergrundlage dient. Das Programm kann <u>[https://www.chip.de/downloads/PapDesigner_182525451.html '''hier''']:</u> heruntergeladen werden. Die Originaldatei ist unter diesem <u>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/Ablaufpl%c3%a4ne/ '''Link''']:</u> gespeichert.
Mit Hilfe des Ampelphasendiagramms (vgl. Abbildung 14) wurde ein Ablaufplan (vgl. Abbildung 15) in der kostenlosen Software PapDesigner erstellt, welcher als Programmiergrundlage dient. Das Programm kann
[https://www.chip.de/downloads/PapDesigner_182525451.html ''hier'']<ref>[https://www.chip.de/downloads/PapDesigner_182525451.html ''Download PapDesigner'']</ref> heruntergeladen werden. Die Originaldatei ist unter diesem [https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/Ablaufpl%c3%a4ne/ ''Link'']<ref>[https://svn.hshl.de/svn/MTR_GPE_Praktikum/trunk/Fachthemen/Ampel_Kreuzungsdemonstrator/04_Komponentenspezifikation/Ablaufpl%c3%a4ne/ ''Originaldatei des Pap-Diagramms'']</ref> gespeichert.


{| class="wikitable"
{| class="wikitable"
| [[Datei:PAP_Auto-Fußgängerampeln.PNG|800px|thumb|left|Abbildung 16: Ablaufdiagramm Ampelphasen]]
| [[Datei:PAP_Auto-Fußgängerampeln.PNG|800px|thumb|left|Abbildung 15: Ablaufdiagramm Ampelphasen]]
|}
|}


==='''PLC-Variablentabelle'''===
==='''PLC-Variablentabelle'''===


Die Programmierung des Ampel-Demonstrators wurde mit einer Siemens SPS ET200SP und der dazugehörigen TIA-Portal (Version 15.1) Software realisiert. Zu beginn der Programmierung mussten alle Ein- bzw. Ausgänge und Merker implementiert werden. Die Implementierung wurde in der PLC Variablentabelle (vgl. Abbildung 17/18) durchgeführt. Hier wurde jedem Ein-/Ausgang und Merker ein Name zugewiesen sowie eine Adresse.  
Die Programmierung des Ampel-Demonstrators wurde mit einer Siemens SPS ET200SP und der dazugehörigen TIA-Portal Software (Version 15.1) realisiert. Zu beginn der Programmierung mussten alle Ein- bzw. Ausgänge und Merker implementiert werden. Die Implementierung wurde in der PLC Variablentabelle (vgl. Abbildung 16/17) durchgeführt. Hier wurde jedem Ein-/Ausgang und Merker ein Name zugewiesen sowie eine Adresse.  


{| class="wikitable"
{| class="wikitable"
| [[Datei:Ein-Ausgänge.PNG|700px|thumb|left|Abbildung 17: Ein- und Ausgänge implementieren]]
| [[Datei:Ein-Ausgänge.PNG|700px|thumb|left|Abbildung 16: Ein- und Ausgänge implementieren]]
| [[Datei:Merker.PNG|700px|thumb|left|Abbildung 18: Merker implementieren]]
| [[Datei:Merker.PNG|700px|thumb|left|Abbildung 17: Merker implementieren]]
|}
|}


==='''Übersicht Bausteine'''===
==='''Übersicht Bausteine'''===
Das Programm für den Ampeldemonstrator besteht aus mehreren Bausteinen, dem Organisationsbaustein (OB1), Startupbaustein (OB100) und vier Funktionsbausteinen (FC3-6) (vgl. Abbildung 19).
Das Programm für den Ampeldemonstrator besteht aus mehreren Bausteinen, dem Organisationsbaustein (OB1), Startupbaustein (OB100) und vier Funktionsbausteinen (FC3-6) (vgl. Abbildung 18).


{| class="wikitable"
{| class="wikitable"
| [[Datei:Übersicht_Bausteine.PNG|800px|thumb|left|Abbildung 19: Übersicht Bausteine]]
| [[Datei:Übersicht_Bausteine.PNG|800px|thumb|left|Abbildung 18: Übersicht Bausteine]]
|}
|}


===='''Organisationsbaustein OB1'''====
===='''Organisationsbaustein OB1'''====
Der Organisationsbaustein (OB1) ruft die einzelnen Funktionen (FC3-6) nacheinander im Intervall von 150 Millisekunden auf. Die Funktionen wurden für eine bessere Programmübersicht aufgeteilt und haben demnach alle eine unterschiedliche Aufgabe. Die Programmierung des Organisationsbausteins ist dem folgendem Bild zu entnehmen.  
Der Organisationsbaustein (OB1) ruft die einzelnen Funktionen (FC3-6) nacheinander im Intervall von 150 Millisekunden auf. Die Funktionen wurden für eine bessere Programmübersicht aufgeteilt und haben demnach alle eine unterschiedliche Aufgabe. Netzwerk 1 ruft die Zählfunktion auf, Netzwerk 2 die Merkerbausteine für die Autoampeln, Netzwerk 3 die Ausgabebausteine für die Autoampeln und Netzwerk 4 die Ausgabebausteine für die Fußgängerampeln. Die Programmierung des Organisationsbausteins ist dem folgendem Bild zu entnehmen.  


{| class="wikitable"
{| class="wikitable"
| [[Datei:Main_OB1.PNG|800px|thumb|left|Abbildung 20: Organisationsbaustein OB1]]
| [[Datei:Main_OB1.PNG|800px|thumb|left|Abbildung 19: Organisationsbaustein OB1]]
|}
|}


===='''Startup-Baustein OB100'''====
===='''Startup-Baustein OB100'''====
Der Startup-Baustein (OB100) ist ein besonderer Organisationsbaustein. Er wird nur einmalig zum Programmstart aufgerufen und aktiviert sich selber. Dieser wird dafür genutzt, um in die Schrittkette der Ampelsteuerung zu gelangen und den Zähler bei Programmstart zu nullen. Sobald die Schrittkette aktiv ist, wird der Startup-Baustein deaktiviert. Die Programmierung des OB100 ist dem folgendem Bild zu entnehmen.  
Der Startup-Baustein (OB100) ist ein besonderer Organisationsbaustein. Er wird nur einmalig zum Programmstart aufgerufen und aktiviert sich in diesem Fall (durch die Negierung am Eingang) selber. Dieser wird dafür genutzt, um in die Schrittkette der Ampelsteuerung zu gelangen und den Zähler bei Programmstart zu nullen. Sobald die Schrittkette aktiv ist, wird der Startup-Baustein deaktiviert. Die Programmierung des OB100 ist dem folgendem Bild (Abbildung 20) zu entnehmen.  


{| class="wikitable"
{| class="wikitable"
| [[Datei:Startup_OB100.PNG|800px|thumb|left|Abbildung 21: Startup-Baustein OB100]]
| [[Datei:Startup_OB100.PNG|800px|thumb|left|Abbildung 20: Startup-Baustein OB100]]
|}
|}


===='''Funktionsbaustein FC3'''====
===='''Funktionsbaustein FC3'''====
Die vier Funktionsbausteine steuern den Ablauf des Ampel-Demonstrators. Der erste Funktionsbaustein FC3 enthält einen Zähler, welcher zyklisch von 0 bis 110 zählt. Der Wert des Zählers ist eine Bedingung für die jeweiligen Schritte der Schrittkette. Der Ablauf der Schrittkette und demnach auch der Ablauf der Schaltreihenfolge der Auto- bzw. Fußgängerampeln wird vom Zähler gesteuert. Weitere Informationen zum Zähler, sind dem folgendem Programmausschnitt zu entnehmen.  
Die vier Funktionsbausteine steuern den Ablauf des Ampel-Demonstrators. Der erste Funktionsbaustein FC3 enthält einen Zähler, welcher zyklisch von 0 bis 110 zählt. Der Wert des Zählers ist eine Bedingung für die jeweiligen Schritte der Schrittkette. Der Ablauf der Schrittkette und demnach auch der Ablauf der Schaltreihenfolge der Auto- bzw. Fußgängerampeln wird vom Zähler gesteuert. Die Zählgeschwindigkeit kann durch den Clock-Merker M40 eingestellt werden. In diesem Fall ist der Clock-Merker auf 2 Hz eingestellt, wodurch sich der Zähler pro Sekunde um zwei erhöht. Er wird zurückgesetzt wenn der Startup-Baustein aktiv ist (beim Einschalten der SPS) oder wenn der Zählwert 110 erreicht. Weitere Informationen zum Zähler, sind dem folgendem Programmausschnitt (Abbildung 21) zu entnehmen.  


{| class="wikitable"
{| class="wikitable"
| [[Datei:Zähler0-110.PNG|800px|thumb|left|Zähler 0-110]]
| [[Datei:Zähler0-110.PNG|800px|thumb|left|Abbildung 21: Zähler 0-110]]
|}
|}


===='''Funktionsbaustein FC4'''====
===='''Funktionsbaustein FC4'''====
Der zweite Funktionsbaustein FC4 enthalt die Merkerbausteine M1 bis M6, welche jeweils für einen Schritt der Schrittkette stehen. Die Merker werden zu bestimmten Zeitpunkten durch den Zähler aus FC3 gesetzt und auch wieder zurückgesetzt. Sie bilden die Schrittkette für die Steuerung der Autoampeln und Fußgängerampeln. Ist ein Merker aktiv, setzt er unter bestimmten Bedingungen in FC5 oder FC6 einen Ausgang auf eins oder null. Nähere Informationen zu den einzelnen Merkern und deren Setztbedingungen, sind den folgenden Abbildungen M1 bis M6 zu entnehmen.  
Der zweite Funktionsbaustein FC4 enthält die Merkerbausteine M1 bis M6, welche jeweils für einen Schritt der Schrittkette stehen. Die Merker werden zu bestimmten Zeitpunkten durch den Zähler aus FC3 und durch Bedingungen gesetzt oder auch wieder zurückgesetzt. Sie bilden die Schrittkette für die Steuerung der Autoampeln und Fußgängerampeln. Ist ein Merker aktiv, setzt er unter bestimmten Bedingungen in FC5 oder FC6 einen Ausgang auf eins oder null. Im ersten Netzwerk wird der erste Schritt (M1) der Schrittkette durch den Merker M6 oder durch das Signal des Start-Up-Bausteins gesetzt, wenn der Zählwert zwischen 0 und 5 liegt. Sobald M1 aktiv ist, wird der Start-Up-Baustein deaktiviert (vgl. Abb.: 22). Das zweite Netzwerk Schaltet den zweiten Schritt (M2), wenn M1 aktiv ist und der Zählwert zwischen 6 und 55 liegt. Ist M2 = 1, wird M1 = 0 gesetzt (vgl. Abb.: 23). Die Netzwerke 3, 4, 5, und 6 weisen dasselbe Prinzip wie Netzwerk 2 auf. Sie werden jeweils durch den vorherigen Schritt und einem Zählerwert, der in einem bestimmten Intervall liegt, aufgerufen. Das nächste Netzwerk setzt dann jeweils das vorherige auf 0 (vgl. Abb.: 24-27). Nähere Informationen zu den einzelnen Merkern und deren Setztbedingungen, sind den folgenden Abbildungen der Merkerbausteine M1 bis M6 (Abbildung 22 bis 27) zu entnehmen.  
 


{| class="wikitable"
{| class="wikitable"
| [[Datei:M1.PNG|800px|thumb|left|M1]]
| [[Datei:M1.PNG|800px|thumb|left|Abbildung 22: Merkerbaustein M1]]
|-
|-
| [[Datei:M2.PNG|800px|thumb|left|M2]]
| [[Datei:M2.PNG|800px|thumb|left|Abbildung 23: Merkerbaustein M2]]
|-
|-
| [[Datei:M3.PNG|800px|thumb|left|M3]]
| [[Datei:M3.PNG|800px|thumb|left|Abbildung 24: Merkerbaustein M3]]
|-
|-
| [[Datei:M4.PNG|800px|thumb|left|M4]]
| [[Datei:M4.PNG|800px|thumb|left|Abbildung 25: Merkerbaustein M4]]
|-
|-
| [[Datei:M5.PNG|800px|thumb|left|M5]]
| [[Datei:M5.PNG|800px|thumb|left|Abbildung 26: Merkerbaustein M5]]
|-
|-
| [[Datei:M6.PNG|800px|thumb|left|M6]]
| [[Datei:M6.PNG|800px|thumb|left|Abbildung 27: Merkerbaustein M6]]
|}
|}


===='''Funktionsbaustein FC5'''====
===='''Funktionsbaustein FC5'''====
Der dritte Funktionsbaustein FC5 enthält die Ausgabebausteine für die Autoampeln. Die Setz- und Rücksetzbedingungen sind den Programmausschnitten zu entnehmen.  
Der dritte Funktionsbaustein FC5 enthält die Ausgabebausteine für die Autoampeln. Die Netzwerke 1, 2, 3 schalten die Autoampeln der Bundesstraße (rot, gelb, grün) und die Netzwerke 4, 5, 6 schalten die Autoampeln der Hauptstraße (rot, gelb, grün). Die Setz- und Rücksetzbedingungen sind den Programmausschnitten (Abbildung 28 bis 33) zu entnehmen. Die jeweiligen Ausgangs-LED's schalten (Ein oder Aus) wenn bestimmte Bedingungen durch die Merker M1 bis M6 in FC4 erzeugt wurden.  


{| class="wikitable"
{| class="wikitable"
| [[Datei:BArot.PNG|800px|thumb|left|Bundesstraße rot]]
| [[Datei:BArot.PNG|800px|thumb|left|Abbildung 28: Bundesstraße rot]]
|-
|-
| [[Datei:BAgelb.PNG|800px|thumb|left|Bundesstraße gelb]]
| [[Datei:BAgelb.PNG|800px|thumb|left|Abbildung 29: Bundesstraße gelb]]
|-
|-
| [[Datei:BAgrün.PNG|800px|thumb|left|Bundesstraße grün]]
| [[Datei:BAgrün.PNG|800px|thumb|left|Abbildung 30: Bundesstraße grün]]
|-
|-
| [[Datei:HArot.PNG|800px|thumb|left|Hauptstraße rot]]
| [[Datei:HArot.PNG|800px|thumb|left|Abbildung 31: Hauptstraße rot]]
|-
|-
| [[Datei:HAgelb.PNG|800px|thumb|left|Hauptstraße gelb]]
| [[Datei:HAgelb.PNG|800px|thumb|left|Abbildung 32: Hauptstraße gelb]]
|-
|-
| [[Datei:HAgrün.PNG|800px|thumb|left|Hauptstraße grün]]
| [[Datei:HAgrün.PNG|800px|thumb|left|Abbildung 33: Hauptstraße grün]]
|}
|}


===='''Funktionsbaustein FC6'''====
===='''Funktionsbaustein FC6'''====
Der vierte Funktionsbaustein FC6 enthält die Ausgabebausteine für die Fußgängerampeln. Die Setz- und Rücksetzbedingungen sind den Programmausschnitten zu entnehmen.  
Der vierte Funktionsbaustein FC6 enthält die Ausgabebausteine für die Fußgängerampeln. Dem ersten Netzwerk (Abb.: 34) ist zu entnehmen, dass die Fußgängerampel der Bundesstraße immer rot ist, solange nicht alle Bedingungen/Anforderungen erfüllt sind, um sie grün zu schalten. Netzwerk 2 (Abb.: 35) definiert die Anforderungen der grünen Fußgängerampel auf der Bundesstraße. Sie schaltet grün wenn:
 
- eine Grünanforderung mittels Tastsignal von einem Fußgängerüberweg der Bundesstraße eingegangen ist,
 
- der Zählwert zwischen 61 und 96 liegt.
 
Das Rücksetzten von grün auf rot erfolgt durch den Zählwert. ist dieser bei 101 angekommen Schaltet die Fußgängerampel um.
Die Netzwerke 3 und 4 Funktionieren nach dem Selben Prinzip wie die Netzwerke 1 und 2. Netzwerk 3 (Abb.: 36) schaltet demnach die Fußgängerampeln der Hauptstraße rot, solange nicht alle Anforderungen zur grünen Fußgängerampel erfüllt sind. Netzwerk 4 (Abb.: 37) definiert die Anforderungen einer grünen Fußgängerampel auf der Hauptstraße. Diese Schaltet grün wenn:
 
- eine Grünanforderung mittels Tastsignal von einem Fußgängerüberweg der Hauptstraße eingegangen ist,
- der Zählwert zwischen 0 und 41 liegt.
Das Rücksetzten von grün auf rot erfolgt, wenn der Zählwert die Zahl 56 annimmt.


{| class="wikitable"
{| class="wikitable"
| [[Datei:FGBrot.PNG|800px|thumb|left|Bedingung und Setzbefehl Fußgängerampel Bundesstraße rot]]
| [[Datei:FGBrot.PNG|800px|thumb|left|Abbildung 34: Bedingung und Setzbefehl Fußgängerampel Bundesstraße rot]]
|-
|-
| [[Datei:FGBgrün.PNG|800px|thumb|left|Bedingung und Setzbefehl Fußgängerampel Bundesstraße grün]]
| [[Datei:FGBgrün.PNG|800px|thumb|left|Abbildung 35: Bedingung und Setzbefehl Fußgängerampel Bundesstraße grün]]
|-
|-
| [[Datei:FGHrot.PNG|800px|thumb|left|Bedingung und Setzbefehl Fußgängerampel Hauptstraße rot]]
| [[Datei:FGHrot.PNG|800px|thumb|left|Abbildung 36: Bedingung und Setzbefehl Fußgängerampel Hauptstraße rot]]
|-
|-
| [[Datei:FGHgrün.PNG|800px|thumb|left|Bedingung und Setzbefehl Fußgängerampel Hauptstraße grün]]
| [[Datei:FGHgrün.PNG|800px|thumb|left|Abbildung 37: Bedingung und Setzbefehl Fußgängerampel Hauptstraße grün]]
|-
|-
|}
|}
Zeile 237: Zeile 340:
=='''Zusammenfassung / Ausblick'''==
=='''Zusammenfassung / Ausblick'''==


Der Ampel-Demonstrator konnte im Wintersemester 20/21 weitestgehend fertiggestellt werden. Leider kam es bei der Bestellung der Näherungssensoren zu Verzögerungen. Somit konnten diese nicht eingebaut und implementiert werden. Des Weiteren ist uns im späteren Verlauf des Semesters aufgefallen, dass gelbe Blinklichter, welche Autofahrer darauf hinweisen, dass Fußgänger die Straße überqueren, fehlen, und dass die LED's der bestellten Fußgängerampeln getauscht werden müssen (gelieferter Artikel entspricht nicht dem Abgebildeten auf der <u>[https://www.reichelt.de/2-fach-led-baustein-rot-gruen-3mm-men-1801-8231-p62853.html?CCOUNTRY=445&LANGUAGE=de&trstct=pos_10&nbc=1&&r=1 '''Reichelt''']:</u>  Website). Dies könnte eine Aufgabe für die nachfolgenden Studenten sein. Darüber hinaus könnte noch ein Nachtmodus mit Hilfe der Näherungssensoren programmiert werden und eine unabhängige Stromversorgung mit Schaltrelais, die bei Ausfall der SPS alle gelben Lampen des Ampel-Demonstrators blinken lassen. Im weiteren Verlauf könnte auch das HMI zur Darstellung des Ampel-Demonstrators mit eingebunden werden.
Der Ampel-Demonstrator konnte im Wintersemester 20/21 weitestgehend fertiggestellt werden. Leider kam es bei der Bestellung der Näherungssensoren zu Verzögerungen. Somit konnten diese nicht eingebaut und implementiert werden. Des Weiteren ist uns im späteren Verlauf des Semesters aufgefallen, dass gelbe Blinklichter, welche Autofahrer darauf hinweisen, dass Fußgänger die Straße überqueren, fehlen, und dass die LED's der bestellten Fußgängerampeln getauscht werden müssen (gelieferter Artikel entspricht nicht dem Abgebildeten auf der [https://www.reichelt.de/2-fach-led-baustein-rot-gruen-3mm-men-1801-8231-p62853.html?CCOUNTRY=445&LANGUAGE=de&trstct=pos_10&nbc=1&&r=1 Reichelt]<ref>[https://www.reichelt.de/2-fach-led-baustein-rot-gruen-3mm-men-1801-8231-p62853.html?CCOUNTRY=445&LANGUAGE=de&trstct=pos_10&nbc=1&&r=1 ''Reichelt LED-Modul rot grün'']</ref>  Website). Dies könnte eine Aufgabe für die nachfolgenden Studenten sein. Darüber hinaus könnte noch ein Nachtmodus mit Hilfe der Näherungssensoren programmiert werden und eine unabhängige Stromversorgung mit Schaltrelais, die bei Ausfall der SPS alle gelben Lampen des Ampel-Demonstrators blinken lassen. Im weiteren Verlauf könnte auch das HMI zur Darstellung des Ampel-Demonstrators mit eingebunden werden.


'''Lessons Learned'''
'''Lessons Learned'''
Zeile 263: Zeile 366:
**Funktion der Ampelanlagen softwaretechnisch umzusetzen erforderte viel Recherche
**Funktion der Ampelanlagen softwaretechnisch umzusetzen erforderte viel Recherche


='''Literaturverzeichnis'''=


zurück zum Hauptartikel: [[Praktikum Produktionstechnik]]
<references />
 
 
zurück zum Hauptartikel [[Praktikum Produktionstechnik]]

Aktuelle Version vom 2. März 2023, 11:50 Uhr

Abbildung 1: Fertige Ampel

Autoren: Alexander Hammelbeck & Alexander Thumann Thomas Datche, Mohamed Soliman, Lukas Mücke, Markus Belsch


Betreuer Prof. Dr. Mirek Göbel & Marc Ebmeyer

Wintersemester 20/21 & 21/22 & 22/23

zurück zum Hauptartikel: Praktikum Produktionstechnik

Einleitung

Im Rahmen des Studiengangs Mechatronik der Hochschule Hamm-Lippstadt wird im 7.Semester das Praktikum Produktionstechnik durchgeführt. Das Praktikum ist Teil des Schwerpunktes Global Production Engineering.

In diesem Praktikum geht es um die Realisierung eines mechatronischen Systems mit Hilfe einer speicherprogrammierbaren Steuerung (SPS) von Siemens. Diese SPS soll einen eigens entwickelten Ampel-Demonstrator (siehe Abbildung 1) steuern.


Aufgabenstellung

Die Aufgabe des Praktikums war es, ein Ampelmodell zu konstruieren und dies mit einer Siemens SPS (ET200SP) zu steuern. Die Ampelanlage soll den Verkehrsfluss für Autos, Fußgänger und Fahrradfahrer regeln. Die Grünphase der Fußgänger soll durch ein Tastsignal angefordert werden. Des Weiteren sollen Fahrzeuge durch entsprechende Sensorik erkannt werden (Näherungssensoren).

Außerdem wurde die Ampelanlage im WS 21/22 mithilfe von induktiven und kapazitiven Sensoren erweitert. Hierdurch sollten Fahrradfahrer und Fußgänger, sowie wartende Autos erkannt werden und die Ampel entsprechend geschaltet werden.

Im WS 22/23 wurde die Ampelanlage um einen Infrarotsensor und einen Krankenwagen erweitert. Die Ampelanlage schaltet damit die Straße auf grün, auf der der Krankenwagen fährt. Hierdurch soll eine Notfallsituation simuliert werden.

Allen Ausarbeitungen gemein war eine ausführliche Dokumentation im Wiki und im SVN, inklusive Verdrahtungsplänen, Aufzeigen der Software etc.

Vorgehensweise nach V-Modell

Abbildung 2: V-Modell

Damit eine strukturierte Vorgehensweise zur Bearbeitung des Projektes sichergestellt werden kann, wird dieses nach den Vorgaben des V-Modells (vgl. Abbildung 2) durchgeführt.

Zur Datenabspeicherung wurde der Client TortoiseSVN[1] verwendet. Die nachfolgenden Punkte sind als Link zum SVN hinterlegt.

Anforderungsdefinition[2]

In den Anforderungsdefinitionen wird festgelegt, welche grundlegende Dinge im Voraus an das Projekt gestellt werden und auch einzuhalten sind.

Die Anforderungsdefinitionen sind in fünf Hauptpunkte unterteilt.

  • Geometrie & Gewicht
  • Aufbau
  • Schnittstellen
  • Software & Werkzeuge
  • Dokumentation

Funktionaler Systementwurf[3]

  • Lösungsneutraler Entwurf des Ampel-Demonstrators

Technischer Systementwurf[4]

  • Definition der Schnittstellen und die Zerlegung des Systems in überschaubarere Teilsysteme

Komponentenspezifikation[5]

  • Funktion der einzelnen Komponenten sowie deren Schnittstellen untereinander

Programmierung/Entwicklung[6]

  • Grafcet-Entwicklung
  • CAD-Modell der Ampel erstellen und additiv fertigen
  • Programmierung der gesamten Ampelanlage
  • E-Pläne erstellen

Komponententest[7]

  • Inbetriebnahme der Komponenten
  • Fehlersuche und Behebung
  • Programmverbesserung

Integrationstest[8]

  • Test, ob die Komponenten wie geplant miteinander kommunizieren

Systemtest[9]

  • Test, ob das implementierte System mit den spezifischen Anforderungen übereinstimmt

Abnahmetest[10]

  • Test, ob das Projekt wie gewünscht umgesetzt worden ist


Funktionaler Systementwurf

Mit Hilfe der TIA-Portal 15.1 Software konnte die Ampelanlage erfolgreich funktionieren. Die Signale werden von der Steuerungseinheit(SPS) empfangen und bearbeitet. Das wiederholt sich, bis ein Stop-Befehl eintritt.

Abbildung 3:Funktionaler Systementwurf


Technischer Systementwurf

Bei dem technischen Systementwurf wurde auf einer genaueren und detaillierteren Beschreibung und Darstellung des Systems. Um ein besseres Verständnis für das System zu bekommen, wurden ganzen Funktionen der Ampelanlage wurden als Funktionspackete hinterlegt und im technischen Systementwurf dargestellt.

Abbildung 4:Technischer Systementwurf


CAD-Modelle

Die acht Ampeln bestehen jeweils aus zwei Bauteilen, zum einen aus dem Standfuß (vgl. Abbildung 3) und zum anderen aus der Säule (vgl. Abbildung 4). Der Standfuß dient einerseits zur Befestigung der Ampel auf der (50 x 50) cm großen Grundplatte und zur Halterung des Tasters. Die Säule dient als Aufnahme für die LED-Module. Beide Bauteile können formschlüssig durch leichten Druck gefügt werden, sodass eine Miniaturampel entsteht. Alle Teile wurden zuvor additiv (generative Fertigung) mit Hilfe eines 3D-Druckers gefertigt. Dafür wurden die Bauteile (Standfuß und Säule) mit SOLIDWORKS konstruiert und in einem entsprechendem Dateiformat (STL) gespeichert, welches vom 3D-Drucker weiterverwendet werden kann.

Der Krankenwagen besteht aus mehreren Einheiten. Das Seitenteil wurde als 1 Block mit 8 Löchern gefertigt (4 für je ein Rad und die anderen 4 als Aufnahme für das Unterteil des Krankenwagens) Mittels Lötkolben wurden Gewindeeinsätze in die Löcher gepresst. Damit konnte der gesamte Aufbau verschraubt werden. Dieses Vorgehen bietet den Vorteil, den Krankenwagen durch lösen der 4 unten liegenden Schrauben öffnen zu können. Bei der Konstruktion des Krankenwagens und des IR-Empfängers wurde auf Autodesk Fusion360 zurückgegriffen - Die Dateien liegen aber ebenfalls im STL-Format vor. Dadurch können sie direkt in ein Slicer-Programm gegeben werden und mittels 3D-Druck gefertigt werden.

Im Folgenden sind die Darstellungen der CAD-Modelle zu erkennen. Die Originaldateien können hier und hier eingesehen werden.

Abbildung 3: Standfuß Ampel
Abbildung 4: Säule Ampel
Abbildung 5: Bemaßung Ampel
Abbildung 6: Halterung-IR-Empfänger-Unterteil
Abbildung 7: Halterung-IR-Empfänger-Oberteil
Abbildung 8: Krankenwagen Seitenteil

Ampeldemonstrator - Planung & Aufbau

Die Aufgaben, welche zur Planung und zum Aufbau des Ampel-Demonstrators gehören, sind in den nächsten Unterpunkten aufgelistet:

Planung

  • Komponenten auswählen und auflisten für HSHL-interne Bestellung
  • Maßstabsgetreue Skizze der Kreuzung anfertigen (mit allen Fahrwegen und Ampelpositionen)
    • Größe der Holzplatte definieren (dient als Grundplatte für Kreuzungsaufbau)
    • Bemaßungen der Fahr- und Fußgängerwege sowie der Grünflächen

Aufbau

Abbildung 6: SPS-Aufbau
  • SPS Hardware aufbauen und verkabeln
    • Digitale und analoge Ein-und Ausgänge mit 24 V / DC Spannung versorgen
    • 230 V / 50 Hz AC Zuleitung für SPS anschließen
  • Layout der Kreuzung erstellen
    • Grundplatte zuschneiden
    • Folierung der Wege auf der Grundplatte
    • Grünflächen kleben
    • Kantenschutz anbringen
    • Kabelkanal montieren
    • Reihenklemmen montieren
    • Standfüße montieren
    • Zusätzliche Holzplatte für 50 poligen Sub-D Anschlussblock anbringen
    • 50 poligen Sub-D Anschlussblock montieren
  • Ampelkreuzung aufbauen und verkabeln
    • Schaltdrähte verlegen und verlöten
    • Widerstände vor LED-Module löten
    • 50 poligen Sub-D Stecker verlöten
    • Additiv gefertigten Ampelgehäuse montieren und Taster anschließen

Schaltpläne

Der Schaltplan wurde mit der kostenlosen Software SEE Electrical erstellt, welche hier[11] heruntergeladen werden kann. Die Dateien können unter diesem Link[12] eingesehen werden.

Abbildung 7: Verdrahtungsplan LED`s Autoampel
Abbildung 8: Verdrahtungsplan LED`s Fußgängerampel Bundesstraße
Abbildung 9: Verdrahtungsplan LED`s Fußgängerampel Hauptstraße
Abbildung 10: Verdrahtungsplan Induktiver Sensoren
Abbildung 11: Verdrahtungsplan aller Taster

Tabelle Pinbelegung

Die Pinbelegung des Sub-D-Steckers kann in dieser Tabelle eingesehen werden. Des Weiteren befindet sich eine Exceltabelle im SVN, die hier[13] eingesehen werden kann.

Ein- und Ausgänge Pinbelegung Sub-D Farbe Sub-D Adresse SPS
Spannungsversorgung 0 V 1 blau 0 V
Spannungsversorgung 24 V 2 rot 24 V
BA-rot 3 schwarz A 4.1
BA-gelb 4 grau A 4.2
BA-grün 5 lila A 4.3
BF-1-rot 6 braun A 4.4
BF-1-grün 7 rosa A 4.5
BF-2-rot 6 braun A 4.4
BF-2-grün 7 rosa A 4.5
HA-rot 8 weiß A 5.1
HA-gelb 9 grün A 5.2
HA-grün 10 gelb A 5.3
HF-1-rot 11 weiß-rosa A 5.4
HF-1-grün 12 grau-braun A 5.5
HF-2-rot 11 weiß-rosa A 5.4
HF-2-grün 12 grau-braun A 5.5
BFT-1 13 braun-rot E 8.4
BFT-2 14 weiß-grau E 8.5
HFT-1 15 weiß-rot E 9.4
HFT-2 16 gelb-braun E 9.5
BIS 17 grün-braun E 8.1
HIS 18 rot-blau E 9.1

SPS-Programmierung mit TIA-Portal V15.1

Vorbereitungen für die Programmierungen

Bevor die Funktionen des Ampel-Demonstrators in der Software von Siemens TIA-Portal V15.1[14] programmiert werden können, müssen alle Komponenten (Ein- und Ausgänge) ein bestimmten Namen und eine Adresse erhalten. Dafür wurden alle Komponenten des Systems aufgelistet (vgl. Abbildung 12) und anschließend zusammengefasst, da viele Komponenten (bspw. die vier Autoampeln auf der Bundesstraße) gleich schalten. Die zusammengefasste Liste ist in Abbildung 13 dargestellt. Die Originaldateien sind über diesen Link[15] erreichbar.

Abbildung 12: Auflistung der Komponenten
Abbildung 13: Kreuzung Bezeichnungen

Des Weiteren muss der Ablauf des Programms im Vorfeld definiert werden. Dafür wurde ein handschriftliches Diagramm erstellt, welches die Schaltreihenfolge der Ampeln über der Zeit darstellt. Das Ampelsystem für die Autos hat sechs unterschiedliche Schaltzustände. Diese werden im STEP 7 Programm als Merker M1 bis M6 gespeichert. Das Diagramm ist in Abbildung 15 dargestellt. Die sechs unterschiedlichen Schaltzustände sind blau gekennzeichnet.

Abbildung 14: Ampelphasen

Mit Hilfe des Ampelphasendiagramms (vgl. Abbildung 14) wurde ein Ablaufplan (vgl. Abbildung 15) in der kostenlosen Software PapDesigner erstellt, welcher als Programmiergrundlage dient. Das Programm kann hier[16] heruntergeladen werden. Die Originaldatei ist unter diesem Link[17] gespeichert.

Abbildung 15: Ablaufdiagramm Ampelphasen

PLC-Variablentabelle

Die Programmierung des Ampel-Demonstrators wurde mit einer Siemens SPS ET200SP und der dazugehörigen TIA-Portal Software (Version 15.1) realisiert. Zu beginn der Programmierung mussten alle Ein- bzw. Ausgänge und Merker implementiert werden. Die Implementierung wurde in der PLC Variablentabelle (vgl. Abbildung 16/17) durchgeführt. Hier wurde jedem Ein-/Ausgang und Merker ein Name zugewiesen sowie eine Adresse.

Abbildung 16: Ein- und Ausgänge implementieren
Abbildung 17: Merker implementieren

Übersicht Bausteine

Das Programm für den Ampeldemonstrator besteht aus mehreren Bausteinen, dem Organisationsbaustein (OB1), Startupbaustein (OB100) und vier Funktionsbausteinen (FC3-6) (vgl. Abbildung 18).

Abbildung 18: Übersicht Bausteine

Organisationsbaustein OB1

Der Organisationsbaustein (OB1) ruft die einzelnen Funktionen (FC3-6) nacheinander im Intervall von 150 Millisekunden auf. Die Funktionen wurden für eine bessere Programmübersicht aufgeteilt und haben demnach alle eine unterschiedliche Aufgabe. Netzwerk 1 ruft die Zählfunktion auf, Netzwerk 2 die Merkerbausteine für die Autoampeln, Netzwerk 3 die Ausgabebausteine für die Autoampeln und Netzwerk 4 die Ausgabebausteine für die Fußgängerampeln. Die Programmierung des Organisationsbausteins ist dem folgendem Bild zu entnehmen.

Abbildung 19: Organisationsbaustein OB1

Startup-Baustein OB100

Der Startup-Baustein (OB100) ist ein besonderer Organisationsbaustein. Er wird nur einmalig zum Programmstart aufgerufen und aktiviert sich in diesem Fall (durch die Negierung am Eingang) selber. Dieser wird dafür genutzt, um in die Schrittkette der Ampelsteuerung zu gelangen und den Zähler bei Programmstart zu nullen. Sobald die Schrittkette aktiv ist, wird der Startup-Baustein deaktiviert. Die Programmierung des OB100 ist dem folgendem Bild (Abbildung 20) zu entnehmen.

Abbildung 20: Startup-Baustein OB100

Funktionsbaustein FC3

Die vier Funktionsbausteine steuern den Ablauf des Ampel-Demonstrators. Der erste Funktionsbaustein FC3 enthält einen Zähler, welcher zyklisch von 0 bis 110 zählt. Der Wert des Zählers ist eine Bedingung für die jeweiligen Schritte der Schrittkette. Der Ablauf der Schrittkette und demnach auch der Ablauf der Schaltreihenfolge der Auto- bzw. Fußgängerampeln wird vom Zähler gesteuert. Die Zählgeschwindigkeit kann durch den Clock-Merker M40 eingestellt werden. In diesem Fall ist der Clock-Merker auf 2 Hz eingestellt, wodurch sich der Zähler pro Sekunde um zwei erhöht. Er wird zurückgesetzt wenn der Startup-Baustein aktiv ist (beim Einschalten der SPS) oder wenn der Zählwert 110 erreicht. Weitere Informationen zum Zähler, sind dem folgendem Programmausschnitt (Abbildung 21) zu entnehmen.

Abbildung 21: Zähler 0-110

Funktionsbaustein FC4

Der zweite Funktionsbaustein FC4 enthält die Merkerbausteine M1 bis M6, welche jeweils für einen Schritt der Schrittkette stehen. Die Merker werden zu bestimmten Zeitpunkten durch den Zähler aus FC3 und durch Bedingungen gesetzt oder auch wieder zurückgesetzt. Sie bilden die Schrittkette für die Steuerung der Autoampeln und Fußgängerampeln. Ist ein Merker aktiv, setzt er unter bestimmten Bedingungen in FC5 oder FC6 einen Ausgang auf eins oder null. Im ersten Netzwerk wird der erste Schritt (M1) der Schrittkette durch den Merker M6 oder durch das Signal des Start-Up-Bausteins gesetzt, wenn der Zählwert zwischen 0 und 5 liegt. Sobald M1 aktiv ist, wird der Start-Up-Baustein deaktiviert (vgl. Abb.: 22). Das zweite Netzwerk Schaltet den zweiten Schritt (M2), wenn M1 aktiv ist und der Zählwert zwischen 6 und 55 liegt. Ist M2 = 1, wird M1 = 0 gesetzt (vgl. Abb.: 23). Die Netzwerke 3, 4, 5, und 6 weisen dasselbe Prinzip wie Netzwerk 2 auf. Sie werden jeweils durch den vorherigen Schritt und einem Zählerwert, der in einem bestimmten Intervall liegt, aufgerufen. Das nächste Netzwerk setzt dann jeweils das vorherige auf 0 (vgl. Abb.: 24-27). Nähere Informationen zu den einzelnen Merkern und deren Setztbedingungen, sind den folgenden Abbildungen der Merkerbausteine M1 bis M6 (Abbildung 22 bis 27) zu entnehmen.

Abbildung 22: Merkerbaustein M1
Abbildung 23: Merkerbaustein M2
Abbildung 24: Merkerbaustein M3
Abbildung 25: Merkerbaustein M4
Abbildung 26: Merkerbaustein M5
Abbildung 27: Merkerbaustein M6

Funktionsbaustein FC5

Der dritte Funktionsbaustein FC5 enthält die Ausgabebausteine für die Autoampeln. Die Netzwerke 1, 2, 3 schalten die Autoampeln der Bundesstraße (rot, gelb, grün) und die Netzwerke 4, 5, 6 schalten die Autoampeln der Hauptstraße (rot, gelb, grün). Die Setz- und Rücksetzbedingungen sind den Programmausschnitten (Abbildung 28 bis 33) zu entnehmen. Die jeweiligen Ausgangs-LED's schalten (Ein oder Aus) wenn bestimmte Bedingungen durch die Merker M1 bis M6 in FC4 erzeugt wurden.

Abbildung 28: Bundesstraße rot
Abbildung 29: Bundesstraße gelb
Abbildung 30: Bundesstraße grün
Abbildung 31: Hauptstraße rot
Abbildung 32: Hauptstraße gelb
Abbildung 33: Hauptstraße grün

Funktionsbaustein FC6

Der vierte Funktionsbaustein FC6 enthält die Ausgabebausteine für die Fußgängerampeln. Dem ersten Netzwerk (Abb.: 34) ist zu entnehmen, dass die Fußgängerampel der Bundesstraße immer rot ist, solange nicht alle Bedingungen/Anforderungen erfüllt sind, um sie grün zu schalten. Netzwerk 2 (Abb.: 35) definiert die Anforderungen der grünen Fußgängerampel auf der Bundesstraße. Sie schaltet grün wenn:

- eine Grünanforderung mittels Tastsignal von einem Fußgängerüberweg der Bundesstraße eingegangen ist,

- der Zählwert zwischen 61 und 96 liegt.

Das Rücksetzten von grün auf rot erfolgt durch den Zählwert. ist dieser bei 101 angekommen Schaltet die Fußgängerampel um. Die Netzwerke 3 und 4 Funktionieren nach dem Selben Prinzip wie die Netzwerke 1 und 2. Netzwerk 3 (Abb.: 36) schaltet demnach die Fußgängerampeln der Hauptstraße rot, solange nicht alle Anforderungen zur grünen Fußgängerampel erfüllt sind. Netzwerk 4 (Abb.: 37) definiert die Anforderungen einer grünen Fußgängerampel auf der Hauptstraße. Diese Schaltet grün wenn:

- eine Grünanforderung mittels Tastsignal von einem Fußgängerüberweg der Hauptstraße eingegangen ist,

- der Zählwert zwischen 0 und 41 liegt. Das Rücksetzten von grün auf rot erfolgt, wenn der Zählwert die Zahl 56 annimmt.

Abbildung 34: Bedingung und Setzbefehl Fußgängerampel Bundesstraße rot
Abbildung 35: Bedingung und Setzbefehl Fußgängerampel Bundesstraße grün
Abbildung 36: Bedingung und Setzbefehl Fußgängerampel Hauptstraße rot
Abbildung 37: Bedingung und Setzbefehl Fußgängerampel Hauptstraße grün

Zusammenfassung / Ausblick

Der Ampel-Demonstrator konnte im Wintersemester 20/21 weitestgehend fertiggestellt werden. Leider kam es bei der Bestellung der Näherungssensoren zu Verzögerungen. Somit konnten diese nicht eingebaut und implementiert werden. Des Weiteren ist uns im späteren Verlauf des Semesters aufgefallen, dass gelbe Blinklichter, welche Autofahrer darauf hinweisen, dass Fußgänger die Straße überqueren, fehlen, und dass die LED's der bestellten Fußgängerampeln getauscht werden müssen (gelieferter Artikel entspricht nicht dem Abgebildeten auf der Reichelt[18] Website). Dies könnte eine Aufgabe für die nachfolgenden Studenten sein. Darüber hinaus könnte noch ein Nachtmodus mit Hilfe der Näherungssensoren programmiert werden und eine unabhängige Stromversorgung mit Schaltrelais, die bei Ausfall der SPS alle gelben Lampen des Ampel-Demonstrators blinken lassen. Im weiteren Verlauf könnte auch das HMI zur Darstellung des Ampel-Demonstrators mit eingebunden werden.

Lessons Learned

Bei der Bearbeitung des Projektes konnten Studieninhalte aus früheren Semestern, wie auch Ausbildungsinhalte wiederholt und angewendet werden. Dazu zählen:

  • erarbeiten und anfertigen von Schaltplänen
  • Verdrahtung nach Schaltplan durchführen
  • konstruieren der Ampel mithilfe von SolidWorks (CAD-Programm)
  • strukturiertes Vorgehen nach V-Modell
  • Dokumentensicherungen via SVN (gleichzeitige Bearbeitung möglich)
  • Programmieren der SPS via TIA-Portal

Darüber hinaus war es ein Erfolgserlebnis, die mit SolidWorks erstellten Ampeln, nach der additiven Fertigung selbst in der Hand zu halten. Es ist außerdem schön zu sehen, dass die Programmierung der Software nicht nur im Programm funktioniert, sondern auch am Modell.

Probleme / Schwierigkeiten

  • Komponentenauswahl gestaltete sich durch zeitnahe Bestelldeadline schwierig
    • Modellplan musste in kurzer Zeit aufgestellt werden
    • Eine Vielzahl an Komponenten waren nötig, da das Projekt von Grund auf erstellt werden musste
  • Bau des Ampeldemonstrators war sehr zeitintensiv
    • verlöten der LED´s und Widerstände
    • genaue Planung der Verkabelung
    • 3D-Druck der Ampeln sehr zeitintensiv
  • Einarbeitung in TIA-Portal
    • Funktion der Ampelanlagen softwaretechnisch umzusetzen erforderte viel Recherche

Literaturverzeichnis


→ zurück zum Hauptartikel Praktikum Produktionstechnik