An Introduction To Control Network PDF
An Introduction To Control Network PDF
The ControlNet network’s mission is to provide reliable, high-speed
transport of two basic types of application information:
• control and I/O data
#"'%# " ' &
"#%!'#" %' '# ' • non-time critical messaging data related to the controlled system
#$%'#" # $%#&&
Control and I/O data are given highest priority. Other information,
such as programming or parameter upload and download operations,
does not interfere with the transport of control and I/O data.
The ControlNet Network as The ControlNet network is designed to be the central communication
a part of an AllenĆBradley architecture for interoperating automation products. Figure 1.1
Architecture represents the ControlNet network’s broad environment.
Figure 1.1
ControlNetĆbased Architecture
)'($"& $'(
$"%)(&
Ethernet
)"# )!( #$&
#(&' * '
Ethernet Ethernet
& '
(+-'
ControlNet ControlNet
(&
' #(!! #(
)($"( $# #'$&()($& !,
)%%! &'
&$)('
DeviceNet DeviceNet
ControlNet
4 An Introduction to the ControlNet Network
The ControlNet General relationships between the functions that comprise the
Communication Model ControlNet communication model are illustrated in Figure 1.3.
All of the figure’s blocks below the User’s Application Objects
reside within either a ControlNet ASIC or ControlNet class-specific
Example Code.
Figure 1.3
ControlNet Communication
Model
Application Layer
Network Layer
Media Access
.
ControlNet Product
Application
Specific
Software
ControlNet
Example
Software
ControlNet ASIC
ASICs Firmware
ControlNet Media
Products
8 An Introduction to the ControlNet Network
ControlNet Enablers ControlNet enablers are the software and hardware components
necessary for a product to function on the ControlNet network.
Figure 1.4 illustrates these components.
Figure 1.4
Components that Enable Communication on the ControlNet
Network
MicroĆprocessor
!$%
#!"#!$$!#
Application
Specific
Software USER
APPLICATION
ControlNet
Example
! %#!% Software EXAMPLE ASIC
SOFTWARE FIRMWARE
!%'#
! %#!% ASICs
#'#
)
ControlNet Media ControlNet media consists of the trunk-cable, connectors, taps, and
repeaters through which data travels. In contrast to the logical
components such as software or protocols, the media are the physical
components that make up a ControlNet network.
The ControlNet configuration method prevents any single node from
disrupting the network’s normal operations. This method includes a
common set of operating rules for all nodes:
• all nodes on a link must agree on a common set of network
configuration parameters before transmitting scheduled or
unscheduled data
• each connection originator (CO) is required to have specific
scheduling information before requesting or transmitting
scheduled data
• each connection target (CT) can transmit unscheduled data
immediately after power–up and a request from a connected
originator
2 ControlNet Configuration
The ControlNet Configuration Keeper node is responsible for
maintaining and distributing the network and scheduling
information. The Keeper node must hold the network attributes and
scheduling information in non-volatile storage, allowing
re-distribution after a power-fail event. Every ControlNet link must
have a Keeper-capable node to:
• support scheduled traffic
• save and distribute the network parameters and scheduling
information
,(,!- & /)!# !
*-&(" '!!*!&%) % ($*()
' /')
/)!# /( '*()
+%%* !
! The primary physical media for the ControlNet network is coaxial
cable. A ControlNet physical network is comprised of this cable and
a combination of connecting, transceiving, and terminating devices.
Secondary is a fiber optic repeater device and cabling which is
available to support long distances, such as building-to-building
installation, as well as intrinsically safe environments.
The following sections are a general description of the primary
physical system, its limitations, and components.
!
%&
% * !) .$'# *-& )$%*) ( #!%" /
('*( *& &($ ),% %& #!%"
('*(
*'
)$%* )$%*
(&'#
$ &%%*&( *($!%*&(
2 ControlNet Physical Media
Network Specifications Figure 1.2 graphs the network’s physical parameters. It also
And Parameters illustrates the relationship between the length of a cable segment and
the number of taps allowable within that distance, indicating when
/, +**" /. repeaters are necessary.
*+!" /+ /%" *"/2+-'.
/-0*' (" Figure 1.2
ControlNet Cable System Requirements
segment length
."$)"*/ &. /-0*'5 (" m (ft)
." /&+*. +**" /"! 1& /,.
2&/% /"-)&*/+-. / " %
"*! ."$)"*/ !+". *+/ Repeater required
)3&)0) ((+2(" ."$)"*/ ("*$/%
&* (0!" -","/"-.
) ) 3
+-
#/
#/ 3
Repeater not required
Table 1.A
ControlNet Network Parameters
Parameter Limit
The ControlNet network uses a passive tap with four different
configurations. The taps’ names are derived from the unique
combination of their connecting end configurations.
The following end configurations and their resulting combinations
are shown in Figure 1.3.
Physical layer repeaters extend the length and/or node count of the
network when a system requires more than 48 taps per link or a
longer cable than specifications allow (reference Figure 1.2). Also,
repeaters do not occupy any of the 99 network addresses allowed per
link; they do not require an address. (See Figure 1.2, ControlNet
Cable System Limitations and Requirements.)
$ %
#"%#
$ % $ $$ %
$ % !& ! % &" %!
!$
! %! $ # !' !
$ % %" $ !# % #"%#
$ %
4 ControlNet Physical Media
The ControlNet network provides the option of installing a second
cable between nodes. With redundant media, nodes send identical
!" & ' #"%' signals on two separate segments. The receiving node continuously
" #,& )
"!!'! '" ' compares the signals’ quality and selects the better cable to receive
!'*"% * the next message. This also provides a backup cable in case one is
%$(%& !'*"%
%&& ! "%% '"
improperly installed, not connected, or fails.
(!'"! "! '
!'*"%
Redundant media is not “Hot-Backup.”
! & "'"! Actual ControlNet products are labeled with these icons .
" !"& *' (!$(
%&&& -
!'& "!!' Cables on a redundant cable link are defined by the segment number
, %#'%&
(# ! !& and the redundant cable letter.
"!!' ,
%& (#
!'*"%
All ControlNet nodes, except repeaters, are equipped with a Network
Access Port (NAP). This feature provides a tapless, full-speed,
temporary network connection at every node. Each connection uses
"!'%"'
a 10-foot modular cable with connectors to access the system’s
coaxial media. This cable can be extended to a length of 10m.
&
This cable is available as catalog number 1786-CP.
'*"%
&&
"%'
"+
"!!'"!&
" When a node sends data over the ControlNet network, it packages
that data into a MAC frame. Each MAC frame can contain multiple
LPackets which are transmitted together. (See Figure 1.1.)
Each node can send only one MAC frame of up to a
-" /%" maximum of 510 bytes during each transmission
#+-) &* 2%& % opportunity.
*+!" /-*.)&/.
$-+0, +# !/
!
%&. $-+0, +# !/
&. &* /%" #+-) +#
'"/.
.&*$(" #-)" &/. &/. &/. &/. &/.
* +*/&* 1-&("
."1"-( '"/.
4/". 3
*/"-#-)",
+- -")("
&. !/ *! "(&)&/"-
/-/ "(&)&/"-
/%/ %. ""* 4 (& "!0*!* 4
, '$"! *! %" '
+0- " "/2+-'
("("! 4 *+!" !!-"..
&* ,-",-/&+* #+-
/-*.)&..&+*
1-&("
*+)&*( 4/".
&/. &/.
"*$/% +*/-+( +**" /&+* &*'/
2 ControlNet Communication
&% &% &%
+&% * &% &% ($
!&$$ #
$
! &$
&$& &$
+'!!+
"'$ &)"$
$%%
As shown in Figure 1.2, the MAC data field can contain several
Lpackets, which are the packets of interest to a user’s application.
!
Each Lpacket contains a single piece of application information
destined for one or more nodes on the network. Packets sent or
!
received on the physical wire contain data of interest to the
application layers as well as a connection ID (CID), control byte,
and length byte. (See Figure 1.3.) An application uses the CID to
determine whether or not a particular Lpacket contains the data it
needs.
#
A connection also provides a path between two end points. Once the
connection manager determines the virtual circuit, the route between
end points is fixed. (See “Connection Manager,” on page 7.)
The end points of connections are applications that need to share
data. Figure 1.6 illustrates a virtual circuit that traverses one or more
intermediate nodes between the source and destination.
ControlNet Communication 5
UCMM messages are always sent in the unscheduled
portion of the network interval.
Message Router
The Message Router (MR) allows an application to open connections
to multiple objects within the same node. It acts much like an
internal switchboard for a node’s objects. Other nodes may establish
a connection with the MR through the UCMM and connection
manager. Figure 1.8 is an example of how the MR functions.
Connection Manager
The Connection Manager (CM) allocates internal resources
necessary for each connection. Connection requests are originated
by:
• other nodes via the UCMM
• an application on a node
Figure 1.9 is an example of how the the CM of a target node
functions upon receiving a connection request by an originating
node.
The ControlNet network uses the Producer/Consumer model to
exchange application information. This model is the basis for
understanding all ControlNet transactions. The following builds a
producer/consumer model by discussing its basic components:
• object messages
• connection ID (CID)
• producer/consumer connection types
• transport services
• transport connection types
8 ControlNet Communication
Nodes watch for certain CIDs transmitted by producer nodes.
Once a node recognizes a CID, it consumes the message, therefore
becoming a consumer. The network assumes that each object
message has exactly one meaning but may have one or more
consumers.
!
! ! !
!
! !
ËËËË
ËËËË
!
ËËËË
!
"
Table 1.A lists the two general-purpose transport classes that have
been defined for the ControlNet network. Each transport class
provides a different level of service. It is these services that allow
communication between applications. Transport classes with higher
numbers incorporate and build upon the functions of lower transport
classes. The originating application must determine which transport
class best suits its needs for a particular data transfer.
!
ËËËË
ËËËË
ËËËË
ËËËË ËËË
ËËË
ËËË
ËËË
Point-to-Point Class 1
Figure 1.15 illustrates a point-to-point connection between
applications. In this example, data is simply sent from one
application to another. No services other than data delivery and
duplicate detection are provided by class 1. This type of connection
is commonly used for cyclic I/O data transfers (class 1).
12 ControlNet Communication
Point-to-Point Class 3
Figure 1.16 illustrates a point-to-point connection with delivery
verification. In this type of connection, the application can specify a
class 3 transport. The delivery notification is used for message
verification (class 3). A typical use for this type of connection is
client/server message traffic.
!!
ËËËË
ËËËË
ËËËË
ËËËË
ËËËË
ËËËË
Multicast Class 1
Figure 1.17 illustrates a multicast connection that can be defined
further as class 1 by the application. This example is similar to
Figure 1.15. The application may specifies that duplication detection
is required. A common use for this type of multicast connection
could be an adapter sending inputs to multiple scanners.
Notes:
#
!! "
# $
!# $
#
""
# Access to the network is determined by time. Each node may
transmit only during its assigned turn, which falls within a specified
$!!# time frame. An algorithm called Concurrent Time Domain
$# ""
Multiple Access (CTDMA) regulates the opportunity to transmit.
! " " %" % This opportunity repeats itself at precise intervals. The Network
"
"
" "%
" !"! " Update Time (NUT) is the fixed and known rate at which this
network update interval (NUI) is repeated. Figure 1.1 illustrates the
repeating NUI in which nodes can transmit their scheduled and
#&! # unscheduled messages. As depicted below, the NUI is divided into
! " ""$ "
" $ % " three sections:
!" "
"
" • Scheduled
"%
• Unscheduled
• Guardband (network maintenance)
$!
#!# #&!"
""
#
! " ! ! $ ! " "
#&! # #!% "$ !! " &$! ! ! $
! " ! ! $
#&! #
$"$ !! "
ÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇ
É ÇÇÇÇÇÇÇÇ
ÉÉÉÉÉ ÉÉÉ
ÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇ
ÄÄ ÉÉÉÉÉÉ ÇÇÇÇÇÇÇÇ
Ä ÄÄ
ÉÉÉ
ÄÄ Ä ÄÄ
2 ControlNet Network Protocol
The first portion of the NUI is reserved for scheduled message
traffic. Message delivery in this portion of the NUI is deterministic
and repeatable. Every node with a network address falling between
is timeĆcritical data that one and SMAX is guaranteed exactly one opportunity to transmit per
is sent at a fixed and repetitive rate. NUT.
Each node can transmit up to 510 bytes during its turn. The
bandwidth in this portion is reserved and configured in advance to
support real-time data transfers. Typical types of scheduled
messages include:
is the highest network address that
can reserve bandwidth in the scheduled • digital data
portion of the NUI.
• analog data
• peer-to-peer inter-locking data
The scheduled service is from 0 to SMAX. Nodes with
network addresses above SMAX will not send messages
during the scheduled portion of the interval.
this boundary moves according to
how much bandwidth is used for
scheduled message traffic
ÇÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇÇÇ
É ÇÇÇÇÇÇÇÇ
ÉÉÉ ÉÉÉ
ÇÇÇÇÇÇÇ
1
ÉÉÉÉÇÇÇÇÇÇÇ
ÄÄ ÉÉÉÉÇÇÇÇÇÇÇÇ
Ä ÄÄ
ÉÉÉ 1 1
ÄÄ Ä ÄÄ
2 2
3 3 3
4 4 4
n n n
Time
is the an implied token each node can SMAX is the highest nodes wait one for example: node 3
duration a node will method regulates reserve the network address that for each missing waits one slot time
wait for a missing network addresses bandwidth for its can reserve bandwidth node (network address) because node 2
network address during this portion of real time data in the scheduled from 0 to SMAX was turned off
before taking its the network interval transfer portion of the network
turn to transmit. interval
The actual time is
based on cable
length and the numĆ
ber of repeaters. An implied token is the manner in which a network
address determines when to transmit in relation to the
is the
duration a node will other nodes on the network. No actual token is passed;
wait for a missing the pass is implied because it is based on time. Each
network address network node either waits to hear the end of the
before taking its previous address’ transmission or a slot time for each
turn to transmit.
The actual time is missing node before sending its message. Each node
based on cable remains silent until its opportunity to transmit.
length and the numĆ
ber of repeaters. Network address 0 is reserved for future use. A node
must not use address 0.
ControlNet Network Protocol 3
! The unscheduled portion of the NUI begins after all scheduled
nodes have had an opportunity to transmit. The time remaining
before the beginning of the guardband is available on a sequentially
is the highest network address that can rotating basis to all nodes, with a network address between 0 and
communicate during the unscheduled portion UMAX. This rotation continues until the beginning of the
of the NUI. The default is SMAX + 8. guardband. The right to transmit first in the unscheduled portion
rotates one node per NUI.
A node may have the opportunity to transmit many
times during the unscheduled portion of the NUI;
is data which has no however, a node is not guaranteed an opportunity every
timeĆcritical constraints.
NUI.
In Figure 1.3, node 7 begins the unscheduled portion in the
example’s first NUI. Node 8 transmits first in the second NUI
regardless of who finished the last interval. Typical types of
unscheduled data include:
• connection establishment
• peer-to-peer messaging data
• programming data (uploads and downloads)
• the unscheduled service is from 0 to the value of UMAX. In
addition, UMAX is always greater than or equal to SMAX
• nodes with addresses greater than SMAX and less than or equal
to UMAX may only send unscheduled messages
• nodes with a network address less than or equal to SMAX may
send both scheduled and unscheduled messages
• nodes with network addresses above UMAX may not
communicate on the ControlNet network
!
The opportunity to transmit first in the unscheduled
portion of the NUI passes on a rotating basis.
ÇÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇÇÇÇ
É ÇÇÇÇÇÇÇ
ÉÉÉ ÉÉÉÉÉ
ÇÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇÇÇÇ
ÄÄ ÉÉÉÉÇÇÇÇÇÇÇ
Ä Ä
ÉÉÉÉÉ
ÄÄ Ä
Ä 8
9
8
9
10
9
10
11
1
2
3
11 12
Time
An implied token method unscheduled delivery is nodes wait one slot each node may
regulates network addresses not deterministic or time for each missing transmit many times
during this portion of the repeatable node (network address) or not at all
network interval from 0 to UMAX
4 ControlNet Network Protocol
The Guardband is the final part of the NUI and is reserved for
network maintenance. During this time, the moderator transmits
information, called the moderator frame, which keeps all nodes
synchronized (Figure 1.4).
As the application dictates, the user can perform a
network change algorithm to edit configuration
information within a moderator frame. This change
may or may not force a change in the NUT.
ÇÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇÇÇ
É ÇÇÇÇÇÇÇÇ
ÉÉÉ ÉÉÉ
ÇÇÇÇÇÇÇ
ÉÉÉÉÇÇÇÇÇÇÇ
ÄÄ ÉÉÉÉÇÇÇÇÇÇÇÇ
Ä ÄÄ
ÉÉÉ
ÄÄ Ä
ÄÄ
!
"
!# $#"
$# !""!
$( !#
#&! #"
$# '
ControlNet media-access control-hardware (ASICs) are interface
chips that allow a product to access a ControlNet network.
The ControlNet ASIC is called CNA10. The CNA10, in conjunction
with class-specific Firmware, provides connection layer services,
as shown in Figure 1.1.
"
'$
"!&$"& " '!&"!
" ! &
$(%
##&"! *$
! &$! &
! & $#'%& & &$$
ÇÇÇÇÇÇÇÇÇÇÇ ËËËËËËËËËË
ÇÇÇÇÇ
$ %"!$&
%% !'&$ $(% $!%#"$& *$
ÇÇÇÇÇÇÇÇÇÇÇ ËËËËËËËËËË
ÇÇÇÇÇ
$
ÇÇÇÇÇÇÇÇÇÇÇ ËËËËËËËËËË
ÇÇÇÇÇ
ËËËËË
ÇÇÇÇÇ ÇÇÇÇÇ
! &!
$ ! &!
%
ËËËËËËË
ËËËËËËË
%$ $!( ! *$
!&)$ ! *$ $($
ËË
ÇÇ
ËËËËËËË
ËË
ÇÇ
$)$
! &$!&
ËËËËËËË
ÇÇ
ÊÊ
!' &!
*" ! ËËËËËËË
%% $(%
%%
ÊÊ ! &$!&
$ %($
!"! &%
ÊÊÊÊÊÊÊ
ÊÊÊÊÊÊÊ
ÊÊÊÊÊÊÊ
! &$!&
*% *$ !&$
!"! &%
+%
+$
%"
" ' $
!& %!
$%!# $#
" $ ""%!
# $'# %$ #
!& %!
!" ## " #!$$!#
"&$"#$# &!#%
!$%
!$#""
! &#%! %$
%%&$ !& %#$
" $ %$ # The CNA10 ASIC protocol engine supports the following features:
• MAC processor
# $'# • modem services
• transmit and receive FIFOs
%$ #
• Lpacket screeners
• cable redundancy
• NAP
• signal integrity checking (CRC)
$ #! (
!# ( The CNA10 modem sends and receives data in the form of MAC
& ( frames. Its protocol controller constantly tracks which node is next
to transmit and manages the receive and transmit process. When a
packet is waiting to be sent, it is held in transmit FIFOs until its turn.
Before a received Lpacket can be processed, it is screened by the
Lpacket screener. The Lpacket’s CID is read and compared to an
$ #! ( internal, host-programmed list of CIDs. If a match is found, the
!# ! %!
%# screener attaches an index value to the Lpacket and sends it to the
communication processor.
ControlNet Enablers 5
Communication
Processor
The CNA10 provides one transmit and one receive ring buffer that
supports an Unconnected Message Manager (UCMM) transport as
well as 31 connected channels. In general, ring buffers are used for
unconnected messaging such as open/close requests and client/server
messaging, while the connected transport channels are used for
real-time I/O data transfers.
For more information, refer to the pages listed in the table below.
"
The dual-port RAM is the point at which the host processor
physically and logically connects to the CNA10. It is 3K-bytes in
size and provides buffers for:
• configuration
• interrupt control
• communication services
• one receive and one transmit ring buffers (UCMM and T3)
174 • each of the 31 connecting channels (two channels required for
bytes
each T1 connection and one channel required for each T3
connection with its data routed through the ring buffers)
Communication
Processor
!
2898 Dual Port RAM Host
bytes !
6 ControlNet Enablers
$ $ %" (#
&
% !
% !
& % % !
$&" CNA10 software components are located both in the ASIC firmware
The communication example code, shown in Figure 1.2, supports a
set of application objects and interfaces. This set of objects and
interfaces may differ, depending on the type of product being
developed. Communication software examples have been developed
with the appropriate objects and interfaces to support the real-time
I/O class and the non-time-critical messaging class. Examples of
how products would exchange data with the other classes is shown in
Figure 1.4