1. Technical Field
The present invention relates generally to synchronization of control system device clocks through a communication network. More specifically, the present invention relates to accurate Ethernet synchronization of device clocks using IEEE 802.1p protocol.
2. Background of Invention
The Institute for Electrical and Electronic Engineers (IEEE) defines the Ethernet standard as IEEE Standard 802. This standard establishes an Ethernet network configuration guideline and specifies how elements of an Ethernet network interact. Network equipment and protocols can communicate efficiently when adhering to the IEEE standard.
Network protocols are standards that allow devices to communicate. A protocol defines how network devices identify one another. Another protocol defines the format of the transmitted data and how the data gets processed once it reaches its destination. Protocols such as transmission control protocol/internet protocol (TCP/IP) (for UNIX, Windows NT, Windows 95 and other platforms) also define procedures for handling lost or damaged transmissions or “packets”.
Quality of service in the TCP/IP is made up of five layers, i.e. application, transport, network, data, and physical layers. The application layer is for application and user access, authorization, and encryption. The transport layer has TCP rate control and port access control. The network layer balances loads, reserves resources, and contains type of service bits, and path controls. The data link layer is where IEEE802.1p/Q frame prioritization takes place as well as logical port access control. Finally, the physical layer has bit error correction, physical security and port access. Ethernet is a shared media with rules for sending packets of data. These rules protect data integrity and avoid conflicts. Nodes determine when a network allows packets to be sent. In industrial control applications, it is possible for two nodes at different locations to send data concurrently. When both devices transfer a packet to the network concurrently, a collision will result.
Minimizing these collisions in factory automation applications is a critical portion of the design and operation of their networks. An increase of collisions in industrial control environments is frequently caused by increases of control-system devices on the network. This creates contention for network bandwidth and slows network performance.
Network quality of service is important for proper and predictable industrial control system performance. There are a number of factors that may diminish network performance. The first is delay, which is the time a packet takes to go from the sender to the receiver device via the network. Long delays put greater stress on the transport protocol to operate efficiently, particularly motion control, drives and robots applications. Long delays imply large amounts of network data held in transit. Delays affect counters and timers associated with the protocol. In the TCP protocol, the sender's transmission speed is modified to mirror the flow of signal traffic returning from the receiver, via the reply acknowledgments (ACK's) that verify a proper reception. Large delays from senders and receivers make the feedback loop insensitive. Delays result in the protocol becoming insensitive to dramatic short-term differences in industrial control system network load. Delays affecting interactive voice and video applications cause systems to appear unresponsive.
Jitter is another network transit delay. Large amounts of jitter cause the TCP protocol to conservatively estimate the round trip message time. This creates inefficient factory automation protocol operation by requiring timeouts to reestablish the flow of data. A large quantity of jitter in user datagram protocol (UDP) based real time applications such as an audio or video signal is intolerable. Jitter creates distortion in the signal, which then must be cured by enlarging the receiver's reassembly playback queue. The longer queue delays the signal, making interactive communication difficult to maintain, detrimentally for factory automation.
A third network issue is its bandwidth, the maximal industrial control data transfer rate. Bandwidth may be restricted by other traffic that shares common elements of the route as well as the physical infrastructure limitations of the traffic path within the factory automation transit network.
Reliability is yet another industrial control system concern. Network reliability may be measured by the average error rate of the medium. Improperly configured and poorly performing switching systems may change the order of packets transmitted. Packets may be delivered to the receiver in a different order than what was sent. Packets could possibly be dropped while in transient routing loops. Industrial control network transit paths that are not reliable or that are prone to error may also require the lost packets to be sent another time. TCP does not differentiate between messages lost because of packet corruption and messages lost because of network congestion. The sender is subject to the same congestion avoidance behavior responses when packets are lost. The industrial control network reacts by reducing message rates even more and forcing congestion avoidance algorithms despite the fact that no actual congestion was experienced on the network. Poor reliability in voice and video UDP applications causes distortion in the original analog signal at the receiver's end.
Ethernet's general lack of message prioritization and the openness of the TCP/IP protocol may introduce latent performance flaws relating to network traffic. Industrial control network traffic bursts can result in message losses and slow responses caused by non-critical network traffic. Categorizing traffic may be implemented to ensure that critical factory automation traffic will always flow despite the demands of less important applications. The prioritization of industrial control network traffic enables predictable performance for the most critical application traffic.
IEEE802.1p standard defines how network frames are tagged with user priority levels ranging from 7 highest to 0 lowest priority. IEEE802.1p compliant network infrastructure devices, such as switches and routers, prioritize network traffic delivery according to the user priority tag. Higher priority tagged frames are given precedence over lower priority or non-tagged frames. This means that time critical data receives preferential treatment over data that is not considered time critical.
Quality of service mechanisms can be incorporated at any or all of the five layers of the TCP/IP stack and the positioning of the key quality of service mechanisms. Some of these mechanisms are inherent in the protocols rather than being explicitly added on for quality of service control.
Ideally, networks provide services to an unlimited number of users, at any number of locations, without any limitations on what can be transported. Industrial control systems should have well-specified delays in service access or usage, with contained packet loss rates, and without any congestion. The grade of service for a specific traffic flow is decided by the user/system that is generating the flow. Service quality is also influenced by enterprise administrators who control the budget. Network managers in charge of one of the network components are another factor. Even a service provider that supplies the WAN facilities influences service. By defining a small number of classes of service, the network allows for packet differentiation, maintains an acceptable quality of service, and yet still provides the services at reasonable cost and complexity.
Accurate clock synchronization is particularly critical in industrial control applications where multiple network components request proper timing. Fast synchronization of all device clocks is required through networks, with preferably, a deviation of less than a few hundred microseconds. At initialization, devices start their clocks when prompted and therefore their times differ from one another. The desire is for all initializations to occur as close to simultaneous as possible. When timing is not concurrent between multiple industrial control devices on the same network, real time data exchange quality of service suffers.
Motor control, drives, robots, factory automation, and electrical distribution are just a few of the potential applications for industrial controls linked with Ethernet. Minimizing the timing differences between industrial control device clocks is much more important than in most Ethernet applications and therefore is a desired goal.
It is an object of the invention to provide an Ethernet industrial control system for transferring messages, wherein the messages are tagged with identifiers of varying levels of priority, ranging from a highest priority to a lowest priority.
In accordance with the invention, the system comprises a serial network bus and a means for placing a message having a higher priority identifier onto the bus before placing a message with a lesser priority identifier onto the serial network bus.
Other features and advantages of the present invention will be apparent from the following specification taken in conjunction with the following drawings.
While this invention is susceptible of embodiments in many different forms, there is shown in the drawings and will herein be described in detail a preferred embodiment of the present invention with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention and is not intended to limit the broad aspect of the present invention to the embodiment illustrated.
The quality of service characteristics of an industrial control network can be managed using mechanisms operating at the edge of the network or within its core. Quality of service may be controlled by reserving a fixed amount of bandwidth for mission-critical applications or preventing specific users from accessing restricted data like WWW destinations.
Assigning a higher priority to traffic to and from specific customers, limiting the bandwidth that can be consumed by voice over IP traffic, or designating which types of traffic may be dropped when congestion occurs are other quality of service controls. End-to-end solutions include regulating individual or traffic flows, processing quality of service information within the network, and monitoring the configuration of the network.
At initialization, devices start their clock and so, they differ from each other. Real time data exchanges like clock synchronization, global data or IO scanning should be deterministic and should have guaranteed time delivery, whatever other traffic is on the network.
Class based queuing allows traffic to be divided into a hierarchy of classes that are determined by quality of service attributes. IEEE802 provides for 8 levels of message priority. Class based queuing also allows borrowing of bandwidth among the classes. Queuing mechanisms can be pre-configured. The traffic flow through an Ethernet stack architecture can be implemented through a policy-based management system, or can be controlled via user-driven signaling protocols. Ethernet strikes a balance between speed, cost and ease of installation. Preferably, clock synchronization frames are tagged with the highest network priority level.
Prioritization of traffic on an industrial control local area network (LAN) allows synchronization requirements to be signaled to LAN switches and routers. The IEEE802.1p specification defines three bits within the IEEE802.1Q field in the MAC header, a part of the open systems interconnection (OSI) Layer 2. The IEEE802.1Q field is designed to support virtual-LAN (VLAN) interoperability and to support traffic priorities. VLAN allows the use of multiple, logical, virtual Ethernets over a single physical Ethernet. Three bits support up to 8 settings, used for classes of traffic and priorities.
A reduced UDP/IP communication stack enables messages to be put on a serial network bus faster than ordinary communication stacks. Device clock synchronization messages preferably receive the highest priority level tags and additionally are transmitted through a reduced UDP/IP communication stack, optimizing clock synchronization. Implementation of message priority tagging and the use of a reduced UDP/IP communication stack for clock synchronization creates improved accuracy of all network device clocks, preferably with an accuracy of less than a few hundred microseconds.
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Turning to
Potential applications using the preferred embodiment of the present invention include motion control, drives and robots application requiring fast synchronization, electrical distribution applications requiring discrimination of events, automation applications with Ethernet bandwidth management issues, applications requiring voice, data, and image coexisting on the same Ethernet network, and the like.
While the specific embodiments have been illustrated and described, numerous modifications come to mind without significantly departing from the spirit of the invention, and the scope of protection is only limited by the scope of the accompanying Claims.
CROSS REFERENCE TO RELATED APPLICATIONS This patent application is being filed concurrently with commonly assigned U.S. Patent Application entitled, “A Method For Managing Bandwidth On An Ethernet Network”, Ser. No. 10/063,242, filed Apr. 1, 2002; the content of which is expressly incorporated herein by reference. This patent application is related to U.S. Pat. No. 6,223,626 entitled “SYSTEM FOR A MODULAR TERMINAL INPUT/OUTPUT INTERFACE FOR COOMUNICATING MESSAGE APPLICATION LAYER OVER ETHERNET TO TRANSPORT LAYER;” the content of which is expressly incorporated herein by reference. This patent application is a continuation in part of and claims priority to U.S. patent application entitled “COMMUNICATION SYSTEM FOR A CONTROL SYSTEM OVER ETHERNET AND IP NETWORKS,” Ser. No. 09/623,689, filed Sep. 6, 2000; the content of which is expressly incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
3971000 | Cromwell | Jul 1976 | A |
4251858 | Cambigue et al. | Feb 1981 | A |
4319338 | Grudowski et al. | Mar 1982 | A |
4669040 | Pettit et al. | May 1987 | A |
4688167 | Agarwal | Aug 1987 | A |
4701845 | Andreasen et al. | Oct 1987 | A |
4845644 | Anthias et al. | Jul 1989 | A |
4858152 | Estes | Aug 1989 | A |
4897777 | Janke et al. | Jan 1990 | A |
4912623 | Rantala et al. | Mar 1990 | A |
4918690 | Markkula, Jr. et al. | Apr 1990 | A |
4937777 | Flood et al. | Jun 1990 | A |
4949274 | Hollander et al. | Aug 1990 | A |
4953074 | Kametani et al. | Aug 1990 | A |
4974151 | Advani et al. | Nov 1990 | A |
4979107 | Advani et al. | Dec 1990 | A |
4992926 | Janke et al. | Feb 1991 | A |
5012402 | Akiyama | Apr 1991 | A |
5023770 | Siverling | Jun 1991 | A |
5047959 | Phillips et al. | Sep 1991 | A |
5072356 | Watt et al. | Dec 1991 | A |
5072412 | Henderson, Jr. et al. | Dec 1991 | A |
5109487 | Ohgomori et al. | Apr 1992 | A |
5122948 | Zapolin | Jun 1992 | A |
5131092 | Sackmann et al. | Jul 1992 | A |
5134574 | Beaverstock et al. | Jul 1992 | A |
5151896 | Bowman et al. | Sep 1992 | A |
5151978 | Bronikowski | Sep 1992 | A |
5157595 | Lovrenich | Oct 1992 | A |
5159673 | Sackmann et al. | Oct 1992 | A |
5161211 | Taguchi et al. | Nov 1992 | A |
5162982 | Mentler | Nov 1992 | A |
5165030 | Barker | Nov 1992 | A |
5179700 | Aihara et al. | Jan 1993 | A |
5187787 | Skeen et al. | Feb 1993 | A |
5225974 | Mathews et al. | Jul 1993 | A |
5245704 | Weber et al. | Sep 1993 | A |
5251302 | Weigl et al. | Oct 1993 | A |
5283861 | Dangler et al. | Feb 1994 | A |
5297257 | Struger et al. | Mar 1994 | A |
5307463 | Hyatt et al. | Apr 1994 | A |
5321829 | Zifferer | Jun 1994 | A |
5343469 | Ohshima | Aug 1994 | A |
5349675 | Fitzgerald et al. | Sep 1994 | A |
5386524 | Lary et al. | Jan 1995 | A |
5398336 | Tantry et al. | Mar 1995 | A |
5406473 | Yoshikura et al. | Apr 1995 | A |
5420977 | Sztipanovits et al. | May 1995 | A |
5430730 | Sepulveda-Garese et al. | Jul 1995 | A |
5440699 | Farrand et al. | Aug 1995 | A |
5446868 | Gardea et al. | Aug 1995 | A |
5471617 | Farrand et al. | Nov 1995 | A |
5528503 | Moore et al. | Jun 1996 | A |
5598536 | Slaughter, III et al. | Jan 1997 | A |
5611059 | Benton et al. | Mar 1997 | A |
5613115 | Gihl et al. | Mar 1997 | A |
5623652 | Vora et al. | Apr 1997 | A |
5625781 | Cline et al. | Apr 1997 | A |
5684375 | Chaffee et al. | Nov 1997 | A |
5699350 | Kraslavsky | Dec 1997 | A |
5734831 | Sanders | Mar 1998 | A |
5790977 | Ezekiel | Aug 1998 | A |
5793954 | Baker et al. | Aug 1998 | A |
5801689 | Huntsman | Sep 1998 | A |
5805442 | Crater et al. | Sep 1998 | A |
5828672 | Labonte et al. | Oct 1998 | A |
5835507 | Huang et al. | Nov 1998 | A |
5862391 | Salas et al. | Jan 1999 | A |
5950006 | Crater et al. | Sep 1999 | A |
5975737 | Crater et al. | Nov 1999 | A |
5982362 | Crater et al. | Nov 1999 | A |
5990884 | Douma et al. | Nov 1999 | A |
5997167 | Crater et al. | Dec 1999 | A |
6014414 | Yamamoto et al. | Jan 2000 | A |
6016523 | Zimmerman et al. | Jan 2000 | A |
6028866 | Engel et al. | Feb 2000 | A |
6032203 | Heidhues | Feb 2000 | A |
6058251 | Okamoto et al. | May 2000 | A |
6061721 | Ismael et al. | May 2000 | A |
6111888 | Green et al. | Aug 2000 | A |
6122670 | Bennett et al. | Sep 2000 | A |
6134522 | Fritz et al. | Oct 2000 | A |
6151625 | Swales et al. | Nov 2000 | A |
6151640 | Buda et al. | Nov 2000 | A |
6201996 | Crater et al. | Mar 2001 | B1 |
6233626 | Swales et al. | May 2001 | B1 |
6262996 | Kainulainen et al. | Jul 2001 | B1 |
6263487 | Stripf et al. | Jul 2001 | B1 |
6282454 | Papadopoulos et al. | Aug 2001 | B1 |
6311101 | Kastner | Oct 2001 | B1 |
6321272 | Swales | Nov 2001 | B1 |
6327511 | Naismith et al. | Dec 2001 | B1 |
6370550 | Douma et al. | Apr 2002 | B1 |
6370569 | Austin | Apr 2002 | B1 |
6424872 | Glanzer et al. | Jul 2002 | B1 |
6434157 | Dube et al. | Aug 2002 | B1 |
6453210 | Belotserkovskiy | Sep 2002 | B1 |
6466995 | Swales et al. | Oct 2002 | B1 |
6470032 | Dudziak et al. | Oct 2002 | B1 |
6477147 | Bocking et al. | Nov 2002 | B1 |
6484061 | Papadopoulos et al. | Nov 2002 | B1 |
6505341 | Harris et al. | Jan 2003 | B1 |
6519263 | Huth | Feb 2003 | B1 |
Number | Date | Country |
---|---|---|
37 19283 | Dec 1988 | DE |
44 10 171 | Apr 1995 | DE |
296 00 609 | Mar 1997 | DE |
196 15 093 | Oct 1997 | DE |
0 542 657 | May 1993 | EP |
0 814 393 | Dec 1997 | EP |
0 825 506 | Feb 1998 | EP |
1 107 500 | Jun 2001 | EP |
1 107 500 | Jun 2001 | EP |
60192447 | Sep 1985 | JP |
WO 9718636 | May 1997 | WO |
WO 9853581 | Nov 1998 | WO |
Number | Date | Country | |
---|---|---|---|
20020169844 A1 | Nov 2002 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09623689 | Sep 2000 | US |
Child | 10063237 | US |