Dienstag, 14. August 2018

Blogeintrag Juli 2018

Verschiedene Sortier Algorithmen  

 

Insertion Sort


Insertion Sort ist ein einfacher Sortieralgorithmus, der für kleine Listen und grossteils sortierte Listen relativ effizient ist und oft als Teil von komplizierteren Algorithmen verwendet wird. Er funktioniert, indem Elemente aus der Liste nacheinander genommen und in ihrer korrekten Position in eine neue sortierte Liste eingefügt werden. In Arrays können sich die neue Liste und die übrigen Elemente den Platz des Arrays teilen.

Selection Sort

 


Selection Sort ist eine direkte Vergleichssortierung. Es ist auf Grossen Listen relativ ineffizient und schneidet im Allgemeinen schlechter ab als das ähnliche Insertion sort. Die
Selection Sort ist für ihre Einfachheit bekannt und weist auch Leistungsvorteile gegenüber komplizierteren Algorithmen in bestimmten Situationen auf.

Der Algorithmus findet den minimalen Wert, tauscht ihn mit dem Wert an der ersten Position und wiederholt diese Schritte für den Rest der Liste. Es macht nicht mehr als n Swaps und ist daher nützlich, wenn möglichst wenige Swaps gemacht werden sollen.

 

Bubble Sort 


 

Beim Bubble sort wird in einer Reihe von Elementen nach und nach jedes mit dem Nachbar verglichen und wenn nötig getauscht. Da nach jedem Durchlauf der grösste Wert ganz rechts ist, wird auch entsprechend nach jedem Durchlauf die Anzahl noch zu sortierender elemente um 1 verringert.

Shell Sort


shell Sort verbessert die Sortierung, indem es um mehr als eine Position nach dem anderen versetzt. Shell Sort ist optimal für Daten, mit nur wenigen Elementen die sich nicht in der richtigen Position befinden. In diesem fall werden die einzelnen Elemente weit entfernt sortiert und die Lücke zwischen den zu sortierenden Elementen schrittweise verkleinert, was die endgültige Sortierung viel schneller macht.


Merge Sort


Merge sort nutzt die Möglichkeit, bereits sortierte Listen in eine neue sortierte Liste zusammenzufassen. Es beginnt damit immer zwei Elemente zu vergleichen (d.h. 1 mit 2, dann 3 mit 4 ...) und tauscht sie aus, wenn das erste nach dem zweiten kommen sollte. Es führt dann jede der resultierenden Listen von zwei in Listen von vier zusammen, führt dann diese Listen von vier zusammen und so weiter; bis zuletzt zwei Listen in der endgültigen sortierten Liste zusammengeführt werden. dieser Algorithmus ist gut auch für grosse Listen anwendbar.

Heap Sort

 

Das Heap sort ist ein relativ komplexes verfahren das als verbesserung des Selection Sort angesehen werden kann. Der Algorithmus arbeitet mit einer Sruktur in welcher immer das Grösste (oder Kleinste) Element nach oben Verschoben und anschliessend Einsortiert wird.

Quick Sort

 

Um ein Array mit Quick Sort zu sortieren, wird ein Element ausgewählt, das Pivot genannt wird. Alle Elemente, die kleiner als der Pivot sind, werden davor bewegt und alle größeren Elemente werden dahinter verschoben. Die kleineren und größeren Unterlisten werden dann rekursiv sortiert. Quick Sort ist eine der beliebtesten Sortieralgorithmen, und in vielen Standardprogrammierbibliotheken verfügbar.Der wichtige Vorbehalt gegenüber Quicksort ist seine Worst-Case-Leistung. Diese tritt ein wenn als Pivot Element das Grösste oder Kleinste Element Verwendet wird, da in diesem Fall kein Vorteil erzielt wird.

 
Die Sortier Algorithmen sind unter diesem Link noch mit einer Kurzen Animation dargestellt.

Blogeintrag Juni 2018

 Sortieren


Sortieren bezieht sich auf das Arrangieren von Daten in einem bestimmten Format. Sortieralgorithmen geben einem die Möglichkeit, Daten in einer bestimmten Reihenfolge anzuordnen. Die häufigsten Befehle sind numerisch oder lexikographisch geordnet.Die Wichtigkeit des Sortierens liegt in der Tatsache, dass die Datensuche auf eine sehr hohe Ebene optimiert werden kann, wenn Daten in einer sortierten weise gespeichert werden. Die Sortierung wird auch verwendet, um Daten in besser lesbaren Formaten darzustellen. Hier einige Beispiele:
 

  • Telefonbuch - Das Telefonbuch speichert die Telefonnummern von Personen sortiert nach ihren Namen, so dass die Namen leicht gesucht werden können. 
  • Wörterbuch - Das Wörterbuch speichert Wörter in alphabetischer Reihenfolge, so dass die Suche nach einem Wort einfach wird.


In-Place-Sortierung und nicht-in-Place-Sortierung


Sortieralgorithmen erfordern möglicherweise zusätzlichen Speicherplatz für den Vergleich und die temporäre Speicherung von wenigen Datenelementen.

Diese Algorithmen benötigen keinen zusätzlichen Platz, und das Sortieren wird an Ort und Stelle oder beispielsweise innerhalb des Arrays selbst durchgeführt. Dies wird als In-Place-Sortierung bezeichnet. Bubblesort ist ein Beispiel für eine Sortierung vor Ort.Bei einigen Sortieralgorithmen benötigt das Programm jedoch einen Platz, der größer oder gleich dem der zu sortierenden Elemente ist. Sortierung, die den gleichen oder mehr Speicherplatz verwendet, werden nicht-in-Place-Sortierung genannt. Merge-sort ist ein Beispiel für nicht-in-Place-Sortierung.


Stable und not Stable Sortierung


Wenn ein Sortieralgorithmus nach dem Sortieren des Inhalts die Reihenfolge zweier Gleicher Werte, nicht ändert, wird er als Stable bezeichnet.
Wenn ein Sortieralgorithmus nach dem Sortieren des Inhalts die Reihenfolge
zweier Gleicher Werte, wird dies als not Stable bezeichnet.
Die Stabilität eines Algorithmus ist wichtig, wenn wir die Reihenfolge der ursprünglichen Elemente beibehalten möchten.



Adaptiver und nicht-adaptiver Sortieralgorithmus


Ein Sortieralgorithmus wird als adaptiv bezeichnet, wenn er bereits sortierte Elemente in der zu sortierenden Liste nutzt. Das heißt
, wenn Teile des Inhalts bereits Sortiert sind, berücksichtigen Adaptive Algorithmen dies und versuchen sie nicht neu zu ordnen.Ein nicht-adaptiver Algorithmus ist einer, der die bereits sortierten Elemente nicht berücksichtigt. Sie versuchen, jedes einzelne Element neu zu ordnen, um ihre Sortierung zu bestätigen. 

 

Blogeintrag April 2018

Touchscreen


Der grösste Teil der SPS Anlagen die wir Produzieren ist mit einem Touch Panel ausgestattet, um die Bedienung zu erleichtern. In diesem Blogeintrag möchte ich die verschiedenen Arten von Touchscreens erklären und Vor- wie auch Nachteile aufzeigen.



Resistive Touchscreens

Bildschirme, die an Geldautomaten, Supermarkt-Kassen oder anderen öffentlichen geräten verwendet werden sind in der Regel mit einem resistiven Touchscreen ausgestattet. Die resistive Touch-Technologie ist heute die am weitesten verbreitete Touch-Technologie. Ein resistiver Touchscreen besteht aus zwei dünnen flexiblen Metallschichten mit einer Lücke dazwischen. Die 2 Schichten werden von sogenannten Spacer Dots (Abstandspunkten) auseinander gehalten. Diese zwei Schichten stehen unter Strom. Bei Berührung berührt die obere flexible Schicht die untere, wodurch der elektrische Strom unterbrochen wird. Das Gerät bemerkt dies und erkennt den Kontaktpunkt durch die Änderung des elektrischen Flusses, An der Stelle entsteht ein Spannungsteiler. Natürlich geschieht das alles mit Enormer Geschwindigkeit.Ein Resistives Touchscreen ist eine der günstigsten Touch-Technologien. Ein resistiver Touchscreen reagiert auf Druck und es ist egal, welches Objekt den Druck anwendet. Ein Finger, ein Handschuh oder ein Stift funktionieren alle. Wischen und Multitouch funktionieren nicht, da diese Technologie nur einen Berührungspunkt registriert. Deshalb funktioniert ein resistiver Touchscreen nicht auf Smartphones oder Tablets. Das eigentliche Display befindet sich immer hinter den Touch-Layern. Aber diese Schichten sind nicht ganz so klar wie Glas. Aus diesem Grund sind Geldautomaten und Self Chekout Kassen immer ein wenig verschwommen. 
Vorteile

  • Man kann das Touchscreen mit fast allem bedienen
  • Geringste Kosten
  • Energieeffizient
  • Beständig gegen Oberflächenverunreinigungen und Flüssigkeiten - Staub, Öl, Fett, Wasser usw.

Nachteile

  • Die Bildschärfe ist nicht so groß wie bei anderen Technologien
  • Äußere Berührungsschicht ist anfällig für Beschädigung - Kratzen, Stoßen mit scharfen Gegenständen usw.



Kapazitive Touchscreens

Lange Zeit war kapazitiver Touch die zweitbeliebteste Touch-Technologie. Ein kapazitiver Touchscreen verwendet eine transparente Elektrodenschicht. Diese Schicht wird auf eine Glasplatte gelegt und mit einer Schutzschicht bedeckt. Wenn ein Finger den Touchscreen berührt, wird ein Teil der elektrischen Ladung vom Bildschirm zum Benutzer übertragen. Sensoren in allen vier Ecken des Bildschirms erkennen die Abnahme des elektrischen Stroms. Der Controller bestimmt dann den Berührungspunkt. Kapazitive Touchscreens können nur aktiviert werden, wenn sie von menschlicher Haut oder einem Stift mit elektrischer Ladung berührt werden. Trotz seiner langfristigen Beliebtheit wird der kapazitive Touchscreen nun durch projizierte kapazitive Touchscreens ersetzt. 

Vorteile
  • Große Bildschärfe (besser als resistive Touchscreens)
  • Haltbarer Bildschirm
  • Ausgezeichnete Beständigkeit gegen Oberflächenverunreinigungen und Flüssigkeiten - Staub, Fett und Wasser
  • Hohe Kratzfestigkeit

Nachteile
  • Funktioniert nur mit dem bloßen Finger oder einem speziellen kapazitiven Stift 
  • Empfindlich gegen EMI (Elektromagnetische Interferenz) und RFI (Radio Frequency Interference)


Projizierte kapazitive Touchscreens (PCAP)

Ein projizierter kapazitiver Touchscreen funktioniert sehr ähnlich wie herkömmliche kapazitive Touchscreens. Sie bieten zwei große Vorteile. Neben dem bloßen Finger arbeiten sie auch mit Operationshandschuhen oder dünnen Baumwollhandschuhen. Und sie machen Multi-Touch möglich. Multi-Touch bedeutet, wenn zwei Finger gleichzeitig den Touchscreen aktivieren. Ein projiziert-kapazitiver Touchscreen besteht aus einer Glasscheibe mit eingebetteten transparenten Elektrodenfilmen und einem IC-Chip. Dies erzeugt ein dreidimensionales elektrostatisches Feld. Eine Veränderung der elektrischen Ströme wird bemerkt, wenn ein Finger den Bildschirm berührt. Ein Berührungspunkt wird dann erkannt. Projizierte kapazitive Touchscreens werden mehr und mehr eingesetzt. Sie werden im Allgemeinen aufgrund ihrer Haltbarkeit gegenüber herkömmlichen kapazitiven Touchscreens gewählt.
Vorteile

  • Hervorragende Bildschärfe
  •  Kratzfester als kapazitiver Touchscreen
  • Beständig gegen Oberflächenverunreinigungen und Flüssigkeiten 
  • Multi-Touch möglich
Nachteile
  • Empfindlich gegen EMI (Elektromagnetische Interferenz) und RFI (Radio Frequency Interference)
  • Bedienbar nur mit einem freiliegenden Finger, dünnen OP-Handschuhen oder Baumwollhandschuhen

 


Infrarot-Touch Screens

Im Gegensatz zu anderen Technologien überlagern Infrarot-Touchscreens den Bildschirm nicht mit einer zusätzlichen Ebene. Diese Arten von Touchscreens basieren auf der Technik der Lichtstrahlunterbrechung. Ein Infrarot-Touchscreen verwendet Infrarotsender und -empfänger. Sie erzeugen ein unsichtbares Raster von Infrarot-Lichtstrahlen über den Bildschirm. Kein zusätzlicher Film oder Schicht bedeutet die bestmögliche Bildqualität und Klarheit. Ein Sensor erkennt die Berührung wenn ein Objekt die Lichtstrahlen unterbricht.


 

Vorteile
  • Beste Bildqualität aller Touch-Technologien
  • Unempfindlich gegen Kratzer auf der Oberfläche
Nachteile
  • Fett, Staub oder andere Verunreinigungen können den Lichtstrahl blockieren
  • Empfindlich gegen Wasser, Schnee und Regen

  •  Kann gegenüber Umgebungslicht empfindlich sein
  • Teurer

 

Optische Touchscreens

Optische Touchscreens verwenden mehrere optische Sensoren, um die Berührung zu erkennen. Die Sensoren erkennen die Berührung tatsächlich, kurz bevor der Benutzer physischen Kontakt mit dem Bildschirm herstellt. Dies bedeutet, dass Sie den Bildschirm nicht einmal vollständig berühren oder ihn sehr leicht anfassen können. Da optische Touchscreens keine elektrischen Ströme verwenden, können sie mit jedem Objekt aktiviert werden. Ein Finger, ein behandschuhter Finger oder ein Stift sind alles funktionierende Eingabegeräte für einen optischen Touchscreen. 

Vorteile
  • Erlaubt Multi-Touch
  • Kein Druck nötig, um eine Berührung zu registrieren
  • man kann ein beliebiges Objekt verwenden
Nachteile
  • Direkte Sonneneinstrahlung kann den Touchscreen beeinträchtigen



Montag, 2. April 2018

Blogeintrag März 2018

HMI

Da ich im Moment in der Schule das Thema HMI (Human Machine Interface) bearbeite, werde ich diesen Blog darüber schreiben.
Sehr einfach ausgedrückt ist das HMI eine Anzeige wie auch eine Bedienstation für eine SPS. Man kann mit einem Panel auf gewisse Variabeln einer Steuerung zugreifen und diese verändern oder abfragen.

Gestaltung

Ein wichtiger Teil des HMI ist die Gestaltung. Sie sollte möglichst benuzerfreundlich sein wie auch gut verständlich.

Im vorliegenden Beispiel wurde eine Seite mit einigen Unterteilungen erstellt. Die ganze Seite besteht eigentlich aus farbigen Rechtecken, Grafiken und unsichtbaren Schaltflächen.
Als erstes wurde eine Vorlage erstellt, damit nicht auf jeder Seite die gleichen Schritte ausgeführt werden müssen. Auf dieser Vorlage wurden als erstes die zwei blauen Balken (rechts und oben) erstellt, wie auch der Hintergrund gewählt. Als Nächstes wurden die Icons als Grafiken (weiss und schwarz) eingefügt und mit einer unsichtbaren Schaltfläche versehen, welche auf das dazugehörige Bild verweist. Dann wurde unten rechts die Uhr als vorgefertigtes Bauteil eingefügt und farblich angepasst. Als Letztes wurde noch der hellblaue Balken oben in der Mitte generiert.

Design Beispiel
Nach dem Abschliessen der Vorlage wurde dann das eigentliche Bild erstellt und in den Einstellungen die erstellte Vorlage ausgewählt. Nun wurde die Seite individuell angepasst. Zuerst wurde mit einem Textfeld der Titel rein geschrieben. Als nächstes hat man die Navigation rechts generiert und am Schluss wurden noch die drei weissen Rechtecke in der Mitte eingefügt, um eine Unterteilung zu generieren.




Aufbau

Das ganze Visualisierungs-Projekt basiert auf verschiedenen Bildern, welche in beinahe unbegrenzter Anzahl erstellt werden können. Innerhalb dieser Bilder muss eine Navigation aufgebaut werden, welche aus Buttons besteht, die andere Bilder aufrufen.
Auf den verschiedenen Bildern können dann Eingabefelder oder Anzeigen platziert werden. Ein Ein- respektive Ausgabefeld greift immer auf eine Variable zu, so kann ein Istwert angezeigt, oder auch ein Sollwert eingegeben werden. Wenn nur Zustände angezeigt werden sollen, kann man mit einem Element -zum Beispiel einem Kreis- durch eine Anzeigeeinstellung die Farbe oder auch die Sichtbarkeit verändern, auch hier wird auf eine Variable zugegriffen.

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.