-
In
der Automatisierungstechnik werden vielfach Feldgeräte eingesetzt,
die zur Erfassung und/oder Beeinflussung von Prozessvariablen dienen.
Beispiele für
derartige Feldgeräte
sind Füllstandsmessgeräte, Massedurchflussmessgeräte, Druck-
und Temperaturmessgeräte
etc., die als Sensoren die entsprechenden Prozessvariablen Füllstand,
Durchfluss, Druck bzw. Temperatur erfassen.
-
Zur
Beeinflussung von Prozessvariablen dienen Aktoren, wie z. B. Ventile
die den Durchfluss einer Flüssigkeit
in einem Rohrleitungsabschnitt oder Pumpen die den Füllstand
in einem Behälter
beeinflussen.
-
Eine
Vielzahl solcher Feldgeräte
wird von der Firma Endress + Hauser hergestellt und vertrieben.
-
In
der Regel sind Feldgeräte
in modernen Fabrikationsanlagen über
standardisierte Feldbussysteme (Profibus®, Foundation®Fieldbus,
HART® etc.)
mit übergeordneten
Einheiten, z. Bsp. Leitsystemen oder Steuereinheiten verbunden.
Diese dienen zur Prozesssteuerung, Prozessvisualisierung, Prozessüberwachung
sowie zur Inbetriebnahme der Feldgeräte.
-
Meist
sind Feldbussysteme auch in Unternehmensnetzwerke integriert. Damit
kann aus unterschiedlichen Bereichen eines Unternehmens auf Prozess-
bzw. Feldgerätedaten
zugegriffen werden.
-
Zur
weltweiten Kommunikation können
Firmennetzwerke auch mit öffentlichen
Netzwerken, z. B. dem Internet, verbunden sein.
-
Die
einwandfreie Funktion der Feldgeräte bzw. aller an ein Feldbussystem
angeschlossenen Einheiten ist von entscheidender Bedeutung für den reibungslosen
und sicheren Prozessablauf in einem Unternehmen. Störungen im
Prozessablauf aufgrund von Fehlfunktionen oder Ausfall einzelner
Feldgeräte können erhebliche
Kosten verursachen.
-
Um
die vielfältigen
Aufgaben, die an moderne Feldgeräte
gestellt werden, zu lösen,
sind leistungsfähige
Soft- und Hardwarekomponenten notwendig. Man bezeichnet Feldgeräte deshalb
auch als „Embedded
Systems", d. h.
speziell an bestimmte Aufgaben angepasste Rechnersysteme.
-
Die
Software die in den Feldgeräten
eingesetzt wird und die Funktionalität der Feldgeräte definiert,
wird als Anwendungsprogramm (Firmware) bezeichnet. Diese Programme,
die in Mikrocontrollern ablaufen, sind in der Regel in C++ geschrieben
und weisen eine Vielzahl von Kostanten und Variablen auf, die bereits
bei der Programmierung definiert werden müssen.
-
Es
stehen verschiedene Datentypen für
die Variablen zur Verfügung
z. B. String, Float, Real oder Integer. Neben dem Datentyp muss
auch der Variablenname und die Anzahl der zu reservierenden Bytes (Bytelänge), die
der Datentyp im Speicher belegt, festgelegt werden.
-
Diese
Festlegung, d. h. die Angabe von Variablenname, Datentyp und Bytelänge, wird
als Variablen-Deklaration bezeichnet und erfolgt am Anfang eines
Programms. In der Regel werden auch der Speicherort und die Zugriffrechte
für die
Variablen definiert.
-
Zur
Laufzeit eines Programms kann die Variablen-Deklaration nicht mehr
geändert
werden. Ein Softwareentwickler muss sich deshalb bereits bei der Programmerstellung
im Klaren sein, wie viele Bytes für die betreffende Variable
benötigt
werden. Um nicht unnötig
Speicherplatz zu belegen, sollten nicht mehr Bytes für eine Variable
reserviert werden, wie tatsächlich
auch für
diese gebraucht werden.
-
Die
Variablen in Feldgeräten
werden häufig auch
als Parameter bezeichnet. Ein Beispiel für einen Parameter ist der Grenzwert „Alarm". Übersteigt
der aktuelle Wert der Prozessvariablen diesen Grenzwert, so wird
entweder am Gerät
selbst oder in einer übergeordneten
Einheit ein Alarm signalisiert.
-
Der
Grenzwert kann vom Anwender entweder direkt am Gerät oder über ein
entsprechendes Bedienprogramm z. B. FieldCare Fa. Endress + Hauser
eingestellt werden. Die Änderung
des Wertes erfolgt zur Laufzeit des Programms.
-
Ein
Parameter der zur Identifikation eines Feldgerätes benötigt wird, ist der Parameter "Serien-Nummer". Dieser Parameter
ist für
den Wert „ABC123EFG4" als Stringvariable
mit einer Länge von
10 Bytes definiert.
-
Eine
Seriennummer enthält
verschiedene Informationen des Herstellers. Normalerweise sind alle Serien-Nummern
von einem Gerätehersteller ähnlich aufgebaut
und besitzen dieselbe Struktur und das gleiche Format.
-
Mit
zunehmender der Produktvielfalt und steigenden Anforderung an das „Life Cycle
Management" von
Feldgeräten
wird der Aufbau der Serien-Nummer immer komplexer. Z. B. kann die
Serien-Nummer zusätzliche
Informationen zu den Produktionsstätten oder einem Produktschlüsseln beinhalten.
Auch kann die Seriennummer in Verbindung mit dem richtigen Kennwort
einem Servicetechniker erst den Zugang zu speziellen Geräteparametern
erlauben. Mit Einführung
solcher Konzepte können
einem Kunden mehr Dienstleistungen vom Hersteller zu seinen die
Geräten
angeboten werden. Um diese Dienstleistungen auch für bereits
eingesetzte Geräte (Installierte
Basis) anbieten zu können,
müssen
die Serien-Nummern dieser entsprechend auf längere Serien-Nummern umgestellt
werden, um auch diese Geräte
in das „Life
Cycle Management" effektiv
integrieren zu können.
-
Für die Änderung
der Bytelänge
einer Serien-Nummer ist eine Anpassung der Variablen-Deklaration
in der Firmware notwendig. Bei Geräten die teilweise über 10–15 Jahre
eingesetzt werden, ist die Wahrscheinlichkeit, dass eine solche
Anpassung notwendig wird, relativ groß.
-
Für die Änderung
der Firmware ist ein so genanntes Software-Update notwendig, d.
h. vorhandene Firmware im Feldgerät muss gegen eine neue Firmware
ausgetauscht werden. Ein solcher Austausch ist aber nur möglich, wenn
der Betrieb des Feldgerätes
unterbrochen wird. Während
des Update-Vorgangs sind weder eine Messwerterfassung und noch eine
Kommunikation mit einem Leitsystem möglich. Das Feldgerät steht
für die
Automatisierungsaufgabe somit nicht zur Verfügung. Dies kann unter Umständen zu
einem Anlagenstillstand mit einem entsprechenden Produktionsausfall
führen.
-
Eine Änderung
der Bytelänge
einer formatierten Variablen in einem Anwendungsprogramm für Feldgeräte der Automatisierungstechnik
ist insgesamt sehr aufwendig.
-
Aufgabe
der Erfindung ist es deshalb ein Verfahren zum Betreiben eines Feldgerätes der
Automatisierungstechnik mittels eines mehrere formatierte Variablen
aufweisenden Anwendungsprogramms anzugeben, das diese Nachteile
nicht aufweist, das insbesondere kein Software-Update erfordert,
wenn die Formatierung einer Variablen geändert werden muss.
-
Gelöst wird
diese Aufgabe durch die im Anspruch 1 angegebenen Merkmale.
-
Vorteilhafte
Weiterentwicklungen sind in den Unteransprüchen angegeben.
-
Die
wesentliche Idee der Erfindung besteht darin, dass mindestens das
Format einer Variablen zur Laufzeit definiert werden kann.
-
In
vorteilhafter Weise ist das Format der Variable(n) in einer Konfigurationsdatei
festgelegt.
-
Diese
Konfigurationsdatei kann über
eine am Feldgerät
vorgesehene Kommunikationsschnittstelle sehr einfach in das Feldgerät übertragen
werden.
-
Meist
sind die zu ändernden
Variablen, Variablen eines elektronischen Typenschilds.
-
Es
ist besonders vorteilhaft, das elektronische Typenschild mit einer
Versionsnummer zu versehen, der ein Satz von Variablen mit einer
definierten Formatierung zugeordnet ist.
-
Nachfolgend
ist die Erfindung anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert.
-
Es
zeigen:
-
1 Netzwerk
der Prozessautomatisierungstechnik mit mehreren Feldgeräten in schematischer
Darstellung;
-
2 Blockschaltbild
eines Feldgerätes.
-
In 1 ist
ein Netzwerk der Automatisierungstechnik näher dargestellt. An einen Datenbus D1
sind mehrere Rechnereinheiten (Workstations) WS1, WS2 angeschlossen.
Diese Rechnereinheiten dienen als übergeordnete Einheiten (Leitsystem
bzw. Steuereinheit) zur Prozessvisualisierung, Prozessüberwachung
und zum Engineering sowie zum Bedienen und Überwachen von Feldgeräten. Der
Datenbus D1 arbeitet z. B. nach dem Profibus® DP-Standard
oder nach dem HSE (High Speed Ethernet)-Standard der Foundation® Fieldbus. Über ein Gateway
1, das auch als Linking Device oder als Segmentkoppler bezeichnet
wird, ist der Datenbus D1 mit einem Feldbussegment SM1 verbunden.
Das Feldbussegment SM1 besteht aus mehreren Feldgeräten F1,
F2, F3, F4 die über
einen Feldbus FB miteinander verbunden sind. Bei den Feldgeräten F1, F2,
F3, F4 können
es sich sowohl um Sensoren oder um Aktoren handeln. Der Feldbus
FB arbeitet entsprechend nach einem der bekannten Feldbus-Standards
wie Profibus, Foundation Fieldbus oder HART.
-
In 2 ist
ein Blockschaltbild eines Feldgerätes z. B. F1 näher dargestellt.
Eine Recheneinheit RE (μC/CPU)
ist zur Messwerterfassung über
einen Analog/Digital-Wandler
A/D mit einem Messwertaufnehmer MA verbunden, der eine Prozessvariable
(z. B. Druck, Durchfluss oder Füllstand
etc.) erfasst. Die Recheneinheit RE ist mit mehreren Speicherelementen
verbunden. Ein RAM-Speicher
dient als temporäre
Speicher, ein EPROM-Speicher als Speicher für das in der Recheneinheit
auszuführende
Anwendungsprogramm und ein EEPROM-Speicher als Speicher für Kalibrierdaten
und verschiedene Parameterwerte insbesondere auch für das Setup-Programm
der Recheneinheit RE.
-
Weiterhin
ist die Recheneinheit RE mit einem Taktgenerator TG verbunden, der
die Zeitbasis für den
Systemtakt liefert.
-
Zur
Kommunikation mit dem Feldbussegment SM1 ist die Recheneinheit RE über einen
Kommunikations-Controller COM mit einer Feldbusschnittstelle FBS
verbunden.
-
Zur
Vor-Ort-Bedienung kann das Feldgerät F1 noch neben der Feldbusschnittstelle
FBS eine weitere Kommunikationsschnittstelle, eine Bedienschnittstelle,
aufweisen.
-
Eine
Spannungsversorgungseinheit DC liefert die notwendige Energie für das Feldgerät F1. Die Versorgungsleitungen
zu den einzelnen Bauteilen sind der Übersichtlichkeit nicht eingezeichnet.
-
Die
wesentliche Idee der Erfindung besteht darin, dass das Format der
Variable(n) in einer Konfigurationsdatei definiert wird. Die Konfigurationsdatei enthält alle
relevanten Informationen für
die Definition der Variablen.
-
Diese
Datei wird, wenn eine neue Formatierung notwendig ist, während der
Laufzeit des Anwendungsprogramms in das Gerät übertragen.
-
Nachfolgend
ist das erfindungsgemäße Verfahren
näher erläutert.
-
In
der Firmware, dem im Feldgerät
ablaufenden Anwendungsprogramm, ist ein Adressbereich mit festem
Format (z. B. Byte) und Länge
(z. B. 20) definiert.
-
In
der Konfigurationsdatei ist definiert z. B.: SN = 1–16, String.
Bisher war die Variable SN (Serien-Nummer) nur mit 10 Bytes definiert.
Dies bedeutet, dass die Variable SN nunmehr die ersten 16 Bytes
im Speicher mit dem Format „String" belegen soll.
-
Über eine
Kommunikationsschnittstelle (Bedienschnittstelle/Feldbusschnittstelle)
am Feldgerät wird
mit Hilfe eines Bedienprogramms (z. B. FieldCare, Fa. Endress +
Hauser) ein Konfigurationsdienst aufgerufen und die Konfigurationsdatei
dem Feldgerät übergeben.
Anschließend
wird die Variable SN im Feldgerät automatisch
umformatiert.
-
Um
die geänderte
Serien-Nummer im Feldgerät
zu speichern, wird ein Schreibdienst im Feldgerät aufgerufen und die Variable „SN" mit dem Wert: „ABC123EFG4-00001" übergeben. Der Schreibdienst
Geräte
codiert die Variable vom Typ „String" ins „Byte" Format und speichert
diesen gemäß Konfigurationsdatei
in den Bytes 1–16
ab.
-
Über die
Kommunikationsschnittstelle kann über einen Lesedienst die Variable „SN" nun von einer Bedieneinheit
abgefragt werden.
-
Ein
Lesedienst im Geräte
liest die Variablen aus den Bytes 1–16 aus und decodiert sie gemäß Konfigurationsdatei
vom „Byte" – in das „String" – Format
zurück
und übergibt
die Variable „SN" mit dem Wert: „ABC123EFG4-00001" an die Bedieneinheit.
-
Variablen
deren Format geändert
werden muss, sind in der Regel die Variablen eines elektronischen
Typenschilds (electronic nameplate), wie z. B. die Serien-Nummer.
-
Es
ist sinnvoll dem elektronischen Typenschild eine Versionsnummer
zuzuordnen, wobei jeder Versionsnummer ein Satz von Variablen mit
einer definierten Formatierung entspricht.
-
Die
so angepassten Serien-Nummern bzw. elektronischen Typenschilder
erlauben es z. B. auch Altgeräte
(installierte Basis) in „Life-Cycle-Management"-Anwendungen zu integrieren.
-
Mit
dem erfindungsgemäßen Verfahren
kann in einfacher Weise zur Laufzeit eines Anwendungsprogramms die
Formatierung einer Variablen in einem Feldgerät geändert werden. Da die Änderung zur
Laufzeit erfolgt, ist keine Unterbrechung des normalen Betriebs
des Feldgerätes
notwendig.