-
Die
Erfindung betrifft eine Vorrichtung, ein Verfahren und ein Computerprogramm
zur Bereitstellung eines Grafikobjektes, welches mit einem auf einer
Datenverarbeitungseinheit installierten Webbrowser grafisch darstellbar
ist.
-
Eine
derartige Vorrichtung bzw. ein derartiges Verfahren kommen beispielsweise
im Bereich der Automatisierungstechnik zum Einsatz, wenn auf Prozess-
oder Anlagenzustandswerte mittels eines handelsüblichen Webbrowsers, wie beispielsweise dem
Microsoft Internet Explorer zugegriffen werden soll. In vielen Fällen ist
es vorteilhaft, die Visualisierung derartiger Größen grafisch für einen
Benutzer aufzubereiten. Das Webparadigma (http/htm1) ist jedoch
auf die rein textuelle Darstellung begrenzt. Die einzige Möglichkeit,
eine Grafik direkt vom Webserver zum Client zu schicken, besteht
darin, Bitmaps in eine solche textuelle Darstellung einzubetten.
Da insbesondere in der Automatisierungstechnik häufig dynamische Inhalte in
einer Grafik angezeigt werden sollen, muss bei einer Änderung
dieser Inhalte stets ein neues Bitmap und schließlich eine neue HTML-Seite
erzeugt werden.
-
Alternativ
existieren Ansätze,
Grafiken erst im Webbrowser zu erzeugen. Ein solches Konzept wird
beispielsweise von der Programmiersprache Vektor Markup Language
(VML) verfolgt, bei der es sich um eine XML-basierte Sprache zur
Beschreibung zweidimensionaler Vektorgrafiken handelt. Weitere Beispiele
sind die Beschreibungssprachen Virtual Reality Modeling Language
(VRML) und Scalable Vector Graphics (SVG). Letztgenannte hat sich zu
einem Standard zur Beschreibung zweidimensionaler Vektorgrafiken
in XML-Syntax etabliert, erfordert jedoch, wie auch die zuvor genannten
Beschreibungssprachen, die Installation eines Plugin auf dem zur
Darstellung der Grafiken vorgesehenen Rechner, da dass SVG-Format
nicht nativ vom Browser unterstützt
wird. Jedoch bietet SVG für
einen Anwender ein höheres
Maß an
Funktionalität
(z.B. Drag and Drop) als dies bei einer reinen Übertragung von Grafiken in
einem Bitmapformat vom Server zum Client denkbar wäre.
-
Der
Erfindung liegt die Aufgabe zugrunde, die Darstellung eines Grafikobjektes
für verschiedene
Clients mit unterschiedlicher Darstellungssoftware zu ermöglichen.
-
Diese
Aufgabe wird durch eine Vorrichtung zur Bereitstellung eines Grafikobjektes
gelöst,
welches mit einem auf einer Datenverarbeitungseinheit installierten
Webbrowser grafisch darstellbar ist, wobei die Vorrichtung einen
Webserver zur optionalen Bereitstellung des Grafikobjektes in zumindest
einem ersten oder einem zweiten Dateiformat aufweist, wobei das
Dateiformat des bereitgestellten Grafikobjektes in Abhängigkeit
der Darstellungsmöglichkeiten des
Webbrowsers wählbar
ist.
-
Ferner
wird die Aufgabe durch ein Verfahren zur Bereitstellung eines Grafikobjektes
gelöst,
welches mit einem auf einer Datenverarbeitungseinheit installierten
Webbrowser grafisch darstellbar ist, wobei mit einem auf einer Vorrichtung
installierten Webserver das Grafikobjekt optional in zumindest einem ersten
oder einem zweiten Dateiformat bereitgestellt wird, wobei das Dateiformat
des bereitgestellten Grafikobjektes in Abhängigkeit der Darstellungsmöglichkeiten
des Webbrowsers gewählt
wird.
-
Darüber hinaus
wird die Aufgabe durch ein Computerprogramm zur Durchführung besagten
Verfahrens gelöst,
wobei das Computerprogramm zur Installation auf der Vorrichtung
vorgesehen ist.
-
Vorteilhafte
Ausführungsformen
der genannten Vorrichtung bzw. des genannten Verfahrens ergeben
sich aus den Unteransprüchen.
-
Der
Erfindung liegt die Erkenntnis zugrunde, dass im Bereich der webbasierten
Informationsdarstellungen seitens des Dienstanbieters, d. h. des
auf der Vorrichtung installierten Webservers, in der Regel der Anspruch
besteht, eine möglichst
breite Palette von Browsern zu bedienen und gleichzeitig einen möglichst
großen
Funktionsumfang im Hinblick auf die verschiedenen Browser zu bieten.
Insbesondere in Anwendungsgebieten wie der Automatisierungstechnik
ist hierbei vor allem auch die untere Leistungsklasse der zur Verfügung stehenden
Browser zu beachten. Beispielsweise sind hier auf Bedienpanels installierte
Webbrowser zu nennen, deren Funktionsumfang gegenüber Webbrowsern,
die auf PC's installiert
sind, stark eingeschränkt
ist. Ein derartiger niederperformanter Webbrowser wäre z.B.
in der Regel nicht in der Lage, XML-basierte Grafikformate zu interpretieren.
-
Mit
der erfindungsgemäßen Vorrichtung
wird auf überraschend
einfache Art und Weise dem Funktionsumfang verschiedener Browserinstallationen Rechung
getragen. Ein mittels des Webbrowsers grafisch darzustellendes Grafikobjekts
kann in mehreren (mindestens in zwei) Dateiformaten bereitgestellt
und an einen Client gesendet werden. Die Gestalt des Dateiformates,
welches für
das gesendete Grafikobjekt verwendet wird, orientiert sich dabei
an der Funktionalität
des Webbrowsers, der zur Visualisierung der zugrunde liegenden Grafik
vorgesehen ist.
-
Beispielsweise
ist das zweite Dateiformat in einer vorteilhaften Ausführungsform
der Erfindung derart gestaltet, dass die Darstellung des im zweiten Dateiformat
vorliegenden Grafikobjektes ein auf der Datenverarbeitungseinheit
installiertes Plugin erfordert. In einer solchen Ausführungsform
wird also das zweite Dateiformat für das Grafikobjekt nur dann
gewählt,
wenn der zur Darstellung vorgesehene Webbrowser über ein entsprechendes Plugin
verfügt,
mit dessen Hilfe das Grafikobjekt visualisiert werden kann. Ein
derartiger mit einem Plugin ausgestatteter Webbrowser ist in der
Regel in der La ge, erweiterte Funktionalitäten wie beispielsweise Drag
and Drop am Grafikobjekt zuzulassen.
-
So
ist in vorteilhafter Ausgestaltung der Erfindung das zweite Dateiformat
ein XML-basiertes Grafikformat, insbesondere Scalable Vector Graphics (SVG).
SVG ist ein klassisches Beispiel für ein Dateiformat, welches
ein Höchstmaß an Flexibilität und Funktionalität bietet,
jedoch die Installation eines Plugin's für
den Webbrowser auf der zur Darstellung vorgesehenen Datenverarbeitungseinheit
erfordert.
-
Um
mit derselben Vorrichtung auch niederperformante Webbrowser bedienen
zu können,
ist eine Ausführung
der Erfindung vorteilhaft, bei der das erste Dateiformat derart
gestaltet ist, dass die Darstellung des im ersten Dateiformat vorliegenden
Grafikobjektes kein auf der Datenverarbeitungseinheit installiertes
Plugin erfordert. Auf diese Art und Weise bietet die Vorrichtung
eine Webserverfunktionalität
in einem erweiterten Umfang für
performante Webbrowser, bei dem ein Plugin installiert ist, sowie
auch für
einfache Webbrowser ohne Plugin, wie sie beispielsweise auf Bedienpanels
in der Automatisierungstechnik installiert werden.
-
Bei
einer Bereitstellung des Grafikobjektes für sehr einfache Webbrowser,
bietet sich eine Ausführungsform
der Erfindung an, bei der das erste Dateiformat ein Pixelgrafikformat,
insbesondere ein Bitmap ist. Zur Darstellung eines vom Webserver
an den Webbrowser gesendeten Bitmaps ist keine Installation eines
Plugin's auf der
zur Darstellung des Grafikobjektes vorgesehenen Datenverarbeitungseinheit
notwendig.
-
Alternativ
ist eine Ausführungsform
der Erfindung vorteilhaft, bei der das erste Dateiformat ein Javaformat
ist.
-
Insbesondere
zur Erzeugung des Grafikobjektes in Form eines Bitmaps direkt auf
der Vorrichtung weist in vorteilhafter Ausgestaltung der Erfindung
die Vorrichtung einen Speicher für
ein Skript und ein Datenverarbeitungsprogramm sowie eine Ausführungseinheit
zur Ausführung
des Datenverarbeitungsprogramms und des Skriptes zur Erzeugung des
im ersten Dateiformat vorliegenden Grafikobjektes auf.
-
In
besonders vorteilhafter Ausgestaltung der Erfindung ist das besagte
Skript aus einer im zweiten Dateiformat vorliegenden Datei, die
zur Erzeugung des im zweiten Dateiformat vorliegenden Grafikobjektes
vorgesehen ist, transformierbar. Dies hat den Vorteil, dass nur
eine einzige Codequelle, nämlich
die im zweiten Dateiformat vorliegende Datei, verwendet werden muss,
aber trotzdem mehrere Browserklassen bestmöglich bedient werden können.
-
Eine
weitere Ausführungsform
der Erfindung ist besonders vorteilhaft, bei der die Vorrichtung
als Komponente eines Automatisierungssystems, insbesondere als speicherprogrammierbare
Steuerung, ausgeführt
ist. Unter dem Begriff Automatisierungssystem ist hier sowie im
gesamten Dokument ein System zu verstehen, welches mit Hilfe technischer Mittel
bestimmte Operationen ohne Einflussnahme des Menschen teilweise
oder ganz nach vorgegebenen Programmen durchführt. Operationen bezeichnen
in diesem Zusammenhang z. B Fertigungsprozesse, Montageprozesse,
Transportprozesse, Prozesse zur Qualitätskontrolle etc., die insbesondere im
industriellen Umfeld ablaufen.
-
Eine
Automatisierungskomponente mit Webserverfunktionalität muss in
der Praxis häufig
verschiedene Browserklassen bedienen. Beispielsweise soll auf eine
speicherprogrammierbare Steuerung mit Webserver sowohl über einen
PC, auf dem ein SVG Viewer installiert ist, als auch mit einem einfachen Bedienpanel
ohne jegliches Plugin zugegriffen werden. Durch die Funktionalität der Vorrichtung,
das Grafikobjekt in mindestens zwei Dateiformaten zur Verfügung stellen
zu können,
wird ein derartig heterogenes Clientumfeld nahezu optimal bedient.
-
Im
Folgenden wird die Erfindung anhand der in der Figur dargestellten
Ausführungsform
beschrieben und erläutert.
-
Die
Figur zeigt eine schematische Darstellung eines Verfahrens zur Bereitstellung
eines Grafikobjektes 1a, 1b mit Hilfe einer Vorrichtung 3 für eine erste
und zweite Datenverarbeitungseinrichtung 2a, 2b.
Das dargestellte Verfahren ist im Automatisierungsumfeld implementiert.
Es ermöglicht
den Zugriff auf Komponenten des Automatisierungssystems zu Bedien- und Beobachtungszwecken
mit den über das
Internet oder ein Intranet an das Automatisierungssystem angeschlossenen
Datenverarbeitungseinheiten 2a, 2b.
-
Bei
der Vorrichtung 3 handelt es sich um eine speicherprogrammierbare
Steuerung, die primär
zur Steuerung eines komplexen Automatisierungsprozesses bzw. hierfür benötigte Aktoren
und Sensoren eingesetzt werden.
-
Beispielhaft
sind in der Figur die erste Datenverarbeitungseinheit 2a und
die zweite Datenverarbeitungseinheit 2b dargestellt, wobei
auf beiden Datenverarbeitungseinheiten 2a, 2b ein
Webbrowser installiert ist. Um gewisse Zustandswerte wie beispielsweise
eine Prozesstemperatur auf eine für einen Anwender besonders
einfach erfassbare Art und Weise mit Hilfe der Datenverarbeitungseinrichtungen 2a, 2b bzw.
der auf diesen installierten Webbrowsern zu visualisieren, wird
eine grafische Aufbereitung dieser Zustandswerte angestrebt. Ein
entsprechendes Grafikobjekt 1a, 1b, welches zur
Visualisierung derartiger Informationen vorgesehen ist, wird mit
Hilfe eines auf der speicherprogrammierbaren Steuerung 3 installierten
Webservers generiert.
-
Der
Webserver ist in der Lage, das Grafikobjekt 1a, 1b in
zwei verschiedenen Dateiformaten zur Verfügung zu stellen. Es sei beispielsweise
angenommen, dass auf der zweiten Datenverarbeitungseinheit 2b ein
SVG Viewer als Plugin installiert ist, der es ermöglicht,
im SVG Format vorliegende Grafikobjekte, anzuzeigen. In einem solchen
Fall wird von der Vorrichtung 3 ein im SVG Format vorliegende
Grafikobjekt 1b an die zweite Datenverarbeitungseinrichtung 2b gesendet.
-
Die
erste Datenverarbeitungseinheit 2a verfügt hingegen über keinerlei
Plugin sondern nur über einen
einfachen Webbrowser. Die erste Datenverarbeitungseinheit 2a ist
daher nicht in der Lage, SVG Dokumente zu visualisieren. Um auch
diesen Webbrowser bedienen zu können,
stellt daher die Vorrichtung 3 das Grafikobjekt 1a direkt
als Bitmap zur Verfügung,
welches direkt in eine HTML-Seite eingebettet ist. Zur Darstellung
eines Bitmaps wird kein Plugin auf der ersten Datenverarbeitungseinheit 2a benötigt.
-
Das
dargestellte Verfahren ermöglicht
es darüber
hinaus, dass das Grafikobjekt 1a, 1b von einem
Projekteur nur in Form eines einzigen Grafikobjektes beschrieben
werden muss, obwohl es von der Vorrichtung 3 in zwei verschiedenen
Dateiformaten zur Verfügung
gestellt werden kann. Um dies zu ermöglichen, wird folgendermaßen vorgegangen.
-
Es
wird zunächst
nur eine einzige Codequelle, nämlich
eine im zweiten Dateiformat vorliegende Datei 6, d. h.
in diesem Beispiel eine SVG Datei, von einem Projekteur erstellt.
Je nach Zielbrowser kann die Vorrichtung 3 aus dieser SVG
Datei 6 direkt das Grafikobjekt 1b im SVG Format
erstellen.
-
Die
SVG Datei 6 wird darüber
hinaus einer Transformation 7 unterzogen, deren Ergebnis
ein Skript 4 darstellt. Mit Hilfe dieses Skriptes 4 und
einem geeigneten Datenverarbeitungsprogramm 5 kann auf
der Vorrichtung 3 das Grafikobjekt 1a in Form
eines Bitmaps erzeugt werden.
-
Das
beschriebene Verfahren hat den Vorteil, dass nur eine einzige Datenquelle,
nämlich
die SVG Datei 6, erstellt werden muss, wobei von der Vorrichtung 3 trotzdem
das Grafikobjekt 1a, 1b in verschiedenen Grafikformaten
zur Bedienung unterschiedlich performanter Webbrowser bereitgestellt
werden kann.