Der Realisierungsentwurf und die Tools PRAP und PreCom
In der Abbildungen 2-1 und 2-2 (siehe Analyse) ist die Darstellung für den Nutzer des Teilprogramms PRAP (= technologisch orientierter, rechnergestützter Entwurf) zu erkennen. Die tabellarische Erfassung der Transformationen zwischen Prozessgrößen und Signalen der Steuer- und Leiteinrichtung geschieht in den Variablenlisten. Zu jedem PRAP, also binärem Teilprozeß, gibt es eine P-Variablen- und eine O-Variablenliste, worin die Funktionen der Eingabe- und Ausgabe-Einrichtung enthalten bzw. geplant sind. Zu jeder Variablen muss eine Funktion definiert werden, die sie im Rahmen des Steuerungsablaufes zu erfüllen hat. Die P-Variablen sind natürlich alle zweiwertig, also binär. Aber es ist möglich, z.B. eine Vergleichsfunktion zu fordern, deren Ergebnis eine Ja/Nein-Aussage ist. Andererseits können Flanken, Zeitglied- oder Zähler- Ende ausgewertet werden. Die O-Variablen können ebenfalls außer 0-1-Bit auch bestimmte Funktionen erfüllen. Arithmetische Funktionen (+, -, *, /) oder Zeit- und Zählglieder können ebenso in Auftrag gegeben werden. Die Programmgestaltung erfordert im einfachsten Fall keine besonderen Festlegungen.
Das Übersetzungsprogramm PreCom (technologisch orientierte Compilierung - Pre-Compiler) erwartet die Angabe der AWL-Sprache und erzeugt auf der Basis der Projekt-Vorleistungen in Form von allen zugehörigen PRAP und deren Listen ein Hauptprogramm, das alle Programme, das sind die Steuerprogramme zu jedem Teilprozess (kurz: TP) der Reihe nach enthält. Außerdem wird noch ein Initialisierungs-Programm für den erstmaligen Aufruf des Anwenderprogramms erzeugt, um die Zustände definiert vom jeweils ersten an eindeutig ablaufen zu lassen. Die tabellarische Erfassung der Transformationen zwischen Prozessgrössen einerseits und Signalen der Steuer- und Leiteinrichtung andererseits geschieht in den Variablenlisten.
Die Wahl der FC-Nummern ist beliebig, das Initialisierungsprogramm wurde mit FC0 bezeichnet. Die Überschrift und andere Festlegungen sind unter S oder Projekt|Optionen einzutragen. Die Aufrufbezeichner OB1 und OB100 sind für STEP 7 festgelegt, sie rufen alle Programme auf, die um eine Ebene nach rechts unter ihnen eingeordnet sind. Im Protokoll-Fenster wird gezeigt, welche Programme - das sind letztlich alle FC - in die AWL eingebunden wurden.
Die Initialisierung der Startzustände erfolgt je nach gewählter Option im Initialisierungsprogramm oder in jedem angegebenen Baustein, der der Funktion im PRAP entspricht. Die Zeilen-Kommentare sind genau die Einträge in den PRAP für die P- und O-Variablen. Das Ergebnis, die Gesamt-AWL, wird als (Plain-)Textdatei erzeugt. Damit ist gewährleistet, daß die in Abb. 1-1 (siehe Grundlagen) aufgeführten AWL-Sprachen mittels Herstellersoftware importiert werden können. STEP 7 hat dafür eine Möglichkeit "extern", um eine nicht mit STEP 7 erzeugte AWL zu importieren. Für STEP 5 steht den AWL-Editor/Batchcompiler zur Verfügung und DOLOG AKF ist auch heute noch in CONCEPT importierbar. Mitsubishi hat schon vor Jahren eine solche Schnittstelle in MELSEC MEDOC PLUS (MM+) geschaffen.
Als Herzstück der Übersetzung von einem PRAP zu einer AWL wurde der Pre-Compiler PreCom auf seine Korrektheit mathematisch untersucht. Dabei wurde nachgewiesen, daß die compilierte AWL sich genauso verhält, wie dies im PRAP grafisch projektiert ist. Dabei sind die Eingangs- und Ausgangsdatenstrukturen sowie die geforderten Eigenschaften der in der Theorie beschriebenen Übersetzung spezifiziert. Dann wurde nachgewiesen, daß diese Übersetzung durch die vorliegende Implementierung erfüllt wird und sie selbst korrekt ist [APKP99].