Mittwoch, 21. Februar 2018

Blogeintrag Februar 2018

2-/3-/4-Draht Messung


Ich habe diesen Monat für einen Test mit verschiedenen Messervarianten einen Messaufbau gemacht und ausgetestet. Ich habe für den Test einen 100 Ohm Widerstand verwendet, um einen Pt100 Messwiderstand bei 0 C° zu simulieren. Anfangs hatte ich Schwierigkeiten mir den Aufbau in echt vorzustellen, mit der Zeit war das aber kein Problem mehr.


Versuchsaufbau


Der Test basierte auf einer Siemens CPU (315) mit einem Vipa Eingangsmodul und einem Vipa Profibus DP Slave. Als Leitungswiderstand (Rl) habe ich 100 Meter Kupferlitze angenommen, was 2,2 Ohm entspricht.

Versuchsaufbau

Schema 4-Draht
















Messung


Das Ziel der Messung war herauszufinden, ob und wie die verschiedenen Messungen mit den vorliegenden Komponenten funktionieren. Ich habe für die Messung eine entsprechende Hardwarekonfiguration im Siemens TIA erstellt und bei dieser die Eingänge überwacht.


2-Draht Messung


Bei einer 2-Draht Messung wird der Sensor, in diesem Fall ein Pt100, direkt und ohne Berücksichtigung der Leiterwiderstände erfasst. Das kann je nach Entfernung von SPS und Sensor einen bedeutenden Unterschied machen. Bei dem Beispiel meines Tests (100 Meter Litze 0.75) würde es 10.16 C° ausmachen. Diese Abweichung kann man mit dem Eichen umgehen, jedoch beeinträchtigen auch Temperaturunterschiede den Leitungswiderstand.


3-Draht Messung


Im Falle einer 3-Draht Messung wird der Leitungswiderstand einer Leitung gemessen und anschliessend verdoppelt, um beide Leitungen zu kompensieren. Um den Leitungswiderstand zu messen, wird bei Kontakt 4 ein Signal
Schema 3-Draht
ausgegeben und bei Kontakt 2 dasselbe gemessen. Das Signal muss relativ klein sein, damit es nicht über dem Pt100 abfällt. Eine Abweichung des Widerstands der zweiten Leitung wird nicht berücksichtigt.
Bei meiner Messung war leider eine 3-Draht Messung softwaretechnisch nicht möglich, somit musste ich die gleichen Anschlüsse benutzen wie bei der 4-Draht Messung. Da bei dieser Einstellung der Widerstand nicht verdoppelt wurde, ergab sich auch hier eine Abweichung, allerdings nur 5.8 C°.










4-Draht Messung

Schema 4-Draht

Am präzisesten ist eine 4-Draht Messung, da bei dieser der Widerstand beider Leitungen separat gemessen wird. Das Prinzip ist das gleiche wie bei der 3-Draht Messung, nur findet hier auch eine Messung zwischen Kontakt 5 und Kontakt 1 statt. Da nun beide Leitungswiderstände kompensiert waren, ergab sich eine Abweichung von annähernd 0 C°.

Donnerstag, 1. Februar 2018

Blogeintrag Januar 2018

SCL

Wir behandeln im Moment in der Berufsschule das Thema SCL. SCL (Structured Control Language) oder auch ST(Structured Text) ist eine Programmiersprache für speicherprogrammierbare Steuerungen (SPS). Da wir bisher mit FUP gearbeitet haben, ist das ein relativ grosser Schritt.


Anwendung

SCL löst immer mehr AWL (Anweisungsliste) zum Realisieren von automatisierten Aufgaben ab. Ein ausschlaggebender Faktor für die Umstellung ist die S7 1200 von Siemens, welche nur noch FUP, KOP und SCL unterstützt und damit AWL vernachlässigt.

Funktionen

Zuweisung

Wenn eine Variable im Wert geändert werden soll, benötigt man eine Zuweisung ":=". Möchte man nun zum Beispiel die Variable "iWert1" um 10 erhöhen, geschieht das folgendermassen:

#iWert1 := #iWert1 + 10;

Es muss darauf geachtet werden, die Zeile mit einem Semikolon ";" abzuschliessen. Ähnlich funktioniert es auch beim übertragen des Werts einer anderen Variable auf "iWert1":

#iWert1 := #iWert2;

IF-Statement

Bei einem IF-Statement wird eine Ja/Nein Bedingung abgefragt und je nach Antwort ein Befehl ausgeführt.
IF #bRegen Then
     #iWert1 := #iAufDasSofaLiegen;
ELSE
     #iWert1 := #iMotorradStarten;
END_IF;













CASE-Statement

Bei einem CASE-Statement wird eine Bedingungsvariable (zum Beispiel iSchrittkette) generiert. Danach werden einzelne Anweisungen einem Wert der Bedingungsvariable zugewiesen. Wenn die Steuerung gestartet wird, wird die Bedingungsvariable abgefragt und der jeweilige Befehl ausgeführt.

CASE #iSchrittkette OF
     10  :  #iWert1 := #iWert1 + 10;
     20  :  #iWert1 := #iWert1 + 20;
     30  :  #iWert1 := #iWert1 + 30;
     ELSE #iWert1 := #iWert1;
   END_CASE;

FOR-Statement

Ein FOR-Statement beschreibt eine Schleife, die die darin enthaltenen Aufgaben solange macht, bis die dazugehörige Zählervariable einen gewissen Wert erreicht hat. Dieser Wert wird bei jedem abgeschlossenen Durchlaufen um einen festgelegten Wert erhöht, kann aber auch von anderen Befehlen korrigiert werden.

FOR i := 0 TO 499 BY 1 DO
     ZAHL := ZAHL+1;
     D[i] := ZAHL;
END_FOR;

WHILE-Statement

Das WHILE-Statement ist eine Schleife, die ausgeführt wird, während eine Bedingung aktiv ist. Sobald diese Bedingung nicht mehr aktiv ist, wird die Schleife beendet.

WHILE #bStartStop DO
     #iWert1 := #iWert1 + 1;
END_WHILE;

REPEAT-Statement

Das REPEAT-Statement ist sehr ähnlich aufgebaut wie das WHILE-Statement. Der Unterschied ist, dass die Bedingung, welche erfüllt werden muss, erst am Ende abgefragt wird. Das hat zur Folge, dass der Befehl mindestens einmal ausgeführt wird.

REPEAT
     #iWert1 := #iWert1 + 1;
UNTILL #bStartStop
END_REPEAT;

Blogeintrag Dezember 2017

Unihockey


Da ich seit nun gut 11 Jahren den Sport Unihockey betreibe und nun auch als Trainer für die C-Junioren angefangen habe, werde ich diesen Blogeintrag darüber schreiben.
Unihockey ist eine sehr junge Sportart, welche 1970 entwickelt wurde, die Gründungsländer waren damals Schweden, Finnland und die Schweiz. Die Sportart ist momentan extrem im Kommen und ist in der Schweiz seit Ende 2016 die zweitgrösste Teamsportart. 
Statistik Swiss Unihockey

Grundlagen

Unihockey gibt es auf 2 Arten: Auf dem Grossfeld und auf dem Kleinfeld. Auf dem Kleinfeld wird mit 3 Spielern pro "Linie" gespielt. Eine Grossfeld "Linie" besteht aus 5 Spielern. Diese "Linien" können beliebig oft ausgetauscht werden. Normalerweise bleibt eine "Linie" um die 90 sek auf dem Feld und wird dann von der nächsten abgelöst. Dieser Wechsel kann fliegend oder auch bei einer Unterbrechung gemacht werden, allerdings ist zu beachten, das der Spielbetrieb nicht angehalten wird. Bei einem fliegenden Wechsel muss somit darauf geachtet werden, dass man entweder selber in Ballbesitz ist oder der Gegner in der eigenen Hälfte unter Druck ist. Bei einer Unterbrechung mit eigenem Freistoss oder Bully kann man ohne Stress wechseln. Wenn das gegnerische Team aber Freistoss hat, müssen sie nicht auf einen Anpfiff oder ähnliches warten, sondern können den Freistoss direkt ausführen. Ein Wechselfehler, bei dem für kurze Zeit 6 Spieler auf dem Platz stehen, wird mit einer 2 Minuten Strafe geahndet.

Die Spieler dürfen den Ball nur mit dem Stock ins gegnerische Tor bewegen, Tore mit dem Fuss zählen nicht. Allerdings ist es seit etwa 2 Jahren erlaubt, Pässe mit dem Fuss zu spielen.
Der einzige Spieler, der den Ball in die Hände nehmen darf, ist der Torhüter, das aber auch nur im Torraum.
Grossfeld

Strafen

Bei den Strafen unterscheidet man je nach Situation und Härte zwischen einfachen Freistössen, Penalty, 2/5/10 Minuten Strafe und Matchstrafe (variiert). Ein Freistoss wird ausgeführt, wenn der Ball über die Bande geht oder bei einfachen Vergehen. Für härtere oder wiederholte Vergehen wird zum Freistoss zusätzlich eine 2/5 Minuten Strafe ausgesprochen. In den 2/5 Minuten, die der jeweilige Spieler auf der Strafbank sitzt, spielt das Team mit einem Spieler weniger. Eine 10 Minuten Strafe kann nur zusammen mit einer 2 Minuten Strafe ausgesprochen werden. Es ist eine persönliche Strafe und betrifft somit das Team nur bedingt, da es nach Ablauf der 2 Minuten wieder komplett ist, der betroffene Spieler muss allerdings für 10 Minuten auf der Strafbank bleiben. Wenn ein Spieler an einer sicheren Torchance regelwidrig gehindert wird, wird ein Penalty gepfiffen. Beim Penalty sind nur ein Spieler und der gegnerische Torwart auf dem Feld. Der Spieler versucht nun nach dem Anpfiff, den Ball ins Tor zu bringen, dafür startet er in der Mitte und darf dann beliebig schnell und beliebig nahe ans Tor gehen und schiessen. Dabei darf sich der Ball ausschliesslich vorwärts bewegen, was einen Nachschuss ausschliesst.