Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
EXTENSION DEVICE FOR AN AUTOMATION DEVICE
Document Type and Number:
WIPO Patent Application WO/2020/104141
Kind Code:
A1
Abstract:
The invention relates to an extension device (MI) for one or more automation devices (DEV) in an industrial system (100). The invention particularly relates to industrial data processing units (PU) capable of performing data processing based on one or more artificial neural networks. To enable and/or accelerate one or more computations (C1,...,Cn) in an industrial system (100), thereby simplifying the integration of artificial intelligence into the industrial system (100), and to simplify data exchange between an extension device (MI) capable of processing data using artificial intelligence and an automation device (DEV) the invention proposes to obtain (S2) one or more results (R1,...,Rn) of the one or more computations (C1,...,Cn), wherein the results (R1,...,Rn) indicate one or more states (S1,...,Sn) of the industrial system (100) and to provide (S3) the one or more results (R1,...,Rn) via a process state model (PM) shared with the automation device (DEV) to monitor and/or control the industrial system (100).

Inventors:
CLAUSSEN HEIKO (US)
DREWS NORMAN (DE)
FISCHER RENÈ (DE)
FRANK JOHANNES (DE)
MACHER ANDREAS (DE)
SOLER GARRIDO JOSEP (DE)
THON INGO (DE)
Application Number:
PCT/EP2019/079381
Publication Date:
May 28, 2020
Filing Date:
October 28, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AG (DE)
International Classes:
G05B19/05
Foreign References:
EP3255589A12017-12-13
US6779048B22004-08-17
EP0381599A21990-08-08
Other References:
THIJS HANSSEN: "Neurale Processor Unit", WWW.LINKEDIN.COM, 21 November 2018 (2018-11-21), XP055587880, Retrieved from the Internet [retrieved on 20190513]
Download PDF:
Claims:
Patent claims

1. Extension device (MI) for an automation device (DEV) in an industrial system (100), enabling and/or accelerating one or more computations (Cl,...,Cn), operative to:

obtain (S2) one or more results (Rl,...,Rn) of the one or more computations (Cl,...,Cn), wherein the results (Rl,...,Rn) indi¬ cate one or more states (Sl,...,Sn) of the industrial system (100) and

provide (S3) the one or more results (Rl,...,Rn) via a process state model (PM) shared with the automation device (DEV) to monitor and/or control the industrial system (100).

2. Extension device (MI) according to any of the preceding claims, wherein the extension device is a neural processing unit, in particular configured to compute one or more artifi¬ cial neural networks.

3. Extension device (MI) according to any of the preceding claims, operative to apply logic to an intermediate result of the computations (Cl,...,Cn) and/or to the one or more states

(SI,..., Sn) .

4. Extension device (MI) according to any of the preceding claims, operative to update at least parts of the process state model (PM) with one or more of the results (Rl,...,Rn) .

5. Extension device (MI) according to any of the preceding claims, comprising a processing unit (PU) configured to per¬ form the computations (Cl,...,Cn).

6. Extension device (MI) according to any of the preceding claims, comprising a processing unit (PU) adapted to perform at least part of the computations (Cl,...,Cn) with a SIMD- architecture .

7. Extension device (MI) according to any of the preceding claims, comprising a processing unit (PU) based on a neural network accelerating architecture.

8. Extension device (MI) according to any of the preceding claims, comprising a processing unit (PU) designed to provide computations (Cl,...,Cn) with 0,1 or more TOPS/Watt.

9. Extension device (MI) according to any of the preceding claims, operative to obtain industrial data (DATA) via the process state model (PM) .

10. Extension device (MI) according to any of the preceding claims, comprising a control unit (CU) configured to retrieve and/or provide data (ID) from the automation device (DEV) via the process state model (PM) .

11. Extension device (MI) according to any of the preceding claims, comprising a communication interface (Cl) operative to exchange at least parts of the process state model (PM) between the automation device (DEV) and the extension device (MI) .

12. Extension device (MI) according to any of the preceding claims, wherein the process state model (PM) comprises state representations of in- and/or outputs of the automation de¬ vice (DEV) .

13. Extension device (MI) according to any of the preceding claims, further comprising a peripheral connectivity system (PS) operative to provide connectivity to data sources (DS) connected to the extension device (MI) .

14. System (10) comprising one or more automation devices (DEV) and one or more extension devices (MI) according to one of the claims 1 - 13, wherein at least one of the automation devices (DEV) is operative to monitor and/or control an in¬ dustrial system (100) according to one or more results

(Rl...,Rn) of one or more computations (Cl,...,Cn) performed by the one or more of the extension devices (MI), wherein the one or more results (Rl...,Rn) are provided to the automation device (DEV) via a process state model (PM) .

15. Automation device (DEV) operative to control an indus- trial system (100) based on one or more results (Rl...,Rn) of one or more computations (Cl,...,Cn) performed by one or more extension devices (MI) according to claims 1 - 13, wherein the one or more results (Rl...,Rn) are provided to the control ler (DEV) via a process state model (PM) .

16. Method for providing results (Rl,...,Rn) of a computation (Cl,...,Cn) in an industrial system (100), comprising the steps of :

obtaining (S2), by an extension device (MI), one or more re- suits (Rl,...,Rn) of the one or more computations (Cl,...,Cn) wherein the results (Rl,...,Rn) indicate one or more states (Sl,...,Sn) of the industrial system (100) and

providing (S3) the one or more results (Rl,...,Rn) via a pro cess state model (PM) shared with an automation device (DEV) to monitor and/or control the industrial system (100) .

Description:
Description

Extension device for an automation device

The invention relates to an extension device for one or more automation devices in an industrial system. The invention particularly relates to industrial data processing units ca pable of performing data processing based on one or more ar tificial neural networks. The invention further relates to a system, an automation device and a method.

With AI-technology (artificial intelligence technology, also known as machine intelligence) becoming more reliable and ap plications in industrial systems becoming more common, there is a demand for industrial AI equipment. Regular automation devices, such as programmable logic controllers (also known as a PLC) do not have the computing power necessary for AI technology. Cloud-based AI solutions are available but are not easy to implement for shop floor solutions, that is to say, results of a cloud-based AI solution may not be readily available on the shop floor.

The current invention has the object to enable and/or accel erate one or more computations of/in an industrial system, thereby simplifying the integration of artificial intelli gence into the industrial system. It is another object of the present invention to simplify data exchange between an exten sion device capable of processing data using artificial in telligence and an automation device. Computations can com prise calculations.

The problem is solved by an extension device operative to ob tain one or more results of the one or more computations in dicative of one or more states of the automation system. The extension device further is operative to provide the one or more results via a process state model shared with the auto mation device to monitor and/or control the industrial sys tem. Controlling includes but is not limited to actual open or closed loop control, changing set values, limit values, stopping, starting pausing or updating an industrial process.

The extension device can be a physical module that can be mounted, e.g., on a profile rail, next to an automation de vice, e.g. a PLC . The extension device can also be built as a plug-in module for existing automation devices. Integrating the extension device into an automation device is also possi ble, for example with plug-in solutions and/or direct hard ware integration.

The computations are for example computations and/or computa tions of neural networks also called artificial neural net works (ANN) .

The results can be any result of the computations of the ap plication, wherein the computations are carried out on data directly or indirectly originating in the industrial system. The results include but are not limited to classification of events that happened or are about to happen in the industrial system. For example such events could be an unusual pattern showing in the data of e.g. sensors and actors used in a pro duction line or a process automation line. Quality indicators indicating products produced having unusual patterns can also be computed. Unusual patterns can indicate a failure or low quality before the actual event occurs.

Industrial systems are to be understood as for example pro cess industry systems, automation industry systems, building automation systems and the like to be used in a professional industrial environment.

One or more states of the industrial system can be one or more general indicators of the system as a whole, one or more indicators of single entities such as automation controllers, I/O devices, sensors, actors and the like, or states of one or more groups of entities. A state can be a value or other parameter based on at least one of the following: one or more sensed data, one or more predicted data or one or more com puted data. The data thereby can be indicative of the state of the described entity. For example: a motor is an actor which comprises one or more of the following states: rota tional speed, torque, temperature, current, voltage, health status, running hours, maintenance indicators, .... Each of those states having the possibility of being divided into sub-states, for example the temperature can be a rotor tem perature, a stator temperature or a median overall motor tem perature. The states can also be states of a product produced in the industrial system e.g. a quality indicator. In a pos sible embodiment one or more of the states can be binary, e.g. 1 for: the product qualifies as fulfilling all quality requirements and 0 for: the product does not qualify for fur ther processing and therefore has to be disposed or repaired.

The process state model generally is a data structure shared between the automation device and the extension device, ena bling the automation device to directly use the results pro vided by the extension device. The process state model pref erably comprises actual representation of one or more, pref erably all, current states used by the automation device to control and/or monitor the industrial system. In an exemplary implementation the process state model represents a binary representation of input and output devices. A form of a pro cess state model is known as process image or in German

"Prozessabbild" commonly used and known in PLCs . The process state model serves as an intermediate storage for the states that are required to control and/or monitor the industrial system. This has the advantage that the inputs and/or outputs do not have to be read in from or written into the registers when executing a certain function in the program.

The current invention has shown that communicating via a pro cess state model is advantageous for exchanging data between the extension device, e.g. a neural processing unit, and the automation device. This comprises but is not limited to re turning the one or more results of the one or more computa- tions from the extension device via the process state model to the automation device. The automation device can access the results exchanged via the process state model directly and does not have to access a different API for communicating with the extension device. The engineering of such a communi cation is thereby simplified and focused on the processes and needed in any way for including any other module. The engi neering therefore does not have to create a separate custom interface .

The process state model as a whole or parts of it can be up dated periodically triggered by events like interrupts or can be updated partly periodically and partly event-triggered .

Regarding security and/or safety measures the process state model can be only partially shared with the extension device, wherein the extension device only has access to data relevant for its computations and also has access to a part of the process state model where the extension device can place its results. Results can be provided as states directly or in raw form for further processing by the automation device. For transmitting large portions of data the process state model can have a "transmission ready" indicator. A side channel can be used to transmit larger portions of data, e.g. via data records .

In a further embodiment the extension device is a neural pro cessing unit. The neural processing unit can be particularly configured to compute one or more artificial neural networks. This enables the use of AI algorithms directly in industrial systems and facilitates the use of AI in industrial environ ments .

In a further embodiment the extension device is operative to obtain the one or more results by applying logic to an inter mediate result of the computations. Actual data from real in dustrial plants in some cases can and/or should be segmented into multiple classes by applying logic. A segmentation can be e.g. achieved by applying "if - then" structures or other more complicated segmentation techniques. The logic can be applied to the raw data before it is provided for the compu tations. Computations can be performed directly on the raw data and afterwards be fed to the logic and further be fed to a further computation. Also the computations can be done first and the logic as a subsequent step before providing the results to the automation device.

In a further embodiment and to provide the results in a con venient way, the extension device is operative to update at least parts of the process state model with one or more of the results. The automation device can use and further pro cess these results without any further delays. Updating the process state model can be implemented by writing variables into the applicable portions of the process state model, overwriting older existing results and/or creating a new part in the process state model to be exchanged between the exten sion device in the automation device. To avoid unnecessary data being transmitted via the communication interface be tween the automation device and the extension device it has proven to be advantageous to define the parts of the process state model which should be updated by the extension device and the automation device respectively.

In a further embodiment the extension device comprises a pro cessor operative to perform the one or more computations to provide the result. In a preferred embodiment the processor is adapted to compute neural networks in an efficient manner, preferably with parallel processing capabilities. The proces sor can comprise one or more processing units, one or more control units, one or more volatile and non-volatile memories and/or one or more peripheral interfaces.

In a further embodiment the extension device comprises a pro cessing unit configured to perform one or more of the compu tations. The processing unit is adapted to perform the compu tations, for example with - compared to the automation devic- es - a higher efficiency and/or a higher speed. The pro cessing unit can comprise a neural network accelerating ar chitecture. These can be specific sub-processors that are specialized on computing convolutions, matrix multiplications and the like. The processing unit can comprise multiple dif ferent or identical of those sub-processors.

In a further embodiment the extension device comprises a pro cessing unit adapted to perform at least part of the computa tions with a SIMD-architecture . SIMD-architecture stands for single instruction, multiple data and describes computers with multiple processing elements that perform the same oper ation on multiple data points simultaneously. Modern pro cessing units specialized for AI purposes have multiple pro cessing cores that are specialized for SIMD-based computa tions. The processing unit can also communicate with a sepa rate control unit that is adapted to run a program to control the SIMD architecture of the processing unit. The processing unit can be part of a processor.

In another embodiment the extension device comprises a pro cessing unit based on a neural network accelerating architec ture. For this purpose the processing unit can comprise a neural network accelerating architecture. This architecture can be specific sub-processors/sub-processing units that are specialized on computing convolutions, matrix multiplications and the like. The processing unit can comprise multiple dif ferent or identical of those sub-processors. The architecture can be part of an integrated processor and/or a SoC.

In a further embodiment the extension device comprises a pro cessing unit designed to provide computations with 0,1 or more TOPS/Watt. TOPS/Watt describes a measure for processing efficiency per energy consumed and is a known parameter de scribing processing power of AI units (also known as NPUs - neural processing units) , Tensor Processing Units and the like. TOPS/Watt stands for tera-operations (10 12 or 10 L 12 op erations) per second per Watt of energy consumed. The proces- sor preferably provides 0,1; 0,5; 1 or 2 or more TOPS/Watt.

It is clear that, while unlimited processing power is not available, a person skilled in the art will select a pro cessing unit or a processor with one or more processing units most suitable for the invention as described in this applica tion. The above values describe processors/processing units currently available (e.g. Intel Movidius Myriad X or Google's Cloud TPUs) which probably will be obsolete as a matter of time. Therefore in the future the person skilled in the art can select future state of the art processing units/proces sors without leaving the scope of the current invention. The use of highly energy efficient processing units has the great advantage of reducing the need for active power dissipation and reducing overall power consumption.

One or more of the features of the above embodiments of pro cessing units can be combined in a single processor and/or processing unit.

In a further embodiment the extension device comprises a pro cessing unit designed to provide computations with a pro cessing speed of at least 10 GFLOPS, preferably 20, 50 or 100 or more GFLOPS of floating point operations per second.

In a further embodiment the extension device is operative to obtain industrial data via the process state model. The in dustrial data can be obtained from the industrial system in an active or passive manner. An active obtaining of the in dustrial data would be requesting the data directly from the automation device and/or data for the devices connected to the automation device. Passively obtaining the data would be reading the data provided by the automation device via the process state model.

In a further embodiment the extension device comprises a con trol unit configured to retrieve and/or provide data from the automation device via the process state model. In this pre ferred embodiment the control unit is a unit that controls the communication via the process state model. This has the advantage that the actual processing unit is relieved of the communication and management overhead and can focus on the actual computations of the results. The control unit can be programmable and can provide an operating system for the ex tension device. The control unit can be configured to control the computations. The control unit can execute an application to control the processing unit to perform the computations. The control unit can implement the orchestration between and configuration of sub systems of the extension device. This includes but is not limited to configuring the extension de vice itself, routing data from the process state model to the applications running in a data processing component. Start ing, stopping and loading applications as well as implement ing communication protocols between the automation device and the extension device. The control unit can also directly in teract with peripheral devices, e.g. send a "take picture" command to a connected camera.

In a further embodiment the extension device comprises a com munication interface operative to exchange at least parts of the process state model between the automation device and the extension device. Preferably the communication interface is designed as a backplane interface for direct communication between the automation device and the extension device. The communication via the process state model can also be applied to other communication technologies such as PROFINET and oth er industrial communication standards. It has proven to be of great advantage to apply an access control mechanism to con trol the access to the common resource, in this case the pro cess state model. One example for a commonly known access control mechanism is the use of semaphores or similar mecha nisms on a hardware basis.

In a further embodiment the process state model comprises state representations of in- and/or outputs of the automation device. A state representation of a binary input can be for example a "1" for a logical high or a "0" for a logical low. If the input for example is a DAC with 8 bit resolution the state representation can be any value ranging from 0 to 255. Those examples show the basic principle of the state repre sentations which also can comprise far more complex data. An implementation using a process state model has the advantage that the automation device does not have to read in inputs in every cycle or to write out the input in every cycle so that the hardware based I/O handling is separated from the actual application. This simplifies programming the automation de vice and the extension device working together as a system.

As a great advantage of the current embodiment and the exten sion device communicating via the process state model is that the results can be treated like in and/or outputs of the au tomation device and can be processed equally simple and fast. The part of the process state model shared between the auto mation device and the extension device can also comprise any of the state representations of the in and/or outputs.

In a further embodiment the extension device comprises a pe ripheral connectivity system operative to provide connectivi ty to data sources. The data sources are preferably directly connected to the extension device. In this preferred embodi ment the extension device provides the ability for direct connection to peripheral device, such as cameras, sensors and/or further data sources. This is of high advantage when high data rate equipment is used. For example computer vision for quality assurance in industrial appliances with high speed cameras produces large amounts of data which usually have to be processed at an adequate speed to be of use in the industrial system. With the extension device providing a spe cialized processing unit and the peripheral connectivity sys tem that can directly connect to such high-speed and/or high- bandwidth data sources the actual automation device does not have to be stressed with unnecessary data loads from those data sources. The peripheral connectivity system can be pro vided as but is not limited to USB 3.0 or 3.1 interfaces. Further interfaces such as Ethernet (e.g. GigE Vision) or op tical fiber connections are possible. The problem is also solved by an engineering system operative to configure an extension device. An engineering system is a system to program and/or configure automation devices and al so extension devices. The engineering system further provides the possibility to design whole industrial systems. A well known engineering system is the SIEMENS Totally Integrated Automation Portal (TIA Portal) .

The problem is also solved by a system comprising one or more automation devices and one or more extension devices accord ing to the current invention. At least one of the automation devices is operative to monitor and/or control an industrial system according to one or more results of one or more compu tations performed by the one or more of the extension devic es. The one or more results are provided to the controller via a process state model.

The problem is also solved by an automation device operative to control an industrial system based on one or more results of one or more computations performed by one or more exten sion devices according to the invention. The one or more re sults are provided to the controller via a process state mod el .

The problem is further solved by a method for providing re sults of a computation in an industrial system. The steps comprise: obtaining one or more results of the one or more computations and providing the one or more results via a pro cess state model. The step of obtaining is preferably per formed by an extension device according to the current inven tion. The results indicate one or more states of the indus trial system and can be shared with an automation device to monitor and/or control the industrial system.

The aspects and embodiments defined above and further aspects and embodiments of the present invention are shown in the ex amples to be described hereinafter and are explained with reference to the drawings, but to which the invention is not limited .

BRIEF DESCRIPTION OF THE DRAWINGS

FIG 1 is an automation device with an extension device in an industrial system,

FIG 2 is an automation device with an extension device and a data source,

FIG 3 is an automation device with a more detailed exten sion device,

FIG 4 is an extension device with a connection module,

FIG 5 is an automation device with multiple extension de vices and

FIG 6 is a flow chart of a method according to the cur rent invention.

FIG 1 shows a system 10 comprising an automation device DEV with an attached extension device MI within an industrial system 100. The automation device DEV can be for example a PLC . The extension device MI and the automation device DEV can be mounted on a rail based mounting system, e.g. directly next to each other or at least on the same backplane communi cation. Plug-in solutions for the extension device MI to be plugged into the automation device DEV are possible but not shown. Industrial ruggedization is of advantage for the ex tension device MI. The industrial system 100 further compris es a sensor S and an actor A which only exemplary stand for further components in the industrial system 100. The indus trial system 100 in most use cases will have a much higher complexity as shown. The sensor S and the actor A are con nected to the automation device DEV via an industrial bus PN, which e.g. is an industrial bus system such as PROFINET, PRO- FIBUS and the like and can be connected to further I/O mod ules, sensors, actors, HMI devices, ....

The automation device DEV and the extension device MI are connected via a communication link COM, which is indicated by the dashed lines expanding over both devices MI, DEV. The communication link COM enables sharing a process state model PM between the two devices DEV, MI. The communication link COM can be a backplane communication provided by backplane communication ASICs in each of the devices DEV, MI. Such ASICs are commonly known from industrial application.

The process state model PM shows states Sl,...,Sn which can in ¬ dicate any state of the industrial system. This includes but is not limited to: states Sl,...,Sn of I/Os of the automation device DEV or the device DEV itself, states Sl,...,Sn of devic ¬ es of the industrial system 100, states Sl,...,Sn of goods pro ¬ duced in the industrial system 100, states Sl,...,Sn of quality assurance of goods, states Sl,...,Sn of health statuses of equipment used in the industrial system, such as machines and tools. The states Sl,...,Sn can be used by the automation de ¬ vice to control and/or monitor the industrial system 100. The results Rl,...,Rn are preferably obtained by computing one or more artificial neural networks.

In an example the sensor S and the actor A each can provide states Sl,...,Sn indicative of their own state (on, off, tem ¬ perature, ...) . Those states Sl,...,Sn can be provided to the au ¬ tomation device DEV and/or be polled or determined by the au ¬ tomation device DEV itself.

The extension device MI provides the possibility to obtain S2 one or more results Rl,...,Rn of one or more computations

Cl,...,Cn. The extension device MI further provides S3 the one or more results Rl,...,Rn via the process state model PM. In a further embodiment the extension device MI can directly up ¬ date certain states Sl,...,Sn with the results Rl,...,Rn. Option ¬ ally as a dashed line indicates the step of obtaining Sll states Sl,...,Sn for performing the computations Cl,...,Cn based on at least one of the states Sl,...,Sn is shown.

The communication link COM preferably supports access control mechanisms to control the access to the process state model PM to avoid data mismatch, e.g. a state SI having a different value within the process state model PM currently available in the automation device DEV compared to the process state model PM currently available in the extension device MI. One example for such an access control mechanism to a common re ¬ source is the use of semaphores.

In an example the actor A can be a motor and the sensor S a temperature sensor connected to the outside of the motor. The automation device DEV then could read in the sensor value as a temperature state and provide it the to the extension de ¬ vice MI via the process state model PM. A trained neural net ¬ work in the extension device MI could then provide a result Rl,...,Rn indicative of a predicted state Sl,...,Sn. In this ex ¬ ample those results could be a health status of the motor, a temperature at a different position in the motor, a load in ¬ dicator of the motor. The results Rl,...,Rn preferably are com ¬ puted by an artificial neural network or the like in the ex ¬ tension device MI.

FIG 2 shows a system 10 similar to the system of FIG 1 while using the same reference signs when referencing to the same elements. The extension device MI is - as schematically indi ¬ cated - directly connected to a data source DS via a periph ¬ eral interface PI. The step of obtaining S12 data from the data source DS to perform computations Cl,...,Cn based at least in part on data from the data source DS can be performed by the extension device MI. The peripheral interface PI is also connected to the computations Cl,...,Cn, indicating that data of the data source DS can be fed (directly without prepro ¬ cessing or indirectly while applying some form of prepro ¬ cessing) into computations Cl,...,Cn. A dashed line Sll from the states Sl,...,Sn provided via the process state model PM to the computations Cl,...,Cn indicates that states Sl,...,Sn can be directly or indirectly used in the computations Cl,...,Cn. This was also shown in FIG 1. The states Sl,...,Sn also can be used to trigger the execution of one or more computations Cl,...,Cn or to switch between different computations Cl,...,Cn (e.g. different pre-trained neural networks) available in the ex tension device MI.

One advantage of the current invention is that the embodi ments of FIG 1 and FIG 2 are combinable in any way. For exam ple that sensors S and actors A connected via an industrial bus PN can be used for or in computations Cl,...,Cn based on data from a high speed data source DS . This ensures a level of flexibility often needed for industrial applications.

FIG 3 shows a more detailed view of a system comprising an automation device DEV and an extension device MI. The automa tion device DEV comprises a communication interface Cl which connects to a communication interface Cl of the extension de vice MI via a communication link COM. As known from FIG 1 and FIG 2 the communication link COM enables a process state mod el PM to be shared between the extension device MI and the automation device DEV.

The extension device MI comprises a processor AICPU, which comprises further sub units and interfaces. A control unit CU connects to the communication interface Cl and serves as a management unit, managing the connection to the automation device DEV and further providing data received via the pro cess state model PM. The control unit CU also can provide an execution environment for executing applications. Applica tions executed on the extension device MI implement the func tionality that the computations and the results provide. The applications can be executed on both, the control unit CU and the processing unit PU, wherein the actual computations Cl,...,Cn are executed on the processing unit PU. It is of ad vantage when the management part of the application is exe cuted on the control unit and the actual computation part is executed on the processing unit PU.

The processing unit PU provides the actual hardware implemen tation for performing the computations in energy efficient and time optimized manner. A memory MEM can comprise a vola- tile high speed memory such as a RAM (preferably DDR-RAM) and a non-volatile memory such as e.g. an SD card SD as shown. Other non-volatile memory types are possible. The high speed memory can be used for directly providing the data for the computations to the processing unit. The non-volatile or per sistent data storage can have further uses. Such uses could be but are not limited to: storing samples from the data run through the processing unit PU, storing the application which dynamically controls a flow of data and results via the con trol unit CU for the data processing (the computations

Cl,...,Cn), storing the data for the application (e.g. the trained neural network) and providing a storage for the stored data/applications to be copied/modified to and from the memory directly or via, communication functions like backplane bus, USB or Ethernet.

The processing unit PU (in other words a data processing sub system) runs the application actually performing the computa tions. The processing unit PU typically provides specialized hardware for efficiently performing AI and neural computa tions, such as vector processors with SIMD capabilities, or dedicated hardware to implement matrix operations or convolu tions, and other programmable processing units. The control unit CU can control the processing unit PU by running a part of the user application that controls the computations.

The control unit CU can provide access to a peripheral inter face PI. In this embodiment the peripheral interface PI com prises two USB ports and an Ethernet port ETH. The peripheral interface PI can be designed to connect to any kind of device which can provide data which can be used for the computations to provide results. For example wireless communication to multiple data sources DS is possible and especially useful for retrofit solutions e.g. for already existing industrial plants .

As indicated by solid black connections between the pro cessing unit PU, the control unit CU and the memory MEM, each of those units (or sub units) can access the other part di rectly or via the control unit CU. In some embodiments only parts of the units PU, CU, MEM may be accessible by the oth ers. The general concept being that the control unit CU man ages functions while running an application and controls the operation of the processing unit PU with the computations Cl,...,Cn to be provided for the application. The processing unit PU has access to the memory MEM, especially a fast memory, like a DDR-RAM, to process the data that the control unit CU provides.

A camera CAM is connected to the peripheral interface PI. The data from the camera CAM is provided to the control unit CU via the peripheral interface PI . The camera could be connect ed via Ethernet (e.g. GigE Vision), USB 3.0, 3.1 or following standards .

The processor AICPU can be designed as a single SOC (system on a chip) providing all the above units. The processor AICPU also can be built as a processing board comprising some of the sub units grouped onto single hardware chips and others provided as standalone processing hardware.

In a detailed example a typical computation Cl,...,Cn could be as follows, the single steps being in order of their regular execution with the possibility to exchange, repeat or skip steps .

1.) The automation device DEV (e.g. a PLC) continuously up dates the process state model PM, reads inputs from the ex tension device MI and writes outputs to the extension device MI. All this can be done in one cycle of the automation de- vrce .

2.) A trigger event on the automation device DEV could be the start of the execution of an organization block (which can be freely running or precisely timed, e.g. via periodic inter- rupts/triggers) . Organization blocks are sometimes called continuous tasks or periodic tasks respectively.

3.) The automation device DEV triggers a command in the ex tension device MI. This can be performed by setting a flag in the process state model PM.

4.) Optionally and/or additionally data records can be sent in parallel from the automation device DEV to the extension device MI. A data record is a form of a direct data transmis sion commonly used in automation devices.

5.) When the trigger is processed in the extension device MI the control unit CU is calling a function in an application to be processed by the extension device MI. a. Optionally a collection of additional data from external data sources DS like a camera CAM can be performed by using the peripheral interface PI. The extension device MI can pro vide an indicator via the process state model PM that an im age has been captured and now is available for further pro cessing - e.g. by the processing unit PU. The indicator can be a state Sl,...,Sn. b. In a further step the collected data is pre-processed in accordance to the data processing needs, this for example can be normalizing one or more images such that a constant level of contrast and/or brightness is achieved or a scaling of one or more images to a resolution suitable for further pro cessing. Logic can be applied to data to eliminate data not needed or to select data for further pre-processing. c. Afterwards all data (e.g. states Sl,...,Sn from automation device DEV, obtained via the process state model PM, values from data sources DS, actors A and/or sensors S) is packed in a form like data processing application is expecting, e.g., a tensor/vectors to be processed by a neural network by the processing unit PU. d. The next step is to execute one or more mathematical func tions prescribed by the data processing part of the applica tion by the processing unit PU. e. In a post-processing step one or more results of the one or more mathematical functions are aggregated and prepared to be returned to the automation device DEV. f. After all functions have been applied the one or more re sults Rl,...,Rn are collected and the control unit CU is noti fied .

6.) The control unit CU then provides the results of pro cessing to the automation device DEV via the process state model PM.

7.) The one or more results are processed in the automation device DEV to monitor and/or control the industrial system.

As the computation might take several cycles the availability of a new result can be indicated by a status bit (e.g. a bi nary state) in the process state model PM.

FIG 4 shows another embodiment of a system comprising an ex tension device MI connected with a connection module CM. The connection module CM provides connection to an industrial bus system PN via a bus-interface PNI . The industrial bus system PN provides connection to an automation device DEV. The con nection module CM comprises a communication interface Cl con nected to a communication interface Cl of the extension de vice MI. The communication interfaces Cl provide the communi cation link COM known from the previous embodiments. A pro cess state model PM is extended from the automation device DEV to the extension device MI via the industrial bus system PN and the connection module CM. The connection module CM al lows all embodiments from FIG 1, 2 and/or 3 to be applied to the one shown in FIG 4. In a further embodiment the connec tion module CM can be a part (such as a plug in module) of the extension device MI. FIG 5 shows a single automation device DEV with multiple ex ¬ tension devices MI. The process state model PM known from the previous embodiments expands over all devices DEV, MI. This can be of advantage when multiple neural networks for differ ¬ ent purposes (e.g. one for a camera quality inspection and one for a general health status of the industrial system) have to be computed and/or more processing power is needed. Also large neural networks could be distributed between the multiple extension devices MI. This shows the flexibility the communication via a process state model PM according to the current invention enables.

FIG 6 shows a flow chart of an example for an embodiment of a method applicable to the extension device MI. The provided order can be followed or changed without leaving the scope of the invention. Some steps Sll, S12, S2, S3 may be skipped or executed more than once.

A first step comprises obtaining Sll states Sl,...,Sn for per ¬ forming computations Cl,...,Cn based on at least one of the states Sl,...,Sn. A second step comprises obtaining S12 data from the data source DS to perform computations Cl,...,Cn. The computations Cl,...,Cn are at least part based on the data from the data source DS and can be performed by the extension de ¬ vice MI. The steps of obtaining Sll and S12 are optional and can be carried out multiple times.

A third step comprises obtaining S2 by an extension device MI, one or more results Rl,...,Rn of the one or more computa ¬ tions Cl,...,Cn are obtained. The results Rl,...,Rn indicate one or more states Sl,...,Sn of the industrial system 100.

A fourth step comprises providing S3 the one or more results Rl,...,Rn via a process state model PM shared with an automa ¬ tion device DEV to monitor and/or control the industrial sys ¬ tem 100. The invention relates to an extension device MI for one or more automation devices DEV in an industrial system 100. The invention particularly relates to industrial data processing units PU capable of performing data processing based on one or more artificial neural networks. To enable and/or acceler ate one or more computations Cl,...,Cn in an industrial system 100, thereby simplifying the integration of artificial intel ligence into the industrial system 100, and to simplify data exchange between an extension device MI capable of processing data using artificial intelligence and an automation device DEV the invention proposes to obtain S2 one or more results Rl,...,Rn of the one or more computations Cl,...,Cn, wherein the results Rl,...,Rn indicate one or more states Sl,...,Sn of the industrial system 100 and to provide S3 the one or more re- suits Rl,...,Rn via a process state model PM shared with the automation device DEV to monitor and/or control the industri al system 100.