-
Die
Erfindung betrifft ein Verfahren zum Parametrieren von an einem
Datenübertragungsmedium
angeschalteten Betriebsmitteln.
-
Zur
Inbetriebnahme und Parametrierung von Betriebsmitteln, wie zum Beispiel
von Feldbusgeräten
einer Automatisierungsanlage, wird üblicherweise eine Parametrierungssoftware,
wie z. B. das FDT/DTM(Filed Device Tool/Device Type Manager)-Softwaretool,
verwendet. Mit Hilfe des FDT/DTM-Konzepts ist es möglich, herstellerspezifische
Feldbusgeräte
zu parametrieren und zu bedienen. Eine in einem FDT-Container eingebundene Software
(ein DTM wird vom Gerätehersteller
geschrieben) kann über
Kommunikations-DTMs auf das Feldbusgerät in einer Punkt-zu-Punkt Beziehung zugreifen.
Der Administrator der Anlage übergibt
die notwendigen DTMs und den FDT-Container, soweit dieser nicht
bereits durch eine Leitstation der Anlage bereitgestellt wird, der
Anlage. Nutzer der Anlage können
nunmehr die Geräteparametrierung
verwenden.
-
Für die Parametrierung
sind zunächst
für die jeweiligen
Betriebsmittel Gerätebeschreibungen
notwendig. Die in standardisierten Gerätebeschreibungen enthaltenen
Informationen in einer listenförmigen
XML-Darstellung auf Papier oder in einer XML-Darstellung auf einem
Datenträger
können dann
zur Konfiguration von Bussystemen genutzt werden. Damit können dann
z. B. Busmaster durch manuelle Übernahme
der Geräteparameter
parametriert werden. Eine Verknüpfung
der in einem Programmiersystem erstellten Programme mit den Daten
die über
Bussysteme eingelesen oder ausgegeben werden, geschieht üblicherweise über entsprechende
Zuordnungstools. Für
den Zugriff auf Daten oder Funktionen von komplexen Feldbusgeräten werden
z. B. Kommunikationsbausteine in den Programmen verwendet und von
den Anbietern dieser Geräte
in Form einer Beschreibung zur Verfügung gestellt.
-
Für die jeweilige
programmtechnische Datenzuordnung sind jedoch hohe Engineeringaufwände erforderlich,
da die Funktionsschnittstellen in den Gerätebeschreibungen die Festlegung
des Datenformats, der Dimensionen und Portadressen erfordern. Zudem
ist die Verwendung von Kommunikationsbausteinen aufgrund manueller Übertragung
der Funktionsschnittstellen zum Zugriff auf die Gerätedaten umständlich,
so dass die bisher bekannten Verfahren zum Parametrieren von Betriebsmitteln
für die
Anwender sehr aufwendig sind.
-
Der
Erfindung liegt daher die Aufgabe zu Grunde, ein Verfahren zum Parametrieren
zur Verfügung
zu stellen, welches einem Anwender eine vereinfachte Handhabung
ermöglicht,
so dass der Aufwand für
den Anwender deutlich reduziert werden kann.
-
Die
Lösung
der Aufgabe erfolgt erfindungsgemäß durch die Merkmale des Anspruchs
1. Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
-
Das
erfindungsgemäße Verfahren
zum Parametrieren von an einem Datenübertragungsmedium angeschalteten
Betriebsmitteln weist folgende Schritte auf:
- a)
Erstellen für
wenigstens einige der angeschalteten Betriebsmittel jeweils eine
Geräteberschreibung
in einer für
die jeweilige Steuerung notwendigen Programmier-Hochsprache und in einer Darstellungsweise,
die die Parametrierung unterstützt,
wobei jede Gerätebeschreibung wenigstens
eine Funktion und den dazugehörigen
Parametersatz enthält;
- b) Auswahl der zur Funktion erforderlichen Parameter aus der
Gerätebeschreibung
innerhalb eines Programmiertools;
- c) Archivieren und Anbieten der ausgewerteten Gerätebeschreibung
als Gerätebaustein
zur weiteren Verwendung innerhalb des Programmiertools oder externen
Bibliotheken zur Verwendung von neuen Anlagen-Konfigurationen.
-
Bei
den Betriebsmitteln kann es beispielsweise um Feldbusgeräte, wie
Sensoren, Aktoren, Steuereinrichtungen und dergleichen handeln.
Zunächst
wird eine Gerätebeschreibung
der jeweiligen Betriebsmittel erstellt, wobei die Gerätebeschreibung wenigstens
eine Funktion sowie den dazu gehörenden
Parameterdatensatz umfasst. Optional können zu jedem Parametersatz
auch noch Wertebereiche angegeben werden. Funktionen eines Betriebsmittels
können
beispielsweise Bohren, Fräsen,
Scannen und dergleichen sein. Ein Parametersatz kann einen einzelnen
oder mehrere Parameter enthalten, die beispielsweise den Bewegungsablauf
eines Betriebsmittels festlegen. Ein Parameter kann aber selbst
auch einen Wertebereich darstellen. Wenn separat zu den Parametersätzen Wertebereiche
angegeben werden, so können
diese beispielsweise die Bohrtiefe oder den Fräsgrad definieren.
-
Nach
dem Erstellen der Gerätebeschreibung wird
diese ausgewertet und analysiert, wobei dieses innerhalb eines Programmiertools,
d. h. in dem Programmiersystem bzw. der Programmierumgebung, erfolgt.
Dadurch kann die Gerätebeschreibung
für einen
Anwender direkt in dem Programmiertool und nicht erst in einem späteren Tool,
beispielsweise einem Konfigurationstool, zur weiteren Verwendung zur
Verfügung
gestellt werden. Ferner kann die Parametrierung der Betriebsmittel
bereits während
dem Programmieren erfolgen, so dass aus den Informationen der Gerätebeschreibung
direkt ein Programm bzw. ein Programmteil automatisch erstellt werden kann.
Die ausgewertete Gerätebeschreibung
wird dem Anwender als ein Gerätebaustein
in einer beliebigen Programmier-Hochsprache aus einer Bibliothek
angeboten, wobei der Gerätebaustein
alle Fähigkeiten
des Gerätes
bzw. des Betriebsmittels enthält,
so dass der Anwender entsprechend seiner Aufgabenstellung aus einer
Menge von Gerätebausteinen
den für
ihn passendsten Gerätebaustein
auswählen
kann, um diesen unmittelbar bei mehrfacher Verwendung in einer Anlage
weiterverwenden zu können.
Vorteilhafterweise kann dies bei der erfindungsgemäßen Lösung bereits
während
des Programmierens selber erfolgen, so dass dem Anwender eine vereinfachte
Handhabung ermöglicht
wird, wobei die Engineeringaufwände
deutlich reduziert werden können.
Zudem ist es nicht mehr erforderlich zusätzliche Kommunikationsbausteine
bei einer Mehrfachverwendung in einer Anlage zum Zugriff auf die
Gerätedaten
generieren zu müssen.
-
Die
ausgewertete Gerätebeschreibung
wird dabei vorzugsweise in Schritt c) dem Anwender in einer grafischen
Darstellung als Gerätebaustein
angeboten, so dass der Anwender direkt darauf diesen und auf seine
zu übertragenden
Parameter zugreifen kann.
-
Der
Gerätebaustein
wird dabei in Schritt c) bevorzugt in einer Bibliothek auf einem
Datenträger abgelegt.
Dadurch können
mehrere Gerätebausteine je
nach Funktionsumfang in der Bibliothek abgelegt und dort gesammelt
und geordnet werden, wobei ein Anwender jederzeit auf diese Bibliothek noch
während
des Programmierens, d. h. solange er sich in dem Programmiertool
befindet, zugreifen kann und sich den für seine Anwendungen benötigten Gerätebaustein
aus dieser Bibliothek heraussuchen und auswählen kann. In der Bibliothek
werden dadurch die Abbildungen bzw. die Fähigkeiten der Betriebsmittel
abgelegt. Dies ermöglicht
einem Anwender eine wesentlich einfachere und unkompliziertere Handhabung
als es bisher der Fall gewesen ist.
-
Die
ausgewertete Gerätebeschreibung
wird nach einer weiter bevorzugten Ausgestaltung in Schritt c) in
einer Programmier-Hochsprache angeboten, die beispielsweise aus
einer maschinenlesbaren XML-Datei erstellt wird. Die Informationen
aus der Gerätebeschreibung
werden dem Programmierer direkt in der entsprechenden Programmier-Hochsprache als Gerätebaustein
angeboten. Dadurch, dass die ausgewertete Gerätebeschreibung in einer Programmier-Hochsprache angeboten
wird, kann die Gerätebeschreibung
unmittelbar in dem Programmiertool verwendet und bearbeitet werden.
Das Programmiertool kann dadurch die Gerätebeschreibung sozusagen sofort
lesen und verstehen. Das setzt voraus, dass die Gerätebausteine
für verschiedene Programmier-Hochsprachen
zur Verfügung
stehen.
-
In
einem weiteren Schritt d) können
nach einer vorteilhaften Ausgestaltung der Erfindung ein oder mehrere
Gerätebausteine
von dem Anwender ausgesucht werden. Dabei können die in den Gerätebausteinen
enthaltenden Parametersätze
bei den im Schritt d) ausgewählten
Gerätebausteinen
durch den Anwender verändert
werden. Dies erfolgt noch innerhalb des Programmiertools automatisch.
Benötigt
ein Anwender beispielsweise aus 25 zur Verfügung stehenden Parametern einer
Gerätebeschreibung
bzw. eines Betriebsmittels nur einen einzigen Parameter und will
der Anwender diesen einen Parameter beispielsweise auf den Wert
5 setzen, so erfolgt dies bei der erfindungsgemäßen Lösung grafisch, indem beispielsweise
eine Art Liste aufgeklappt wird, in welche der Anwender den Wert
5 eintragen kann. Das Programmiertool bzw. das Programmiersystem
weiß dann,
dass es einen Dienst abschicken muss mit dem Wert 5 an die Gerätebeschreibung bzw.
an das Betriebsmittel. Dies alles erfolgt automatisch. Im Gegensatz
dazu, war es bisher erforderlich, dass der erforderliche Kommunikationsfunktionsbaustein
aus einer Bibliothek entnommen werden musste, welcher parametriert
werden musste, der Anwender anschließend aus der Gerätebeschreibung
den Index für
den Parameter raussuchen musste und diesen per Hand eintragen musste.
Dies erforderte viel Handarbeit, die nunmehr entfallen kann, da
das Programmiertool die Informationen über das jeweilige Betriebsmittel
direkt zur Verfügung
hat und diese Informationen nicht erst durch den Anwender per Hand aus
speziellen Listen herausgesucht werden müssen und miteinander verknüpft werden
müssen.
Zudem kann dies nun bereits in dem Programmiertool ausgeführt werden
und nicht erst dann, wenn die Betriebsmittel beispielsweise konfiguriert
werden.
-
In
einem weiteren Schritt e1) kann vorteilhafterweise aus einem oder
aus mehreren ausgewählten
Gerätebausteinen
ein Programmteil erzeugt werden. Das Programmteil kann dadurch sofort
noch während
des Programmierens erzeugt werden ohne, dass ein zusätzlicher
Schritt der Konfiguration der Gerätebeschreibung notwendig wäre.
-
Es
ist aber auch nach einer weiteren vorteilhaften Ausgestaltung der
Erfindung möglich,
dass in einem Schritt e2) der oder die ausgewählten Gerätebausteine mit zusätzlich auswählbaren
Funktionsbausteinen zu einer Funktionseinheit zusammengestellt werden,
wobei aus der Funktionseinheit ein Programmteil erzeugbar ist und
somit auch einer Bibliothek zugeführt werden kann. Bisher waren
Funktionsbausteine beispielsweise für Regelungsalgorithmen vorgesehen.
Die Funktionseinheit ist eine Art mechatronische Einheit, welche
einen oder mehrere ausgewählte
Gerätebausteine
und die dazu ausgewählten
Funktionsbausteine umfasst. Das Erzeugen des Programmteils aus dieser
Funktionseinheit erfolgt dabei ebenfalls noch während des Programmierens innerhalb
des Programmiertools.
-
Die
Funktionseinheit kann dabei vorzugsweise bevor daraus ein Programmteil
erzeugt wird, in einem Katalog abgelegt werden. Bevorzugt werden mehr
als eine Funktionseinheit in einem solchen Katalog abgelegt, sortiert
und gespeichert. Aus diesem Katalog kann ein Anwender sich die für ihn passendste
Funktionseinheit auswählen
und daraus ein Programmteil erzeugen. Dadurch wird die Anwendung
für einen
Anwender noch weiter vereinfacht, da er bereits erstellte, komplexe
Funktionseinheiten aus einem Katalog auswählen kann und diese nicht in mühsamer Handarbeit
bei jeder Anwendung von Neuem erst erstellen muss.
-
Nachfolgend
wird die Erfindung unter Bezugnahme auf die anliegenden Zeichnungen
anhand bevorzugter Ausführungsformen
näher erläutert.
-
Es
zeigen
-
1 schematisch
eine Automatisierungsanlage,
-
2 schematisch
ein Verknüpfung
von Gerätebausteinen
und Funktionsbausteinen in einer Funktionsbausteinsprache,
-
3 schematisch
eine Funktionseinheit,
-
4 schematisch
eine mögliche
Applikation.
-
1 zeigt
exemplarisch eine Automatisierungsanlage mit einem einen Sensor 10 und
einen Aktor 12 aufweisenden Feldbusgerät 14 als Betriebsmittel.
Das Feldbusgerät 14 ist über einen
Feldbus 16 mit einem Kommunikationssystem 18 und
einer Steuerung 20 verbunden, welche wiederum über ein Ethernet 22 mit
einem Personal Computer 24 verbunden sind. Der Personal
Computer 24 umfasst ein Programmiertool 26, in
welchem einem Anwender Gerätebeschreibungen 28 der
Feldbusgeräte 14,
d. h. des Sensors 10 und des Aktors 12, unmittelbar
grafisch zur Verfügung
gestellt werden. Die Gerätebeschreibungen 28 können dadurch
in dem Programmiertool 26, d. h. in der Programmierumgebung,
unmittelbar zur Programmierung mit genutzt werden. Die Informationen
aus der Gerätebeschreibung 28 werden dem
Programmierer direkt in der entsprechenden Programmiersprache angeboten.
Gemäß einer
Ausführungsform
ist die in 2 gezeigte Programmiersprache
eine Funktionsbausteinsprache, in welcher die Feldbusgeräte bzw.
die Betriebsmittel 10, 12, 14 als Gerätebaustein
dargestellt sind.
-
Bisher
war es so, dass Funktionsbausteine und/oder Algorithmen miteinander
verknüpft
wurden. Damit diese auf entsprechende Sensoren bzw. Aktoren einwirken
konnten, musste man im nächsten Schritt
Variablen anlegen und diese mit den Sensoren bzw. Aktoren verknüpfen und
dadurch eine Buskonfiguration durchführen, bei der eine Zuordnung erstellt
wurde, an welcher Stelle der Sensor bzw. Aktor sich befinden soll.
Dies erfolgte erst weit nach dem Programmieren, beispielsweise in
einem Buskonfigurationstool. Nunmehr erfolgt dies bereits während des
Programmierens innerhalb des Programmiertools. Dafür wird die
Gerätebeschreibung
als eine maschinenlesbare XML-Datei
in dem Programmiertool selber ausgewertet und dem Anwender grafisch
als ein Gerätebaustein
in der Funktionsbausteinsprache präsentiert. Der Gerätebaustein
bildet das Feldbusgerät
mit allen seinen Fähigkeiten
ab, so dass beispielsweise das Verändern von Parametern des Feldbusgerätes durch
den Anwender bereits während
des Programmierens vorgenommen werden kann und nicht erst später in einem
Konfigurationstool oder dergleichen. Somit können unmittelbar an der Stelle,
wo der Anwender programmiert und damit auch das Feldbusgerät unmittelbar
in dem Programm benutzen möchte,
alle Informationen der Gerätebeschreibung
angeboten werden, die in der Gerätebeschreibung
vorhanden sind, d. h. damit, dass das Programmiertool die Gerätebeschreibung
dementsprechend analysiert und eine entsprechende grafische Repräsentation
liefert.
-
Die
Informationen aus der Gerätebeschreibung 28,
beispielsweise aus der Gerätebeschreibung 28 der
Feldbusgeräte
Sensor 10 und Aktor 12, werden dafür dem Anwender
in geeigneter Weise angeboten. Die Signale des Sensors 10,
wie ein Druckwert oder eine Schaltschwelle, stellen Ausgangsvariablen 30 eines
Gerätebausteins
dar, welche von dem Anwender über
eine Oberfläche
einstellbar sind. Der Gerätebaustein
selber weist einstellbare Parameter auf, wobei über den Gerätebaustein ein Dialog zum Einstellen
der einzelnen Parameterwerte aktivierbar ist.
-
Aus
den Informationen der Gerätebeschreibung 28 und
den Ausgangsvariablen kann mittels eines Compilers ein Programmteil
erzeugt werden, welches entsprechende Services über das Kommunikationssystem 18 zu
dem Feldbusgerät 14 absendet.
Dabei können
bei Bedarf in einem Engineeringtool, d. h. einem Planungstool, noch
weitere Angaben, wie beispielsweise, wo das Feldbusgerät 14 angeschlossen
ist, beispielsweise als Kanal an der Steuerung oder als Adresse
im Bussystem, und/oder wann die Parametrierung erfolgen soll, d.
h. beim Anlauf oder programmgesteuert durch Aktivierungssignale
direkt im Programm, von dem Anwender getätigt werden. Das Engineeringtool
kann dem Anwender auch selber vorschlagen, wo die Geräte angeschlossen
werden sollen. Alternativ kann der Anwender auch vorab definieren,
wo bestimmte Feldbusgeräte 14 angeschlossen
werden sollen. Dann kann das Engineeringtool die entsprechenden
Gerätebausteine
in der Programmierumgebung direkt anbieten.
-
Dadurch
sind keine Kommunikationsbausteine mehr für den Zugriff auf Gerätedaten
erforderlich. Zudem kann genau der Code erzeugt werden, der für den Zugriff
auf die Geräte
erforderlich ist und ferner kann die Programmlaufzeit selber optimiert
werden.
-
Die
Gerätebausteine
können
auch, wie in 3 gezeigt, zusammen mit Funktionsbausteinen 32,
beispielsweise Funktionsbausteinen 32 in Form von Regelungsalgorithmen,
zu einer Funktionseinheit 34 verknüpft und zusammengestellt werden,
wobei die Funktionseinheit 34 wiederum in einem Katalog
abgelegt werden kann, auf welchen ein Anwender jederzeit zugreifen
kann. Wählt
der Anwender eine Funktionseinheit 34 aus dem Katalog aus,
so müssen eventuell
je nach Konfiguration lediglich die Anschlussstellen neu berechnet
werden und entsprechende IO- Module
in die Hardwarekonfiguration eingefügt werden. Die dabei erforderlichen
Feldbusgeräte 14,
bzw. Sensoren 10 und Aktoren 12, können aus
der Funktionseinheit 34 ermittelt werden.
-
4 zeigt
ein Beispiel für
eine mögliche
Applikation 36, wobei die Applikation 36 alle
an die Steuerung anzuschließenden
Sensoren 10 und Aktoren 12 beinhaltet, so dass
eine derartige Applikation 36 zur automatischen Hardwarekonfiguration
einer Station genutzt werden kann. Dadurch ist vorteilhafterweise
eine automatische Hardwarekonfiguration aus dem Programm bzw. dem
Programmiertool heraus möglich.
-
Beispielsweise
wird auf einem Programmblatt eine Liste erstellt, welche Funktionsbausteine 32 mit
welchen Gerätebausteinen
auf welche Art und Weise miteinander verknüpft sind. Daraus kann der Anwender
dann entnehmen, welche notwendige IO-Konfiguration an der Steuerung
da sein muss, damit beispielsweise der erste und der zweite Sensor 10 sowie
ein Aktor 12 angeschlossen werden können. Das Programmiertool kann
aber auch direkt vorschlagen, dass beispielsweise der erste Sensor 10 an
einen ersten Kanal und der zweite Sensor 10 an einen zweiten
Kanal angeschlossen werden kann. D. h. die Hardwarekonfiguration
einer Steuerung oder eines Bussystems kann nunmehr aus dem Programm,
wo beispielsweise auch die Informationen der Sensoren 10 miteinander
verknüpft
werden, automatisch vorgeschlagen werden. Die Parametrierung der
Hardwarekonfiguration kann damit fehlerfreier und erheblich schneller
erstellt werden. Bisher war es so, dass dies bei der Parametrierung
im Einzelnen angegeben werden musste, was sehr aufwendig gewesen
ist, da man bei der Parametrierung die einzelnen Bauteile, die man
benötigt, also
nicht nur die Geräte,
sondern auch die IO-Scheiben, mehr oder weniger direkt zuordnen
musste. Man musste sich also zusätzlich
zu den Datenblättern,
die man hatte Notizen machen, an welchem Port man was zu tun hatte.
Durch das erfindungsgemäße Verfahren können diese
Arbeitsschritte eingespart werden, da dies bereits alles in dem
Programmiertool automatisch selber erfolgen kann.
-
- 10
- Sensor
- 12
- Aktor
- 14
- Feldbusgerät
- 16
- Feldbus
- 18
- Kommunikationssystem
- 20
- Steuerung
- 22
- Ethernet
- 24
- Personal
Computer
- 26
- Programmiertool
- 28
- Gerätebeschreibung
- 30
- Ausgangsvariable
- 32
- Funktionsbaustein
- 34
- Funktionseinheit
- 36
- Applikation