Motion-control engineers, and control-systems managers and operators want control systems with high throughput, low installation and operating costs, and multi-vendor hardware and software compatibility. Control networks based on the technology of the traditional source-destination model cannot satisfy these ever-increasing demands for higher productivity. Increasing the baud rates and protocol efficiency helps, but is not enough to meet the challenge.
A newer approach to network technology, the producer-consumer model, promises to fulfill these control system goals. Producer-consumer networks provide more functions, use bandwidth more efficiently, increase information flow, and reduce network traffic.
Unlike source-destination communication systems, producer-consumer networks permit all nodes on the network to simultaneously access the same data from a single source. One network can handle both real-time control messages plus other types of messages required for programming, device configuration, trending, and diagnostics. These networks also support traditional master-slave, multimaster, and peer-to-peer communication systems.
The traditional sourcedestination network model was developed for the computer and data processing industry. This model is well suited for a variety of applications that don’t require complex coordination and sharing of data.
A source-destination network is based on point-to-point messaging between nodes. Its operation is analogous to one person (the source) telling each person in a large group (the destinations) the time of day (the data), one at a time. Some people may listen, others may ignore the data, thus wasting communications effort. Because it takes time to communicate on a one-on-one basis, the data being communicated is not accurate after the first-person exchange. Therefore, to synchronize all destinations, time-delay adjustments need to be made by the source or by each of the destinations.
Put another way, the major drawbacks of source-destination networks are that they require considerable bandwidth to send the same data to multiple nodes, and synchronized action between nodes is difficult because data arrives at each node at a different time.
With a producer-consumer network, all nodes on the network can simultaneously access the same data from a single source. Thus, data are produced only once, regardless of the number of destinations. This is called multicast communication, Figure 1. Producers identify messages by their content. A node reads the message identity, and if it needs the data, it “consumes” them. True multicast communication is not possible with source-destination networks, although limited attempts are made with such mechanisms as global addressing.
Data transfer is also synchronized because the data arrive at each node at the same time, and no adjustment is required by either the producer or consumers. This method provides an optimal solution for applications that require synchronization, such as controlling several axes from a single signal in a packaging machine labeling application.
A producer-consumer network is also highly deterministic because delivery time is constant regardless of how many nodes are added to, or leave, the network.
Message types. A producer-consumer network can send both I/O data for control (implicit messages), and explicit messages that are used for such tasks as uploading and downloading programs, modifying device configurations, trending, and diagnostics. An explicit message contains protocol information, instructions for the service to be performed, and an address the service is to be applied to. The receiving device (node) must interpret the message, perform the requested task, and generate a response. These messages vary widely in both size and frequency.
I/O data messages send real-time control information. This implicit type of message only contains data, no protocol information. The meaning of the data is predefined, therefore processing time in the node is minimal because there is no protocol information to interpret. The device simply uses the dataandreacts accordingly. Implicit messages are short, vary frequently, and require fast throughput.
In the past, separate networks dealt with the different requirements of these two message types. A network designed for I/O control could not tolerate the variability introduced by explicit messages. However, because of its ability to carry both types of messages on the same wire, a producer-consumer network can simultaneously exchange I/O data, upload and download programs, configure devices, and provide device diagnostic data.
Continue on page 2
Explicit messages carry identifiers so nodes know they contain destination and other protocol information. These identifiers, coupled with the network access method (defined by the protocol) combine to ensure that explicit messages, with their large overhead, have a lower priority on the network than I/O messages. Large uploads and downloads, adjustments to configuration parameters, and diagnostic activities are relegated to background traffic and fitted in between the higher-priority I/O messages.
The ability to carry both types of messages on a single producer-consumer network eliminates the need for separate explicit and I/O data networks and separate ports on devices.
Communication techniques. Producer- consumer networks accommodate the three common modes of communication used in control systems: master-slave, multimaster, and peer-to-peer. With master- slave networking, Figure 2, one master controller communicates with multiple slave devices to exchange real-time I/O control data. The slave devices exchange data only with the master. When used for I/O exchange, master-slave networks are usually limited to that function alone to obtain the necessary repeatability and throughput required for control.
With multimaster, Figure 3, there is more than one master on the network, each with its own slaves. These systems commonly exchange I/O data, and the slave devices only exchange data with their own masters.
Most peer-to-peer networks, Figure 4, provide considerably more flexibility than do master-slave networks, so they can handle explicit (more complex) messages. Devices can exchange data with any other device on the network.
In addition to supporting master-slave, multimaster, and peer-to-peer systems, producer-consumer networks support hybrid applications in which any of these systems is combined with either implicit or explicit messaging.
I/O data exchange. The polling method of data exchange originated in the source-destination model, and is inherently a two message bi-directional transaction: originator sends an inquiry, and receiving node sends back a reply. This transaction is repeated as rapidly as possible. Most polling cycles are filled with the same outputs and inputs, wasting bandwidth.
In addition to traditional polling, the producer- consumer model offers two more one-way I/O trigger mechanisms: changeof- state (event-based) and cyclic (timebased) data exchange. This capability is important for applications that require sending or receiving data quickly on an event basis, or more predictably on a time-interval basis. Thus, producer-consumer networks are effective for applications with either slowly changing data (such as process parameters and PID loop control) or rapidly changing data (such as position referencing and control, counting, and timing).
Change-of-state (event-based) data production. In this case, nodes produce data only when that data changes. There is no “network polling cycle delay,” and, as a result, producers deliver the data to all consumers when it changes. A background heartbeat is produced cyclically so consumers can distinguish between a device that hasn’t changed and one that is no longer online. Change-of-state can dramatically reduce network traffic typically needed to repeatedly receive, process, and generate the same data.
Cyclic (time-based) data production. With cyclic data production, nodes produce data at a user-configured rate. The system updates data at a rate appropriate to the node and the application. Sensors can sample and produce data at precise intervals for better PID control. Controllers can collect data for operator interfaces and produce it two times per second — sufficiently fast for human consumption — thereby preserving bandwidth for nodes with rapidly changing I/O.
Both device-to-device and controller-todevice exchanges are handled more efficiently with the cyclic and change-of-state data production of producer-consumer networks. Operator interface needs can be layered on top of I/O traffic with minimal increases to network load.
Precursors of network performance
The throughput required by a control application determines what type of network model is required. Throughput is the rate at which devices can deliver input data to all nodes that need them, and these nodes can deliver resulting output data (decisions) to all the devices (nodes) that need them. Examples of nodes include sensors, operator interfaces, controllers, data loggers, alarm monitors, and actuators. Throughput is determined by three factors: baud rate, protocol efficiency, and the network model.
Baud rate is a measure of data transmission speed. Although users commonly perceive baud rate as the most important factor affecting throughput, it is actually the least important of the three factors.
Protocol efficiency measures how effectively information is exchanged. It equals the ratio of data bytes (the payload) divided by total bytes (payload plus protocol overhead) in a message packet. Each packet contains both control information, such as routing, address, and error control, and data.
Though important, protocol efficiency is not nearly as significant as the data delivery and exchange method used. For example, a particular information exchange that takes two or more packets on the wire, as compared with one, affects throughput much more than does a 25% difference in protocol efficiency.
The network model governing information flow has the most influence on throughput. This model determines the number of messages needed for information exchange and how often messages can be exchanged.
Dave VanGomple is network systems manager, Rockwell Automation/Allen-Bradley, Mayfield Heights, Ohio.