Strukturierter Text.

Slides:



Advertisements
Ähnliche Präsentationen
Schutzvermerk nach DIN 34 beachten 05/01/14 Seite 1 XSoft_d.
Advertisements

Schutzvermerk nach DIN 34 beachten OPC- Zugriff durch mehrere PCs.
10. Grundlagen imperativer Programmiersprachen
Schutzvermerk nach DIN 34 beachten Ethernet Anhang.
Schutzvermerk nach DIN 34 beachten MI4 – Rezepte.
MODULA-2.
Schutzvermerk nach DIN 34 beachten Recipe management.
Variablenzuordnung 6-Apr-17, Seite 1.
Schutzvermerk nach DIN 34 beachten 02/04/15 Seite 1 Grundlagen XSoft.
Schutzvermerk nach DIN 34 beachten S40 Fahrplan zur Programmierung.
Schutzvermerk nach DIN 34 beachten Abgeleitete Datentypen.
Schutzvermerk nach DIN 34 beachten 16/04/15 Seite 1 A200 XSoft für Umsteiger.
Schutzvermerk nach DIN 34 beachten CANopen 16-Apr-15, Seite 1 Kopplung XC100-XC100.
Schutzvermerk nach DIN 34 beachten 20/04/15 Seite 1 XSoft.
Schutzvermerk nach DIN 34 beachten Einführung S40.
Schutzvermerk nach DIN 34 beachten 24/04/15 Seite 1 A200 XSoft für Umsteiger.
Schutzvermerk nach DIN 34 beachten 25/07/15 Seite 1 Grundlagen XSoft.
Einführung in Web- und Data-Science Grundlagen der Stochastik
8 Zündung/Motormanagement
Markus Lips März 2017 ETH-Vorlesung, 6. Sem. Agrarwissenschaft BSc Agrartechnik II.
Rehwild die richtige Altersbestimmung
Wissensmanagement im Zeitalter von Digitaler Transformation
Aktuelle Aspekte des Europäischen Zivilprozessrechts
Einführung in die Benutzung des Einkaufportals der Eckelmann AG
Wer wir sind! Ihr S-Campus-Team direkt im Campus Center. Sven Deussing
Vorlesung Wasserwirtschaft & Hydrologie I
Definition/Allgemeines:
ɣ brain to write Erklärung des Rauschens Experimente
Einstiegsauftrag: Erstelle ein Theorieblatt zu:
Experimentelle Untersuchung von Hochvolt FGL-Ansteuerung
Forschung trifft Schule CERN Summer School Auffrischung: Das Standardmodell im Schulunterricht Philipp Lindenau u. Michael Kobel CERN |
Fraktale Maple D =
Christoph Lass, KN-NAS Theorie
Fraktale D =
Fraktale D =
WIR ZEIGEN UNSEREN PROTEST Vorsitzender von ver.di
MEDIZINISCHE HOCHSCHULE HANNOVER
von Duisburg bis Hattingen
Einführung in Web- und Data-Science
Der betriebliche Leistungsprozess
TAPI Implementierung einer Schnittstelle zu Telekommunikationsanlagen und eine Zuordnung der Anrufer zu bestehenden Kundendatensätzen Maximilian Marvin.
Logik in der Informatik III
WIEDERHOLUNG JAHRESSTOFF 3. Klasse
Algorithmen und Datenstrukturen
Der betriebliche Leistungsprozess
Kinetik Elementarreaktionen:
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
Very Interesting Topic M. Mustermann, M. Musterfrau
EINLADUNG zur Ausstellung in der Volksschule Markt St. Martin
Der Zielfindungs-Stern
igkg-schwyz Kauffrau / Kaufmann EFZ üK3a - BiVo 2012
Nennformular / Summe aller Gebühren in €: Name des Reiters:
Nennformular (Nennschluss: )
Nennformular (Nennschluss: )
Haus 7: Gute Aufgaben Modul 7.5 „Inter-Netzzo“ Im Kopf unterwegs zwischen Netzen, Schachteln und Würfeln Kommentar zu Folie 1: Bevor ich Ihnen einen.
Managemententscheidungsunterstützungssysteme (Ausgewählte Methoden und Fallstudien) (Die Thesen zur Vorlesung 2) Thema der Vorlesung Grundlegenden.
Crunchy Chicken Burger
Resolutionsentwurf Südakriba 89/09 Bereitstellung und Schutz der Ressource Wasser Der UNEP Rat, legt dringend nahe, ein Menschenrecht auf Wasser einzuführen,
ZUMTOBEL TECTON 1/36W T26 LDE WH Beschreibung
ZUMTOBEL TECTON 2/54W T16 WH Beschreibung
DELTALIGHT REAKTOR 25 WW G G Beschreibung
Asthma Kopfzeih.
IVA Champagne-Micro vials
Behindertenberatung von A bis Z
AUSTRIA´s ANGIOGRAPHY and PCI - CENTRES 2015
Hochsprung ♛ ♝ ♛ ♟ ♟ ♟ Anzeigetafel Protokollführung u.
Organigramm AUGUST KRAUSE Buchhaltung BRIGITTE OTTO VP Finanzen
situationsorientiert sozialpflegerisch
Strukturierung der Stakeholder nach Projektphasen: Kapitel 4.2
Algorithmen und Datenstrukturen
 Präsentation transkript:

Strukturierter Text

in der SPS-Welt nicht so bekannt (neueste Sprache) Strukturierter Text textuelle Sprache Hochsprache PASCAL-ähnlich in der SPS-Welt nicht so bekannt (neueste Sprache) von allen Sprachen am besten geeignet zur bedingten Programmierung und zum Programmieren von Schleifen. Strukturierter Text Die Automatisierer kommen traditionell oft aus der Elektrotechnik und der Digitaltechnik und fühlen sich in den klassischen SPS-Sprachen KOP und FBS recht wohl. Ihnen macht z.T. schon die Notwendigkeit der Datentypisierung und -deklaration zu schaffen, so daß Hochsprachenelemente wie Schleifen großes Mißtrauen hervorrufen, sind sie in der Arbeitweise der SPS ja auch nicht ganz unproblematisch. Hochschulabgänger jedoch sind in den Sprachelementen des ST zuhause und den Umgang mit ähnlichen Sprachen wie PASCAL und C gewohnt. Ihnen wiederum macht eher die zyklische Programmabarbeitung der SPS zu schaffen; ebenso die in der SPS-Technik selbstverständliche Online-Änderung und Diagnose.

Arithmetische Operatoren AWL,FBS,KOP ST ADD + SUB - MUL * DIV / MOD Arbeiten auf ANY_NUM Arithmetische Operatoren Sowohl die Operatoren für numerische Variablen als auch die auf der nächsten Seite beschriebenen Vergleichsoperatoren geben sich, was den Schreibaufwand angeht, nicht viel. Deren Anwendung ist reine Gewöhnungssache. Durch die Zusammenfassung mehrerer Ausdrücke in einer Befehlszeile wirken die Programmzeilen in ST allerdings immer etwas kompakter als die entsprechenden Umsetzungen in AWL, bei der ja jedes Statement eine neue Zeile belegt. Persönliche Anmerkungen:

Vergleichsoperatoren AWL,FBS,KOP ST EQ = NE <> GE >= GT > LE <= LT < Arbeiten auf ANY Vergleichsoperatoren Persönliche Anmerkungen:

Hierarchie der Operatoren AWL LD I1 AND I2 OR (I3 AND I4 ) ST Ergebnis ST Ergebnis:= I1 AND I2 OR I3 AND I4; optional Ergebnis:= (I1 AND I2) OR (I3 AND I4); Hierarchie der Operatoren Im Strukturierten Text gelten die vielleicht noch aus der Grundschule für die Grundrechenarten bekannten Regeln: Punktrechnung vor Strichrechnung“ und „UND-Verknüpfung vor ODER-Verknüpfung“. Auf diese Weise lassen sich sehr kompakte Ausdrücke erstellen, die dennoch wesentlich übersichtlicher bleiben als die Entsprechungen in der Anweisungsliste. Persönliche Anmerkungen:

Verzweigungen I AWL IF variable > 100 THEN a:=a-1; LD variable GT 100 JMPC groesser EQ 100 JMPC gleich LD a ADD 1 ST a JMP END groesser: SUB 1 gleich: ST ergebnis END: AWL IF variable > 100 THEN a:=a-1; ELSIF variable = 100 THEN ergebnis:=a; ELSE a:=a+1; END_IF; ST Verzweigungen I Bei den Verzweigungen kann die Hochsprache ST ihre Stärken ausspielen. Sowohl bei den IF THEN ELSE-Konstrukten als auch bei den sehr mächtigen CASE-Anweisungen lassen sich auch komplexe Auswahlkriterien schnell und übersichtlich ausdrücken. Persönliche Anmerkungen:

Verzweigungen II AWL CASE variable OF 1: a:=a+1; 2,3,4: a:=a+2; LD variable EQ 1 JMPC fall_1 EQ 2 OR (variable EQ 3 ) EQ 4 JMPC fall_2 LD a ADD 1 ST a JMP END fall_1: fall_2: . AWL CASE variable OF 1: a:=a+1; 2,3,4: a:=a+2; 5..100: a:=a+3; ELSE a:=0; END_CASE; ST Verzweigungen II Die CASE-Anweisung ermöglicht elegante Fallunterscheidungen, die man in AWL oder auch den grafischen Sprachen nur mit Geduld und relativ großem Aufwand nachbilden kann. Persönliche Anmerkungen:

feld_a:ARRAY[1..10] OF INT; feld_b:ARRAY[1..10] OF UINT; Schleifen I FOR VAR feld_a:ARRAY[1..10] OF INT; feld_b:ARRAY[1..10] OF UINT; feld_c:ARRAY[1..10] OF USINT; END_VAR FOR variable := 1 TO 10 DO BY 1 feld_a[variable]:=100; feld_b[variable]:=50; feld_c[variable]:=3; END_FOR; Schleifen I Wie andere Hochsprachen auch bietet ST verschiedene Sprachelemente für die Schleifenprogrammierung; eine Tatsache, die bei SPS-Programmierern zunächst einmal die Alarmglocken läuten läßt. Schleifenprogrammierung bedeutet schließlich, daß innerhalb der ohnehin schleifenförmingen (zyklischen) Programmabarbeitung der SPS eine weitere Schleife abgearbeitet wird, die u.U. verhindert, daß die SPS in ihrem Arbeitsablauf nach angemessener Zeit die E-/A-Signale auffrischt und ihre systeminternen Abläufe abarbeiten kann. In solchen Fällen kann es sein, daß der „Watchdog“ der SPS zuschlägt und die Steuerung anhält. Die FOR-Schleife eignet sich besonders für Initialisierungsaufgaben, die im Normalfall einmal am Programmanfang abgearbeitet werden. Persönliche Bemerkungen:

Schleifen II WHILE a <= 100 DO a:=a*2; b:=b+1; c:=c+5; END_WHILE; Die Zykluszeit-Falle Schleifen II Gerade bei den beiden Schleifenkonstrukten „WHILE DO“ und „REPEAT UNTIL“ ist in der SPS-Programmierung größte Vorsicht geboten. Hier kann, im Gegensatz zur „FOR NEXT“-Schleife, nicht vorhergesagt werden, nach welcher Zeit die Ende-Bedingung für die Schleife erfüllt ist. Persönliche Bemerkungen: REPEAT a:=a+1; b:=b*2; UNTIL a=100 OR b=50 END_REPEAT; REPEAT UNTIL

: Zykuszähler mit Schwellenabfrage Aufgabe Programmierung mit Moeller XSoft : Zykuszähler mit Schwellenabfrage Aufgabenblatt Schreiben Sie ein Programm, das die Anzahl der durchlaufenen Programmzyklen mitzählt und in dem bei Erreichen der Schwellenwerte 100, 200, 300, 400 und 500 jeweils ein Merker auf TRUE gesetzt wird. Bei 600 sollen alle Merker und der Zykluszähler wieder zurückgesetzt werden. Bitte schreiben Sie das Programm in der Sprache ST. Erstellen Sie eine kleine Visualisierung zur Anzeige der Schwellenwerte. A100_ Auf1. ppt

Lösung Lösung Programmierung mit Moeller XSoft Ein Lösungsvorschlag (natürlich läßt sich die Aufgabe auch mit IF THEN lösen): Eine weitere, pfiffige Lösung:

: Erweiterung Zykluszähler Aufgabe Programmierung mit Moeller XSoft : Erweiterung Zykluszähler Aufgabenblatt Erweitern Sie das in Aufgabe A100-WS7 geschriebene Programm zum Zählen der Programmzyklen. Nutzen Sie den Ausgang FRQ2 (2Hz) des globalen Funktionsbausteins „Blinkfrequenzen“, um einen Merker „Overflow“ bei einer Zahl an Programmzyklen von größer 500 zum Blinken zu bringen. Stellen Sie dieses Blinken auch in der zu Übung A100_WS7 erzeugten Visualisierung dar. Viel Erfolg ! Vorschlag für die Visualisierung: 100 200 300 400 >500 Blinkt mit 2Hz

Lösung Lösung Programmierung mit Moeller XSoft Und das können Sie einfach so lösen.... ...oder so: