An Application Layer Protocol for Industrial Automation
by John Rinaldi
The 6.5 Things You Must Know about EtherNet/IP
Your Guide to understanding EtherNet/IP
I’m often asked what is EtherNet/IP or can you give me an EtherNet/IP Quick Introduction. Here’s the top 6.5 things you need to know about EtherNet/IP. (Note: David Letterman has his Top Ten. I’m only 65% as good as David Letterman)
1) EtherNet/IP is an application layer protocol that is transferred inside a TCP/IP Packet. That means that EtherNet/IP is simply the way data is organized in a TCP or UDP packet. For information on what TCP or UDP is get my Industrial Ethernet Book.
2) All devices on an EtherNet/IP network present their data to the network as a series of data values called attributes grouped with other similar data values into sets of attributes called Objects.
3) There are EtherNet/IP Required Objects – Identity, TCP, Router that every device must have. The EtherNet/IP Specification defines those objects.
4) There are EtherNet/IP Application Objects that have the data for your specific device. For example, an EtherNet/IP Drive device has a Motor Object. EtherNet/IP devices that support specific devices all have the same set of EtherNet/IP application objects.
5) There are two kinds of messages that are transferred between an EtherNet/IP Scanner Device (opens connections and initiates data transfers) and EtherNet/IP Adapter devices (provides data to Scanners). These messages are Explicit Messages (asynchronous, as needed) and I/O Messages (Data messages that are continuously transferred).
6) EtherNet/IP is part of CIP, the Common Industrial Protocol. CIP defines the Object structure and specifies the message transfer. CIP protocol over CAN is DeviceNet. CIP protocol over Ethernet is EtherNet/IP.
6.5) Our company, RTA, is the leading supplier of EtherNet/IP technology. RTA can supply Royalty Free EtherNet/IP Source Code Software stacks, EtherNet/IP PCBs, and Modules.
Now for some details…
A LITTLE BACKGROUND
Most people who work in an office associate the term “Ethernet” with the physical cable behind their desk. This cable connects their office PC to the printers and servers of the local network and the infinite web sites on the Internet. This cable is only the physical part of Ethernet, the media carrying Ethernet messages to your PC. On this wire is a whole series of communication protocols such as IP, the Internet Protocol; TCP, the Transport Control Protocol; and various Microsoft protocols such as NetBEUI. This suite of protocols works well for the office environment. It allows users to share files, access printers, send email, search the Internet and perform all the other communications used in the office environment.
The needs of the factory floor are much different with some very special requirements. Instead of accessing files and printers, factory floor controllers must access data embedded in drive systems, operator workstations and I/O devices. Instead of letting a user wait while a task is being performed, factory floor data communications needs are real-time or very close to real time. Terminating the fill operation on a bottle requires much more time-precise communications than accessing the next page of an Internet site.
Traditionally, Ethernet had only limited acceptance in Industrial Automation. Until recently the expense, lack of intelligent switches and routers and the domination of large vendors with proprietary protocols prevented the wide acceptance of Ethernet on the factory floor. Now with prices falling, PCs with inherent Ethernet capability moving in droves onto the factory floor and intelligent switches and routers, Ethernet is gaining acceptance. Only the lack of a widely accepted, flexible application layer targeted to Industrial Automation has prevented its complete acceptance.
Ethernet/IP is the application layer protocol that can meet this challenge. Four independent groups have joined forces to develop and promote EIP as a public domain Ethernet application layer for Industrial Automation. These groups include the ODVA, the Industrial Open Ethernet Association (IOANA), Control Net International (CI) and the Industrial Ethernet Association (IEA). The goals of this effort illustrate how EIP provides a wide-ranging, comprehensive, certifiable standard suitable to a wide variety of automation devices:
1. Ethernet/IP uses the tools and technologies of traditional Ethernet. Ethernet/IP uses all the transport and control protocols used in traditional Ethernet including the Transport Control Protocol (TCP), the Internet Protocol (IP) and the media access and signaling technologies found in off-the-shelf Ethernet interface cards. Building on these standard PC technologies means that EIP works transparently with all the standard off-the-shelf Ethernet devices found in today’s marketplace. It also means that EIP can be easily supported on standard PCs and all their derivatives. Even more importantly, basing EIP on a standard technology platform ensures that EIP will move forward as the base technologies evolve in the future.
2. Ethernet/IP is a certifiable standard. The groups supporting EIP plan to ensure a comprehensive, consistent standard by careful, multi-vendor attention to the specification and through certified test labs as has been done with DeviceNet and ControlNet. Certification programs modeled after the programs for DeviceNet and ControlNet will ensure the consistency and quality of field devices.
3. EIP is built on a widely accepted protocol layer. EIP is constructed from a very widely implemented standard used in DeviceNet and ControlNet called the Control and Information Protocol (CIP) and is illustrated on the attached drawing. This standard organizes networked devices as a collection of objects. It defines the access, object behavior and extensions which allow widely disparate devices to be accessed using a common mechanism. Hundreds of vendors now support the CIP protocol in present day products. Using this technology in EIP means that EIP is based on a widely understood, widely implemented standard that does not require a new technology shakedown period.
AN OVERVIEW OF CIP
The Common Industrial Protocol (CIP) is a communications protocol for transferring automation data between two devices. In the CIP Protocol, every network device represents itself as a series of objects. Each object is simply a grouping of the related data values in a device. For example, every CIP device is required to make an Identity object available to the network. The identity object contains related identity data values called attributes. Attributes for the identity object include the vendor ID, date of manufacture, device serial number and other identity data. CIP does not specify at all how this object data is implemented, only what data values or attributes must be supported and that these attributes must be available to other CIP devices.
The Identity object is an example of a required object. There are three types of objects defined by the CIP protocol:
1. REQUIRED OBJECTS
Required objects are required by the specification to be included in every CIP device. These objects include the Identity object, a Message Router object and a Network object.
A. The identity object contains related identity data values called attributes. Attributes for the identity object include the vendor ID, date of manufacturer, device serial number and other identity data.
B. The Message Router object is an object which routes explicit request messages from object to object in a device.
C. A Network object contains the physical connection data for the object. For a CIP device on DeviceNet the network object contains the MacID and other data describing the interface to the CAN network. For EIP devices, the network object contains the IP address and other data describing the interface to the Ethernet port on the device.
2. APPLICATION OBJECTS
Application objects are the objects that define the data encapsulated by the device. These objects are specific to the device type and function. For example, a Motor object on a Drive System has attributes describing the frequency, current rating and motor size. An Analog Input object on an I/O device has attributes that define the type, resolution and current value for the analog input.
These application layer objects are predefined for a large number of common device types. All CIP devices with the same device type (Drive Systems, Motion Control, Valve Transducer…etc) must contain the identical series of application objects. The series of application objects for a particular device type is known as the device profile. A large number of profiles for many device types have been defined. Supporting a device profile allows a user to easily understand and switch from a vendor of one device type to another vendor with that same device type.
A device vendor can also group Application Layer Objects into assembly objects. These super objects contain attributes of one or more Application Layer Objects. Assembly objects form a convenient package for transporting data between devices. For example, a vendor of a Temperature Controller with multiple temperature loops may define assemblies for each of the temperature loops and an assembly with data from both temperature loops. The user can than pick the assembly that is most suited for the application and how often to access each assembly. For example, one temperature assembly may be configured to report every time it changes state while the second may be configured to report every one-second regardless of a change in state.
Assemblies are usually predefined by the vendor but CIP also defines a mechanism in which the user can dynamically create an assembly from application layer object attributes.
3. VENDOR SPECIFIC OBJECTS
Objects not found in the profile for a device class are termed Vendor Specific. These objects are included by the vendor as additional features of the device. The CIP protocol provides access to these vendor extension objects in exactly the same method as either application or required objects. This data is strictly of the vendors choosing and is organized in whatever method makes sense to the device vendor. In addition to specifying how device data is represented to the network, the CIP protocol specifies a number of different ways in which that data can be accessed such as cyclic, polled and change-of-state.
ADVANTAGES TO EIP
The advantages of the CIP protocol layer over EIP are numerous. The consistent device access means that a single configuration tool can configure CIP devices on different networks from a single access point without using vendor specific software. The classification of all devices as objects decreases the training and startup required when new devices are brought online. EIP provides improved response time and greater data throughput than DeviceNet and ControlNet. EIP links devices from the sensor bus level to the control level to the enterprise level with a consistent application layer interface.
There are numerous application layer competitors to EIP including Modbus/TCP from Groupe Schneider, ProfiNet from Siemens, HSE Fieldbus from the Fieldbus foundation and other vendors. Unfortunately space prevents a detailed review of each of these products. However, none of these competitors can provide the vendor support, flexibility and total architecture support offered by the implementation of CIP over Ethernet.
EIP implementation is not without challenges. Two of the most important challenges to the first time user include training and network configuration. One common problem is the lack of trained staff who understand both the IT fundamentals and the automation network. A collaborative effort between the IT and Automation staffs is required to successfully implement the first Ethernet/IP system. A second challenge is proper network configuration. Planning your Ethernet factory automation infrastructure is essential. Careful identification of all your control loops, choosing the correct routers, switches and paths and documenting your network properly are requisites for a communications network which meets your production goals and requires little ongoing maintenance.
Detractors of Ethernet applications on the factory floor often cite the lack of inherent determinism in Ethernet communications to keep it out of automation applications. While true in the past, recent developments in intelligent switches have largely eliminated this argument. These switches create separate collision domains that offer the determinism required of almost all but the most demanding of automation applications.