Übungen und Praktika zur Automatisierungstechnik Schuljahr...

23
1 Übungen und Praktika zur Automatisierungstechnik Schuljahr 2015/2016 Übungen sind theoretisch zu lösende Aufgaben, die die besprochenen Themengebiete im Stil einer Prüfungsaufgabe behandeln. Praktika sind Praxisaufgaben, die an der Laboranlage (digitale Fabrik) der tsm realisiert werden sollen. Die Praktika sollen in Zusammenarbeit mit den Fächern Steuerungstechnik und Datenverarbeitung dazu führen, daß die Laboranlage am Jahresende lauffähig ist. Alle Praktika können Sie auch über das Internet durchführen : http://portal.ts-muenchen.de

Transcript of Übungen und Praktika zur Automatisierungstechnik Schuljahr...

Page 1: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

1

Übungen und Praktika zur Automatisierungstechnik

Schuljahr 2015/2016

Übungen sind theoretisch zu lösende Aufgaben, die die besprochenen

Themengebiete im Stil einer Prüfungsaufgabe behandeln.

Praktika sind Praxisaufgaben, die an der Laboranlage (digitale Fabrik)

der tsm realisiert werden sollen. Die Praktika sollen in

Zusammenarbeit mit den Fächern Steuerungstechnik und

Datenverarbeitung dazu führen, daß die Laboranlage am

Jahresende lauffähig ist.

Alle Praktika können Sie auch über das Internet durchführen :

http://portal.ts-muenchen.de

Page 2: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

2

Inhalt :

Entwicklung der industriellen Automatisierung

Übung : Verfügbarkeitsberechnung

Prozessebene

Praktikum : Profibus DP

Praktikum : Profinet I/O

Übung : Kommunikationsvarianten

Übung : Entwurf von Petrinetzen

Praktikum : Handshake auf SPS-Ebene

Übung : Testfragen zum Thema Handshake

MES-Ebene

Praktikum : Kommunikation mit OPCuA

Praktikum : Programmieren in VB classic

Praktikum : Einführung in Visual Studio

Praktikum : SPS objektorientiert ansprechen

Praktikum : Schnittstelle SPS-PC

Praktikum : Verkettung von Modulen in MES

Praktikum : manuelles Bedien-Terminal in MES

IT-Ebene (ERP)

Praktikum : Webservices mit Telnet bedienen

Praktikum : Webservices mit Browser lesen

Praktikum : XML-Auftragsdaten von ERP lesen

Abschlußprojekt

Ein MES-System für die digitale Fabrik

Page 3: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

3

Übung : Verfügbarkeitsberechnung

Nach etwa 120 Betriebsstunden zeigt ein neu erworbener Rechner erste Mängel. Die Fehlersuche,

Beschaffung von Ersatzteilen und die Reparatur erfordern zwei Stunden. Danach läuft der Rechner

528 Stunden problemlos, bis er erneut ausfällt. Die Reparatur benötigt fünf Stunden. Weitere 288

Stunden später fällt der Rechner ein weiteres Mal aus und ist dieses Mal schon nach einer halben

Stunde einsatzbereit.

1. Aufgabe : Berechnen Sie MTBF und MTTR, p und q !

Berechnung der Gesamtausfallwahrscheinlichkeit der in Serie verschalteten Module A und B :

Erwartete mittlere Up-Time Komponente A: ~ 62 Tage Erwartete mittlere Up-Time Komponente B: ~ 230 Tage Erwartete mittlere Down-Time Komponente A: ~ 32 Minuten Erwartete mittlere Down-Time Komponente B: ~ 11 Stunden 2. Aufgabe : Berechnen Sie p und q des Gesamtsystems !

Page 4: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

4

Berechnung der Gesamtausfallwahrscheinlichkeit der redundant ausgelegten und parallel verschalteten Komponenten A und B :

Erwartete mittlere Up-Time Komponente A: ~ 62 Tage Erwartete mittlere Up-Time Komponente B: ~ 230 Tage Erwartete mittlere Down-Time Komponente A: ~ 32 Minuten Erwartete mittlere Down-Time Komponente B: ~ 11 Stunden 3. Aufgabe : Berechnen Sie p und q des Gesamtsystems !

Struktur A :

Struktur B :

4. Aufgabe : Überlegen Sie zunächst, und dann rechnen Sie : Welche Struktur ist besser ?

Page 5: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

5

Hilfsblatt zum Praktikum : digitale Fabrik der tsm

Zuliefereinheit

Soft-SPS in Codesys oder

Simatic Step7

auf Server MES1

Lineararm

Vertikalarm

Horizontalarm

Lager /Ausliefer-

Einheit

IP:1.0.6.3

DP : 3

IP:1.0.6.4

DP : 4

IP:1.0.6.5

DP : 5

IP:1.0.6.6

DP : 6

IP:1.0.6.2

DP: 2

Master

IP:1.0.6.1

DP: 1

Reserve

(1.0.6.7)

Page 6: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

6

Praktikum : Profibus DP

1. Aufgabe :

Bauen Sie einen Lichtschalter !

Die Betätigung des Tasters an der Station Band soll eine der Lampen an der

Station Vertikalarm (…und wenn das geht dann alle Lampen aller Stationen)

ansteuern. (Sie können auch irgendwelche Mechanikbewegungen auslösen..)

2. Aufgabe :

Bauen Sie ein „Lauflicht“ aus Pneumatikfunktionen über die gesamte Anlage, also ein

Modul nach dem anderen soll einen Zylinder ausfahren.

Lösungshilfe :

Die Lösung sieht so aus, daß nach Start durch einen Taster an der ersten Station jeweils die

Meldung des Endschalters am Zylinder (der diesen auch wieder einfahren läßt) an die

nächste Station weitergegeben wird :

Station n oder Taster zu Station n+1

Endschalter am Zylinder

(… das geht besser, soll aber hier nicht der Schwerpunkt sein !)

Für die Festlegung der Ein-Ausgänge an den Slaves und am Master verwenden sie bitte die

Adressdefinitionen der Signale „Start“ und „Acknowledge“ an den Stationen,

die Sie im Pflichtenheft auf Seite 39 finden.

Arbeiten Sie unbedingt nach Pflichtenheft mit bibliotheksfähigen FBs !!

S Q

R

Ventil

Page 7: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

7

Praktikum : Profinet I/O – Kommunikation

Wir greifen hier schon ein wenig vor, und betrachten Signale, die wir bei der modularen

Anlagenkonzeption im zweiten Halbjahr benötigen werden.

Die einzelnen Fertigungsmodule (Band, Linear usw..) werden über standardisierte

Kommunikationssignale gesteuert :

Ready, Start, Busy, Acknowledge und Error

- Lesen Sie in der Anlagendokumentation („Gesamtdokumentaion der Anlage“ auf portal.ts-

muenchen.de) nach, welche Speicher als Abbild in der SPS für diese Signale benutzt werden.

Sie finden diese Angaben auf Seite 16.

- Definieren Sie in einer Station Ihrer Wahl diese Speicherkonfiguration (DB)

- Koppeln Sie das der Station räumlich zugeordnete Wago-Device mit der anhängenden

Meldeleuchte über Profinet I/O an Ihre Station

- Lassen Sie die Meldeleuchte für die Signale leuchten, indem Sie in einer AWL-Anweisung

die DB-Werte auf die konfigurierten Ein- und Ausgängen übertragen

..testen !

Page 8: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

8

Übung : Aufgaben zum Petrinetz - 1

Stellen Sie die Funktion eines Dreistufen-Automatikgetriebes durch ein Petrinetz dar.

Ein- und Ausgänge sind :

- Drehzahl n(max) überschritten

- Drehzahl n(min) unterschritten

- Fahrhebel auf N oder D (Leergang oder Fahrbetrieb)

- Fahrstufe 0 (Leerlauf)

- Fahrstufen 1-3

Wenn Sie das geschafft haben, können Sie noch einen weiteren Eingang einfügen :

- Kickdown (Taster bei Vollgas)

Die Diskussion über Vor- und Nachteile verschiedener Lösungen soll zeigen, wie gut man

an einer solchen grafischen Darstellung über Funktionen reden kann !

Page 9: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

9

Übung : Aufgaben zur Handshakekommuniaktion

Zur Steuerung einer Verpackungsanlage werden 3 SPS (A, B und C) eingesetzt.

Gerät A steuert neben der eigenen Mechanik auch das Timing der Anlage.

Hierzu wird ein Protokoll kommuniziert, das folgende Signale umfasst :

READY damit signalisieren B und C, daß sie betriebsbereit sind

START damit startet A die Geräte B und C (unabhängig voneinander)

BUSY damit melden B und C, daß sie in Betrieb sind (Mechanik arbeitet)

ENABLE damit wird Gerät A von außen (Bediener) beauftragt, die Gesamtfunktion

zu starten

Der Protokollablauf ist nun folgender (Textbeschreibung) :

Mit ENABLE=1 startet SPS A ihre Mechanikfunktion (dies ist kein Kommunikationssignal und

wird deshalb im Timing nicht dargestellt). Weiter startet A die beiden SPS B und C jeweils

mit START, aber nur, wenn beide mit READY ihre Betriebsbereitschaft melden. In B und C

werden die START-Signale von A im Sinne eines Handshakes jeweils mit dem Signal BUSY

quittiert. BUSY bleibt solange 1, bis die Mechanikfunktion der jeweiligen Station beendet ist

(= Funktionshandshake). Wenn ENABLE dann noch 1 ist, werden A und B erneut gleichzeitig

gestartet, sobald beide fertig sind (BUSY = 0).

1) Zeichnen Sie ein Timingdiagramm für alle Kommunkationssignale der Anlage.

2) Zeichnen Sie für alle beteiligten Geräte je ein Petrinetz, das die Funktion des Geräts

grafisch beschreibt.

Page 10: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

10

Praktikum : Programmieren mit Graph 7

Wählen sie eine Anlagenstation mit mindestens 2 Pneumatikzylindern.

Die Klemmenbelegung entnehmen Sie aus der Gesamtdokumentation im Portal unter

„digitale Fabrik“

1) Programmieren Sie nun folgenden Ablauf :

Nach Schalten des Wahlschalters auf AUTO sollen die Zylinder seriell auslaufen, also immer

einer nach dem Anderen: Z1 läuft aus bis zum Endschalter, dann zurück, bei Erreichen des

Ruhekontakts beginnt Z2 und so weiter…

2) Nun folgenden Ablauf :

Nach Schalten auf AUTO laufen die Zylinder gleichzeitig aus, jeder bei Erreichen seines

Endschalters zurück, wenn beide in Ruhe sind das Ganze von vorne …

3) Nun folgender Ablauf :

Wenn der Schalter auf MANU liegt, läuft Zylinder 1 ständig vor und zurück, wenn der

Schalter auf AUTO liegt, laufen beide wie in Aufgabe 2

Page 11: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

11

Praktikum :

Handshakekommunikation in der Prozessebene

(Kommunikation mit Profibus DP)

Ziel :

Anlagenfunktionen sollen durch den besprochenen Standardhandshake

(ready, start, acknowledge, busy, auftrag) gesteuert werden. Sie müssen sich in eine

bestehende Anlage einarbeiten und mit fertigen Standard-Komponenten umgehen.

Sie finden die Dokumentation der Schnittstellen und die Vorgaben für den Programmaufbau

in der Gesamtdokumentation der digitalen Fabrik auf http://portal.ts-muenchen.de

Aufgabe :

Dearchivieren sie das fertig konfigurierte Projekt : //r2d2/filer/at/hand15.zip

Die Master-SPS ist fertig programmiert. Sie führt am Profibus ein Programm aus, das alle

Stationen in Endlosschleife mit einem Handshake bedient.

Sie sollen eine Slave-Station nach Pflichtenheft an den Master konfigurieren und in pflichten-

heftkonformer Struktur (FBs für Kommunikation und Mechanikaktion nach Vorgabe,

Variablendefinition in den FB) eine Mechanikfunktion (Zylinder rein/raus) durchführen

lassen. Die Kommunikationssignale sollen wie in den Modulbeschreibungen angegeben an

den Meldeleuchten visualisiert werden (ohne ERROR).

Beachten Sie insbesondere auch den „Nullauftrag“ im Handshakeprotokoll !

Dokumentation finden Sie hier :

Standard-Handshakeprotokoll : Seite 12

Adressbelegung bei Profibuskommunikation : Seite 15

Programmstruktur, Bausteinadressen : Seiten 20 und 21

Klemmenbelegung der Module : ab Seite 22

Meldelampen und Profinet : Seite 17 und jeweils bei den Modulbeschreibungen ab S. 22

Page 12: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

12

Ein paar Testfragen zum Thema „Handshake“ :

1) Wie ist die Standardschnittstelle für die Modulkommunikation unter openTCP definiert ? Schauen

Sie in der Doku nach und geben Sie die Adressen für Start und Acknowledge an :

Start : …………………….. Acknowledge : ……………………………………..

2) Was ist an dieser Realisierung für den Standardhandshake der Anlage falsch ?

Start

/Start

/Action

3) Erklären Sie die unterschiedlichen Funktionen der Signale Acknowledge und Busy :

4) Welche Funktion hat im Standardhandshake der Nullauftrag ?

Ready

/Busy

Ack.

Busy

Action

/Ack

Page 13: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

13

Praktikum : Peripherie-Zugriff mit OPC-Client

Wir greifen mit einem OPC-Client auf die Tags eines OPC-Servers, der im Labornetz läuft, zu.

Der Server ist über integrierte TCP/IP-Treiber mit der Prozessebene, also den SPS der

Fertigungmodule, verbunden.

Hierzu starten sie zunächst den Simatic Manager, wählen an irgendeiner Station eine

Zylinderbetätigung aus, die keinen mechanischen Schaden bei beliebiger Betätigung

anrichten kann, und hängen im OB1 den entsprechenden Ausgang an das Merkerbit 100.7

Dann starten Sie den OPC-Client (Softing OPCua Client) :

Page 14: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

14

Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen. Der Server hat den DNS-Namen mes1, der OPC-Server arbeitet mit einem Binärprotokoll auf Port 4096. Der Server ist mit einer Userkennung geschützt, diese lautet opcuauser mit dem Passwort password. Im Message-Feld muß der geglückte Verbindungsversuch zu lesen sein. Im Fenster “Configuration Browse“ sehen Sie nun den Server und die Devices. Klicken Sie auf ein Device, und schauen Sie nach, in welchem numerischen Namespace-Knoten (ns= ?) der Zugriff erfolgen muß. Erzeugen Sie eine Subsciption (wissen Sie noch, was das ist ?). Darin ein neues Tag, diesem geben Sie als Tag-ID einen String : s=[Stationsname]MB100 (Den Stationsnamen können Sie in Configuration Browse nachschauen). Nun lesen sie erstmal den Wert, und dann schreiben Sie 128 (Bit 7 = 1) hinein. Bewegt sich die Mechanik ? Zweiter Versuch : Verwenden Sie von Zuhause aus den OPC-Client von Softing (in der Schule auf einen Stick). Damit greifen Sie auf den zweiten OPC-Server der Schule zu, der komfortablerweise das Browsen von Tags erlaubt, er benötigt keine Userkennung. Die URL aus dem Internet lautet : opc.tcp://62.245.200.166:4097 Steuern Sie den Vertikalarm über M100.7. Mit der Anlagenkamera können sie zuschauen, ob der Zugriff über das Internet klappt ! Wenn er sich schon bewegt, spielt gerade jemand anders ;-)

Page 15: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

15

Die Kamera finden sie im Portal unter digitale fabrik …

Page 16: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

16

Praktikum : Einführung in Visual Studio

Zeichen Sie zu jeder Aufgabe ein Struktogramm !!

1. Aufgabe :

Bauen sie das Projekt aus dem AT-Skript auf Ihrem Rechner nach.

Als Pfade geben Sie Ordner auf c:\ an, die sie hierzu unter Ihrem Namen erzeugen.

2. Aufgabe :

Erzeugen Sie ein neues Projekt, das die Eingabe eines Names erlaubt.

Es soll dann prüfen, ob es sich um Ihren Namen handelt, und wenn ja „hallo Meister“,

ansonsten „hallo Fremder“ ausgeben.

3. Aufgabe :

Erzeugen Sie ein neues Projekt, das die Eingabe eines Namens erlaubt. Es soll dann prüfen,

ob es sich um Ihren Vor- oder Familiennamen handelt, und dann „hallo Meister“, oder

„hallo Fremder“ ausgeben.

Die hierzu nötige ODER-Verknüpfung in der if-Anweisung suchen Sie bitte im Internet !

Page 17: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

17

Praktikum : Zugriff auf OPC aus Visual Basic

Sie sollen den direkten Zugriff auf Tags in den OPC-Devices ausprobieren.

Hierzu verschaffen Sie sich zunächst einen Überblick über die OPC-Sicht der Anlage.

Wir verwenden hierfür einen anderen OPCuA-Server, der auf mes2 installiert ist,

(KEPServerEX.V5 der Firma KepWare) dieser bietet den Vorteil, Tags browsen zu können.

1) Greifen Sie mit Ihrem OPC-Client (Softing) auf den OPCuA-Server auf mes2 zu.

Der Server läuft auf Port 4097, er benutzt ein Binärprotokoll, der Zugriff kann

anonym erfolgen (keine Userkennung).

2) Browsen Sie den Server, bis sie die Tags gefunden haben, die den Vertikalarm

steuern. Wir laden das Projekt „OPC_vertikal“ auf die Anlage, damit können Sie dann

den Dreharm über den Merker M100.7 steuern. Probieren Sie das manuell mit

dem graphischen OPC-Client aus.

3) Nun basteln Sie ein VB-Projekt, das den schreibenden Zugriff auf den Steuermerker

erlaubt. Die Syntax fürs Schreiben eines Tags aus VB lautet :

<Objectname>.WriteValue("<Server-URL>", "<Tag-Name>”, <Value>)

Alle Werte in spitzen Klammern müssen durch die korrekten Werte ersetzt werden.

Das Objekt erzeugen Sie wieder durch Ziehen des EasyUAClients in die Formgrafik, sie

können dann auch den Namen rauslesen. Den korrekten Tagname entnehmen Sie dem

grafischen OPC-Client, den Wert holen Sie aus einer Textbox.

Wert in Textbox schreiben -> Button drücken, der den Schreibvorgang auslöst.

Page 18: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

18

Übung : Kommunikation SPS und PC

Bei den beiden folgenden Aufgaben sollen eine SPS und ein Leitrechner (MES) miteinander

über das Standard-Handshakeprotokoll kommunizieren.

Das Gerät A schickt einen Auftrag (Wert = 2), und startet Gerät B, wenn dieses READY

meldet.

Dann läuft der Handshake ab.

Wenn Gerät B mit der relevanten Tätigkeit fertig ist, beginnt der Ablauf von vorne.

1. Aufgabe :

Gerät A ist der Rechner, Gerät B die SPS

Zeichen Sie Petrinetz und Struktogramm zur Realisierung !

2. Aufgabe :

In der Praxis Unsinn, als Übung aber gut : Gerät A ist die SPS, B ist der Rechner.

Zeichen Sie Petrinetz und Struktogramm zur Realisierung !

Page 19: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

19

Praktikum : SPS und PC als Handshakepartner

Beschäftigen Sie sich nochmals mit dem Standardhandshake. Sie sollen über direkten Zugriff auf die OPC-Tags eine Station mit einem Auftrag versorgen und dann protokollkonform starten. Es ist sicher hilfreich, nebenbei mit einem grafischen OPC-Client die Tags zu beobachten. 1. Aufgabe : Greifen Sie zunächst nur lesend auf die SPS zu. Schreiben Sie ein Programm,

das den Funktionsstatus der SPS anzeigen kann. 2. Aufgabe : Nun schreiben Sie eine vollständige Routine, die ein Modul protokollkonform

steuern kann. Gestalten Sie die Grafik so, daß komfortabel getestet werden kann, zeigen sie soviel wie möglich an !

Page 20: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

20

Praktikum : Verkettung in MES

Sie benötigen Visual Basic 2012 Express und die Klassenbibliothek tsmClassLib2015.

Dazu laden wir noch das S7-Musterprojekt MES_2016.zip auf die Anlage.

Struktogramme zeichnen !!

1. Aufgabe :

Erstellen Sie ein MES-Projekt, das auf Knopfdruck 2 Fertigungsmodule seriell koppelt.

Als Auftrag geben sie „Teil 1“ (siehe Gesamtdokumentation der Anlage im Portal) vor

Hierzu sollten sie den Logikentwurf unbedingt mit einem Struktogramm vorbereiten, damit

die Struktur klar ersichtlich wird !

2. Aufgabe :

Erstellen Sie ein MES-Projekt, das auf Knopfdruck 2 Fertigungsmodule parallel starr koppelt.

Die Aufträge sollen an Textfeldern einzugeben sein !

Hierzu sollten sie den Logikentwurf unbedingt mit einem Struktogramm vorbereiten, damit

die Struktur klar ersichtlich wird !

Page 21: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

21

Praktikum : RFID-Controller ansprechen

Sie arbeiten wieder unter Visual Studio 2012 mit der Klassenbibliothek tsmClassLib2015.

1. Aufgabe : Schreiben Sie ein Programm, das in einer Polling-Schleife den Zustand einer RFID-Antenne ausliest. Hier muß zunächst „fehler“ und bei Eintritt eines Tags in den Erkennungsbereich „ok“ angezeigt werden.

2. Aufgabe : Nun schreiben Sie eine vollständige Routine, die in der Lage ist, ein erkanntes

Tag zu lesen und zu schreiben. Schreiben Sie Testwerte drauf und lesen Sie

diese wieder.

3. Aufgabe : Nun schreiben Sie eine Routine, die in der Lage ist, eine Zeit in

der Anlage zu messen. Hierzu wird folgende Funktion benutzt :

An der Bandstation wird Dauerlauf für lose Kopplung beauftragt.

Nun prüft man, ob an einer Station ein Tag eintrifft.

Ist dies der Fall, wird die Uhrzeit auf das tag geschrieben.

Dann wird dem Band die Vereinzelung des Bauteils beauftragt.

An der nächsten Station geschieht das Gleiche, die Differenzzeit

zwischen den beiden Zeiten wird angezeigt (in Sekunden).

Tipp : In Vb gibt es umfangreiche Unterstützung zur Zeitmessung.

Suchen Sie im Web nach“Date“, und z.b. “now“ , “time“ oder Ähnlichem.

Page 22: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

22

Übung : XML-File schreiben

Sie sollen ein für unsere Anlage brauchbares XML-File schreiben, das die Bauteilvarianten für

alle 3 Bauteile, den Wert für das Auslieferlager, und eine Meldung „Fehler“ beinhaltet, die

als Zahl (0 oder 1) anzeigt, ob das Produkt mit der gesuchten ID vorhanden ist

Praktikum : manueller Aufruf von Webservices

Auf dem Server ERP2011 im Labornetz der Technikerschule liegen Stubs zur Auftragsvergabe

für die digitale Fabrik. Die Aufträge sind in einer Datenbank auf dem Server gespeichert.

Aktuell liegen 9 Aufträge vor, die jeweils eine Statusinformation error (0=ok), Bauteile-

information für die Produkte (teil1 bis teil3) und die Information, in welches Lager das

Bauteil verbracht werden soll (lager), beinhalten.

Die Aufträge sind durch eine laufende Nummer id gekennzeichnet.

Der Aufruf kann auch mit einem Browser erfolgen, das Format für den Aufruf eines

Webservice muß einer vollständigen URL entsprechen :

PROTOKOLL :// DNS-NAME : SAP / DOKUMENTNAME ? PARAMETER

Hier :

Protokoll : http

Servername : ERP2011 (in der Schule auch : 1.0.2.4 von außen : 62.245.200.166)

SAP(Port) : 91

Dokument(Stub) : get_auftrag.php

Parameter : id=n (mit n = 1 …9)

Rufen Sie den Webservice mit einem Browser (optimal : Firefox) auf !

Page 23: Übungen und Praktika zur Automatisierungstechnik Schuljahr ...portal.ts-muenchen.de/Dateien/at_15_16_ueb.pdf · Nun versuchen Sie, den Ignition OPC-Server im Labornetz zu erreichen.

23

Praktikum : XML-Daten lesen

1) Schreiben Sie in VB 2010 ein Forms-Projekt, das bei Eingabe einer Produkt-ID

in 4 Textfeldern die 3 Bauteile und das gewünschte Lager für das Produkt ausgibt.

Verwenden Sie zunächst die Schul-Klassenbibliothek mes2016.dll

2) Nun zeigen Sie , daß sie das auch selber können :

Sie sollen die Produktaufträge aus dem ERP-System ohne Nutzung der Schul-

Klassenbibliothek mes2016.dll lesen, mit den Werkzeugen von Microsoft.

Erzeugen Sie hierzu ein Fenster, das die Eingabe der Produkt-ID erlaubt,

sowie die Angabe eines gesuchten Bestandteils (z.b. „unten“)

Wenn das klappt, versuchen sie mal, den InnerText des root-Objekts zu lesen.