DE102016114600B3 - IO-Link capable sensor and method of communication - Google Patents

IO-Link capable sensor and method of communication Download PDF

Info

Publication number
DE102016114600B3
DE102016114600B3 DE102016114600.5A DE102016114600A DE102016114600B3 DE 102016114600 B3 DE102016114600 B3 DE 102016114600B3 DE 102016114600 A DE102016114600 A DE 102016114600A DE 102016114600 B3 DE102016114600 B3 DE 102016114600B3
Authority
DE
Germany
Prior art keywords
sensor
link
device description
evaluation unit
control
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
DE102016114600.5A
Other languages
German (de)
Inventor
Stefan Schweiger
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sick AG
Original Assignee
Sick AG
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 Sick AG filed Critical Sick AG
Priority to DE102016114600.5A priority Critical patent/DE102016114600B3/en
Application granted granted Critical
Publication of DE102016114600B3 publication Critical patent/DE102016114600B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q9/00Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2209/00Arrangements in telecontrol or telemetry systems
    • H04Q2209/80Arrangements in the sub-station, i.e. sensing device

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

Es wird ein IO-Link-fähiger Sensor (10) mit einer Sensoreinheit (12) zur Erfassung mindestens einer Messgröße sowie mit einer Steuer- und Auswertungseinheit (14) zur Steuerung eines Messablauf der Sensoreinheit (12) und zur Weiterverarbeitung der Messgröße angegeben, wobei der Sensor (10) weiterhin eine IO-Link-Schnittstelle (14, 16) aufweist, über welche die Steuer- und Auswertungseinheit (14) mit einem externen Kommunikationspartner (18) kommuniziert, wobei die IO-Link-Schnittstelle (14, 16) anhand einer gemäß IO-Link als IODD standardisierten Gerätebeschreibung definiert ist. Dabei ist in der Steuer- und Auswertungseinheit (14) innerhalb des IO-Link-Standards eine Methode aufrufbar, die in der Gerätebeschreibung nicht festgelegt ist, indem in der Gerätebeschreibung ein generischer Methodenaufruf spezifiziert ist, der die Methode erst indirekt anhand eines übergebenen Parameters selektiert, und/oder in der Gerätbeschreibung ist ein Datenpuffer spezifiziert, auf den die Steuer- und Auswertungseinheit (14) zugreift, wobei in der Gerätebeschreibung nicht festgelegt ist, welche Bedeutung die Daten haben, die in dem Datenpuffer abgelegt oder daraus abgerufen werden.It is an IO-link-capable sensor (10) with a sensor unit (12) for detecting at least one measured variable and with a control and evaluation unit (14) for controlling a measurement process of the sensor unit (12) and for further processing of the measured variable, the sensor (10) furthermore has an IO-Link interface (14, 16) via which the control and evaluation unit (14) communicates with an external communication partner (18), wherein the IO-Link interface (14, 16) is defined by a device description standardized according to IO-Link as IODD. In the control and evaluation unit (14) within the IO-Link standard, a method can be called that is not specified in the device description by specifying a generic method call in the device description that only indirectly selects the method based on a transferred parameter , and / or in the device description a data buffer is specified, which is accessed by the control and evaluation unit (14), wherein the device description does not specify the meaning of the data stored in or retrieved from the data buffer.

Description

Die Erfindung betrifft einen IO-Link-fähigen Sensor mit einer Sensoreinheit, einer Steuer- und Auswertungseinheit und einer IO-Link-Schnittstelle sowie ein Verfahren zum Kommunizieren mit einem IO-Link-fähigen Sensor nach dem Oberbegriff von Anspruch 1 beziehungsweise 10.The invention relates to an IO-Link-capable sensor having a sensor unit, a control and evaluation unit and an IO-Link interface, and a method for communicating with an IO-link-capable sensor according to the preamble of claim 1 or 10.

IO-Link ist ein Standard, der die elektrische Schnittstelle (Physical Layer) und das Kommunikationsprotokoll für eine Kommunikation mit sogenannten IO-Link Devices vorschreibt, also hier dem Sensor. Die Standardisierung vereinfacht die Integration in das Automatisierungssystem. Das betrifft die eigentliche Kommunikation, welche die zahllosen proprietären Lösungen der verschiedenen Hersteller vereinheitlicht, und auch die physische Anbindung mittels 3- oder 5-Leiter-Standardleitungen, die die Anzahl und unterschiedlichen Ausprägungen von Anschlüssen an dem IO-Link Device drastisch reduzieren.IO-Link is a standard that prescribes the electrical interface (physical layer) and the communication protocol for communication with so-called IO-Link devices, in this case the sensor. Standardization simplifies integration into the automation system. This concerns the actual communication, which unifies the innumerable proprietary solutions of the different manufacturers, as well as the physical connection by means of 3 or 5-wire standard cables, which drastically reduce the number and different types of connections to the IO-Link device.

Ein IO-Link Master verbindet den Sensor mit dem Automatisierungssystem. Dazu wird über IO-Link eine Punkt-zu-Punkt-Kommunikation zwischen dem IO-Link Master und dem Sensor hergestellt, während die Kommunikation des IO-Link Masters mit dem übergeordneten Automatisierungssystem etwa über Feldbus erfolgt. Eine Übersicht über IO-Link bietet beispielsweise die über www.io-link.com abrufbare Systembeschreibung.An IO-Link master connects the sensor to the automation system. For this purpose, point-to-point communication between the IO-Link master and the sensor is established via IO-Link, while communication between the IO-Link master and the higher-level automation system takes place via fieldbus, for example. An overview of IO-Link is available, for example, from the system description available at www.io-link.com.

Die Definition der IO-Link-Schnittstelle in dem Sensor erfolgt über eine Gerätebeschreibung, die sogenannte IODD (IO-Link Device Description). Darin werden außer allgemeinen Informationen, wie einer Hersteller- und Devicekennung, die für eine Kommunikation verfügbaren Daten und Funktionen definiert, wie Geräteparameter samt Wertebereich, Mess- und Diagnosedaten oder aufrufbare Einlern-, Mess- und Auswertungsfunktionen. Die IODD ist im Grunde eine fest vorgegebene, nummerierte Liste von Definitionen eines jeweiligen Kommunikationsdatums samt Typ und Erläuterung, wobei die einzelnen Einträge als iSDU (indexed Service Data Unit) bezeichnet werden. Eine IODD wird üblicherweise in einem Softwaretool entworfen und bearbeitet, die fertige IODD ist dann eine XML-Datei.The definition of the IO-Link interface in the sensor is made via a device description, the so-called IODD (IO-Link Device Description). In addition to general information, such as a manufacturer and device identifier, it defines the data and functions available for communication, such as device parameters and their value range, measurement and diagnostic data or callable teach-in, measurement and evaluation functions. The IODD is basically a fixed, numbered list of definitions of a particular communication date, including type and explanation, the individual entries being referred to as iSDU (Indexed Service Data Unit). An IODD is usually designed and edited in a software tool, the finished IODD is then an XML file.

Eine IO-Link-Schnittstelle ist eine sehr statische Schnittstelle. Änderungen am Funktionsumfang nach Festlegung einer IODD sind nicht vorgesehen. Das macht sie sehr unflexibel und erschwert Erweiterungen. Andererseits sind die späteren Anforderungen im Feld während der Entwicklung oft nicht vollständig absehbar, oder erst die Anwendung weckt den Wunsch nach weiteren Funktionen und Parametern. Auch sind in der Praxis oftmals kunden- oder anwendungsspezifische Anpassungen der Firmware erforderlich, um spezielle Filter zu implementieren, Sonderfunktionen einzuführen oder das Verhalten von Schaltausgängen zu verändern.An IO-Link interface is a very static interface. Changes to the functional scope after definition of an IODD are not provided. This makes them very inflexible and complicates extensions. On the other hand, the later requirements in the field during the development are often not fully foreseeable, or only the application arouses the desire for further functions and parameters. Also, in practice, customer or application specific firmware customization is often required to implement special filters, introduce special functions, or change the behavior of switching outputs.

Es besteht also eine Spannung zwischen dem Erfordernis, den Sensor und sein Kommunikationsverhalten anzupassen, und der fehlenden Flexibilität der IO-Link-Schnittstelle. Dieses Problem wiegt umso schwerer, je volatiler das Umfeld ist. Gerade eine schnelle Entwicklung, die durch viele kleine Fortschritte geprägt ist, lässt sich kaum mit der statischen IO-Link-Schnittstelle vereinen. Folglich werden in rascher Abfolge neue IO-Link-Schnittstellen beziehungsweise IODDs definiert, die schon nach kurzer Zeit aufgrund neuer Erkenntnisse und Anforderungen nicht mehr auf dem aktuellen Stand sind.There is thus a tension between the need to adapt the sensor and its communication behavior, and the lack of flexibility of the IO-Link interface. This problem weighs more heavily the more volatile the environment is. Especially a fast development, which is characterized by many small advances, can hardly be combined with the static IO-Link interface. As a result, new IO-Link interfaces or IODDs are defined in rapid succession, which are no longer up-to-date in a short time due to new insights and requirements.

Dabei erfordert die Anpassung einen erheblichen Aufwand. Es muss eine neue IODD mit dem veränderten Funktionsumfang erstellt werden, in der auch eine neue eindeutige Geräteidentifikation (DeviceID) vergeben wird. Es ergeben sich Kompatibilitätsprobleme zum alten Stand und daher eine geringe Akzeptanz, beispielsweise wenn mit der alten IODD gespeicherte Daten nicht mehr lesbar sind. Das Kompatibilitätsproblem isoliert lasst sich noch lösen, indem sich der Sensor als Sensor einer älteren Generation ausgibt und den alten Funktionsumfang nachbildet (Device Backward Compatibility). Das alles muss dann aber aufwändig qualifiziert und getestet werden. Eine Behelfslösung ist, in der IODD vorsorglich leere iSDUs vorzuhalten, die dann zukünftig für bisher unbekannte Funktionserweiterungen verwendet werden können. Es ist aber nicht nur schwierig vorherzusagen, welche und wie viele iSDUs später wirklich benötigt werden. Außerdem kann eine spätere Änderung und damit Neudefinition der IODD durch das Vorhalten von iSDUs oft doch nicht vermieden werden, weil iSDUs umbenannt oder allgemein deren Spezifikation der Verwendung angepasst wird.The adaptation requires a considerable effort. A new IODD with the changed scope of functions must be created, in which a new unique device identification (DeviceID) is also assigned. It results in compatibility problems to the old state and therefore a low acceptance, for example, when stored with the old IODD data are no longer readable. The compatibility problem can be solved in isolation, as the sensor pretends to be a sensor of an older generation and replicates the old functional scope (Device Backward Compatibility). All this must then be elaborately qualified and tested. A workaround is to keep empty iSDUs in the IODD as a precaution, which can then be used in the future for previously unknown function expansions. Not only is it difficult to predict which and how many iSDUs will be needed later on. In addition, later modification and redefinition of the IODD through the provision of iSDUs can often not be avoided because iSDUs are renamed or generally their specification is adapted for use.

Ein weiteres Problem ist, dass IO-Link die Größe eine Datenfeldes auf 232 Bytes begrenzt, was mit der auf 255 Bytes limitierten Größe der Telegramme zusammenhängt. Es kann aber durchaus erforderlich sein, dass ein Sensor mehr Daten ausgibt, wie im Falle einer Messkurve. Innerhalb der üblichen Spezifikation einer IODD in IO-Link bleibt da nichts anderes übrig, als entsprechende Datenfelder fix zu definieren. Für eine Messkurve von zum Beispiel 2.000 Bytes müssen dann neun fest in der IODD vorgegebene iSDUs wie MeasurementCurveData01 [232]... MeasurementCurveData09[232] definiert werden. Das löst zwar die konkrete Anforderung, ist aber ausgesprochen umständlich und unflexibel.Another problem is that IO-Link limits the size of a data field to 232 bytes, which is related to the size of the telegrams, which is limited to 255 bytes. However, it may be necessary for a sensor to output more data, as in the case of a trace. Within the usual specification of an IODD in IO-Link, there is no choice but to define corresponding data fields. For a measurement curve of, for example, 2,000 bytes, then nine iSDUs permanently specified in the IODD, such as MeasurementCurveData01 [232] ... MeasurementCurveData09 [232], must be defined. Although this solves the concrete requirement, it is extremely cumbersome and inflexible.

Aus der DE 10 2014 114 692 A1 ist ein Verfahren zum Sichern industrieller Sensoren und Aktoren bekannt, die als IO-Link-Geräte einen IO-Link-Transceiver zur Kommunikation mit einem IO-Link-Master aufweisen.From the DE 10 2014 114 692 A1 A method is known for securing industrial sensors and actuators which, as IO-Link devices, have an IO-Link Transceiver for communication with an IO-Link master.

Die EP 2 187 571 B1 offenbart das Generieren einer Gerätebeschreibung für ein Messgerät. Als ein Zielfeldbusprotokoll ist dabei IO-Link genannt.The EP 2 187 571 B1 discloses generating a device description for a meter. A target fieldbus protocol is called IO-Link.

Es ist daher Aufgabe der Erfindung, Erweiterungen eines IO-Link-fähigen Sensors zu vereinfachen.It is therefore an object of the invention to simplify extensions of an IO-link-capable sensor.

Diese Aufgabe wird durch einen IO-Link-fähigen Sensor sowie ein Verfahren zum Kommunizieren mit einem IO-Link-fähigen Sensor nach Anspruch 1 beziehungsweise 10 gelöst. Der Sensor umfasst eine Sensoreinheit mit der eigentlichen Sensorfunktion, die durch ein physikalisches Messprinzip eine Messgröße erfasst. Eine Steuer- und Auswertungseinheit steuert den Ablauf in dem Sensor und damit auch in der Sensoreinheit. Sie bereitet die Messgröße auf, wobei diese Weiterverarbeitung eine sehr unterschiedliche Komplexität von einfachem Durchleiten bis hin zu aufwändigen Berechnungen haben kann. Die Steuer- und Auswertungseinheit, und damit der Sensor, kommuniziert über eine IO-Link-Schnittstelle mit einem Kommunikationspartner, der ein IO-Link Master beispielsweise eines anderen Sensors, einer übergeordneten Steuerung oder eines Konfigurations- beziehungsweise Diagnosegeräts ist. Die Definition der Schnittstelle erfolgt über eine Gerätebeschreibung IODD nach dem IO-Link-Standard.This object is achieved by an IO-Link-capable sensor and a method for communicating with an IO-link-capable sensor according to claim 1 or 10. The sensor comprises a sensor unit with the actual sensor function, which detects a measured variable by means of a physical measuring principle. A control and evaluation unit controls the flow in the sensor and thus also in the sensor unit. It prepares the measured variable, and this further processing can have a very different complexity, from simple passage through to complex calculations. The control and evaluation unit, and thus the sensor, communicates via an IO-Link interface with a communication partner who is an IO-Link master, for example, of another sensor, a higher-level controller or a configuration or diagnostic device. The interface is defined via a device description IODD according to the IO-Link standard.

Die Erfindung geht nun von dem Grundgedanken aus, innerhalb der IODD eine universelle Schnittstelle zu definieren. Im Gegensatz zu herkömmlichen Schnittstellen der IODD ist aber bei der Definition noch nicht festgelegt, welche Daten über die universelle Schnittstelle ausgetauscht beziehungsweise welche Funktionen aufgerufen werden. Dazu ist als eine Möglichkeit in der IODD ein generischer indirekter Methodenaufruf anhand eines übergebenen Handles vorgesehen. Welche Methode tatsächlich aufgerufen wird, entscheidet sich erst im zweiten Schritt zur Laufzeit über das Handle. Die Verknüpfung zwischen dem Handle und der Methode ist aus der IODD heraus verlagert, und deshalb ändert sich auch die IODD nicht, wenn nachträglich eine Methode verändert oder eine weitere Methode mit einem Handle verknüpft wird. Eine weitere Möglichkeit ist ein generischer Datenpuffer, der erneut in der IODD nur als Struktur, nicht aber in seiner Semantik oder Verwendung festgelegt ist. Welche Daten dann wirklich über diesen Datenpuffer ausgetauscht werden, entscheidet nicht die IODD, sondern allein die auf den Buffer lesend oder schreibend zugreifende Methode. Dabei ist diese zugreifende Methode vorzugsweise eine generische Methode der universellen Schnittstelle. Die universelle Schnittstelle ist folglich in der IODD undokumentiert, die konkrete Bedeutung wird ihr erst durch die später verknüpfte Methode beziehungsweise die Verwendung des Datenpuffers gegeben.The invention is based on the basic idea of defining a universal interface within the IODD. In contrast to conventional interfaces of the IODD, however, it is not yet defined in the definition which data are exchanged via the universal interface or which functions are called. For this purpose, a generic indirect method call using a transferred handle is provided as a possibility in the IODD. Which method is actually called, decides on the handle only in the second step at runtime. The link between the handle and the method is shifted out of the IODD, so the IODD does not change if one method is subsequently changed or another method is linked to a handle. Another possibility is a generic data buffer that is redefined in the IODD only as a structure, but not in its semantics or usage. It is not the IODD that decides which data is actually exchanged via this data buffer, but only the method that reads or writes to the buffer. In this case, this accessing method is preferably a generic method of the universal interface. The universal interface is therefore undocumented in the IODD, the concrete meaning is given to it only by the later linked method or the use of the data buffer.

Die Erfindung hat den Vorteil, dass die derart erweiterte IO-Link-Schnittstelle ein einfaches Verändern und Hinzufügen von Funktionalitäten ermöglicht und dabei ohne eine Anpassung der IODD auskommt. Die IO-Link-Schnittstelle selbst bleibt auch bei großem Funktionsumfang oder größeren Änderungen schlank und wird nicht mit Informationen überfrachtet. Der Umfang der IODD, insbesondere die Anzahl der iSDUs, bleibt klein.The invention has the advantage that the so-extended IO-Link interface allows a simple modification and addition of functionalities and thereby manages without an adaptation of the IODD. The IO-Link interface itself remains lean even with large functionality or major changes and is not overloaded with information. The size of the IODD, especially the number of iSDUs, remains small.

In der Gerätebeschreibung ist bevorzugt eine Statusabfrage für den generischen Methodenaufruf spezifiziert, wobei die Steuer- und Auswertungseinheit die Statusabfrage mit einem in der Gerätebeschreibung nicht festgelegten Wert belegt. Damit steht in der universellen Schnittstelle ein frei definierbarer Rückgabewert zur Verfügung. Diese Flexibilität ist deshalb besonders nützlich, weil zum Zeitpunkt der Definition der IODD die konkrete über den generischen Methodenaufruf nutzbare Funktion gar nicht bekannt ist. Auf diese Weise kann eine solche Funktion die passenden Rückgabewerte liefern Die Steuer- und Auswertungseinheit ist bevorzugt dafür ausgebildet, über den generischen Methodenaufruf eine Funktion auszulösen, die abschnittsweise eine Messkurve in dem Datenpuffer bereitstellt. Die auszugebende Messkurve benötigt mehr Daten als die 232 maximal in einem iSDU verfügbaren Byte, und deshalb wird der Datenpuffer mehrfach genutzt, um diese Daten abschnittsweise zu kommunizieren. Beispielsweise wird mit jedem Aufruf der Funktion der nächste Abschnitt bereitgestellt, oder die Funktion schreibt die Abschnitte nach ihrem Aufruf mit gewissen Verzögerungen nacheinander in den Datenpuffer. Die Abschnitte können mit einer Kennung versehen sein, um welchen Abschnitt innerhalb der Messkurve es sich dabei handelt. Alternativ ist die Messkurve kurz genug, um auf einmal in den begrenzten Datenpuffer geschrieben zu werden, oder sie wird entsprechend ausgedünnt oder komprimiert.In the device description, a status query for the generic method call is preferably specified, wherein the control and evaluation unit occupies the status request with a value not specified in the device description. This provides a freely definable return value in the universal interface. This flexibility is particularly useful because at the time of definition of the IODD, the specific function that can be used via the generic method call is not known at all. In this way, such a function can provide the appropriate return values. The control and evaluation unit is preferably designed to trigger a function via the generic method call, which provides a measurement curve in sections in the data buffer. The waveform to be output requires more data than the maximum 232 bytes available in an iSDU, and therefore the data buffer is used multiple times to communicate this data in sections. For example, with each call to the function, the next section is provided, or the function, after being called, writes the sections one after another into the data buffer with some delay. The sections may be provided with an identifier which section within the trace is involved. Alternatively, the trace is short enough to be written to the limited data buffer at once, or it is thinned or compressed accordingly.

Die Steuer- und Auswertungseinheit ist bevorzugt dafür ausgebildet, über den generischen Methodenaufruf eine Funktion auszulösen, die zyklisch Zustands- oder Debuginformationen in dem Datenpuffer bereitstellt. Welche Daten konkret bereitgestellt werden, kann der Sensor beziehungsweise die Firmware in der Steuer- und Auswertungseinheit flexibel und ohne Rücksicht auf die bestehende, festgelegte IODD bestimmen. Besonders bevorzugt wird die Funktion zur Bereitstellung von Zustands- oder Debuginformationen nur einmal aufgerufen und aktualisiert sie dann zyklisch von selbst. Damit finden sich im Datenpuffer stets die aktuellen, zuletzt geschriebenen Daten. The control and evaluation unit is preferably designed to trigger a function via the generic method call, which cyclically provides state or debug information in the data buffer. Which data is actually provided, the sensor or the firmware in the control and evaluation unit can determine flexibly and without regard to the existing, fixed IODD. Particularly preferably, the function for providing state or debug information is called only once and then updates it cyclically by itself. Thus, the current, most recently written data is always found in the data buffer.

Die Steuer- und Auswertungseinheit ist bevorzugt dafür ausgebildet, über den generischen Methodenaufruf eine Funktion auszulösen, die erst nachträglich bei schon festgelegter Gerätebeschreibung implementiert wurde. Herkömmlich müsste eine neue Funktion oder Methode in der IODD spezifiziert werden, eine solche Erweiterung wäre also nur mit einer neuen IODD möglich. Die Erfindung dagegen kann hierfür den generischen Methodenaufruf nutzen und deshalb Funktionen auch im Nachhinein ohne Änderung der IODD hinzufügen.The control and evaluation unit is preferably designed to trigger a function via the generic method call, which was implemented later with an already defined device description. Conventionally, a new function or method would have to be specified in the IODD, so such an extension would only be possible with a new IODD. By contrast, the invention can use the generic method call for this purpose and therefore also add functions retrospectively without changing the IODD.

Die Steuer- und Auswertungseinheit ist bevorzugt dafür ausgebildet, über den generischen Methodenaufruf eine Funktion auszulösen, die versteckt ist, die eine Debug-Funktion oder die eine kundenspezifische Funktion ist. Derartige Funktionen sind in der Regel nur einem bestimmten Personenkreis zugänglich und oft auch undokumentiert. Dank der erfindungsgemäßen universellen Schnittstelle kann besonders bevorzugt gleich eine Vielzahl derartiger Funktionen über dieselbe iSDU abgebildet werden.The control and evaluation unit is preferably designed to trigger a function that is hidden, which is a debug function or a customer-specific function, via the generic method call. Such functions are usually accessible only to a certain group of people and often undocumented. Thanks to the universal interface according to the invention, a multiplicity of such functions can particularly preferably be imaged via the same iSDU.

Die Steuer- und Auswertungseinheit ist bevorzugt dafür ausgebildet, über den Datenpuffer gesetzte oder zu setzende Parameter, Diagnosedaten und/oder Messwerte auszutauschen. Da der Datenpuffer universell ist, kann nachträglich und ohne Änderung der IODD entschieden werden, welche Art von Daten abgelegt wird.The control and evaluation unit is preferably designed to exchange over the data buffer set or set parameters, diagnostic data and / or measured values. Since the data buffer is universal, it can be decided subsequently and without changing the IODD which type of data is stored.

Bevorzugt weist der Sensor je einen Datenpuffer für die Kommunikation zum Sensor hin und aus dem Sensor heraus auf. Es sind also zwei universelle Datenpuffer in der IODD definiert. Insbesondere dient der eine Datenpuffer dem Setzen von Parametern und der andere Datenpuffer für die Ausgabe von Rückgabewerten des Sensors, wie Messwerte, Diagnosedaten und dergleichen.The sensor preferably has one data buffer each for communication to and from the sensor. So there are two universal data buffers defined in the IODD. In particular, one data buffer is for setting parameters and the other data buffer is for outputting return values of the sensor, such as measurements, diagnostic data, and the like.

Der Sensor ist bevorzugt ein Sensor für die Prozessmesstechnik, insbesondere ein Füllstands-, Durchfluss-, Temperatur- oder Drucksensor. Dies sind Beispiele für Sensoren, die in eine vorhandene, oft hoch komplexe Prozesslandschaft eingebunden werden. IO-Link sichert die herstellerübergreifende Zusammenarbeit und Austauschbarkeit der Sensoren, und die Erfindung ermöglicht dabei eine wesentlich höhere Flexibilität für den einzelnen Sensor.The sensor is preferably a sensor for process measurement technology, in particular a fill level, flow, temperature or pressure sensor. These are examples of sensors that are integrated into an existing, often highly complex process landscape. IO-Link ensures the manufacturer-independent cooperation and interchangeability of the sensors, and the invention allows a much higher flexibility for the individual sensor.

Das erfindungsgemäße Verfahren kann auf ähnliche Weise weitergebildet werden und zeigt dabei ähnliche Vorteile. Derartige vorteilhafte Merkmale sind beispielhaft, aber nicht abschließend in den sich an die unabhängigen Ansprüche anschließenden Unteransprüchen beschrieben.The method according to the invention can be developed in a similar manner and shows similar advantages. Such advantageous features are described by way of example but not exhaustively in the subclaims following the independent claims.

Die Erfindung wird nachstehend auch hinsichtlich weiterer Merkmale und Vorteile beispielhaft anhand von Ausführungsformen und unter Bezug auf die beigefügte Zeichnung näher erläutert. Die Abbildungen der Zeichnung zeigen in:The invention will be explained in more detail below with regard to further features and advantages by way of example with reference to embodiments and with reference to the accompanying drawings. The illustrations of the drawing show in:

1 eine vereinfachte Blockdarstellung eines IO-Link-fähigen Sensors; 1 a simplified block diagram of an IO-Link-capable sensor;

2 eine beispielhafte Definition einer universellen Schnittstelle innerhalb der Gerätebeschreibung IODD eines IO-Link-fähigen Sensors; 2 an exemplary definition of a universal interface within the device description IODD of an IO-Link-capable sensor;

3 Beispiele für Funktionen, die über einen generischen Methodenaufruf genutzt werden; 3 Examples of functions used through a generic method call;

4 Beispiele für Rückgabewerte einer Statusabfrage des generischen Methodenaufrufs; und 4 Examples of return values of a status request of the generic method call; and

5 Beispiele für die Nutzung eines universellen Datenpuffers. 5 Examples of using a universal data buffer.

1 zeigt eine vereinfachte Blockdarstellung eines IO-Link-fähigen Sensors 10. Der Sensor 10 umfasst eine Sensoreinheit 12, die mit einem an sich bekannten Messverfahren eine Messgröße berührungslos oder mit einer Sonde bestimmt. Dazu weist die Sensoreinheit 12 beispielsweise eine nicht eigens dargestellte Empfangseinheit oder eine kombinierte Sende-Empfangs-Einheit für Signale wie Licht, Radar oder Ultraschall auf, oder sie besitzt einen kapazitiven, magnetischen oder induktiven Messkopf. Eine bevorzugte Familie von Sensoren sind solche der Prozessautomation, wie Füllstand-, Durchfluss-, Druck- oder Temperatursensoren. Diese Aufzählungen sind nicht abschließend, da es für die Erfindung auf das konkrete Sensorprinzip letztlich nicht ankommt. 1 shows a simplified block diagram of an IO-Link-capable sensor 10 , The sensor 10 includes a sensor unit 12 , which determines a measured variable without contact or with a probe by means of a measurement method known per se. For this purpose, the sensor unit 12 For example, a not specifically illustrated receiving unit or a combined transceiver unit for signals such as light, radar or ultrasound, or it has a capacitive, magnetic or inductive measuring head. A preferred family of sensors are those of process automation, such as level, flow, pressure, or temperature sensors. These lists are not exhaustive, as it ultimately does not depend on the specific sensor principle for the invention.

Eine Steuer- und Auswertungseinheit 14 ist mit der Sensoreinheit verbunden, um die Messgröße weiterzuverarbeiten. Das kann analoge Verarbeitungsschritte beinhalten, wie eine Verstärkung oder Filterung. Zur Kommunikation über IO-Link umfasst die Steuer- und Auswertungseinheit zumindest einen digitalen Anteil, wie einen Mikroprozessor, ein ASIC oder dergleichen, so dass in aller Regel zwischen Sensoreinheit 12 und Steuer- und Auswertungseinheit 14 eine Digitalisierung der Messgröße erfolgt. Beispielsweise erhält die Steuer- und Auswertungseinheit 14 ein elektrisches Empfangssignal von der Sensoreinheit 12 und vergleicht es mit einer Schwelle, gibt es als Digitalwert aus oder führt komplexere Auswertungen damit durch. Die Steuer- und Auswertungseinheit 14 kann zumindest teilweise gemeinsam mit der Sensoreinheit 12 ausgebildet sein.A control and evaluation unit 14 is connected to the sensor unit to process the measurand. This may involve analog processing steps, such as amplification or filtering. For communication via IO-Link, the control and evaluation unit comprises at least one digital component, such as a microprocessor, an ASIC or the like, so that as a rule between the sensor unit 12 and control and evaluation unit 14 a digitization of the measured variable takes place. For example, the control and evaluation unit receives 14 an electrical received signal from the sensor unit 12 and compares it to a threshold, outputs it as a digital value, or performs more complex evaluations. The control and evaluation unit 14 can at least partially together with the sensor unit 12 be educated.

Die Steuer- und Auswertungseinheit 14 ist weiterhin mit einem IO-Link-Anschluss 16 verbunden, an den ein IO-Link Master als Kommunikationspartner 18 angeschlossen ist. Der IO-Link Master kann beispielsweise in einem speziellen Gerät, in einem weiteren Sensor oder in einer Steuerung implementiert sein und vermittelt in einer typischen Automatisierungsanwendung die Ebene der sehr sensornahen IO-Link-Kommunikation mit einer übergeordneten Kommunikation der Anlage beispielsweise über Feldbus.The control and evaluation unit 14 is still with an IO-Link connection 16 to which an IO-Link master as the communication partner 18 connected. The IO-Link master can be used, for example, in a special device, in another sensor or in a controller be implemented and conveyed in a typical automation application, the level of very sensor-related IO-Link communication with a higher-level communication of the plant, for example via fieldbus.

Um über den IO-Link-Anschluss 16 tatsächlich per IO-Link kommunizieren zu können, ist in der Steuer- und Auswertungseinheit 14 der entsprechende Protokollstack implementiert. Dazu gehört eine Gerätebeschreibung für den Sensor 10 im Sinne von IO-Link, also eine IODD (IO-Link Device Description), die in der Steuer- und Auswertungseinheit 14 beziehungsweise einem zugeordneten Speicher abgelegt ist. Durch diese IO-Link-Schnittstelle, also die Kombination der Implementierung in der Steuer- und Auswertungseinheit 14 und einen entsprechenden physischen IO-Link-Anschluss 16, wird der Sensor 10 IO-Link-fähig.To over the IO-Link connection 16 Actually being able to communicate via IO-Link is in the control and evaluation unit 14 implemented the appropriate protocol stack. This includes a device description for the sensor 10 in the sense of IO-Link, ie an IODD (IO-Link Device Description), which is in the control and evaluation unit 14 or an associated memory is stored. Through this IO-Link interface, ie the combination of the implementation in the control and evaluation unit 14 and a corresponding physical IO-Link port 16 , the sensor becomes 10 IO-Link capable.

2 zeigt eine beispielhafte Definition einer universellen Schnittstelle innerhalb der Gerätebeschreibung IODD des IO-Link-fähigen Sensors 10. Wie vom Standard vorgeschrieben, erfolgt die Definition über iSDUs (indexed Service Data Units). 2 zeigt drei solche iSDUs. Die Tabelle in 2 enthält jeweils den Namen und einen Datentyp. Das Feld Beschreibung enthält in einer herkömmlichen IODD verbindliche und konkrete Informationen. Zwar kann später natürlich der konkrete Wert verändert werden, die Definition und Bedeutung aber nicht. Dazu im Gegensatz ist die universelle Schnittstelle während der Definition der IODD gerade noch nicht festgelegt, sondern stellt nur eine allgemeine Struktur bereit, die später für Änderungen und Erweiterungen genutzt werden kann. Außerdem gibt es in der IODD weitere, hier nicht relevante Informationen wie eine feste Nummerierung (daher indexed). 2 shows an exemplary definition of a universal interface within the device description IODD of the IO-Link-capable sensor 10 , As prescribed by the standard, the definition is made via iSDUs (indexed service data units). 2 shows three such iSDUs. The table in 2 contains the name and a data type. The description field contains binding and concrete information in a conventional IODD. Of course, the actual value can of course be changed later, but not the definition and meaning. In contrast, the universal interface is not yet defined during the definition of the IODD, but provides only a general structure that can later be used for changes and enhancements. In addition, there are other, not relevant information in the IODD such as a fixed numbering (therefore indexed).

In der ersten Zeile der Tabelle von 2 wird ein generischer Methodenaufruf spezifiziert, der den beispielhaften Namen „invokeAction” trägt und einen Übergabeparameter hat, in diesem Fall eine vorzeichenlose 16-Bit-Zahl. Diese iSDU ist aus Sicht des Kommunikationspartners 18 nur schreibbar. In IO-Link bedeutet ein Schreibzugriff auf eine nur schreibbare iSDU, dass ein Methodenaufruf erfolgt, wobei der geschriebene Wert der Übergabeparameter ist. Daher kann ein normaler Ulnt16-Datentyp zum Auslösen von Methoden und gleichzeitigem Übertragen des Parameters eingesetzt werden. Wenn nun die aufgerufene Methode den Übergabeparameter nutzt, um ihrerseits die durch den Übergabeparameter bezeichnete Methode aufzurufen, so verwirklicht das den gewünschten generischen Methodenaufruf innerhalb des von IO-Link gesetzten Rahmens. Es können also auf diese Weise über dieselbe generische Methode invokeAction bis zu 216 verschiedene Aktionen ausgelöst werden, wobei erst der Übergabeparameter und nicht die IODD festlegt, welche Aktion das jeweils tatsächlich ist. Sicherheitshalber sollte der Default-Wert Null sein und keine Aktion ausgelöst werden, wenn der Übergabeparameter Null ist, um versehentliche Methodenaufrufe zu verhindern, beispielsweise wenn ein Tooling alle iSDUs des Sensors 10 schreibt. Selbstverständlich ist speziell ein Ulnt16 mit 216 Möglichkeiten nur ein Beispiel.In the first line of the table of 2 specifies a generic method call that carries the example name "invokeAction" and has a transfer parameter, in this case a 16-bit unsigned number. This iSDU is from the point of view of the communication partner 18 only writable. In IO-Link, a write access to a write-only iSDU means that a method call is made, with the written value being the transfer parameter. Therefore, a normal Ulnt16 data type can be used to trigger methods and at the same time transmit the parameter. If the called method uses the transfer parameter to call the method specified by the transfer parameter, this implements the desired generic method call within the frame set by IO-Link. In this way, up to 2 16 different actions can be triggered in this way via the same generic method invokeAction, whereby first the transfer parameter and not the IODD determines which action actually takes place. To be on the safe side, the default value should be zero and no action should be taken if the transfer parameter is null to prevent accidental method calls, for example if a tooling is used to scan all the iSDUs of the sensor 10 writes. Of course, a Ulnt16 with 2 16 possibilities is just one example.

3 listet einige Beispiele für Aktionen, die durch den generischen Methodenaufruf ausgelöst werden können. Das dient wie auch später bei den 4 und 5 nur der Illustration und ist nicht beschränkend, denn es ist ja gerade die erwünschte Natur des generischen Methodenaufrufs, dass die IODD solche Beschränkungen nicht auferlegt. Der generische Methodenaufruf kann eine durch den Übergabeparameter bezeichnete Methode ohne besondere weitere Eigenschaften aufrufen. Die so indirekt aufgerufene Methode kann Übergabeparameter erhalten und/oder Rückgabewerte liefern. Das geschieht insbesondere über den noch zu erläuternden universellen Datenpuffer, der beispielhaft als DataBuffer bezeichnet ist. Eine für Sensoren besonders vorteilhafte Form von Rückgabewerten ist die Ausgabe von Sensordaten, also Messwerten in verschiedenen Verarbeitungsstufen, die auch leicht einen größeren Datenumfang haben können. 3 lists some examples of actions that can be triggered by the generic method call. This serves as later in the 4 and 5 by way of illustration only and is not limiting, for it is precisely the desirable nature of the generic method invocation that the IODD does not impose such restrictions. The generic method call can invoke a method specified by the passing parameter without any other special properties. The indirectly called method can receive transfer parameters and / or return values. This is done in particular via the universal data buffer, which is to be explained as an example, and which is designated by way of example as a DataBuffer. A particularly advantageous form of return values for sensors is the output of sensor data, that is to say measured values in various processing stages, which can also easily have a larger data volume.

In der zweiten Zeile der Tabelle von 2 wird eine Statusabfrage für den generischen Methodenaufruf spezifiziert, in diesem Beispiel mit dem Namen invokeAction-State vom Typ Ulnt8, wobei der Kommunikationspartner 18 hier nur lesend zugreifen kann. Die möglichen Status sind dabei in der Gerätebeschreibung IODD nicht festgelegt, vielmehr hat jede der ebenfalls erst nachträglich konkretisierten Aktionen, die über invokeAction ausgelöst werden, die freie Verfügungsgewalt über die konkrete Bedeutung. Damit erhält jede Aktion, die erst nachträglich über den generischen Methodenaufruf festgelegt ist, eine einfache Möglichkeit, einen Rückgabewert über die aktuelle Ausführung zurückzuliefern. Prinzipiell könnte dafür alternativ auch der universelle Datenpuffer DataBuffer genutzt werden.In the second line of the table of 2 A status request is specified for the generic method call, in this example with the name invokeAction-State of type Ulnt8, where the communication partner 18 can only read here. The possible statuses are not defined in the device description IODD, but rather each of the actions, which are also only subsequently specified, which are triggered via invokeAction, have the free power of disposal over the concrete meaning. Thus, any action that is later defined by the generic method call will have an easy way to return a return value over the current execution. In principle, the universal data buffer DataBuffer could alternatively be used for this.

Alternativ ist auch vorstellbar, die Rückgabewerte von invokeActionState in der IODD vorzuschlagen. Beispielsweise wird anstelle des Typs Ulnt8 ein Enum8, also ein Aufzählungstyp mit acht Bit, definiert und mit Statusinformationen belegt. Das widerspricht nicht der Flexibilität der universellen Schnittstelle, solange es sich um allgemeine Status handelt, die auch für noch unbekannte Methoden nützlich sein werden oder zumindest sein können.Alternatively, it is also conceivable to suggest the return values of invokeActionState in the IODD. For example, instead of the type Ulnt8, an enum8, ie an enumeration type with eight bits, is defined and assigned with status information. This does not contradict the flexibility of the universal interface, as long as they are general states that will, or at least be, useful for yet unknown methods.

4 nennt einige Beispiele für Rückgabewerte oder Zustandsinformationen, die mittels invokeActionState abgefragt werden können. Beispielsweise kann eine Aktion momentan nicht aktiv (Idle), noch nicht abgeschlossen (MethodRunning), zu einem gewissen Anteil (MethodProgress{10, 20, ...}%) oder insgesamt (MethodOk) durchgelaufen beziehungsweise mit Fehler abgebrochen worden sein (MethodFailed). Der Status kann sich auch auf eine speziellere Funktion wie eine Kalibration beziehen. Es können für den weiteren Ablauf relevante Informationen wie die Verfügbarkeit angefragter Daten (DataReady) und schließlich allgemeine Informationen zurückgegeben werden, wie dass die geforderte Aktion nicht vorhanden (UnknownAction), d. h. der Übergabewert an invokeAction nicht gültig ist, beziehungsweise die Aktion aufgrund mangelnder Rechte oder anderer Gründe nicht ausgelöst wird (PermissionDenied). 4 gives some examples of return values or state information that can be queried using invokeActionState. For example, an action may not currently be active (Idle), not yet completed (MethodRunning), too have passed through a certain proportion (MethodProgress {10, 20, ...}%) or in total (MethodOk) or have been aborted with an error (MethodFailed). The status may also refer to a more specialized function such as a calibration. Information relevant to the further process, such as the availability of requested data (DataReady) and finally general information can be returned, such as that the required action is not available (UnknownAction), ie the transfer value to invokeAction is not valid, or the action due to lack of rights or other reasons is not triggered (PermissionDenied).

In der dritten Zeile der Tabelle von 3 wird ein universeller Datenpuffer spezifiziert, der in diesem Beispiel als invokeActionDataBuffer bezeichnet ist und 128 vorzeichenlose 8-Bit-Werte umfasst, auf die lesend und schreibend zugegriffen werden kann. Der Datenpuffer ist universell, weil innerhalb der Gerätebeschreibung IODD nicht festgelegt ist, welche Methode darauf zugreift und welche Bedeutung diese Daten haben. Der universelle Datenpuffer wird vorzugsweise von Aktionen genutzt, die mittels generischen Methodenaufrufs invokeAction ausgelöst sind, aber das ist nicht zwingend.In the third line of the table of 3 specifies a universal data buffer, referred to in this example as invokeActionDataBuffer, which includes 128 unsigned 8-bit values that can be read and write. The data buffer is universal because within the device description IODD it is not specified which method accesses it and what meaning these data have. The universal data buffer is preferably used by actions that are triggered by generic invokeAction method invocation, but this is not mandatory.

In 5 sind einige Beispiele aufgeführt, wie der universelle Datenpuffer genutzt werden kann. Allgemein handelt es sich um eine universelle Ablage zum Datenaustausch in beide Richtungen. Der generische Methodenaufruf invokeAction hat zwar selbst einen Übergabewert, aber dieser wird bereits dafür verwendet, die auszulösende Aktion zu bestimmen. Die auszulösende Aktion selbst hat damit zunächst keine Übergabeparameter und Rückgabewerte, und das könnte auch in der IODD nicht festgelegt werden, weil zur Zeit der Definition der IODD die auszulösende Aktion noch gar nicht bekannt ist. Stattdessen bietet die universelle Schnittstelle den Datenpuffer DataBuffer an, über den Rückgabewerte und Übergabeparameter der ausgelösten Aktion ausgetauscht werden. Für einen einzigen Rückgabewert kann auch die Statusabfrage invokeActionState genutzt werden. In den universellen Datenpuffer können als weiteres Beispiel Parameter geschrieben werden, und zwar von dem Kommunikationspartner 18, um sie in dem Sensor 10 zu setzen, und umgekehrt von dem Sensor 10, um die aktuell gesetzten Parameter auszugeben. Weitere Beispiele für Daten, die über den universellen Datenpuffer ausgetauscht werden können, sind Mess- oder Kalibrationsdaten.In 5 Here are some examples of how the universal data buffer can be used. Generally, it is a universal repository for data exchange in both directions. Although the generic invokeAction method call itself has a transfer value, it is already used to determine the action to be triggered. Initially, the action itself does not have any transfer parameters and return values, and this could not be defined in the IODD because at the time of defining the IODD, the action to be triggered is not yet known. Instead, the universal interface offers the data buffer DataBuffer, which exchanges return values and transfer parameters of the triggered action. For a single return value, the status query invokeActionState can also be used. As another example, parameters can be written to the universal data buffer, namely by the communication partner 18 to put it in the sensor 10 to put, and vice versa of the sensor 10 to output the currently set parameters. Other examples of data that can be exchanged via the universal data buffer are measurement or calibration data.

Die anhand der 2 bis 5 erläuterte universelle Schnittstelle ist nur eine beispielhafte Ausgestaltung, die variiert werden kann. So ist denkbar, jeweils eine eigene universelle Schnittstelle für Methoden und für Parameter zu definieren. Die Datentypen sind nur beispielhaft, insbesondere die Länge des Datenpuffers von 128 Byte, die lediglich nach oben durch die in IO-Link maximal zulässigen 232 Bytes beschränkt ist. Es können mehrere Datenpuffer vorgesehen sein, beispielsweise um Methoden-Übergabeparameter, Methoden-Rückgabewerte und/oder sonstige Daten zu trennen.The basis of the 2 to 5 explained universal interface is just an exemplary embodiment that can be varied. Thus, it is conceivable to define a separate universal interface for methods and for parameters. The data types are only examples, in particular the length of the data buffer of 128 bytes, which is only limited upwards by the maximum permitted 232 bytes in IO-Link. Several data buffers may be provided, for example to separate method transfer parameters, method return values and / or other data.

Abschließend werden noch einige Beispiele möglicher Anwendungsszenarien der universellen Schnittstelle gegeben. Selbstverständlich könnte jedes konkrete Anwendungsszenario auch ohne universelle Schnittstelle in einer maßgeschneiderten IODD abgebildet werden. Das Besondere an der universellen Schnittstelle ist, dass sogar derart komplexe und umfangreiche Änderungen oder Erweiterungen vorgenommen werden können, ohne die IODD neu zu definieren. Das wäre durch herkömmliche Maßnahmen wie das Vorhalten von iSDUs nicht denkbar.Finally, some examples of possible application scenarios of the universal interface are given. Of course, every concrete application scenario could also be mapped without a universal interface in a tailor-made IODD. The special feature of the universal interface is that even such complex and extensive changes or enhancements can be made without redefining the IODD. This would be inconceivable by conventional measures such as the provision of iSDUs.

In einer ersten Anwendung sollen die Rohdaten des Sensors 10 in Form einer Messkurve, beispielsweise ein zeitlicher Amplitudenverlauf ausgegeben werden. Der Umfang solcher Messkurven überschreitet schnell die zulässigen 232 Bytes. Anstatt nun wie herkömmlich mehrere iSDUs fest in der IODD zu definieren, die insgesamt in Abschnitten von maximal 232 die Messkurve aufnehmen können, wird eine Methode implementiert, welche die Messkurve zwischenspeichert und abschnittsweise in den universellen Datenpuffer kopiert. Dabei kann die Methode entweder mit gewissen Zeitverzögerungen, die ein Auslesen durch den Kommunikationspartner 18 ermöglichen, neue Abschnitte in dem Datenpuffer bereitstellen, oder sie kopiert bei Aufruf den jeweils nächsten Abschnitt in den Datenpuffer. Sicherheitshalber kann jeder Abschnitt mit einer Kennung versehen werden, um welchen Teil der Messkurve es sich handelt. Die Methode selbst wird über invokeAction aufgerufen, und der Bedarf einer solchen Funktion muss daher zum Zeitpunkt der Definition der IODD in keiner Weise vorhergesehen oder vorbereitet worden sein.In a first application, the raw data of the sensor 10 in the form of a measurement curve, for example, a temporal amplitude curve are output. The extent of such traces quickly exceeds the allowable 232 bytes. Instead of defining several iSDUs in the IODD as usual, which can record the measurement curve in a maximum of 232 sections, a method is implemented which temporarily stores the measurement curve and copies it in sections into the universal data buffer. The method can either with certain time delays, the read by the communication partner 18 allow to provide new sections in the data buffer, or it will copy the next section into the data buffer when called. For safety's sake, each section can be provided with an identifier, which part of the trace is concerned. The method itself is called via invokeAction, and therefore the need for such a function need not have been foreseen or prepared in any way at the time of defining the IODD.

In einer weiteren Anwendung soll die Möglichkeit gegeben werden, Messwerte einer bestimmten Verarbeitung zu unterziehen, beispielsweise einer Linearisierung. Eine entsprechende Aktion, die erneut über invokeAction ausgelöst wird, führt die notwendigen Berechnungen aus oder passt die Messwerte mit einer Tabelle (LUT, LookUp Table) an.In another application, the possibility should be given to subject measured values to a specific processing, for example a linearization. A corresponding action, which is triggered again via invokeAction, carries out the necessary calculations or adjusts the measured values with a table (LUT, LookUp Table).

In nochmals einer weiteren Anwendung werden interne Debug-Daten des Sensors 10 zyklisch über den universellen Datenpuffer ausgegeben. Um den Kommunikationsoverhead zu reduzieren und die Datenausgabe zu optimieren, können nach Auslösen der entsprechenden Aktion zyklisch Debugdaten auf dem Datenpuffer aktualisiert werden, ohne dass eine neue Datenanforderung stattfinden muss. Um die Gültigkeit der Daten sicherzustellen, ist es denkbar, zusätzlich noch eine Zeitinformation, etwa ein TimeStamp der realen Uhrzeit oder eines internen Zeitzählers mit auszugeben. Erneut kann diese Aktion als generische Methode über invokeAction ausgelöst werden.In yet another application, internal debug data from the sensor 10 cyclically output via the universal data buffer. In order to reduce the communication overhead and to optimize the data output, debugging data can be cyclically updated on the data buffer after a corresponding action has been triggered without a new data request having to take place. In order to ensure the validity of the data, it is conceivable to additionally output a time information, such as a time stamp of the real time or an internal time counter. Again, this action can be triggered as a generic method via invokeAction.

Diese Anwendungen können auch nur bestimmten Personenkreisen zugänglich gemacht werden, wie ausgewählten Anwendern oder Wartungspersonal. Die universelle Schnittstelle erleichtert solche Varianten erheblich.These applications can also be made available only to certain groups of people, such as selected users or maintenance personnel. The universal interface considerably facilitates such variants.

Wie aus diesen Beispielen klar wird, können ohne Anpassung der IODD beziehungsweise der IO-Link-Schnittstelle zusätzliche Parameter gelesen oder geschrieben werden, und es können neue, versteckte, kundenspezifische oder Debug-Features realisiert werden. Außerdem kann die universelle Schnittstelle auch außerhalb des eigentlichen Betriebs des Sensors 10 genutzt werden, etwa in der Produktion zum Testen, Parametrieren oder Kalibrieren.As is clear from these examples, additional parameters can be read or written without adapting the IODD or the IO-Link interface, and new, hidden, customer-specific or debug features can be implemented. In addition, the universal interface can also outside the actual operation of the sensor 10 be used in production for testing, parameterization or calibration.

Es gibt spezielle Implementierungen einer IO-Link-Schnittstelle für einfache oder sehr kleine Sensoren 10, die nur einen kleineren Parameterumfang Umfang erlauben, d. h. die Anzahl der iSDUs stark begrenzen. Die universelle Schnittstelle erlaubt hier komplexere Abläufe auch über die beschränkte, einfache IO-Link-Schnittstelle und damit einen ressourcenschonenden Einsatz auch in derartigen Sensoren.There are special implementations of an IO-Link interface for simple or very small sensors 10 , which allow only a smaller parameter scope extent, ie the number of iSDUs severely limit. The universal interface also allows more complex processes via the limited, simple IO-Link interface and thus a resource-saving use even in such sensors.

Claims (10)

IO-Link-fähiger Sensor (10) mit einer Sensoreinheit (12) zur Erfassung mindestens einer Messgröße sowie mit einer Steuer- und Auswertungseinheit (14) zur Steuerung eines Messablaufs der Sensoreinheit (12) und zur Weiterverarbeitung der Messgröße, wobei der Sensor (10) weiterhin eine IO-Link-Schnittstelle (14, 16) aufweist, über welche die Steuer- und Auswertungseinheit (14) mit einem externen Kommunikationspartner (18) kommuniziert, wobei die IO-Link-Schnittstelle (14, 16) anhand einer gemäß IO-Link als IO-Link Device Description (IODD) standardisierten Gerätebeschreibung definiert ist, dadurch gekennzeichnet, dass in der Steuer- und Auswertungseinheit (14) innerhalb des IO-Link-Standards eine Methode aufrufbar ist, die in der Gerätebeschreibung nicht festgelegt ist, indem in der Gerätebeschreibung ein generischer Methodenaufruf spezifiziert ist, der die Methode erst indirekt anhand eines übergebenen Parameters selektiert, und/oder dass in der Gerätbeschreibung ein Datenpuffer spezifiziert ist, auf den die Steuer- und Auswertungseinheit (14) zugreift, wobei in der Gerätebeschreibung nicht festgelegt ist, welche Bedeutung die Daten haben, die in dem Datenpuffer abgelegt oder daraus abgerufen werden.IO-Link-capable sensor ( 10 ) with a sensor unit ( 12 ) for detecting at least one measured variable and with a control and evaluation unit ( 14 ) for controlling a measuring sequence of the sensor unit ( 12 ) and for further processing of the measured variable, wherein the sensor ( 10 ) an IO-Link interface ( 14 . 16 ), via which the control and evaluation unit ( 14 ) with an external communication partner ( 18 ), whereby the IO-Link interface ( 14 . 16 ) is defined on the basis of a device description standardized according to IO-Link as IO-Link Device Description (IODD), characterized in that in the control and evaluation unit ( 14 ) within the IO-Link standard, a method can be called which is not specified in the device description by specifying in the device description a generic method call which only indirectly selects the method based on a transferred parameter, and / or in the device description Data buffer to which the control and evaluation unit ( 14 ), wherein the device description does not specify the meaning of the data stored in or retrieved from the data buffer. Sensor (10) nach Anspruch 1, wobei in der Gerätebeschreibung eine Statusabfrage für den generischen Methodenaufruf spezifiziert ist, wobei die Steuer- und Auswertungseinheit (14) die Statusabfrage mit einem in der Gerätebeschreibung nicht festgelegten Wert belegt.Sensor ( 10 ) according to claim 1, wherein in the device description a status query for the generic method call is specified, wherein the control and evaluation unit ( 14 ) occupies the status query with a value not specified in the device description. Sensor (10) nach Anspruch 1 oder 2, wobei die Steuer- und Auswertungseinheit (14) dafür ausgebildet ist, über den generischen Methodenaufruf eine Funktion auszulösen, die abschnittsweise eine Messkurve in dem Datenpuffer bereitstellt.Sensor ( 10 ) according to claim 1 or 2, wherein the control and evaluation unit ( 14 ) is designed to trigger a function via the generic method call, which provides a measurement curve in the data buffer in sections. Sensor (10) nach einem der vorhergehenden Ansprüche, wobei die Steuer- und Auswertungseinheit (14) dafür ausgebildet ist, über den generischen Methodenaufruf eine Funktion auszulösen, die zyklisch Zustands- oder Debuginformationen in dem Datenpuffer bereitstellt.Sensor ( 10 ) according to one of the preceding claims, wherein the control and evaluation unit ( 14 ) is adapted to trigger, via the generic method call, a function that cyclically provides state or debug information in the data buffer. Sensor (10) nach einem der vorhergehenden Ansprüche, wobei die Steuer- und Auswertungseinheit (14) dafür ausgebildet ist, über den generischen Methodenaufruf eine Funktion auszulösen, die erst nachträglich bei schon festgelegter Gerätebeschreibung implementiert wurde.Sensor ( 10 ) according to one of the preceding claims, wherein the control and evaluation unit ( 14 ) is designed to trigger a function via the generic method call, which has been implemented later with an already defined device description. Sensor (10) nach einem der vorhergehenden Ansprüche, wobei die Steuer- und Auswertungseinheit (14) dafür ausgebildet ist, über den generischen Methodenaufruf eine Funktion auszulösen, die versteckt ist, die eine Debug-Funktion oder die eine kundenspezifische Funktion ist.Sensor ( 10 ) according to one of the preceding claims, wherein the control and evaluation unit ( 14 ) is adapted to trigger, via the generic method call, a function that is hidden, which is a debug function or a custom function. Sensor (10) nach einem der vorhergehenden Ansprüche, wobei die Steuer- und Auswertungseinheit (14) dafür ausgebildet ist, über den Datenpuffer gesetzte oder zu setzende Parameter, Diagnosedaten und/oder Messwerte auszutauschen.Sensor ( 10 ) according to one of the preceding claims, wherein the control and evaluation unit ( 14 ) is adapted to exchange over the data buffer set or set parameters, diagnostic data and / or measured values. Sensor (10) nach einem der vorhergehenden Ansprüche, der je einen Datenpuffer für die Kommunikation zum Sensor (10) hin und aus dem Sensor (10) heraus aufweist.Sensor ( 10 ) according to one of the preceding claims, each having a data buffer for communicating with the sensor ( 10 ) to and from the sensor ( 10 ) out. Sensor (10) nach einem der vorhergehenden Ansprüche, der ein Sensor für die Prozessmesstechnik ist.Sensor ( 10 ) according to one of the preceding claims, which is a sensor for process measurement technology. Verfahren zum Kommunizieren mit einem IO-Link-fähigen Sensor (10), der eine Sensoreinheit (12) zur Erfassung mindestens einer Messgröße, eine Steuer- und Auswertungseinheit (14) zur Steuerung eines Messablaufs der Sensoreinheit (12) und zur Weiterverarbeitung der Messgröße und eine IO-Link-Schnittstelle (14, 16) aufweist, über die mit dem Sensor (10) kommuniziert wird, wobei die IO-Link-Schnittstelle (14, 16) anhand einer gemäß IO-Link als IO-Link Device Description (IODD) standardisierten Gerätebeschreibung definiert ist, dadurch gekennzeichnet, dass in dem Sensor (10) innerhalb des IO-Link-Standards eine Methode aufgerufen wird, die in der Gerätebeschreibung nicht festgelegt ist, indem in der Gerätebeschreibung ein generischer Methodenaufruf spezifiziert ist, der die Methode erst indirekt anhand eines übergebenen Parameters selektiert, und/oder dass Daten über einen Datenpuffer in den Sensor (10) geschrieben oder aus dem Sensor (10) gelesen werden, wobei der Datenpuffer in der Gerätbeschreibung nur generisch spezifiziert ist und erst durch den Zugriff auf den Datenpuffer während der Kommunikation bestimmt wird, welche Bedeutung die Daten haben, die in dem Datenpuffer abgelegt oder daraus abgerufen werden.Method for communicating with an IO-Link-capable sensor ( 10 ), which has a sensor unit ( 12 ) for detecting at least one measured variable, a control and evaluation unit ( 14 ) for controlling a measuring sequence of the sensor unit ( 12 ) and for further processing of the measured variable and an IO-Link Interface ( 14 . 16 ), via which with the sensor ( 10 ), whereby the IO-Link interface ( 14 . 16 ) is defined on the basis of a device description standardized according to IO-Link as IO-Link Device Description (IODD), characterized in that in the sensor ( 10 ) within the IO-Link standard, a method is called that is not specified in the device description, in that a generic method call is specified in the device description, which first indirectly selects the method based on a transferred parameter, and / or data via a data buffer in the sensor ( 10 ) or from the sensor ( 10 ), the data buffer being specified only generically in the device description, and it is only by accessing the data buffer during the communication that it is determined how important the data stored in or retrieved from the data buffer is.
DE102016114600.5A 2016-08-05 2016-08-05 IO-Link capable sensor and method of communication Active DE102016114600B3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102016114600.5A DE102016114600B3 (en) 2016-08-05 2016-08-05 IO-Link capable sensor and method of communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102016114600.5A DE102016114600B3 (en) 2016-08-05 2016-08-05 IO-Link capable sensor and method of communication

Publications (1)

Publication Number Publication Date
DE102016114600B3 true DE102016114600B3 (en) 2017-12-14

Family

ID=60419903

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016114600.5A Active DE102016114600B3 (en) 2016-08-05 2016-08-05 IO-Link capable sensor and method of communication

Country Status (1)

Country Link
DE (1) DE102016114600B3 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019102568A1 (en) * 2019-02-01 2020-08-06 Endress + Hauser Wetzer Gmbh + Co. Kg Data transmission method
EP4369117A1 (en) * 2022-11-14 2024-05-15 Leuze electronic GmbH + Co. KG Safety arrangement

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2187571B1 (en) * 2008-11-12 2011-06-15 VEGA Grieshaber KG Generating a device description for a measuring device
DE102014114692A1 (en) * 2013-10-28 2015-04-30 Maxim Integrated Products, Inc. Systems and methods for securing industrial sensors and actuators

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2187571B1 (en) * 2008-11-12 2011-06-15 VEGA Grieshaber KG Generating a device description for a measuring device
DE102014114692A1 (en) * 2013-10-28 2015-04-30 Maxim Integrated Products, Inc. Systems and methods for securing industrial sensors and actuators

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019102568A1 (en) * 2019-02-01 2020-08-06 Endress + Hauser Wetzer Gmbh + Co. Kg Data transmission method
EP4369117A1 (en) * 2022-11-14 2024-05-15 Leuze electronic GmbH + Co. KG Safety arrangement

Similar Documents

Publication Publication Date Title
EP1523826B1 (en) Bus station with an integrated bus monitor function
EP2247987A1 (en) Method for operating a field device
EP2181367B1 (en) Method for operating a field device for process automation having at least two measurement channels and field device for process automation having at least two measurement channels and suitable for performing said method
EP2486464A2 (en) Method for operating a field bus interface
DE102008045841A1 (en) Method for operating a measuring point
DE102007049523A1 (en) System for process automation with a large number of intelligent sensors and a method for calibrating the sensors
DE102008053105A1 (en) Device and method for data transmission between a position measuring device and a subsequent electronics
DE102014101945A1 (en) Transmitter with monitoring function
DE102016114600B3 (en) IO-Link capable sensor and method of communication
DE102012200592A1 (en) Method and device for determining a state of a sensor
WO2003056423A2 (en) Automated method for generating program modules used for controlling field devices
DE102009046041A1 (en) Field device e.g. level indicator, operating arrangement for use in process automation system, has controlling unit and field devices performing cyclic or acyclic data communication, where field devices include extended functionality
DE102014112226A1 (en) Method for transmitting field device data
DE202016104342U1 (en) IO-Link-capable sensor
DE102012016406A1 (en) Method for parameterizing a field device and corresponding system for parameterization
DE102008042919A1 (en) Field devices for process automation device, have field bus interface, and are formed for communication of fieldbus-protocol, where field devices have also field-device-specific device identification that is specific for field-device-type
EP2631604B1 (en) Position measuring device
DE102011075764A1 (en) Evaluation device for analysis of parameters of field device used in industry, has evaluation unit that determines parameters whose values are outside a range of parameter standard, and causes separate output of determined parameters
DE102017128903A1 (en) Network of automation technology
EP2682865B1 (en) Method for communicating with a control programme of a control device and application modules for same
EP2618114B1 (en) Retrieval of measurement values, diagnosis information or device parameters
DE102005057000B4 (en) Fieldbus device for use in fieldbus systems, in particular in process control systems
DE102020109093A1 (en) Procedure for checking the reliable function of an automation process within an IO-Link system
DE102016114134A1 (en) Data acquisition device with automatic configuration generation
LU503109B1 (en) Master, coupler and slave for a communication network

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0029060000

Ipc: H04L0065000000