limit (11.0)##pagelength (16.5)##block# #start (2.0,0.0)# #page (1)# #headodd# #center#gs-Prozess#right#% #end# #headeven# %#center#gs-Prozess #end# #center#1 #on("b")#8  Detailbeschreibung der Basisbefehle und Tests#off("b")# #on("b")# BOOL PROC abbruch gewuenscht #off("b")# - erfragt, ob inzwischen durch einen Basisbefehl die Tastenfolge im Eingabestrom registriert worden ist. Ist das der Fall, liefert die Prozedur den Wert 'TRUE', sonst 'FALSE'. #on("b")# BOOL PROC bit ist gesetzt (INT CONST kanal, bitnummer) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Eingabe möglich!". - untersucht, ob die angegebene Bitnummer zulässig ist (0 #on("b")#<#off("b")# 'bitnummer' #on("b")#<#off("b")# 7). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung "Bit­ nummer ... ist nicht zulässig!". - liest den aktuell anliegenden Wert am angegebenen Kanal. - liefert den Wert 'TRUE', wenn in der binären Darstellung das Bit mit der angegebenen Bitnummer gesetzt ist ("I"), sonst den Wert 'FALSE'. #on("b")# TEXT PROC bitmuster (INT CONST kanal) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". #page# - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Eingabe möglich!". - liest den aktuell anliegenden Wert am angegebenen Kanal ein und wandelt ihn in die binäre Darstellung. - liefert einen Text der Länge 8, bestehend aus den Zeichen "I" und/oder "O". #on("b")# PROC bitmuster ausgeben (INT CONST kanal, TEXT CONST bitmuster) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Aus­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Ausgabe möglich!". - untersucht die übergebene Zeichenkette (bitmuster) auf korrekte Länge (8 Zeichen). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung "Das Bitmuster ... hat eine unzulässige Länge!". - überprüft die in der übergebenen Zeichenkette (bitmuster) vorkommenden Symbole auf ihre Zulässigkeit ("I", "O", "X", "T"). Taucht ein unzulässiges Symbol auf, erfolgt ein Abbruch mit der Fehlermeldung "... ist ein unzu­ lässiges Bitsymbol in ...!". #page# - aus dem am angegebenen Kanal zuletzt ausgegeben Wert und der über­ gebenen Zeichenkette (bitmuster) wird der auszugebende Dezimalwert er­ mittelt. Dieser Dezimalwert wird am angegebenen Kanal ausgegeben. Dabei bedeuten "I", daß das betreffende Bit gesetzt wird,  "O", daß das betreffende Bit nicht gesetzt wird,  "X", daß das betreffende Bit gegenüber der zuvor erfolgten Ausgabe am gleichen Kanal nicht verändert wird und   "T", daß das betreffende Bit gegenüber der zuvor erfolgten Ausgabe am gleichen Kanal invertiert wird. #on("b")# BOOL PROC bitmuster gleich (INT CONST kanal, TEXT CONST vergleichsmuster) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Eingabe möglich!". - untersucht die übergebene Zeichenkette (bitmuster) auf korrekte Länge (8 Zeichen). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung "Das Bitmuster ... hat eine unzulässige Länge!". - überprüft die im 'vergleichsmuster' vorkommenden Symbole auf ihre Zu­ lässigkeit ("I", "O", "X"). Taucht ein unzulässiges Symbol auf, erfolgt ein Abbruch mit der Fehlermeldung "... ist ein unzulässiges Bitsymbol in ...!". - liest den aktuell anliegenden Wert am angegebenen Kanal ein und wandelt ihn in die binäre Darstellung. - überprüft, ob das eingelesene Bitmuster zum 'vergleichsmuster' "paßt". Ist das der Fall, wird der Wert 'TRUE' geliefert, sonst der Wert 'FALSE'. #page# #on("b")# TEXT PROC bitsymbol (INT CONST kanal, bitnummer) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Eingabe möglich!". - untersucht, ob die angegebene Bitnummer zulässig ist (0 #on("b")#<#off("b")# 'bitnummer' #on("b")#<#off("b")# 7). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung "Bit­ nummer ... ist nicht zulässig!". - liest den aktuell anliegenden Wert am angegebenen Kanal ein und wandelt ihn in die binäre Darstellung. - liefert einen Text der Länge 1, nämlich "I" oder "O". #on("b")# PROC bitsymbol ausgeben (INT CONST kanalnummer, bitnummer, TEXT CONST bitsymbol) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Aus­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Ausgabe möglich!". #page# - untersucht, ob die angegebene Bitnummer zulässig ist (0 #on("b")#<#off("b")# 'bitnummer' #on("b")#<#off("b")# 7). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung "Bit­ nummer ... ist nicht zulässig!". - überprüft das übergebene Bitsymbol auf Zulässigkeit ("I", "O", "X", "T"). Taucht ein unzulässiges Symbol auf oder besteht das Bitsymbol aus mehr als einem Zeichen, erfolgt ein Abbruch mit der Fehlermeldung "... ist ein unzu­ lässiges Bitsymbol!". - ermittelt aus dem am angegebenen Kanal zuletzt ausgegeben Wert und der übergebenen Bitnummer/dem übergebenen Bitsymbol den auszugebende Dezimalwert. Dieser Dezimalwert wird am angegebenen Kanal ausgegeben. Dabei bedeuten "I", daß das betreffende Bit gesetzt wird,  "O", daß das be­ treffende Bit nicht gesetzt wird,  "X", daß das betreffende Bit gegenüber der zuvor erfolgten Ausgabe am gleichen Kanal nicht verändert wird und  "T", daß das betreffende Bit gegenüber der zuvor erfolgten Ausgabe am gleichen Kanal invertiert wird. #on("b")# INT PROC dezimalwert (INT CONST kanal) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Eingabe möglich!". - liest den aktuell anliegenden Wert am angegebenen Kanal ein. - liefert einen INT-Wert mit  0 #on("b")#<#off("b")# 'wert' #on("b")#<#off("b")# 255. #page# #on("b")# PROC dezimalwert ausgeben (INT CONST kanal, wert) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine digitale Aus­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Digital-Ausgabe möglich!". - ermittelt den auszugebenden Wert durch die Rechnung #on("b")# #center#ausgabe = wert MOD 256, #off("b")# und gibt diesen am angegebenen Kanal aus. #on("b")# PROC initialisiere interface #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob das Programm korrekt (mit 'run pdv') gestartet wurde. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung "PDV-Programme müssen mit 'run pdv' gestartet werden!". Dieser Fehler kann nicht auftreten, wenn die Programme vom #on("b")#gs-Prozess#off("b")#-Menu gestartet werden! - An jeden Digitalausgang des angeschlossenen Interface-Systems wird der Wert '0', an jeden Analogausgang eine "Nullspannung" angelegt (d.h. alles wird "ausgeschaltet"). Die internen Variablen werden dabei initialisiert. #page# #on("b")# PROC spannungswert (INT CONST kanal) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine analoge Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Analog-Eingabe möglich!". - ermittelt die laut Konfiguration aktuelle Obergrenze (u max) und Untergrenze (u min) des Spannungsbereiches am angegebenen Analogeingang. - liest den aktuell anliegenden Wert (0 #on("b")#<#off("b")# 'wert' #on("b")#<#off("b")# 255) am angegebenen Kanal ein und wandelt ihn nach folgender Rechnung: #on("b")# real(wert) * (u max - u min) lieferwert = ---------------------------- + u min 255.0 #off("b")# - liefert einen REAL-Wert mit  u min #on("b")#<#off("b")# 'lieferwert' #on("b")#<#off("b")# u max, gerundet auf drei Nachkommastellen. #on("b")# PROC spannungswert ausgeben (INT CONST kanal, REAL CONST spannung) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". #page# - untersucht, ob am angegebenen Kanal laut Konfiguration eine analoge Aus­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Analog-Ausgabe möglich!". - ermittelt die laut Konfiguration aktuelle Obergrenze (u max) und Untergrenze (u min) des Spannungsbereiches am angegebenen Analogausgang und prüft, ob  u min #on("b")#<#off("b")# 'spannung' #on("b")#<#off("b")# u max. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehlermeldung 'Der Spannungswert ... ist nicht zulässig!". - wandelt die angegebene 'spannung' nach der Rechnung: #on("b")# (wert - u min) * 255.0 ausgabewert = int ( ---------------------- + 0.5 ) u max - u min #off("b")# - gibt den ermittelten 'ausgabewert' am angegebenen Kanal aus. #on("b")# REAL PROC temperatur (REAL CONST spannungswert) #off("b")# - errechnet aus dem Spannungswert, der vom Temperaturfühler eingelesen wurde, der Thermometerkonstanten und der Minimaltemperatur die Temperatur in �C. - liefert einen REAL-Wert (die Temperatur in �C). So nur anwendbar auf den Temperaturfühler der Fa. AKTRONIK! #on("b")# PROC tue nichts #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. #page# #on("b")# PROC warte (INT CONST sekunden) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - wirkt sonst wie 'pause (sekunden * 10)'. #on("b")# PROC warte (REAL CONST sekunden) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - wirkt sonst wie 'pause (int (sekunden * 10.0 + 0.5))'. #on("b")# PROC wert an analogausgang ausgeben (INT CONST kanal, wert) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine analoge Aus­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Analog-Ausgabe möglich!". - ermittelt den auszugebenden Wert durch die Rechnung #on("b")# #center#ausgabe = wert MOD 256, #off("b")# und gibt diesen Wert am angegebenen Kanal aus. Die am Analogausgang auszugebende Spannung wird vom D/A-Wandler des Interface-Systems er­ mittelt. #page# #on("b")# INT PROC wert von analogeingang (INT CONST kanal) #off("b")# - untersucht, ob inzwischen die Tastenfolge eingegeben wurde. Ist das der Fall, dann erfolgt ein Abbruch mit der Fehlermeldung "Programm-Abbruch durch !". - registriert, ob inzwischen die Tastenfolge eingegeben wurde. - untersucht, ob die angegebene Kanalnummer grundsätzlich zulässig ist (1 #on("b")#<#off("b")# 'kanal' #on("b")#<#off("b")# 49). Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "Kanalnummer ... ist unzulässig!". - untersucht, ob am angegebenen Kanal laut Konfiguration eine analoge Ein­ gabe möglich ist. Ist das nicht der Fall, erfolgt ein Abbruch mit der Fehler­ meldung "An Kanal ... ist keine Analog-Eingabe möglich!". - liefert den vom A/D-Wandler des Interface-Systems gelieferten Wert mit 0 #on("b")#<#off("b")# 'lieferwert' #on("b")#<#off("b")# 255.