AT522657A1 - Funktionseinheit mit Recheneinheit - Google Patents
Funktionseinheit mit Recheneinheit Download PDFInfo
- Publication number
- AT522657A1 AT522657A1 ATA50461/2019A AT504612019A AT522657A1 AT 522657 A1 AT522657 A1 AT 522657A1 AT 504612019 A AT504612019 A AT 504612019A AT 522657 A1 AT522657 A1 AT 522657A1
- Authority
- AT
- Austria
- Prior art keywords
- functional
- function
- data
- unit
- static data
- Prior art date
Links
- 230000006870 function Effects 0.000 claims abstract description 104
- 230000003068 static effect Effects 0.000 claims abstract description 49
- 238000004891 communication Methods 0.000 claims description 33
- 238000000034 method Methods 0.000 claims description 15
- 230000003750 conditioning effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000009529 body temperature measurement Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24137—Non volatile memory to store program on power loss
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F2015/761—Indexing scheme relating to architectures of general purpose stored programme computers
- G06F2015/766—Flash EPROM
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Programmable Controllers (AREA)
Abstract
Um den Speicherbedarf an flüchtigem Speicher einer modularen Funktionseinheit (1) mit einer Recheneinheit (2) und zumindest einem Funktionsmodul (3i) zu reduzieren, ist vorgesehen, dass statische Daten (SD) in einer Datenbank (25) in einem nicht flüchtigen Speicher (24) der Recheneinheit (2) gespeichert sind und über eine Datenbankverwaltungsfunktion (26) eines auf der Recheneinheit (2) ausgeführten Funktionsprogrammes (22) auf die in der Datenbank (25) gespeicherten statische Daten (SD) zugegriffen wird.
Description
15
20
25
30
35
BN-4084 AT
Funktionseinheit mit Recheneinheit
Die gegenständliche Erfindung betrifft eine Funktionseinheit mit einer Recheneinheit und zumindest einem Funktionsmodul, das mit der Recheneinheit über einen Datenbus verbunden ist, wobei in der Recheneinheit ein Prozessor, ein flüchtiger Speicher und ein nicht flüchtiger Speicher vorgesehen sind und am Prozessor zumindest ein Funktionsprogramm ausgeführt wird, das während der Ausführung auf statische Daten der Funktionseinheit zugreift. Die Erfindung betrifft ferner die Verwendung einer solchen Funktionseinheit in einem mechatronischen System und ein Verfahren zum Betreiben einer
solchen Funktionseinheit.
In mechatronischen Systemen, wie Maschinen oder Anlagen, werden Sensoren verwendet, um benötigte Messwerte am mechatronischen System zu erfassen. Die Messwerte werden in Steuereinheiten verarbeitet, um Stellgrößen für Aktuatoren des mechatronischen Systems zu ermitteln, die dann von den Aktuatoren eingestellt werden, um auf das System Einfluss zu nehmen. Dabei kann eine große Anzahl verschiedener Sensoren und/oder Aktuatoren verbaut sein. Die Sensoren, Aktuatoren und Steuereinheiten werden oftmals über Datenkommunikationsbusse miteinander verbunden, wobei man in diesem Zusammenhang üblicherweise von Feldbussen spricht. Bekannte Marktteilnehmer sind beispielsweise die Protokollfamilien Ethernet POWERLINK, CAN, PROFIBUS, PROFINET etc. Ebenso kommen in mechatronischen Systemen vermehrt dezentrale Steuerungen zum Einsatz, in denen die Steuerung des mechatronischen Systems auf mehrere Steuereinheiten, die ebenfalls über Feldbusse miteinander verbunden sein können, aufgeteilt ist. Eine Steuereinheit steuert dann beispielsweise einen Teil des mechatronischen Systems. Zur Realisierung der Steuerung werden häufig modular aufgebaute Funktionseinheiten verwendet, die eine Anzahl von Funktionsmodulen und eine damit verbundene Recheneinheit aufweisen. An einem Funktionsmodul sind beispielsweise analoge und/oder digitale Eingänge und/oder Ausgänge vorgesehen, um daran Sensoren oder Aktuatoren anzuschließen. Auch sonstige Funktionen können an einem Funktionsmodul realisiert sein, beispielsweise eine Signalaufbereitung oder Signalverarbeitung, Zähler usw. Durch die Anordnung mehrerer und auch verschiedener Funktionsmodule kann die Funktionalität einer solchen Funktionseinheit flexibel angepasst werden. Eine Recheneinheit kann beispielsweise als Steuereinheit oder Kopfstation eines damit verbundenen modularen Geräts zur Anbindung an einen Feldbus, z.B. zur Verbindung mit einer externen Steuereinheit, ausgeführt sein. Auf der Recheneinheit können daher auch Funktionsprogramme ablaufen, vorzugsweise auf einem auf der Recheneinheit implementierten Betriebssystem. Es versteht sich von selbst, dass die Recheneinheit dazu zumindest einen Prozessor und einen flüchtigen Speicher aufweist. Solche
Funktionsprogramme können ein Steuerprogramm zur Umsetzung einer Steuerfunktionalität,
211577
15
20
25
30
35
BN-4084 AT
ein Webserver, ein Kommunikationsserver, wie z.B. ein OPC UA Server (Open Platform Communications Unified Architecture der OPC Foundation) etc. sein. Über einen implementierten Kommunikationsserver kann beispielsweise auf die Funktionen der Funktionsmodule zugegriffen werden, beispielsweise um einen Ausgang für einen Aktuator zu setzen, oder diese abgefragt werden, beispielsweise um einen Sensorwert an einem Eingang zu lesen. Die Recheneinheit und die Anzahl der Funktionsmodule können untereinander über einen Datenbus verbunden sein. Ein Beispiel einer solchen Funktionseinheit ist das X20 System der Anmelderin. Dieses X20 System umfasst auch Recheneinheiten, wie beispielsweise Zentralrecheneinheiten mit Betriebssystem wie X20CP1583 oder Kopfstationen wie X20BC008U mit einem OPC UA Server. OPC UA wird häufig eingesetzt, um Geräte unterschiedlicher Hersteller und mit unterschiedlichen Busprotokollen zu verbinden, also beispielsweise auch dort, wo Sensoren, Aktuatoren und Steuerungen verschiedener Hersteller in einem mechatronischen System eingesetzt werden. Der OPC UA Server kann mit verschiedenen OPC UA Clients verbunden sein und auf den
OPC UA Server können verschiedene OPC UA Clients zugreifen.
Eine modulare Funktionseinheit muss natürlich auch konfiguriert werden, um festzulegen welche Funktionen an den Funktionsmodulen vorgesehen sind (z.B. Eingänge, Ausgänge etc.), wie die verschiedenen Funktionen (z.B. Eingänge, Ausgänge etc.) adressiert werden können und welche Eigenschaften die Funktionen aufweisen (beispielsweise digitaler oder analoger Eingang / Ausgang, Einstellung eines Eingangsfilters an einem Eingang usw.). Daneben können auch noch andere prozessunabhängige Daten gespeichert sein, wie beispielsweise Netzwerkdaten des OPC UA Servers (z.B. DHCP oder DNS-Einstellungen etc.) oder welche Funktionsmodule überhaupt vorgesehen sind (z.B. Hersteller, Seriennummer, Modultyp etc.). Die prozessunabhängigen Daten und die Konfigurationsdaten werden häufig auch als statische Daten bezeichnet, weil sich diese im Normalbetrieb während des Betriebs der Funktionseinheit nicht oder nur in Ausnahmefällen ändern. Die Erstellung der zu speichernden Sollwerte der statischen Daten passiert derart, dass sie auf einem externen Rechner, beispielsweise ein Rechner mit einem Softwaretool zur Konfiguration, erstellt werden (beispielsweise als XML-File) und auf die Funktionseinheit geladen und gespeichert werden. Das kann auch mit zur Verfügung gestellten Funktionsprogrammen („Methoden“) des OPC UA Servers erfolgen, beispielsweise stellt der OPC UA Server eine aufrufbare Methode zum Laden eines Konfigurationsfiles zur Verfügung. Auf der Recheneinheit der modularen Funktionseinheit wird das Konfigurationsfile gespeichert oder das Konfigurationsfile wird verwendet, um die benötigten statischen Daten in der Recheneinheit in der vorgesehenen Form zu hinterlegen. Über den Zugriff über einen OPC UA Client könnten die statischen Daten der Recheneinheit auch
direkt konfiguriert werden, was aber umständlicher ist.
3115”
15
20
25
30
35
BN-4084 AT
Neben den statischen Daten gibt es noch dynamische Daten, die sich im Betrieb der Funktionseinheit ändern. Dynamische Daten sind insbesondere an den Eingängen eingelesene Sensorwerte oder an den Ausgängen ausgegebene Aktuatorwerte. Solche dynamischen Daten werden oftmals für eine gewisse Zeit in der Recheneinheit der Funktionseinheit gespeichert. Ein gewisser Sensorwert oder Aktuatorwert liegt dann in der Recheneinheit beispielsweise als Zeitreihe über eine bestimmte Zeitspanne vor. Die dynamischen Daten können während des Betriebs von anderen Steuereinheiten (z.B. über darauf implementierte OPC UA Clients) oder auch intern gelesen (Sensorwerte) oder geschrieben (Aktuatorwerte) werden. Wenn auf der Steuereinheit der Funktionseinheit beispielsweise eine Steuer- oder Regelungsfunktion implementiert ist, dann kann diese Sensorwerte verarbeiten und Aktuatorwerte berechnen, die dann an einem Ausgang
ausgegeben werden können.
Üblicherweise werden alle (statische und dynamische) Daten im flüchtigen Speicher der Recheneinheit abgelegt. Damit müssen die statischen Daten aber bei jedem Neustart der Recheneinheit neu eingelesen oder erstellt werden (z.B. aus einem Konfigurationsfile), was den Start verzögert. Abgesehen davon wird damit viel Speicherplatz im flüchtigen Speicher benötigt, was ungünstig ist, weil flüchtiger Speicher verhältnismäßig teuer ist. Für das Speichern der dynamischen Daten kann das Betriebssystem der Recheneinheit verwendet werden, um die dynamischen Daten beispielsweise im flüchtigen oder einem nicht flüchtigen Speicher der Recheneinheit, z.B. einem Flashspeicher (Flash-EEPROM), zu speichern. Es ist auch bekannt, dynamische Daten nicht in der Recheneinheit zu speichern, sondern an
eine externe Datenbank oder Steuereinheit (z.B. einen externen OPC UA Server) zu senden.
Es ist daher eine Aufgabe der gegenständlichen Erfindung eine modulare Funktionseinheit mit einer Recheneinheit und zumindest einem Funktionsmodul anzugeben, sowie ein Verfahren zum Betreiben einer solchen Funktionseinheit, bei der der benötigte flüchtige
Speicher in der Recheneinheit reduziert werden kann.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, dass statische Daten in einer Datenbank in einem nicht flüchtigen Speicher der Recheneinheit gespeichert sind und dass zumindest ein Funktionsprogramm eine Datenbankverwaltungsfunktion zur Verfügung stellt, über die auf die in der Datenbank gespeicherten Daten zugegriffen wird. Durch die Speicherung der statischen Daten in einem nicht flüchtigen Speicher in einem Datenbanksystem (mit Datenbank und Datenbankverwaltungsfunktion) können die statischen Daten vom Funktionsprogramm und von dessen Ausführung getrennt werden. Im flüchtigen Speicher müssen die statischen Daten damit nicht mehr abgelegt werden, womit der Speicherbedarf im flüchtigen Speicher sinkt. Abgesehen davon müssen die statischen Daten nicht mehr bei jedem Neustart der Funktionseinheit neu geladen werden, weil diese
persistent im nicht flüchtigen Speicher abgelegt sind. Das Datenbanksystem bringt dazu
4115”
15
20
25
30
35
BN-4084 AT
Datenfunktionen mit sich, über die darüber hinaus auch die Konsistenz und die Korrektheit der statischen Daten überwacht und geprüft werden kann. Die Gefahr einer fehlerhaften Konfiguration der Funktionseinheit mit den statischen Daten kann daher reduziert werden. Statische Daten sind dabei insbesondere Daten, die sich im Betrieb der Funktionseinheit, zumindest im Normalfall, nicht ändern und die in der Funktionseinheit gespeichert sind und die für die ordnungsgemäße Ausführung des Funktionsprogrammes und/oder für die ordnungsgemäße Funktion der Funktionseinheit benötigt werden. Statische Daten sind damit im Betrieb der Funktionseinheit unveränderliche Daten, im Gegensatz zu Betriebsdaten, die
sich im laufenden Betrieb ändern.
Besonders vorteilhaft ist am zumindest einen Funktionsmodul zumindest ein Steckplatz vorgesehen, der eine Funktion des Funktionsmoduls realisiert, wobei die Funktion des Funktionsmoduls durch statische Daten konfiguriert ist. Über solche Steckplätze kann die Funktion des Funktionsmoduls, bzw. der gesamten Funktionseinheit, sehr einfach und flexibel angepasst werden, auch durch entsprechende Konfiguration mittels der statischen
Daten.
Auch der Datenbus oder ein Kommunikationsanschluss zum Anschließen eines
Kommunikationsbusses kann durch statische Daten konfiguriert werden.
In einer besonders vorteilhaften Ausgestaltung ist das Funktionsprogramm, das die Datenbankverwaltungsfunktion zur Verfügung stellt, als OPC UA Server implementiert. Übliche OPC UA Server Stacks stellen bereits eine Datenprovider-Schnittstelle zur Verfügung, mit der in einfacher Weise eine Datenbankverwaltungsfunktion für eine
Datenbank für die Anbindung der statischen Daten zur Verfügung gestellt werden kann.
Die gegenständliche Erfindung wird nachfolgend unter Bezugnahme auf die Figuren 1 bis 3 näher erläutert, die beispielhaft, schematisch und nicht einschränkend vorteilhafte
Ausgestaltungen der Erfindung zeigen. Dabei zeigt
Fig.1 eine modulare Funktionseinheit mit Funktionsmodulen, Fig.2 eine Steuereinheit der Funktionseinheit mit Funktionsprogrammen und
Fig.3 eine Steuereinheit mit einer Datenbank für statische Daten.
In Fig.1 ist eine modulare Funktionseinheit 1 beispielhaft dargestellt. Diese umfasst eine Recheneinheit 2 und zumindest ein Funktionsmodul 3«, 3,, ..., 3, mit 1 > 1. Ferner kann als weiteres Funktionsmodul auch ein Spannungsversorgungsmodul 4 vorgesehen sein, wobei die Spannungsversorgung aber auch von einer anderen Einheit bereitgestellt werden könnte, beispielsweise von der Recheneinheit 2. Die Recheneinheit 2 und die Funktionsmodule 3; sind über den Datenbus 5 miteinander verbunden. Der Datenbus 5 ist beispielsweise als Backplane ausgeführt, die automatisch kontaktiert wird, wenn ein Funktionsmodul 3;
hinzugefügt wird, beispielsweise durch Stecken auf eine Hutschiene (z.B. direktes Anstecken
5 J 157
15
20
25
30
35
BN-4084 AT
oder über separate Backplane-Module). Zur Datenkommunikation über den Datenbus 5 kann ein beliebiges geeignetes Kommunikationsprotokoll implementiert sein. Gleicherweise kann die Spannungsversorgung über die Backplane realisiert sein, die ebenso automatisch kontaktiert werden kann, beispielsweise beim Stecken eines Funktionsmoduls 3;. Wie der Datenbus 5 und die Spannungsversorgung konkret ausgeführt sind und wie diese kontaktiert werden und welches Kommunikationsprotokoll implementiert ist, ist für die gegenständliche Erfindung aber nicht relevant. Die Funktionseinheit 1 ist typischerweise in einem Schaltschrank des mechatronischen Systems 10 angeordnet, beispielsweise auf einer Hutschiene. Der Funktionsumfang der Funktionseinheit 1 kann durch die Auswahl und Anordnung der Funktionsmodule 3; flexibel angepasst werden, beispielsweise um eine
bestimmte Steuerungsfunktion des mechatronischen Systems 10 zu realisieren.
Auf einem Funktionsmodul 3; sind eine Anzahl von Steckplätzen 6 vorgesehen, deren Daten über den Datenbus 5 mit der Steuereinheit 2 ausgetauscht werden. Ein Steckplatz 6 kann als Steckbuchse zum Anschließen eines Steckers, als Anschlussklemme zum Anschließen eines Drahtes oder andere geeignete Kontaktierung ausgeführt sein, was aber für die Erfindung nicht relevant ist. Ein Steckplatz 6 ist somit die physikalische Schnittstelle einer Funktion des Funktionsmoduls 3;. Ein Steckplatz 6 kann beispielsweise als analoger oder digitaler Eingang oder Ausgang, als Zähler, als Signalaufbereitung, als Signalverarbeitung, als Datenschnittstelle (RS232, CAN, IO-Link, RS485 etc.), zur Temperaturmessung, Leistungsmessung, Motorsteuerung usw. als Funktion implementiert sein. Das kann im Funktionsmodul 3; hardwaremäßig realisiert sein, könnte aber auch durch Setzen bestimmter Konfigurationsparameter konfigurierbar sein. An einem Steckplatz 6 kann beispielsweise ein
Sensor 7 oder ein Aktuator 8 eines mechatronischen Systems 10 angeschlossen sein.
Die Recheneinheit 2 kann auch einen Kommunikationsanschluss 9 aufweisen, beispielsweise um die Funktionseinheit 1 über einen Kommunikationsbus 12 mit einer übergeordneten Anlagensteuerung 11 des mechatronischen Systems 10 oder mit einer anderen externen Einheit, auch einer anderen Funktionseinheit, zu verbinden. Auf dem Kommunikationsbus 12 kann zur Datenkommunikation ein beliebiges Kommunikationsprotokoll implementiert sein, beispielsweise Ethernet POWERLINK, CAN, PROFIBUS, PROFINET, OPC UA etc. Das Kommunikationsprotokoll des Kommunikationsbusses 12 muss nicht mit dem Kommunikationsprotokoll auf dem Datenbus 5 übereinstimmen. Eine Anlagensteuerung 11 kann natürlich mit mehreren solchen Funktionseinheiten 1 verbunden sein, z.B. um das mechatronische System 10 zu steuern. Gleichfalls könnten auch mehrere Anlagensteuerungen 11 vorgesehen sein, die untereinander und mit verschiedenen Funktionseinheiten verbunden sein könnten. Damit kann die Funktionseinheit 1 als reine Eingabe-/Ausgabeeinheit ausgeführt sein, die über ein
Funktionsmodul 3; von Sensoren 7 gelesene Werte an eine Anlagensteuerung 11 sendet, die
6115”
15
20
25
30
35
BN-4084 AT
Aktuatorwerte berechnet, die über ein Funktionsmodul 3; der Funktionseinheit 1 an Aktuatoren 8 ausgegeben werden. Die Recheneinheit 2 der Funktionseinheit 1 kann aber selbst Steuerfunktionen realisieren. Dazu kann diese selbst Sensorwerte von Sensoren 7 verarbeiten, um daraus Aktuatorwerte für Aktuatoren 8 zu berechnen. Selbstverständlich ist
auch beides gleichzeitig möglich.
Für eine korrekte Funktion der Funktionseinheit 1 ist es erforderlich, die Steckplätze 6 zu konfigurieren. Beispielsweise ist zu konfigurieren, welche Funktionsmodule 3; vorgesehen sind (z.B. Hersteller, Seriennummer, Modultyp etc.), welche Funktionen an den Funktionsmodulen 3; vorgesehen sind (z.B. Eingänge, Ausgänge etc.), wie die verschiedenen Funktionen (z.B. Eingänge, Ausgänge etc.) adressiert werden können, welche Eigenschaften die Funktionen aufweisen (beispielsweise digitaler oder analoger Eingang / Ausgang, Einstellung eines Eingangsfilters an einem Eingang, Strom- oder Spannungsmessung bei einem analogen Eingang usw.). Je nach Modultyp kann ein Funktionsmodul 3; aber auch gar keine Konfiguration erfordern. Welche Konfiguration erforderlich ist, hängt vom Modultyp und von der zu realisierenden Funktion ab. Ebenso kann es erforderlich sein, Netzwerk- und Benutzerdaten des Kommunikationsanschlusses 9 zu konfigurieren, wie beispielsweise DHCP, Gateway, Hostname, IP-Adresse, DNS, Zertifikate etc., um daran einen Kommunikationsbus 12 anschließen zu können. Auch der Datenbus 5
kann eine Konfiguration benötigen.
Fig.2 zeigt eine erfindungsgemäße Recheneinheit 2 der Funktionseinheit 1 mit zumindest einem Prozessor 20, auf den Programme geladen und ausgeführt werden können. Auf dem Prozessor 20 kann ein Betriebssystem 21, beispielsweise Linux, laufen, das dann die Ausführung anderer Funktionsprogramme 22 überwacht und steuert. Es ist aber auch denkbar, dass die Funktionsprogramme 22 gänzlich ohne Betriebssystem 21 oder auf einfachen Scheduling-Systemen (wie FreeRTOS) ausgeführt werden. Natürlich können auch mehrere Funktionsprogramme 22 gleichzeitig ausgeführt werden, wie in Fig.2 angedeutet. Ferner ist zur Ausführung der Programme auch ein flüchtiger Speicher 23 (beispielsweise ein RAM-Speicher) vorgesehen, auf dem in bekannter Weise für die Ausführung der Funktionsprogramme 22 benötigte Daten gespeichert werden. In der Regel wird ein auszuführendes Funktionsprogramm 22 zumindest teilweise in den flüchtigen Speicher 23 geladen, auf den der Prozessor 20 zur Ausführung zugreift. Ebenso ist üblicherweise ein nicht flüchtiger Speicher 24, beispielsweise ein Flash-EEPROM, vorgesehen, auf dem die Funktionsprogramme 22 dauerhaft gespeichert werden können. Der nicht flüchtige Speicher 24 und/oder der flüchtige Speicher 23 muss aber nicht zwingend hardwaremäßig in der Recheneinheit 2 angeordnet sein, sondern könnte auch extern an die Recheneinheit 2 angebunden sein, beispielsweise als SSD Festplatte oder andere Speichereinheit an einem
geeigneten Anschluss der Recheneinheit 2. Ebenso könnte der Prozessor 20 und der
71157
15
20
25
30
35
BN-4084 AT
flüchtige Speicher 23 und/oder der nicht flüchtige Speicher 24 in einem Bauteil integriert
sein.
Auf der Recheneinheit 2 können verschiedene Funktionsprogramme 22 laufen, beispielsweise ein Funktionsprogramm 22 zur Datenkommunikation über den Datenbus 5 mit den Funktionsmodulen 3;, oder ein Funktionsprogramm 22 zur Datenkommunikation über den einen an den Kommunikationsanschluss 9 angeschlossenen Kommunikationsbus 12. Ebenso kann mit einem Funktionsprogramm 22 auch eine Steuerfunktion im mechatronischen System 10 realisiert sein. Ein Funktionsprogramm 22 kann auch einen Kommunikationsserver, wie beispielsweise einen OPC UA Server oder einen Webserver, realisieren. Ein Funktionsprogramm 22 kann dabei auch gleichzeitig verschiedene Funktionen realisieren. Es sind aber natürlich auch beliebig andere Funktionsprogramme 22
möglich.
Beispielsweise kann ein Funktionsprogramm 22 als OPC UA Server ausgeführt sein, der verschiedenste Funktionalitäten abdecken kann, beispielsweise Kommunikation mit zumindest einem Funktionsmodul 3; zur Konfiguration und/oder zum Einlesen von Sensorwerten und/oder zum Ausgeben von Aktuatorwerten, Kommunikation mit externen OPC UA Clients oder anderen OPC UA Servern über den Kommunikationsbus 12, Einlesen
von Konfigurationsfiles zum Konfigurieren des zumindest einen Funktionsmoduls 3; usw.
Für die korrekte Ausführung zumindest eines Funktionsprogrammes 22 sind prozessunabhängige Daten erforderlich, auch als statische Daten SD bezeichnet, die vor dem Betrieb der Funktionseinheit 1 festzulegen sind. Solche statischen Daten SD sind beispielsweise die oben erläuterten Konfigurationsdaten des zumindest einen Funktionsmoduls 3; und/oder des Kommunikationsbusses 12 und/oder des Datenbusses 5. Die statischen Daten SD werden vor dem eigentlichen Betrieb der Funktionseinheit 1 festgelegt und ändern sich danach im Normalfall während des normalen Betriebs der
Funktionseinheit 1 nicht mehr.
Die statischen Daten SD werden nun gemäß der Erfindung nicht mehr wie bisher üblich im flüchtigen Speicher 23 abgelegt, sondern in einer Datenbank 25 im nicht flüchtigen Speicher 24, wie anhand von Fig.3 erläutert wird. Um auf die Datenbank 25 zuzugreifen, beispielsweise um statische Daten SD zu lesen oder zu schreiben, stellt zumindest ein Funktionsprogramm 22 eine Datenbankverwaltungsfunktion 26 zur Verfügung. Die Datenbank 25 und die Datenbankverwaltungsfunktion 26 bilden zusammen ein Datenbanksystem. Eine gängige Datenbank ist beispielsweise eine relationale Datenbank, über die die Datenstruktur der Daten in der Datenbank festgelegt ist. Ein Beispiel hierfür ist eine SQL-Datenbank.
8/15"
15
20
25
30
35
BN-4084 AT
Zur Realisierung kann beispielsweise ein Funktionsprogramm 22 als OPC UA Server ausgeführt sein, der auch eine Datenbankverwaltungsfunktion 26 implementiert hat, über die auf statische Daten SD in einer damit verknüpften Datenbank 25 zugegriffen werden kann. Die Realisierung als OPC UA Server ist besonders vorteilhaft, weil übliche OPC UA Server Stacks bereits eine Datenprovider-Schnittstelle zur Verfügung stellen, die für jegliche im OPC UA Server verwalteten Daten individuell implementiert werden kann. Somit kann in einfacher Weise einerseits eine Datenbankverwaltungsfunktion 26 für eine Datenbank für die Anbindung der statischen Daten SD, andererseits eine Verwaltungsfunktion für den
Datenbus 5 für die Anbindung der dynamischen Daten verwendet werden.
Es ist aber auch denkbar, dass ein Funktionsprogramm 22 nur die Datenbankverwaltungsfunktion 26 realisiert und andere Funktionsprogramme 22 über diese Datenbankverwaltungsfunktion 26 auf die damit verknüpften Daten in der Datenbank 25 zugreifen. Es ist auch denkbar, dass im nicht flüchtigen Speicher 24 mehrere Datenbanken 25 zum Ablegen verschiedener statischer Daten SD vorgesehen sind, auf die über dieselbe Datenbankverwaltungsfunktion 26 oder über verschiedene Datenbankverwaltungsfunktionen
26 zugegriffen werden.
Durch Verwendung eines Datenbanksystems kann auch die Korrektheit und Konsistenz der statischen Daten SD in der Datenbank 25 sichergestellt werden, da das typische Funktionen sind, die von einer Datenbankverwaltungsfunktion 26 durchgeführt werden. Solche
Funktionen können in einem Funktionsprogramm 22, wie einem OPC UA Server, auch extra
implementiert und ausgeführt werden.
Damit kann eine strikte Trennung der statischen Daten SD von den Funktionsprogrammen 22 realisiert werden, womit auf einfache Weise auch ein Funktionsprogramm 22 geändert werden kann oder ein neues Funktionsprogramm 22 hinzugefügt werden kann, ohne die statischen Daten SD ändern zu müssen. Damit kann auch sichergestellt werden, dass bei einem Neustart der Funktionseinheit 1 nur das zumindest eine Funktionsprogramm 22 geladen und gestartet werden muss, aber keine, oder zumindest weniger, statische Daten SD geladen und/oder gespeichert werden müssen, was den Startvorgang erheblich
beschleunigen kann.
Für den Zugriff auf statische Daten SD von extern kann ebenso ein Funktionsprogramm 22 vorgesehen sein, oder ein Funktionsprogramm 22 eine entsprechende Funktion implementiert haben. Bei Realisierung eines Funktionsprogrammes 22 als OPC UA Server kann beispielsweise ein externer OPC UA Client über den OPC UA Server auf die statischen Daten SD in der Datenbank 25 zugreifen, beispielsweise um diese zu schreiben oder zu
lesen.
9/15”
BN-4084 AT
Betriebsdaten BD, also Daten die im laufenden Betrieb der Funktionseinheit 1, bzw. des mechatronischen Systems 10, entstehen (auch dynamische Daten genannt), können im flüchtigen Speicher 23 oder im nicht flüchtigen Speicher 24 abgelegt werden. Solche Betriebsdaten BD sind insbesondere während des Betriebs entstehende Sensorwerte, die von Sensoren 7 eingelesen werden, oder Aktuatorwerte, die an Aktuatoren 8 ausgegeben werden. Diese können auch zeitbezogen gespeichert werden, um einen zeitlichen Verlauf verfügbar zu haben. Zum Speichern oder Auslesen solcher Betriebsdaten BD kann wieder ein Funktionsprogramm 22 vorgesehen sein. Die Realisierung als OPC UA Server ist auch hierfür besonders vorteilhaft, weil übliche OPC UA Server Stacks bereits Funktionalität für
die Verwaltung von gespeicherten Daten mitbringen („Historizing“ Funktionalität).
„-9
Claims (12)
1. Funktionseinheit mit einer Recheneinheit (2) und zumindest einem Funktionsmodul (3)), das mit der Recheneinheit (2) über einen Datenbus (5) verbunden ist, wobei in der Recheneinheit (2) ein Prozessor (20), ein flüchtiger Speicher (23) und ein nicht flüchtiger Speicher (24) vorgesehen sind und am Prozessor (20) zumindest ein Funktionsprogramm (22) ausgeführt wird, das während der Ausführung auf statische Daten (SD) der Funktionseinheit (1) zugreift, dadurch gekennzeichnet, dass die statischen Daten (SD) in einer Datenbank (25) in einem nicht flüchtigen Speicher (24) der Recheneinheit (2) gespeichert sind und das zumindest eine Funktionsprogramm (22) oder ein weiteres am Prozessor ausgeführtes Funktionsprogramm (22) eine Datenbankverwaltungsfunktion (26) zur Verfügung stellt, um damit auf die in der Datenbank (25) gespeicherten statischen Daten
(SD) zuzugreifen.
2. Funktionseinheit nach Anspruch 1, dadurch gekennzeichnet, dass am zumindest einen Funktionsmodul (3;) zumindest ein Steckplatz (6) vorgesehen ist, der eine Funktion des Funktionsmoduls (3) realisiert, wobei die Funktion des Funktionsmoduls (3;) durch statische Daten (SD) konfiguriert ist.
3. Funktionseinheit nach Anspruch 1, dadurch gekennzeichnet, dass der Datenbus (5)
durch statische Daten (SD) konfiguriert ist.
4. Funktionseinheit nach Anspruch 1, dadurch gekennzeichnet, dass an der Recheneinheit (2) ein Kommunikationsanschluss (9) zum Anschließen eines Kommunikationsbusses (12) vorgesehen ist, wobei der Kommunikationsanschluss (12)
durch statische Daten (SD) konfiguriert ist.
5. Funktionseinheit nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass das Funktionsprogramm (22), das die Datenbankverwaltungsfunktion (26) zur Verfügung
stellt, als OPC UA Server implementiert ist.
6. Verwendung einer Funktionseinheit nach einem der Ansprüche 1 bis 5 in einem
mechatronischen System zum Steuern einer Funktion des mechatronischen Systems (10).
7. Verwendung nach Anspruch 6, dadurch gekennzeichnet, dass die Funktionseinheit
(1) mit einer Anlagensteuerung (11) des mechatronischen Systems verbunden ist.
8. Verfahren zum Betreiben einer Funktionseinheit (1) bestehend aus einer Recheneinheit (2) und zumindest einem damit über einen Datenbus (5) verbundenen Funktionsmodul (3;), wobei in der Recheneinheit (2) zumindest ein Funktionsprogramm (22)
auf einem Prozessor (20) ausgeführt wird und das Funktionsprogramm (22) während der
15
BN-4084 AT
Ausführung auf statische Daten (SD) der Funktionseinheit (1) zugreift, dadurch gekennzeichnet, dass die statischen Daten (SD) in einer Datenbank (25) in einem nicht flüchtigen Speicher (24) der Recheneinheit (2) gespeichert werden, auf die über eine im zumindest einen Funktionsprogramm (22) oder in einem weiteren auf dem Prozessor (20) ausgeführten Funktionsprogramm (22) implementierte Datenbankverwaltungsfunktion (26)
zugegriffen wird.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass durch statische Daten (SD) eine Funktion zumindest eines am Funktionsmodul (3;) vorgesehenen Steckplatzes (6)
konfiguriert wird.
10. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der Datenbus (5) durch
statische Daten (SD) konfiguriert wird.
11. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass durch statische Daten (SD) ein an der Recheneinheit (2) vorgesehener Kommunikationsanschluss (9) zum
Anschließen eines Kommunikationsbusses (12) konfiguriert wird.
12. Verfahren nach einem der Ansprüche 8 bis 11 ,‚ dadurch gekennzeichnet, dass das die Datenbankverwaltungsfunktion (26) zur Verfügung stellende Funktionsprogramm (22) als
OPC UA Server implementiert wird.
-11
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ATA50461/2019A AT522657A1 (de) | 2019-05-20 | 2019-05-20 | Funktionseinheit mit Recheneinheit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ATA50461/2019A AT522657A1 (de) | 2019-05-20 | 2019-05-20 | Funktionseinheit mit Recheneinheit |
Publications (1)
Publication Number | Publication Date |
---|---|
AT522657A1 true AT522657A1 (de) | 2020-12-15 |
Family
ID=73727370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ATA50461/2019A AT522657A1 (de) | 2019-05-20 | 2019-05-20 | Funktionseinheit mit Recheneinheit |
Country Status (1)
Country | Link |
---|---|
AT (1) | AT522657A1 (de) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102007033346A1 (de) * | 2007-07-16 | 2009-05-20 | Certon Systems Gmbh | Verfahren und Vorrichtung zur Administration von Computern |
WO2016037943A1 (de) * | 2014-09-09 | 2016-03-17 | Fujitsu Technology Solutions Intellectual Property Gmbh | Modulares computersystem und servermodul |
DE102016101035A1 (de) * | 2015-01-26 | 2016-07-28 | Ford Global Technologies, Llc | System und Verfahren zum Einstellen des Antriebsstrangbetriebs |
DE102015118129A1 (de) * | 2015-10-23 | 2017-04-27 | Dspace Digital Signal Processing And Control Engineering Gmbh | Verfahren zum Ermitteln der Leistungsaufnahme eines programmierbaren Logikbausteins |
DE102018124235A1 (de) * | 2017-09-29 | 2019-04-04 | Fisher-Rosemount Systems, Inc. | Poisoning-schutz für prozessleit-switches |
-
2019
- 2019-05-20 AT ATA50461/2019A patent/AT522657A1/de not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102007033346A1 (de) * | 2007-07-16 | 2009-05-20 | Certon Systems Gmbh | Verfahren und Vorrichtung zur Administration von Computern |
WO2016037943A1 (de) * | 2014-09-09 | 2016-03-17 | Fujitsu Technology Solutions Intellectual Property Gmbh | Modulares computersystem und servermodul |
DE102016101035A1 (de) * | 2015-01-26 | 2016-07-28 | Ford Global Technologies, Llc | System und Verfahren zum Einstellen des Antriebsstrangbetriebs |
DE102015118129A1 (de) * | 2015-10-23 | 2017-04-27 | Dspace Digital Signal Processing And Control Engineering Gmbh | Verfahren zum Ermitteln der Leistungsaufnahme eines programmierbaren Logikbausteins |
DE102018124235A1 (de) * | 2017-09-29 | 2019-04-04 | Fisher-Rosemount Systems, Inc. | Poisoning-schutz für prozessleit-switches |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1779203B1 (de) | Parameteridentifikation für feldgeräte in der automatisierungstechnik | |
EP2591404B1 (de) | Verfahren zur konfigurierung einer steuerungseinrichtung | |
EP1352300A1 (de) | Netzwerk mit mehreren teilnehmern sowie teilnehmer für ein derartiges netzwerk | |
EP1906277A1 (de) | Verfahren zum Synchronisieren von zwei Steuereinrichtungen und redundant aufgebaute Automatisierungsvorrichtung | |
DE102017109886A1 (de) | Steuerungssystem zum Steuern von sicherheitskritischen und nichtsicherheitskritischen Prozessen mit Master-Slave-Funktionalität | |
EP3001310A1 (de) | Verfahren und Einrichtung zur Aktualisierung von Firmware für Komponenten einer industriellen Automatisierungsanordnung | |
EP2520991A1 (de) | Verfahren zum steuernden Eingriff in das Verhalten eines Submoduls | |
EP1119810A1 (de) | Speicherprogrammierbare steuerung mittels datenverwaltung über netzrechner und verfahren zum betrieb einer speicherprogrammierbaren steuerung | |
DE10208530A1 (de) | Betriebseinheit, Peripheriegerät und Verfahren zum Betrieb eines Peripheriegeräts | |
EP2226693A1 (de) | Programmiergerät zur Projektierung einer Kommunikationsverbindung zwischen Automatisierungskomponenten in einer industriellen Automatisierungsanordnung | |
EP1359504A1 (de) | Verfahren zur Konfiguration bzw. Steuerung einer elektronisch steuerbaren, modularen Anlage | |
EP2480940B1 (de) | Verfahren zum bereitstellen von sicherheitsfunktionen | |
AT522657A1 (de) | Funktionseinheit mit Recheneinheit | |
WO2011032796A1 (de) | Bereitstellung anlagenbezogener betriebsdaten unter verwendung eines diagnose-datenservers als weiteren feldbusmaster | |
EP2557464A1 (de) | Verfahren zum Betrieb eines Automatisierungssystems | |
DE102009005399A1 (de) | Verfahren und Kommunikationssystem zum Konfigurieren eines einen Logikbaustein enthaltenden Kommunikationsmoduls | |
DE102015207900B4 (de) | Verfahren zur Durchführung eines Betriebssystem-Updates | |
DE10354938B4 (de) | Datenverarbeitungssystem mit automatisierbarer Verwaltung und Verfahren zur automatisierten Verwaltung eines Datenverarbeitungssystems | |
EP2629164B1 (de) | Verfahren und Konfigurationskomponente zur Zuweisung eines Stationsnamens zu Komponenten einer industriellen Automatisierungsanordnung | |
EP3482467B1 (de) | Steckverbinderbauteil, steckverbinder, steckverbindersystem und verfahren zum zusammensetzen und betreiben eines steckverbinders | |
EP3557343A1 (de) | Elektrisches antriebssystem und verfahren zum betreiben eines solchen systems | |
EP3163389B1 (de) | Verfahren zur konfiguration von feldgeräten und feldgerät mit einer konfiguration für zwei bussysteme | |
EP1454201A1 (de) | Engineeringsystem und automatisierungssystem | |
DE10140763A1 (de) | Verfahren und Anordnung zur Konfiguration von Baugruppen in einer Datenverarbeitungsanlage | |
DE102012023182B3 (de) | Verfahren zum Betreiben mindestens einer Maschine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
REJ | Rejection |
Effective date: 20221015 |