Beruflich Dokumente
Kultur Dokumente
User's Manual
All information contained in this manual is current as of its creation/publication. We reserve the right to change
the contents of this manual without warning. The information contained herein is believed to be accurate as of
the date of publication; however, Bernecker + Rainer Industrie-Elektronik Ges.m.b.H. makes no warranty,
expressed or implied, with regard to the products or the documentation contained within this book. In addition,
Bernecker + Rainer Industrie-Elektronik Ges.m.b.H. shall not be liable in the event of incidental or
consequential damages in connection with or resulting from the furnishing, performance, or use of these
products. The software names, hardware names, and trademarks used in this document are registered by the
respective companies.
EtherNet/IP User's Manual, V 1.00 1
Table of contents
1 Table of contents
1 Table of contents ........................................................................................................2
4 Commissioning.........................................................................................................12
4.1 Connection to bus controller via Ethernet...........................................................................................12
4.2 Start-up ...............................................................................................................................................13
4.2.1 Blink codes for boot procedure ..................................................................................................................... 13
4.2.2 Force boot from default area......................................................................................................................... 13
10 B&R-specific objects..............................................................................................37
10.1 Bus controller object (CIP class 0x64)..............................................................................................37
10.1.1 Class attributes ........................................................................................................................................... 37
10.1.2 Instance attributes....................................................................................................................................... 38
10.1.3 Common services ....................................................................................................................................... 52
10.1.4 B&R-specific services ................................................................................................................................. 52
10.2 I/O module object (CIP class 0x65) ..................................................................................................53
10.2.1 Class attributes ........................................................................................................................................... 53
10.2.2 Instance attributes....................................................................................................................................... 53
10.2.3 CIP common services ................................................................................................................................. 58
10.2.4 B&R-specific services ................................................................................................................................. 58
14 Application examples.............................................................................................64
14.1 Assigning an IP address ...................................................................................................................64
14.2 Resetting the factory settings (deleting flash memory).....................................................................64
14.3 Querying the I/O assembly lengths...................................................................................................65
The B&R bus controllers for EtherNet/IP make it possible to connect B&R input and output modules to
EtherNet/IP. The bus controller is operated via the corresponding B&R X20 interface module (scanner
module) or with scanners from external systems that support the EtherNet/IP standard from the ODVA.
• Fieldbus: EtherNet/IP
• Integrated 3-port switch for efficient cabling (2 external ports: IF1, IF2)
• Automatic configuration of I/O modules
• Can be configured by the scanner using EtherNet/IP Configuration Assembly
• DHCP support
• Configurable I/O cycle (0.5 - 4 ms)
• Minimum fieldbus cycle time (also Request Packet Interval or RPI): 1 ms
After starting up, the EtherNet/IP bus controller boots all connected I/O modules (also referred to as
"terminals" or "slices") via the B&R X2X bus and generates a local process image. In addition to this
automatic configuration (factory setting), manual configuration is also supported; to do this, configuration
data must be created and transferred to the bus controller. Additional information about configuration options
can be found in chapter 6.
Depending on the data type, I/O data is split up among different assemblies (CIP "Assembly Object", class
0x4).
These (base-) assemblies contain the data points (I/O channels) of the I/O modules in their order, i.e. by
increasing X2X station number (I/O modules from "left" to "right").
Combination input- and output assemblies combine the various base assemblies and are generally used for
I/O communication (data connections, Class1 connection). See chapter 7 for more details.
Only the default function model is supported (see respective module description), when the bus controller
operates I/O modules in automatic configuration mode.
All other function models are supported if these modules are configured accordingly by B&R’s
FieldbusDESIGNER (see next chapter).
Additional information about module configuration can be found in chapter 6.
The B&R FieldbusDESIGNER can be used for configuring the EtherNet/IP bus controller and the connected
I/O modules. This tool is available for free download from the B&R web portal:
www.br-automation.com/designer
All supported I/O modules can be easily integrated on the bus controller and configured using the selection
menus. Variables can be defined in the I/O mapping as usual. Users without B&R experience are provided
with an extensive help system.
When the project is compiled, configuration files are generated that can either be directly implemented in a
3rd party development environment or manually transferred to the bus controller.
The FieldbusDESIGNER generates a full configuration (see chapter 6.2).
An integrated web interface (see chapter 12) as well as a Telnet service (see chapter 13) are available for
system management and diagnostics (bus controller including connected I/O modules).
3.8 Functionality
3.9 Performance
Class ID Name
0x1 Identity
0x2 Message router
0x4 Assembly
0x6 Connection manager
0xF4 Port object
0xF5 TCP/IP interface object
0xF6 Ethernet link object
0x64 Bus controller object
0x65 I/O module object
The LINK LEDs L/A ("Link/Access") IF1 and IF2 signal the physical connection status.
If no physical Ethernet connection is present, both LEDs are off.
When network activity takes place, the corresponding LINK LED blinks green.
The module status LED "Mod Status" and the network status LED "Net Status" can be
either green or red.
Error-free states are indicated with green signals. Errors are indicated by a series of red
pulses.
Details about error states are provided in the adapter status (bus controller object, class 0x64, instance 1,
attribute 1 – see chapter 10.1.2.1).
An overview of the network address switch functions can be found in chapter 5.5.
Please note that for all switching positions not equal to $00, the IP address configured in the bus
controller is only partially used (between $01 and $7F) or not used at all.
Changes to the network address switch are only applied after a restart (power cycle). A restart can
also take place via the web interface (see chapter 12), the Telnet interface ("restart" command,
chapter 13.1) or the fieldbus (service "Reset" 0x5 of the "Identity object" class 0x1, chapter 9.1).
4 Commissioning
An IP address must be assigned for communication with the bus controller. Two types are possible here:
• Fixed IP address
• Operation on a DHCP server
In addition to the attributes from the TCP/IP object (CIP class 0xF5, see chapter 9.6), the network address
switch can also be used to configure the two options (see chapter 5.5).
If the network address switch is set to $FF, the bus controller is assigned the fixed IP address 192.168.100.1
following a restart (power cycle); these methods can then be used to define a new IP address:
For operation on a DHCP server, the network address switch must be assigned a value between
$80 and $EF, where the host name of the controller depends on the network address switch value
(see chapter 5.2). Therefore, you must make sure that two bus controllers are not operated in the
same network with the same network address switch value (with the exception of the value $00,
see below).
Operation on a DHCP server can also be configured using the "Configuration Control" attribute
(TCP/IP object, class 0xF5, instance 1, attribute 3, bit1 set). The network address switch must be
set to the value $00 in order to use this setting. In this case, the parameter from attribute 6 (TCP/IP
object, class 0xF5) is used as host name.
Details about the TCP/IP object can be found in the EtherNet/IP specification or chapter 9.6.
The EtherNet/IP bus controller X20BC0088 can be addressed in two different ways:
• Via its IP address (see chapter 5.1)
• Via its host name (NetBIOS service, see chapter 5.6)
The controller's IP address can be changed using its network address switch; when in position $00, the
communication parameters - see CIP class 0xF5 - that are stored (configured) in the controller's Flash
memory are used (e.g. IP address, startup configuration, etc).
If the network address switch is set to $FF, then the controller is assigned the IP address 192.168.100.1.
Details regarding the network address switch can be found in the following chapter 5.
4.2 Start-up
Initialization takes place once the supply voltage is switched on. The bus controller determines the input and
output data size of the individual I/O modules, accounts for any saved configurations and generates the
process image.
If there is a problem at startup, the bus controller outputs a blink code with the module status LED "Mod
Status" (see chapter 3.11). It is also possible to determine which of the two firmware blocks is being used for
booting. Details about the active boot block can be found in chapter 10.1.2.1; further details about the
respective blink codes are provided in the following chapter.
An existing configuration can be used by deleting the flash memory, either via the integrated web
interface (see chapter 12), the Telnet interface (command "flash erase", see chapter 13.1) or the
fieldbus (service 0x35 of the bus controller class 0x64). This will reset the bus controller to the
factory settings.
The manufacturer-specific service 0x35 of the bus controller class 0x64 does not require any
attributes (see chapter 10.1.4).
If the configuration data should remain unchanged in the flash, then a restart can be executed via the service
"Reset" 0x5 of the "Identity object" class 0x1 with the USINT attribute "1" (loads factory default values
including factory communication parameters) or attribute "2" (loads default values without communication
parameters). See chapter 9.1 for more details.
If a reboot is executed due to an error of the firmware in the flash memory, then “another" boot block is tried
the next time the system is started.
This means: if an error occurs in the upgrade area, then the system is automatically booted from the default
area (Boot from 0).
To force a boot from the default area, one of the network address switches must be moved constantly during
the boot procedure. The boot loader detects this and starts flashing red rapidly with the module status LED
"Mod Status". As soon as the network address switch is not changed over a time frame of 1 second, the bus
controller is restarted with the default boot block and the currently set network address switch.
Changes to the network settings or network address switch are only applied after a restart (power cycle). A
restart can also be initiated via the web interface (see chapter 12), the Telnet interface ("restart" command,
chapter 13.1) or the fieldbus (service "Reset" 0x5 of the "Identity object" class 0x1, chapter 9.1).
If the bus controller is restarted with the network address switch $FF, it is
initialized with the IP address 192.168.100.1. This address is also the factory set
(default) address upon delivery (when address switch value is $00).
This IP can be used to establish a connection to the bus controller.
The internationally unique MAC address is listed on the housing side of the bus
controller. The combination of "br" and the MAC address results in a unique name
(primary NetBIOS name) that also makes it possible to access the bus controller.
Example for the primary NetBIOS names:
Without additional parameter changes, the default IP address 192.168.100.1 or the NetBIOS name
"br"+MAC can be used to communicate with the controller. The bus controller can only be accessed via this
name if there are no intermediary routers or gateways because the NetBIOS method is used (see chapter
5.6).
At a network address switch value between $80 and $EF, the bus controller attempts to request an IP
address from the DHCP server. To query this IP address, simply run a "ping" command with the host name.
The bus controller registers this host name on the DHCP server, which should forward it to a DNS server.
Example:
The following host name is generated for a network address switch value of $D7 (dec. 215): "breip215"
You must ensure that two bus controllers are not operated in the same network with the same
network address switch value (with the exception of the value $00, see below).
Operation on a DHCP server can also be configured using the "Configuration Control" attribute
(TCP/IP object, class 0xF5, instance 1, attribute 3, bit1 set). The network address switch must be
set to the value $00 in order to use this setting. In this case, the parameter from attribute 6 (TCP/IP
object, class 0xF5) is used as host name.
Details about the TCP/IP object can be found in the EtherNet/IP specification or chapter 9.6.
If DNS service is not available on the network, the bus controller's two NetBIOS names can also be
accessed. The secondary NetBIOS name is identical to the host name, except for at network address switch
value $00 (see chapter 5.6).
The network parameters can be changed using the integrated web interface (see chapter 12), the Telnet
interface (chapter 14.1) or the fieldbus (TCP/IP object, class 0xF5, see chapter 9.6).
If the IP address should be set via the TCP/IP object, then the new address is only saved in the flash if
attribute 3 (Configuration Control) of the TCP/IP object is set at 0 (see CIP specification).
Changes to attributes in the TCP/IP object are immediately saved to the flash memory and do not
have to be saved explicitly. They are applied when the bus controller is restarted as long as a
different setting is not being forced by the network address switch.
The network address switch can be used to change the last position (octet) in the IP address that was
configured in the bus controller. The IP address saved in the flash memory is not changed. If the network
address switch is set to $00, the bus controller applies the IP address last saved to flash memory.
Network address switch values between $01 and $7F cause the last position of the IP address (the lowest
byte) to be overwritten by the value of the network address switch. This gives the user a simple and quick
way to address a large number of bus controllers. This basically means that the IP address of a bus
controller can be selected between 192.168.100.1 and 192.168.100.127 using the network address switch
without needing any additional configuration (default IP address setting).
$01 to $7F The lowest value byte of the IP address stored in the flash memory (last
object) is adjusted using the network address switch value (e.g.
192.168.100.***, whereby *** corresponds to the decimal value of the network
address switch value).
All other bus controller parameters are read from the flash memory and are
used without being changed (except for Configuration Control).
$80 to $EF The bus controller runs in this range in DHCP mode. A host name is generated
according to the setting of the network address switch.
Example: The generated host name is made up of three elements: "br" + "eip"
+ network address switch (three decimal places)
This means that a network address switch of e.g. $D7
(dec. 215) would result in the following host name: "breip215"
$F0 to $FD Reserved (same function as the position $FF, i.e. all communication
parameters are initialized with default values)
$FE All bus controller parameters are initialized with default values during the boot
procedure. No values are read from the flash. The communication parameters
are equal to the values as with the switch setting $FF.
$FF All communication parameters are initialized with default values. All other bus
controller parameters are read from the flash.
In addition to the host name, needed for registration on the DHCP server (see chapter 5.2), the bus
controller also has NetBIOS names. These are used to address the bus controller from a PC using a name
(as opposed to an IP address); this is only possible if no routers or gateways are in the way.
The primary NetBIOS name is always composed of the prefix "br" and the MAC address from the bus
controller (see chapter 5.1).
The secondary NetBIOS name corresponds to the primary NetBIOS name at the network address switch
position $00; this is necessary because there may be several bus controllers with the network address
switch $00 in a network segment (in this case, the IP address is used from the flash memory).
For all other network address switch positions, the secondary NetBIOS name is generated from the network
address switch value (as in DHCP mode); see chapter 5.2: "br" + "eip" + network address switch (3 decimal
places).
This allows addressing the bus controller using the NetBIOS name based on the network address switch.
This is also possible if the controller is not configured to DHCP (network address switch value between $01
and $7F).
When the EtherNet/IP bus controller is started (after a power cycle), it detects and then starts all of the
connected I/O modules (X2X bus modules, terminals), and generates an internal image of the input and
output data (also see the following chapter 7).
• Automatic configuration
• Manual configuration (full configuration)
If configuration data for the I/O modules is stored in the flash memory of the bus controller (manual
configuration), the respective modules are configured at start up. The configuration data is stored in the
assembly object (class 0x4) in the manufacturer-specific instances 100 (0x64) or 130 (0x82) to 139 (0x8B).
Further details can be found in the chapter 7.7.
If there is no configuration data, then the I/O modules will be started using default settings; this operating
mode is also called "automatic configuration".
The B&R tool FieldbusDESIGNER (see chapter 3.3) can be used for configuring the EtherNet/IP bus
controller and the connected I/O modules.
This generates a full configuration as binary files (see chapter 7.7), which can be downloaded to the bus
controller manually using the integrated web interface (see chapter 12) or using the application option
"Explicit Messaging" (assembly object, class 0x4). In the event of servicing, configuration download via the
controller or application is beneficial because the bus controller can be replaced without having to manually
transfer the configuration again.
Furthermore, the position of the I/O data points (I/O mapping) is described in a text file in the respective I/O
assemblies.
When automatic configuration occurs, each module is operated in the "Bus Controller" function model (model
254, see module documentation).
When booting, each module reports the length of the synchronous input and output register to the bus
controller, which then uses this information to create the I/O process image (see chapter 7). Fixed registers
are reported by the bus controller just as they were reported by the module. Dynamic registers are
automatically mapped on the X2X bus by the bus controller.
Bus modules with node number switches (e.g. X20BM15, X67DM9321) cannot be used in the
"Automatic configuration" operating mode (see chapter 6.1.2).
A full configuration must be made in order to operate this sort of module in an alternative model.
When working with automatic configuration, the I/O modules following empty slots (modules with
higher X2X station numbers) will not be started!
If an I/O module is missing or the hardware ID is different, then an error is triggered (see chapter 3.11 "LED
signaling" or chapter 10.1.2.1 "Adapter status").
When working with a full configuration, the I/O modules following on one or more faulty I/O modules
(modules with higher X2X station numbers) will be started. These will have the I/O module status 0x52
("operational"), as long as no other errors occur.
Depending on the data type, the I/O data of the individual I/O modules is split up among different assemblies
(CIP "Assembly Object", class 0x4). These base assemblies contain the data points (I/O channels) with
modules in order, i.e. by increasing X2X station number (input/output modules from "left" to "right").
All analog and complex I/O registers are mapped in the analog base assemblies:
Keep in mind that EtherNet/IP uses the Little Endian format and therefore the lowest value byte is mapped
first. Example: an integer value of 0x1234 will be transmitted as 0x34 12.
In the digital assemblies, the first digital data point of each module is assigned to a new, unused byte (bit
offset = 0).
If the number of digital I/O channels in a module do not completely fill one byte,
then the remaining bits are filled with zeros, i.e. the smallest mapped data unit per module is one
byte (see following examples).
In addition to the analog and digital I/O data, there are also the following input assemblies:
The network status assembly (see chapter 7.4) supplies one byte of status information for each X2X station
(in the case of the X20 system, this is the bus module, e.g. X20BM11 and in the case of the X67, the ASIC
block integrated in the I/O module). The states of the output channels that have a response (I/O register
addresses 30 and 31 on digital modules) are located in the output status assembly as input data.
In addition to these six base assemblies, there are two combination assemblies that combine the data of the
respective base assemblies; accordingly, these combination assemblies have a length, which is a total of the
individual base assembly lengths. The combination assemblies are generally used for I/O communication
(data connections, Class1 connection):
The attributes 0x40 to 0x46 of the bus controller object (class 0x64) can be used to read out and to
set the lengths of the individual base assemblies and to configure the grouping of the
combination input assemblies (see chapter 10.1.2.3).
In the event that additional I/O modules are added during operation, the process image is automatically
updated without changing the parameters of the individual assemblies (attribute 0x40 to 0x46 of the bus
controller object, class 0x64 - see chapter 10.1.2.3). In this case, the attributes 0x20 to 0x27 (I/O data length)
of the bus controller object will be updated.
Information about changes to the assemblies can be found in chapter 7.6.
Unlike the Exclusive Owner assembly connection, the Input and Listen Only assemblies allow read access to
an existing Exclusive Owner connection.
The difference between the two types of access has to do with the dependency to the respective
Exclusive Owner assembly. All Listen Only connections are automatically interrupted if the corresponding
Exclusive Owner connection has ended.
A typical application example would be if more than one controller (scanner) needed to access one adapter.
Only the scanner with the Exclusive Owner connection can set outputs.
On the other scanners, either the "Input Only" instance 254 or the "Listen Only" instance 255 must be
specified as Consuming Assembly (Originator → Target Connection Point) instead of an output assembly;
whose size is then 0 bytes. In this case the scanner is the origin and the target is the bus controller.
The input assembly of the respective Exclusive Owner connection must be configured as input assembly
(Producing Assembly or Target → Originator Connection Point).
It is also important that the packet interval (Packet Rate or RPI) of the connection "Target → Originator" is
equal to that of the Exclusive Owner connection; the RPI of the connection "Originator → Target" plays no
role here.
Another option is manual downloading of the individual configuration files using "Explicit Messaging" in the
application on the PLC (the 450 byte large files are used for this, e.g. EthernetIP_CPU1_IF1_ST1_ext_0.bin,
EthernetIP_CPU1_IF1_ST1_ext_1.bin, etc.).
The binary file with the size of 4500 bytes fills all 10 extended configuration assemblies (130 to 139); when
transferring to the bus controller via the web interface, all existing configuration data is also overwritten in the
extended assemblies.
To store more than one configuration in the B&R bus controller, use the "Advanced configuration" menu of its
web interface or the "Explicit Messaging" function in the application on the controller.
Here you can group the files (e.g. EthernetIP_CPU1_IF1_ST1_ext_0.bin,
EthernetIP_CPU1_IF1_ST1_ext_1.bin, etc.) in the ten extended configuration assemblies (instances 130 to
139 or 0x82 to 0x8B).
If a configuration is larger than 450 bytes, then the configuration block consists of an according number of
binary files with a size of 450 bytes; these must be stored consecutively.
Example: A configuration with a size of 600 bytes consists of the files EthernetIP_CPU1_IF1_ST1_ext_0.bin
and EthernetIP_CPU1_IF1_ST1_ext_1.bin. In this example the first two extended configuration assemblies
on the bus controller already contain other configuration data, so the first file has to be stored in the third
extended configuration assembly (instance 132) and the second is stored in the fourth (instance 133).
A particular configuration can be activated by running service 0x37 (bus controller object, class 0x64). The
service must be provided with the start assembly ID as parameter (UINT) (see chapter 10.1.4). The
parameter value 0x0084 must be used for the example mentioned above.
The menu item "I/O Assembly Mapping" in the bus controller's integrated web interface (see chapter 12) can
be used to view the lengths and offsets of the individual I/O module data types in the two combination
assemblies:
In this graphic, the value in front of the forward slash specifies the byte offset in the output and input
combination assembly, while the value after the forward slash specifies the length of the respective data in
bytes.
In this example, the default settings for the length of the base assemblies were each left at 120 bytes.
Therefore, the output combination assembly contains 8 bytes of analog output data (AO) for the module
X20AO4622 at offset 0 (at the beginning of the data). Byte 0 is the LSB, byte 1 is the MSB of the first
channel (EtherNet/IP uses the Little Endian format), byte 2 is the LSB of channel 2, etc.
This is followed by 112 bytes of unused data due to the default length of the AO base assembly (see text
above).
Byte 120 contains the digital output data (DO) for the channels 1 to 8 of the module X20DO9321 and byte
121 the channels 9 to 12 on the bits 0 to 3.
Byte 122 contains the digital output data for the channels 1 to 4 of the module X20DO4322 (bit 0 to 3).
The input combination assembly contains 6 bytes of analog input data (AI) of the power supply X20PS9400;
these are the 3 (word) channels “status”, “current” and “voltage”. This is followed by (with an offset of 6
bytes) 8 bytes for the 4 analog inputs of X20AI4622. The remaining 108 bytes (120 minus 6 minus 8) are
unused and return zero data. The data for the digital input base assembly (DI) begins at byte 120 with a total
of 3 bytes of data for both DI modules.
With default settings, the input combination assembly contains one byte for each X2X station with the
network status (NS) at offset 240; details about this can be found in chapter 7.4.
The data for the output status (OS) assembly is located at offset 360; in this case, the module X20AI4622
returns 1 byte of data (2 bits per channel for the states short-circuit and overflow). The two DO modules
return 1 bit of status information (short-circuit or overload) for each output channel; byte 361 contains the
status for channel 1 on bit 0 and the status for channel 8 of the module X20DO9321 on bit 7. In the next byte
362, the states for the channels 9 to 12 are located on bit 0 to bit 3. The other bits are unused and return
zeros. In byte 363, the states for channels 1 to 4 of the module X20DO4322 are located on bit 0 to bit 3. The
other bits are unused.
8 Adapter actions
States Description
Communication Loss The Class1 Exclusive Owner connection to the scanner has been lost (timeout).
The network status LED "Net Status" blinks red.
Program mode The scanner is in program mode; the adapter becomes idle.
No LED signaling.
Module failed An I/O module is removed or becomes defective during operation.
The module status LED "Mod Status" blinks red (Major Recoverable Fault)
Module missing at A missing module is detected during the boot phase.
power-up The module status LED "Mod Status" blinks red (Major Recoverable Fault)
Module mismatch at An incorrect module type is detected during the boot phase.
power-up The module status LED "Mod Status" blinks red (Major Recoverable Fault)
This state occurs when the adapter doesn't detect any scanner activity during a specified time window
(Class1 connection timeout).
The timeout status is reset either when the connection that caused it is reestablished, or explicitly by the
service "Reset Timeout" 0x32 of the bus controller object (CIP classed 0x64, see chapter 10.1.4); the desired
behavior can be configured using the attribute 0x63 "Communication Loss (Timeout) Reset Mode" of the bus
controller object (class 0x64, instance 1 - see chapter 10.1.2.4).
All timeout-specific parameters are defined using the forward open service, and are therefore permanently
linked to a class 1- or class 3-connection. There are different timeouts that correspond to different
connection types.
The adapter switches to idle mode when a scanner with an active connection is switched to idle mode. This
is usually the case if the corresponding PLC is switched to program mode.
Idle mode can only be reset by the scanner. The state is not indicated with an LED.
This event occurs when an I/O module is removed or identified as defective during operation.
The status can be reset by reconnecting all I/O modules the way they were originally.
This state is indicated as Major Recoverable Fault with a red blinking module status LED "Mod Status".
This state occurs during the boot phase when a missing module is detected.
If there is no module configuration data available, then missing modules can only be detected if there are
free slots between the connected modules. If the user has linked this event with an action, then this state is
indicated as Major Recoverable Fault with a red blinking module status LED "Mod Status" and can only be
reset by rebooting. If the event has not been linked with an action (i.e. with the dummy action No Action),
then there is no LED indication and the event is only reflected in the adapter status (class 0x64, instance 1,
attribute 1 – see chapter 10.1.2.1).
This state occurs during the boot phase when an incorrect module type is detected. Incorrect module types
can only be detected if the module configuration data is available. This state is indicated as Major
Recoverable Fault with a red blinking module status LED "Mod Status" and can only be reset by rebooting.
Priority Action
1 Module mismatch
2 Module missing
3 Communication loss (Timeout)
4 Module failed
5 Program mode (Idle)
The action scope can be configured (see chapter 10.1.2.4) using the two attributes 0x62 "Communication
Loss (Timeout) scope" and 0x65 "Program Mode (Idle) scope" of the bus controller object (class 0x64,
instance 1) or with the corresponding parameters under “Adapter configuration” in FieldbusDESIGNER.
object
0x5 Set STRUCT TCP/IP network Contains TCP/IP
of: interface configuration parameters.
configuration In order to prevent
incomplete/incompatible
configuration, the
parameters cannot be set
individually. The user
should first get this
attribute, change the
desired parameters then
set the attribute.
UDINT IP address 0x0164A8C0 Value of 0 indicates no IP
(corresponds to address has been
192.168.100.1) configured. Otherwise a
valid Class A, B, or C
address shall be set.
UDINT Network mask 0x00FFFFFF Value of 0 indicates no
(corresponds to network mask has been
255.255.255.0) configured.
UDINT Gateway address 0xFE64A8C0 Value of 0 indicates no IP
(corresponds to address has been
192.168.100.254) configured. Otherwise a
valid Class A, B, or C
address shall be set.
UDINT Primary name 0x00000000 Value of 0 indicates no
server name server address has
been configured.
Otherwise a valid Class
A, B, or C address shall
be set.
UDINT Secondary name 0x00000000 Value of 0 indicates no
server secondary name server
address has been
configured. Otherwise a
valid Class A, B, or C
address shall be set.
STRING Domain name 0x0000 ASCII characters.
(length = 0, Maximum length is 48
empty STRING) characters. Shall be
padded to an even
number of characters
(pad not included in
length). A length of 0
indicates no domain
name is configured.
0x6 Set STRING Host name 0x000E ASCII characters.
(length = 14) Maximum length is 64
characters. Shall be
plus hex padded to an even
equivalent of number of characters
“br+MAC” (pad not included in
(2+12 digits) length). A length of 0
indicates no host name is
configured.
10 B&R-specific objects
10.1 Bus controller object (CIP class 0x64)
The bus controller object is used to define all global bus controller parameters.
All I/O module parameters are managed separately via the I/O module object (CIP class 0x65, see chapter
10.2).
0x40 Set / Get UINT Size of the analog input assembly in bytes (AI)
0x41 Set / Get UINT Size of the analog output assembly in bytes (AO)
0x42 Set / Get UINT Size of the digital input assembly in bytes (DI) Assembly
0x43 Set / Get UINT Size of the digital output assembly in bytes (DO) Sizes
0x44 Set / Get UINT Size of the X2X network status assembly in bytes (NS)
0x45 Set / Get UINT Size of the output status assembly in bytes (OS)
0x46 Set / Get UINT Composition of the combination input assembly
Adapter status
AttributeID [hex] 0x1
Data type UDINT
Access Get
Default value -
Description Reads the adapter status. 32 bits of information are available.
Bits 0 to 10 indicate error-free states, bits 11 to 31 faulty states. Individual states are also
indicated using the two status LEDs on the bus controller (see chapter 3.11).
Number of modules
AttributeID [hex] 0x20
Data type UINT
Access Get
Default value
Description Number of successfully started I/O modules; configured dummy modules are not
counted. This attribute is updated (incremented) if additional I/O modules are started
during operation. A module that fails or is removed during operation is evaluated as an
error (bit 13 in the adapter status, see chapter 10.1.2.1). The attribute (number of
modules) is not changed in this situation.
B&R EtherNet/IP bus controllers provide different static assembly instances that can be used for I/O
communication (see chapter 7).
Combination assemblies are made up of several base assemblies. Accordingly, they have a total size based
on the sum of the individual base assemblies.
In the event that the total size of a combination assembly is configured larger than the maximum allowed
value of 502 bytes, then this assembly will not be created when a (subsequent) assembly re-initialization
takes place, which means that this assembly cannot be used for the I/O communication.
Changes to the assembly size are only applied after the bus controller service 0x36 has been
performed (see chapter 7.6).
The size of the standard assemblies is configured using the following attributes. The value range of the
assembly sizes is [0..502] bytes.
Bit Meaning
0 Analog input Bit set: Assembly active
1 Digital input Bit not set: Assembly not active.
2 Network status
3 Output status
Example:
A combination input assembly should be created with the following configuration:
Digital Input + Output Status
1. Define the size of the affected standard assemblies
2. Configure the composition of the combination input assemblies with 0xA
(binary 1010)
3. Scanner configuration: The size of the combination input assembly is the
sum of the sizes of the standard assemblies involved
4. Re-initialization of the adapter assemblies by calling the bus controller
service 0x36 (see chapter 10.1.4)
10.1.2.4 Actions
Value Scope
0 Local
1 Global
Value Scope
0 Local
1 Global
10.1.2.6 Miscellaneous
Class1 and Class3 connections cannot be established during the module initialization
phase; the adapter is in initialization or self-test mode, which is indicated by the module
status LED "Mod Status" (see chapter 3.11).
IP MTU [Byte]
AttributeID [hex] 0xE3
Data type UINT
Access Set / Get
Default value 1500
Description This feature has not yet been implemented.
MTU specifies the maximum size of the complete TCP/IP packet. The smaller the packet
size, the more the reference data is fragmented.
The default setting is 1500 bytes. Permitted value range: 100 to 1500.
Changes only take effect after a software or hardware reset (restart).
Value Description
0 The bus controller is operated in the mode "Automatic configuration", see
chapter 6.1
100 "Manual configuration" via configuration assembly instance 100
(connection-based configuration assembly, see chapter 7.7.1)
130..139 "Manual configuration" via extended configuration assembly (instance 130
to 139), extended configuration assemblies (see chapter 7.7.2).
Example 1:
The bus controller is connected with a scanner that opens a Class1 connection, thereby
sending the configuration data. Since this is new data, the parameter Boot Config
Assembly ID is set to the ID of the transferred configuration assembly (usually 100). If the
same configuration data is now saved by the application in the extended configuration
assembly with the ID 130, and ID 130 is then activated via the service 0x37, then the bus
controller is not restarted and the parameter Boot Config Assembly ID remains
unchanged at its previous value (because in this case, the configuration data has not
changed).
Example 2:
New configuration data (that does not match the currently used configuration) is written
to one (or more) extended configuration assembly(ies) and then activated via the service
0x37. The bus controller automatically restarts and the parameter Boot Config Assembly
ID is reset (value: 130..139). A scanner then establishes a Class1 connection and sends
configuration data to the bus controller that is identical to the current configuration. In this
case, the parameter Boot Config Assembly ID is not changed (because the configuration
data has not changed).
Example:
The configuration A is stored in the assemblies 130, 131, 132 (e.g. files *_ext_0.bin,
*_ext_1.bin and *_ext2.bin from the FieldbusDESIGNER)
Configuration B in the assembly 135
Configuration C in the assembly 136
The following service commands are now needed to activate the separate
configurations
For configuration A: Service: 0x37, data 0x82 00 (parameter: ID 130)
For configuration B: Service: 0x37, data 0x87 00 (parameter: ID 135)
For configuration C: Service: 0x37, data 0x88 00 (parameter: ID 136)
Each instance of this I/O module object corresponds to the electronics module operated on this
X2X station; for example, the instance 0x1 stands for the first I/O module in the X2X bus.
On the B&R bus controller X20BC0088, instance 0x1 is always the supply module, also called the power
supply (e.g. X20PS9400 or X20PS9402).
Additionally, service functions enable asynchronous I/O module communication; this makes it possible to
access asynchronous I/O registers during operation (i.e. to change configurations during operation). Details
about these registers can be taken from the respective module documentation.
The module hardware ID can be taken from the respective module documentation. Furthermore, a serial
number is printed on the electronic module; the module hardware ID corresponds with the first four digits of
this serial number (see figure):
Note:
The IDs up to 9999 are
printed as decimal numbers
and must be converted to
hex values for comparison!
Module status
AttributeID [hex] 0xFD
Data type UINT
Access Get
Default value -
Description Reads module status of a connected I/O module.
Value Meaning
0x00 '0' No X2X station present for this instance (this slot)
0x42 'B' Boot process (OS loader test)
0x43 'C' Module being configured
0x44 'D' Firmware download active
0x4E 'N' X2X station present, but the I/O module cannot start for the
following reasons: No I/O power or the module is not connected to
the X2X ASIC module
0x50 'P' Pre-operational (module is ready for run mode)
0x52 'R' Run mode (operational)
0x55 'U' Boot process (uploading IDs)
0x70 'p' Pre-operational (module is ready for run mode)
0xE0 Error: Module firmware missing
0xE1 Error: Module firmware invalid
0xE2 Error: Configuration fault (module cannot be activated); potential
configuration error (incorrect function model, etc.)
0xE3 Error: Configuration fault (registers cannot be mapped, potential
configuration error, etc.)
0xE4 Error: Module not booted (internal error)
0xE5 Error: Module not booted (X2X frame is too small Æ increase X2X
cycle time if necessary)
0xE6 Error: Module not booted (incorrect module type configured for this
slot)
Example: Reading the input filter of a digital input module (e.g. X20DI9371) on slot 2 (X2X station 2).
The input filter is mapped in register 18 (hex 12). The command looks like this:
Service=0x32, class=0x65 (dec. 101), instance=2, attribute=<empty> or any, data=0x1200 (dec. 12, Little
Endian format)
By default, the input filter is set to 1ms (value=10, because specified as multiple of 100µs); the result is
output as 0x0A000000 (dec. 10, Little Endian format).
Example: Switching an analog input module (X20AI4622) from default setting “voltage” to “current”
measurement; the module is connected to slot 11 (X2X station 11). The input channels 2-4 should continue
to be used for voltage measurement Æ configuration value = 0x01 (see module/register documentation). The
channel type for this module is mapped in register 18 (hex 12).
11 Diagnostic options
The X20BC0088 bus controller offers extensive diagnostics options on the controller as well as on the
connected modules.
Unless otherwise stated, these diagnostics parameters can only be read. Write access is answered with an
error code.
Additional information about individual parameters can be found in chapter 9 and 10.1.2.1.
These parameters specify the data in the modules presently connected to this slot (except for "Configured
product code"). Additional information about individual parameters can be found in chapter 10.2.2.
Additional information about individual parameters can be found in Chapter 10.1.2.1 and 10.1.2.2.
The operating status of the individual I/O modules can be read via attribute 0xFD of the I/O module object
(class 0x65). See chapter 10.2.2.
Value Meaning
0x00 '0' No X2X station present for this instance (this slot)
0x42 'B' Boot process (OS loader test)
0x43 'C' Module being configured
0x44 'D' Firmware download active
0x4E 'N' X2X station present, but the I/O module cannot start for the
following reasons: No I/O power or the module is not connected to
the X2X ASIC module
0x50 'P' Pre-operational (module is ready for run mode)
0x52 'R' Run mode (operational)
0x55 'U' Boot process (uploading IDs)
0x70 'p' Pre-operational (module is ready for run mode)
0xE0 Error: Module firmware missing
0xE1 Error: Module firmware invalid
0xE2 Error: Configuration fault (module cannot be activated); potential
configuration error (incorrect function model, etc.)
0xE3 Error: Configuration fault (registers cannot be mapped, potential
configuration error, etc.)
0xE4 Error: Module not booted (internal error)
0xE5 Error: Module not booted (X2X frame is too small Æ increase X2X
cycle time if necessary)
0xE6 Error: Module not booted (incorrect module type configured for this
slot)
Additional diagnostics information about the modules can be found in the X2X network status
assembly (class 0x4, instance 122 or 0x7A). See chapter 7.4. The X2X network status refers to the
bus modules (i.e. X2X controller) and not to the electronic module (the actual I/O module).
12 Web Interface
The web interface integrated in the X20BC0088 from Rev. B4 upwards (Firmware V1.06) enables easy
configuration of the most common settings, the possibility to transfer configuration files (see B&R
FieldbusDESIGNER, chapter 3.3), offers extensive diagnostics possibilities and an overview of the
composition of the two combination assemblies (menu item "I/O Assembly Mapping", see chapter 7.8 for an
example) as well as the possibility of a firmware update.
It also contains a help system that can be opened using the "?" icon on every page.
The web server can be started from any browser (Microsoft's Internet Explorer and Mozilla Firefox were
tested) by calling the IP address or host name in the address bar (e.g. entering http://192.168.100.1 or
http://breip128 for network address switch values $FF or $80 respectively).
Pages permitting write access or the execution of services require authentication before giving access to
these functions. The default settings for the login data can be modified using the "Advanced" menu:
Telnet is a client/server protocol that uses TCP (normally on port 23) for data transfer.
The Telnet interface on the EtherNet/IP bus controller is a generic interface that can be used to change
network settings (IP address, Subnet mask, Gateway, DHCP setting) to read/write any CIP attribute or to call
services. The parameters can be output as hexadecimal (0x) or decimal.
In addition, the interface includes several shortcuts, e.g. for saving data to or deleting flash memory.
The syntax of the interface can be displayed via the "help" or "?" command. Any conventional Telnet client,
e.g. HyperTerminal or PuTTY can be used for Telnet communication.
In Windows, "telnet" it is followed by the IP address of the bus controller (e.g. "telnet 192.168.100.1") in the
command prompt (Windows "Start" Æ "Execute" Æ Open: "cmd").
When using write access, the length "l" must be specified in bytes together with the data "d" to be written.
"cmd c i s" or “cmd c i s a l d” can be used to call services:
For the example from chapter 10.2.4.1: To read the input filter of DI module, the command via Telnet
appears as follows:
cmd 0x65 2 0x32 0 2 0x12
and generally returns "0x0000000A (10)".
If the value is specified in hexadecimal notation, then "0x" must be used to introduce the value.
14 Application examples
14.1 Assigning an IP address
In addition to the options for assigning the bus controller an IP address described in chapter 5 and the
possibility to do this via the integrated web interface, the Telnet interface provides simple access without
having to use an additional tool, especially for commissioning.
An Ethernet connection to the bus controller is required (see chapter 4.1).
By setting the network address switch to $FF, the bus controller is assigned fixed IP address 192.168.100.1
following a restart (the supply voltage to the bus controller is momentarily interrupted; called a power cycle).
A Telnet connection can be established by opening "telnet 192.168.100.1" in the Windows command prompt.
In this example, a new IP address (192.168.1.123) should be configured. In this example, the command
appears as follows because the IP address is stored together with the subnet mask and the default gateway
in one attribute (class 0xF5, instance 1, attribute 5):
This command terminates the Telnet connection. The new network settings are saved directly to the flash
memory; however, this only applies if the attribute 3 (configuration control) of the TCP/IP object is set to 0
(default setting).
The new settings are only applied after a restart ("Power Cycle"). However, you must keep in mind that
different network address switch values can change the settings (see chapter 5.5) and only the settings from
the flash are used exclusively for the value $00.
To activate the new IP address, the network address switch must be set to $00 and the bus
controller must be restarted. This can take place via the Telnet command "restart" or momentary
interruption of the supply voltage (power cycle).
flash erase
The Telnet console returns "Ok" as confirmation. A bus controller restart then loads the factory settings from
the flash to the RAM.
Generally, the combination input and output assemblies are used for I/O communication; these are:
Combination output assembly: Instance 112 (hex 70)
Combination input assembly: Instance 124 (hex 7C)
The queries...
get 4 112 4 and
get 4 124 4
get 4 112 4
> 0x00F0 (240)
get 4 124 4
> 0x01E0 (480)
These specifications are used to integrate the bus controller in the respective developing environment such
as "Generic Ethernet Module" (the data format "Comm Format" must be set to bytes, i.e. the data type
"SINT") – See corresponding “Getting Started” documents available for download on the B&R web portal for
more information.