WO1992005484A1 - Computer-assisted programming and displaying system - Google Patents

Computer-assisted programming and displaying system Download PDF

Info

Publication number
WO1992005484A1
WO1992005484A1 PCT/EP1991/001793 EP9101793W WO9205484A1 WO 1992005484 A1 WO1992005484 A1 WO 1992005484A1 EP 9101793 W EP9101793 W EP 9101793W WO 9205484 A1 WO9205484 A1 WO 9205484A1
Authority
WO
WIPO (PCT)
Prior art keywords
objects
measurement
program
graphic
display
Prior art date
Application number
PCT/EP1991/001793
Other languages
German (de)
French (fr)
Inventor
Herbert Drexler
Original Assignee
SIEMENS AKTIENGESELLSCHAFT öSTERREICH
Siemens Aktiengesellschaft
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SIEMENS AKTIENGESELLSCHAFT öSTERREICH, Siemens Aktiengesellschaft filed Critical SIEMENS AKTIENGESELLSCHAFT öSTERREICH
Publication of WO1992005484A1 publication Critical patent/WO1992005484A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • FIG. 3 shows the structure of a measurement value representation
  • FIG. 4 shows a block representation of a measurement type
  • the structure of the flow diagrams can be displayed graphically (in tree form) with the image analysis program. Furthermore, the frequencies of the different object types are calculated. The diagram of an object tree created in this way can be saved and printed out.
  • the display and programming system XM manages various aspects of the flow diagrams.
  • Management objects groups of graphic objects
  • colors fill patterns PIX
  • the display and programming system XM distinguishes the following classes from graphic objects shown in FIG. 2 using the example of a boiler image BD with object tree OB.
  • object tree OB a hierarchy of groups is formed, which is referred to as object tree OB:
  • Line L as the edge line of the boiler (line, with or without filling, line thickness)
  • Root R as an overall representation (the root object of the object tree OB)
  • the objects are defined by their object class and a set of attributes. Each object has the following general attributes: - Name
  • Id string that identifies the object. This string can be freely selected by the user in the editor and is used to identify the object by the application program.
  • An application-specific structure can be formed using naming conventions - regardless of the display and programming system. -
  • Each object has its own color
  • a button can also be assigned to each object, which also triggers the activation function.
  • the sequence of the application program (instead of using the mouse) can also be controlled by function keys.
  • Other attributes of objects are, for example
  • the measurement variable itself is described by a so-called MWT table.
  • the designation table means that the display and programming system for a measurand Several current values can be managed, for example to display a time course of a measured variable with a curve (using a meter object "Curve" MOC). If, as in the example of the fill level as a rectangle, only a current value of the measured quantity is required, the measured value table MWT consists of only one value (or the last value is taken from n-value tables). A measured value table MWT is also assigned to a logical measured variable. One or more meter objects can be assigned to a measured value table MWT.
  • the application program AP only supplies current values for the measured variable MG "fill level”.
  • a threshold value table can be assigned to each measured value table MWT, that is a list of (critical) values of the assigned measured value. For example, would be a threshold table with the two for a measurement table "water temperature"
  • Meter objects can not only be used to display a measured variable by changing it on the screen, the application program AP can also use this technique to easily implement desired changes on the screen: To do this, control variables are defined (e.g. with possible "measured values” 0 and 1 ) and the associated measured value table (eg with the name "Tax 1"). So you can, for example, change a picture by a Realize output of a current "measured value” (eg "Control 1": new value 1).
  • the display and programming system distinguishes four types of meter objects:
  • a meter object can itself be part of a group, e.g. the object "Bar 1" could indicate the level
  • the measured value is displayed as a numeric string (eg "123.4").
  • the meter object uses a graphic text object for this. This means that all graphic properties Shafts of text objects (font type, size, bold / italics) also possible for digital meter objects.
  • the meter type hand (pointer) is the umbrella term for all meter objects that represent the measured value by changing position or size. The peculiarity is that objects which are changed by the representation can be any graphic, group or even meter objects.
  • the display and programming system distinguishes the following types of movement functions from hand-held objects:
  • the meter objects can be any objects, they can also be “nested” as shown in FIG. 4.
  • a rotating pointer at the tip of the pointer can additionally display the measured value digitally. This is achieved by adding a digital meter DM "pointer tip" with text object T as a hand meter HM "pointer” in addition to the graphic design (line object L).
  • a threshold value table with the values 0 and 1 is defined.
  • the associated symbol meter SM has two pixmap objects as symbols for the status "closed” or "open".
  • the meter type curve is the generic term for the n-valued meter objects, i.e. that not only one - current - measured value but several - the last n - measured values are displayed.
  • the following types of curve meter objects are supported: - Curve Polyline
  • n values are connected at n interpolation points by a line within a predeterminable rectangle.
  • Wi e polylines only marking objects are output instead of the line drawing.
  • the bars are stacked one above the other.
  • Table The measured values are output in text form next to or one below the other.
  • Curves, bar charts and tables can be displayed horizontally or vertically.
  • the current measured values always come “from the right” and shift the display to the left ("running curve”). In the vertical case, the display moves from bottom to top ("clerk replacement”). Without moving, the display of a horizontal curve is built up from left to right. If the curve on the right "stands", the output is continued from the left.
  • the interpolation point distances can be specified by the application program. This is done by also transferring the relative distance (in relation to the entire curve) when a new measured value is obtained.
  • the monovalent meter objects digital, hand and symbol can also be used for the interactive input of manipulated values. If entry is permitted for a meter object, the user can set a value with the mouse or keyboard that the control program uses as a " desired value "is passed. The application program can confirm the value by replaying it and / or process it accordingly.
  • the user input is as follows:
  • the meter object moves according to the movement function with (Move, Size, Zoom, Rotate).
  • the measured value table has the following properties as an object that describes a logical measured variable: - Name
  • n 1 is sufficient; for curve meter objects, this results in the number of support points or bars, etc. - threshold value table
  • One or more meter objects that represent the logical measured variable described by the measured value table.
  • Threshold value tables are one or more measurement value tables assigned and describe the critical values of the measured variable.
  • the threshold values thus divide the interval of the measured values into several threshold value intervals (for example, with the threshold values 0 and 100 for "water temperature” there are 3 intervals TEMP_MIN, 0-100, TEMP_MAX).
  • the threshold value intervals are visualized in the meter objects either by color changes (corresponding to a color list defined for the meter object, eg "blue”, “red”, “gray") or, for the symbol type, by the respective symbol in the symbol list (eg 3 symbols " Ice “,” water “,” steam ").

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Digital Computer Display Output (AREA)

Abstract

Graphic objects that represent the course of a process are called by symbolic names by an application programme (AP) from a programming and displaying system (XM). Programming is carried out by means of an editor (XME). The graphic object that represents a measurement value is defined as a dynamic measurement object. When all required parameters are input, a measurement value table is coupled to the measurement object. The programme library of the programming and displaying system (XM) is linked to the application programme (AP) after translation. While the application programme (AP) is executed, a new measurement value is represented by a call by programming means of the programming and displaying system (XM). These means calculate the new dimensions, the new position, the new attributes, erase the measurement object at its previous location and draw the new one.

Description

Co putergestützes Anzeige- und ProgrammiersystemComputer-aided display and programming system
Die Erfindung betrifft ein computergestützes Anzeige- und Programmiersystem für Anwendungsprogramme, bestehend aus einem Editor zur Erstellung von Vektorgrafik, der Gestaltung von Füllmustern und der Definition dynamischer Objekte, einem Kontrollprogramm zur Einbindung von Meß- bzw. Stellwerten in den Programmablauf und einem Koppelprogramm zur Verwaltung aller grafischen Objekte und der Generierung oder Modifizierung der Bildschirmdarstellung, das mit Standardprogrammen wie einer Grafikprogrammierschnittstelle einer aπwenduπgsorientierten Programmbibliothek eines Betriebssystems verbunden ist.The invention relates to a computer-aided display and programming system for application programs, consisting of an editor for creating vector graphics, the design of filling patterns and the definition of dynamic objects, a control program for integrating measured and manipulated values into the program sequence and a coupling program for managing all graphic objects and the generation or modification of the screen display, which is connected to standard programs such as a graphic programming interface of an application-oriented program library of an operating system.
Für Betriebssysteme (z.B. UNIX) von Personalcomputern und klei- nen Rechnernetzen existieren als Bedienungshilfen Grafik- und Fenstersysteme (z.B. XWindow-System) . Dadurch kann auf einem Bildschirm in mehreren Fenstern eine Verbindung mit Datenaus¬ tausch zu verschiedenen Programmen bzw. Programmteilen herge¬ stellt werden. Beim Ablauf von Anwendungsprogrammen für Steue- rungs- und Überwachungsaufgaben, beispielsweise der Automati¬ sierungstechnik, besteht die Möglichkeit, die Grafikprogrammier¬ schnittstelle dieses Systems zu nutzen. Derartige pixelorien¬ tierte Schnittstellen ermöglichen zwar im allgemeinen funktionei¬ le Aufrufe von Grundbausteinen, wie Kreis, rote Linie usw, die Plazierung am Bildschirm, die Länge und die Form der grafischen Objekte sind jedoch vom Anwendungsprogramm durchzuführen. Da¬ durch ist die Erstellung komplexer Bilder, wie beispielsweise für die Prozeßdarstellungen der Automatisierungstechnik, eine umfangreiche Programmieraufgabe. So muß im Anwendungsprogramm nach dem Eröffnen eines Fensters am Bildschirm das gesamteFor operating systems (e.g. UNIX) of personal computers and small computer networks, graphic and window systems (e.g. XWindow system) are available as operating aids. As a result, a connection with data exchange to various programs or program parts can be established on one screen in several windows. When application programs for control and monitoring tasks, for example automation technology, are running, it is possible to use the graphics programming interface of this system. Although such pixel-oriented interfaces generally enable functional calls of basic components, such as a circle, red line, etc., the placement on the screen, the length and the shape of the graphic objects must be carried out by the application program. As a result, the creation of complex images, for example for the process representations of automation technology, is an extensive programming task. So in the application program after opening a window on the screen, the whole
Ablaufbild durch Programmaufrufe an die Grafikprogrammierschnitt¬ stelle übergeben werden. Das Ergebnis (das Aussehen des Bildes) ist erst beim Ablauf des Anwendungsprogrammes zu sehen. Das Bild ist sozusagen im Programm versteckt.Flow diagram are transferred to the graphics programming interface by program calls. The result (the appearance of the picture) can only be seen when the application program is running. The picture is hidden in the program, so to speak.
Da bei Anwendungsprogrammen im allgemeinen auch ein Dialog mit dem Benutzer in textlicher Form stattfindet, gibt es bereits Standardpakete (z.B. OSF/Motif) die gleichsam eine "Dialog¬ schnittstelle" für Menüzeileπ und Texteinblendungen nor¬ mieren. Eine interaktive Projektierung von Dialogelementen über einen Editor ist möglich. Bei der Anwendung müssen nurmehr Parameter, wie Plazierung am Bildschirm, Text, Auswahlkriterium usw. angegeben werden. Durch diese interaktiven Hilfsmittel wird die Form und Plazierung der Dialogelemente erstellt und das Anwendungsprogramm von dieser Durchführung entlastet. Es erfolgt also eine Trennung der Erstellung der Bildschirmmaske und der Bedienerführung vom Anwendungsprogramm. Die Dialogele¬ mente werden vom Anwendungsprogramm durch symbolische Namen aufgerufen. Eine Unterstützung von anwendungsspezifischen Grafiken ist in den Standardpaketen jedoch nicht vorgesehen.Since a dialog with the user generally also takes place in text form with application programs, there already is Standard packages (eg OSF / Motif) which, as it were, standardize a "dialog interface" for menu lines and text overlays. Interactive configuration of dialog elements using an editor is possible. When using, only parameters such as placement on the screen, text, selection criteria, etc. have to be specified. These interactive aids create the form and placement of the dialog elements and relieve the application program of this implementation. So there is a separation of the creation of the screen mask and the user guidance from the application program. The dialog elements are called by the application program by symbolic names. However, support for application-specific graphics is not provided in the standard packages.
Zur numerischen Steuerung von Werkzeugmaschinen sind mehrere Verfahren und Anordnungen zur Erzeugung einer grafischen An¬ zeige bekannt. In der DE-A 35 30 596 ist die grafische Anzeige der Betriebszustände beschrieben. Zusätzlich werden auch noch alphanumerisch die tatsächlichen Werte angegeben. Aus der DE-A 35 30 606 ist bekannt, Plottdateien zum Steuern des Be¬ triebs der Werkzeugmaschine durch Bedienerauswahl, Teilprogramm¬ auswahl oder Maschinensteuerlogikauswahl festzulegen. Diese Da¬ teien werden an die numerische Steuerstation des Systems über¬ tragen. Eine Fensteranzeige-Steuervorrichtung für Bildschirme ist aus der DE-A 39 32 693 bekannt. Der Fensterbereich dient der Datenanzeige, die auch ohne Erneuerung des Gesamtbildes ausgegeben werden kann.Several methods and arrangements for generating a graphical display are known for numerically controlling machine tools. DE-A 35 30 596 describes the graphic display of the operating states. In addition, the actual values are also given alphanumerically. From DE-A 35 30 606 it is known to define plot files for controlling the operation of the machine tool by operator selection, program selection or machine control logic selection. These files are transmitted to the numerical control station of the system. A window display control device for screens is known from DE-A 39 32 693. The window area is used for data display, which can also be output without renewing the overall picture.
Gemäß US 4,757,461 wird das durch Daten definierte Werkstück einer Werkzeugmaschine mit Grafiksimulation dargestellt. Die Darstellung wird durch den Weg des Werkzeugs ergänzt. Die Dar¬ stellung berücksichtigt Abschattungseffekte. In der US 4,794,51 ist eine Methode zur Korrektur von Programmen numerisch gesteue ter Werkzeugmaschinen angegeben. Eine Prozesskontrolle für den Bereich der Anlagentechnik ist aus der US 4,873,623 bekannt. In einer ersten Ebene werden die Prozeßparameter festgelegt, die dann in verschiedenen Menüs aufgelistet werden. Für die Pro¬ zeßparameter ist eine Standardeingabe vorgesehen, die dann ge¬ ändert werden kann. In die Definition des Prozesses können auch Meßwerte eingebunden werden. Ein Verfahren zur Umcodierung von Daten einer numerisch gesteuerten Werkzeugmaschine ist aus der US 4,890,234 bekannt. Es erfolgt im wesentlichen eine Koordiπa- tenumrechnung.According to US 4,757,461, the workpiece of a machine tool defined by data is displayed with graphic simulation. The representation is supplemented by the path of the tool. The illustration takes shading effects into account. In US 4,794,51 a method for correcting programs numerically controlled machine tools is specified. A process control for the area of plant engineering is known from US 4,873,623. The process parameters are defined in a first level then be listed in different menus. A standard input is provided for the process parameters, which can then be changed. Measured values can also be included in the definition of the process. A method for recoding data of a numerically controlled machine tool is known from US 4,890,234. There is essentially a coordinate conversion.
Der Erfindung liegt die Aufgabe zu Grunde, die interaktive Er- Stellung eines Ablaufbildes über einen Editor zu ermöglichen und dem Anwendungsprogramm eine symbolische Programmschπitt- stelle zu bieten.The object of the invention is to enable the interactive creation of a flowchart using an editor and to offer the application program a symbolic program interface.
Dies wird gemäß Patentanspruch 1 mit einem computergestützten Anzeige- und Programmiersystem erreicht, wobei ein Ablaufbild mit grafischen Elementen dargestellt ist und für die grafischen Elemente symbolische Namen definiert sind, mit denen sie zur Darstellung vom Anwendungsprogramm über das Anzeige- und Pro¬ grammiersystem als symbolische Programmierschnittstelle auf- rufbar sind, wobei Elemente des Ablaufbildes über den Editor als dynamische Meßobjekte definiert sind, die einerseits eine Meßobjekt-Beschreibung aus grafischen Objekten der Grafikpro¬ grammierschnittstelle enthalten und andererseits aus Meßwert¬ tabellen bestehen, die den entsprechenden aktuellen Meßwert enthalten, wobei die Verbindung der Meßwerttabelle und der Me߬ objekt-Beschreibung über das Koπtrollprogramm und das Koppelpro¬ gramm erfolgt, das auch die Verbindung zum Anwendungsprogramm herstellt und wobei die Darstellung der dynamischen Meßobjekte durch das Anwendungsprogramm mit jedem Meßwert neu festgelegt wird.This is achieved according to claim 1 with a computer-aided display and programming system, a flowchart being shown with graphic elements and symbolic names being defined for the graphic elements with which they are used to represent the application program via the display and programming system as a symbolic programming interface can be called up, elements of the flow chart being defined as dynamic measurement objects via the editor, which on the one hand contain a description of the measurement object from graphic objects of the graphics programming interface and on the other hand consist of measurement value tables which contain the corresponding current measurement value, the connection the table of measured values and the description of the measurement object takes place via the control program and the coupling program, which also establishes the connection to the application program, and the dynamic program objects are represented by the application program with each measurement value is redefined.
Erst wird ein statisches Hintergrundbild des Prozesses, even¬ tuell mit Netzwerkdarstellung, erstellt. Die grafischen Ele¬ mente werden interaktiv festgelegt und vom Anwendungsprogramm nur mehr symbolisch aufgerufen. Darüberhinaus werden auch die dynamischen Elemente des Bildes, die zur Darstellung von Me߬ oder Stellwerten dienen, interaktiv festgelegt. Die Bedienper- son führt daher eine Projektierung des Anwendungsprogrammes aus, statt es wie früher im einzelnen programmieren zu müssen. Eine Änderung von Meßobjekt-Beschreibungen ist möglich, ohne auch die geometrische Form des Objekts neu eingeben zu müssen. Wird das Objekt selbst geändert und behält seinen symbolischen Na¬ men, so braucht das Anwendungsprogramm nicht geändert zu wer¬ den. Durch die Einführung der objektorientierten Schnittstelle zur Grafik und zu den dynamischen Meßobjekten ist es möglich, die "Syntax" des Bildes von der "Semantik" des Bildes zu treπ- nen. Der Meß- oder Stellwert wird von seiner Darstellung ge¬ trennt behandelt. Das erfindungsgemäße System ermöglicht eine erhebliche Zeitersparnis bei der Programmierung grafischer Dar¬ stellungen. Im Anwendungsprogramm sind im Prinzip nur Aufrufe wie "Laden" und "Setzen" vorzusehen. Es entfallen Berechnungen und Programmteile zur Darstellung des Bildes beim Eröffnen eines Fensters, beim Überdecken anderer Fenster usw. Der Pro¬ grammierer kann sich auf seine eigentlichen, technologischen Probleme konzentrieren. Auch die Meßwertanzeige kann projek¬ tiert und verändert werden, ohne das Anwendungsprogramm zu verändern. Die Erfindung kann mit unterschiedlichen Grafik- und Fenstersystemen verwendet werden.First a static background picture of the process, possibly with a network representation, is created. The graphic elements are defined interactively and are only called symbolically by the application program. In addition, the dynamic elements of the image, which are used to display measured or manipulated values, are also defined interactively. The operator son therefore configures the application program instead of having to program it individually as before. It is possible to change the description of the measurement object without having to re-enter the geometric shape of the object. If the object itself is changed and retains its symbolic name, the application program need not be changed. By introducing the object-oriented interface to the graphics and the dynamic measurement objects, it is possible to separate the "syntax" of the image from the "semantics" of the image. The measured or manipulated value is treated separately from its representation. The system according to the invention enables considerable time savings when programming graphical representations. In principle, only calls such as "Load" and "Set" should be provided in the application program. There are no calculations and program parts for displaying the image when opening a window, when covering other windows, etc. The programmer can concentrate on his actual technological problems. The measured value display can also be configured and changed without changing the application program. The invention can be used with different graphics and window systems.
Zur einprägsameren Darstellung ist es vorteilhaft, daß eine Meßwerttabelle unterschiedlichen Meßobjekten zugeordnet ist und Meßobjekte als Bestandteile andere Meßobjekte ineinander ge¬ schachtelt sind. Damit ist es möglich, noch zusätzliche Warn¬ signale im Ablaufbild vorzusehen.For a more memorable representation, it is advantageous that a measurement table is assigned to different measurement objects and that measurement objects are nested within each other as components of other measurement objects. This makes it possible to provide additional warning signals in the flow chart.
Die Erfindung wird anhand eines Ausführuπgsbeispieles und mehrerer Zeichnungen näher erläutert. Es zeigen:The invention is explained in more detail using an exemplary embodiment and several drawings. Show it:
Fig. 1 eine Blockdarstellung des Anzeige- und Programmier¬ systems,1 is a block diagram of the display and programming system,
Fig. 2 Grafik und Objektbaum einer Meßwertdarstellung,2 graphic and object tree of a measured value representation,
Fig. 3 den Aufbau einer Meßwertdarstellung, Fig. 4 eine Blockdarstellung eines Meßtyps und3 shows the structure of a measurement value representation, FIG. 4 shows a block representation of a measurement type and
Fig. 5 eine Blockdarstellung eines weiteren Meßtyps. Es wird zunächst allgemein die Benutzung des erfindungsgemäßeπ Anzeige- und Programmiersystems beschrieben. Ein Ablaufbild einer Prozeßdarstellung der Automatisierungstechnik wird mit seinen statischen Teilen über einen im Anzeige- und Programmier- system enthaltenen Editor gezeichnet und in einem File gespei¬ chert. Meßfühler liefern an ein Anwendungsprogramm zyklisch Meßgrößen. Durch das Anwendungsprogramm wird das Meßergebnis an einem Bildschirm grafisch dargestellt. Zum Anwendungsprogramm sind aus einer Programmbibliothek eine Anzahl von Programmen gekoppelt. Mit diesen kann das Ablaufbild durch einen einzigen Aufruf in der richtigen Größe auf dem Bildschirm dargestellt werden. Weiters sind in dieser Programmbibliothek auch Aufrufe enthalten, um einzelne Objekte dieser Grafik zu manipulieren, wobei diese Objekte unter symbolischen Namen angesprochen wer- den. So kann ein beliebiges grafisches Objekt, das mit dem Editor in das Ablaufbild gezeichnet und mit dem symbolischen Namen "0bj_xy" versehen wurde, unter diesem Namen vom Anwen¬ dungsprogramm aufgerufen werden. Damit kann eine Änderung der Objektbeschreibung, wie beispielsweise der Farbe, durch das Anwendungsprogramm z.B. mit dem Befehl "Setze_Attribut_Farbe_" des Objektes "Obj_xy" auf rot erfolgen. Das Ablaufbild kann mit dem Editor auch jederzeit umgeändert werden. Solange das zu manipulierende Objekt mit dem symbolischen Namen "0bj_xy" be¬ zeichnet ist, braucht das Anwendungsprogramm nicht geändert zu werden.Fig. 5 is a block diagram of another type of measurement. The use of the display and programming system according to the invention is first described in general. A flowchart of a process representation of the automation technology is drawn with its static parts via an editor contained in the display and programming system and stored in a file. Measuring sensors deliver measured variables cyclically to an application program. The application program graphically displays the measurement result on a screen. A number of programs are linked to the application program from a program library. With these, the flowchart can be displayed on the screen in the correct size with a single call. This program library also contains calls to manipulate individual objects in this graphic, these objects being addressed under symbolic names. Any graphical object that has been drawn into the flowchart with the editor and provided with the symbolic name "0bj_xy" can be called up under this name by the application program. This enables the application description, such as the color, to be changed to red by the application program, for example using the "Set_Attribut_Farbe_" command of the "Obj_xy" object. The flow chart can also be changed at any time using the editor. As long as the object to be manipulated is identified by the symbolic name "0bj_xy", the application program need not be changed.
Mit dem Editor wird nach Erstellung des Ablaufbildes ein beliebiges grafisches Objekt als Meßobjekt definiert. Dieses wird im folgenden "Meterobjekt" genannt, da es wie ein Meß- instrument zur Meßwertausgabe verwendet wird (beispielsweise ein "Füllstandsmeter" für einen Behälter). Danach werden im Editor auch interaktiv alle für die Dynamik des Meterobjektes notwendigen Parameter abgefragt. Es erfolgt eine Trennung des Meßwertes von seiner Darstellung in folgenden Schritten: 1. Zum Meßwert wird eine darstellungsunabhängige Meßwerttabelle definiert, die mit demjenigen symbolischen Namen versehen wird, unter dem das Anwendungsprogramm den Meßwert ausgeben wird (beispielsweise "Füllstand 1"). In dieser Tabelle wird unter anderem angeben, zwischen welchen Werten sich der Meßwert bewegt (Minimal- und Maximalwert). 2. Zum Meß-(Meter-)objekt wird eine darstellungsabhängige Meterobjekt-Beschreibung definiert. Genaugenommen wird ein beliebiges Element der Grafik durch diese zusätzliche Defini¬ tion zum Meterobjekt. Es wird festgelegt, ob sich das Objekt mit einer Meßwertänderung z.B. verschieben, rotieren, oder vergrößern soll. Dazu werden verschiedene Faktoren wie z.B. Minimal- und Maximaldarstellung des Objektes festgelegt. 3. Die an und für sich anwendungsneutralen Meterobjekte werden mit Meßwerttabellen verbunden. Diese Verbindung kann mittels des Editors jedoch jederzeit aufgelöst werden, neue Verbin- düngen können hergestellt werden, andere Grafikelemente können als Meterobjekte definiert und damit zur Darstellung herange¬ zogen werden. Es können auch mehrere, verschiedene Meterobjekte denselben Meßwert darstellen. Die Darstellungsform bleibt un¬ abhängig von der durch das Anwendungsprogramm mit Meßgrößen versorgten Meßwerttabelle. Die Meterobjekte können nicht nur für die Ausgabe von Meßwerten, sondern ganz allgemein zur "Steuerung" der grafischen Oberfläche verwendet werden.After the creation of the flow chart, any graphic object is defined as a measurement object with the editor. This is called "meter object" in the following, since it is used like a measuring instrument to output measured values (for example a "level meter" for a container). Afterwards, all parameters necessary for the dynamics of the meter object are queried interactively in the editor. The measured value is separated from its display in the following steps: 1. A display-independent measured value table is defined for the measured value, which is given the symbolic name, under which the application program will output the measured value (for example "level 1"). Among other things, this table specifies the values between which the measured value is moving (minimum and maximum value). 2. A display-dependent meter object description is defined for the measurement (meter) object. Strictly speaking, any element of the graphic is defined by this additional definition of the meter object. It is determined whether the object should move, rotate or enlarge with a change in the measured value. Various factors such as the minimum and maximum representation of the object are defined. 3. The meter objects, which are in and of themselves application-neutral, are linked with measurement value tables. However, this connection can be broken off at any time using the editor, new connections can be made, other graphic elements can be defined as meter objects and can thus be used for display. Several different meter objects can also represent the same measured value. The form of representation remains independent of the measured value table supplied with measured variables by the application program. The meter objects can not only be used for the output of measured values, but also in general for "controlling" the graphical user interface.
Die Meterobjekt-Beschreibungen werden mit dem Ablaufbild abge- speichert - sie sind Bestandteil des Ablaufbildes ("Proz_Bild") . Zum Anwendungsprogramm wird nun die Programmbibliothek ange¬ koppelt, von der in diesem Beispiel nurmehr die Aufrufe "Lade_ Bild/Proz_Bild/" und "Setze_Meßwert/Füllstand 1/" verwendet werden müssen. Alle darstellungsspezifischen Dinge, inklusive der Umsetzung der Meßwerte in Veränderungen von Teilen derThe meter object descriptions are saved with the flow chart - they are part of the flow chart ("Proz_Bild"). The program library is now coupled to the application program, of which in this example only the calls "Load_image / process_image /" and "Set_measured value / level 1 /" have to be used. All presentation-specific things, including the implementation of the measured values in changes of parts of the
Grafik werden von Programmteilen des Anzeige- und Programmier¬ systems gemäß den mit dem Editor interaktiv definierten Vor¬ schriften abgewickelt.Graphics are processed by program parts of the display and programming system in accordance with the regulations defined interactively with the editor.
Ein in Fig. 1 dargestelltes Anzeige- und Programmiersystem XM stellt einem Anwendungsprogramm AP mit UNIX-Dialogapplikationen die das XWindow-System benutzen, Hilfsmittel für die Dar¬ stellung von Daten eines gesteuerten Prozesses P am Bild¬ schirm zur Verfügung. Es setzt als Basis ein Betriebssystem UNIX mit XWindow-System voraus. Das Anzeige- und Programmier- system XM ist zur Gänze in der Programmiersprache C geschrie¬ ben, und damit ist prinzipiell die Portierung auf jedes UNIX/XWindow-System möglich, sofern es die Voraussetzungen der Normen in punkto Kompatibilität erfüllt. Das Anzeige- und Pro¬ grammiersystem XM besteht aus folgenden Teilen:A display and programming system XM shown in FIG. 1 provides an application program AP with UNIX dialog applications who use the XWindow system, tools are available for displaying data of a controlled process P on the screen. It is based on a UNIX operating system with an XWindow system. The display and programming system XM is written entirely in the C programming language, and this means that porting to any UNIX / XWindow system is possible in principle, provided that it meets the requirements of the standards in terms of compatibility. The XM display and programming system consists of the following parts:
XM Utilities:XM Utilities:
- Editor XME zur interaktiven Erstellung von statischen Bildern (Grafiken zusammengesetzt aus vektororientierten und pixelorientierten Objekten) und zur interaktiven Defi- nition von dynamischen Objekten, die beim Ablauf des An¬ wendungsprogrammes AP Meßwerte darstellen;- XME editor for the interactive creation of static images (graphics composed of vector-oriented and pixel-oriented objects) and for the interactive definition of dynamic objects which represent measured values when the AP application program is running;
- Konvertierungsprogramm für Druckausgabe der erstellten Bilder;- Conversion program for printing the created images;
- Bildanalyseprogramm zur Analyse und zur statistischen Auswer¬ tung der Bildstruktur.- Image analysis program for analysis and statistical evaluation of the image structure.
XM Library:XM Library:
- Koppelprogramm XMOM (XM-Object-Management) als Progra m- schπittstelle für Anwendungsprogramme AP, um die einzelnen Objekte mit dynamischen Meßwerten zu versorgen bzw. um die Objekte dynamisch (wie im Editor XME) zu verändern und als höherwertige Schnittstelle zu einer Grafikprogrammierschnitt¬ stelle XLIB;Coupling program XMOM (XM object management) as a program interface for application programs AP, in order to supply the individual objects with dynamic measured values or to change the objects dynamically (as in the XME editor) and as a higher-quality interface to a graphics programming interface place XLIB;
- Kontrollprogramm XMC (XM-Coπtrol) als automatische Programm¬ ablaufkontrolle, ein "Satz von Callbackroutinen" , unterstützt die Anbindung der dynamischen Meßwerte.- Control program XMC (XM-Control) as automatic program sequence control, a "set of callback routines", supports the connection of the dynamic measured values.
Bildanalyse-Programm:Image analysis program:
Die Struktur der Ablaufbilder kann mit dem Bildanalyse-Programm grafisch (in Baumform) angezeigt werden. Weiters werden die Häufigkeiten der verschiedenen Objekttypeπ berechnet. Das so erstellte Schema eines Objektbaums kann abgespeichert und aus¬ gedruckt werden. Das Anzeige- und Programmiersystem XM verwaltet diverseThe structure of the flow diagrams can be displayed graphically (in tree form) with the image analysis program. Furthermore, the frequencies of the different object types are calculated. The diagram of an object tree created in this way can be saved and printed out. The display and programming system XM manages various
Objekte, die für die Beschreibung von Bildern und Meßwerten notwendig sind. Dazu gehören:Objects that are necessary for the description of images and measured values. This includes:
- statische Objekte grafische (in einem Fenster sichtbare) Objekte G0- static objects graphic objects (visible in a window) G0
Verwaltungsobjekte (Gruppen von grafischen Objekten) Farben, Füllmuster PIXManagement objects (groups of graphic objects) colors, fill patterns PIX
- dynamische Objekte- dynamic objects
Meterobjekte (für dynamische Meßwerte/Stellwerte) M Meßwert- und Schwellwerttabellen TMeter objects (for dynamic measured values / control values) M measured value and threshold value tables T
- Bilder und Teilbilder (Save-Files der Editoren).- Pictures and drawing files (save files of the editors).
Die statischen Objekte beschreiben ein strukturiertes Bild (z.B. aus Linien, Kreisen), die dynamischen Objekte beschreiben die Veränderung von Bildteilen aufgrund von aktuellen Meßwerten. Solche Bilder werden durch den Editor XME abgespeichert, vom Anwendungsprogramm AP wieder geladen und mit aktuellen Meßwer¬ ten versorgt.The static objects describe a structured image (e.g. from lines, circles), the dynamic objects describe the change of parts of the image based on current measured values. Such images are saved by the editor XME, reloaded by the application program AP and supplied with current measured values.
Das Anzeige- und Programmiersystem XM unterscheidet folgende Klassen von in Fig. 2 am Beispiel eines Kesselbildes BD mit Objektbaum OB dargestellten grafischen Objekten. Durch Zu¬ sammenfassen von Objekten zu Gruppen bildet sich eine Hierarchi von Gruppen, die als Objektbaum OB bezeichnet wird: - Line L als Randlinie des Kessels (Linienzug, mit oder ohne Füllung, Linienstärke)The display and programming system XM distinguishes the following classes from graphic objects shown in FIG. 2 using the example of a boiler image BD with object tree OB. By combining objects into groups, a hierarchy of groups is formed, which is referred to as object tree OB: Line L as the edge line of the boiler (line, with or without filling, line thickness)
- Box B "Bar 1" als Kesselinhalt (rechteckiges Objekt, Spezial- fall von Linie)- Box B "Bar 1" as boiler content (rectangular object, special case of line)
- Ellipse (inklusive Kreis, mit oder ohne Füllung, Linien- stärke), in Fig. 2 nicht dargestellt- Ellipse (including circle, with or without filling, line width), not shown in Fig. 2
- Text T als Bildbeschriftung (Zeichenkette in verschiedenen Fonts, Größe, Fett, Kursiv)- Text T as image caption (character string in different fonts, size, bold, italic)
- Füllmuster- fill pattern
Die grafischen Objekte bilden die Elemente, aus denen das Kesse bild BD zusammengesetzt wird. Bei Zusammenfassung von grafische Objekten bilden sich Verwaltungsobjekte:The graphic objects form the elements from which the Kesse picture BD is composed. When summarizing graphical Objects form administration objects:
- Gruppe G als Kesselgrafik (Gruppe aus beliebigen grafischen oder Verwaltungsobjekten) und- Group G as a boiler graphic (group of any graphic or administrative objects) and
- Wurzel R als Gesamtdarstellung (das Wurzelobjekt des Objekt- baumes OB)- Root R as an overall representation (the root object of the object tree OB)
Die Objekte sind durch ihre Objektklasse und einen Satz von Attributen definiert. Folgende allgemeine Attribute hat jedes Objekt: - NameThe objects are defined by their object class and a set of attributes. Each object has the following general attributes: - Name
Id, String der das Objekt bezeichnet. Dieser String kann vom Benutzer im Editor frei gewählt werden und dient zur Identifikation des Objekts durch das Anwendungsprogramm. Durch Namenskonventionen kann eine anwendungsspezifische Struktur - unabhängig vom Anzeige- und Programmiersystem - gebildet werden. -Id, string that identifies the object. This string can be freely selected by the user in the editor and is used to identify the object by the application program. An application-specific structure can be formed using naming conventions - regardless of the display and programming system. -
- Select- Select
Selektierte Objekte werden im Grafik-Editor durch einen Rahmen markiert - VisibleSelected objects are marked with a frame in the graphic editor - Visible
Sichtbarkeit, nur sichtbare Objekte werden am Bildschirm dargestellt. Mit diesem Attribut kann z. B. ein Bildwechsel realisiert werden, indem ein gerade nicht benötigtes Teil¬ bild unsichtbar gemacht wird. - ColorVisibility, only visible objects are shown on the screen. With this attribute z. B. a picture change can be realized by making a part of the picture that is not required invisible. - Color
Jedes Objekt besitzt eine eigene FarbeEach object has its own color
- Callback- Callback
Jedes Objekt kann eine Aktivierungsfunktion besitzen, die vom Kontrollprogramm XMC beim Anwählen des Objekts aufge- rufen wird. Ein Objekt mit Aktivieruπgsfunktion wird akti¬ vierbares Objekt genannt und kann z.B. zur Realisierung von Schaltpunkten verwendet werden.Each object can have an activation function that is called up by the XMC control program when the object is selected. An object with an activation function is called an activatable object and can e.g. can be used to implement switching points.
- Keysym- Keysym
Jedem Objekt kann auch eine Taste zugeordnet werden, die ebenfalls die Aktivierungsfunktion auslöst. Auf diese Art kann der Ablauf des Anwendungsprogrammes (statt mit der Maus) auch durch Funktionstasten gesteuert werden. Weitere Attribute von Objekten sind z.B.A button can also be assigned to each object, which also triggers the activation function. In this way, the sequence of the application program (instead of using the mouse) can also be controlled by function keys. Other attributes of objects are, for example
- Füllmuster (beliebige mit dem Pixmap-Editor erstellte Muster)- Fill pattern (any pattern created with the Pixmap editor)
- Linienstärke- Line weight
- Textinformaitonen (Fontsatz)- Text information (font type)
Farben werden im Anzeige- und Programmiersystem XM (siehe Fig. 1 mit einem String (z.B. "red" oder "jfffOOOO" für RGB-Angabe) be¬ zeichnet. Das Koppelprogramm XMOM bietet Aufrufe zur einfachen Verwendung von Farben.Colors are identified in the display and programming system XM (see Fig. 1 with a string (e.g. "red" or "jfffOOOO" for RGB information). The coupling program XMOM offers calls for simple use of colors.
Füllmuster PIX werden durch Bitmuster, sogenannte Bitmaps beschrieben. Mehrfarbige Füllmuster PIX (jedes Pixel hat eine eigene Farbe) werden als Pixmaps bezeichnet. Pixmaps werden durch einen Filenamen (String) definiert. Dieses File hat ent- weder Bitmap-Format oder XM-Pix ap-Format. Die Pixmaps die¬ nen beim Anzeige- und Programmiersystem XM zur Beschreibung von Füllmustern für Rechtecke, Linienzüge und Ellipsen, sowie zur Definition von Pixmap-Objekten.Fill patterns PIX are described by bit patterns, so-called bitmaps. Multi-colored fill patterns PIX (each pixel has its own color) are called pixmaps. Pixmaps are defined by a file name (string). This file has either bitmap format or XM-Pix ap format. In the XM display and programming system, the pixmaps are used to describe filling patterns for rectangles, lines and ellipses, and to define pixmap objects.
Um eine Meßgröße gemäß Fig. 3 darzustellen, bedient sich das Anwendungsprogramm AP der dynamischen Objekte. Diese beschrei¬ ben ganz allgemein, wie die Veränderung eines Meßwerts auf eine Veränderung eines statischen Objekts abgebildet wird. Die Me߬ größe MG "Füllstand" soll durch Größenänderung eines gefüllten Rechtecks (=grafisches Boxobjekt) erfolgen. Solch ein stati¬ sches Objekt mit Beschreibung einer Veränderung aufgrund von Meßwerten ist ein Meterobjekt. Das Meterobjekt ist ein Verwal¬ tungsobjekt im Objektbaum, das als Spezialfall eines Gruppen¬ objektes angesehen werden kann. Meterobjekte haben zusätzlich zu den Gruppen-Attributen noch die Beschreibung der Veränderung als Eigenschaft. Das Meterobjekt ist also die grafische Reprä¬ sentation eines Meßwertes.In order to represent a measured variable according to FIG. 3, the application program AP uses the dynamic objects. These describe very generally how the change in a measured value is mapped to a change in a static object. The measurement variable MG "fill level" is to take place by changing the size of a filled rectangle (= graphic box object). Such a static object with a description of a change based on measured values is a meter object. The meter object is an administrative object in the object tree, which can be viewed as a special case of a group object. In addition to the group attributes, meter objects also have the description of the change as a property. The meter object is thus the graphical representation of a measured value.
Die Beschreibung der Meßgröße selbst erfolgt durch eine soge- nannte Meßwerttabelle MWT. Die Bezeichnung Tabelle bedeutet, daß vom Anzeige- und Programmiersystem für eine Meßgröße mehrere aktuelle Werte verwaltet werden können, um z.B. einen zeitlichen Verlauf einer Meßgröße mit einer Kurve (durch ein Meterobjekt "Curve" MOC) darzustellen. Falls, wie im Beispiel des Füllstandes als Rechteck, nur ein aktueller Wert der Meß- große benötigt wird, besteht die Meßwerttabeile MWT nur aus einem Wert (bzw. wird aus n-wertigen Tabellen der letzte Wert genommen). Einer logischen Meßgröße ist ebenfalls eine Me߬ werttabelle MWT zugeordnet. Einer Meßwerttabelle MWT können ein oder mehrere Meterobjekte zugeordnet werden.The measurement variable itself is described by a so-called MWT table. The designation table means that the display and programming system for a measurand Several current values can be managed, for example to display a time course of a measured variable with a curve (using a meter object "Curve" MOC). If, as in the example of the fill level as a rectangle, only a current value of the measured quantity is required, the measured value table MWT consists of only one value (or the last value is taken from n-value tables). A measured value table MWT is also assigned to a logical measured variable. One or more meter objects can be assigned to a measured value table MWT.
Um den Füllstand gleichzeitig oder alternativ als Rechteck oder als Kurve darzustellen, definiert manTo display the fill level simultaneously or alternatively as a rectangle or as a curve, you define
- eine Meßwerttabelle MWT "Füllstand" mit z.B. 10 Werten- a measured value table MWT "level" with e.g. 10 values
- ein Meterobjekt "Bar 1" MOB als größeπveränderlicher Balken für den aktuellen Meßwert- A meter object "Bar 1" MOB as a variable bar for the current measured value
- ein Meterobjekt "Curve 1" MOC als laufende Kurve mit 10 Stützstellen- A meter object "Curve 1" MOC as a running curve with 10 support points
Das Anwendungsprogramm AP liefert nur noch aktuelle Werte für die Meßgröße MG "Füllstand".The application program AP only supplies current values for the measured variable MG "fill level".
Jeder Meßwerttabelle MWT kann eine Schwellwerttabelle zuge¬ ordnet werden, das ist eine Liste von (kritischen) Werten des zugeordneten Meßwertes. Z.B. wäre für eine Meßwerttabelle "Wassertemperatur" eine Schwellwerttabelle mit den beidenA threshold value table can be assigned to each measured value table MWT, that is a list of (critical) values of the assigned measured value. For example, would be a threshold table with the two for a measurement table "water temperature"
Werten 0 und 100 denkbar. Die Auswirkung der Schwellwerttabelle auf die Darstellung in den einzelnen Meterobjekteπ wäre bei¬ spielsweise ein Farbumschlag.Values 0 and 100 possible. The effect of the threshold value table on the representation in the individual meter objects would be a color change, for example.
Meterobjekte können aber nicht nur dazu dienen, eine Meßgröße durch eine Veränderung am Bildschirm darzustellen, sondern das Anwendungsprogramm AP kann diese Technik auch verwenden, um gewünschte Veränderungen am Bildschirm einfach zu realisieren: Dazu definiert man Steuergrößen (z.B. mit möglichen "Meßwerten" 0 und 1) und die zugehörige Meßwerttabelle (z.B. mit Namen "Steuer 1"). Damit kann man z.B. einen Bildwechsel durch eine Ausgabe eines aktuellen "Meßwertes" (z.B. "Steuer 1": neuer Wert 1) realisieren.Meter objects can not only be used to display a measured variable by changing it on the screen, the application program AP can also use this technique to easily implement desired changes on the screen: To do this, control variables are defined (e.g. with possible "measured values" 0 and 1 ) and the associated measured value table (eg with the name "Tax 1"). So you can, for example, change a picture by a Realize output of a current "measured value" (eg "Control 1": new value 1).
Die wesentliche Ersparnis beim Einsatz von dynamischen Objekten ist, daß die Definition und Verbindung von Meterobjekten und Meßwerttabellen interaktiv mit XM-Editor erfolgt und daher den Programmieraufwand entscheidend verringert.The main saving when using dynamic objects is that the definition and connection of meter objects and measurement tables takes place interactively with the XM editor and therefore significantly reduces the programming effort.
Das Anzeige- und Programmiersystem unterscheidet vier Typen von Meterobjekten:The display and programming system distinguishes four types of meter objects:
- Digital- digital
Darstellung eines Meßwertes durch ein grafisches Text-Objekt (numerisch)Representation of a measured value by a graphic text object (numerical)
- Hand (Zeiger) Darstellung durch geometrische Veränderung eines beliebigen- Hand (pointer) representation by geometrically changing any
ObjektesProperty
- Symbol- symbol
Darstellung durch alternative Anzeige von beliebigen Objekten - KurveRepresentation by alternative display of any objects - curve
Darstellung von mehreren Meßwerten durch Linienzug, Balken-, Tortendiagramm oder Tabelle.Representation of several measured values by means of a line, bar, pie chart or table.
Die Typen Digital, Hand und Symbol werden, da sie einen (aktuellen) Meßwert darstellen, einwertige Meterobjekte ge¬ nannte. Der Typ Kurve bildet die sogenannten n-wertigen Meter¬ objekte.The types digital, hand and symbol are called single-valued meter objects since they represent a (current) measured value. The curve type forms the so-called n-valued meter objects.
Ein Meterobjekt kann selbst Bestandteil einer Gruppe sein, z.B. könnte das Objekt "Bar 1" zur Anzeige des FüllstandesA meter object can itself be part of a group, e.g. the object "Bar 1" could indicate the level
Teil der Gruppe "Kessel", die noch das Bild des Kessels sowie Beschriftungen enthält, sein.Be part of the "Boiler" group, which still contains the image of the boiler and labels.
Beim Metertyp Digital wird der Meßwert als numerische Zeichen- kette (z.B. "123.4") angezeigt. Das Meterobjekt verwendet dazu ein grafisches Textobjekt. Damit sind alle grafischen Eigen- Schäften von Textobjekten (Fontsatz, Größe, fett/kursiv) auch für Digital-Meterobjekte möglich. Der Metertyp Hand (Zeiger) ist der Überbegriff für alle Meterobjekte, die den Meßwert durch Veränderung von Position bzw. Größe darstellen. Die Besonderheit dabei ist, daß Objekte, welche durch die Dar¬ stellung verändert werden, beliebige grafische, Gruppen- oder selbst Meterobjekte sein können.With the digital meter type, the measured value is displayed as a numeric string (eg "123.4"). The meter object uses a graphic text object for this. This means that all graphic properties Shafts of text objects (font type, size, bold / italics) also possible for digital meter objects. The meter type hand (pointer) is the umbrella term for all meter objects that represent the measured value by changing position or size. The peculiarity is that objects which are changed by the representation can be any graphic, group or even meter objects.
Das Anzeige- und Programmiersystem unterscheidet folgende Typen der Bewegungsfunktion von Hand-Meterobjekten:The display and programming system distinguishes the following types of movement functions from hand-held objects:
- HandMove- HandMove
Verschiebung zwischen 2 vorgebbaren Punkten am Bildschirm (z.B. Schieberegler, Veranschaulichung eines Bewegungsab¬ laufes im Prozeß) - HandSizeShift between 2 predeterminable points on the screen (e.g. slider, illustration of a motion sequence in the process) - HandSize
Größenänderung zwischen vorgebbarer Minimal- und Maximai- Größe (z.B. Füllstandanzeiger)Change in size between predeterminable minimum and maximum size (e.g. level indicator)
- HandZoom- Hand zoom
Größenänderung mit vorgebbareπ Vergrößerungsfaktoren (z.B. Bildvergrößerung mit einer Steuergröße "Zoomfaktor", Meter¬ objekt ist dabei das gesamte Bildi)Size change with predefinable magnification factors (e.g. image enlargement with a control variable "zoom factor", meter object is the entire image)
- HandRotate- Hand Rotate
Drehung um einen vorgebbaren Mittelpunkt (z.B. Uhrzeiger)Rotation around a predeterminable center point (e.g. clock hand)
Da die Meterobjekte beliebige Objekte sein können, kann man sie, wie in Fig. 4 gezeigt, auch "verschachteln". Beispiels¬ weise kann ein rotierender Zeiger an der Zeigerspitze den Meßwert zusätzlich digital anzeigen. Dies wird realisiert, indem man als Handmeters HM "Zeiger" zusätzlich zur grafischen Gestalt (Linienobjekt L) auch noch ein Digitalmeter DM "Zei¬ gerspitze" mit Textobjekt T hinzufügt.Since the meter objects can be any objects, they can also be “nested” as shown in FIG. 4. For example, a rotating pointer at the tip of the pointer can additionally display the measured value digitally. This is achieved by adding a digital meter DM "pointer tip" with text object T as a hand meter HM "pointer" in addition to the graphic design (line object L).
Beim Metertyp Symbol nach Fig. 5 wird der Meßwert dargestellt, indem je nach seinem Wert ein entsprechendes Objekt (Symbol) aus einer Liste angezeigt wird. Der Meßwert wird also durch ein Objekt symbolisiert. Die Symbolliste ergibt sich aus den im Objektbaum unterhalb eines Symbolmeters SM gelegenen Objekten. Die Umschaltung zwischen den verschiedenen Symbolen erfolgt aufgrund einer Schwellwerttabelle, die der Meßwerttabelle der angezeigten Größe zugeordnet ist: Falls der aktuelle Meß- wert kleiner oder gleich dem ersten Schwellwert ist, wird das erste Symbol angezeigt, zwischen dem ersten und inklusive dem zweiten Schwellwert das zweite Symbol usw. Gibt es weniger Symbole als Schwellwerte, wird immer das letzte der Liste verwendet.5, the measured value is displayed by displaying a corresponding object (symbol) from a list depending on its value. The measured value is therefore symbolized by an object. The symbol list results from the in Object tree objects located below a symbol meter SM. Switching between the different symbols takes place on the basis of a threshold value table which is assigned to the measured value table of the displayed size: If the current measured value is less than or equal to the first threshold value, the first symbol is displayed, the second between the first and the second threshold value inclusive Symbol etc. If there are fewer symbols than threshold values, the last one in the list is always used.
Für die Steuergröße "Ventilzustand" (mit den Werten 0 und 1) wird eine Schwellwerttabelle mit den Werten 0 und 1 definiert Das zugehörige Symbolmeter SM verfügt als Symbole über zwei Pixmap-Objekte für den Zustand "Zu" bzw. "Auf".For the control variable "valve status" (with the values 0 and 1), a threshold value table with the values 0 and 1 is defined. The associated symbol meter SM has two pixmap objects as symbols for the status "closed" or "open".
Wird nun für "Ventilzustand" der aktuelle Wert 0 gesetzt, so erscheint das "Zu"-Symbol Z, bei Wert 1 das "Auf-Symbol A. Die einzelnen Symbolobjekte müssen nicht wie im obigen Beispiel an derselben Bildschirmposition aufscheinen. (z.B. ein Symbol- Meterobjekt "Verkehrsampel" mit 3 Ellipse-Objekten als Symbo¬ le). Es wird immer nur das gerade aktuelle Symbol angezeigt, alle anderen sind unsichtbar.If the current value 0 is now set for "valve status", the "closed" symbol Z appears, for value 1 the "open symbol A. The individual symbol objects do not have to appear at the same screen position as in the example above (eg a symbol - "Traffic lights" meter object with 3 ellipse objects as symbols. Only the current symbol is shown, all others are invisible.
Mit Symbol-Meterobjekten läßt sich auch sehr einfach ein Bild- Wechsel realisieren. Die einzelnen Teilbilder werden dabei als Symbole eines Meterobjekts mit einer Meßwerttabelle "Bild¬ nummer" zusammengefaßt. Das Anwendungsprogramm kann somit zwischen den einzelnen Teilbildern mit einem Aufruf ("Bild¬ nummer": neuer Wert x) umschalten.With symbol meter objects, it is also very easy to change the image. The individual partial images are combined as symbols of a meter object with a measured value table "image number". The application program can thus switch between the individual drawing files with one call ("picture number": new value x).
Der Metertyp Kurve ist der Oberbegriff für die n-wertigen Meterobjekte, d.h. daß nicht nur ein - aktueller - Meßwert sondern mehrere - die letzten n - Meßwerte dargestellt werden. Folgende Ausprägungen der Kurve-Meterobjekte werden unterstützt: - KurvePolylineThe meter type curve is the generic term for the n-valued meter objects, i.e. that not only one - current - measured value but several - the last n - measured values are displayed. The following types of curve meter objects are supported: - Curve Polyline
Die n Werte werden an n Stützstellen durcheinen Linienzug innerhalb eines vorgebbaren Rechtecks verbunden. - Kurv ePolym arkerThe n values are connected at n interpolation points by a line within a predeterminable rectangle. - Curve ePolym arker
Wi e Polyli ne , nur werden anstatt d es Li nienzugs Marki erungs ¬ obj ekte ausgegeben .Wi e polylines, only marking objects are output instead of the line drawing.
- KurveBar Balkendiagramm: An den Stützstellen werden entsprechend große Balken gezeichnet. 3D-Darstelluπg ist möglich.- CurveBar bar chart: correspondingly large bars are drawn at the support points. 3D representation is possible.
- KurveBarStck- curve bar
Die Balken v/erden übereinander gestapelt .The bars are stacked one above the other.
- KurvePieChart Tortendiagramm: Die Meßwerte werden durch Kreissektoren dargestellt.- Curve PieChart pie chart: The measured values are represented by circle sectors.
- KurveText- Curve text
Tabelle: die Meßwerte werden in Textform neben- bzw. unter- einander ausgegeben.Table: The measured values are output in text form next to or one below the other.
Die Darstellung kann bei Kurven, Balkendiagrammen und Tabellen horizontal oder vertikal erfolgen. Beim Verschieben eines hori¬ zontalen Kurve-Meters kommen die aktuellen Meßwerte immer "von rechts" und schieben die Darstellung nach links ("laufende Kurve"). Im vertikalen Fall schiebt sich die Darstellung von unten nach oben ("Schreiberersatz"). Ohne Verschieben wird die Darstellung einer horizontalen Kurve von links nach rechts aufgebaut. Wenn die Kurve rechts "ansteht", wird wieder von links mit der Ausgabe fortgesetzt. Um eine echtzeitmäßige Darstellung einer Kurve zu erreichen, wenn die Meßwerte in unregelmäßigen Abständen eintreffen, können die Stützstellen- abstände vom Anwendungsprogramm vorgegeben werden. Dies ge¬ schieht, indem bei einem neuen Meßwert auch der relative Ab- stand (in Bezug auf die gesamte Kurve) mitübergeben wird.Curves, bar charts and tables can be displayed horizontally or vertically. When shifting a horizontal curve meter, the current measured values always come "from the right" and shift the display to the left ("running curve"). In the vertical case, the display moves from bottom to top ("clerk replacement"). Without moving, the display of a horizontal curve is built up from left to right. If the curve on the right "stands", the output is continued from the left. In order to achieve a real-time display of a curve when the measured values arrive at irregular intervals, the interpolation point distances can be specified by the application program. This is done by also transferring the relative distance (in relation to the entire curve) when a new measured value is obtained.
Die einwertigen Meterobjekte Digital, Hand und Symbol können auch für die interaktive Eingabe von Stellwerteπ verwendet werden. Wenn bei einem Meterobjekt die Eingabe zugelassen wird, kann der Benutzer mit Maus bzw. Tastatur einen Wert einstellen, der an das Anwendungsprogramm vom Kontrollprogramm als "ge- wünschter Wert" übergeben wird. Das Anwendungsprogramm kann den Wert durch Wiederausgeben bestätigen und/oder entsprechend verarbeiten. Die Benutzereingabe erfolgt dabei folgendermaßen:The monovalent meter objects digital, hand and symbol can also be used for the interactive input of manipulated values. If entry is permitted for a meter object, the user can set a value with the mouse or keyboard that the control program uses as a " desired value "is passed. The application program can confirm the value by replaying it and / or process it accordingly. The user input is as follows:
- Digital Anklickeπ des Meterobjekts und Eingabe des gewünschten- Digitally click the meter object and enter the desired one
Wertes über die Tastatur.Value via the keyboard.
- Hand- Hand
Anklicken des Meterobjekts und Ziehen mit gedrückter Maustaste bis zum gewünschten Wert. Das Meterobjekt be- wegt sich dabei entsprechend der Bewegungsfunktion mit (Move, Size, Zoom, Rotate).Click on the meter object and drag with the mouse button pressed to the desired value. The meter object moves according to the movement function with (Move, Size, Zoom, Rotate).
- Symbol- symbol
Durch Anklicken des Symbols wird auf das nächste Symbol der Liste weitergeschaltet, nach dem letzten Symbol wird wieder auf das erste zurückgeschaltet. Damit kann sich der Benutzer "durch alle Symbole durchklicken".Clicking on the symbol switches to the next symbol in the list; after the last symbol, the system switches back to the first. This allows the user to "click through all symbols".
Die Meßwerttabelle hat als Objekt, das eine logische Meßgröße beschreibt, folgende Eigenschaften: - NameThe measured value table has the following properties as an object that describes a logical measured variable: - Name
Beliebiger vom Benutzer bzw. von dem Anwendungsprogramm vorgebbarer StringAny string that can be specified by the user or by the application program
- Minimum, Maximum- minimum, maximum
Intervall, in dem sich die Meßwerte bewegen. Wird von Hand- und Kurve-Meterobjekten zur Skalierung benötigt.Interval in which the measured values move. Needed by hand and curve meter objects for scaling.
- Anzahl n der Werte- Number n of values
Für einwertige Meterobjekte genügt n=l, bei Kurve-Meter¬ objekten ergibt sich daraus die Anzahl der Stützstellen bzw. Balken etc. - SchwellwerttabelleFor single-valued meter objects, n = 1 is sufficient; for curve meter objects, this results in the number of support points or bars, etc. - threshold value table
Name der zugeordneten Schwellwerttabelle als VerweisName of the assigned threshold value table as a reference
- Liste der Meterobjekte- List of meter objects
Ein oder mehrere Meterobjekte, die die logische Meßgröße, die durch die Meßwerttabelle beschrieben wird, darstellen.One or more meter objects that represent the logical measured variable described by the measured value table.
Schwellwerttabelleπ werden einer oder mehreren Meßwerttabellen zugeordnet und beschreiben die kritischen Werte der Meßgröße. Die Schwellwerte teilen somit das Intervall der Meßwerte in mehrere Schwellwertintervalle (z.B. ergeben sich bei den Schwellwerten 0 und 100 für "Wassertemperatur" 3 Intervalle TEMP_MIN, 0-100, TEMP_MAX). Die Schwellwertintervalle werden bei der Visualisierung in den Meterobjekten entweder durch Farbumschläge (entsprechend einer beim Meterobjekt definierten Farbliste, z.B. "blau", "rot", "grau") oder beim Metertyp Symbol durch das jeweilige Symbol der Symbol-Liste (z.B. 3 Symbole "Eis", "Wasser", "Dampf") dargestellt. Threshold value tables are one or more measurement value tables assigned and describe the critical values of the measured variable. The threshold values thus divide the interval of the measured values into several threshold value intervals (for example, with the threshold values 0 and 100 for "water temperature" there are 3 intervals TEMP_MIN, 0-100, TEMP_MAX). The threshold value intervals are visualized in the meter objects either by color changes (corresponding to a color list defined for the meter object, eg "blue", "red", "gray") or, for the symbol type, by the respective symbol in the symbol list (eg 3 symbols " Ice "," water "," steam ").

Claims

Patentansprüche: Claims:
1. Computergestützes Anzeige- und Programmiersystem (XM) für Anwendungsprogramme (AP), bestehend aus einem Editor (XME) zur Erstellung von Vektorgrafik, der Gestaltung von Füllmustern und der Definition dynamischer Objekte, einem Kontrollprogramm (XMC) zur Einbindung von Meß- bzw. Stellwerten in den Programm¬ ablauf und einem Koppelprogramm (XMOM) zur Verwaltung aller grafischen Objekte und der Generierung oder Modifizierung der Bildschirmdarstellung, das mit Standardprogrammen wie einer Grafikprogrammierschnittstelle (XLIB) einer anwendungsorien- tierten Programmbibliothek eines Betriebssystems (UNIX) ver¬ bunden ist, wobei ein Ablaufbild mit grafischen Elementen dargestellt ist und für die grafischen Elemente symbolische Namen definiert sind, mit denen sie zur Darstellung vom An¬ wendungsprogramm (AP) über das Anzeige- und Programmiersystem (XM) als symbolische Programmschnittstelle aufrufbar sind, wobei Elemente des Ablaufbildes über den Editor (XME) als dynamische Meßobjekte definiert sind, die einerseits eine Meßobjekt-Beschreibung aus grafischen Objekten der Grafik¬ programmierschnittstelle (XLIB) enthalten und andererseits aus Meßwerttabellen (MWT) bestehen, die den entsprechenden aktu¬ ellen Meßwert enthalten, wobei die Verbindung der Meßwerttabelle (MWT) und der Meßobjekt-Beschreibung über das Kontrollprogramm (XMC) und das Koppelprogramm (XMOM) erfolgt, das auch die Ver¬ bindung zum Anwendungsprogramm (AP) herstellt und wobei die Darstellung der dynmischen Meßobjekte durch das Anwendungspro¬ gramm (AP) mit jedem Meßwert neu festgelegt ist.1. Computer-aided display and programming system (XM) for application programs (AP), consisting of an editor (XME) for the creation of vector graphics, the design of fill patterns and the definition of dynamic objects, a control program (XMC) for the integration of measurement or Control values in the program flow and a coupling program (XMOM) for the administration of all graphic objects and the generation or modification of the screen display, which is connected to standard programs such as a graphic programming interface (XLIB) of an application-oriented program library of an operating system (UNIX), whereby a flowchart is shown with graphic elements and symbolic names are defined for the graphic elements with which they can be called up as a symbolic program interface for display by the application program (AP) via the display and programming system (XM), elements of the flowchart using the Editor (XME) as a dynamic measurement object ects are defined which contain a description of the measurement object from graphic objects of the graphic programming interface (XLIB) on the one hand and on the other hand consist of measurement value tables (MWT) which contain the corresponding current measurement value, the connection of the measurement value table (MWT) and the measurement object -Description takes place via the control program (XMC) and the coupling program (XMOM), which also establishes the connection to the application program (AP) and the representation of the dynamic measurement objects is newly defined by the application program (AP) with each measured value.
2. System nach Anspruch 1, d a d u r c h g e k e n n ¬ z e i c h n e t , daß eine Meßwerttabelle (MWT) unterschied¬ lichen Meßobjekten zugeordnet ist und Meßobjekte als Bestand¬ teile anderer Meßobjekte ineinander geschachtelt sind. 2. System according to claim 1, so that a measurement table (MWT) is assigned to different measurement objects and measurement objects are nested one inside the other as components of other measurement objects.
PCT/EP1991/001793 1990-09-21 1991-09-19 Computer-assisted programming and displaying system WO1992005484A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AT192390 1990-09-21
ATA1923/90 1990-09-21

Publications (1)

Publication Number Publication Date
WO1992005484A1 true WO1992005484A1 (en) 1992-04-02

Family

ID=3523950

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP1991/001793 WO1992005484A1 (en) 1990-09-21 1991-09-19 Computer-assisted programming and displaying system

Country Status (1)

Country Link
WO (1) WO1992005484A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006019099A1 (en) * 2006-04-25 2007-10-31 Siemens Ag Device and method for server-side graphics creation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4873623A (en) * 1985-04-30 1989-10-10 Prometrix Corporation Process control interface with simultaneously displayed three level dynamic menu

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4873623A (en) * 1985-04-30 1989-10-10 Prometrix Corporation Process control interface with simultaneously displayed three level dynamic menu

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
1988 IEEE WORKSHOP ON LANGUAGES FOR AUTOMATION 29. August 1988, MARYLAND, US Seiten 80 - 89; D. MORIN ET AL.: 'VITAMIN TOOLKIT: A UIMS FOR CIM APPLICATIONS' siehe Seite 86, rechte Spalte, Zeile 1 - Seite 87, linke Spalte, Zeile 22 siehe Seite 87, rechte Spalte, Zeile 43 - Seite 88, rechte Spalte, Zeile 4 SA 51179 030siehe Abbildungen 5-7 *
COMPUTER. Bd. 18, Nr. 8, August 1985, LONG BEACH, US Seiten 27 - 35; G.P. BROWN ET AL.: 'PROGRAM VISUALIZATION: GRAPHICAL SUPPORT FOR SOFTWARE DEVELOPMENT' siehe Seite 28, mittlere Spalte, Zeile 12 rechte Spalte, Zeile 12 siehe Seite 30, linke Spalte, Zeile 11 - rechte Spalte, Zeile 20 SA 51179 030siehe Seite 31, rechte Spalte, Zeile 15 - Seite 32, rechte Spalte, Zeile 16 siehe Seite 33, linke Spalte, Zeile 1 - Zeile 14 siehe Seite 33, linke Spalte, Zeile 25 mittlere Spalte, Zeile 3 siehe Seite 33, rechte Spalte, Zeile 42 - Seite 34, linke *
IEEE SOFTWARE. Bd. 7, Nr. 4, Juli 1990, LOS ALAMITOS, US Seiten 12 - 20; A. HARBERT ET AL.: 'A GRAPHICAL SPECIFICATION SYSTEM FOR USER-INTERFACE DESIGN' siehe Seite 14, linke Spalte, Zeile 3 - rechte Spalte, Zeile 30 siehe Seite 15, linke Spalte, Zeile 45 - Seite 16, mittlere Spalte, Zeile 29 SA 51179 030siehe Seite 16, rechte Spalte, Zeile 37 - Zeile 44 siehe Abbildungen 2-4,6,7 *
PROCEEDINGS 10TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING 11. April 1988, SINGAPORE Seiten 367 - 376; M. YOUNG ET AL.: 'DESIGN PRINCIPLES BEHIND CHIRON: A UIMS FOR SOFTWARE ENVIRONMENTS' siehe Seite 369, linke Spalte, Zeile 15 - Zeile 31 siehe Seite 370, linke Spalte, Zeile 17 - Zeile SA 51179 03037 siehe Seite 370, rechte Spalte, Zeile 10 - Zeile 19 siehe Seite 371, linke Spalte, Zeile 8 - Zeile 24 siehe Seite 373, rechte Spalte, Zeile 13 - Zeile 21 siehe Seite 375, linke Spalte, Zeile 17 - Zeile 36 siehe Abbildungen 1,2 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006019099A1 (en) * 2006-04-25 2007-10-31 Siemens Ag Device and method for server-side graphics creation

Similar Documents

Publication Publication Date Title
DE69534331T2 (en) Method and device for highlighting the detail of a tree structure
DE69434370T2 (en) Structured image format for describing a complex color raster image
DE60302063T2 (en) Graphical user interface for a flight simulator based on a client-server architecture
DE69722246T2 (en) GRAPHICS SYSTEM AND METHOD FOR ADJUSTING OBJECTS TO TEMPLATES
DE69233037T2 (en) Automated new layout with dimensional linking
DE4446139A1 (en) Object highlighting method for computer conferencing system
DE4014231A1 (en) METHOD FOR PROCESSING THE CONTROL POINTS OF A SYMBOL IMAGE
DE2950712A1 (en) DEVICE FOR GENERATING AN ELECTRONIC BACKGROUND GRID
DE19713654B4 (en) Progressive outline script and method for generating, transmitting and displaying the same
DE10223751A1 (en) System and method for combining graphics formats in a digital video pipeline
DE19528596C2 (en) Method and device for color support
WO1981002205A1 (en) Process and device for the partial post-correction of the colour recognition domains in the recognition of colours
DE2559497A1 (en) METHOD OF IMAGE ANALYSIS AND ARRANGEMENT TO PERFORM THIS PROCEDURE
DE60106301T2 (en) METHOD AND SYSTEM FOR EXPORTING DATA ASSOCIATIONS TO TWO-DIMENSIONAL OR THREE-DIMENSIONAL GEOMETRIC ENTITIES
DE3315148A1 (en) DIGITAL VISIBILITY DEVICE
DE10197097B4 (en) programming tool
EP1036352B1 (en) Method for screen-supported definition and parametering of interfaces
DE102014006549B4 (en) Technique for processing a character string for graphical representation at a human-machine interface
DE3209187A1 (en) METHOD FOR REPRESENTING A TEXT ON A ONE-LINE DISPLAY DEVICE OF A TEXT CREATING DEVICE
DE3914905A1 (en) Device and method to represent multiple windows
DE2825912A1 (en) METHOD FOR TRANSMITTING RECORDINGS WITH A MIXED DISPLAY CONTENT TO A VIEWING DISPLAY, ESPECIALLY IN TELEPHONE SYSTEMS
DE10151938A1 (en) System and method for the dynamic representation of the current status of an order in relation to a target status
WO1992005484A1 (en) Computer-assisted programming and displaying system
DE10117030C2 (en) Process for displaying pictorially structured information on a screen
DE4411314C2 (en) Arrangement for process-oriented animation of a hierarchical simulation model true to the structure

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE

WA Withdrawal of international application
NENP Non-entry into the national phase

Ref country code: CA