-
Die Erfindung betrifft ein Verfahren zum Betrieb eines als eingebettetes System ausgebildeten Automatisierungsgerätes nach dem Oberbegriff des Patentanspruchs 1. Weiter betrifft die Erfindung ein Verfahren zum Betrieb eines Automatisierungssystems nach dem Oberbegriff des Patentanspruchs 8. Darüber hinaus betrifft die Erfindung ein Automatisierungsgerät nach dem Oberbegriff des Patentanspruchs 13 und ein Automatisierungssystem mit dem Automatisierungsgerät gemäß dem Patentanspruch 15. Schließlich betrifft die Erfindung Computerprogramme nach den Patentansprüchen 16 und 17 sowie Datenträger nach den Patentansprüchen 18 und 19.
-
Auf einem derartigen Automatisierungsgerät läuft ein Steuerungsprozess, der wenigstens einen technischen Prozess überwacht oder steuert oder regelt. Insbesondere ist der technische Prozess bei einer landwirtschaftlichen Stallanlage lokalisiert. Denn Maschinen und Geräte in landwirtschaftlichen Stallanlagen sind zunehmend miteinander vernetzt und können von einem Automatisierungsgerät aus überwacht, gesteuert oder geregelt werden. Bei dem technischen Prozess kann es sich jedoch auch um einen technischen Prozess in der Industrie handeln. Ein derartiges Automatisierungsgerät kann somit prinzipiell in beliebigen industriellen Anlagen eingesetzt werden.
-
In der Ausführung als eingebettetes System ist das Automatisierungsgerät in einen technischen Kontext eingebunden. Ein derartiges eingebettetes System ist auch unter dem Namen „embeded device“ bekannt.
-
Für Anwendungen in der Industrie 4.0 ist es bekannt, eine Verbindung zwischen einem derartigen Automatisierungsgerät und einer Cloudplattform herzustellen. Hierzu wird in der Regel ein externes Gateway an das Automatisierungsgerät angeschlossen und für die Verbindung zur Cloudplattform konfiguriert. Allerdings ist eine derartige Konfiguration aufwendig. Bei einem Ausfall einzelner Komponenten kann der technische Prozess zum Automatisierungsgerät oftmals nicht mehr zufriedenstellend überwacht, gesteuert oder geregelt werden.
-
Der Erfindung liegt die Aufgabe zugrunde, ein Automatisierungssystem mit einem Automatisierungsgerät mit erhöhter Betriebssicherheit bereitzustellen und zu betreiben.
-
Die Erfindung löst diese Aufgabe mit einem Verfahren zum Betrieb eines als eingebettetes System ausgebildeten Automatisierungsgerätes nach dem Patentanspruch 1, mit einem Verfahren zum Betrieb eines Automatisierungssystems nach dem Patentanspruch 8, mit einem Automatisierungsgerät nach dem Patentanspruch 13, mit einem Automatisierungssystem nach dem Patentanspruch 15, mit Computerprogrammen nach den Patentansprüchen 16 und 17 sowie mit Datenträgern nach den Patentansprüchen 18 und 19. Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.
-
Bei einem Verfahren zum Betrieb eines als eingebettetes System ausgebildeten Automatisierungsgerätes, wobei auf dem Automatisierungsgerät ein Steuerungsprozess läuft, der wenigstens einen technischen Prozess, insbesondere bei einer landwirtschaftlichen Stallanlage, überwacht oder steuert oder regelt, ist erfindungsgemäß vorgesehen, dass auf dem Automatisierungsgerät ein unabhängig vom Steuerungsprozess betriebener Managementprozess läuft, der den Steuerungsprozess überwacht und der Daten zwischen dem Automatisierungsgerät und einer Cloudplattform austauscht.
-
Bei einem Automatisierungsgerät in einer Ausgestaltung als eingebettetes System, mit einem Speicher und mit einem Steuerungsprogramm, mittels welchem im Betrieb des Automatisierungsgerätes ein Steuerungsprozess abläuft, der einen technischen Prozess überwacht oder steuert oder regelt, ist erfindungsgemäß vorgesehen, dass mittels des Steuerungsprogramms unabhängig vom Steuerungsprozess im Betrieb des Automatisierungsgerätes ein Managementprozess läuft, der den Steuerungsprozess überwacht und der Daten zwischen dem Automatisierungsgerät und einer Cloudplattform austauscht.
-
Dadurch, dass der Steuerungsprozess und der Managementprozess unabhängig voneinander ausgestaltet sind, können diese Prozesse auch bei Ausfall des jeweils anderen Prozesses betrieben werden. Dies erhöht die Ausfallsicherheit. Jeder Prozess kann zudem gegen einen alternativen Prozess getauscht werden, ohne dass der jeweils andere Prozess hierfür geändert werden muss. Beide Prozesse laufen auf dem Automatisierungsgerät, so dass ein externes Gateway entbehrlich ist. Alle Prozesse auf dem Automatisierungsgerät bilden insgesamt ein geschlossenes System, welches gegebenenfalls nach einem Defekt von Datensicherungen, die vorzugsweise automatisch erstellt werden, automatisiert wieder hergestellt werden kann. Durch die Integration der Prozesse, insbesondere des Managementprozesses und des Steuerungsprozesses, in ein und demselben Automatisierungsgerät entfallen externe Schnittstellen und eine externe Verkabelung mehrerer Komponenten. Dadurch sind auch mögliche Fehlerquellen minimiert.
-
Der Steuerungsprozess liest Eingangszustände aus, die von dem wenigstens einen technischen Prozess über Schnittstellen bereitgestellt werden. Mögliche Schnittstellen sind unter den Kürzeln GPIO, PWM, ADC, I2C, CAN, RS232 oder RS485 bekannt. In Abhängigkeit von den Eingangszuständen erzeugt das Steuerungsprogramm entsprechende Ausgaben. Auch die Ausgaben können über die genannten Schnittstellen ausgegeben werden. Der Managementprozess koordiniert vorzugsweise alle auf dem Automatisierungsgerät laufenden Prozesse. Ferner enthält der Managementprozess eine Logik für die Anbindung des Automatisierungsgerätes an die Cloudplattform. Es werden also Messwerte, Störmeldungen oder Geräteeigenschaften an die Cloudplattform übertragen. Umgekehrt werden über den Managementprozess Sollwerte oder Veränderungen von Sollwerten, die von der Cloudplattform bereitgestellt werden, entgegengenommen. Es ist vorgesehen, dass der Steuerungsprozess über Schnittstellen des Automatisierungsgerätes Prozesswerte, die vom technischen Prozess bereitgestellt werden, ausliest, dass die Daten, welche der Managementprozess vom Automatisierungsgerät an die Cloudplattform sendet, von den vom technischen Prozess bereitgestellten Prozesswerten abhängig sind und dass der Steuerungsprozess Ausgaben, die von den von der Cloudplattform an das Automatisierungsgerät übermittelten Daten abhängig sind, erzeugt.
-
Weiter ist vorzugsweise vorgesehen, dass, insbesondere als Folge eines Ausfalls im Automatisierungsgerät, nach einem Verlust von Daten am Automatisierungsgerät, die auch auf der Cloudplattform gespeichert sind, diese auch auf der Cloudplattform gespeicherten Daten automatisch von der Cloudplattform an das Automatisierungsgerät übertragen und auf dem Automatisierungsgerät wieder hergestellt werden. Auch nach einem Ausfall einzelner Komponenten kann somit die gewünschte Funktionalität schnell wieder hergestellt werden.
-
Besonders bevorzugt ist vorgesehen, dass auf dem Automatisierungsgerät ein unabhängig vom Steuerungsprozess und unabhängig vom Managementprozess betriebener Visualisierungsprozess läuft, der vom technischen Prozess bereitgestellte Prozesswerte und/oder Prozessdaten für die Durchführung des Verfahrens, insbesondere mittels eines Displays, zur Anzeige bringt, und dass der Managementprozess auch den Visualisierungsprozess überwacht. Das als eingebettetes System ausgebildete Automatisierungsgerät enthält somit die Funktionalitäten für den Steuerungsprozess des wenigstens einen technischen Prozesses, also eines herkömmlichen Automatisierungsgerätes, sowie die Funktionalität eines Bedienpanels mittels des Visualisierungsprozesses und die Funktionalität eines Gateways zur Anbindung an die Cloudplattform mittels des Managementprozesses. Prozessdaten für die Durchführung des Verfahrens sind beispielsweise Verbindungseinstellungen zum Brokerservice, Sprachanpassungen und eine Versionsnummer des Managementprozesses. Der Visualisierungsprozess nimmt hierbei vorzugsweise auch Eingaben zum Setzen von Sollwerten für den Steuerungsprozess entgegen. Insbesondere können mittels dieser Eingaben vorzugsweise einzelne oder alle Prozessdaten bearbeitet werden.
-
Für die Kommunikation zwischen dem Automatisierungsgerät und der Cloudplattform verbindet sich der Managementprozess vorzugsweise mit einem Brokerservice an der Cloudplattform. Der Brokerservice ist vorzugsweise ein als MQTT-Broker ausgebildeter Server, wohingegen der Managementprozess vorzugsweise als MQTT-Client implementiert ist. Für eine sichere Verbindung mittels SSL/TLS ist der Managementprozess vorzugsweise um eine zusätzliche Zertifikatsprüfung erweitert. Bei vorhandener Internetverbindung und vorhandener Benutzer-Authentifizierung verbindet sich der Managementprozess automatisch mit dem Brokerservice an der Cloudplattform.
-
Vorzugsweise ist weiter vorgesehen, dass der Managementprozess den eindeutigen Geräteidentifikationsnamen des Automatisierungsgerätes, den die Cloudplattform insbesondere in Abhängigkeit von der Gerätekennung, beispielsweise einer Seriennummer, von einer Händlerkennung und von einer Kundenkennung bildet, vom Brokerservice anfordert. Im Detail fordert hierbei der Managementprozess einen Betreff, insbesondere „Topic“, vom Brokerservice an. Der Brokerservice liefert daraufhin diesen Betreff aus, wobei der Inhalt dieses Betreffs der gebildete Geräteidentifikationsname ist. Der Geräteidentifikationsname kann auch „Initial-Topic-Name“ genannt werden. Weiter ist vorzugsweise vorgesehen, dass der Managementprozess in Erwiderung auf das Empfangen des Geräteidentifikationsnamens Daten mit Geräteeigenschaften unter diesem Geräteidentifikationsnamen am Brokerservice veröffentlicht.
-
Wenn der Geräteidentifikationsname hingegen noch nicht vergeben ist, wenn also das Automatisierungsgerät noch nicht einem Nutzer an der Cloudplattform zugeordnet ist, wird auch kein Geräteidentifikationsname empfangen. Vorzugsweise ist daher vorgesehen, dass der Managementprozess in Erwiderung darauf, dass der angeforderte Geräteidentifikationsname, insbesondere innerhalb einer vorgegebenen Wartezeit nach dem Anfordern, nicht empfangen wird, zur Erzeugung eines, insbesondere von der Gerätekennung, von einer Händlerkennung und von einer Kundenkennung, abhängigen Geräteidentifikationsnamens die Gerätekennung und den Programmtyp des Automatisierungsgerätes durch die Cloudplattform veröffentlicht.
-
Nach der Anmeldung an der Cloudplattform soll das Automatisierungsgerät regelmäßig mit allen notwendigen Informationen versorgt werden, also beispielsweise neue Sollwerte erhalten, wenn diese an der Cloudplattform geändert wurden. Hierfür ist vorgesehen, dass der Managementprozess automatisch vorbestimmte Betreffs, insbesondere „Topics“, an der Cloudplattform, insbesondere am Brokerservice der Cloudplattform, abonniert und dass das Automatisierungsgerät nachfolgend automatisch alle zu diesen Betreffs an der Cloudplattform veröffentlichten Daten von der Cloudplattform entgegennimmt. Diese Daten sind insbesondere Daten, die von mit dem Brokerservice verbundenen Serverapplikationen oder von anderen Prozessen veröffentlicht sind.
-
Bei einer bevorzugten Ausführungsform des Verfahrens protokolliert der Managementprozess automatisch Daten. Die protokollierten Daten werden vorzugsweise der Cloudplattform mitgeteilt oder sind von der Cloudplattform einsehbar. Zu den Daten gehören vorzugsweise auch eventuelle Fehlermeldungen, die entweder zu Fehlern des überwachten technischen Prozesses oder zu Fehlern bei der Durchführung des Verfahrens am Automatisierungssystem gehören.
-
Bei einem Verfahren zum Betrieb eines Automatisierungssystems, welches eine Cloudplattform aufweist und welches wenigstens ein als eingebettetes System ausgebildetes Automatisierungsgerät aufweist, wobei das Automatisierungsgerät mit der Cloudplattform Daten austauscht und wobei auf dem Automatisierungsgerät ein Steuerungsprozess läuft, der wenigstens einen technischen Prozess überwacht oder steuert oder regelt, ist erfindungsgemäß vorgesehen, dass das Automatisierungsgerät mit dem erfindungsgemäßen Verfahren zum Betrieb eines Automatisierungsgerätes betrieben wird. Das Verfahren zum Betrieb eines Automatisierungssystems beinhaltet also das Verfahren zum Betrieb eines als eingebettetes System ausgebildeten Automatisierungsgerätes, wobei auch die Vorgänge an der Cloudplattform umfasst sind und wobei vorzugsweise auch mehr als ein Automatisierungsgerät mit der Cloudplattform Daten austauschen kann. Die Daten werden dabei bevorzugt über das Internet zwischen der Cloudplattform und dem jeweiligen Automatisierungsgerät ausgetauscht. Die den technischen Prozess durchführenden Geräte sind entweder direkt mit dem Automatisierungsgerät verbunden oder vorzugsweise auch über eine eigene Funkverbindung und weiter über das Internet mit der Cloudplattform verbunden. Verbindungen können hier so ausgestaltet sein, wie es für das Internet der Dinge bekannt ist.
-
Auf der Cloudplattform werden vorzugsweise ein Brokerservice, insbesondere ausgebildet als MQTT Broker, und ein Managementservice betrieben. Dabei nimmt der Brokerservice Daten vom Automatisierungsgerät entgegen und sendet Daten an das Automatisierungsgerät. Der Managementservice verarbeitet die vom Automatisierungsgerät entgegengenommenen Daten. Weiter ist vorzugsweise vorgesehen, dass auf der Cloudplattform auch ein Datenbankserver, ein Webserver und ein Mailserver betrieben werden. Der Managementservice speichert die vom Automatisierungsgerät entgegengenommenen Daten auf dem Datenbankserver. Der Webserver stellt webbasierte Bedienoberflächen für Administratoren, Entwickler, Händler und Kunden bereit. Der Mailserver verschickt E-Mails, beispielsweise an Händler oder Kunden. Mit Hilfe der E-Mails werden noch nicht registrierte Benutzer, vorzugsweise neue Benutzer, insbesondere Händler oder Kunden, authentifiziert. An bereits registrierte Händler oder Kunden, für welche ein jeweiliges Automatisierungsgerät an der Cloudplattform registriert ist, werden beispielsweise in Erwiderung auf festgestellte Störungen E-Mails mit entsprechenden Störungsmeldungen oder Informationen verschickt.
-
Der Managementservice gewährleistet die Persistenz von Daten am Brokerservice, beispielsweise nach einem Neustart des Brokers. Nach einem Neustart des Brokerservices stellt der Managementservice alle veröffentlichten Betreffs, insbesondere „Topics“, wieder her, so auch die Geräteidentifikationsnamen, insbesondere „Initial-Topic-Namen“. Daten werden auch zwischen der Cloudplattform und dem Automatisierungsgerät abgeglichen. Der Datenbankserver enthält Datenbanken für die allgemeine Verwendung der Cloudplattform sowie eine Datenbank für jeden Kunden. Die Cloudplattform, insbesondere der Managementservice, nimmt vorzugsweise automatisiert alle vom Automatisierungsgerät zum Speichern vorgesehenen und hierfür an die Cloudplattform gesendeten Daten entgegen und speichert diese Daten. Die Cloudplattform gibt vorzugsweise die einem Kunden zugewiesenen Daten diesem Kunden zur Einsicht und Auswertung frei.
-
Gemäß einer vorteilhaften Ausführungsform des Verfahrens legt der Managementprozess in Erwiderung auf das Empfangen der Gerätekennung des Automatisierungsgerätes ein neues Gerät im Gerätepool des dem Automatisierungsgerät zugeordneten Händlers an und erzeugt in Erwiderung auf eine durch den Händler vorgenommene Zuweisung des Gerätes zu einem Kunden den Geräteidentifikationsnamen in Abhängigkeit von der Gerätekennung und einer Kundenkennung des Kunden. Den Geräteidentifikationsnamen veröffentlicht der Managementprozess dann am Brokerservice. Der Brokerservice sendet den Geräteidentifikationsnamen an das Automatisierungsgerät.
-
Im Detail sieht das Verfahren vor, dass zunächst ein Administrator in einem Administrationsportal, welches von der Cloudplattform bereitgestellt wird, einen neuen Händler anlegt. Über den Mailserver wird eine E-Mail verschickt, um eine Authentifizierung durchführen zu können. Durch Öffnen des Links wird der Händler aufgefordert, ein Kennwort zu vergeben und sich damit am Händlerportal anzumelden. Der Händler kann nun neue Kunden anlegen. Die Authentifizierung der Kunden erfolgt wiederum über E-Mails, welche der Mailserver versendet. Auch der Kunde erhält somit eine E-Mail mit einem Link, der angeklickt werden kann. Nach Eingabe eines Kennworts kann der Kunde sich am Kundenportal anmelden. Auf dem Datenbankserver wird daraufhin eine neue Kundendatenbank angelegt. Die Kundendatenbank ist für die Speicherung der Kundendaten, also auch der Daten, die vom Automatisierungsgerät des Kunden an die Cloudplattform gesendet werden, vorgesehen.
-
Das Automatisierungsgerät benötigt die vom Händler erstellten Zugangsdaten, welche der Händler direkt am Automatisierungsgerät eingeben muss. Da noch kein Geräteidentifikationsname vergeben ist, erfolgt die oben beschriebene Vergabe eines Geräteidentifikationsnamens, nachdem das neu angemeldete Automatisierungsgerät sich mit dem Brokerservice der Cloudplattform verbunden hat. Der Managementservice der Cloudplattform legt daraufhin im Gerätepool des zugehörigen Händlers ein neues Gerät an. Über das Händlerportal kann der Händler das Gerät einem Kunden zuweisen. Dem Automatisierungsgerät des Kunden wird daraufhin der aus der Händlerkennung und der Kundenkennung bestehende oder generierte Geräteidentifikationsname des Automatisierungsgerätes mitgeteilt. Sowohl der Managementprozess am Automatisierungsgerät als auch der Managementservice an der Cloudplattform registrieren diese Vergabe. Der Managementprozess des Automatisierungsgerätes abonniert daraufhin unter dem Geräteidentifikationsnamen und veröffentlicht seine eigenen Eigenschaften durch Übertragung an den Brokerservice der Cloudplattform. Der Kunde kann die automatisch veröffentlichten Daten über das Kundenportal einsehen und auswerten.
-
Vorzugsweise ist zusätzlich ein Entwicklerportal vorgesehen, an welches sich Entwickler anmelden und per Software den Funktionsumfang einzelner Geräte oder ganzer Gerätegruppen, also Automatisierungsgeräten des gleichen Typs mit derselben Software, verändern oder erweitern können. Das Anlegen eines Entwicklerkontos kann wiederum über das Administrationsportal entsprechend dem Anlegen eines Händlerkontos erfolgen.
-
Das erfindungsgemäße Automatisierungsgerät ist als eingebettetes System ausgestaltet und weist einen Speicher und ein Steuerungsprogramm auf, mittels welchem im Betrieb des Automatisierungsgerätes ein Steuerungsprozess abläuft, der einen technischen Prozess überwacht oder steuert oder regelt. Erfindungsgemäß ist das Automatisierungsgerät weiter derart ausgebildet, dass mittels des Steuerungsprogramms unabhängig vom Steuerungsprozess im Betrieb des Automatisierungsgerätes ein Managementprozess abläuft, der den Steuerungsprozess überwacht und der Daten zwischen dem Automatisierungsgerät und einer Cloudplattform austauscht.
-
Das Automatisierungsgerät weist vorzugsweise Mittel zum Ausführen des erfindungsgemäßen Verfahrens auf. Insbesondere sind hierfür Rechenmittel und Speichermittel vorgesehen, die gemeinsam in einer Baugruppe, insbesondere auf einer Hauptplatine, angeordnet sind. Alle Baugruppen sind in einem Gehäuse angeordnet. Für den Visualisierungsprozess ist am Gehäuse vorzugsweise ein Display vorgesehen, welches zur Entgegennahme von Eingaben vorzugsweise als Touch-Display ausgebildet ist. Die Baugruppen weisen vorzugsweise ein einheitliches Maß auf und sind stapelbar ausgebildet. Wenn mehr Schnittstellen benötigt werden als von einer Baugruppe bereitgestellt werden, können mehrere Baugruppen vorgesehen werden.
-
Das erfindungsgemäße Automatisierungssystem weist die Cloudplattform und wenigstens ein erfindungsgemäßes Automatisierungsgerät auf. Weiter sind Mittel zum Ausführen des Verfahrens zum Betrieb des Automatisierungssystems vorgesehen. Diese Mittel kennzeichnen insbesondere die Ausbildung der Cloudplattform. Vorzugsweise weist die Cloudplattform Komponenten auf, die einen Managementservice bereitstellen, also insbesondere auch Rechenmittel und Speichermittel. Darüber hinaus umfasst die Cloudplattform den Datenbankserver, den Webserver und den Mailserver.
-
Zur Erfindung gehört auch ein Computerprogramm zur Ausführung aller auf dem Automatisierungsgerät ablaufenden Verfahrensschritte des erfindungsgemäßen Verfahrens zum Betrieb eines als eingebettetes System ausgebildeten Automatisierungsgerätes, wenn das Computerprogramm auf dem Automatisierungsgerät läuft. Weiter gehört zur Erfindung ein Computerprogramm zur Ausführung aller auf der Cloudplattform ablaufenden Verfahrensschritte eines erfindungsgemäßen Verfahrens zum Betrieb eines Automatisierungssystems, wenn das Computerprogramm auf der Cloudplattform läuft. Schließlich gehören zur Erfindung Datenträger mit den erfindungsgemäßen Computerprogrammen.
-
Weitere Ausführungsformen der Erfindung ergeben sich aus den Ansprüchen, aus den Zeichnungen und aus der nachfolgenden Beschreibung eines in den Zeichnungen dargestellten besonders bevorzugten Ausführungsbeispiels der Erfindung. In den Zeichnungen zeigen:
- 1: einen schematischen Aufbau eines Automatisierungssystems mit Automatisierungsgerät und Anbindung an eine Cloudplattform;
- 2: einen schematischen Aufbau der Cloudplattform von 1;
- 3: Verfahrensschritte am Automatisierungsgerät zur automatischen Erkennung an der Cloudplattform;
- 4: Verfahrensschritte im Managementservice an der Cloudplattform;
- 5: eine Montageplatte des Automatisierungsgerätes mit Hauptplatine; und
- 6: eine Anordnung von zwei miteinander vernetzten Hauptplatinen für das Automatisierungsgerät.
-
In 1 ist ein Automatisierungssystem schematisch dargestellt und mit dem Bezugszeichen 1 bezeichnet. Das Automatisierungssystem 1 weist wenigstens ein Automatisierungsgerät 2 und eine Cloudplattform 3 auf. Das Automatisierungsgerät 2 sowie gegebenenfalls weitere zum Automatisierungsgerät 2 baugleiche oder auch baulich unterschiedlich gestaltete, nicht dargestellte, Automatisierungsgeräte sind über eine Internetverbindung 4 mit der Cloudplattform 3 verbunden. Auf dem Automatisierungsgerät 2 läuft ein Managementprozess 5, der direkt über die Internetverbindung 4 mit der Cloudplattform 3 kommuniziert. Der Managementprozess 5 stellt dabei die Funktionalität eines Gateways bereit. Ferner laufen auf dem Automatisierungsgerät 2 ein Steuerungsprozess 6 und ein Visualisierungsprozess 7. Die Prozesse 5, 6 und 7 laufen dabei alle unabhängig voneinander und können daher bei Bedarf jeweils gegen einen alternativen Prozess ersetzt werden. Auch können Daten beispielsweise über den Visualisierungsprozess ausgegeben oder entgegengenommen werden, auch wenn die Internetverbindung 4 nicht besteht. Ebenso ist es möglich, über die Cloudplattform 3 Eingaben und Ausgaben von Daten vorzunehmen, auch wenn der Visualisierungsprozess 7 ausgefallen sein sollte. Der Steuerungsprozess 6 überwacht oder steuert oder regelt wenigstens einen technischen Prozess, beispielsweise von Geräten in einer landwirtschaftlichen Stallanlage. Hierfür ist der Steuerungsprozess 6 mit mehreren Schnittstellen 8 verbunden. Der Steuerungsprozess 6 liest Werte aus, die an den Schnittstellen 8 anliegen. Darüber hinaus können über die Schnittstellen 8 auch Werte vom Steuerungsprozess 6 ausgegeben werden. Auf dem Automatisierungsgerät 2 läuft ein Betriebssystem 9, welches eine grundlegende Umgebung bereitstellt, damit Software zur Bereitstellung des Managementprozesses 5, des Steuerungsprozesses 6 und des Visualisierungsprozesses 7 auf dem Automatisierungsgerät 2 laufen kann. Diese Software kann beispielsweise über die Schnittstellen 8 von einem Datenträger oder auch über die Internetverbindung 4 von der Cloudplattform 3 in einen Kernspeicher des Automatisierungsgerätes 2 geladen und dann ausgeführt werden.
-
2 zeigt schematisch die Cloudplattform 3. Gleiche Bezugszeichen bezeichnen in allen Figuren gleiche Teile. Auf der Cloudplattform 3 sind ein Brokerservice 10 und ein Managementservice 11 implementiert. Insbesondere weist die Cloudplattform 3 eine Rechnerinfrastruktur auf, welche mittels geeigneter Software den Brokerservice 10 und den Managementservice 11 bereitstellt. Der Brokerservice 10 ist als MQTT-Broker ausgebildet. Über den Brokerservice 10 erfolgt der Datenaustausch zwischen der Cloudplattform 3 und dem wenigstens einen Automatisierungsgerät 2. Der Managementservice 11 managt Datenströme auf der Cloudplattform 3 und gewährleistet die Persistenz der Daten am Brokerservice 10 sowie die Speicherung von Daten in einer Datenbank. Die Datenbank wird von einem Datenbankserver 12 der Cloudplattform 3 bereitgestellt. Der Datenbankserver 12 stellt sowohl Datenbanken für die allgemeine Verwendung als auch Datenbanken für jeden Kunden bereit. Weitere Komponenten der Cloudplattform 3 sind ein Webserver 13 und ein Mailserver 14. Der Webserver 13 stellt webbasierte Bedienoberflächen für Administratoren, Entwickler, Händler und Kunden bereit. Der Mailserver 14 dient dem Versand von E-Mails, beispielsweise zum Zweck der Authentifizierung eines Händlers oder Kunden oder auch zum Versand von Störungsmeldungen, betreffend Störungen des überwachten technischen Prozesses oder auch Störungen am Automatisierungsgerät 2.
-
3 veranschaulicht Verfahrensschritte am Automatisierungsgerät 2, welche insbesondere zur Initialisierung durchgeführt werden, nachdem das Automatisierungsgerät 2 mit dem Brokerservice 10 der Cloudplattform 3 verbunden wurde. Die dargestellten Verfahrensschritte starten mit einem Verbinden mit dem Brokerservice 10 in einem Schritt 15. Wenn das Automatisierungsgerät 2 dann gemäß einer Abfrage 16 mit dem Brokerservice 10 verbunden ist, folgt ein Schritt 17. Wenn hingegen die Verbindung zwischen dem Automatisierungsgerät 2 und dem Brokerservice 10 nicht hergestellt ist, erfolgt das Verbinden mit dem Brokerservice 10 im Schritt 15. Der Schritt 15 folgt auch jederzeit, wenn gemäß einem Ereignis 18 die Verbindung zwischen dem Automatisierungsgerät 2 und dem Brokerservice 10 unterbrochen wurde.
-
Bei hergestellter Verbindung mit dem Brokerservice 10 fordert das Automatisierungsgerät 2 im Schritt 17 den Geräteidentifikationsnamen für das Automatisierungsgerät 2 an. Insbesondere dann, wenn das Automatisierungsgerät 2 noch nicht unter seinem Geräteidentifikationsnamen an der Cloudplattform 3 registriert ist, wird nach dem Schritt 17 kein Geräteidentifikationsname empfangen. Auf eine Abfrage 19, ob der Geräteidentifikationsname empfangen wurde, folgt daher in einem Schritt 20 das Veröffentlichen der Gerätekennung, die auch als Seriennummer bezeichnet werden kann, und des Programmtyps des Automatisierungsgerätes 2. Hieraufhin folgt eine zur Abfrage 19 entsprechende Abfrage 21, ob der Geräteidentifikationsname empfangen wurde. Nach korrektem Empfang des Geräteidentifikationsnamens folgt auf eine der Abfragen 19 oder 21 ein Schritt 22, in welchem das Automatisierungsgerät 2 unter diesem Geräteidentifikationsnamen Daten, insbesondere Geräteeigenschaften, des Automatisierungsgerätes 2 wie Störmeldekonfigurationen, Kurvenkonfigurationen, Übersetzungskonfigurationen, unter diesem Geräteidentifikationsnamen, insbesondere in Betreffs, welche diesem Geräteidentifikationsnamen untergeordnet sind, veröffentlicht. Die somit veröffentlichten Daten werden an die Cloudplattform 3 übermittelt. Schließlich werden in einem Schritt 23 bestimmte Betreffs, insbesondere „Topics“, abonniert, um darüber Sollwertänderungen mitgeteilt zu bekommen oder Zustandsveröffentlichungen zu erkennen. In einem Schritt 24 ist das Ende der Initialisierung erreicht.
-
4 veranschaulicht Vorgänge an der Cloudplattform 3 nach Herstellen der Verbindung mit dem Brokerservice 10. In einem Schritt 25 erfolgt das Verbinden mit dem Brokerservice 10. Dieser Schritt 25 folgt insbesondere, wenn in einer Abfrage 26, ob der Managementservice 11 mit dem Brokerservice 10 verbunden ist, festgestellt wird, dass dies nicht der Fall ist. Auch nach einem Unterbrechen der Verbindung zwischen dem Managementservice 11 und dem Brokerservice 10 gemäß einem Ereignis 27 folgt der Schritt 25.
-
Wenn gemäß der Abfrage 26 die Verbindung mit dem Brokerservice 10 besteht, folgt in einem Schritt 28 der Befehl zum Veröffentlichen unter allen Geräteidentifikationsnamen, insbesondere „Initial-Topic-Namen“, die in einem Gerätepool 29 gespeichert sind. Es folgen im Schritt 30 das Abonnieren von Veröffentlichungen in Geräteidentifikationsnamen zur Erkennung von Änderungen der Geräteidentifikationsnamen, in einem Schritt 31 das Abonnieren von Eigenschaften, die zu den Geräteidentifikationsnamen veröffentlicht sind und in einem Schritt 32 das Abonnieren der Gerätekennung und des Programmtyps von neuen Automatisierungsgeräten 2. Aufgrund des Schrittes 30 kann nachfolgend ein Ereignis 33 erkannt werden, wonach neue oder geänderte Eigenschaften zu einem Geräteidentifikationsnamen veröffentlicht wurden. Der Inhalt dieser geänderten Eigenschaften wird aufgrund des Schritts 31 bezogen. Gemäß einem Ereignis 34 werden entsprechend geänderte Geräteeigenschaften oder neue Messwerte oder neue Störungsmeldungen in eine Kundendatenbank 35 geschrieben. Das Abonnement gemäß dem Schritt 32 führt dazu, dass gemäß einem Ereignis 36 ein neu erkanntes Gerät in dem Gerätepool 29 angelegt wird. Mit einem Schritt 37 ist das Ende der Initialisierung erreicht.
-
5 zeigt eine Montageplatte 38, auf welcher wesentliche Teile des Automatisierungsgerätes 2 angeordnet sind. Das Automatisierungsgerät 2 weist ein nicht dargestelltes Gehäuse auf, in welchem die Montageplatte 38 angeordnet ist.
-
Auf der Montageplatte 38 ist eine Hauptplatine 39 mit den Schnittstellen 8 angeordnet. Die Schnittstellen 8 sind über nicht dargestellte Kabel mit korrespondierenden Schnittstellen 40 von mehreren Ein- und Ausgangsmodulen 41 verbunden. Die Ein- und Ausgangsmodule 41 stellen beispielsweise digitale Eingänge, Relaisausgänge, analoge Eingänge, beispielsweise zu einer Futterwaage, und analoge Ausgänge bereit. Zwei versetzt übereinander gestapelte Ein- und Ausgangsmodule 41 sind beispielhaft mit den Bezugszeichen 41a und 41b bezeichnet.
-
Auf der Hauptplatine 39 sind weiter ein elektrischer Anschluss 42, ein Transformator 43, Feinsicherungen 44 sowie weitere Schnittstellen 45 angeordnet, über welche ein Touchdisplay, ein Leser für SD- oder Mikro-SD-Karten, ein optischer Anschluss, ein USB-Port, ein Netzwerkanschluss sowie eine Kupplung für verschiedene Bussysteme angeschlossen werden können.
-
Alternativ zu der einen Hauptplatine 39 können auf der Montageplatte 38 auch mehrere Hauptplatinen 39 oder zusätzlich zur Hauptplatine 39 anders ausgestaltete Platinen angeordnet sein, beispielsweise um eine zusätzliche Anzahl von Schnittstellen bereitzustellen.
-
6 zeigt die Anordnung der Ein- und Ausgangsmodule 41a und 41b. Das Ein- und Ausgangsmodul 41a ist identisch zum Ein- und Ausgangsmodul 41b ausgebildet und versetzt und beabstandet vom Ein- und Ausgangsmodul 41b angeordnet. Vorzugsweise weist jedoch das Ein- und Ausgangsmodul 41a oder 41 b eine gegenüber dem jeweils anderen Ein- und Ausgangsmodul 41a oder 41b geänderte Software auf und dient als Slave-Modul lediglich zur Bereitstellung zusätzlicher Schnittstellen.
-
Alle in der vorstehenden Beschreibung und in den Ansprüchen genannten Merkmale sind in einer beliebigen Auswahl mit den Merkmalen der unabhängigen Ansprüche kombinierbar. Die Offenbarung der Erfindung ist somit nicht auf die beschriebenen und/oder beanspruchten Merkmalskombinationen beschränkt, vielmehr sind alle im Rahmen der Erfindung sinnvollen Merkmalskombinationen als offenbart zu betrachten.