Method for extending an embedded software component of a field device (F), wherein an extending software component is loaded into a memory of the field device (F), wherein by means of the extending software component at least one supplemental application function is provided for the field device (F), and wherein the embedded software component and the extending software component interact, in order to execute the supplemental application function.

Patent
   10255060
Priority
Aug 06 2013
Filed
Jul 07 2014
Issued
Apr 09 2019
Expiry
Jul 07 2034
Assg.orig
Entity
Large
0
82
currently ok
14. A field device having a processor, comprising:
an embedded software component;
an extending software component loadable into the field device; said extending software component serves for performing at least one supplemental application function of the field device and said embedded software component and said extending software component interact, in order to execute the supplemental application function, wherein:
the field device is connected with a servicing device, which contains the extending software component, a component serving for encryption and authentification connected with a communication driver; and
said extending software component is fed to the component serving for encryption and authentification and transmitted from the servicing device to the field device.
1. A method for extending an embedded software component of a field device, comprising the steps of:
loading an extending software component into a memory of the field device;
providing by means of the extending software component at least one supplemental application function for the field device; and
interacting the embedded software component and the extending software component, in order to execute the supplemental application function, wherein:
said embedded software component is embodied to ascertain a presence of said extending software component and to adapt the program execution in order to execute said function contained in said extending software component;
the field device is connected with a servicing device, which contains the extending software component, a component serving for encryption and authentification connected with a communication driver; and
the extending software component is fed to the component serving for encryption and authentification and transmitted from the servicing device to the field device.
15. A file type embedded in a memory for extending an embedded software component of a field device, the extension comprising the steps of: loading an extending software component into a memory of a filed device; providing by means of the extended software component at least one supplemental application function for the field device; and interacting the embedded software component and the extending software component, in order to execute the supplemental application function, wherein said embedded software component is embodied to ascertain a presence of said extending software component and to adopt the program execution in order to execute said function contained in said extending software component; the field device is connected with a servicing device, which contains the extending software component, a component serving for encryption and authentication connected with a communication driver, and the extending software component is fed to the component serving for encryption and authentification and transmitted from the servicing device to the field device, said file type is loadable into a field device, and said file type contains an extending software component, which serves for providing a supplemental application function for the field device.
2. The method as claimed in claim 1, wherein:
said at least one supplemental application function processes process-relevant data, especially field device referenced data and/or measurement data.
3. The method as claimed in claim 1, wherein:
the embedded software component and the extending software component interact by means an interface component, in order to execute said at least one supplemental application function, especially a processing of field device referenced data and/or measurement data.
4. The method as claimed in claim 1, wherein:
the embedded software component is present in a first format, especially a machine-readable format.
5. The method as claimed in claim 4, wherein:
the extending software component is present in a second format, which differs from the first format.
6. The method as claimed in claim 1, wherein:
the extending software component provides said at least one supplemental application function and/or additional application data.
7. The method as claimed in claim 1, wherein:
the embedded software component is the firmware of the field device.
8. The method as claimed in claim 7, wherein:
the firmware includes a boot loader, an operating system and an application software.
9. The method as claimed in claim 7, wherein:
the embedded software component operates the hardware of the field device.
10. The method as claimed in claim 1, wherein:
the extending software component is composed of first and second subcomponents, the first subcomponent includes data in the form of a meta-language, and the second subcomponent includes data in the form of a scripting language.
11. The method as claimed in claim 3, wherein:
the interface component includes an interface element in the form of a parser for processing a first subcomponent.
12. The method as claimed in claim 11, wherein:
the interface component includes an interface element in the form of an interpreter for processing a second subcomponent.
13. The method as claimed in claim 3, wherein:
the interface component includes an interface element in the form of an object model(-interface), by means of which the embedded software component can access application data of a first subcomponent and/or an application function of a second subcomponent.
16. The file type as claimed in claim 15, wherein:
the file type contains a first subcomponent and/or a second subcomponent of the extending software component.
17. The file type as claimed in claim 15, wherein:
said first subcomponent is data in the form of a meta-language and/or wherein said second subcomponent is a scripting language.

The invention relates to a method for extending an embedded software component of a field device. Furthermore, the invention relates to a field device, a file type, a data carrier and a data stream.

Known from the state of the art, as represented, for example, by German application DE 102006005365 A1, are methods for updating the firmware of a field device. German application DE 102005018910 A1 discloses a method for equipping a software controlled device with new software code. In such case, an old version of the software is completely replaced by a new version.

Disadvantageous, in such case, is that always a complete version of the software must be transferred to the field device and stored there. This causes a higher data loading of a communication connection to the field device and a greater memory requirement in the field device. This is, however, contrary to the well-known scarcity of resources typically existing in automation technology and its field devices.

Additionally, it is not possible to expand just individual functions of a field device without completely replacing the existing firmware.

An object of the invention is to enable a flexible adapting of a field device and its functions.

The object is achieved according to the invention by a method, a field device, a file type, a data carrier and a data stream.

As regards the method, the object is achieved by a method for extending an embedded software component of a field device, wherein an extending software component is loaded into a memory of the field device, wherein by means of the extending software component at least one supplemental application function is provided for the field device, and wherein the embedded software component and the extending software component interact, in order to execute the supplemental application function.

In industrial plants, so-called field devices are often applied for controlling and/or monitoring a process running in the plant. A field device can be, for example, a sensor, an actuator, a display unit, a gateway or some other process-near component.

Such field devices are currently operated via an embedded software component, also referred to as embedded software. I.e., this software component is specifically matched to the hardware of the respective field device, in order to execute the functions of the field device, thus especially functions, which concern the operation of the field device. The embedded software component can also execute functions going beyond that, such as functions typical for application software. Such application software is typically also part of the embedded software component, which is, for example, the firmware of the field device.

While the embedded software component is thus at least responsible for the operation of the field device per se, the embedded software component can also contain application software, which thus serves to execute a function or a number of functions, which delivers or deliver, especially calculates or calculate and/or, for example, displays or display on a display unit of the field device, additional process relevant information.

By means of the extending software component, a supplemental function or a number of supplemental functions can be executed by the field device. Moreover, the extending software component can serve also to supplement or to replace functions of the embedded software component.

In a form of embodiment of the method, the supplemental application function processes process-relevant data, especially field device referenced data and/or measurement data. The field device referenced data can be, for example, parameters of the field device, which are, for example, already provided in the embedded software component and/or which are contained in the extending software component.

Thus, it is, for example, possible that, based on improved evaluating methods, other or more exact statements concerning a state of the field device or the reliability of the measured value can be made, wherein these findings are provided by the supplemental functions. For example, the application software can provide supplemental functions, such as, for example, in the case a fill level measuring device, an envelope curve.

In an additional form of embodiment of the method, the embedded software component and the extending software component interact by means of an interface component, in order to execute the supplemental application function, especially a processing of field device referenced data and/or measurement data. Thus, for example, a memory range can be provided, which contains the embedded software component, while the interface component enables data exchange or data processing between the embedded software component and the extending software component. For example, the embedded software component can be so formed that the presence of an extending software component is ascertained and, in given cases, program execution so adapted that the function contained in the extending software component is executed.

In an additional form of embodiment of the method, the embedded software component is present in a first, especially machine-readable, format. For example, the machine-readable format can be an assembler code or a binary code or a hex code.

In an additional form of embodiment of the method, the extending software component is present in a second format, which differs from the first format. The second format is a programming code, which exists, for example, in XML format.

In an additional form of embodiment of the method, the extending software component provides a supplemental application function and/or additional application data.

In an additional form of embodiment of the method, the embedded software component is the firmware of the field device.

In an additional form of embodiment of the method, the firmware includes a boot loader, an operating system and the application software. The extending software component can then, for example, provide a supplemental function of bootloader, of the operating system and/or a supplemental function of the application software of the field device.

In an additional form of embodiment of the method, the embedded software component operates the hardware of the field device.

In an additional form of embodiment of the method, the extending software component is composed of first and second subcomponents, wherein the first subcomponent includes data in the form of a meta-language, for example, XML, and the second subcomponent includes data in the form of a scripting language, for example, JavaScript.

In an additional form of embodiment of the method, the interface component includes an interface element in the form of a parser for processing the first subcomponent.

In an additional form of embodiment of the method, the interface component includes a first interface element in the form of an interpreter for processing the second subcomponent.

In an additional form of embodiment of the method, the interface component includes a second interface element in the form of an object model, by means of which the embedded software component can access application data of the first subcomponent and/or an application function of the second subcomponent.

Both the first as well as also the second interface element can additionally make use of a connection to the embedded software, on the one hand, and to the extending software component, on the other hand.

As regards the field device, the object is achieved by a field device comprising an embedded software component, wherein an extending software component is loadable into the field device, wherein the extending software component serves for performing at least one supplemental application function of field device, and wherein the embedded software component and the extending software component interact, in order to execute the supplemental application function.

The application function can, in such case, refer to the application software, which, for example, is part of the embedded software component. The application software can, however, also serve for operating the hardware of the field device.

As regards the file type, the object is achieved by a file type for extending an embedded software component of a field device, which file type is loadable into a field device, and which file type contains an extending software component, which serves for providing a supplemental application function for the field device.

In a form of embodiment of the file type, the file type contains a first subcomponent and/or a second subcomponent of the extending software component. The subcomponents can be the above mentioned subcomponents for providing data, respectively functions.

In a form of embodiment of the file type, the first subcomponent is data in the form of a meta-language and/or the second subcomponent is a scripting language.

As regards the data carrier, the object is achieved by a data carrier having a file type according to one of the preceding forms of embodiment.

As regards the data stream, the object is achieved by a data stream of a file type according to one of the forms of embodiment.

The invention will now be explained in greater detail based on the appended drawing, the figures of which show as follows:

FIG. 1 a schematic representation of a field device and a service device connected therewith,

FIG. 2 a program code example of a first subcomponent of the extending software component, and

FIG. 3 a program code example of a second subcomponent of the extending software component.

FIG. 1 shows a schematic representation of a field device F, which is connected via a digital communication connection 400, with a servicing device S. The field device F can, for example, especially for the purpose of data transmission, be connected to the communication connection 400 and with the servicing device S.

The field device F includes an embedded software component 201, which contains parameters(values) and functions, in order, for example, to control the hardware of the field device and/or to calculate field device referenced data or measured values. This embedded software component 201 is connected, for example, via a field device internal data bus, with a sensor 104, respectively a sensor interface, so that, for example, preprocessed measured values or generally sensor referenced data or a measurement signal issued by the sensor 104 can be exchanged between the sensor 104 and the embedded software component 201. The embedded software component is implemented, as regards hardware, for example, in the form of a microprocessor 101 or a microcontroller.

In FIG. 1, the hardware components of the field device are designated with the reference character 100, while the software components of the field device F are designated with the reference character 200 and grouped within the dashed line.

The embedded software component 201 can also be connected with other components of the field device F, such as, for example, a display unit 103. The data connection with the sensor 104, respectively the sensor interface, can also be only a unidirectional data connection, in the case of which data, respectively a measurement signal, can be transmitted only in one direction, i.e. from the sensor 104 to the embedded software component 201.

The embedded software component 201 serves thus for controlling the hardware and for performing functions of the field device, such as, for example, displaying on the display unit or processing a measurement signal delivered from a sensor.

The embedded software component 201 can additionally be directly connected with a software component in the form of communication driver 230. Alternatively, this communication driver can also be integrated into the embedded software component 201. In this day and age, it is, however, known to deploy the communication driver, for example, via a fieldbus, to hardware serving mainly for communication.

The communication driver 230 serves to transmit, respectively to receive, data to and from the field device F via the communication connection 400, which is, for example, a fieldbus. As regards hardware, this is executed by a communication interface 102.

In the form of embodiment in FIG. 1, the communication driver 230 is connected with a software component 220 serving for encryption and/or authentication and parallel thereto with the embedded software component 201.

By means of the communication driver 230, thus, data received via the communication interface 102 can be written into a memory unit provided for storing a first subcomponent 301a and a second subcomponent 302a of an extending software component. Alternatively thereto, the software components 301a, 302a can also be omitted and/or the extending software component can have only one subcomponent.

The first subcomponent 301a can be, for example, additional data, which are provided to the field device F, respectively to the embedded software component. 201 and an application software contained therein. In this regard, a first data format, such as, for example, XML, can be utilized.

The second subcomponent 302a, on the other hand, can contain, for example, a supplemental application function, which supplements or replaces the function of the embedded software component 201. For such purpose, for example, a second data format, such as, for example, a programming language, especially JavaScript, can be present.

Alternatively, only one of the two subcomponents 301a, 302a can be provided or the two subcomponents can be joined to one.

For preprocessing, respectively for interpreting, the data contained in the subcomponents 301a, 302a, on the one hand, a parser 211 is provided, which serves for processing the first subcomponent 301a into data readable by an interface component 203. Interface component 203 serves for data exchange between the parser 211, respectively the first subcomponent 301a, and the embedded software component 201 and the therein contained application function(s).

Additionally, an interface component 204 can be provided, which provides the functions of the second subcomponent 302a by means of an object model of the embedded software component 201. This interface component 204 is connected with an interpreter 212, which, in turn, is connected with the second subcomponent 302a, in which according to the example of an embodiment in FIG. 1 a JavaScript code is contained. The embedded software component processes the data provided by the parser, respectively the interpreter, and thus executes the function defined thereby. The result of performing the function can then be transmitted via the communication interface 102 of the field device to the servicing device S or to a superordinated unit.

Thus, the embedded software component 201 of the field device F can, on the one hand, be provided with functions and, on the other hand, with additional data

By means of the embedded software component 201, it is possible therewith in the course of operating a field device F subsequently also to add supplemental functions.

As already mentioned, the field device has a communication connection with a servicing device S. The first and second software components 301, 302 can be kept in this servicing device S for transmission to the field device F. In such case, it is a copy of the extending software component 301a, 302a that is sent to the field device.

Thus, certain additional data and/or functions can be transmitted to the field device in the form of a first and/or a second subcomponent 301a, 302a of an extending software component, for example, upon a customer request or due to an arisen need in the plant, in which the field device F is installed, or in view of a new software version.

The extending software component 301a, 302a can be stored in the form of a file, for example, on a data carrier. In such case, the first subcomponent 301a of the extending software component can be provided in a first data format and the second subcomponent 302a in a second data format.

These subcomponents 301a, 302a can be fed to a component serving for encryption and authentication. This subcomponent 221, which is optionally provided, is, in turn, connected with a communication driver 231, which serves for data transmission via the communication connection 400. Therefore, data can be transmitted from the servicing device 500 to the field device or received by the servicing device 500 from the field device. In FIG. 1, in such case, the software components of the service device 500 are contained within a dashed line.

FIG. 2 shows an example of a first subcomponent 301, 301a of the extending software component, which is present in the XML data format. The extending software component can, in such case, be divided into different classes, here “class=“3””. For the different classes, which essentially reflect different application scenarios of the invention, see below. In the present case, the subcomponent 301, 301a contains specifications as regards the validity of the subcomponent as a function of the sensor with which it can be used. Here, the subcomponent should be valid and applicable only in connection with sensors of a certain type, here types “27” and “289”.

The additional parameters relate to the process medium. In the present case, one distinguishes, by way of example, between water, oil, and vinegar.

Additionally, handbook information “manual extension” concerning these parameters is to be loaded into the field device. In FIG. 2, this is the information belonging to these parameters concerning the predictive maintenance of the sensor as a function of the process medium.

Instead of the XML format used here, also other data formats can be used.

FIG. 3 shows an example of a second subcomponent 302, 302a of an extending software component. This subcomponent 302, 302a contains, in the form of JavaScript code, supplemental functions, which can be executed by a field device. Instead of JavaScript code, also other programming languages can be used, such as, for example, the EDDL familiar in process automation.

In the present example, the second subcomponent 302, 302a contains a diagnostic function “function diagnosis ( )”, which is not specified in greater detail here. In the example of an embodiment in FIG. 3, the diagnostic function obtains the parameters “fDevObjModel.hours”, “fdevObjModel.id_proc_med” and “fDevObjModel.id_proc_temp”, thus parameters, which specify the number of operating hours of the field device, the process medium and the process temperature. The corresponding parameters for the process medium and the process temperature are contained in the first subcomponent 301, 301a of the extending software component.

The embedded software component 201 of the field device can thus now execute supplementally to the previous functions also the present diagnostic function. Instead of the here discussed example of a sensor, the extending software component can also serve for extending functions of an actuator, such as a, for example, a valve, or for extending functions of a display unit or even a gateway. Thus, the invention provides the ability to extend data and functions of a field device.

The invention can thus also be applied to perform a state monitoring (condition monitoring) of the state of a field device F. Especially, a state monitoring already implemented in a field device F can, for example, be adapted to new findings as regards wear or probability of failure.

Furthermore, the invention can be applied to adapt a calibrating of the field device F (to supplemental parameters desired in the future). Additionally, the invention can be applied in the case of a field device replacement or in order to optimize the process in a plant. This, in turn, can then lead to a savings of installed resources, for example, in the form of less energy consumption, less waste products, or less CO2 production.

In such case, a number of scenarios for extending the embedded software component 201 can occur. The extending, for example, in the form of parameters, cannot be interpreted by the embedded software component 201, but, instead, is processed by other instances, such as, for example, a servicing device S or a superordinated unit. The accessing occurs, however, via the embedded software component 201, such as, for example, the firmware, of the field device F. The information can be, for example, the location coordinates of the field device F and/or encrypted data (which should not be accessible at the field device level anyway).

The data provided by means of the extending software component 301,302, 301a, 302a can in another scenario be shown and edited on a display unit of the field device F. This can be utilized, for example, for parametering the field device (especially as concerns parameters in the extending software component).

In a third scenario, finally, there can be provided by means of the extending software component 301,302, 301a, 302a also other functions, which are then executed by the field device F. In this way, the functionality of the field device F can be expanded. Such can involve, for example, the diagnostic function treated in the example of an embodiment in FIGS. 2 and 3.

The extending software components 301,302, 301a, 302a can also be utilized to integrate a field device with such an extending software component 301,302, 301a, 302a into a control system for controlling a plant.

de Groot, Vincent

Patent Priority Assignee Title
Patent Priority Assignee Title
6850973, Sep 29 1999 Fisher Controls International LLC Downloadable code in a distributed process control system
7072987, Oct 15 2001 Siemens Aktiengesellschaft Method for operating and observing field devices
7124239, Dec 09 2003 Yokogawa Electric Corporation Memory updating system for field device
7707550, Jun 22 2001 Schneider Electric Software, LLC Supervisory process control and manufacturing information system application having an extensible component model
7809811, Mar 09 2005 Qualcomm Incorporated System and method for operator network capable of problem determination and solution deployment
8402192, Aug 10 2007 ENDRESS + HAUSER GMBH + CO KG Modularly constructed field device of process automation technology
8543741, Aug 16 2007 Fisher Controls International LLC Network scanning and management in a device type manager of type device
8627307, Apr 16 2010 Accenture Global Services Limited Extending the functionality of an embedded system
8819656, May 03 2007 ENDRESS & HAUSER DEUTSCHLAND AG +CO KG Method for start-up and/or reconfiguration of a programmable field-device
8881133, Jul 25 2007 Endress + Hauser Flowtec AG Method for servicing a field device of automation technology
20020116453,
20020162014,
20020165677,
20030061274,
20030061349,
20030065459,
20030200349,
20040049295,
20040194101,
20040230323,
20040230899,
20040254648,
20050007249,
20050137719,
20060136899,
20060143493,
20060200658,
20070002045,
20070006238,
20070046467,
20070078530,
20070123249,
20070142934,
20070142939,
20070168057,
20070198749,
20070244584,
20070300150,
20080040452,
20080065753,
20080082180,
20080082294,
20080125879,
20080126555,
20080126679,
20080167839,
20080177513,
20080188972,
20080228908,
20080288933,
20080301270,
20080313254,
20090049207,
20090089247,
20090182437,
20090210921,
20100122245,
20100214036,
20100293539,
20100306436,
20110082569,
20110153089,
20110153846,
20110178650,
20120054541,
20120062577,
20120143586,
20130095864,
20130211754,
20140101653,
CN102222052,
CN1627262,
CN1954276,
CN2774029,
DE102007035158,
DE102008012104,
DE102010062266,
EP102007021099,
EP2096511,
EP2378417,
WO2007149669,
WO2015018579,
//
Executed onAssignorAssigneeConveyanceFrameReelDoc
Jul 07 2014Endress + Hauser Process Solutions AG(assignment on the face of the patent)
Nov 25 2015GROOT, VINCENT DEEndress + Hauser Process Solutions AGASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0377480417 pdf
Date Maintenance Fee Events
Sep 29 2022M1551: Payment of Maintenance Fee, 4th Year, Large Entity.


Date Maintenance Schedule
Apr 09 20224 years fee payment window open
Oct 09 20226 months grace period start (w surcharge)
Apr 09 2023patent expiry (for year 4)
Apr 09 20252 years to revive unintentionally abandoned end. (for year 4)
Apr 09 20268 years fee payment window open
Oct 09 20266 months grace period start (w surcharge)
Apr 09 2027patent expiry (for year 8)
Apr 09 20292 years to revive unintentionally abandoned end. (for year 8)
Apr 09 203012 years fee payment window open
Oct 09 20306 months grace period start (w surcharge)
Apr 09 2031patent expiry (for year 12)
Apr 09 20332 years to revive unintentionally abandoned end. (for year 12)