Built on standard Ethernet technologies, PROFInet IO uses traditional Ethernet hardware and software to define a network that structures the task of exchanging data, alarms and diagnostics with Programmable Controllers and other automation controllers.
PROFInet IO is one of two open Ethernet standard automation “views” from Profibus International. While PROFInet IO focuses on Programmable Controller data exchange, PROFInet CBA (Component Based Automation) focuses on distributed automation systems. PROFInet CBA provides a DCOM-based system for organizing automation systems into networks of peer devices that can automatically exchange data using predefined relationships between the interfaces of the automation components. PROFInet CBA is thoroughly discussed in another paper.
NetBurner PROFInet IO Product Summary:
No NetBurner products currently support PROFInet IO but solutions are expected to be soon available from Real Time Automation.
PROFInet IO is very similar to Profibus on Ethernet. While Profibus uses cyclic communications to exchange data with Programmable Controllers at a maximum speed of 12Meg baud, PROFInet IO uses cyclic data transfer to exchange data with Programmable Controllers over Ethernet. As with Profibus, a Programmable Controller and a device must both have a prior understanding of the data structure and meaning. In both systems data is organized as slots containing modules with the total number of I/O points for a system the sum of the I/O points for the individual modules.
PROFInet IO uses three different communication channels to exchange data with programmable Controllers and other devices. The standard TCP/IP channel is used for parameterization, configuration and acyclic read/write operations. The RT or Real Time channel is used for standard cyclic data transfer and alarms. RT communications bypass the standard TCP/IP interface to expedite the data exchange with Programmable Controllers. The third channel, Isochronous Real Time (IRT) is the very high speed channel used for Motion Control applications.
PROFInet IO is a unique industrial Ethernet application layer. It offers many benefits over competing application layers including:
- High Speed Operation – The real time communication channel provides high speed message exchange by bypassing the time required to process the TCP/IP stack
- Seamless and nearly identical Siemens S7 PLC integration to Profibus
- Support for time critical motion control applications
- Short Startup
- Distributed Intelligence
- Ease of installation
- Minimum commissioning time and engineering support
PROFInet IO classifies devices into three types; IO-Controllers, IO-Devices and IO-Supervisors. IO-Controllers are devices that execute an automation program. Controllers, functionally similar to a Profibus Class 1 Master, exchange data with IO-Devices. IO-Devices are distributed sensor/actuator devices connected to the IO-Controller over Ethernet. In Profibus terms, IO-Devices are similar to Profibus slaves.
IO-Supervisors are HMIs, PCs or other commissioning, monitoring or diagnostic analysis devices. These devices are similar to Class 2Profibus Masters.
IO-Controllers map IO data from PROFInet IO devices into the process image of the controller. In Siemens S7 Programmable Controllers, I/O data, alarms and status data is mapped into the process image in much the same way it is done for Profibus devices. These data values are then available for use by the control program. IO-Controllers must support the following kinds of services:
- Cyclic Data Exchange – The exchange of data between IO-Controllers and IO-Devices
- Acyclic Data Exchange – The exchange of Configuration and Diagnostic data
- Alarms – Alarm data exchange from an IO-Device to an IO-Controller
- Context Management – Connection processing
IO-Supervisors are used for commissioning and diagnostic data collection. IO-Supervisors can read and write internal diagnostic data associated with the PROFInet IO stack or diagnostic data provided by the application program of a device. IO-Supervisors can also read and write configuration data using special, non cyclic record data object services. These types of devices may only be used during the commissioning process or they may be used as an HMI to display diagnostic data to the end user.
A PROFInet IO system requires at least one IO-Controller and one IO-Device. Systems can be configured in various configurations; multiple IO-Controllers for a single IO-Device; single IO-Controllers for multiple IO-devices and multiple IO-Controllers with multiple IO-Devices.
The network representation of a device is the view of the device from the network. In Modbus and Modbus TCP, devices are represented as a series of registers (16-bit integers) and coils (bits). In EtherNet/IPT and DeviceNetT devices are represented as objects. Other networks have other network configurations. In LonworksT, data is represented by a series of “data tags” that the device provides to the outside world. In every case above, the device presents some view of itself to the outside world. That representation is the network representation.
The PROFInet IO network representation is very similar to Profibus. It consists of a device with slots, subslots and channels. Subslots are subcomponents of a slot. Each subslot is assigned a number of I/O points or channels. A channel is the PROFInet IO term which refers to one physical discrete input, discrete output, analog input or analog output. A device can have almost any number of slots, subslots and channels.
Except for Slot zero, every other slot and subslot contains status, diagnostic and alarm data for the channels of that slot. For points transferred to an IO-Controller, provider status and diagnostic information is automatically transferred on every I/O scan cycle. For points transferred to an IO-device, consumer status is returned to the IO-Controller.
Even though PROFInet devices and GSD files refer to “Slot zero”, there is no Slot zero. The first I/O slot of a device is slot one. Instead of referring to an actual slot, Slot zero refers to the device itself. No I/O data is contained in Slot zero. In place of I/O data, Slot zero manages all the generic device data like the vendor name, product catalog number and software and hardware version information and other similar information.
Modules are specific functional components that can be associated with a slot. Modules can be virtual or real. A module, real or virtual, must be plugged into a slot before the I/O device goes online. The module gives the slot a specific identity. For example, a 16 discrete input module gives the slot a 16 discrete input identity. In the same way that modules provide identity to slots, sub-modules provide subslot identity. The 16 discrete input module can be composed of one 16 discrete input sub-module, two 8 input sub-modules or four, 4 input sub-modules.
IO-Controllers associate to a device and all the slots and subslots. The current version of PROFInet IO only supports devices associated to one IO-Controller at a time. Future versions of PROFInet IO may lift this restriction and associate to IO-Controllers by slot.
In an IO-Controller like a Siemens 317 Programmable Controller, the I/O points or channels for the subslots assigned to that Programmable Controllers is collected and that data group forms the I/O data image that is transferred between the IO Device and the IO Controller. For example, if you have a PROFInet IO device with four input slots (16 inputs each) and two output slots (16 outputs each), the I/O image transferred between the controller and device is 4 bytes in the direction of the Programmable Controller and 2 bytes in the direction of the IO Device.
Internally in an IO Controller, all PROFInet IO inputs are assigned to the Input data table and all outputs are assigned to the Output Data Table, just as is done for Profibus.