Datenformat Wort CPU Pseudomaschine AWG alle Anweisungen
|
Die Programmiersprache der P03Für die PROMODUL-K hat es noch genügt, sich einen Schaltplan vorzustellen, und diesen dann in KOP umzusetzen. Prinzipiell gilt das auch für die Bitanweisungen der P03. Für die Wortanweisungen ist es aber empfehlenswert, sich die CPU eines Prozessors vorzustellen. Die wahre CPU einer P03 Steuerung ist ein Mikroprozessor der 80x86 Reihe. Das CPU Modell das der P03 Sprache zugrundeliegt ist eine vereinfachte Pseudomaschine. Ein Compiler der Programmiersoftware PRODOC5 verwandelt den Kontaktplan und die Wortbefehle in Anweisungen, die durch den Mikroprozessor der P03 CPU ausgeführt werden können. PRODOC 5Die PRODOC 5 ist die Software mit der eine P03 programmiert, parametriert und getestet wird. Die Software enthält ein sehr umfangreiches Hilfesystem. Ziel der Entwicklung war, den Anwender so selbstständig zu machen, dass er sich alle Informationen aus der Software holen kann. Deshalb ziehen Sie zunächst das Hilfesystem der P03 zu Rate. Dieses steht Ihnen immer und überall zur Verfügung. Meine Webpage können Sie nur erreichen, wenn Sie Internetzugang haben. Unter LINK finden Sie Hilfe zur Installation der Software, sowie die ersten Schritte bei der Anwendung. In den folgenden Themen werde ich mich immer wieder auf PRODOC beziehen. CompilerDie P03 hat eine CPU mit einem Mikroprozessor der 8068 Reihe. Diese Prozessoren verstehen Anweisungen wie S 1000 oder LDR 2400 nicht. Es muß also das Quellprogramm auf eine dem Mikroprozessor verständliche Sprache gebracht werden. Dazu gibt es prinzipiell zwei Verfahren: Interpretieren oder Kompilieren.
Ein Vorteil der Interpretation besteht darin, dass jederzeit nachvollziehbar ist, was die SPS macht. Man braucht nur das Quellprogramm aus der SPS hochzuladen um zu erkennen, was läuft. Das ist vor allem bei Programmänderungen lange nach der Inbetriebnahme vorteilhaft, wenn das ursprüngliche Quellprogramm nichtmehr vorliegt. Ein weiterer Vorteil besteht darin, daß das Programm in der SPS bei Laufzeit geändert werden kann. Eine Online-Änderung. Nachteilhaft ist, dass der Interpreter jede Anweisung erst lesen, auf Plausibilität prüfen muß und dann erst ausführen kann. Das verbraucht Rechenzeit. Allerdings wird das durch immer leistungsfähigere Prozessoren wett gemacht. Ein Vorteil der kompilierenden Programmausführung besteht darin, dass die CPU den Programmcode unmittelbar ausführen kann. Rechenzeiten für die die übersetzung des Quellcodes einschließlich der Plausibilitätsprüfungen entfallen. Die Programmausführung wird bedeutend schneller. Ausserdem kann der Compiler das Quellprogramm analysieren und die Ausführung weiterhin optimieren. Ein Nachteil besteht darin, dass der Objetcode, das lauffähige Programm nichtmehr in ein SPS Quellprogramm rückübersetzt werden kann. Nun ist aber diese "Uploadfähigkeit" ein wichtiges Charakteristikum einer SPS. Um das zu ermöglichen werden in die P03 zwei Programme geladen: Der ausführbare Objektcode und ein komprimiertes Quellprogramm. Beim Hochladen des SPS Programms von der Steuerung in den PC wird nur der Quellcode geholt.
Der Speicherraum in der P03 ist begrenzt. Bei größeren Programmen kann es geschehen, dass der Programmspeicher nicht ausreicht, um sowohl den lauffähigen Objektcode und den komprimierten Quellcode in der SPS abzuspeichern. Für diesen Fall kann man auch den Objektcode allein, ohne Quellcode in den Programmspeicher der P03 zu laden. Dann kann allerdings das SPS Programm nichtmehr aus der Steuerung in das Programmiergerät hochgeladen werden. Für Programmänderungen ist man auf auf eine aktuelles Originalprogramm angewiesen.
Adressraum:Wie bei den Systemen PDPS und P02 unterscheidet die P03 in Wort und Bitadressen, die nichts miteinander zu tun haben. Es sind also nicht, wie bei einem bekannten anderem System, die Bits Teile von Bytes, Worten und Doppelworten. Einzelbits oder auch Merker befinden sich im Bitadressraum. Worte, oder auch Wortmerker befinden sich im Wortadressraum. Für den wortweisen Zugriff auf auf eine Gruppe von Einzelbits (Bitmerkern) oder den bitweisen Zugriff auf Worte gibt es eigene Befehle. Die Adressen der P03 werden im oktalen Zahlensystem angegeben. Die Bereiche können über die Programmiersoftware PRODOC 5 vergeben werden:
Prinzipiell sind die Adressen wie folgt vergeben:
Zurück zur Themenübersicht Ein-/AusgängeEin- und Ausgänge werden über die Steckplatzliste der Programmiersoftware PRODOC 5 vereinbart:
Datenformat Wort:
Das Datenwort der P03 ist 16 Bit breit. Beim Datenwort für Zählbefehle dienen die obersten Bits zur Abspeicherung der Flanken. Das Datenwort für Zählbefehle ist 14 Bit breit Zurück zur Themenübersicht
Die CPU der P03Die CPU ist aus der Reihe INTEL 8086. Die Software emuliert eine weiterentwickelte PDPS CPU mit 16 Bit Datenformat.
ProgrammzählerFür jede der vier Tasks gibt es einen Programmzähler, der Unterprogrammsprünge ausführen kann. Programmsprünge nach vorne oder nach hinten (goto) sind nicht programmierbar RegisterDatenregister: Das Datenregister entspricht dem Akkumulator eines Mikroprozessors. Er dient als Merkzelle für Zwichenergebnisse. Das Datenregister ist entsprechend dem Wortformat der P03 16 Bit breit. Bit Abeitsspeicher und E/A:Die P03 hat voneinander getrennt einen Bitspeicherbereich und einen Wortspeicherbereich. Der Bit Arbeitsspeicher der P03 wird über Bitbefehle erreicht. Es gibt also keine Operandenkennung, die bezeichnet, ob es sich um eine Wort- oder Bitadresse handelt.
Bitanweisungen geifen auf den Bitbereich zu, Wortanweisungen greifen auf den Wortbereich zu.
Die Bit Eingänge und Bit Ausgänge sind Teil des Bitspeicherbereichs der P03 ("memory mapped I/O"). Die Lage der Ein- und Ausgänge wird über die Steckplatzliste vorgegeben. Es gibt also keine Operandenkennung, die kennzeichnet, ob ein Bitbefehl mit einem Bit Eingang, einem Bit Ausgang oder eine Bit Merkeradresse handelt. Beispiele (AWL): S 100 ;"Schliesser" von einer Bitadresse; sie ist ein E/A, wenn diese in der Steckplatzliste als Ein- oder Ausgang definiert ist A 1000 ;Zuweisung auf eine Bitadresse; sie ist ein Ausgang, wenn diese in der Steckplatzliste als Ausgang definiert ist. LRA 1000 ;Wortzugriff auf die Wortadresse 1000. Kein Einfluß auf den Bitspeicher Es empfiehlt sich also, stets die Steckplatzliste vor Augen zu haben. Zumeist werden die Eingänge ab Adresse 100 gelegt, die Ausgänge ab Adresse 1000. Zurück zur Themenübersicht
Wort Arbeitsspeicher und Wort E/ADie P03 hat voneinander getrennt einen Bitspeicherbereich und einen Wortspeicherbereich. Der Bit Arbeitsspeicher der P03 wird über Bitbefehle erreicht. Es gibt also keine Operandenkennung, die bezeichnet, ob es sich um eine Wort- oder Bitadresse handelt.
Wortanweisungen geifen auf den Wortbereich zu, Bitanweisungen greifen auf den Bitbereich zu.
Die Anzahl der Wortmerker wird über das Menü "Steuerungsparameter" definiert.Über die Steckplatzliste werden die Wort Ein-/Ausgangskarten definiert. Auf diese wird jedoch mit speziellen Wortbefehlen zugegriffen Beispiele (AWL): LDA 2125 ;Zugriff auf die Wortspeicheradresse 2125.
Zurück zur Themenübersicht
Interaktion von Wort- und Bitanweisungen:Netzwerke mit Bitanweisungen werden wie in der PROMODUL-K aufgebaut. Wortanweisungen können an beliebiger Stelle des Netzwerkes stehen.
Wortanweisungen werden dann ausgeführt wenn sie im aktiven Pfad eines Netzwerkes stehen
Die Wortanweisung WWW 0100 wird immer ausgeführt
Zurück zur Themenübersicht
Die Anweisungen der P03 auf Ihrem Rechner:als EXCEL Tabelle; bitte Makros freigeben, und starten, nicht editieren.
Die Applikation präsentiert sich in folgender Weise:
Zurück zur Themenübersicht
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Münstertal, 09.08.2014 Freiburg, 24.01.2025 |