Atari ST - Maxon Computer - 1990
SPS-Emulator
1 / 4- Genre
- Hardware - Miscellaneous
- Year
- 1990
- Language
- GFA BASIC
- Publisher
- Maxon Computer
- Controls
- Mouse
- Distributor
- —
- Resolution
- High
- Developer
- Bullisoftware
- ST Type
- ST, STe, TT, Falcon030 / 1MB
- Licensed from
- —
- Programmer(s)
- Doll, Thomas
- Country

- MIDI
- —
- Software
- German
- Version
- 5.1
- Box/Instructions
- German
- Number of Disks
- 1 / Single Sided / HD Installable
- License
- Commercial
- Dump
- Download
- Serial
- —
- Dump format
- ST
- Protection
- —
ADDITIONAL COMMENTS
Released on Maxon Sonderdisk 014.
INSTRUCTIONS
+*************************************************************************+
* *
* SPS Emulator fuer die Programmiersprache STEP 5 von SIEMENS *
* written by Thomas Doll 1987/88/89/90 *
* Interpreter *
* Graphics BY THOMAS DOLL (Bullisoftware) *
* Fup Generator and programming *
* V 5.1 *
+*************************************************************************+
Kapitel:
* Was hat sich in der neuen Version
geaendert??
I Fuer was braucht man das Programm? .....................
II Auf welchen Computertypen (ST) laeuft das Programm?.....
III Der Arbeitsbildschirm...................................
IV Der Single Line Editor..................................
V Befehlssatz des PG605 (alles was bis jetzt drin ist)....
VI Ein SPS Programm Schreiben, Starten und Bedienen........
VII Der STATUS Modus........................................
VIII Die Erstellung eines Funktionsplanes mit log. Gattern...
IX Laden, Speichern und Ausdrucken von SPS Programmen.......
X Die Systemparameter.....................................
XI Der Userport............................................
XII Meine Adresse............................................
---- * --------------------------------------------------------------------
Unterschiede zur Version 4.4:
Alle integrierten Befehle haben nun genau die Syntax der S5 und werden
identisch zu ihr abgearbeitet.
- 20 Timer werden mit SE, SA, SI, SS, SV und LK T verarbeitet
- 20 Zaehler ZV, ZR und maximalem Zaehlerwert von 99999!
- Schnellere Interpreterroutine (20-25%) - Startmerker (wird waehrend
des ersten Zyklus gesetzt und dann wieder geloescht) um einen Autostart
zu ermoeglichen.(*)
- Not-Aus Merker/Schalter:bei Betaetigung des Not-Aus Schalters auf dem
Bildschirm,oder Setzen des Not-Aus Merkers verzweigt der Interpreter in
ein Not-Aus Unterprogramm worin alle Ausgaenge auf
LOW gesetzt werden bis der SCHALTER/MERKER wieder auf LOW liegt. Die
Ausgaenge bleiben intern erhalten und werden nach Entriegelung
des NOT-AUS wieder auf HIGH gelegt.(*)
- Blinkmerker: Vier Merker werden als astabiler Multivibrator
angesteuert. Die Blinkfrequenz betraegt 1/4, 1/2, 1 und 2 Sekunden(*)
- Sprungmarken (A-Z) koennen gesetzt und mit bedingten und
unbedingten Spruengen angesprungen werden - Jede Zeile kann einen 30
Zeichen langen Kommentar tragen, der dann im Single Line Editor mit
eingeblendet wird. - Die Awl wird in einem umweltfreunlicheren Format
(4 oder 6 Spalten), mit oder ohne Kommentare, Programmkopf,
Zuweisungliste und mit Zeilennummern ausgedruckt. (*) - Die Merker-,
Eingangs- und Ausgangsbezeichnungen koennen nun DEZIMAL (00-20[40]),
HEXADEZIMAL (00-14[20]) oder BYTEWEISE (0.0-2.3[4.7]) bezeichnet
werden.Beim Laden eines Programmes wird automatisch erkannt, welche
Adressierungsart verwendet wurde und auf diese Adressierungsart
umgeblendet. (*)
- Klammerbefehl --> U(, ) - Oder vor Und --> O - Alle Texteingaben
koennen nun wie in einer Textverarbeitung mittels den Tasten
"DELETE", "INSERT", "CURSOR UP/DOWN/LEFT/RIGHT"
und "BACKSPACE" editiert werden
- Bedienung fast aller Menuepunkte wahlweise mit der Maus oder ueber
die Tastatur mittels Control + Taste
- Programmieren in Netzwerken
- Abschaltbare Hardwareinputs beim Userportbetrieb(*)
- optimierte Fehlerkorrektur im Editor
- Mehrfachanweisungen nach einer Verknuepfung
- Programm laeuft auch auf den Mega-ST Rechnern einwandfrei
- Bei jeder Druckerausgabe wird ueberprueft, ob ein Drucker
angeschlossen ist und ob er ONLINE ist.
- Entfernung einiger kleiner Bugs aus dem Programm
(*) = ueber Systemparametermenue ab- oder umschaltbar! (Kapitel X)
---- I --------------------------------------------------------------------
Die Programmiersprache SPS (Speicher Programmierbare Steuerungen) wird
heute in fast allen Bereichen der Automation verwendet.Die SPS ersetzt die
sogenannte VPS (Verdrahtungs Programmierte Steuerung), also riesige
Schuetzschraenke.Der Vorteil ist offensichtlich: will man die Funktion der
Maschine oder Maschinenstrasse aendern, so musste man frueher den
Schaltschrank neu verdrahten, heute wird einfach ein neues Eprom mit dem
SPS Programm eingesetzt.
Die SPS ist eine Steuersoftware, die ueber ihre Eingaenge die
Information von Endschaltern, Reglern oder Fuehler bekommt, sie intern
verarbeitet und dann an den Ausgaengen reagiert, indem sie einen Motor
oder Luefter etc. ein- oder ausschaltet.
Es gibt mitlerweile viele Typen von SPS Programmierstationen, die
Programmiersprache aehnelt sich jedoch bis auf einige kleine Befehle. Ich
habe SPS auf der Programmierstation von SIEMENS mit dem Programmiergeraet
PG 605 in STEP5 gelernt.
Deshalb ist auch mein Programm an diese Programmiersprache angelehnt. Doch
nun zu meinem Programm:
Es ist in GFA Basic 3.0 geschrieben und die Entwicklungszeit betraegt
inzwischen 2 Jahre (Verbesserungen im Editor, Interpreter, FUP). Mit
diesem Programm ist es Ihnen moeglich, eine komplette SPS-Station mit
Programmier-, Ausgabegeraet und Hardware (siehe Kapitel XI) zu
simulieren, d.h. Sie koennen SPS-Programme entwerfen, eingeben,
starten, ausdrucken, laden, speichern und als FUP (Funktionsplan mit
logischen Gattern) ausgeben.
---- II -------------------------------------------------------------------
Das Programm laeuft auf allen ST (520 STM+, 1040 STF, Mega ST2,
Mega ST4) mit GFA Basic 3.0 und MINDESTENS 1 MEGABYTE SPEICHER!
---- III ------------------------------------------------------------------
Der Arbeitsbildschirm gliedert sich in vier Teile:
a) Das Bedienungsfeld (rechts Mitte bis Unten)
Dieses Bedienungsfeld ist mit sechs Buttons ausgeruestet.Diese lassen
sich nur aktivieren wenn der Interpreter im STOP Betrieb, d.h. kein SPS
Programm ablaeuft (siehe c).
Klickt man nun mit dem Mauszeiger auf einen dieser Buttons,
oder drueckt man die jeweilige Control+Taste Kombination , so verfaerbt
sich dieser schwarz und die Prozedur wird ausgefuehrt.
Die Belegung der Buttons (von links Oben nach rechts Unten):
- Papierstapel: Das SPS Programm kann auf dem Bildschirm angeschaut
werden.Die Liste kann mit Hilfe der Buttons bewegt
werden.
'<<' - Sprung um 10 Zeilen nach Oben
' <' - Sprung um eine Zeile nach Oben
' >' - Sprung um eine Zeile nach Unten
'>>' - Sprung um 10 Zeilen nach Unten
In der Mitte dieser vier Buttons ist ein Feld, in
dem die aktuelle Zeile angezeigt wird. Klickt man
dieses Feld an, so erscheint ein Cursor und man kann
die gewuenschte Zeilennummer eingeben. Ist die
Eingabe groeßer als die letzte Zeile des Programmes
so wird die Eingabe auf das Listenende gesetzt.
Ein Druck auf die rechte Maustaste beendet dieses
Unterprogramm.
- Diskstation : Speichern von SPS Programmen.Die Extension STP wird
verlangt! In dem abgespeicherten Code werden auch
der Programmkopf, Zuweisungsliste und Zaehlerwerte
+ Timerwerte gespeichert.
Das Programm wird als gepackter Code abgelegt.
- Diskstation : Laden von SPS Programmen.Vorsicht, wenn sich ein
SPS Programm im Speicher befindet, so wird
dieses ueberschrieben!
Die Laderoutine erkennt ob es sich bei der Datei um
eine SPS-Datei handelt und bricht ansonsten den
Ladevorgang mit einer Fehlermeldung ab.
- Papierkorb : Loeschen des SPS Programmes und aller Einstellungen
am Programmiergeraet.
- Drucker : Ausgabe des SPS Programmcodes auf den Drucker.
(Mehrspaltig, mit oder ohne Kommentare, Programmkopf)
- Transistor : Alle Ein- und Ausgaenge werden auf den Userport ge-
legt (siehe Kapitel XI). Damit ist aus Ihrem
ST eine SPS Station geworden! Falls Sie eine
Festplatte angeschlossen haben, so muessen Sie diese
abkoppeln oder abschalten!
b) Das Merkerfeld (rechts Oben)
Mit dem Merkerfeld wird angezeigt, welchen Zustand die Merker 01
- 20 haben (hi/lo).{Optional Merker 00 - 40}
Ein Merker ist eine programmierbare J/K Variable, d.h. man kann einen
Merker auf '1' setzen und er speichert den Zustand, bis er wieder auf
'0' gesetzt wird.
c) Das Programmiergeraet (linke Haelfte des Bildschirms)
Das Programmiergeraet teilt sich in drei Teile auf:
1. Die Eingaenge 01 - 20 (links Oben) {Optional 00 - 40}
Die Eingaenge werden mit Kreisen, die von 01 - 20
beschriftet sind dargestellt.
Befindet sich das Programmiergeraet im RUN Betrieb (siehe Punkt
2), so koennen Sie durch anklicken eines Einganges (Kreis)
diesen mit der linken Maustaste auf 1 und mit der
rechten Maustaste auf 0 setzen. Der Hardwareuserport muß
allerdings abgeschaltet sein.
Voller Kreis = am Eingang liegt Spannung, leerer Kreis =
am Eingang liegt keine Spannung oder Masse.
Haben Sie den Hardware-Userport aktiviert, so werden die
Zustaende der Eingaenge des Userports im Eingangsfeld angezeigt.
2. Das Bedienungsfeld (links Mitte)
Mit diesem Bedienungsfeld koennen Sie das Programmiergeraet oder
wichtige Systemeinstellungen konstrollieren.
Das Bedienungsfeld gliedert sich in 8 Buttons, die nun
beschrieben werden sollen:
STOP RUN SYSTEM
TRACE OFF INFO FUP NOT-AUS
EDITOR ENDE
- Das RUN/STOP Feld wird benutzt, um die Programmierstation vom
Editorzustand ( STOP ) in den Ausfuehrungszustand ( RUN )
zu bringen. Klicken Sie deshalb mit dem Mauszeiger die
gewuenschte Betriebsart an und der Button faerbt sich schwarz.
Achtung! Bei aktiviertem Programmiergeraet (RUN ist schwarz)
koennen Sie mit dem Mauszeiger nur folgende Funktionen
erreichen:
- Setzen oder Ruecksetzen von Eingaengen
- Trace Modus ein- oder Ausschalten >TRACE OFF<
- Umschalten auf STOP Betrieb >STOP<
Nur beim STOP Betrieb ( STOP ist schwarz )
koennen Sie die anderen Buttons und somit
deren Unterproceduren erreichen!
- Das TRACE OFF/ON Feld wird benutzt, um den Trace Modus ein-
bzw. auszuschalten. Dieser Button ist nur im RUN Betrieb
zu betaetigen. (Naeheres zum Trace Betrieb siehe Kapitel VII)
- Das EDITOR Feld verzweigt zum Single Line Editor, der
zum Erstellen eines SPS Programmes benoetigt wird. Nur im STOP
Betrieb zu erreichen!
- Das SYSTEM Feld verzweigt zum Systemparametermenue, in dem
die wichtigsten Systemeinstellungen eingestellt werden
koennen. Nur im STOP Betrieb erreichbar. (Siehe Kapitel X)
- Das INFO Feld gibt eine kleine Info zum Programm. Nurim STOP
Betrieb erreichbar!
- Das ENDE Feld ermoeglicht ins GFABasic bzw. zum Desktop
zurueckzukehren. Nur im STOP Betrieb erreichbar. Vorher das
SPS-Programm speichern!!
- Das FUP Feld ermoeglicht Ihnen, einen Funktionsplan
ihres Programmes erstellen zu lassen. SPS Programmierer werden
fuer diesen Programmpunkt dankbar sein. Nur im STOP Betrieb
zu erreichen! Mit einem Tastendruck kehren Sie
zum Arbeitsbildschirm zurueck.
(Naeheres siehe Kapitel VIII)
- Der Not-Aus Button ermoeglicht Ihnen, den Interpreter in
ein Not-Aus Unterprogramm zu verzweigen, indem alle Ausgaenge
auf LOW gelegt und nach Entriegelung mit der rechten
Maustaste wieder in den Zustand vor der Not-Aus Meldung
gebracht werden.
Die Ausgaenge bleiben also intern erhalten.
3. Die Ausgaenge 01 - 20 (links Unten)
Die Ausgaenge werden mit Kreisen, die von 01 - 20 beschriftet
sind dargestellt.
Befindet sich das Programmiergeraet im RUN Betrieb (siehe Punkt
2), so werden die Zustaende der Ausgaenge angezeigt
voller Kreis = am Ausgang ist Spannung,
leerer Kreis = am Ausgang ist keine Spannung.
Haben Sie den Hardware-Userport aktiviert, so werden die
Ausgaenge des Userports wie auf dem Bildschirm ein- bzw.
ausgeschaltet.
d) Die Versionsanzeige und der aktuelle Zugriffspfad fuer die SPS-Dateien
Wenn Sie die Box, in der die Pfadangabe steht, mit dem Mauszeiger
anklicken, so erscheint ein Cursor und Sie koennen den
Zugriffspfad aendern.
Mit >RETURN< wird der neue Pfad uebernommen.
e) Die HILFE-Box kann aktiviert werden, indem man sie mit der Maus
anklickt oder die TASTE >HELP< (nur im STOP Betrieb) drueckt. Daraufhin
erscheint eine Hilfsbox, in der alle Tastaturbelegungen erwaehnt sind.
>ESC< hilft uebrigen in fast allen Faellen, um ein Unterprogramm
zu verlassen.
- Sollte einmal bei der Eingabe des Pfades oder beim Anklicken des Hilfe
Feldes das Programm "stecken" bleiben (Cursor bewegt sich nicht, Box
erscheint nicht ), so bewegen Sie bitte die Maus in Richtung unterer
Bildschirmrand, bis das Unterprogramm aktiv wird.
---- IV -------------------------------------------------------------------
Nach dem Aktivieren des Menuepunktes EDITOR im Arbeitsbildschirm
verschwindet dieser und ein Editorbildschirm erscheint. In der oberen
Haelfte des Bildschirmes erscheinen die Programminfomationen wie z.B.:
'POSITION xxx/yyy' -> Position in der Liste (xxx=akuelle Zeile, yyy=
letzte Zeile des Programmes)
'BLOCKSTART ___' -> Zeile, die als Blockstart markiert wurde ( ___
bedeutet, daß noch keine Zeile markiert wurde)
'BLOCKENDE ___' -> Zeile, die als Blockende markiert wurde ( ___
bedeutet, daß noch keine Zeile markiert wurde)
'NAME' -> Name des SPS Programmes (Verwendungszweck)
'ERST' -> Ersteller des SPS Programmes
'DATUM' -> Datum der Programmerstellung
* Wenn Sie in den Editor verzweigen und es befindet sich noch keine AWL
(Anweisungsliste) im Speicher, so erscheint eine Dialogbox, in der
die Programmdaten eingegeben werden koennen.
Unter diesen Programminformationen ist eine Menueleiste installiert, die es
Ihnen ermoeglicht, alle Funktionen des Editors wahlweise mit der Maus oder
ueber die Tastatur zu erreichen. Im unteren Teil des Bildschirms steht die
AWL (Anweisungsliste = SPS Programm) wenn ein SPS Programm geladen oder
eingegeben wurde.Falls noch kein SPS Programm existiert, so werden die
Zeilen mit Platzhaltern markiert ('> <').
Auffallend ist, das eine Zeile dieser Liste immer invertiert dargestellt
wird. Auf diese Zeile beziehen sich alle Tastaturkommandos wie Loeschen,
Einfuegen usw. Die Liste und somit die zu editierende Zeile laesst sich mit
den Cursortasten UP/DOWN um jeweils 1 Zeile nach Oben oder Unten bewegen.
Der Single Line Editor ist einer der wichtisten Bestandteile dieses
Programmes, da mit ihm die SPS Programme eingegeben werden. Der Editor
nennt sich Single Line Editor, da immer eine Zeile (invertiert dargestellt)
editiert werden kann. Folgende Menuepunkte [Tastenkombinationen] finden in
diesem Editor verwendung:(Text in [ ] stellt die jeweilige(n) Taste(n)
dar, mit der/denen die Funktion auch erreicht werden kann.
Die Tastenkombinationen sind auch auf dem Bildschirm hinter den
Menuepunkten zu erkennen)
[Cursor UP/DOWN] - AWL (Anweisungsliste) um eine Zeile nach Oben
oder Unten bewegen.
10 (up) [ SHIFT / CURSOR UP ] - In der AWL um 10 Zeilen nach Oben
springen
10 (dn) [ SHIFT / CURSOR DWN] - In der AWL um 10 Zeilen nach Unten
springen
Insert [ INS ] - Zeile einfuegen.Mit [ESC] kann abgebrochen
werden (*)
Quit [ ESC ] - Editor verlassen
Edline [ SPACE ] - Zeile verbessern (*)
Delete [ DEL ] - Zeile loeschen oder(und) Marke loeschen
Blockstart [ F1 ] - Blockstart markieren
Blockende [ F2 ] - Blockende markieren
Block [ F3 ] - Blockfunktionen aufrufen (COPY/MOVE/DEL/HIDE)
Mit der Maus anwaehlen!
Merge [ F4 ] - SPS Programm zuladen
Zuweisung [ F5 ] - Eingabe der Zuweisungen zu den in der AWL ver-
wendeten Ein- und Ausgaengen. Diese Eingaben
werden beim Speichern automatisch gespeichert.
Suche [ F6 ] [ SHIFT / F6 ] - Suchen nach einem Merker, Ein- oder Ausgang
Mit [ SHIFT / F6 ] wird gesucht und eventuell
ersetzt. Mit [ F6 ] werden der Such- und
Ersetzstring eingegeben.
Home [ HOME ] - Sprung zur ersten Zeile der AWL
Bottom [SHIFT/HOME] - Sprung zur letzten Zeile der AWL
Edit [SHIFT/INS] - Dauereingabemodus (*)
Setmark [F7] - Setzen einer Marke (A-Z)
Kommentar [HELP] - Setzen eines Kommentares mit maximal 30 Zeichen
zu der betreffenden Zeile. Kommentare werden bei
Editierfunktion (BLOCK/DELETE/INSERT...) wie
eine AWL-Zeile behandelt!
Neu [CTRL/C] - Loeschen der gesamten Awl+Marken+Kommentare
Atarizeichen - Umblenden, damit Accessories verwendet werden
koennen.
(*) Bei diesen Routinen erfolgt nach RETURN eine automatische
Fehlerkorrektur und Positionierung des eingegebenen Befehls.
Der Editor verfuegt ueber eine automatische Korrigier- und Positionier-
routine, deshalb brauchen Sie z.B. keine Spaces zwischen Verknuepfung,
Operand und Zahlenwert einzugeben.
Ebenfalls achtet die Korrigierroutine auf Rechtschreibfehler und
unzulaessige Operandenkennzeichen (<01 oder >20). Alpha Lock muss nicht
gedrueckt werden, da eine automatische Umwandlung in Grossbuchstaben
erfolgt.
Falls ein Fehler auftritt, so blinkt der Bildschirm kurz auf und die Zeile
muss verbessert werden!
---- V --------------------------------------------------------------------
Eine Anweisung in der SPS Programmiersprache besteht aus folgenden Teilen:
OPERATION OPERAND OPERANDEN-KENNZEICHEN
Die Befehlsliste des PG 605:
a) Verknuepfungsoperationen:
U E 01 bis 20(40) UND Verknuepfung von Ein-, Aus-
U A 01 bis 20 gaengen , Zaehlern , Timern
oder
U M 01 bis 20(40) Merkern.
U Z 01 bis 20
U T 01 bis 20
UN E 01 bis 20(40) UND NICHT Verknuepfung von Ein-,
UN A 01 bis 20 Ausgaengen, Zaehlern, Timern oder
UN M 01 bis 20(40) Merkern.
UN Z 01 bis 20
UN T 01 bis 20
O E 01 bis 20(40) ODER Verknuepfung von Ein-, Aus-
O A 01 bis 20 gaengen, Zaehlern , Timern oder
O M 01 bis 20(40) Merkern.
O Z 01 bis 20
O T 01 bis 20
ON E 01 bis 20(40) ODER NICHT Verknuepfung von Ein-,
ON A 01 bis 20 Ausgaengen, Zaehlern, Timern oder
ON M 01 bis 20(40) Merkern.
ON Z 01 bis 20
ON T 01 bis 20
b) Speicheroperationen:
S A 01 bis 20 Setzen und Speichern des
S M 01 bis 20 Zustandes eines Merkers oder
Ausganges.
R A 01 bis 20 Ruecksetzen und Speichern des
R M 01 bis 20 Zustandes eines Merkers oder
Ausganges.
R Z 01 bis 20 Ruecksetzen eines Zaehlers
R T 01 bis 20 Ruecksetzen eines Timers
d) Ladeoperation fuer einen Zaehlerwert
L KZ 100 Laden eines Zaehlerwertes (0-99999)
e) Ladeoperation fuer einen Timerwert
L KT 100.1 Laden eines Zeitwertes (xxx.y)
xxx ist der Zeitwert (0-999)
y ist der Zeitfaktor:
y = 1 = xxx Zehntelsec
y = 2 = xxx Sekunden
y = 3 = xxx Minuten
c) Zaehloperationen:
ZV Z 01 bis 20 Aufwaertszaehlen des Zaehlers
ZR Z 01 bis 20 Abwaertszaehlen des Zaehlers
d) Zeitoperationen:
Eingabe wie folgt:
> L KT 002 .2 < Zeitwert T = 2 sec
> U E 0.1 < Timer start
> SE T 01 <
> U T 01 < Zeit abgelaufen?
> = A 01 <
> U E 0.2 < Timer ruecksetzen
> R T 01 <
"SE" -> Einschaltverzoegert
"SA" -> Ausschaltverzoegert
"SI" -> Impuls
"SS" -> Speichernd Einschaltverzoegert
"SV" -> Verlaengerter Impuls
Selbstverstaendlich lassen sich alle Zeit- und Zaehloperationen mit den Oben
aufgefuehrten logischen Verknuepfungen kombinieren!
e) Sprungfunktionen zu Marken
SPA Mx (x = A...Z) Unbedingter Sprung zur Marke x
SPB Mx (x = A...Z) Bedingter Sprung zur Marke x
f) ODER vor UND
> U( <
> O E 0.0 <
> O E 0.1 <
> ) <
> U( <
> O E 0.2 <
> O E 0.3 <
> UN E 0.4 <
> ) <
> = A 0.0 <
g) UND vor ODER
> U E 0.0 <
> U E 0.1 <
> O <
> U E 0.2 <
> U E 0.3 <
> = A 0.0 <
---- VI -------------------------------------------------------------------
Bitte laden Sie zuerst das GFABasic in der Version 3.0 oder den
Run-Only-Interpreter zur 3.0 Version. Nach Abschluss des
Ladevorgangs legen Sie bitte die STep 5 Diskette in Ihr Diskettenlaufwerk.
Nun laden Sie das Programm SPS_EMUL.GFA und starten es.
Nun koennen Sie, falls vorhanden, Ihre SPS Diskette einlegen, ansonsten
finden Sie ein paar kleine Demos auf der STEP 5 Diskette.
Nehmen wir einmal an, Sie haben ein SPS Programm auf dem Papier entwickelt
und wollen dies nun eingeben und auf Funktion testen:
Folgende Schritte sind dazu noetig:
a) Klicken Sie die OK Box (Nur beim Neustart des Programmes) mit dem
Mauszeiger an und die Info Box verschwindet. Nun stehen Ihnen
alle im STOP Betrieb erreichbaren Funktionen zur Verfuegung.
b) Da Sie ein Programm neu eingeben wollen, klicken Sie mit dem
Mauszeiger den Button EDITOR an und der Editorbildschirm
erscheint. Falls Sie noch kein Programm eingegeben oder geladen
haben, muessen Sie die Programmdaten (NAME/ERSTELLER/DATUM)
eingeben und es erscheinen anstatt der AWL Platzhalter in der
Liste.
Druecken Sie nun SHIFT und INSERT gemeinsam und Sie befinden sich
im automatischen Eingabemodus. Geben Sie nun Ihre AWL zeilenweise
ein. Um in die naechste Zeile zu kommen, druecken Sie bitte Return.
Falls Sie Ihr Programm eingegeben haben, druecken Sie zweimal
Return und Sie haben den automatischen Eingabemodus verlassen. Nun
koennen Sie Ihr Programm verbessern, erweitern oder den
Editor mit ESC verlassen. (Naeheres siehe Kapitel IV).
c) Falls Sie Ihr Programm erst einmal auf Diskette sichern wollen,
so klicken Sie das Diskettensymbol (Pfeil auf Laufwerk zu) mit dem
Mauszeiger an und geben den Filename fuer das Programm mit der
Extension STP ein. Nachdem Sie Return gedrueckt, oder den OK Button
betaetigt haben und die Diskette nicht schreibgeschuetzt ist, wird
ihr SPS Programm auf dem Datentraeger verewigt.
d) Um Ihr Programm ablaufen zu lassen, schalten Sie bitte das
Programmiergeraet in den RUN Betrieb (RUN Button anklicken).
Falls Sie den Hardware-Userport nicht aktiviert haben (Transitor-
symbol ist nicht invertiert), so koennen Sie nun mit der linken
Maustaste die Eingaenge ein- und mit der rechten Maustaste die
Eingaenge ausschalten und so Anhand der Reaktionen
an den Ausgaengen und im Merkerfeld die Funktionsweise Ihres SPS-
Programmes testen. Wenn Sie den Hardware-Userport aktiviert
haben, so schliessen Sie bitte die Zuleitungen an Ein- und
Ausgaengen nach Ihrer Programmbelegung an. Froehliches Schalten
und Walten!!!
e) Falls Sie einen Funktionsplan von Ihrem Programm erstellt haben
wollen, so bringen sie das Programmiergeraet in den STOP Zustand
und klicken Sie den FUP Button an. Ihr ST erstellt nun den
Funktionsplan. Je nach Einstellung in den Systemparametern wird der
FUP auf den Drucker ausgegeben (Kapitel X). Mit einem Tastendruck
verlassen Sie das FUP Unterprogramm.
---- VII ------------------------------------------------------------------
Die Status-Option ist in dieser Version Ihres Programmes noch nicht
implementiert, sie wird aber in der folgenden Version eingebaut sein
(Kapitel XII). Mit Hilfe dieser Routine koennen Sie Ihr SPS-Programm wie in
einem Debugger testen und von Fehlern befreien. Der Status Modus bietet zwei
Betriebsarten den festen und den flexiblen Statusbildschirm. Beim festen
Status sehen Sie alle Eingangs-, Merker- und Ausgangszustaende auf dem
Monitor. Desweiteren wird ein Ausschnitt der AWL mit dem jeweiligen
Verknuepfungsergebnis und den Zustaenden des Accu1 und Accu2 angezeigt. Es
gibt nun vier verschiedene Betriebszustaende des festen Status:
1) RUN: Die Verknuepfungsergebnisse und Zustaende der Accus, Eingaenge,
Merker, Timer und Zaehler werden synchron zum Run-Betrieb ausgegeben. Der
Bereich der AWL, der auf dem Bildschirm dargestellt wird, kann ueber die
ganze AWLLaenge verschoben werden. Somit koennen Sie Ihr SPS-Programm
ablaufen lassen und gleichzeitig einen Blick in die Verknuepfungsebene
werfen.
2) ZYKLUS: Hier wird ein einzelner Zyklus durchgerechnet und alle
Verknuepfungsergebnisse uns Statuszustaende zwischengespeichert. Nach dem
Zyklusdurchlauf kann man durch Scrollen der AWL-Liste den gesammten Zyklus
uebersehen. So koennen Sie Ihr SPS-Programm "step by step" kontrollieren.
3) STEP: Nach jeder Abarbeitung einer AWL-Zeile, wartet der Interpreter auf
einen Tasten- oder Mausklick. So koennen Sie Zeile fuer Zeile durch Ihr SPS-
Programm gehen.
4) Printer: In der Funktion wie ZYKLUS nur wird hier ein Ausdruck auf dem
Drucker erstellt.
Der flexible Status arbeitet nur im RUN-Modus. Allerdings koennen Sie hier
selbst angeben, welche Timer, Zaehler, Verknuepfungsergebnisse usw. fuer
Sie wichtig sind. Waehrend des Programmablaufes werden dann diese Variablen
angezeigt.
Diese Routine steht inzwischen und wird in der naechsten Version
implementiert sein (Kapitel XII)!
---- VIII -----------------------------------------------------------------
Die Funktion 'Erstellen eines Funktionsplanes' dient dazu Ihr SPS Programm
als Schaltbild mit logischen Gattern (AND, NAND, OR, NOR, JK, RS)
darzustellen.
Um einen sogenannten FUP erstellen zu lassen muessen Sie ein SPS Programm
eingegeben oder geladen haben und mit dem Mauszeiger den FUP Button (Nur im
STOP Betrieb) druecken. Daraufhin erstellt Ihr ST den Funktionsplan
zu Ihrem Programm. Im uebrigen koennen Sie diesen FUP auch noch ausdrucken
lassen (Kapitel X).
---- IX -------------------------------------------------------------------
Falls Sie ein SPS Programm laden wollen, so bringen Sie das Programmier-
geraet in den STOP Betrieb und klicken Sie mit dem Mauszeiger das 'Disk
Laden' Icon (Kapitel III a) an. Das Icon wird invertiert, eine Box mit
dem Text 'SPS Programm laden' erscheint ueber der Fileselectorbox.
Alle Programme, die im Wurzelverzeichniss der eingelegten Diskette liegen
und die Extension 'STP' haben werden angezeigt.
Falls Sie ein erstelltes SPS Programm abspeichern wollen bringen Sie das
Programmiergeraet in den STOP Betrieb und klicken Sie mit dem Mauszeiger
das 'Disk speichern' Icon (Kapitel III a) an. Das Icon wird invertiert, eine
Box mit dem Text 'SPS Programm saven' erscheint ueber der Fileselektorbox.
Bitte speichern Sie Ihr SPS Programm mit der Extension 'STP' ab, da sonst
die Laderoutine des Programmes das SPS Programm nicht mehr findet! Wenn sie
einen auf der Diskette vorhandenen Filenamen verwenden erscheint eine
Alertbox mit einer Rueckfrage, ob das SPS Programm wirklich ueberschrieben
werden soll.
Um die AWL (Anweisungliste) auf den Drucker auszugeben muessen Sie
zunaechst einmal einen Drucker haben und diesen einschalten.
Wenn dann auch Papier eingelegt ist und noch kein Virus Ihre Centronics
Schnittstelle zerstoert hat (einen schoenen Gruss an alle Idioten, die
nichts Besseres wissen als diese Viren zu schreiben...) koennen Sie durch
einen Mausklick auf das Druckersymbol (Programmiergeraet im STOP Betrieb)
die AWL auf Ihr Endlospapier bannen.
Die Steuercodes fuer die verschiedenen Schriftarten wurden fuer einen
STAR LC 24-10 verwendet.
In der naechsten Version wird ein kompletter Anpassungsteil integriert
sein, der es Ihnen gestattet, das Programm auf Ihren Drucker
einzustellen.(siehe Kapitel (XII)!
---- X --------------------------------------------------------------------
Das Systemparametermenue dient dazu wichtige Grundeinstellungen zum
Programm festzulegen. Folgende Menuepunkte sind im Menue zu finden:
AUS EIN HARDCOPY DES FUPS LOAD
WARTE KREIS INTERPRETERSCHLEIFE
AUS EIN USERPORT TD (DMA) SAVE
AUS EIN SCROLLING
S/W W/S BILDSCHIRMFARBE OK
AUS EIN PROZESS
20 40 INPUTS
20 40 MERKER
AUS EIN KOPF DRUCKERAUSGABE
AUS EIN PRINT ZUWEISUNGSLISTE
INAKTIV AKTIV POINTER (RUNBETRIEB)
INAKTIV AKTIV START-MERKER (M20/M40)
INAKTIV AKTIV NOT-AUS MERKER (M19/39)
INAKTIV AKTIV BLINKMERKER
AUS EIN FLEXIBLE OPERANDENKENNZEICHEN
INAKTIV AKTIV HARDWARE INPUTS
OHNE MIT NETZWERKE ANPASSUNG
Die ersten zwei Spalten sind jeweils die Schaltbuttons, die Dritte Spalte
ist der Text zu den Buttons. Jeweils einer der Schaltbuttons ist
invertiert dargestellt und somit aktiviert. Um den anderen Button zu
aktivieren, klicken Sie bitte mit dem Mauszeiger auf den gewuenschten
Button und die Einstellung springt auf den Button um.
Doch nun zur Erklaerung der Buttons:
- Hardcopy des Fups:
Wenn hier 'EIN' invertiert ist, so wird bei der Bildschirmausgabe
des FUPS automatisch eine Hardcopy ausgegeben.
- Interpreterschleife
Da dieser Interpreter in Basic geschrieben ist, koennen bei sehr
langen SPS Programmen Zeitprobleme auftreten, da die AWL ja
sequentiell (Zeile fuer Zeile) abgearbeitet wird.
Deshalb koennen Sie zwischen zwei 'Betriebsarten' des
Programmiergeraetes waehlen. Wenn der Button 'WARTE' invertiert
ist, so wird die AWL bei jedem Ereignis an einem Eingang
(Mausklick) abgearbeitet. Dieser Betriebsmodus ist ausreichend,
wenn Sie reine Eingangs- und Merkerverknuepfungen durchfuehren.
Wenn Sie aber z.B. ein Kippverhalten zweier Ausgaenge
(Blinklicht, Intervallschaltung) darstellen wollen, so muessen
Sie entweder in rythmischen Abstaenden die Maustaste
betaetigen, oder den Interpreter auf 'KREIS' einstellen.
Je nach Laenge des SPS Programmes kann es nun vorkommen, das Sie
die Maustaste etwas laenger druecken muessen um einen Eingang
ein- bzw. auszuschalten oder das Programmiergeraet in den STOP-
Betrieb zu bringen.
Zur Zeit bin ich sehr bemueht nach einer Moeglichkeit zu suchen,
diesen Interpreter in Assembler!?! oder in C zu schreiben, aller-
dings besteht trotz Profibuch noch das Problem, ausser Bomben
auch etwas anderes auf den Bildschir zu bekommen.
- Userport TD
Mit diesem Menuepunkt koennen Sie die Ein- und Ausgaben des
Programmiergeraetes auf den DMA Port und somit auf den Hardware-
Userport legen.
Naeheres siehe Kapitel (XI).
- Scrolling
Wenn dieser Menuepunkt aktiviert ist so erscheint auf Ihrem
Arbeitsbildschirm ein Grafikscrolling (Ein bisschen Schau muss
sein).
Fuer alle, die von zu starken Wuergkraempfen geschuettelt
werden, ist dieses Scrolling hiermit abschaltbar.
- Bildschirmfarbe
Wer's gern weiss auf schwarz hat, der kann hier
seine Bildschirmdarstellung auswaehlen.
- Prozess
Waehrend des RUN Betriebes wird in dem Prozessablaufwindow
das Ausgangsverhalten des Programmes beschrieben. Man kann
die Prozessbeschreibung eines Ausganges im Editor unter dem
Menuepunkt ZUWEISUNGEN eingeben.
- INPUTS
Erhoehung der verwendbaren Eingaenge auf 40 (Nur mit 1 MByte
Speicher!)
- MERKER
Erhoehung der verwendbaren Merker auf 40 (Nur mit 1 MByte
Speicher!)
- KOPF DRUCKERAUSGABE
Entscheidung, ob beim AWL-Ausdruck der Programmname, Datum und
Ersteller mitausgedruckt werden.
- PRINT ZUWEISUNGSLISTE
Entscheidung, ob beim AWL-Ausdruck die Zuweisungsliste
ausgedruckt werden soll.
- POINTER (RUN BETRIEB)
Falls aktiv, so wird im RUN-Betrieb die aktuelle Zeile, die der
Interpreter gerade durchlaeuft, angezeigt.
- START MERKER
Ist dieser Punkt aktiv, so wird beim ersten Zyklus der Merker
M20 (bei 20 Merkern) oder der Merker M40 (bei 40 Merkern) auf 1
gesetzt und dann wieder auf 0 gesetzt. Dies soll die
Moeglichkeit eines Autostarts bieten.
- NOT-AUS MERKER
Ist dieser Punkt aktiv, so wird bei Betaetigung des Merkers
19 (bei 20 Merkern) oder des Merkers 39 (bei 40 Merkern) der
Not-Aus aktiv (naeheres siehe Kaptitel III)
- BLINK MERKER
Die Merker 15-18 werden als astabile Multivibratoren betrieben.
Sie blinken im 1/4, 1/2, 1, 2-Sekundentakt. Bei Verwendung von
Timern in der AWL, werden diese Blinkmerker gesperrt!
- FLEX. OPERANDENKENNZEICHEN
Bezeichnung der Ein-, Ausgaenge, Merker in DEZ / HEX
oder der SIEMENS 8-Byte Adressierung.
- HARDWARE INPUTS
Hier koennen Sie im Hardwarebetrieb, die Eingaenge auch mit
der Maus manipulieren.
- NETZWERKE
Hier koennen Sie auch in Netzwerken programmieren
- OK Button
Systemparametermenue verlassen
- SAVE Button
Systemparameter auf Diskette ablegen
- LOAD Button
Systemparameter von Diskette laden
- ANPASSUNGS Button
Leider noch nicht integriert (siehe Kapitel XII)
---- XI -------------------------------------------------------------------
Dieser sogenannte Hardware Userport ist eine Weiterentwicklung der
I/O Platine der Firma MAXON (Thomas Blome) und darf daher nicht
kommerziell produziert werden.
Die Grundplatine ermoeglicht es Ihnen mit Ihrem ST und ein wenig
Programmierkenntnissen, 16 Treiber (Transistoren) als Schaltausgaenge und
16 Eingaenge zu verwenden. Die Schaltung wird ueber die DMA Schnittstelle
angeschlossen. Alle Eingangs- und Ausgangsleitungen sind mit Schutz-ICS
(Treiber) versehen, damit bei einem Fehlerfall (Kurzschluss der Ein- oder
Ausgaenge) nur das IC fuer ca. 3 DM zerstoert wird und nicht die
empfindliche DMA Schnittstelle.
Nun einige Anwendungen zu diesem I/O Port:
- 16 BIT Messwerterfassung in Verbindung mit einem 16 BIT A/D Wandler
- Hochgenaues Netzgeraet mit 16 Spannungstufen (D/A Wandler)
- 16 Relais koennen von Ihrem ST geschaltet werden
- Ueber 16 Eingaenge koennen Sie mit dem Computer Spannungspegel abfragen
- Sie koennen ohne Bedenken Ihre eigenen elektronischen Schaltungen an
Ihrem ST anschliessen, ohne die Zerstoerung Ihres Computers befuerchten
zu muessen.
- Universelles Schaltinterface (fuer Fischertechnikmodelle)
- Es besteht die Moeglichkeit, den Userport als Frequenzgenerator
zu verwenden, dabei koennen gleichzeitig 16! verschiedene
Frequenzen abgenommen werden.
- Schrittmotorensteuerungen
- Verwendung als SPS-Geraet
Dies sind nur ein paar, von mir schon praktizierte Anwedungen.
Je nach Ihren Anspruechen kommt dieser Userport auf einen Gesamtpreis von:
- 100 DM Grundplatine (16 Transistorentreiber), Netzteil
- 200 DM Grundplatine im Gehaeuse mit allen Buchsen,
Netzteil
oder die von mir aufgebaute (universelle) Loesung die etwa 400 - 500 DM
gekostet hat:
- 16 ansteuerbare Relais mit wahlweise angelegter TTL- oder
Fremdspannung (Interne Relaisumschaltung) bis 250V AC
- 16 abtastbare Eingaenge (nur TTL-Pegel!) durch IC entkoppelt
- Maximaler Schaltstrom pro Relais bei 250 V AC von 1 Ampere
- Von der Frontplatte abschaltbare Relaiskarte bei hohen Frequenzen
- Treibersignale wurden auf Buchsenleiste herausgefuehrt
-> Entkoppelter Anschluss von elektronischen Schaltungen am ST
- Rom- und Centronicsport werden nicht blockiert
- Eingebauter 3 stelliger Taktzyklenzaehler mit Entprellung und
Reset (Count- und Resetsignal bei positiver! Flanke)
- Uebersichtlicher Aufbau des Geraetes durch Steckkartensystem
- Kurzschlusssicheres stabilisiertes TTL-Schaltnetzteil bis 5A
- Userfreundlicher Frontplattenaufbau mit Tasttechnik und
kontaktsicheren Buchsen.
- 3mm LED's zeigen alle 16 Ausgangszustaende an
- Einfache Programmierung in allen Programmiersprachen
- beliebig kaskadierbar bis 255 Ein- und Ausgaenge
Gegen ein Entgeld vom DM 30 bin ich bereit, Ihnen alle Layouts der
Platinen (Userportgrundplatine, Zaehler, Relaiskarte, Tasterkarte),
Bohrplan fuer Frontplatte, Gehaeusebauplan (falls Sie, wie ich, die
Moeglichkeit haben sich Ihr Gehaeuse selbst zu bauen), Bauanleitung und
Benutzerprogrammlistings (BASIC) zuzusenden. Falls Sie also Interesse
daran haben, senden Sie mir einen ansich adressierten DIN A4 Umschlag
mit dem Geld zu.
Falls der Umschlag und das Geld beigelegt sind, werden Sie spaetestens
innerhalb 2 Wochen alle Plaene erhalten. Ich wuensche Ihnen ein frohes
Basteln und Arbeiten mit meinem Userport.
Sollten Sie irgendwelche Fragen oder Probleme mit dem Programm oder dem
Userport haben, so koennen Sie mir ruhig schreiben.
---- XII --------------------- Meine Adresse -----------------------------
T H O M A S D O L L
M E I S E N B U E H L 7
7 6 0 2 O B E R K I R C H - B O T T E N A U
Falls Sie irgendwelche Wuensche oder Aenderungsvorschlaege haben, so
koennen Sie mir ruhig schreiben.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
