0% found this document useful (0 votes)
467 views339 pages

Industrial Communication Systems

The document discusses industrial automation and field bus systems. It begins by showing the hierarchy of an industrial automation network from the office/SCADA level down to field devices connected by sensor and actuator busses. It then provides definitions and expectations of a field bus, including transmitting process data with low latency, operating in harsh environments, and interconnecting control systems. The rest of the document discusses different classes of field busses and their applications based on distance, data requirements, and use cases like electricity network control and substations.

Uploaded by

pvtrong.sdh212
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
467 views339 pages

Industrial Communication Systems

The document discusses industrial automation and field bus systems. It begins by showing the hierarchy of an industrial automation network from the office/SCADA level down to field devices connected by sensor and actuator busses. It then provides definitions and expectations of a field bus, including transmitting process data with low latency, operating in harsh environments, and interconnecting control systems. The rest of the document discusses different classes of field busses and their applications based on distance, data requirements, and use cases like electricity network control and substations.

Uploaded by

pvtrong.sdh212
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 339

Industrial Automation

Automation Industrielle
Office Industrielle Automation
network
TCP - IP
Ethernet
Plant Network
Ethernet, ControlNet
Fieldbus
intelligent field devices
FF, PROFIBUS, MVB, LON
Sensor Busses
simple switches etc.
CAN, DeviceNet, SDS, ASI-bus, Interbus-S

3 Industrial Communication Systems

Field Bus: principles


3.1 Bus de terrain: principes
Feldbusse: Grundlagen

Prof. Dr. H. Kirrmann


2005 March, HK
EPFL / ABB Research Center, Baden, Switzerland
Field bus: principles

3.1 Field bus principles


Classes
Physical layer

3.2 Field bus operation


Centralized - Decentralized
Cyclic and Event Driven Operation

3.3 Standard field busses

Industrial Automation 2/25 3.1 Field bus principles


Location of the field bus in the plant hierarchy

File

SCADA level Operator 23 12


Edit
Network
4 2 2 Management
33

Process bus

Programmable
Process Level Logic Controller

Field bus

Field level

Sensor/
Actor
Bus
direct I/O

Industrial Automation 3/25 3.1 Field bus principles


What is a field bus ?

A data network, interconnecting a control system, characterized by:

- transmission of numerous small data items (process variables) with bound delay (1ms..1s)
- harsh environment (temperature, vibrations, EM-disturbances, water, salt,…)
- robust and easy installation by skilled people
- high integrity (no undetected errors)
- high availability (redundant layout)
- clock synchronization (milliseconds down to a few microseconds)
- continuous supervision and diagnostics
- low attachment costs ( € 5.- / node)
- moderate data rates (50 kbit/s … 5 Mbit/s) but large distance range (10m .. 4 km)
- non-real-time traffic for commissioning (e.g. download) and diagnostics
- in some applications intrinsic safety (oil & gas, mining, chemicals,..)

Industrial Automation 4/25 3.1 Field bus principles


Expectations

- reduce cabling

- increased modularity of plant (each object comes with its computer)

- easy fault location and maintenance

- simplify commissioning (mise en service, IBS = Inbetriebssetzung)

- simplify extension and retrofit

- large number of off-the-shelf standard products to build “Lego”-control systems

- possibility to sell one’s own developments (if based on a standard)

Industrial Automation 5/25 3.1 Field bus principles


The original idea: save wiring
marshalling tray
I/O dumb devices
bar capacity

PLC

(Rangierung,
tableau de brassage (armoire de triage)
COM

PLC
field bus

but: the number of end-points remains the same !


energy must be supplied to smart devices

Industrial Automation 6/25 3.1 Field bus principles


Marshalling (Rangierschiene, Barre de rangement)

The marshalling is the interface between


the PLC people and the instrumentation
people.

Industrial Automation 7/25 3.1 Field bus principles


Field busses classes

Office
network
TCP IP
Ethernet

Plant Network
Ethernet, ControlNet

Fieldbus
intelligent field devices
FF, PROFIBUS PA, LON

Sensor Busses
simple switches etc.
CAN, DeviceNet, SDS, ASI-bus, Interbus-S

The field bus depends on:


its function in the hierarchy
the distance it should cover
the data density it should gather

Industrial Automation 8/25 3.1 Field bus principles


Geographical extension of industrial plants
The field bus suits the physical extension of the plant

1 km .. 1000 km Transmission & Distribution


Control and supervision of large distribution networks:
• water - gas - oil - electricity - ...
1 km .. 5 km Power Generation
Out of primary energy sources:
• waterfalls - coal - gas - oil - nuclear - solar - ...
50 m .. 3 km Industrial Plants
Manufacturing and transformation plants:
• cement works - steel works - food silos - printing - paper
pulp processing - glass plants - harbors - ...
500m .. 2 km Building Automation
• energy - air conditioning - fire - intrusion - repair - ...
1 m .. 1 km Manufacturing
flexible manufacturing cells - robots
1 m .. 800 m Vehicles
• locomotives - trains - streetcars - trolley buses - vans -
buses - cars - airplanes - spacecraft - ...

Industrial Automation 9/25 3.1 Field bus principles


Networking busses: Electricity Network Control

Inter-Control Center Protocol


SCADA
control IEC 870-6 control ICCP control High
HV Voltage
center center center

Modicom IEC 870-5 DNP 3.0 Conitel RP 570 serial links (telephone)

RTU RTU RTU RTU Remote Terminal Units

COM RTU

substation substation
Medium
MV Voltage

FSK, radio, DLC, cable, fiber,... RTU


RTU

houses RTU RTU


Low
LV Voltage
low speed, long distance communication, may use power lines or telephone modems.
Problem: diversity of protocols, data format, semantics...
Industrial Automation 10/25 3.1 Field bus principles
Substation (air isolated)

Node in the electricity grid

Industrial Automation 11/25 3.1 Field bus principles


Substations (indoor)

Gas Isolated high voltage medium voltage

consist of bays (départs, Abgang), interconnected by a buss bar (barre, Sammelschiene)

Industrial Automation 12/25 3.1 Field bus principles


Substation electrical busses
Current Transformer
bussbars (measure)
A
B
isolator
(Trenner
Interrupteur)

circuit
breaker
(Schalter,
Disjoncteur)

switch position
and commands
G

current, voltage,
temperature
Bay Bay Bay Generator

Transformer

Industrial Automation 13/25 3.1 Field bus principles


Substation data busses

workstation1 workstation2

logger
printer
gateway
gateway

station bus
switch

IED 1 IED 1 IED 1


control and
protection devices
IED 2 IED 2 IED 2

IED 3 IED 3 IED 3

bay 1 bay i bay n

the structure of the data busses reflects the substation structure

Industrial Automation 14/25 3.1 Field bus principles


Fieldbus Application: wastewater treatment

Pumps, gates, valves, motors, water level sensors, flow meters, temperature sensors,
gas meters (CH4), generators, … are spread over an area of several km2
Some parts of the plant have explosive atmosphere.

Wiring is traditionally 4..20 mA, resulting in long threads of cable (several 100 km).

Industrial Automation 15/25 3.1 Field bus principles


Process Industry Application: Water treatment plant

Japan Control Room source: Kaneka, Japan


LAS

Remote SCADA Ethernet


Maintenance
Malaysia
System Bus Monitor

H1 Speed Fieldbus

JB Segment 1 Segment 3 JB
Sub Station

AO
AI
PID
PLC
AO
PID
AI AI AI AI AI AI AI AI PID AO
AO AO
DI M.C.C.
FB Protocol
Converter

JB Segment 2 JB Segment 4 Digital Input/Output

AI AI
S S S S S

AI AI AI PID AI PID AI AI AI AI
AO AO

Numerous analog inputs (AI),


low speed (37 kbit/s) segments merged to 1 Mbit/s links.
Industrial Automation 16/25 3.1 Field bus principles
Data density (Example: Power Plants)

Acceleration limiter and prime mover: 1 kbit in 5 ms

Burner Control: 2 kbit in 10 ms

per each 30 m of plant: 200 kbit/s

Fast controllers require at least 16 Mbit/s over distances of 2 m

Data are transmitted from the periphery or from fast controllers to higher level, but slower links to
the control level through field busses over distances of 1-2 km.

The control stations gather data at rates of about 200 kbit/s over distances of 30 m.

The control room computers are interconnected by a bus of at least 10 Mbit/s,


over distances of several 100 m.

Planning of a field bus requires to estimate the data density per unit of length (or surface)
and the requirements in response time and throughput over each link.

Industrial Automation 17/25 3.1 Field bus principles


Distributed peripherals

Many field busses are just


extensions of the PLC’s Inputs
and Outputs,
field devices are data
concentrators.
Devices are only visible to the
PLC that controls them

relays and fuses

Industrial Automation 18/25 3.1 Field bus principles


Application: Building Automation

Source: Echelon

low cost, low data rate (78 kbit/s), may use power lines (10 kbit/s)

Industrial Automation 19/25 3.1 Field bus principles


Application: Field bus in locomotives

radio power line


cockpit

diagnosis Train Bus


Vehicle Bus

brakes power electronics motors track signals

data rate 1.5 Mbit/second


delay 1 ms (16 ms for skip/slip control)
medium twisted wire pair, optical fibers (EM disturbances)
number of stations up to 255 programmable stations, 4096 simple I/O
integrity very high (signaling tasks)
cost engineering costs dominate

Industrial Automation 20/25 3.1 Field bus principles


Application: automobile

Monitoring redundantes
ECU und Bordnetz
Bordnetz ECU
Diagnose ECU 12V und 48V

c
Betätigungs-
einheit
Bremsen
ECU ECU
ECU
4

- 8 nodes
- 4 electromechanical wheel brakes
- 2 redundant Vehicle Control Unit
- Pedal simulator
- Fault-tolerant 2-voltage on-board power supply
- Diagnostic System

Industrial Automation 21/25 3.1 Field bus principles


Application: Avionics (Airbus 380)

Industrial Automation 22/25 3.1 Field bus principles


The ultimate sensor bus

power switch and


bus interface

requires integration of power electronics and communication at very low cost.

Industrial Automation 23/25 3.1 Field bus principles


Assessment

• What is a field bus ?


• How does a field bus supports modularity ?
• What is the difference between a sensor bus and a process bus ?
• Which advantages are expected from a field bus ?

Industrial Automation 24/25 3.1 Field bus principles


Industrial Automation
Automation Industrielle
Industrielle Automation

3 Industrial Communication Systems

Field Bus Operation


3.2 Bus de terrain: mode de travail
Feldbus: Arbeitsweise

Prof. Dr. H. Kirrmann


ABB Research Center, Baden, Switzerland
2005 April, HK
Fieldbus - Operation

3.1 Field bus types


Classes
Physical layer

3.2 Field bus operation


Data distribution
Cyclic Operation
Event Driven Operation
Real-time communication model
Networking

3.3 Standard field busses

Industrial Automation 2 3.2 Field bus operation


Objective of the field bus

Distribute to all interested parties process variables, consisting of:

•accurate process value and units

•source identification: requires a naming scheme

•quality indication: good, bad, substituted,

•time indication: how long ago was the value produced

•(description)

source value quality time description

Industrial Automation 3 3.2 Field bus operation


Master or peer-to-peer communication
communication in a control system is evolving from hierarchical to distributed
central master: hierarchical
PLC alternate PLC
all traffic passes by the master (PLC);
“master” AP master AP
adding an alternate master is difficult
(it must be both master and slave)

“slaves”
input output

peer-to-peer: distributed
PLC PLC PLC
PLCs may exchange data, “masters”
AP AP AP
share inputs and outputs
allows redundancy
and “distributed intelligence”
devices talk directly to each other

“slaves”
input output
separate bus master from application master !

Industrial Automation 4 3.2 Field bus operation


Broadcasts
A variable is read on the average in 1..3 different places
Broadcasting messages identified by their source (or contents) increases efficiency.

application application application application


processor processor processor processor

= plant plant plant plant =


image image image image distributed
variable data base
instances
bus
Each device is subscribed as source or as sink for a number of process variables
Only one device may be source of a certain process data (otherwise, collision).
The bus refreshes the plant image in the background, it becomes an on-line database
The replicated traffic memories can be considered as "caches" of the plant state
(similar to caches in a multiprocessor system), representing part of the plant image.
Each station snoops the bus and reads the variables it is interested in.

Industrial Automation 5 3.2 Field bus operation


Data format

source value quality time

In principle, the bus could transmit the process variable in clear text, possibly using XML.

However, this is quite expansive and only considered when the communication network
offers some 100 Mbit/s and a powerful processor is available to parse the message

More compact ways such as ASN.1 have been used in the past with 10 Mbit/s Ethernet.

Field busses are still slow (1Mbit/s ..12 Mbits/s) and therefore more compact
encodings are used.

Industrial Automation 6 3.2 Field bus operation


Datasets

Field busses devices had a low data rate and transmit over and over the same variables.
It is economical to group variables of a device in the same frame as a dataset.
A dataset is treated as a whole for communication and access.
A variable is identified within a dataset by its offset and its size
Variables may be of different types, types can be mixed.

Dataset

analog variables binary variables

dataset wheel air line time


speed pressure voltage
identifier stamp

0 16 32 48 64 66 70
all door closed
bit offset size lights on
heat on
air condition on

Industrial Automation 7 3.2 Field bus operation


Dataset extension and quality

To allow later extension, room is left in the datasets for additional variables.
Since the type of these future data is unknown, unused fields are filled with '1".

To signal that a variable is invalid, the producer overwrites the variable with "0".
Since both an "all 1" and an "all 0" word can be a meaningful combination, each
variable can be supervised by a check variable, of type ANTIVALENT2:
Dataset
variable value check

correct variable 0 1 0 1 1 1 0 0 0 1

error
0 0 0 0 0 0 0 0 0 0

undefined 1 1 1 1 1 1 1 1 1 1

chk_offset 00 = network error


01 = ok
var_offset 10 = substituted
11 = data undefined

A variable and its check variable are treated indivisibly when reading or writing
The check variable may be located anywhere in the same data set.

Industrial Automation 8 3.2 Field bus operation


Decoupling Application and Bus traffic

decoupled (asynchronous): coupled (event-driven):

application application
processor processor
events
(interrupts)
traffic
memory queues

bus bus
controller controller

sending: application writes data into memory sending: application inserts data into queue
and triggers transmission,
receiving: application reads data from memory bus controller fetches data from queue
receiving: bus controller inserts data into queue
the bus controller decides when to transmit and interrupts application to fetch them,
bus and application are not synchronized application retrieves data

Industrial Automation 9 3.2 Field bus operation


Traffic Memory: implementation

Bus and Application are (de)coupled by a shared memory, the Traffic Memory,
where process variables are directly accessible to the application.

Application
Processor

Traffic Memory

Ports (holding a dataset)

Associative
memory

an associative memory decodes two pages ensure that read and


the addresses of the subscribed Bus write can occur at the same time
datasets Controller (no semaphores !)
bus

Industrial Automation 10 3.2 Field bus operation


Freshness supervision

It is necessary to check that the data in the traffic memory is still up-to-date,
independently of a time-stamp (simple devices do not have time-stamping)
Applications tolerate an occasional loss of data, but no stale data.

To protect the application from using obsolete data, each Port in the traffic
memory has a freshness counter.
This counter is reset by writing to that port. It is incremented regularly,
either by the application processor or by the bus controller.

The application should always read the value of the counter before using
the port data and compare it with its tolerance level.

The freshness supervision is evaluated by each reader independently, some


readers may be more tolerant than others.

Bus error interrupts in case of severe disturbances are not directed to the
application, but to the device management.

Industrial Automation 11 3.2 Field bus operation


Process Variable Interface

Access of the application to variables in a traffic memory is very easy:

ap_put (variable_name, variable value)


ap_get (variable_name, variable value, variable_status, variable_freshness)

Rather than fetch and store individual variables, access is done by clusters
(predefined groups of variables):

ap_put_cluster (cluster_name)
ap_get (cluster_name)

The cluster is a table containing the names and values of several variables.

The clusters can correspond to "segments" in the function block programming.

Note: Usually, only one variable is allowed to raise an interrupt when received: the one
carrying the current time (sent by the common clock)

Industrial Automation 12 3.2 Field bus operation


Time-stamping and clock synchronisation

In many applications, such as disturbance logging and sequence-of-events,


the exact sampling time of a variable must be transmitted together with its value.

To this purpose, the devices are equipped with a clock that records the creation date of
the value (not the transmission time).

To reconstruct events coming from several devices, clocks must be synchronized.


considering transmission delays over the field bus (and in repeaters,....)

A field bus provides means to synchronize clocks in spite of propagation delays and
failure of individual nodes. Protocols such as IEEE 1588 can be used.

input input input processing


t1 t2 t3 t4

bus
t1 val1
Industrial Automation 13 3.2 Field bus operation
Transmission principle

The previous operation modes made no assumption, how data are transmitted.

The actual network can transmit data


cyclically (time-driven) or
on demand (event-driven),
or a combination of both.

Industrial Automation 14 3.2 Field bus operation


Cyclic and Event-Driven transmission
cyclic: send value every xx milliseconds

miss the peak always the same, time


individual (Shannon!) why transmit ?
period
event-driven: send when value change by more than x% of range
hysteresis

nevertheless transmit:
how much hysteresis ? - every xx as “I’m alive” sign
- coarse (bad accuracy) limit update - when data is internally updated
- fine (high frequency) frequency !, - upon quality change (failure)
limit hysteresis
Industrial Automation 15 3.2 Field bus operation
Fieldbus: Cyclic Operation mode

3.1 Field bus types


Classes
Physical layer

3.2 Field bus operation


Data distribution
Cyclic Operation
Event Driven Operation
Real-time communication model
Networking

3.3 Standard field busses

Industrial Automation 16 3.2 Field bus operation


Cyclic Data Transmission
address

Bus devices
Master 1 2 3 4 5 6
(slaves)
Poll
List
plant

The master polls the addresses in a fixed sequence, according to its poll list.
Individual period Individual period N polls

1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6

time [ms]

The duration of each poll is the sum of


2 x Tpd the transmission time of address and
address data address data (bit-rate dependent)
(i) 10 µs/km (i) (i+1) and of the reply delay of the signals
time [µs] (independent of bit-rate).
read transfer

44 µs .. 296 µs

Industrial Automation 17 3.2 Field bus operation


Cyclic operation principle

Data are transmitted at fixed intervals, whether they changed or not.

The delivery delay (refresh rate) is deterministic and constant.


The bus is under control of a central master (or distributed time-triggered algorithm).

No explicit error recovery needed since a fresh value will be transmitted in the next cycle.

Only states may be transmitted, not state changes.

Cycle time is limited by the product of the number of data transmitted by the
duration of each poll (e.g. 100 µs / point x 100 points => 10 ms)

To keep a low poll time, only small data items may be transmitted (< 256 bits)

The bus capacity must be configured beforehand.


Determinism gets lost if the cycles are modified at run-time.
Cyclic operation is used to transmit the state variables of the process.
These are called Process Data (or Periodic Data)

Industrial Automation 18 3.2 Field bus operation


Source-Addressed Broadcast

Process Data are transmitted by source-addressed broadcast.

Phase1: The bus master broadcasts the identifier of a variable to be transmitted:


subscribed devices
device device
bus
master sink source sink sink devices
(slaves)

bus

variable identifier

Phase 2: The device that sources that variable responds with a slave frame
containing the value, all devices subscribed as sink receive that frame.
subscribed subscribed subscribed devices
device device
bus.
master sink source sink sink devices
(slaves)

bus

variable value

Industrial Automation 19 3.2 Field bus operation


Read And Write Transfers

master source next transfer


read transfer:
turn-around
arb address time data arb address

time
Read Transfer

master (source) next transfer


write transfer:
arb address data arb address
Write-No ack transfer time
turn-around time may be destination
large compared with master (source) next transfer
data transfer time. turn-around
arb address data time ack arb address

Write Transfer With Ack


time

• Local Area Networks operate with write-only transfers.


Their link layer or transport layer provides acknowledgements by another write-only transfer
• Parallel busses use read and write-ack transfers
• Most field busses operate with read cycles only.

Industrial Automation 20 3.2 Field bus operation


Round-tip Delay
master closest data sink remotest data source
repeater repeater

T_m Master Frame t_repeat

t_repeat
The propagation delay T_m
round-trip (t_pd = 6 µs/km)
delay limits t_source access delay
the extension t_mm t_ms (t_repeat < 3 µs)
of a read-only T_s
bus
t_repeat Slave Frame

t_sm

T_m ne xt M a st
er F ra me

distance

Industrial Automation 21 3.2 Field bus operation


Optimizing Cyclic Operation

Cyclic operation uses a fixed portion of the bus's time


The poll period increases with the number of polled items
The response time slows down accordingly
Solution: introduce sub-cycles for less urgent periodic variables:
2 ms period
4 ms period

1 2 4a 8 16 1 4b 1 2 3 64 1 4a
time
1 ms period 1 ms 1 ms
(basic period) group with
period 1 ms
Cyclic polling need tools to configure the poll cycles.
The poll cycles should not be modified at run-time (non-determinism)
A device exports many process data (state variables) with different priorities.
If there is only one poll type per device, a device must be polled at the
frequency required by its highest-priority data.
To reduce bus load, the master polls the process data, not the devices

Industrial Automation 22 3.2 Field bus operation


Cyclic Transmission and Application

cyclic cyclic cyclic cyclic


algorithms algorithms algorithms algorithms

cyclic
poll application application application application
1 2 3 4
bus source
master Ports Ports
port
Ports Ports
Periodic Traffic
List Memory
sink sink
port port
bus bus bus bus bus
controller controller controller controller controller
bus
port address port data

The bus traffic and the application cycles are asynchronous to each other.
The bus master scans the identifiers at its own pace.
Bus and applications are decoupled by a shared memory, the traffic memory,
which acts as distributed database actualized by the network.

Industrial Automation 23 3.2 Field bus operation


Application Of Cyclic Bus

The principle of cyclic operation, combined with source-addressed


broadcast, has been adopted by most modern field busses

It is currently used for power plant control, rail vehicles, aircrafts, etc...

This method gives the network a deterministic behavior, at expenses of a reduced


bandwidth and geographical extension.

The poll scan list located in the central master (which may be duplicated for
availability purposes) determines the behavior of the bus.

It is configured for a specific project by a single tool, which takes into account
the transmission wishes of the applications.

This guarantees that no application can occupy more than its share of the bus
bandwidth and gives control to the project leader.

Industrial Automation 24 3.2 Field bus operation


Example: delay requirement

publisher
application instance subscribers application instances
device device device

applications

bus
bus instance

Worst-case delay for transmitting all time critical variables is the sum of:
Source application cycle time 8 ms
Individual period of the variable 16 ms
Sink application cycle time 8 ms

= 32 ms

Industrial Automation 25 3.2 Field bus operation


Example: traffic pattern in a locomotive

% periodic time

number of devices: 37 ( including 2 bus administrators)

37 of 16 bits
30 frames of 128 bits 65 frames of 64 bits
18 of 32

49 frames of 256 bits

occupancy is proportional to surface


total = 92%
period
16 ms 32 ms 64 ms 128 256 1024

Industrial Automation 26 3.2 Field bus operation


Fieldbus: Event-driven operation

3.1 Field bus types


Classes
Physical layer

3.2 Field bus operation


Data distribution
Cyclic Operation
Event Driven Operation
Real-time communication model
Networking

3.3 Standard field busses

Industrial Automation 27 3.2 Field bus operation


Event-driven Operation

• Events cause a transmission only when an state change takes place.


• Bus load is very low on the average, but peaks under exceptional situations
since transmissions are correlated by the process (christmas-tree effect).
Multi-master bus: uses write-only transfers

intelligent event- event- event-


stations reporting reporting reporting
station station station

sensors/
actors

plant

Detection of an event is an intelligent process:


• Not every change of a variable is an event, even for binary variables.
• Often, a combination of changes builds an event.
• Only the application can decide what is an event, since only the application
programmer knows the meaning of the variables.

Industrial Automation 28 3.2 Field bus operation


Bus interface for event-driven operation
Each transmission on the bus causes an interrupt.
application
The bus controller only checks the address and
filter stores the data in the message queues.
driver The driver is responsible for removing the messages
Application of the queue memory and prevent overflow.
Processor The filter decides if the message can be processed.

message (circular) queues

interrupt

Bus
Controller

bus

Industrial Automation 29 3.2 Field bus operation


Response of Event-driven operation

Caller Transport Bus Transport Called


Application software software Application

request

interrupt

indication
confirm

time

Since events can occur anytime on any device, stations communicate by


spontaneous transmission, leading to possible collisions
Interruption of server device at any instant can disrupt a time-critical task.
Buffering of events cause unbound delays
Gateways introduce additional uncertainties

Industrial Automation 30 3.2 Field bus operation


Determinism and Medium Access In Busses

Although the moment an event occurs is not predictable, the communication


means should transmit the event in a finite time to guarantee the reaction delay.

Events are necessarily announced spontaneously: this requires a


multi-master medium like in a LAN.
The time required to transmit the event depends on the medium access
(arbitration) procedure of the bus.
Medium access control methods are either deterministic or not.

Non-deterministic Deterministic
Collision Central master,
(Ethernet) Token-passing (round-robin),
Binary bisection,
Collision with winner.

Industrial Automation 31 3.2 Field bus operation


Events and Determinism

Although a deterministic medium access is the condition to guarantee delivery


time, it is not sufficient since events messages are queued in the devices.

events
producers F F F F F F F F F F F F
& consumers

input and
output queues
bus
acknowledgements

data packets

The average delivery time depends on the length of the queues, on the bus
traffic and on the processing time at the destination.
Often, the computers limit far more the event delay than the bus does.

Real-time Control = Measurement + Transmission + Processing + Acting

Industrial Automation 32 3.2 Field bus operation


Events Pros and Cons

In an event-driven control system, there is only a transmission or an operation


when an event occurs.
Advantages: Can treat a large number of events - if not all at the same time
Supports a large number of stations
System idle under steady - state conditions
Better use of resources
Uses write-only transfers, suited for LANs with long propagation delays
Suited for standard (interrupt-driven) operating systems (Unix, Windows)

Drawbacks: Requires intelligent stations (event building)


Needs shared access to resources (arbitration)
No upper limit to access time if some component not deterministic
Response time difficult to estimate, requires analysis
Limited by congestion effects: process correlates events
A background cyclic operation is needed to check liveliness

Industrial Automation 33 3.2 Field bus operation


Fieldbus: real-time communication model

3.1 Field bus types


Classes
Physical layer

3.2 Field bus operation


Centralized - Decentralized
Cyclic Operation
Event Driven Operation
Real-time communication model
Networking

3.3 Standard field busses

Industrial Automation 34 3.2 Field bus operation


Mixed Data Traffic

Process Data Message Data


represent the state of the plant represent state changes of the plant
short and urgent data items infrequent, sometimes lengthy
messages reporting events, for:
... motor current, axle speed, operator's • Users: set points, diagnostics, status
commands, emergency stops,... • System: initialisation, down-loading, ...

-> Periodic Transmission -> Sporadic Transmission of


of Process Variables Process Variables and Messages

Since variables are refreshed periodically, Since messages represent state


no retransmission protocol is needed to changes, a protocol must recover lost data in
recover from transmission error. case of transmission errors

basic period basic period


event

time
sporadic periodic sporadic periodic
phase phase phase phase

Industrial Automation 35 3.2 Field bus operation


Mixing Traffic is a configuration issue

Cyclic broadcast of source-addressed variables is the standard solution in field busses


for process control.

Cyclic transmission takes a large share of the bus bandwidth and should be reserved
for really critical variables.

The decision to declare a variable as cyclic or event-driven can be taken late in a


project, but cannot be changed on-the-fly in an operating device.

A message transmission scheme must exist alongside the cyclic transmission to carry
not-critical variables and long messages such as diagnostics or network management

An industrial communication system should provide both transmission kinds.

Industrial Automation 36 3.2 Field bus operation


Real-Time communication stack

The real-time communication model uses two stacks, one for time-critical variables
and one for messages

time-critical time-benign Management


process variables messages Interface

7 Application
implicit implicit 6 Presentation
Remote Procedure Call 5 Session
Logical Link connection-oriented 4 Transport (connection-oriented)
Control connectionless 3 Network (connectionless)
connectionless 2" Logical Link Control
medium access 2' Link (Medium Access)
common
media 1 Physical

Industrial Automation 37 3.2 Field bus operation


Application Sight Of Communication

Periodic Tasks Event-driven Tasks

R1 R2 R3 R4 E1 E2 E3

Variables Services Message Services


Traffic Queues
Memory

Process Data Supervisory Message Data


(Broadcast) Data (destination-oriented)

station bus controller

bus

Industrial Automation 38 3.2 Field bus operation


Field - and Process bus
Fieldbus Process Bus

strictly deterministic non - deterministic

controlled by a central master multi-master bus (Arbitration)


(redundant for availability) deterministic arbitration -> Token

cyclic polling event-driven


number of participants limited by large number of participants
maximum period

call/reply in one bus transfer call/reply uses two different messages.


(read-cycle) both parties must become bus master
("fetch principle") ("bring - principle")

cheap connection (dumb) costly connection (intelligent)


only possible over a limited also suited for open systems
geographical extension

Industrial Automation 39 3.2 Field bus operation


Cyclic or Event-driven Operation For Real-time ?

The operation mode of the communication exposes the main approach to


conciliate real-time constrains and efficiency in a control systems.
cyclic operation event-driven operation
Data are transmitted at fixed intervals, Data are only transmitted when they
whether they changed or not. change or upon explicit demand.

Deterministic: delivery time is bound Non-deterministic: delivery time vary widely

Worst Case is normal case Typical Case works most of the time

All resources are pre-allocated Best use of resources

(periodic, round-robin) (aperiodic, demand-driven, sporadic)

object-oriented bus message-oriented bus

Fieldbus Foundation, MVB, FIP, .. Profibus, CAN, LON, ARCnet

Industrial Automation 40 3.2 Field bus operation


Fieldbus: Networking

3.1 Field bus types


Classes
Physical layer

3.2 Field bus operation


Data distribution
Cyclic Operation
Event Driven Operation
Real-time communication model
Networking

3.3 Standard field busses

Industrial Automation 41 3.2 Field bus operation


Networking field busses

Networking field busses is not done through bridges or routers,


because normally, transition from one bus to another is associated with:

- data reduction (processing, sum building, alarm building, multiplexing)

- data marshalling (different position in the frames)

- data transformation (different formats on different busses)

Only system management messages could be threaded through from end to end,
but due to lack of standardization, data conversion is today not avoidable.

Industrial Automation 42 3.2 Field bus operation


Networking: Printing machine (1)
Production MPS

Plant-bus (Ethernet)
Operator bus (Ethernet)
Console, LS LS LS PM LS LS LS PM LS LS LS PM LS LS LS PM
Section Supervision

Printing Towers

Section Busses (AF100) B C E


D

Section Control
SSB SSC SSD SSE
Line bus (AF100)
Reelstand-Gateways RPB RPC RPD RPE

Reelstand bus (Arcnet)


Reelstands

multiplicity of field busses with different tasks, often associated with units.
main task of controllers: gateway, routing, filtering, processing data.
most of the processing power of the controllers is used to route data

Industrial Automation 43 3.2 Field bus operation


Networking: Printing Section (2)
to production preparation
(Ethernet) bridge
standby standby
LS LS LS PM PM GW GW

Pressmasterbus (Ethernet)
Section bus C
V-Sercos V-Sercos V-Sercos

IBG IBG IBG

V-Sercos

IBG IBG IBG IBG

Interbus Interbus Interbus


H-Sercos
KT94 KT94 KT94

KT94 KT94 KT94


H -steuerungen

KT94 KT94 KT94 KT94

KT94 KT94 KT94 KT94

Service-Arcnet
Falz- und
AC160 AC160 AC160 Wendeturm- AC160
Tower-ARCnet Turmsteuerung Turmsteuerung Turmsteuerung steuerung
Section bus B Section bus D
Section bus C
Line bus Rollen-
wechslerkoppler I KT94 MR93
Rollenwechsler- Sektions- Sektions-
AC160
koppler A steuerung steuerung
Oxydry-Arcnet Interbus-S

KT94

ODC
Auro Oxydry

ARCnet

Industrial Automation 44 3.2 Field bus operation


Transmission delay over a Trunk Bus (cyclic bus)

Trunk Bus
copying, copying,
filtering & filtering &
marshalling gateway gateway marshalling
delay delay
Feeder Bus Feeder Bus stop

speed speed

stop

The actual delay is non-deterministic, but bounded


The worst-case delay for the transmission of all variables is the sum of 5 delays:
• feeder bus delay 32 ms
• gateway marshalling delay 16 ms
• trunk bus delay 25 ms
= 100 ms
• gateway marshalling delay 10 ms (synchronized)
• feeder bus delay 32 ms

Industrial Automation 45 3.2 Field bus operation


Assessment

• What is the difference between a centralized and a decentralized industrial bus ?

• What is the principle of source-addressed broadcast ?

• What is the difference between a time-stamp and a freshness counter ?

• Why is an associative memory needed for source-addressed broadcast ?

• What are the advantages / disadvantages of event-driven communication ?

• What are the advantages / disadvantages of cyclic communication ?

• How are field busses networked ?

Industrial Automation 46 3.2 Field bus operation


Industrial Automation
Automation Industrielle
Industrielle Automation

7 Application

6 Presentation
5 Session
4 Transport
3 Network
2 Link
1 Physical

3 Industrial Communication Systems

Open System Interconnection (OSI) model


3.3.1 Modèle OSI d’interconnexion
OSI-Modell

Prof. Dr. H. Kirrmann


2004 June, HK ABB Research Center, Baden, Switzerland
The OSI model
The Open System Interconnection (OSI) model is a standard way to
structure communication software that is applicable to any network.

• was developed to structure telecommunication protocols in the ‘70


(Pouzin & Zimmermann)

• standardized by CCITT and ISO as ISO / IEC 7498

• all communication protocols (TCP/IP, Appletalk or DNA) can be mapped to the


OSI model.

• is a model, not a standard protocol, but a suite of protocols with the same name
has been standardized by UIT / ISO / IEC for open systems data interconnection
(but with little success)

• mapping of OSI to industrial communication requires some additions

EPFL - Industrial Automation 2004 June, HK 2 3.3.1 OSI model


OSI-Model (ISO/IEC standard 7498)

All services directly called by the end user


7 Application (Mail, File Transfer,...) e.g. Telnet, SMTP

"Application" Definition and conversion of the data


protocols
6 Presentation formats (e.g. ASN 1)

Management of connections
5 Session (e.g. ISO 8326)

End-to-end flow control and error recovery


4 Transport (e.g. TP4, TCP)

Routing, possibly segmenting


3 Network (e.g. IP, X25)
"Transport"
protocols
Error detection, Flow control and error recovery,
2 Link medium access (e.g. HDLC)

Coding, Modulation, Electrical and


1 Physical mechanical coupling (e.g. RS485)

EPFL - Industrial Automation 2004 June, HK 3 3.3.1 OSI model


OSI Model with two nodes

node 1 node 2

Application 7 7

Presentation 6 6

Session 5 5

Transport 4 4

Network 3 3

Link 2 2

1 1
Physical
Physical Medium

EPFL - Industrial Automation 2004 June, HK 4 3.3.1 OSI model


Repeater

500m
To connect a workstation of
department A department A to the printer of
server department B, the cable becomes too
workstations
long and the messages are corrupted.

The repeater restores signal


levels and synchronization.
Ethernet
repeater It introduces a signal delay of
about 1..4 bits
printer
500m
department B server
Physically, there is only one bus carrying
both department’s traffic, only one node
Ethernet may transmit at a time.

500m

EPFL - Industrial Automation 2004 June, HK 5 3.3.1 OSI model


OSI model with three nodes (bridge)

Node 1 bridge Node 2

Application 7 7
Presentation 6 6

Session 5 5
Transport 4 4

Network 3 3

Link 2 2 2 2

Physical 1 1 1 1

physical medium (0) physical medium (0)

e.g. Ethernet 100 MBit/s e.g. ATM


The subnet on both sides of a bridge have:
• the same frame format (except header),
• the same address space (different addresses on both sides of the bridge)
• the same link layer protocol (if link layer is connection-oriented)
Bridges filter the frames on the base of their link addresses

EPFL - Industrial Automation 2004 June, HK 6 3.3.1 OSI model


Bridge example
In this example, most traffic is directed from the workstations to the department
server, there is little cross-department traffic

department A department A
server server
workstations

Ethernet Ethernet 1
repeater
Bridge
printer printer

department B server department B server

Ethernet Ethernet 2

There is only one Ethernet which carries There are now two Ethernets and only the
both department’s traffic cross-department traffic burdens both busses

EPFL - Industrial Automation 2004 June, HK 7 3.3.1 OSI model


Networking with bridges

LAN

port port
port

port port
Spanning-tree-Algorithmen port
avoid loops and ensures
LAN
redundancy

port

port

LAN

port
port

port

LAN LAN

EPFL - Industrial Automation 2004 June, HK 8 3.3.1 OSI model


Switch

nodes

queues crossbar-
switch
(or bus)
full-duplex

a switch is an extension of a hub that allows store-and-forward.

EPFL - Industrial Automation 2004 June, HK 9 3.3.1 OSI model


OSI Model with three nodes (router)

Node 1 Router Node 2

Application 7 7

Presentation 6 6

Session 5 5

Transport 4 4

Network 3 3 3

Link 2 2 2 2

Physical 1 1 1 1

physical medium (0)

The router routes the frames on the base of their network address.
The subnets may have different link layer protocols
Frames in transit are handled in the network layer .

EPFL - Industrial Automation 2004 June, HK 10 3.3.1 OSI model


Repeater, Bridge, Router, Gateway: Topography
application-
dependent

backbone (e.g. FDDI)


gateway different subnetworks,
same address space
same transport protocol,
segmentation/reassembly
end-to-end routers are initially opaque
transport protocol

connects different speed, Router same speed


different medium access same medium
by store-and-forward access
same frames and addresses Bridge same frames
initially transparent in both ways.
can limit traffic by filtering Repeater

segment
subnet (LAN, bus, extended link)
devices (nodes, stations) have different physical addresses

devices (nodes, stations) have different link addresses

EPFL - Industrial Automation 2004 June, HK 11 3.3.1 OSI model


Repeaters, Bridges, Routers and Gateways: OSI model

intelligent linking devices can


do all three functions
(if the data rate is the same)
gateway
Apl Apl Apl Apl
Pre Pre Pre Pre
RPC
Ses Ses Ses Ses
bridge
Trp Trp Trp Trp TCP
( "switch")
Net (store-and-forward) Net Layer 3 router Net IP
LLC repeater Layer 2 LLC LLC LLC LLC
MAC or hub MAC MAC MAC MAC MAC
MIS Layer 1 MIS MIS MIS MIS MIS
MDS MDS MDS MDS MDS MDS MDS MDS MDS

10 Mbit/s coax 10 Mbit/s fibre 100 Mbit/s Ethernet Fibre


ATM 155 Mbit/s

EPFL - Industrial Automation 2004 June, HK 12 3.3.1 OSI model


To which level does a frame element belong ?

presentation

application
transport

session
physical link network link phy

LLC

preamble destination source LLC final origin NC TRP SES PRE APL CRC ED

Network Control
repeater, hub bridge router application
(gateway)

A frame is structured according to the ISO model

EPFL - Industrial Automation 2004 June, HK 13 3.3.1 OSI model


Encapsulation

INFO
User information

Transport header TrpCrt

Network address NetAdr

Link control LinkCrt


(Acknowledge, Token,etc.)
Link-address LinkAdr

Error detection size CRC

Frame Flag Flag

Signal

Each layer introduces its own header and overhead

EPFL - Industrial Automation 2004 June, HK 14 3.3.1 OSI model


Example: OSI-Stack frame structure
IEEE 802.4 ISO 8802 ISO 8473 ISO 8073
token bus logical link control connectionless network control class 4 transport control
MAC_header LNK_hdr NET_header TRP_header DATA
13 3 >48 5
MA. frame control L_destination SAP Protocol Identifier (81) LI
L_source SAP Header Length TPDU (CDT)
L_PDU Version/Protocol ID (01) Destination
LSAP = DSAP Lifetime Reference
MA. destination FE = network layer FIXED
address 18 = Mini-MAP Object SP MS ER DT/ER Type PART ET N(S)
(6 octets) Dictionary Client
19 = Network Management DATA (DT) TPDU
PDU Segment Length (normal format)
00 = own link layer
L_PDU = UI, XID, TEST address length IDP
Checksum
(initial
AFI = 49
domain
Destination Address part)
(18 octets) IDI, Area ID
MA. source (7 octets)
address Source Address
(6 octets) (18 octets) PSI
ADDRESS Segmentation DSP
PART (0 or 6 octets) Physical Address (domain
(6 octets) specific
Options
part)
(priority = 3 octets) LSAP = FE

NSAP = 00

EPFL - Industrial Automation 2004 June, HK 15 3.3.1 OSI model


Protocol Data Units and Service Data Units

N+1- Layer (n+1)-layer entity (n+1)-layer entity

Service-
Data Unit
(SDU) Protocol
Data Unit
(PDU)
N - Layer (n)-layer entity (n)-layer entity

Protocol
Service- Data Unit
Data Unit (PDU)
(SDU)

N-1 Layer (n-1)-layer entity (n-1)-layer entity

Layer N provides services to Layer N+1;


Layer N relies on services of Layer n-1

EPFL - Industrial Automation 2004 June, HK 16 3.3.1 OSI model


Service Access Points

user of user of
service N service N

Service Access Points (SAP)

functions in layer N

Service Access Points (SAP)

provider of service (N-1)

provider of service (N)

Service Access Points represent the interface to a service (name, address, pointer,...)

EPFL - Industrial Automation 2004 June, HK 17 3.3.1 OSI model


Address and SAPs in a device

ASAP Application
(z.B. File transfer, Email,....)

z.B. TCP/IP z.B. ISO 8073


Transport TSAP Transport-SAP

ISO 8473
Network-SAP
Network NSAP (not Network address)
ISO-stack

Link LSAP Logical Address or link address

Physical PhSAP Physical Address

EPFL - Industrial Automation 2004 June, HK 18 3.3.1 OSI model


Procedure call conventions in ISO

Service User Service Provider Service User


(Network Transmission)
request
confirm indication
(local)
confirm
(network)
response
confirm
(user)

time

EPFL - Industrial Automation 2004 June, HK 19 3.3.1 OSI model


OSI implementation

OSI should be considered as a model, not as an implementation guide


The idea of independent layers is a useful as a way of thinking, not the best implementation.

Even if many claim to have "OSI"-conformant implementation, it cannot be proven.


IEC published about 300 standards which form the "OSI" stack, e.g.:
ISO/IEC 8473-2:1996 Information technology -- Protocol for providing
the connectionless-mode network service --

ISO/IEC 8073:1997 Information technology -- Open Systems


Interconnection -- Protocol for providing the connection-mode transport service
ISO/IEC 8327-1:1996 Information technology -- Open Systems
Interconnection -- Connection-oriented Session protocol: Protocol specification

ISO/IEC 8649:1996 Information technology -- Open Systems


Interconnection -- Service definition for the Association Control Service Element
ISO 8571-2:1988 Information processing systems -- Open Systems
Interconnection -- File Transfer, Access and Management

Former implementations, which implemented each layer by an independent process,


caused the general belief that OSI is slow and bulky.
OSI stack has not been able to establish itself against TCP/IP

EPFL - Industrial Automation 2004 June, HK 20 3.3.1 OSI model


OSI protocols in industry
Theory:
ISO-OSI standards should be used since they reduce specification and
conformance testing work and commercial components exist
Reality:
• the OSI model is a general telecommunication framework -
implementations considers feasibility and economics.
• the overhead of the ISO-OSI protocols (8073/8074) is not bearable
with low data rates under real-time conditions.
• the OSI-conformant software is too complex:
simple devices like door control or air-condition have limited power.
• the OSI model does not consider transmission of real-time data
Therefore:
• industrial busses use for real-time data a fast response access and
for messages a simplified OSI communication stack
• the devices must be plug compatible: there are practically no options.
• Communication is greatly simplified by adhering to conventions
negotiating parameters at run-time is a waste in closed applications.

EPFL - Industrial Automation 2004 June, HK 21 3.3.1 OSI model


TCP / IP structure

FTP SMTP HTTP SNMP Applications


Files

TCP UDP Transport

IP routing ICMP Network

Ethernet ATM modem radio Link & Physical

The TCP/IP stack is lighter than the OSI stack, but has about the same complexity
TCP/IP was implemented and used before being standardized.
Internet gave TCP/IP a decisive push

EPFL - Industrial Automation 2004 June, HK 22 3.3.1 OSI model


Conclusions

The OSI model is the reference for all industrial communication


Even when some layers are skipped, the concepts are generally implemented
Real-Time extensions to OSI are under consideration

TCP/IP however installs itself as a competitor to the OSI suite, although some efforts are
made to integrate it into the OSI model

TCP/IP/UDP is becoming the backbone for all non-time critical industrial communication
TCP/IP/UDP is quickly displacing proprietary protocols.
Next generation TCP/IP (V6) is very much like the OSI standards.

Many embedded controllers come with an integrated Ethernet controller, an the


corresponding real-time operating system kernel offers TCP/IP services

Like OSI, TCP protocols have delays counted in tens or hundred milliseconds,
often unpredictable especially in case of disturbances.

For further reading: Motorola Digital Data Communication Guide

EPFL - Industrial Automation 2004 June, HK 23 3.3.1 OSI model


Assessment

1) Name the layers of the OSI model and describe their function

2) What is the difference between a repeater, a bridge and a router ?

3) What is encapsulation ?

4) By which device is an Appletalk connected to TCP/IP ?

5) How successful are implementations of the OSI standard suite ?

EPFL - Industrial Automation 2004 June, HK 24 3.3.1 OSI model


Industrial Automation
Automation Industrielle
Industrielle Automation

3.3.2

3. Industrial Communication Systems


Physical Layer
3.3.2 Niveau physique
Physische Schicht

Prof. Dr. H. Kirrmann


ABB Research Center, Baden, Switzerland
2004 June, HK
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibres

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 2 3.3.2 Field busses - Physical Layer
OSI Model - location of the physical level

All services directly called by the end user


7 Application (Mail, File Transfer,...)

Application Presentation Definition and conversion of the


6
protocols data formats (e.g. ASN 1)

Session Management of connections


5 (e.g. ISO 8326)

End-to-end flow control and error recovery


4 Transport (z.B. TP4, TCP)

Network Routing, possibly segmenting


3 (e.g. IP, X25)
Transport
protocols
Link Error detection, Flow control and error recovery,
2 medium access (e.g. HDLC)

Coding, Modulation, Electrical and


1 Physical mechanical coupling (e.g. V24)

EPFL - Industrial Automation 2004 June, HK 3 3.3.2 Field busses - Physical Layer
Subdivisions of the physical layer

medium-independent signalling same for different media


(e.g. coax, fibre, RS485)

medium-dependent signalling applies to one media


Physical (e.g. optical fibres)
Layer
electrical / optical applies to one media type
specifications (e.g. 200µm optical fibres)

mechanical defines the mechanical interface


specifications (e.g. connector type and pin-out)

EPFL - Industrial Automation 2004 June, HK 4 3.3.2 Field busses - Physical Layer
Concepts relevant to the physical layer

Topology Ring, Bus, Point-to-point


Mechanical Connector, Pin-out, Cable, Assembly
Medium signals, transfer rate, levels
Channels Half-duplex, full-duplex, broadcast
Control Send, Receive, Collision
Modulation Baseband, Carrier band, Broadband
Coding/Decoding Binary, NRZ, Manchester,..
Synchronisation Bit, Character, Frame
Flow Control Handshake
Interface Binary bit, Collision detection [multiple access]
Signal quality supervision, redundancy control

EPFL - Industrial Automation 2004 June, HK 5 3.3.2 Field busses - Physical Layer
Example: RS-232 - Mechanical-Electrical Standard
Originally developed for modem communication, now serial port in IBM-PCs
Telephone
Topology: lines
Data DTE DCE DCE DTE Data
Terminal 2 2 Terminal
Equipment Equipment

Terminal Data Communication Modem Computer


Equipment (Modem)

Cabling rules modem eliminator


extension
extension
Tip: Do not use 2
computer terminal
Modem cables,
only Extension cable cable
cables

2 3 7
Mechanical
1
25

Electrical: transmitter receiver


+12V +3V
"0" Space On

-12V -3V "1" Mark Off

EPFL - Industrial Automation 2004 June, HK 6 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibers

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 7 3.3.2 Field busses - Physical Layer
Topology: Simplex, Half and Full Duplex

Link (Point -To-Point)


Full-duplex
Sender/ Sender/ Examples:
Receiver Receiver RS232

Half-duplex Examples:
Sender/ Sender/
Receiver Receiver RS485

Bus (Half-Duplex, except when using Carrier Frequency over multiple bands)

Terminator
Examples:
Ethernet, Profibus

Ring (Half-Duplex, except double ring)

Examples:

SERCOS, Interbus-S

consists of point-to-point links

EPFL - Industrial Automation 2004 June, HK 8 3.3.2 Field busses - Physical Layer
Bus topologies

party-line

Terminator
Terminator
advantage: little wiring disadvantages: easy to disrupt, high attenuation and reflections, no fibres

point-to-point hub
star

advantage: robust point-to-point links, can use fibres disadvantage: requires hub, more wiring

radio free topology

repeater

a bus is a broadcast medium (delays come from propagation and repeaters)


EPFL - Industrial Automation 2004 June, HK 9 3.3.2 Field busses - Physical Layer
Repeater

500m To connect a workstation of


department A department A to the printer of
server department B, the cable becomes too
workstations
long and the messages are corrupted.

The repeater restores signal


levels and synchronization.
Ethernet
repeater It introduces a signal delay of
about 1..4 bits
printer

500m
department B server
Physically, there is only one Ethernet
carrying both department’s traffic, only one
Ethernet node may transmit at a time.

500m

EPFL - Industrial Automation 2004 June, HK 10 3.3.2 Field busses - Physical Layer
Bus: repeaters and hubs

higher-level hub
repeaters

point-to-point partyline partyline


link

hubs assemble point-to-point links to form a broadcast medium (bus)

EPFL - Industrial Automation 2004 June, HK 11 3.3.2 Field busses - Physical Layer
Party-line (bus) and star wiring
d = average distance between devices

PLC d wiring length = d • n,


increases linearly with number of devices

Up to 32 devices
(more with repeaters)

I/O I/O I/O I/O I/O

party-line wiring is well adapted to the varying topography of control systems

hub
PLC wiring length = d • n • n / 2 • 2
increases with square of number of devices

Up to 16 devices
per hub
does it fit into the
wiring tray ? I/O I/O I/O I/O I/O

star wiring may more than offset the advantage of field busses (reduced wiring) and leads to
more concentration of I/O on the field devices.
EPFL - Industrial Automation 2004 June, HK 12 3.3.2 Field busses - Physical Layer
Rings

a ring consists only of point-to-point links


Each node can interrupt the ring and introduce its own frames
classical ring

ring in floor wiring


wiring
cabinet

The wiring amount is the same for a bus with hub or for a ring with wiring cabinet.
Since rings use point-to-point links, they are well adapted to fibres

EPFL - Industrial Automation 2004 June, HK 13 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibres

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 14 3.3.2 Field busses - Physical Layer
Media (bandwidth x distance)
Transfer rate (Mbit/s) Costs Electromagnetic
200m 700m 2000m (Fr/m) Compatibility
optical fibres single mode 2058 516 207 5.5 very good
multimode 196 49 20 6.5 very good
plastic 1 0.5 - 6.5 very good

coaxial cables 50 Ohm 20 8 1 1.2 good


75 Ohm TV 1/2" 12 2.5 1.0 2.2 good
93-100 Ohm 15 5 0.8 2.5 good

twisted wire twinax 8 0.9 0.2 3.5 very good


individually
2 0.35 0.15 .5 very good
shielded (STP)
group shielding (UTP) 1 0.3 0.1 1 good (crosstalk)
regular (foreign)
good (crosstalk)
Telephone cable 0.2 0.1 0.05 0.2 bad (foreign)
others Power line carrier 1 0.05 0.01 - very bad
Radio 1 1 1 - bad
Infrared 0.02 0 0 - good
ultrasound 0.01 0 0 - bad

the bandwidth x distance is an important quality factor of a medium


EPFL - Industrial Automation 2004 June, HK 15 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibres

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 16 3.3.2 Field busses - Physical Layer
Electrical: Transmission media

Cost efficient
Coaxial cablewiring: core
Zw = 50Ω ... 100Ω
twisted pair (without inflexible, costly,
dielectric low losses
screen shield
10 MHz..100 MHz

Shielded twisted wire Zw = 85Ω..120Ω


(Twinax)
flexible, cheap,
Shield medium attenuation
twisting compensates disturbances
~1 MHz..12 MHz
very cheap,
Unshielded twisted wire Telephone sensible to perturbations

Uncommitted wiring very cheap,


numerous branches, not terminated,
very high losses and disturbances,
(e.g. powerline com.) except possibly at one place
very low speed (~10 ..100 kbit/s)

1) Classical wiring technology, 1) low data rate


2) Well understood by electricians in the field 2) costly galvanic separation (transformer, optical)
3) Easy to configure in the field 3) sensible to disturbances
4) Cheap (depends if debug costs are included) 4) difficult to debug, find bad contacts
5) heavy

EPFL - Industrial Automation 2004 June, HK 17 3.3.2 Field busses - Physical Layer
Electrical: Twisted wire pair

characteristic impedance most used in industrial environment:


120 Ohm for bus, 150 Ohm for point-to-point.

Standard from the telecommunication world: ISO/IEC 11801

Cat 5 (class D): 100 MHz, RJ 45 connector


Cat 6 (class E): 200 MHz, RJ 45 connector
Cat 7 (class F): 600 MHz, in development

These are only for point-to-point links ! (no busses)

EPFL - Industrial Automation 2004 June, HK 18 3.3.2 Field busses - Physical Layer
Electrical: What limits transmission distance ?

Characteristic impedance
Attenuation
Linear resistance
All parameters Linear capacitance are frequency-dependent
Cross talk
Common-mode
Shield protection

Attenuation: copper resistance, dielectric loss.

Frequency dependent losses cause dispersion (edges wash-out):

Signal reflection on discontinuities (branches, connectors) cause self-distortions

EPFL - Industrial Automation 2004 June, HK 19 3.3.2 Field busses - Physical Layer
Consider in cables

- characteristic impedance (Zw) (must match the source impedance)


- attenuation (limits distance and number of repeaters)
- bending radius ( layout of channels)
- weight
- fire-retardant isolation

lumped line model


L' R' L' R' L' R' L' R'

C' G' C' G' C' G' C' G'

specific inductance (H/m) specific capacitance (F/m)


L' specific resistance (W/m) specific conductance (S/m)
Zw =
C'

EPFL - Industrial Automation 2004 June, HK 20 3.3.2 Field busses - Physical Layer
Electrical: Signal Coupling Types

Resistive direct coupling


driver on line without galvanic coupling
collision possible when several transmitters active
Wired-OR combination possible
cheap as long as no galvanic separation is required (opto-coupler)
good efficiency

Inductive transformer-coupling
galvanic separation
good electromagnetic compatibility (filter)
retro-action free
good efficiency
signal may not contain DC-components
bandwidth limited

Capacitive capacitor as coupler


weak galvanic separation
signal may not contain DC components
cheap
not efficient

EPFL - Industrial Automation 2004 June, HK 21 3.3.2 Field busses - Physical Layer
Electrical: Resistive (direct) coupling

Unipolar, unbalanced Bipolar, unbalanced


+ Us
Coax
Ru + Us
Zw
Zw
Rd
- Us

Open Collector Ut Ut = 5 V (e.g.)


(unbalanced) Rt Rt Terminator and
Bus line, characteristic impedance = Zw Pull-up resistor

wired-OR behaviour
(“Low” wins over “High”
Out In Out In Out In
device device device

EPFL - Industrial Automation 2004 June, HK 22 3.3.2 Field busses - Physical Layer
Electrical: Balanced Transmission

Differential transmitter and receiver


+ good rejection of disturbances on the line and common-mode
- double number of lines
+Ub
Differential amplifier
Zw symmetrical line (Twisted Wire Pair) Rt (OpAmp)

Shield UA UB
100 ?

(Data Ground)

Used for twisted wire pairs (e.g. RS422, RS485)

Common mode rejection: influence of a voltage which is applied simultaneously on both


lines with respect to ground.

The shield should not be used as a data ground (inductance of currents into conductors)

EPFL - Industrial Automation 2004 June, HK 23 3.3.2 Field busses - Physical Layer
Electrical: RS-485 as an example of balanced transmission

The most widely used transmission for busses over balanced lines (not point-to-point)
TxS RxS TxS RxS TxS RxS

•••

100?

A
stub Terminator
A
tap
120? 120?
Data-GND
B Zw ˜ 120? , C' ˜ 100 pF/m
segment length

multiple transmitter Short-circuit limitation


needed
allowed

Ishort < 250 mA

EPFL - Industrial Automation 2004 June, HK 24 3.3.2 Field busses - Physical Layer
Electrical: RS-485 Distance x Baudrate product
distance

10000
5000
limited by copper resistance
100? /km -> 6dB loss limit
2000
1200
1000
500
limited by
frequency-dependent
200 losses ˜ 20 dB/decade
100
50

20
12
10KBd 100KBd 1 MBd 10 MBd Baudrate

limited by: Cable quality: attenuation, capacitive loading, copper resistance


Signal/Noise ratio, disturbances
Receiver quality and decoding method

EPFL - Industrial Automation 2004 June, HK 25 3.3.2 Field busses - Physical Layer
Electrical: Transformer Coupling

Provides galvanic separation, freedom of retro-action and impedance matching


but: no DC-components may be transmitted.

cost of the transformer depends on transmitted frequency band (not center frequency)

Sender/Receiver
Sender/Receiver

Isolation transformer

isolation resistors

shield

Twisted Wire Pair

Source: Appletalk manual

EPFL - Industrial Automation 2004 June, HK 26 3.3.2 Field busses - Physical Layer
Electrical: MIL 1553 as an example of transformer coupling

Direct Coupling Double-Transformer


(short stub: 0.3 m) (long stub: 0.3 .. 6m)
Sender/Receiver

Isolation transformer

long
stub
short
stub Isolation transformer

isolation resistors isolation resistors

shield shield

Twisted Wire Pair


Extract from: MIL-STD-1553

MIL 1553 is the standard field bus used in avionics since the years '60 - it is costly and obsolete
EPFL - Industrial Automation 2004 June, HK 27 3.3.2 Field busses - Physical Layer
Electrical: Free topology wiring

voltage
source

terminator

Free topology is used to connect scattered devices which are usually line-powered.
Main application: building wiring
Transmission medium is inhomogeneous, with many reflections and discontinuities.
Radio techniques such as echo cancellation, multiple frequency transmission
(similar to ADSL) phase modulation, etc... are used.
Speed is limited by the amount of signal processing required (typically: 10 kbit/s)

EPFL - Industrial Automation 2004 June, HK 28 3.3.2 Field busses - Physical Layer
Electrical: Power Line Carrier technology

HF-trap

220V

A free-topology medium using the power lines as carrier.


Used for retrofit wiring (revamping old installations) and for minimum cabling
Capacitive or inductive coupling, sometimes over shield
Problems with disturbances, switches, transformers, HF-traps, EMC,..
Proposed for voice communication over the last mile (ASCOM)
Difficult demodulation
Low data rates ( < 10 kbit/s)
Applications: remote meter reading, substation remote control

EPFL - Industrial Automation 2004 June, HK 29 3.3.2 Field busses - Physical Layer
Electrical: Mechanical Connecting devices to an electrical bus

short stub thread-through double-connector junction box

stub

1 connector 2 connectors 2 connectors 1 connector


live insertion no live insertion live insertion live insertion
installation ? (costly) junction box
Electrical wiring at high speed requires careful layout
(reflections due to device clustering or other discontinuities, crosstalk, EM disturbances)
some applications require live insertion (power plants, substations)
time-outs (causing emergency stop) limit disconnection time
installation or operational requirements may prohibit screws (only crimping)
EPFL - Industrial Automation 2004 June, HK 30 3.3.2 Field busses - Physical Layer
Practical solution to live insertion

Offers life insertion


but costs a lot
(also in place)

EPFL - Industrial Automation 2004 June, HK 31 3.3.2 Field busses - Physical Layer
Electrical: Connectors

Field busses require at the same time low cost and robust connectors.

The cheapest connectors come from the automobile industry (Faston clips)
and from telephony (RJ11, RJ 45)

However, these connectors are fragile. They fail to comply with:


- shield continuity
- protection against water, dust and dirt (IP68 standard)
- stamping-proof (during commissioning, it happens that workers and vehicles pass over cables)

The most popular connector is the sub-D 9 (the IBM PC's serial port),
which exists in diverse rugged versions.

Also popular are Weidmann


and Phoenix connectors.

EPFL - Industrial Automation 2004 June, HK 32 3.3.2 Field busses - Physical Layer
Electrical: Water-proof Connectors

connector costs can become the dominant cost factor…


EPFL - Industrial Automation 2004 June, HK 33 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibers

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 34 3.3.2 Field busses - Physical Layer
Fiber: Principle
3 components:
transmitter fibre receiver
GaAs
PIN
LED
fotodiode
Is
different refraction
coefficients

Transmitter, cable and receiver must be "tuned" to the same wavelength

Cable glass (up to 100 km) or plastic (up to 30 m).


Transmitter laser (power),
laser-diode (GaAsP, GaAlAs, InGaAsP)
Receiver PIN-diode
Wavelength 850 nm (< 3,5 dB/km, > 400 MHz x km)
1300 nm-window (Monomode)

light does not travel faster than electricity in a fiber (refraction index).

EPFL - Industrial Automation 2004 June, HK 35 3.3.2 Field busses - Physical Layer
Fiber: Types
Multimodefibre Monomode fibre
N(r)
Refraction profile 50 µm

50 - 300 µm 50 - 100 µm 2-10 µm

Core
Cross-section
Clad

Longitudinal section

total reflection gradual reflection waveguide


(red) 650nm 10 dB/km
800nm 5dB/km 3 dB/km 2,3 dB/km
(infra-red) 1300nm 0,6 dB/km 0,4 dB/km
20MHz·km 1 GHz·km 100 GHz·km
HCS (Hard-Clad Silica) 50 or 62.5 µm LAN fibre telecom - costly
ø 200 µm, < 500m

EPFL - Industrial Automation 2004 June, HK 36 3.3.2 Field busses - Physical Layer
Fibre: Use

Type POF HCS/PCF GOF


Material plastic glass / plastic glass
distance 70m 400m 1km
Usage local networking remote networking telephone
Connector simple precision high-precision
Cost cheap medium medium
aging poor very good good
bending very good good poor
bandwidth poor good very good

POF: Plastic Optical Fibres


GOF: Glass Optical Fibres
HCS: silica fibre

in industry, fibers cost the same as copper - think about system costs !

EPFL - Industrial Automation 2004 June, HK 37 3.3.2 Field busses - Physical Layer
Fiber: building an optical bus

n% coupling losses
Every branch costs a
Passive coupler certain percentage of light
n% coupling losses
costly manufacturing (100 $ branches)

1 1
2 2
Passive star coupler 3 3 costly manufacturing
4 4 (100 $ / 4 branches)
5 5
Fused zone
6 6

electrical segment (wired-or) opto-electrical


Active star coupler transceiver

fibre pair

EPFL - Industrial Automation 2004 June, HK 38 3.3.2 Field busses - Physical Layer
Fiber: building an optical ring and bridging

Mechanical bridging is difficult


spring

prism
example of
solution

Powered unpowered

Double ring

This is why optical fibers are mostly used in rings (FDDI, Sercos)

EPFL - Industrial Automation 2004 June, HK 39 3.3.2 Field busses - Physical Layer
Fiber: advantages

1 ) high bandwidth and data rate (400 MHz x km)

2 ) small, frequency-insensitive attenuation (ca. 3 dB/km)

3 ) cover long distances without a repeater

4 ) immune against electromagnetic disturbances (great for electrical substations)

5 ) galvanic separation and potential-free operation (great for large current environment)

6 ) tamper free

7 ) may be used in explosive environments (chemical, mining)

8 ) low cable weight (100 kg/km) and diameter, flexible, small cable duct costs

9 ) low cost cable

10) standardized

EPFL - Industrial Automation 2004 June, HK 40 3.3.2 Field busses - Physical Layer
Fiber: Why are fibres so little used ?

1) In process control, propagation time is more important than data rate

2) Attenuation is not important for most distances used in factories (200m)

3) Coaxial cables provide a sufficiently high immunity

4) Reliability of optical senders and connections is insufficient (MTTF ≈ 1/power).

5) Galvanic isolation can be achieved with coaxial cables and twisted pairs through opto-couplers

6) Tapping is not a problem in industrial plants

7) Optical busses using (cheap) passive components are limited to a few branches (16)

8) In explosive environments, the power requirement of the optical components hurts.

9) Installation of optical fibres is costly due to splicing

10) Topology is restricted by the star coupler (hub) or the ring structure

EPFL - Industrial Automation 2004 June, HK 41 3.3.2 Field busses - Physical Layer
Radio Transmission

Radio had the reputation to be slow, highly disturbed and range limited.

Mobile radio (GSM, DECT) is able to carry only limited rate of data (9.6 kbit/s) at high costs,
distance being limited only by ground station coverage.

IEEE 802.11 standards developed for computer peripherals e.g. Apple’s AirPort
allow short-range (200m) transmission at 11 Mbit/s in the 2.4 GHz band with 100mW.

Bluetooth allow low-cost, low power (1 mW) links in the same 2.4 GHz band, at 1 Mbit/s

Modulation uses amplitude, phase and multiple frequencies (see next Section)

Higher-layer protocols (WAP, …) are tailored to packet radio communication.

bluetooth module

Radio == mobile -> power source (batteries) and low-power technologies.

EPFL - Industrial Automation 2004 June, HK 42 3.3.2 Field busses - Physical Layer
Wireless Field busses

no wiring,
mobile,
easy to install

short distance,
limited bandwidth,
area overlap and frequency limitations
not tamper-free,
difficult to power the devices
costs of base station

but: who changes the batteries ?

EPFL - Industrial Automation 2004 June, HK 43 3.3.2 Field busses - Physical Layer
Redundancy at the physical layer

Party-Line

Terminator
Terminator

decentralized wiring both cables can run in the same conduct where
common mode failure acceptable

Star topology star couplers should be separately powered

star coupler A

star coupler B

centralized wiring cable come together at each device

common mode failures cannot be excluded since wiring has to come together at each device

EPFL - Industrial Automation 2004 June, HK 44 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibers

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 45 3.3.2 Field busses - Physical Layer
Modulation

Base band
Signal transmitted as a sequence of binary
states, one at a time (e.g. Manchester)

Carrier band
Signal transmitted as a sequence of frequencies,
one at a time
(e.g. FSK = frequency shift keying = 2-phase
Modulation.

Broadband
Backward Forward-
Signal transmitted as a sequence of frequencies, channel channel
several at the same time.
5-108 162-400
Signals may be modulated on a carrier frequency MHz MHz Frequency
(e.g. 300MHz-400MHz, in channel of 6 MHz)

EPFL - Industrial Automation 2004 June, HK 46 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibres

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 47 3.3.2 Field busses - Physical Layer
Synchronisation: where does it take place ?
"determine the beginning and the end of a data stream"
Bit synchronisation Recognize individual bits
Character synchronisation Recognize groups of (5,7,8,9,..) bits
Frame synchronisation Recognize a sequence of bits transmitted as a whole
Message synchronisation Recognize a sequence of frames
Session synchronisation Recognize a sequence of messages

Example: Frame synchronisation using Manchester violation symbols


Data 1 1 0 1 0 0 0 1
Clock

+NRZ Data

+Framing

= Line Signal

Start-sync Data in Manchester II Stop-sync


(Violation) (Violation)

EPFL - Industrial Automation 2004 June, HK 48 3.3.2 Field busses - Physical Layer
Frames: Synchronization

character-synchronous A character is used as synchronisation character


(e.g. bisync) If this character appears in the data stream, it is duplicated
The receiver removes duplicated synchronisation characters

Data A B C SYN D E F G

Signal SYN A B C SYN SYN D E F G SYN

flag Byte-stuffing flag

bit-synchronous A bit sequence is used as a flag (e.g. 01111110).


(e.g. HDLC) To prevent this sequence in the bit-stream, the transmitter inserts a "0" after
each group of 5 consecutive "1", which the receiver removes.

Data 11 100011 111 110 011 111 0


flag
Signal 0 1 1 1 1 1 10 1 1 1 0 0 0 1 1 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 1 1 1 11 0

Bit-stuffing
delimiter A symbol sequence is used as delimiter, which includes non-data symbols
(e.g. IEC 61158)
Signal

"1" "1" "0" "0" "1" "1"


Delimiter (not Manchester) Manchester symbols

EPFL - Industrial Automation 2004 June, HK 49 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibers

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 50 3.3.2 Field busses - Physical Layer
Encoding: popular DC-free encodings
user
Manchester 1 1 0 1 1 0 0 0
1: falling edge at midpoint Ethernet, FIP
0: rising edge at midpoint IEC 61158,
DC-free, memoryless* MVB, MIL 1553

Differential Manchester
always transition at midpoint
1: no transition at start point LON
0: transition at start point
(polarity-insensitive, DC-free,
memoryless)
Miller (MFM)
centre frequency halved High-density
not completely DC-free diskettes
memory: two bits
(sequence 0110)
Xerxes
replaces “101” sequence
by DC-balanced sequence FlexRay
DC-free, memory: two bits
memoryless*: decoding does not depend on history

EPFL - Industrial Automation 2004 June, HK 51 3.3.2 Field busses - Physical Layer
Encoding: DC-free coding for transformer coupling

DC-free encoding is a necessary, but not sufficient condition

The drivers must be carefully balanced (positive and negative excursion |+U| = |-U|)

Slopes must be symmetrical, positive and negative surfaces must be balanced

Preamble, start delimiter and end delimiter must be DC-free


(and preferably not contain lower-frequency components)

Transformer-coupling requires a lot of experience.

Many applications (ISDN…) accept not completely DC-free codes, provided that
the DC component is statistically small when transmitting random data, but have to
deal with large interframe gaps.

effect of unbalance
(magnetic discharge)

EPFL - Industrial Automation 2004 June, HK 52 3.3.2 Field busses - Physical Layer
Decoding base-band signals
Zero-crossing detector
decoding depends on the distance between edges Dynamic: 10 dB
line
unipolar signal
idle level
histeresis Uh+
Uh-
time
active
RxS
bipolar signal
idle Dynamic: 18 dB
Uh+
Uh-

Sampling of signal Dynamic: 32 dB


needs Phase-Locked Loop (PLL) and preamble (? delimiter)
Daten
1 0 1 0 1 0 1 0 1 N+ N- 1 0 N- N+ 0 1 1 1
Preamble Delimiter

Signal Frequency Analysis Dynamic: 38 dB


requires Signal Processor, Quadrature/Phase analysis

EPFL - Industrial Automation 2004 June, HK 53 3.3.2 Field busses - Physical Layer
Encoding: Physical frame of IEC 61158-2

1 0 1 0 1 0 1 0
+U
Preamble (variable) 0V for PLL synchronisation
-U
1 N+ N- 1 0 N- N+ 0
Start delimiter (8 bit times) needed since preamble
is variable length
1 0 0 1 1 0 1 1
Payload (variable length)

1 N+ N- N+ N- 1 0 1
End delimiter (8 bit times) defines end of frame

preamble start payload end delimiter

EPFL - Industrial Automation 2004 June, HK 54 3.3.2 Field busses - Physical Layer
Encodings: Multi-frequency

power "SB1" "SB2" "SB3" "SB4" "SB5" "SB6" "SB7" "SB8"


"0" "1" "0" "1" "0" "1" "0" "1" "0" "1" "0" "1" "0" "1" "0" "1"

frequency
unused 22,5 kHz 31,5 kHz 40,5 kHz 49,5 kHz 58,5 kHz 67,5 kHz 76,5 kHz 85,5 kHz
27 kHz 36 45 kHz 54 63 72 81 kHz 90 kHz
kHz kHz kHz kHz

Best use of spectrum


Adaptive scheme (frequency-hopping, avoid disturbed frequencies, overcome bursts)
Base of ADSL, internet-over-power lines, etc...
Requires digital signal processor
Limited in frequency
EMC considerations

EPFL - Industrial Automation 2004 June, HK 55 3.3.2 Field busses - Physical Layer
Bandwidth and Manchester Encoding

Delimiter " 0 " " 1 "" 0 " " 0 " " 1 " " 1 " " 0 "

3-step 2-step

Non-data symbols may introduce a lower-frequency component


which must go through a transformer.
The transformer must be able to transmit frequencies in a 1:20 ratio

3-step

EPFL - Industrial Automation 2004 June, HK 56 3.3.2 Field busses - Physical Layer
Encoding: qualities

1) Self-clocking, Explicit clocking or asynchronous


Clocked: separate clock channel
Self-clocking: clock channel multiplexed with signal
Asynchronous: requires synchronisation at next higher level.
Code such as HDB3 insert "Blind Bits" to synchronize a random sequence.
2) Spectral efficiency
Which frequency components can be found in a random data sequence ?
especially: is there a DC-component ?
(Important for transformer and transceiver coupling)
Pseudo-DC-free codes such as AMI assume that "1" and "0" are equally frequent.
3) Efficiency: relation of bit rate to Baudrate
Bitrate = Information bits per second
Baudrate = Signal changes per second
4) Decoding ease
Spectral-efficient codes are difficult to decode
This is especially the case with memory-codes (value depends on former symbols)
(e.g. Miller, differential Manchester).
5) Integrity
For error detection, the type of error which can occur is important, and especially if a single
disturbance can affect several bits at the same time (Differential Manchester).

6) Polarity
A polarity-insensitive electrical wiring simplifies installation

EPFL - Industrial Automation 2004 June, HK 57 3.3.2 Field busses - Physical Layer
Physical Layer Outline

1. Layering

2. Topology

3. Physical media

4. Electric Signal coupling

5. Optical Fibres

6. Modulation

7. Synchronization

8. Encoding

9. Repeaters

EPFL - Industrial Automation 2004 June, HK 58 3.3.2 Field busses - Physical Layer
Repeater

A repeater is used at a transition from one medium to another within the same subnet.

node node node node node node


repeater

decoder
encoder
segment 1 segment 2

decoder

encoder
(RS 485) (transformer-coupled)

The repeater:
• decodes and reshapes the signal (knowing its shape)
• recognizes the transmission direction and forward the frame
• detects and propagates collisions

EPFL - Industrial Automation 2004 June, HK 59 3.3.2 Field busses - Physical Layer
Repeater and time skew

Repeaters introduce an impredictable delay in the transmission since they need some time
to synchronize on the incoming signal and resolve collisions.

EPFL - Industrial Automation 2004 June, HK 60 3.3.2 Field busses - Physical Layer
Star coupler (hub)

A star coupler is a collection of repeaters that connect point-to-point links into a bus
(e.g. for optical fibres). it is called "hub" in the Ethernet standard.
It is a star topology, but a bus structure

opto-electrical
wired-or electrical media transceiver

to other device
or star coupler to other device
or star coupler

fibre pair

device device device device

EPFL - Industrial Automation 2004 June, HK 61 3.3.2 Field busses - Physical Layer
To probe further

Henri Nussbaumer, Téléinformatique 1, Presses polytechniques romandes

Fred Halsall, Data Communications, Computer Networks and Open Systems, Addison-Wesley

B. Sklar , “Digital Communications,” Prentice Hall, Englewood Cliffs, 1988

EIA Standard RS-485

EPFL - Industrial Automation 2004 June, HK 62 3.3.2 Field busses - Physical Layer
Assessment
What is the function of the physical layer ?
What is the difference between a bus and a ring ?
How is a bus wired ?
Which electrical media are used in industry ?
How is the signal coupled to an electrical media ?
How is the signal decoded ?
What is an open-collector (open-drain) electrical media ?
What are the advantages and disadvantages of transformer coupling ?
What limits the distance covered by electrical signals and how is this to overcome ?
What are the advantages and disadvantages of optical fibres ?
When are optical fibers of 240 mm used rather than 62.5 mm ?
What is a broadband medium ?
What is DSL ?
What is the purpose of modulation ?
What is the purpose of encoding ?
What is the difference between bit rate and Baudrate and what does it say about efficiency?
What limits the theoretical throughput of a medium ?
What is the difference between Manchester encoding, Miller and differential Manchester ?
Which are the qualities expected from an encoding scheme ?

EPFL - Industrial Automation 2004 June, HK 63 3.3.2 Field busses - Physical Layer
EPFL - Industrial Automation 2004 June, HK 64 3.3.2 Field busses - Physical Layer
EPFL - Industrial Automation 2004 June, HK 65 3.3.2 Field busses - Physical Layer
Industrial Automation
Automation Industrielle
Industrielle Automation

3. Industrial Communication Systems

Link Layer and Medium Access


3.3.3 Niveau de liaison et accès au médium
Verbindungsschicht und Mediumzugriff

Prof. Dr. H. Kirrmann


2004 June, HK ABB Research Center, Baden, Switzerland
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 2 3.3.3 Field busses - Link Layer
Link Layer function

The link layer implements the protocols used to communicate within the same subnet.

(subnet: same medium access, same bit rate)


- but different media may be interconnected by (bit-wise) repeaters

Tasks of the link layer:

1) Data integrity

2) Medium Access

3) Logical Link Control

4) Link Layer Management

EPFL - Industrial Automation 2004 June, HK 3 3.3.3 Field busses - Link Layer
Link Layer in the OSI Model
Functions
Network
7 Application store-and-forward
bridge control
address discovery
6 Presentation Logical Link connection establishment
Control flow Control
(LLC) error handling
5 Session
Medium Access medium allocation
Control (master redundancy)
4 Transport (MAC)

addressing
3 Network Frame frame format
integrity control
2 Link Physical
Signaling

1 Physical Physical
Medium

Subnet (Bus or Ring)

EPFL - Industrial Automation 2004 June, HK 4 3.3.3 Field busses - Link Layer
OSI model with two nodes

Node 1 Node 2

Application
7 7
Presentation 6 6
Session 5 5
Transport 4 4
Network 3 3

Link 2 2

Physical 1 1

Physical Medium

EPFL - Industrial Automation 2004 June, HK 5 3.3.3 Field busses - Link Layer
OSI model with repeater (physical layer connection)
Node 1 repeater Node 2

Application 7 7
Presentation 6 6
Session 5 5
Transport 4 4

Network 3 3

Link 2 2

Physical 1 1 1 1

physical medium (0) physical medium (1)

The two segments on each side of a repeater form a single subnet, identified by
• same speed (medium, modulation may differ)
• same frame format (except fringe effects)
• same medium access
• same address space (transparent on both side of the repeater)
Repeaters introduce a delay in the order of a few bit time.

EPFL - Industrial Automation 2004 June, HK 6 3.3.3 Field busses - Link Layer
OSI model with three nodes (bridge): link layer connection

Node 1 bridge Node 2

Application 7 7

Presentation 6 6

Session 5 5

Transport 4 4

Network 3 3
Link 2 2 2 2

Physical 1 1 1 1

physical medium (0) physical medium (0)

The subnet on both sides of a bridge have:


• the same frame format (except header),
• the same address space (different addresses on both sides of the bridge)
• the same link layer protocol (if link layer is connection-oriented)
Bridges filter the frames on the base of their link addresses

EPFL - Industrial Automation 2004 June, HK 7 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 8 3.3.3 Field busses - Link Layer
HDLC as example of a link layer protocol

Standard HDLC (High Level Data Link)

Function Reliable transmission between devices of a subnet

Objects Frame structure according to ISO 3309.

Flag Address Control Data CRC Flag


01111110 8 bit 8 bit (n · 8) 16 bit 01111110

Integrity Check 16-bit Cyclic Redundancy Check

Medium Access Master/Slave, (with slave initiative possible)

Error recovery positive acknowledgement and retry

Flow control 7-frames (127 frames) credit system

EPFL - Industrial Automation 2004 June, HK 9 3.3.3 Field busses - Link Layer
HDLC Topology

Secondary Secondary Secondary Secondary


(Terminal) (Terminal) (Terminal) (Terminal)

full-duplex
or Primary
half-duplex
medium (Mainframe)

Secondary Secondary Secondary Secondary


(Terminal) (Terminal) (Terminal) (Terminal)

The Primary (Master) is connected with the Secondaries (Slaves) over a


multidrop bus (e.g. RS 485) or over point-to-point lines
HDLC bases physically on a bus, but is logically a star network

EPFL - Industrial Automation 2004 June, HK 10 3.3.3 Field busses - Link Layer
HDLC - Full- and Half duplex operation

Full-Duplex
Command/Data
Requester/ Responder/
Primary Secondary
Acknowledgement
Sender/Receiver Sender/Receiver
Command/Acknowledgement
Requester/ Responder/
Primary Secondary

Data
Sender/Receiver Sender/Receiver

Half-Duplex
Requester/ Responder/
Primary Secondary

Sender/Receiver Sender/Receiver
The Primary switches the Secondary to send mode, the Secondary sends until it returns control

EPFL - Industrial Automation 2004 June, HK 11 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 12 3.3.3 Field busses - Link Layer
Frame Sublayer

Network Network

Logical Link Logical Link


Control Control
(LLC) (LLC)

Medium Access Medium Access


Control Control
(MAC) (MAC)

Frame Frame sublayer

Physical Physical
Signaling Signaling

Physical Physical
Medium Medium

The frame layer is concerned with the correct frame format and contents,
with (practically) no consideration of the medium or speed.

EPFL - Industrial Automation 2004 June, HK 13 3.3.3 Field busses - Link Layer
Error Handling

Industry imposes high standards regarding data integrity


Transmission quality is not very high , but consequences are severe.
Errors not detected at the link layer are very difficult to catch at higher layers

Error detection
Frame data are protected by redundant information, such as parity bits,checksum,
CRC (Cyclic Redundancy Check)

Error recovery
Except when medium is very poor (Power Line Carrier, radio), error correcting
codes are not used.
Erroneous frames are ignored, the potential sender of the error is not informed
(the address of the sender is unknown if the frame is damaged)

The sender is informed of the lack of response when it does not receive the
expected acknowledgement within a time-out.
Definition of the time-out has a strong impact on real-time behaviour

EPFL - Industrial Automation 2004 June, HK 14 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 15 3.3.3 Field busses - Link Layer
Error Detection

Error detection require redundancy in the transmitted information.


Signal redundancy: Signal quality supervision (squelch, jamming,..)
Coding redundancy: Timing-violations in decoder
Data redundancy: error detecting code

k data bits r check bits

n-bit codeword = (n,k) block code


Quality criteria
• Code efficiency: CEF = k/n

• Hamming-Distance

• Residual Error Rate

EPFL - Industrial Automation 2004 June, HK 16 3.3.3 Field busses - Link Layer
Hamming Distance

The Hamming Distance between two words is the number of bits in which they differ:
Example Word 1: 01100110
Word 2: 00101001 -> Hamming-Distance = 5

The Hamming Distance of a code is the minimum number of bits which need to be tilted
in a valid codeword to produce another valid (but erroneous) codeword

Number of detectable bit errors: ZD = HD – 1


Numbers of correctable bit errors: ZC = (HD–1)/2

Example: HD = 4: ZD = 3, ZC = 1

00000 00001 00011 00111 01111

code word m=4 code word


1st error 2nd error 3rd error 4th error

EPFL - Industrial Automation 2004 June, HK 17 3.3.3 Field busses - Link Layer
Hamming distance in 3 dimensions: parity

1 0 1 1 0 0 0 0 1
par D7 D6 D5 D4 D3 D2 D1 D0
Odd parity: sum Modulo-2 of all "1" in the codeword (including the parity bit) is odd
The parity bit is the last transmitted bit (->LSB first, a matter of convention)

illegal

111
110
101

100

legal 011

010
001

000

EPFL - Industrial Automation 2004 June, HK 18 3.3.3 Field busses - Link Layer
Error Detection through CRC

(Cyclic Redundancy Check)


Principle
The data stream consists of a sequence of n "0" and "1"
This sequence is treated as a polynomial of degree n.
This polynomial is divided by a Generator polynomial of degree m, m<n,
The rest of this division (which has (m-1) bits) is appended to the data stream.

data (dividend)

GP(divisor)
rest

At reception, the data stream is divided through the same generator-polynomial,


the rest of that division should be identical to the transmitted rest.
To simplify the receiver circuit, the rest is also divided by the generator polynomial,
the result should then be a known constant if the transmission was error-free.
The Generator Polynomial is chosen according to the expected disturbances:
burst or scattered errors, and the channel error model (bit inversion)

EPFL - Industrial Automation 2004 June, HK 19 3.3.3 Field busses - Link Layer
Residual Error Rate, Parity

Rer = Probability of occurrence of an undetected error in spite of an error detecting


code as a function of the bit error probability

Example:

Hamming Distance 2

Bit error probability E


r

n n -1
Residual error rate R
er
= 1 - (1 - E )
r
- n · E · (1- E )
r r
no error exactly one error
Rer for two word length:

-5 -10
E = 10 n = 9 bit R = 72 · 10
r er quite efficient….

-5 -5
E = 10 n = 513 bit R = 2.6· 10 quite useless ...
r er

EPFL - Industrial Automation 2004 June, HK 20 3.3.3 Field busses - Link Layer
Integrity classes and bit error rate

The standard IEC 61870-5 (protocols for remote control of substations)


defines several classes of robustness in function of the bit error rate (bad/good bits)
Residual Error Rate

10 0

10 - 2
s s I1
10 - 4 c la
gr ity
In te 2
10 - 6 FT
2
T1.
10 - 8 F
I2
s
as
cl

10 -10
y
it
gr
te
In

10 -12
Integrity class I3
10 -14

10 -16 Bit error rate


10 -5 10 -4 10 -3 10 -2 10 -1 10 0

EPFL - Industrial Automation 2004 June, HK 21 3.3.3 Field busses - Link Layer
Synchronization Errors

HDLC-frame
flag flag

01111110 any data FCS 01111110

Frame Check Sequence


disturbance (CRC)
HDLC-frame with error
flag flag

01111110 "FCS" 01111110 FCS 01111110

1 Chance in 65536, false discarded


that the random data flag
form a correct CRC precisely 1111110 is the most frequent sequence in a
random bit stream because of bit-stuffing.

A single error can falsify a frame -> HD = 1


It is uninteresting how likely this case is, the fact is, that it can occur.
Because of this bug, HDLC when used in industry require additional error checks.
The synchronization should have a higher Hamming distance than the data itself.

EPFL - Industrial Automation 2004 June, HK 22 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 23 3.3.3 Field busses - Link Layer
Error Correcting Codes

Error correcting codes are used where the probability of disturbances is high (e.g. power
line communication) and the time to retransmit is long (e.g. space probe near Jupiter).

In industry, error correcting codes are normally directly embedded in the physical layer,
e.g. as part of a multitone transmission (ADSL) or of a radio protocol (Bluetooth).

Error correction necessarily decreases the data integrity, i.e. the probability of accepting
wrong data, since the redundancy of correction is taken from the code redundancy.

It is much more important to reject erroneous data (low residual error rate) than to try to
correct transmission.

However, when the medium is very bad (radio), error correction is necessary to
transmit even short messages.

Assigning bits for error detection and correction is a tradeoff between integrity and
availability.

EPFL - Industrial Automation 2004 June, HK 24 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 25 3.3.3 Field busses - Link Layer
Medium Access Control

Network Network Network

Logical Link Logical Link Logical Link


Control Control Control
(LLC) (LLC) (LLC)

Medium Access Medium Access Medium Access


Control Control Control
(MAC) (MAC) (MAC)

Frame Frame Frame

Physical Physical Physical


Signaling Signaling Signaling

Physical Physical Physical


Medium Medium Medium

Medium Access Control gives the right to send in a multi-master bus

EPFL - Industrial Automation 2004 June, HK 26 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 27 3.3.3 Field busses - Link Layer
Medium Access Control - quality criteria

Fairness all requesters will eventually be allowed to transmit

Determinism all requesters will be allowed to transmit within a finite time

Timelyness all requesters will be allowed to transmit within a certain


time, depending on their priority.

Robustness communication errors or the permanent failure of


one component does not prevent the others to
access the medium.

EPFL - Industrial Automation 2004 June, HK 28 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 29 3.3.3 Field busses - Link Layer
MAC single master (e.g. Profibus DP)

bus
slave slave slave master
devices
(slaves)

bus

command reply command ack command command reply time

read write with ack write no ack read & write

the bus master allocates time slots to each slave


it may assign priorities (or no priority: round-robin, all are treated equally)
the master may be the source and the destination of data
+ strictly deterministic, complete and flexible control
- polling takes time, since devices which have nothing to transmit must be polled
- the master has little knowledge about data importance
improvement: “ look-at-me ” (short poll frame allowing slave to request poll of a longer frame)
= "slave initiative" used in Profibus DP

EPFL - Industrial Automation 2004 June, HK 30 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 31 3.3.3 Field busses - Link Layer
MAC Rings (1): register insertion principle

Devices are connected by point-to-point links (no bus!), there is one sender per segment.
The operation is similar to a large shift register.
The master sends a long frame with the output data to the first device in the ring.
Each device reads the data intended for it, inserts its data instead and
passes the frame to the next device.
The last device gives the frame back to the master.

data time

application memory output output output


devices
shift register

master
input input input

data time

EPFL - Industrial Automation 2004 June, HK 32 3.3.3 Field busses - Link Layer
MAC Rings (2): pros and cons

Two major field busses use the ring topology, Interbus-S and SERCOS
and the register-insertion principle described.

the position of the bit in the frame corresponds to the position of the device in the ring,
there are no device addresses - easy to use, but prone to misconfiguration.
each device introduces a delay at least equal to a few bits

+ deterministic access, good usage of capacity, addresses are given by device sequence
on the ring, only point-to-point links

- long delays (some µs per device)

EPFL - Industrial Automation 2004 June, HK 33 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 34 3.3.3 Field busses - Link Layer
MAC Ethernet (1): CSMA-CD principle (stochastic)

Principle Every station sends as it pleases (pure Aloha)


if no acknowledgement comes, it retransmit
improvement 1: do not send when the medium is occupied (Carrier Sense)
improvement 2: be aware that you are jammed (Collision Detection)
improvement 3: retry after a random time, (Binary Backoff)
doubled after each collision, max 15 times
Advantage: Arbitration does not depend on number or on address of the stations
Drawback: No upper limit to the waiting time, mean waiting time depends
on the arrival rate of frames and on their average length.
The medium access is not deterministic,
but for light traffic (<1%) there is no noticeable delay.

EPFL - Industrial Automation 2004 June, HK 35 3.3.3 Field busses - Link Layer
MAC Ethernet (2): collision conditions

A repeater B

preamble
(2 x 7.5 s/km+ 2
= 8 Bytes
Tpd repeaters)
minimum
frame size
= 64 Bytes

collision Station B started


transmission just
before receiving
Station A must A’s frame.
detect that its it nevertheless
frame collided transmits its
while it is still
header completely
transmitting its
frame

Ethernet minimum frame size = 64 Bytes, or 51,2 ms @ 10 Mbit/s


at 10 Mbit/s, limits radius to about 2500 m
time at 100Mbit/s, limits radius to about 250 m

EPFL - Industrial Automation 2004 June, HK 36 3.3.3 Field busses - Link Layer
MAC Ethernet (3): propagation conditions and bus diameter

The frame must be long enough to allow all stations to detect a collision while the frame is
being transmitted.

2 x Tpd = 2 x propagation time (@10Mbit/s Ethernet: 51,2 µs) 500 m

500 m

Collisions can only be detected reliably when the frame size is longer than the
propagation delay -> padding to a minimum size (512 bits = 64 Bytes)

The "diameter" of the network is limited to 2,5 km

Since a station which expects a collision must wait one slot time before transmitting,
the maximum frame throughput on Ethernet is limited by the slot time.

EPFL - Industrial Automation 2004 June, HK 37 3.3.3 Field busses - Link Layer
MAC Ethernet (4): collision probability and simultaneous transmitters

After the end of a frame, a transmitter chooses a slot at random from a fixed number of slots

previous frame 0 1 2 3 4 5 ••• time

utilisation 100% 1
frame size
0.8
4096

1024
0.6
512

0.4 48

0.2

0
number of transmitters
1 2 3 4 5 10 32 64 128 256

Ethernet is not efficient for small frame size and large number of simultaneous transmitters
Ethernet is considered to enter overload when reaching 10%-18% load

EPFL - Industrial Automation 2004 June, HK 38 3.3.3 Field busses - Link Layer
MAC Ethernet (5): when collisions can't be detected
It is not always possible to detect collisions.
LON uses a p-persistent MAC with 16-slot collision avoidance (p = 1/16)
1
probability of loosing a packet source: P. Koopman, CMU
0.9

0.8

0.7

0.6 without collision detection


0.5

0.4

0.3

0.2
with collision detection

0.1
number of simultaneous transmitters
0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

A small number of simultaneous transmitters causes a high probability loss of a packet .


LON can retry up to 255 times: probability of lost message is low, but delay is long

EPFL - Industrial Automation 2004 June, HK 39 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 40 3.3.3 Field busses - Link Layer
MAC CAN (1): Deterministic Arbitration

The CAN fieldbus uses media with a dominant and a recessive state
When several transmitters are simultaneously active, the dominant state wins
over the recessive state if there is at least one transmitter sending the dominant state
(dominant is “Low” in open collector, "Bright" in an optical fiber, or a collision on a medium
that allows collisions).

Such a medium allows a bit-wise "Wired-OR" operation

Example: device 1 device 2 device 3 device 4


open-collector: Out Jam In Out Jam In Out Jam In Out Jam In

Terminator and XOR XOR XOR XOR Terminator and


pull-up resistor pull-up resistor
Ut
Ut

Rt Rt

Bus line

A device is capable to know if the signal it puts on the line is disturbed (XOR).

EPFL - Industrial Automation 2004 June, HK 41 3.3.3 Field busses - Link Layer
MAC CAN (2): Collision with Winner
Also known as "Urn" or "binary bisection" method
• Each station has a different identity (in this example: 4 bit ID)
• Each station listens before sending and can detect collisions
• Competing stations start transmitting at the same time (1st bit is a SYNC-sign)
• Each station begins its transmission with its identity, bit by bit
• In case of collision, "1" wins over "0" ("1" = Low, bright, dominant).
• A station, whose "0" bit was transformed into a “1" retires immediately
• The winning station has not been disturbed and transmits.
• Loosing stations await the end of the ongoing transmission to start again.
slot time

Station 10 (wins) 1 0 1 0

Station 06 0 (1) (1) (0)

Station 09 1 0 0 (1)

Bus signal 1 0 1 0

Advantage: deterministic arbitration (assumes fairness), good behavior under load


Drawback: the size of the unique ID defines arbitration time,
transmission delay defines slot time -> 40m @ 1 Mbit/s, 400m @ 100 kbit/s
EPFL - Industrial Automation 2004 June, HK 42 3.3.3 Field busses - Link Layer
MAC CAN (3): Deterministic Arbitration

Advantage: deterministic arbitration (assumes fairness, I.e. a device only transmits


again when all losers could), good behavior under load.

Drawback: the slot time (one bit time) must be long enough so that every station can
detect if it has been disturbed - I.e. twice as long as the propagation time
from one end of the bus to the other ( signal speed = 5 ns / m).

Therefore, the bit rate is dependent on the bus extension:

40m @ 1 Mbit/s, 400m @ 100 kbit/s

the size of the unique ID defines arbitration time.

EPFL - Industrial Automation 2004 June, HK 43 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 44 3.3.3 Field busses - Link Layer
MAC Profibus (1): Token principle

z.B.: Token Bus (IEEE 803.4), Profibus (IEC 61158)

All stations form a logical ring

Each station knows the next station in the ring (and the overnext)

Each station delegates the right to send to the next station in the ring,
(in the form of a token frame or as an appendix to a data frame).

Variants Token with Priority (back to the station with the highest priority)

Problems: Loss or duplication of token, initialization

do not confuse with token ring !

EPFL - Industrial Automation 2004 June, HK 45 3.3.3 Field busses - Link Layer
MAC Profibus (2): Token passing

logical ring

station address 12 25 31 current bus


master

AS AS AS active stations
(potential masters)

passive stations
(slaves)

Active Stations (AS) can become master if they own the token,
for a limited duration (one frame only).

After that time, the master passes the token to a station with a higher address
or, if it has the highest address, to the station with the lowest address.

A station must send at least one frame (data or token) when it gets its turn.

EPFL - Industrial Automation 2004 June, HK 46 3.3.3 Field busses - Link Layer
MAC Profibus (3): Token passing algorithm

Each station holds a List of Active Stations (LAS)


GAP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 .. 30 32

AS AS PS TS NS AS

Active Previous This Next Overnext


Station Station Station Station Station

When the current master has no more data to send, or when its turn expires, it
sends a token frame to the Next Station (NS) in the ring.

NS acknowledges reception of the token.

If the master does not receive an acknowledgement for two consecutive trials,
the master removes the station from the LAS and declares the overnext
active station (OS) as NS.

This station accepts the token only if it receives it twice.


The master tests at regular intervals with a "Request FDL-Status" for the
presence of further stations in the gap between itself and NS.

EPFL - Industrial Automation 2004 June, HK 47 3.3.3 Field busses - Link Layer
MAC Profibus (4): Token initialization

A starting station listens to the bus before trying to send.

If it senses traffic, a station records the token frames and builds a list of active stations (LAS).

In particular, it observes if a station with the same name as itself already exists.

When a master checks the gap, the station will receive a token offer.

If a station does not register any traffic during a certain time, it sends a token frame to itself.

It sends the first token frame to itself, to let other starting stations register it.

Only when it detects no other station does a station begin with a systematic
poll of all addresses, to build the LAS.

EPFL - Industrial Automation 2004 June, HK 48 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 49 3.3.3 Field busses - Link Layer
Comparison of Medium Access Control Methods

stochastic deterministic

optimistic pessimistic

carrier sense central master

collision detection collision with winner

p-persistent collision token passing

EPFL - Industrial Automation 2004 June, HK 50 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 51 3.3.3 Field busses - Link Layer
Logical Link Control Sublayer

Network Network

Logical Link Logical Link


Control Control
(LLC) (LLC)

Medium Access Medium Access


Control Control
(MAC) (MAC)

Frame Frame

Physical Physical
Signaling Signaling

Physical Physical
Medium Medium

- unacknowledged connectionless service and


Two Link services:
- connection oriented services

EPFL - Industrial Automation 2004 June, HK 52 3.3.3 Field busses - Link Layer
Connection-Oriented and Connection-Less communication
these considerations apply to all levels of the OSI model
Connectionless mode Connection-Oriented mode
(Datagram ≈ letter) (Virtual Circuit ≈ telephone)
Each packet (Datagram) contains all A connection is first established between sender
information needed to forward it to its final and receiver.
destination over the network, including the Information packets are identified by their
path back to the sender. connection identifier and by their sequence
number within that connection.
The network assumes no responsibility for The network cares for opening and closing
the ordering of packets and does not try to connections and ensures that packets are received
recover damaged datagrams. in same order as they are sent, recovering lost
The burden of flow control and error recovery packets and controlling the flow.
is shifted to the application. Applications see the network as a reliable pipe.
Connection is closed after use (and reused)
Semantic of CL-transmission Semantic of CO-transmission
Send_Packet (source, destination, Packet1); Open_Channel(Node, Task, Channel_Nr);
Send_Message (Channel_Nr, Msg1);
Send_Packet (source, destination, Packet2);
Send_Message (Channel_Nr, Msg2);
Close(Channel_Nr);

Msg1 will be received before Msg2, sequence is maintained.

EPFL - Industrial Automation 2004 June, HK 53 3.3.3 Field busses - Link Layer
Connection-Oriented Link Service

Task: Flow Control and Error Recovery

Connection establishment and disconnection


Send and receive frames
Flow Control (Buffer control)
Retry in case of error

service service service


user provider user

REQUEST

INDICATION

RESPONSE

CONFIRM

EPFL - Industrial Automation 2004 June, HK 54 3.3.3 Field busses - Link Layer
Flow Control

( = synchronization at the link layer)

"Adapt the speed of the sender to that of the receiver"


Methods
• Use Acknowledgements: do not send until an acknowledgement is received
(acknowledgements have two purposes: error recovery and flow control !)
• Credit: the receiver indicates how many frames it can accept
(sliding Window protocol). Improvement: variable window size.
• Explicit braking (CTRL-S/ CRTL-Q)
Lower Window Upper Window
Edge Edge

packets 6 7 8 9 10 11 12
time
sent and sent but not yet can be sent may not
acknowledged acknowledged be sent

EPFL - Industrial Automation 2004 June, HK 55 3.3.3 Field busses - Link Layer
Simple transfer with window size = 1

Producer LLC Bus LLC Consumer


Connection
tm_message.req Connect Request

connect nm_connect.ind
i
timer nm_connect.cnf
Connect Confirm
Transfer
ack DATA (0)
timer ACK (1) alive
time-out
DATA (1)
ACK (2)

DATA ( last)
nm_message_ind
ACK (last) late
nm_message.cnf Disconnection acks
time

Every packet takes at least two propagation times

EPFL - Industrial Automation 2004 June, HK 56 3.3.3 Field busses - Link Layer
Error Recovery

General rule: Erroneous information frames are repeated


(error correcting codes belong to physical layer)
1) In cyclic transmission, information is not explicitly repeated in case of loss,
the receiver will receive a fresh information in the next cycle.
A freshness control supervises the age of the data in case communication ceases.
2) In event-driven transmission, no information may be lost, a repetition is explicit:
a) The sender of information frames expects acknowledgement of the
receiver, indicating which information it received.
b) The sender repeats the missing information a number of times, until it
receives an acknowledgement or until a time-out expires.
c) To distinguish repetitions from new information, each packet receives
a sequence number (in the minimum odd/even).
d) The receiver acknowledges repetitions even if it already received the
information correctly.
3) In broadcast transmission, it is relatively difficult to gather acknowledgements
from all possible receivers, so in general unacknowledged broadcast is used.
The receiver is expected to protest if it does not receive the information.

EPFL - Industrial Automation 2004 June, HK 57 3.3.3 Field busses - Link Layer
Link Layer Outline

Link Layer in the OSI model


Stacks
HDLC as example
Frame sub-layer
Error detection
Error correction
Medium Access control
Quality Criteria
Single Master
Rings
Ethernet
Collision with winner
Token Passing
Comparison
Logical Link Control
Connection-Oriented and connectionless
Error recovery
Flow control
HDLC

EPFL - Industrial Automation 2004 June, HK 58 3.3.3 Field busses - Link Layer
Example: HDLC

HDLC (High-level Data Link Control is derived from IBM's SDLC


(Synchronous Data Link Control)

These protocols were developed for connection of point-of-sale terminals to a


one mainframe computer.
HDLC is the most frequently used link layer protocol.
It is the base for the CCITT-standard X25 (Telenet, Datex-P, Telepac) and used in Bitnet,
Appletalk, etc...
The HDLC protocol is implemented in the hardware of numerous
microcontrollers (e.g. Zilog 80C30, Intel, Siemens 82525,... and in some
microprocessors (e.g. 68360).
HDLC is the base for the Local Area Network protocol IEEE 802.2

EPFL - Industrial Automation 2004 June, HK 59 3.3.3 Field busses - Link Layer
HDLC Control Field (ISO 4335)

flag flag

01111110 adr control any data FCS 01111110

8 8 8 16 8

physical address of Secondary


(for command and response)

Control Field Bits

1 2 3 4 5 6 7 8
Control Field Format for: N(S) = Sequence number of
Information Transfer sender
Command/Response 0 N(S) P/F N(R)
(I-Format PDU) N(R) = Sequence number of
Supervisory receiver
Commands/Responses 1 0 S P/F N(R)
(S-Format PDUs)
S = Supervisory
Unnumbered
Commands/Response 1 1 M P/F M
(U-Format PDUs)
P/F = Poll/Final (Please respond/Final in sequence)

EPFL - Industrial Automation 2004 June, HK 60 3.3.3 Field busses - Link Layer
HDLC Connection Types

Traffic is divided into packets (= information frame) each receiving a sequence


number (Modulo 8).
The sender includes the sequence number in each packet.

The receiver indicates which packet it expects next, either through a special frame
( Receiver Ready N(R) ) or within its information frames (I-Frame, N(R))

At the same time, this sequence number acknowledges all previously received
frames with number N(R) -1.

HDLC provides different connection types:


LAP (link access procedure): assymetric Primary/Secondary;

NRM (normal response mode): only one station as primary;

ARM (asynchronous response Mode): spontaneous transmission of secondary;

LAPB (LAP-balanced): every station can become primary and start transmitting
(if medium access allows).

EPFL - Industrial Automation 2004 June, HK 61 3.3.3 Field busses - Link Layer
HDLC Exchange (NMR in ISO 4335)

Send Sequence
set normal response please confirm
mode, poll information packets
SNRM, P I0,0 I1,0 I2,0P I3,0
Primary
(Commander) time
UA,F RR3,F
Secondary
(Responder) accept receiver
connection, ready, expects 3
final
Receive Sequence
receiver receiver
set normal response
ready, expects 0 ready, expects 3
mode, poll
SNRM; P RR0;P RR3;P
Primary time
(Commander)
UA;F I0,0 I1,0 I2,0;F I3,0
Secondary
(Responder) accept several
connection, final information packets last frame

The data transmission takes place under control of the Primary.


Therefore, both "Send Frame" and "Receive Frame" are supported

EPFL - Industrial Automation 2004 June, HK 62 3.3.3 Field busses - Link Layer
Clocks

In a fieldbus, devices must be synchronized to a common clock to time-stamp


their transmissions.

EPFL - Industrial Automation 2004 June, HK 63 3.3.3 Field busses - Link Layer
Time Distribution in a single master system

At fixed intervals, the Master broadcasts the exact time as a periodic variable.
When receiving this variable, the bus controllers generate a pulse which can
resynchronize a slave clock or generate an interrupt request.

int application int application int application


req processor 1 req processor 2 req processor 3

PORTS PORTS PORTS


slave
clock

master
clock pulse pulse pulse
bus bus bus
controller controller controller

BUS
bus master time variable

EPFL - Industrial Automation 2004 June, HK 64 3.3.3 Field busses - Link Layer
Clock compensation for transmission delays

other master
slave with clock
clock
master
1 MVB 1 other MVB

synchronizer

master clock slave clocks


device

The clock does not need to be generated by the Master, but the master must poll the clock
The clock can synchronize sampling within a few µs across several bus segments.

EPFL - Industrial Automation 2004 June, HK 65 3.3.3 Field busses - Link Layer
IEEE 1588 PTP Clock Synchronization

IEEE 1588 defines the Precision Time Protocol, a clock synchronization that assumes that
two consecutive frames have the same delay, but the moment of sending suffers jitter.

The clock device (possibly coupled to a radio signal) sends the first frame with an coarse
time stamp, but registers in hardware the exact moment when the frame was sent.

It then sends a second frame with the exact time at which the first frame was sent.

Bridges and switches are responsible to compensate for their internal delays and send a
corrected time frame.

EPFL - Industrial Automation 2004 June, HK 66 3.3.3 Field busses - Link Layer
High precision clock synchronization

In some application, even the PTP protocol is insufficient.

In this case, either the clock is distributed by a separate, dedicated medium


(as in railways signalling and electrical substations.

Alternatively, all devices receive a radio signal from GPS to recalibrate their internal clocks.

EPFL - Industrial Automation 2004 June, HK 67 3.3.3 Field busses - Link Layer
Assessment

What is the purpose of the link layer ?


Which is the role of the three sublayers in the link layer ?
What is the Hamming Distance ?
What is the Residual Error Rate ?
What is the code efficiency ?
Where are error-correcting codes used ?
What is the formal of an HDLC frame ?
What is the purpose of medium access control ?
Which medium access does not require an arbitration ?
Which kinds of arbitration exist ?
How does the CAN arbitration works and what is its assumption on the medium ?
How does the Ethernet arbitration works ?
What is the influence of collision detection in a LON arbitration ?
Which medium access are deterministic ?
What is the difference between connection oriented and connectionless transmission ?
How are error corrected by the logical link control in cyclic transmission ?
How are error corrected by the logical link control in event-driven transmission ?
How does a sliding window protocol works ?
How does a transmission in HDLC work ?
How are clocks synchronized ?

EPFL - Industrial Automation 2004 June, HK 68 3.3.3 Field busses - Link Layer
Industrial Automation
Automation Industrielle
Industrielle Automation

PersonnelRecord ::= [APPLICATION 0] IMPLICIT SET {


name Name,
title [0] VisibleString,
number EmployeeNumber,
dateOfHire [1] Date,
nameOfSpouse [2] Name,
children [3] IMPLICIT
SEQUENCE OF ChildInformation
DEFAULT {}

3.3.4

OSI Upper Layers - Presentation Layer, ASN.1 and data types


Niveaux supérieurs OSI - couche de présentation, ASN.1 et types de données
Obere OSI-Schichten – Darstellungsschicht, ASN.1 und Datentypen

Prof. Dr. Hubert Kirrmann


ABB Ltd, Baden, Switzerland
2005, May, HK
Presentation layer in the OSI-Model (ISO/IEC standard 7498)

All services directly called by the end user


7 Application (Mail, File Transfer,...)

Definition and conversion of the


6 Presentation data formats (e.g. ASN 1)

Application Management of connections


5 Session
protocols (e.g. ISO 8326)

4 Transport End-to-end flow control and error recovery


(e.g. TP4, TCP)

3 Network Routing, possibly segmenting


(e.g. IP, X25)
Transport
2 Link protocols Error detection, Flow control and error recovery,
medium access (e.g. 802.2, HDLC)
1 Physical
Coding, Modulation, Electrical and
mechanical coupling (e.g. Ethernet)

2005 May, HK
Industrial Automation 2 3.0.3 Presentation Layer
Presentation Layer

The presentation layer is responsible that all communication


partners agree on the format of the data

2005 May, HK
Industrial Automation 3 3.0.3 Presentation Layer
Transfer Syntax: describe what is in a frame ?
Role: how to define formally the format and meaning of the transmitted data
IEEE 802.4 ISO 8802 ISO 8473 ISO 8073 DATA (DT) TPDU
token bus logical link control connectionless network control class 4 transport control (normal format)

MAC_header LNK_hdr NET_header TRP_header DATA

13 3 >48 5

MA. frame control L_destination SAP Protocol Identifier (81) LI

L_source SAP Header Length TPDU (CDT)

L_PDU Version/Protocol ID (01) Destination


Lifetime Reference
MA. destination LSAP = DSAP
FE = network layer FIXED
18 = Mini-MAP Object SP MS ER DT/ER Type PART ET N(S)
address
(6 octets) Dictionary Client
19 = Network Management PDU Segment Length address length
00 = own link layer IDP
(initial
AFI = 49
L_PDU = UI, XID, TEST Checksum domain
IDI, Area ID part)

Destination Address (7 octets)

MA. source (18 octets)


PSI
address Source Address
(18 octets) DSP
(6 octets) Physical Address (domain
Address Segmentation (6 octets) specific
Part part)
(0 or 6 octets)
LSAP = FE
Options
(priority = 3 octets) NSAP = 00

2005 May, HK
Industrial Automation 4 3.0.3 Presentation Layer
ASN.1 justification

Why do we need ASN.1 ( or a similar notation)

2005 May, HK
Industrial Automation 5 3.0.3 Presentation Layer
Semantic Levels of Data Representation
Semantic format 154,5 Vrms

struct {
unsigned count;
int item2:8;
Application Language format int item1:4;
int dummy:4; Application
} Processor
D15 D00
Application Memory
Application Storage format
(Assembly language)

Storage format
Traffic Memory Parallel Bus Format
Traffic Memory format (8 bit, 16 bit, 32 bits)

Transmission SEQUENCE { (16-bit oriented)


Bus Controller
Specification item1 INTEGER16,
Language and item2 INTEGER4,
Encoding Rules count UNSIGNED8; Bus Transmission Format
}

time

2005 May, HK
Industrial Automation 6 3.0.3 Presentation Layer
Bit Transmission Order
Most data links are byte-oriented (transmit 8 bit as an indivisible unit)
The order of bit transmission within a byte (octet) is dependent on the link.
It does not matter as long as all bus participants use the same scheme
first first

0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0
LSB MSB MSB LSB time
UART, HDLC, Ethernet FDDI, FIP, CAN, MVB
Legacy of the old telex

There is no relation between the bit and the byte ordering scheme
octet in octet out
Who says which bit is really transmitted first ?
(FDDI: multi-bit symbol transmission, multi-bit
transmission with interleaving)

Convention: only consider octet streams

2005 May, HK
Industrial Automation 7 3.0.3 Presentation Layer
Integer representation in memory: Big-Endian vs Little Endian

LE BE
Memory contents
MSB LSB Intel Motorola
DEC IBM, TCP/IP,
address 7 6 5 4 3 2 1 0 Unix, RISC
x0000 0 0 0 0 0 0 1 0 INTEGER8 =2 =2
x0001 0 0 0 0 0 0 0 1
INTEGER16 =1 = 256
x0002 0 0 0 0 0 0 0 0

x0003 0 0 0 0 0 0 0 1

x0004 0 0 0 0 0 0 0 0
INTEGER32 =1 = 16777216
x0005 0 0 0 0 0 0 0 0

x0006 0 0 0 0 0 0 0 0

Processor B7B6B5B4B3B2B1B0 (bit name)


TCP/IP 0 1 2 3 4 5 6 7 (bit offset) three different naming schemes !
Profibus 1 2 3 4 5 6 7 8 (bit position)

2005 May, HK
Industrial Automation 8 3.0.3 Presentation Layer
How are sequence of octets transmitted ?

Most Significant First ?

Transmission Order on the bus ? time


0 1 2 3

INTEGER32
how to name bits ?

The standard in network protocols is always:


Most Significant Octet first (Big-Endian)

2005 May, HK
Industrial Automation 9 3.0.3 Presentation Layer
So, how to respect network byte ordering ?

Since network protocols require a “most significant octet first” transmission


(NBO =Network Byte Ordering), all little-endian processors must convert their data before
putting them into the transmission buffer, pipe or socket, by calling the Unix functions:

Function Name Description


htons Host order to network order, short (2 bytes, 16 bits)
htonl Host order to network order, long (4 bytes, 32 bits)
ntohs Network order to host order, short (2 bytes, 16 bits)
ntohl Network order to host order, long (4 bytes, 32 bits)

All data "seen" by the sockets layer and passed on to the network must be in network order
struct sockaddr_in s;
/* WRONG */
s.sin_port = 23;
/* RIGHT */
s.sin_port = htons(23);

- Extremely error prone

2005 May, HK
Industrial Automation 10 3.0.3 Presentation Layer
Inconsistency: Token-bus frame (IEEE 802.4)
first MAC
symbol
read this picture from left to right,
preamble then top to bottom
N N 0 N N 0 0 0
F F M M M P P P
I/G L/U lsb
Destination Address
remaining 44 bits of address

msb
Addresses are transmitted least significant bit first
I/G L/U lsb
Source Address
remaining 44 bits of address
msb
lsb msb first octet
Data are transmitted least significant bit first within
an octet, but most significant octet first within a
word (imposed by higher layers)
lsb msb last data octet
msb

Frame Check Sequence


Checksum is transmitted most significant bit first
lsb
N N 1 N N 1 I E

2005 May, HK
Industrial Automation 11 3.0.3 Presentation Layer
How to specify transmitted data

offset 0
offset

time

first: agree on a bit and byte ordering second: describe the data stream
scheme: {0,0} scheme recommended. formally (machine-readable)
intuitive formal
0 1 2 3 4 5 6 7 CommandPDU :== SEQUENCE
0 snu gni nodeID or groupID {
1 stationID BOOLEAN1 snu -- system
2 BOOLEAN1 gni -- group
functionID
3
CHOICE (gni)
protocolID
{
4
command Group : ENUM6 groupID;
parameter Individual: ENUM6 nodeID;
i
}
ENUM8 stationID;
i+1
...
2005 May, HK
Industrial Automation 12 3.0.3 Presentation Layer
Can a “C”-declaration serve as an encoding syntax ?

how is size given?


typedef struct {
char location[ LOCATION_LEN ];
unsigned long object_id; allowed values in enum ?
alarm_type_t alarm_type;
priority_level_t priority_level;
unsigned long index_to_SNVT;
unsigned value[ 4 ];
unsigned long year; to which structure does it point?
unsigned short month;
unsigned short day;
unsigned short hour;
unsigned short minute;
unsigned short second; is "short" a byte ?
unsigned long millisecond;
unsigned alarm_limit[ 4 ];
} SNVT_alarm; is “unsigned” 16 bits or 32 bits ?

Such a machine-dependent syntax is only valid if all applications use the same syntax on
the same machine with the same compiler, it is not suited to describe the bus traffic.

2005 May, HK
Industrial Automation 13 3.0.3 Presentation Layer
Abstract Syntax Notation Number 1 (ASN.1)

• The IEC/ISO define a standard notation in IEC 8824 (ASN.1), allowing to define
simple types (primitive) and constructed types.
• Data structures can take forms not usually found in programming languages.
• Each data structure is identified during transmission by a tag.
• In principle, ASN.1 only defines data structures to be transmitted, but not how
they are encoded for transmission.
• One possible coding of the primitive and constructed data types is defined in
ISO/IEC 8825 as "Basic Encoding Rules“ (BER) defined in ISO 8825.
• More efficient encodings (PER,…) also exist.
• ASN.1 can be used for defining memory contents, file contents or communication
data, and in general any exchanged information.
• ASN.1 has the same role as XML, but it is far more efficient.

2005 May, HK
Industrial Automation 14 3.0.3 Presentation Layer
ASN.1 Syntax Example

Informal ASN.1
Name: John P Smith PersonRecord ::= [APPLICATION 0] SEQUENCE {
Title: Director name Name
Employee Number: 51
Date of Hire: 17 September 1971 title [0] VisibleString,
Name of Spouse: Mary T Smith number EmployeeNumber,
Number of 2 dateOfHire [1] Date,
Children: nameOfSpouse [2] Name,
children [3] SEQUENCE OF
Child Information Ralph T Smith
Name: 11 November 1957 Childinformation DEFAULT {} }
Date of Birth
ChildInformation ::= SEQUENCE {
Child Information Susan B Jones name Name,
Name: 17 July 1959
Date of Birth dateOfBirth [0] Date}

Name ::= [APPLICATION 1] SEQUENCE {


givenName VisibleString,
initial VisibleString,
familyName VisibleString}
EmployeeNumber ::= [APPLICATION 2] INTEGER

Date ::= [APPLICATION 3] VisibleString -- YYYYMMDD

2005 May, HK
Industrial Automation 15 3.0.3 Presentation Layer
Abstract syntax and transfer syntax

An abstract syntax describes the elements of information without considering their


encoding (i.e. how they are represented in memory or on a bus)

E.g. A transfer syntax defines the name of the structures and elements, their value range
[e.g. 0..15], ….

ASN.1 is defined in the standard ISO 8824-1.

A transfer syntax describes how the structures and elements are effectively
encoded for storing and transmission, so that the receiver can fully decode the
transmitted
information. At transmission time, only the transfer syntax is visible, it cannot be
interpreted
without knowing the abstract syntax.

E.g. A transfer syntax defines that an array of 33 Unicode characters is transmitted.


The receiver knows from the abstract syntax that this is a person’s name.

The basic encoding rules for ASN.1 are defined in the standard ISO 8825-1.

2005 May, HK
Industrial Automation 16 3.0.3 Presentation Layer
ASN.1 encoding: TLV

ASN.1 does not say how data are stored nor transmitted, but it assumes that the
transmission format consists for each item of: a tag, a length and a value (TLV)

tag length value

The value may be itself a structured object:

tag length tag length value tag length value (recursive)

the tag specifies the data type of the value that follows, implicitly or explicitly.

2005 May, HK
Industrial Automation 17 3.0.3 Presentation Layer
ASN.1 Data Types

UNIVERSAL
four Tag Types APPLICATION
CONTEXT_SPECIFIC
PRIVATE

Basic Types Constructed Types

BOOLEAN SEQUENCE ordered sequence of types (record)


INTEGER
BITSTRING SEQUENCE OF ordered sequence of same type (array)
OCTETSTRING
NULL
OBJECT_ID CHOICE one of an unordered, fixed sequence of
OBJECT_DESC different types.
EXTERNAL
REAL SET unused
ENUMERATED
ANY SET OF unused

Open arrays (dynamic size) and pointers are not allowed

2005 May, HK
Industrial Automation 18 3.0.3 Presentation Layer
ASN.1: The Type SEQUENCE

An ASN.1 SEQUENCE is similar to a “C”-struct:

Example: PersonRecord ::= SEQUENCE {


person VisibleString
chief VisibleString
title VisibleString,
number INTEGER,
dateOfHire UniversalTime }

This notation assumes that all elements in the sequence are present and are transmitted
in the specified order.

person chief title number dateOfHire

PersonRecord VisibleString INTEGER UniversalTime

2005 May, HK
Industrial Automation 19 3.0.3 Presentation Layer
Tagging

When elements of a sequence may be missing, it is necessary to tag the items,


i.e. identify the items by an integer.

Of course, if all types would be different, it would be sufficient to specify the type,
but this practice (called EXPLICIT tagging) should not be followed.

Structured types need in any case a tag, otherwise they cannot be distinguished
from another structured type (note how “PersonRecord” is identified)

PersonRecord ::= [APPLICATION 1] SEQUENCE {


person [1] VisibleString,
chief [2] VisibleString,
title [3] VisibleString,
number [4] INTEGER,
dateOfHire [5] UniversalTime }

person number title dateOfHire

tags A1 A1 A4 A3 A5
2005 May, HK
Industrial Automation 20 3.0.3 Presentation Layer
ASN.1: The CHOICE type
A choice selects exactly one alternative of several.
There is normally a distinct tag for each choice, but the type can
also be used as tag, as long as all types are distinct:

Quantity ::= CHOICE {


[0] units INTEGER16,
[1] millimetres INTEGER32,
[2] kilograms FLOAT
}

0 2 1234 quantity in units

1 2 1234 quantity in millimeters

2 4 1.2 E 03 kilograms, IEEE format

2005 May, HK
Industrial Automation 21 3.0.3 Presentation Layer
quantity in millimeters
Difference between ASN.1 and “C”* or XML/XDR

ASN.1 is a format for data exchange, “C” is a compiler-dependent format for storage in RAM.

The basic data types are defined differently.

ASN.1 types may have a variable size (INTEGER may be 8, 16, 32, 64 bits).

ASN.1 SEQUENCE differs from a “C” struct since not all elements must be transmitted, nor is
their order to be maintained (if tagging is used).

ASN.1 CHOICE differs from a “C” union since the length depends on the chosen item,
and the contents differ.

ASN.1 has the same role as XML. XML is however both an abstract and a transfer syntax, it is
sent in clear text.

Unix systems use XDR (Sun's external data representation) that is 32-bit oriented, not efficient
for small data items, also a mixture of abstract and transfer syntax.

2005 May, HK
Industrial Automation 22 3.0.3 Presentation Layer
Explicit and implicit tagging

ASN.1 can assign automatically a tag to elements of a sequence.

This practice is dangerous, because another encoding (PER) could use other
tag numbers.

It is preferable to make tags explicit everywhere that is needed.

2005 May, HK
Industrial Automation 23 3.0.3 Presentation Layer
Transfer Syntax: Basic Encoding Rules (BER)

A companion to ASN1, BER (ISO 8825-1) defines encoding rules for ASN.1 data types

BER tags all data, either implicitly or explicitly

Type, Tag and size are transmitted before every value or structured data

Example: type = UNIVERSAL Integer (tag included in basic types)


length = 2 octets
value = 1234

02 02 12 34

BER supports all ASN.1 structures.

Exception: if size is 0, there is no value field (== NULL)

2005 May, HK
Industrial Automation 24 3.0.3 Presentation Layer
BER – Tag/Type field

Primitive {0} or
Class Tag

Constructed {1}
(for universal class only):
00 = UNIVERSAL
00 = null (size = 0, no value)
01 = APPLICATION
10 = CONTEXT_SPECIFIC 01 = Boolean type
11 = PRIVATE 02 = Integer type
03 = Bitstring type
04 = Octetstring type
05 = Null type
P: after the size comes a value - 06 = Object Identifier type
C: after the size comes a tag 07 = Object Descriptor type
16 = Sequence and Sequence_Of types
17 = Set and Set_Of types
18-22 = Character strings (numeric, printable, …)
23-24 = Time types
25 = Graphic string
26 = VisibleString (ISO646)
> 28 = reserve and escape: use a second octet.
Example: 00000010 = UNIVERSAL INTEGER
10100001 = [CONTEXT_SPECIFIC 1] SEQUENCE
2005 May, HK
Industrial Automation 25 3.0.3 Presentation Layer
Example ASN.1 and BER
8 1
AP C 7
CallerRef :== [APPLICATION 7] SEQUENCE { 16
priority [2] INTEGER, CS P 2
command [0] INTEGER, 1 high_prio
reference [1] INTEGER, high_prio
caller INTEGER} CS P 0
1 command
command
CS P 1
(useful information) 2 reference
reference (MSB)
reference (LSB)
CS P 3
4
UN P 2 caller
2
caller (MSB)
caller (LSB)

2005 May, HK
Industrial Automation 26 3.0.3 Presentation Layer
Examples

Tag/Type:

• 1000’0000 Context Specific, not constructed, implicit, tag = [0]

• 0110’0001 Application Specific, constructed, implicit, tag = [1]

AB 1010’1101 Context Specific, constructed, implicit, tag = [11]

01 0000’0001 Basic Type, not constructed, boolean

decoding the first digit: constructed means: the next octet is not
a value, but a type/tag !
0,1: Universal, not constructed
2,3: Universal, constructed
4,5: Application Specific, not constructed [APPLICATION 1]
6,7: Application Specific, constructed
8,9: Context Specific, not constructed [6]
A,B: Context Specific, constructed
2005 May, HK
Industrial Automation 27 3.0.3 Presentation Layer
Examples

green: tag / type


A0 0E 02 01 0A A1 09 A0 03 80 01 00 A1 02 80 00 red: size
black: value
A1 67 02 01 0A A1 62 A0 5D 1A 0B 54 65 6D 70 65 null
72 61 74 75 72 65 1A 0C 54 65 6D 70 65 72 61 74
75 72 65 31 1A 07 61 72 72 61 79 5F 35 1A 04 62
6F 6F 6C 1A 0F 66 65 65 64 65 72 31 5F 33 5F 70
68 61 73 65 1A 05 66 6C 6F 61 74 1A 0F 68 65 72
62 73 5F 74 65 73 74 5F 74 79 70 65 1A 08 75 6E
73 69 67 6E 65 64 81 01 00
--
A0 18 02 01 0B A6 13 A0 11 80 0F 66 65 65 64 65
72 31 5F 33 5F 70 68 61 73 65
A1 34 02 01 0B A6 2F 80 01 00 A1 16 81 14 66 65
65 64 65 72 31 5F 33 5F 70 68 61 73 65 24 41 64
64 72 A2 12 A2 10 A1 0E 30 05 A1 03 85 01 10 30
05 A1 03 85 01 10
--
A0 1E 02 01 0C A4 19 A1 17

2005 May, HK
Industrial Automation 28 3.0.3 Presentation Layer
Beyond ASN.1 and BER

ASN.1 / BER could not impose themselves in field busses because


of the high overhead involved (32 bits for a single boolean !)

ISO / UIT developed more efficient encodings, such as


ISO/IEC 8825-2: Packed Encoding Rules (PER), that
exists in two versions: aligned (on an 8-bit boundary) or not aligned (bit stream)

In low speed busses such as fieldbus, this is still too much overhead.

IEC 61158-6 (Fieldbus) offers 3 encodings:


Traditional Encoding Rules (Profibus)
Compact Encoding Rules (for FAL)
Buffer Encoding Rules (FIP)

100 MBit/s Ethernet has sufficient bandwidth, but the burden is shifted to the processors

(Data compression gives variables length messages, costs a lot in compression


& decompression)

2005 May, HK
Industrial Automation 29 3.0.3 Presentation Layer
ROSIN Compact – Retrofit Encoding
The railways operators needed to define formally the exchange rules for
data of already existing devices, of different manufacturers and vintage.

Therefore, a notation was developed (ROSIN notation) to describe any data transfer,
on a bit rather than a byte-orientation. It also allows to cope with alignment
(data should be transmitted at an offset that is a multiple of their size to reduce
processor load)

Indeed, since these devices already communicate using a proprietary protocol,


transmission must already be unambiguous.

Each data type is specified, e.g. Integer32 differs from Integer32_LE (Little Endian)

The ROSIN notation uses the ASN.1 meta-syntax, but it does not imply a TLV scheme.
- the length can be deduced from the type or position,
- typing information is inserted explicitly when:
• a choice exists among several alternative types (e.g. depends on success/failure)
• types have a (large) variable size (e.g. text strings, files)
• sequences have optional fields and out-of-sequence fields (occurs too often).

2005 May, HK
Industrial Automation 30 3.0.3 Presentation Layer
ROSIN - Retrofit encoding rules example
Type_InfoMessage ::= RECORD {
parameter1 INTEGER8 -- octet.
parameter2 INTEGER16, -- 16-bit word, MSB first 0 7
parameter3 UNSIGNED6, -- 6- bit value
0 parameter1
par4 ANTIVALENT2, -- 2 bits for par4, e.g. check variable.
parameter5 Parameter5, -- parameter5 has a structured type 1 parameter2
parameter6 STRING32, -- an array of up to 32 8-bit characters.
-- trailed if shorter with “0” characters. 2
snu ENUM1 { 3 parameter3 par4
USER (0), -- 0 = user
SYSTEM (1) -- 1 = system 4 parameter5
}, 5
gni ENUM1 { -- could also be expressed as BOOLEAN1
INDIV (0), -- individual function addressing 6
GROUP (1), -- group addressing.
},
7 parameter6
node_id UNSIGNED6, -- 6-bit unsigned integer CHARACTER8
sta_or_func ONE_OF [snu] { -- meaning depends on ‘snu’
function [USER] UNSIGNED8, -- if snu = user, function identifier 39 snu gni node_id
station [SYSTEM] UNSIGNED8 -- if snu = system, station identifier 40 sta_or_func
},
next_station_id UNSIGNED8, -- next station or ‘FF’H if unknown 41 next_station_id
tv BOOLEAN1, -- TRUE if 1 42 tv d1 top_counter
res1 BOOLEAN1 (=0), -- 0 (place holder)
topo_counter UNSIGNED6, -- 6-bit unsigned integer 43 tnm_code
tnm_code ENUM8 { -- has only two defined values
44 action_code
FIRSTCASE (‘1E’H) -- one of two defined values
SECONDCASE (‘84’H) -- the other defined value
},
action_code Action_Code, -- this type is used several times
}

2005 May, HK
Industrial Automation 31 3.0.3 Presentation Layer
Comparing Coding Efficiency

(ISO) (SUN) (UIT) (Profibus) (FIP)


BER XDR A-PER U-PER FER BuER ROSIN
Boolean 24 16 5 5 16 8 1
Integer8 24 16 16 12 16 16 8
Unsigned8 24 16 11 11 16 16 8
Integer16 32 24 24 20 24 24 16
Unsigned 16 32 24 24 19 24 24 16
Integer32 48 40 24..48 36 40 40 32
Unsigned32 48 40 24..48 35 40 40 32
String [32] 272 272 272 272 272 272 256

encoding/decoding highly packed data may cost more than is won by shorter transmission

2005 May, HK
Industrial Automation 32 3.0.3 Presentation Layer
Engineering Units

Many process variables represent analog, physical values of the plant.

Data presentation (e.g. integer) is insufficient to express the meaning of the variable.

Therefore, it is necessary to allocate to each variable a data type in engineering units.

"A unit of measure for use by operating/maintenance personnel usually


provided by scaling the input quantity for display (meter, stripchart or CRT)"
IEEE

Scaling (determined the possible range of a variable) is necessary for analog displays.
It requires the definition of the possible range of values that the variable may take.

2005 May, HK
Industrial Automation 33 3.0.3 Presentation Layer
SI Units

All physical variables should be restricted to SI Units (NIST 330-1991, IEEE 268A-1974)
or refered directly to them

For instance:
• speeds shall be expressed in meter/second, not in km/h or in miles/hour
• angles shall be represented in radian rather than degree or grad.

variable unit variable unit


position, distance m power W
mass kg energy J
time s pressure Pa
current A volume m3
angle rad flow m3 /s
force N mass flow kg/s
torque Nm tension V
frequency s-1 reactive power var
angular velocity rad/s impedance W
-2
angular acceleration rad s temperature K

2005 May, HK
Industrial Automation 34 3.0.3 Presentation Layer
Why floating point ?

Floating point format (IEEE Std 254)


- require twice the place (32 bits vs 16 bits),
- adds about 50% to traffic (analog values are only 10% of total),
- cost more to process (floating point unit)
but
- removes all ambiguities, rounding errors, overflow and underflow.
Floating point format is the only safe representation of a physical variable.
Internally, devices can use other formats.
Therefore, devices shall indicate their exported and imported variables as REAL32.
Exception:
Variables, whose precision do not depend on their absolute value:
time, elapsed distance (odometer), energy, money, countable objects

In special applications (e.g. GPS data), an ASCII representation may be more


appropriate, albeit not efficient. In this case, data can also be processed as BCD
(as in pocket calculators)

2005 May, HK
Industrial Automation 35 3.0.3 Presentation Layer
Fractionals

A device can indicate the format of a fractional analog variable by


specifying (as a REAL32) the span and the offset to be applied to the base unit:
offset value

span value
physical variable
UNSIGNED16

0 65535
INTEGER16

-32768 0 +32767

e.g. offset = 0,0 m/s, span = 100,0 m/s, base unit = UNSIGNED16
means: 0 = 0,0 m/s, 65536 == 100,0 m/s

e.g. offset = - 32,768 V, span = 65,536 V, base unit = INTEGER16


means: 0 = -32,768 m/s, 65536 == 32,767 V

2005 May, HK
Industrial Automation 36 3.0.3 Presentation Layer
Scaled Variables
Process Variables are often transmitted and processed as fractionals:
Fractional format expresses analog values as integer multiples of the resolution
e.g.:
distance = 0..65535 x 0.1 m (resolution) --> 0 .. 65535 (UNSIGNED16)
distance = -32768..+32767 x 0.1 m --> -32768 .. 32768 (INTEGER16)
speed = 0.. 6553,5 m/s, resolution = 0.1 m/s --> 0 .. 65535 (UNSIGNED16)
speed = 0.. 6.5535 m/s, resolution = 0,0001 m/s --> 0 .. 65535 (UNSIGNED16)
The resolution is often a decimal fraction of a unit !

Some standards provides a bipolar or unipolar analog data format:


e.g. :
0..200% of physical variable == 0..65536 (UNSIGNED16)
-200%..+200%-e of 10 kV == -32768 .. 32768 (INTEGER16)

fractionals require producer and consumer to agree on range and resolution:


e.g. resolution 0.5 V, range 6553.5 V

fractionals are easy to process but error prone (overflow, underflow)

A conversion from fractional to floating point did cost over 5 Mia € (Ariane 501 accident)

2005 May, HK
Industrial Automation 37 3.0.3 Presentation Layer
Constructed Application Data Types

Circuit Breaker command:

Code DoubleCommand Persistent RegulatingStep Double-Point


Regulating Command Command Information

00 not permitted not permitted not permitted indeterminate


01 OFF Lower Next Step Lower determined OFF
10 ON Higher Next Step Higher determined OFF
11 not permitted not permitted not permitted not permitted

Time-Stamped Variable:

value

time

status

2005 May, HK
Industrial Automation 38 3.0.3 Presentation Layer
Application Data Types

Structured Text:

RTF - Microsoft Word Native Format

HTTP - Hypermedia data presentation

Some standards for video:

QuickTime -- an Apple Computer specification for video and audio.

Motion Picture Experts Group (MPEG) -- video compression and coding.

Some graphic image formats:

Graphics Interchange Format (GIF) -- compression and coding of graphic images.

Joint Photographic Experts Group (JPEG) -- compression and coding for graphic images.

Tagged Image File Format (TIFF) -- coding format for graphic images.

14

2005 May, HK
Industrial Automation 39 3.0.3 Presentation Layer
Presentation Layer in the application

Coding and conversion functions to application layer data cannot be done in the
presentation layer due to the lack of established rules
These functions ensure that information sent from the application layer of one system will
be readable by the application layer of another system.
Examples of presentation layer coding and conversion schemes in the application:
Common data representation formats -- The use of standard image, sound, and video
formats allow the interchange of application data between different types of computer

Conversion of character representation formats -- Conversion schemes are used to


exchange information with systems using different text and data representations (such as
ASCII and Unicode).
Common data compression schemes -- The use of standard data compression schemes
allows data that is compressed at the source device to be properly decompressed at the
destination (compression can take place at different levels)
Common data encryption schemes -- The use of standard data encryption schemes allows
data encrypted at the source device to be properly unencrypted at the destination.

2005 May, HK
Industrial Automation 40 3.0.3 Presentation Layer
Gateway
When devices share no common transport layer protocol, gateways act as protocol
converters and application layer protocols must ensure end-to-end control.
Protocol Conversion is costly in development and real time, since protocols are in
general insufficiently specified, custom-designed, and modified without notice.
Protocol Conversion requires at least an semantical equivalent of the objects on both
sides of the gateway, so that one command can be converted into another - if possible.
gateway
PD-marshalling

application MSG application

presentation presentation

session session
Real-Time PV PV
Protocols transport transport

network network
link link link link

physical physical physical physical

bus type 1 bus type 2

2005 May, HK
Industrial Automation 41 3.0.3 Presentation Layer
To probe further

http://www.isi.salford.ac.uk//books/osi/all.html - An overview of OSI

http://www.oss.com/ - Vendor of ASN.1 tools

http://www-sop.inria.fr/rodeo/personnel/hoschka/347.txt - List of ASN.1 tools

http://lamspeople.epfl.ch/kirrmann/mms/OSI/osi_ASN1products.htm - ASN.1 products

2005 May, HK
Industrial Automation 42 3.0.3 Presentation Layer
Assessment

which are the “upper layers”?


which is the function of the network level ?
what is the difference between repeater, bridge, router and gateway ?
what is the difference between hierarchical and logical addressing ?
what is the role of the transport layer ?
when is it necessary to have a flow control at both the link and the transport layer ?
what is the role of the session layer in an industrial bus ?
which service of the session layer is often used in industrial networks ?
what is the role of the presentation layer ?
what is ASN.1 ?
what is the difference between an abstract syntax and a transfer syntax ?
why is ASN.1 not often used in industrial networks and what is used instead ?
what is the ROSIN notation for and how is a data structure represented ?
how should physical (analog) variables be represented ?

2005 May, HK
Industrial Automation 43 3.0.3 Presentation Layer
Industrial Automation
Automation Industrielle
Industrielle Automation

3.4 MVB: a fieldbus case study


Prof. Dr. H. Kirrmann
ABB Research Center, Baden, Switzerland
EPFL - Industrial Automation 2003 July, HK 1 3.4 MVB case study
MVB Outline

1. Applications in rail vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 2 3.4 MVB case study


Multifunction Vehicle Bus in Locomotives
standard communication interface for all kind of on-board equipment

radio power line cockpit

diagnosis Train Bus


Vehicle Bus

brakes power electronics motor control track signals

data rate 1'500'000 bits/second


delay 0,001 second
medium twisted wire pair, optical fibres
number of stations up to 255 programmable stations
up to 4095 simple sensors/actuators
status > 600 vehicles in service in 1998

EPFL - Industrial Automation 2003 July, HK 3 3.4 MVB case study


Multifunction Vehicle Bus in Coaches

passenger
doors information light
Train Bus

Vehicle Bus

air conditioning power


seat reservation brakes

covered distance: > 50 m for a 26 m long vehicle


< 200 m for a train set

diagnostics and passenger information require relatively long, but infrequent messages

EPFL - Industrial Automation 2003 July, HK 4 3.4 MVB case study


MVB Physical Media

• OGF optical fibres (2000 m)


• EMD shielded, twisted wires with transformer coupling (200 m)
• ESD wires or backplane with or without galvanic isolation (20 m)

Media are directly connected by repeaters (signal regenerators)


All media operate at the same speed of 1,5 Mbit/s.
devices

star coupler

optical links
optical links
rack
rack

twisted wire segment sensors

EPFL - Industrial Automation 2003 July, HK 5 3.4 MVB case study


MVB Covered Distance

The MVB can span several vehicles in a multiple unit train configuration:
Train Bus
node repeater
MVB

devices with short distance bus


devices

The number of devices under this configuration amounts to 4095.

MVB can serve as a train bus in trains with fixed configuration, up to a distance of:
> 200 m (EMD medium or ESD with galvanic isolation) or
> 2000 m (OGF medium).

EPFL - Industrial Automation 2003 July, HK 6 3.4 MVB case study


MVB Topography
Bus
Administrator
Node Train Bus
EMD Segment

Device Device Device Device

Terminator Repeater
ESD Segment
section

Repeater
Device Device Device
OGL link

Repeater
ESD Segment

Device Device Device Device

all MVB media operate at same speed, segments are connected by repeaters.

EPFL - Industrial Automation 2003 July, HK 7 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. ESD (Electrical, RS 485)
2. EMD (Transformer-coupled)
3. OGF (Optical Glass Fibres)
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 8 3.4 MVB case study


ESD (Electrical Short Distance) RS485

Interconnects devices over short distances (- 20m) without galvanic separation


Based on proven RS-485 technology (Profibus)
Main application: connect devices within the same cabinet.

device 1 device 2.. n-1 device N


TxS RxS TxS RxS TxS RxS terminator/
terminator/ biasing
biasing •••

+5V +5V

Ru Ru
(390W) (390W)
Data_N

Rm Rm
(150 W) (150 W)

Rd Data_P Rd
(390 W) (390 W)
equipotential line Bus_GND
GND
segment length

EPFL - Industrial Automation 2003 July, HK 9 3.4 MVB case study


ESD Device with Galvanic Isolation
shield connected to opto-
connector casing couplers

protection galvanic
circuit barrier

1
RS 485
+5V transceiver

RxS
RxS'
male

TxS
TxS'

protective earth
+5V el
0V el
TxF
female

TxF'
+Vcc
Data
GND
1

power
cable
device casing DC/DC
shield connected to connected to converter
connector casing supply ground

EPFL - Industrial Automation 2003 July, HK 10 3.4 MVB case study


ESD Connector for Double-Line Attachment

A.Bus_GND

B.Bus_GND

A.Bus_5V
B.Bus_5V
A.Data_N

B.Data_N
A.Data_P

B.Data_P
reserved
(optional TxE)

1 2 3 4 5 5 4 3 2 1

male female

6 7 8 9 9 8 7 6

Line_A
Line_A

Line_B
Line_B

Line_A Line_A
cable cable
Line_B Line_B

10

EPFL - Industrial Automation 2003 July, HK 11 3.4 MVB case study


EMD (Electrical Medium Distance) - Single Line Attachment
• Connects up to 32 devices over distances of 200 m.
• Transformer coupling to provide a low cost, high immunity galvanic isolation.
• Standard 120 Ohm cable, IEC 1158-2 line transceivers can be used.
• 2 x 9-pin Sub-D connector
• Main application: street-car and mass transit

device
bus
controller

transceiver

transformer

shield

bus section 1 bus section 2

EPFL - Industrial Automation 2003 July, HK 12 3.4 MVB case study


EMD Device with Double Line Attachment

device
Bus_Controller

transceiver A transceiver B

A.Data_P A.Data_N B.Data_P B.Data_N

1
A1 B1 B2 A2
Connector_1 Connector_2
1 1

A1. Data_P B1. Data_P B2. Data_N A1. Data_N


A1. Data_N B1. Data_N B2. Data_P A1. Data_P

Line_A Line_A
Line_B Line_B
Carrying both redundant lines in the same cable eases installation
it does not cause unconsidered common mode failures in the locomotive environment
(most probable faults are driver damage and bad contact)

EPFL - Industrial Automation 2003 July, HK 13 3.4 MVB case study


EMD Connectors for Double-Line Attachment
Connector_1 (male) cable
Zt.A male

1 A1. Data_P
6 Line_A
Line_A A.Term_P
2 A1. Data_N
7
A.Term_N
8
3 terminator connector
4 B1. Data_P
9 5
Line_B 9
5 B1.Data_N
4
8
shields contacts case
3
5 B1.Data_N 7
9
Line_B B.Term_N Line_B 2
4 B1. Data_P 6
8
B.Term_P 1
3
7
2 A1. Data_N
6
Line_A
1 A1. Data_P

Zt.B
female
Connector_1 (female)

EPFL - Industrial Automation 2003 July, HK 14 3.4 MVB case study


EMD Shield Grounding Concept

device device device


inter-section
connectors
terminator terminator
shield
possible shield
discontinuity

device ground device ground


inter-device inter-device
impedance impedance

Shields are connected directly to the device case


Device cases should be connected to ground whenever feasible

EPFL - Industrial Automation 2003 July, HK 15 3.4 MVB case study


OGF (Optical Glass Fibre)
Covers up to 2000 m
Proven 240µm silica clad fibre
Main application: locomotive and critical EMC environment

opto-electrical
Star Coupler wired-or electrical media transceiver

to other device
or star coupler to other device
or star coupler

fibre pair

Rack ESD segment

device device device


device device device

EPFL - Industrial Automation 2003 July, HK 16 3.4 MVB case study


OGF to ESD adapter

MVBC
TxD TxE
RxDA RxDB

3 5 3
1 1
A.Data_P A.Data_P

A.5V B.5V
A.0V B.0V RS-485 transceiver

fibre-optical transceivers

to star coupler A to star coupler B

from star coupler A from star coupler B

Double-line ESD devices can be connected to fibre-optical links by adapters

EPFL - Industrial Automation 2003 July, HK 17 3.4 MVB case study


MVB Repeater: the Key Element
A repeater is used at a transition from one medium to
another.

bus (redundant)
administrator bus
slave slave slave slave
administrator
repeater

decoder
encoder
ESD segment EMD segment

decoder

encoder
(RS 485) (transformer-coupled)

The repeater:
• decodes and reshapes the signal (knowing its shape)
• recognizes the transmission direction and forward the frame
• detects and propagates collisions

EPFL - Industrial Automation 2003 July, HK 18 3.4 MVB case study


duplicated segment
MVB Repeater
Line_A Line_B
repeater
decoder
encoder
decoder

direction Line_A
recogniser (single-thread
optical link)

decoder
encoder
decoder Line_B
(unused for single-
thread)

recognize the transmission direction and forward the frame


decode and reshape the signal (using a priori knowledge about ist shape)
jabber-halt circuit to isolate faulty segments
detect and propagate collisions
increase the inter-frame spacing to avoid overlap
can be used with all three media
appends the end delimiter in the direction fibre to transformer, remove it the opposite way
handles redundancy (transition between single-thread and double-thread)

EPFL - Industrial Automation 2003 July, HK 19 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 20 3.4 MVB case study


MVB Class 1 Device

A B
board bus
bus
controller analog
or
binary
MVB RS 485 input/
redundant drivers/ device
receivers address output
bus pairs
(ESD) register

device
status
(monomaster)

Class 1 or field devices are simple connections to sensors or actuators.


They do not require a micro-controller.
They do not participate in message data communication.
The Bus Controller manages both the input/output and the bus.

EPFL - Industrial Automation 2003 July, HK 21 3.4 MVB case study


MVB Class 2-3 Device

A B
private
RAM application
processor
traffic store

MVB EPROM
redundant Bus
bus pairs Controller
(ESD)
RS 485 shared
drivers/ local RAM
receivers
local
device input/
status output

• Class 2 and higher devices have a processor and may exchange messages.
• Class 2 devices are configurable I/O devices (but not programmable)
• The Bus Controller communicates with the Application Processor through a
shared memory, the traffic store, which holds typically 256 ports.

EPFL - Industrial Automation 2003 July, HK 22 3.4 MVB case study


MVB Class 4-5 Device

Class 4 devices present the functionality of a Programming and Test station


Class 4 devices are capable of becoming Bus Administrators.
To this effect, they hold additional hardware to read the device status of the
other devices and to supervise the configuration.
They also have a large number of ports, so they can supervise the process
data transmission of any other device.

Class 5 devices are gateways with several link layers (one or more MVB, WTB).

The device classes are distinguished by their hardware structure.

EPFL - Industrial Automation 2003 July, HK 23 3.4 MVB case study


MVBC - bus controller ASIC

duplicated
electrical or optical 12 bit device address
CPU parallel bus
transmitters to traffic store
A
Manchester 16x16 Clock,
Tx buffer Main
and CRC Timers &
Control A19..1 address
encoder Sink Time
Unit
Supervision
B
JTAG
interface D15..0 data
A
DUAL 16x16
Manchester Rx buffer Class 1 Traffic Store
and CRC logic Control
& Arbiter
control
decoders
B
duplicated electrical or
optical receivers

• Automatic frame generation and analysis • Bus administrator functions


• Adjustable reply time-out • Bookkeeping of communication errors
• Up to 4096 ports for process data • Hardware queueing for message data
• 16KByte.. 1MByte traffic store • Supports 8 and 16-bit processors
• Freshness supervision for process data • Supports big and lirttle endians
• In Class 1 mode: up to 16 ports • 24 MHz clock rate
• Bit-wise forcing • HCMOS 0.8 µm technology
• Time and synchronization port • 100 pin QFP

EPFL - Industrial Automation 2003 July, HK 24 3.4 MVB case study


MVB Bus Interface

The interface between the bus and the application is a shared memory, the
Traffic Memory , where Process Data are directly accessible to the application.

Application Traffic Store


processor

0..4095
Logical Ports
(256 typical) process data
for Process base
data

6 bus
management
ports
8 physical
messages packets
ports and
bus supervision

2 message ports
bus
controller

MVB

EPFL - Industrial Automation 2003 July, HK 25 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 26 3.4 MVB case study


MVB Manchester Encoding

data 1 10 10 00 10 11 1 110 1

clock

frame

signal
0 123 45 67 8
9-bit Start Delimiter frame data 8-bit check end
sequence delimiter

The Manchester-coded frame is preceded by a Start Delimiter containing


non-Manchester signals to provide transparent synchronization.

EPFL - Industrial Automation 2003 July, HK 27 3.4 MVB case study


MVB Frame Delimiters

Different delimiters identify master and slave frames:

Master Frame Delimiter


0 1 2 3 4 5 6 7 8
start bit

active state

idle state

Slave Frame Delimiter


0 1 2 3 4 5 6 7 8
start bit

active state
idle state

This prevents mistaking the next master frame when a slave frame is lost.

EPFL - Industrial Automation 2003 July, HK 28 3.4 MVB case study


MVB Frames Formats

The MVB distinguishes two kinds of frames:

master frames issued by the master


9 bits 4 12 8 MSD = Master Start Delimiter (9 bits)
16 CS = Check Sequence (8 bits)
(33) MSD F address CS
F = F_code (4 bits)

slave frames sent in response to master frames


8
16 9 16 bits
(33) SSD data CS SSD = Slave Start Delimiter (9
bits)
9 32 bits 8
32 SSD data CS
(49)
9 64 bits 8
64 SSD data CS
(81)
9 64 bits 8 64 bits 8
128 SSD data CS data CS
(153)
9 64 bits 8 64 bits 8 64 bits 8 64 bits 8
256 SSD data CS data CS data CS data CS
(297)
useful (total) size in bits

EPFL - Industrial Automation 2003 July, HK 29 3.4 MVB case study


MVB Distance Limits

The distance is limited by the maximum allowed reply delay of 42,7 µs


between a master frame and a slave frame.
repeater repeater

master
remotest
data source
master fr repeater
ame
delay
propagation delay
(6 µs/km)

max
repeater t_source
t_ms
t_ms < 42,7µs delay

e
slave fram
The reply delay time-out can be
t_s
repeater raised up to 83,4 µs for longer
delay distances
(with reduced troughput).
t_sm
n e xt m a s
ter fram e
time
distance

EPFL - Industrial Automation 2003 July, HK 30 3.4 MVB case study


MVB Telegrams

Process Data
Master Frame (Request) Slave Frame (Response)
F= port dataset
0..7 address
4 bits 12 bits time
16, 32, 64, 128 or 256 bits of Process Data
Message Data
256 bits of Message Data
Master Frame
F= source destination prot source size FN FF ON OF MTC
12 device device ocol device transport data
4 bits 12 bits time
decoded final node
by final function
hardware origin node message
tranport
origin function
Supervisory Data control

Master Frame Slave Frame


F= port
8-15 address
4 bits 12 bits 16 bits time

Telegrams are distinguished by the F_code in the Master Frame

EPFL - Industrial Automation 2003 July, HK 31 3.4 MVB case study


Source-addressed broadcast

Phase1: The bus master broadcasts the identifier of a variable to be transmitted:


subscribed subscribed
device device subscribed devices
bus
master devices
sink source sink sink
(slaves)

bus
variable identifier

Phase 2: The device which sources that variable responds with a slave frame
containing the value, all devices subscribed as sink receive that frame.
subscribed subscribed
device device subscribed devices
bus
master devices
sink source sink sink
(slaves)

bus

variable value

EPFL - Industrial Automation 2003 July, HK 32 3.4 MVB case study


Traffic Memory

The bus and the application are (de)coupled by a shared memory, the
Traffic Memory, where process variables are directly accessible to the application.

Application
Processor
Associative Traffic Memory
memory

Process Data
Base

two pages ensure that read and


write can occur at the same time
Bus
Controller

bus

EPFL - Industrial Automation 2003 July, HK 33 3.4 MVB case study


Restriction in simultaneous access

starts t1 t2
ends time
writer
reader 1
error !
(slow) reader 2

page0
traffic store
page1

page 1 becomes valid page 0 becomes valid

• there may be no semaphores to guard access to a traffic store (real-time)


• there may be only one writer for a port, but several readers
• a reader must read the whole port before the writer overwrites it again
• therefore, the processor must read ports with interrupt off.

EPFL - Industrial Automation 2003 July, HK 34 3.4 MVB case study


Operation of the traffic memory

In content-addressed ("source-addressed") communication, messages are broadcast,


the receiver select the data based on a look-up table of relevant messages.
For this, an associative memory is required.
Since address size is small (12 bits), the decoder is implemented by a memory block:

port index table


storage
processor 0 0 page 0 page 1
1 0
data(4) data(4)
2 0
4 1 data(5) data(5)
data (4094) data (4094)
5 2
6 0 data(4092) data(4092)
0 0
7 0
12-bit Address voids voids
4091 0
4092 4
4093 0
4094 3
4095 0
bus

EPFL - Industrial Automation 2003 July, HK 35 3.4 MVB case study


MVB F_code Summary

Master Frame Slave Frame


F_code address request source size response destination

0 16
1 single 32 all
2 logical Process_Data device 64 Process_Data devices
3 subscribed 128 (application subscribed
4 as 256 -dependent) as
5 reserved source - sink
6 reserved -
7 reserved -

8 all devices Master_Transfer Master 16 Master_Transfer Master


9 device General_Event >= 1devices 16 Event_Identifier Master
10 device reserved - -
11 device reserved - -
12 device Message_Data single device 256 Message_Data selected device
13 group Group_Event >= 1devices 16 Event_Identifier Master
14 device Single_Event single device 16 Event_Identifier Master
15 device Device_Status single device 16 Device_Status Master or monitor

EPFL - Industrial Automation 2003 July, HK 36 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 37 3.4 MVB case study


Master Operation

The Master performs four tasks:

1) Periodic Polling of the port addresses according to its Poll List


2) Attend Aperiodic Event Requests
3) Scan Devices to supervise configuration
4) Pass Mastership orderly (last period in turn)

basic period basic period


sporadic phase sporadic phase

periodic super- event periodic super- event


visory visory phase
phase phase phase phase
phase

1 2 3 4 5 6 7 SD ? ? ? ? 1 2 8 9 SD ? ? ? ? EV 1 2
time
guard phase guard phase

The Administrator is loaded with a configuration file before becoming Master

EPFL - Industrial Automation 2003 July, HK 38 3.4 MVB case study


Bus Traffic

State Variable Messages


State of the Plant Events of the Plant
Response in 1..200 ms Response at human speed: > 0.5 s
... commands, position, speed • Diagnostics, event recorder
• Initialisation, calibration
Periodic Transmission
On-Demand Transmission
Spurious data losses will be Flow control & error recovery
compensated at the next cycle protocol for catching all events

Basic Period Basic Period


Periodic Data
event

time
Sporadic Data

EPFL - Industrial Automation 2003 July, HK 39 3.4 MVB case study


MVB Medium Access

basic period basic period

periodic sporadic periodic sporadic


phase phase phase phase
1 2 3 4 5 6 ? ? ? ? 1 2 7 8 9 10 ? ! ? ? 1 2 3

events ? events ?
time
guard event guard
time data time

individual period

A basic period is divided into a periodic and a sporadic phase.


During the periodic phase, the master polls the periodic data in sequence.

Periodic data are polled at their individual period (a multiple of the basic period).

Between periodic phases, the Master continuously polls the devices for events.
Since more than one device can respond to an event poll, a resolution procedure
selects exactly one event.

EPFL - Industrial Automation 2003 July, HK 40 3.4 MVB case study


MVB Bus Administrator Configuration

period 0 period 1 period 2 period 3 period 4


1 ms 1 ms 1 ms 1 ms
4 ms
Tspo Tspo Tspo Tspo
1 2.0 4.0 1 2.1 4.1 1 2.0 8.2 1 2.1 1 2.0 4.0
time
2 ms cycle 2
begin of turn 2 ms

The Poll List is built knowing:


• the list of the port addresses, size and individual period
• the reply delay of the bus
• the list of known devices (for the device scan
• the list of the bus administrators (for mastership transfer)

EPFL - Industrial Automation 2003 July, HK 41 3.4 MVB case study


MVB Poll List Configuration

macroperiod (8 T_bp shown, in reality 1024 T_bp)

guard
>350µs

T_spo

basic period
2 BP datasets 4.0 4.2 4.2
4.0 4.0
8.1 8.1

2 BP datasets 2.1 2.0 2.1 2.0 2.1 2.0 2.1 2.0 2.1 2.0 2.1

1 BP datasets 1 1 1 1 1 1 1 1 1 1 1
period 7

period 1

period 2

period 4

period 5

period 7

0
period 0

period 3

period 6

1
The algorithm which builds the poll table spreads the cycles evenly over the macroperiod

EPFL - Industrial Automation 2003 July, HK 42 3.4 MVB case study


MVB Event Resolution (1)

To scan events, the Master issues a General Event Poll (Start Poll) frame.
If no device responds, the Master keeps on sending Event Polls until a device
responds or until the guard time before the next periodic phase begins.

A device with a pending event returns an Event Identifier Response.


If only one device responds, the Master reads the Event Identifier (no collision).
The Master returns that frame as an Event Read frame to read the event data

Start Event Poll Event Identifier Event Identifier Event data


(parameters and Response returned as master
setup) from slave frame

MSD 9 EMET - CS SSD 12 1234 CS MSD 12 1234 CS SSD xxxx xxxx CS

Event Poll telegram Event Read telegram time

EPFL - Industrial Automation 2003 July, HK 43 3.4 MVB case study


MVB Event Resolution (2)

If several devices respond to an event poll, the Master detects the collision and
starts event resolution

start poll and arbitration round


parameter
setup group poll individual event
poll reading

any? C xxx1 C xx11 N x101 C 0101 A A D

telegram time
collision silence collision valid event frame

The devices are divided into groups on the base of their physical addresses.
The Master first asks the devices with an odd address if they request an
event.

• If only one response • If there is no response, • If collision keeps on, the


comes, the master returns the master asks devices master considers the 2nd
that frame to poll the event. with an even address. bit of the device address.

EPFL - Industrial Automation 2003 July, HK 44 3.4 MVB case study


MVB Event Resolution (3)

Example with a 3-bit device address: 001 and 101 compete


width of
start arbitration group
general poll address

silence xxx n=0


collision
no event xx0 xx1 n=1
collision
silence
x00 silence x10 x01 silence x11 n=2
collision collision

000 100 010 110 001 101 011 111 individual poll

EA EA EA EA EA EA EA EA event read

even devices odd devices time

EPFL - Industrial Automation 2003 July, HK 45 3.4 MVB case study


MVB Time Distribution

At fixed intervals, the Master broadcasts the exact time as a periodic variable.
When receiving this variable, the bus controllers generate a pulse which can
resynchronize a slave clock or generate an interrupt request.

Application Application Application


Bus master processor 1 processor 2 processor 3
Int Req Int Req Int Req
Periodic
list
Slave Ports Slave Ports Slave Ports
clock clock
Master clock
clock

Bus controller Bus controller Bus controller Bus controller

MVB
Sync port address Sync port variable

EPFL - Industrial Automation 2003 July, HK 46 3.4 MVB case study


MVB Slave Clock Synchronization

Master
Slave clock clock Slave clocks Slave clocks

MVB 1 MVB 2
Bus Slave devices Bus
administrator 1 administrator 2
Synchronizer

The clock does not need to be generated by the Master.


The clock can synchronize sampling within 100 µs across several bus segments.

EPFL - Industrial Automation 2003 July, HK 47 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 48 3.4 MVB case study


MVB Fault-tolerance Concept

Transmission Integrity
MVB rather stops than provides false data.
The probability for an undetected transmission error (residual error rate)
is low enough to transmit most safety-critical data.
This is achieved through an extensive error detection scheme

Transmission Availability
MVB continues operation is spite of any single device error. In
particular, configurations without single point of failure are possible.
This is achieved through a complete duplication of the physical layer.

Graceful Degradation
The failure of a device affects only that device, but not devices which
do not depend on its data (retro-action free).

Configurability
Complete replication of the physical layer is not mandatory.
When requirements are slackened, single-thread connections may
be used and mixed with dual-thread ones.

EPFL - Industrial Automation 2003 July, HK 49 3.4 MVB case study


MVB Basic Medium Redundancy

The bus is duplicated for availability (not for integrity)


address data control

parallel bus logic

send register receive register bus controller

encoder selector
signal quality report
decoder decoder

A B A B
transmitters receivers
bus line B
bus line A

A frame is transmitted over both channels simultaneously.


The receiver receives from one channel and monitors the other.
Switchover is controlled by signal quality and frame overlap.
One frame may go lost during switchover

EPFL - Industrial Automation 2003 July, HK 50 3.4 MVB case study


MVB Medium Redundancy

The physical medium may be fully duplicated to increase availability.


Principle: send on both, receive on one, supervise the other

BA AB
device device

repeater repeater
optical link A

optical link B
device device
repeater repeater

electrical segment X electrical segment Y

Duplicated and non-duplicated segments may be connected

EPFL - Industrial Automation 2003 July, HK 51 3.4 MVB case study


MVB Double-Line Fibre Layout

star coupler A

opto links A device


rack

A A copper bus A
B B copper bus B
Bus Administrator
redundant
opto links B Bus
Administrator

star coupler B

The failure of one device cannot prevent other devices from communicating.
Optical Fibres do not retro-act.

EPFL - Industrial Automation 2003 July, HK 52 3.4 MVB case study


MVB Master Redundancy
A centralized bus master is a single point of failure.
To increase availability, the task of the bus master may be assumed by one of
several Bus Administrators
The current master is selected by token passing:

token passing
current bus
bus bus bus master
administrator administrator administrator
1 2 3

Bus

slave slave slave slave slave slave slave


device device device device device device device

If a bus administrator detects no activity, it enters an arbitration procedure. If


it wins, it takes over the master's role and creates a token.
To check the good function of all administrators, the current master offers
mastership to the next administrator in the list every 4 seconds.

EPFL - Industrial Automation 2003 July, HK 53 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 54 3.4 MVB case study


MVB Transmission Integrity (1)

1) Manchester II encoding
Double signal inversion necessary to cause an undetected error, memoryless code

Clock

Data 1 1 0 1 0 0 0 1

Frame
violations
Line Signal

Start Delimiter Manchester II symbols

2) Signal quality supervision


Adding to the high signal-to-noise ratio of the transmission, signal quality
supervision rejects suspect frames.
125ns 125ns 125ns

reference BT = bit time = 666


edge ns
BT0.5 time
BT1.0
BT1.5

EPFL - Industrial Automation 2003 July, HK 55 3.4 MVB case study


MVB Transmission Integrity (2)

3) A check octet according to TC57 class FT2 for each group of up to 64 bits,
provides a Hamming Distance of 4 (8 if Manchester coding is considered):
-15
(Residual Error Rate < 10 under standard disturbances)
Master Frame size in bits
9 4 12 8 MD = Master frame Delimiter
16 (33) MSD F address CS CS = Check Sequence 8 bits

useful (total)
size in bits

Slave Frame 9 16 8
16 (33) SSD 2 bytes CS SD = Slave frame Delimiter

9 32 8
32 (49) SSD 4 bytes CS

9 64 8
64 (81)
128 (153) SSD 8 bytes CS DATA
256 (297) 64
repeat 1, 2 or 4 x

EPFL - Industrial Automation 2003 July, HK 56 3.4 MVB case study


MVB Transmission Integrity (3)

4) Different delimiters for address and data against single frame loss:
respond within respond within
1.3 µs < t < 4.0 µs 4 µs < tsm <1.3 ms
ms

MSD ADDRESS a CS SSD DATA (a) CS MSD ADDRESS b CS

time
t mm 1,3 ms

5) Response time supervision against double frame loss:

> 22 µs > 22 µs

MSD ADDRESS a CS SSD DATA (a) CS MSD ADDRESS b CS SSD DATA (b) CS

time

accept if 0.5µs < t_mm < 42.7 µs

6) Configuration check: size at source and sink ports must be same as frame size.

EPFL - Industrial Automation 2003 July, HK 57 3.4 MVB case study


MVB Safety Concept

Data Integrity
Very high data integrity, but nevertheless insufficient for safety applications
(signalling)
Increasing the Hamming Distance further is of no use since data falsification
becomes more likely in a device than on the bus.

Data Transfer
• critical data transmitted periodically to guarantee timely delivery.
• obsolete data are discarded by sink time supervision.
• error in the poll scan list do not affect safety.

Device Redundancy
Redundant plant inputs A and B transmitted by two independent devices.
Diverse A and B data received by two independent devices and compared.
The output is disabled if A and B do not agree within a specified time.

Availability
Availability is increased by letting the receiving devices receive both A and
B. The application is responsible to process the results and switchover to the
healthy device in case of discrepancy.

EPFL - Industrial Automation 2003 July, HK 58 3.4 MVB case study


MVB Integer Set-up

poll

A B A B time

individual period
Bus
Administrator
redundant vehicle bus
(for availability only)

input output
devices devices

A B A B

confinement

application ° fail-safe
responsibility comparator
and enabling
spreader device logic
(application
dependent)
redundant input redundant, integer output

EPFL - Industrial Automation 2003 July, HK 59 3.4 MVB case study


MVB Integer and Available Set-up

poll
time
A B A B
redundant individual period redundant
bus bus
administrator redundant vehicle bus administrator
(for availability)

input output
devices devices

A B A B A B A B
comparator
C C and enabling
logic

confinement
switchover logic or
spreader device A B comparator
(application (application
dependent) dependent)
redundant input available and integer output

EPFL - Industrial Automation 2003 July, HK 60 3.4 MVB case study


MVB Outline

1. Applications in vehicles

2. Physical layer
1. Electrical RS 485
2. Middle-Distance
3. Fibre Optics
3. Device Classes
4. Frames and Telegrams
5. Medium Allocation
6. Clock Synchronization

7. Fault-tolerance concept

8. Integrity Concept

9. Summary

EPFL - Industrial Automation 2003 July, HK 61 3.4 MVB case study


MVB Summary

Topography: bus (copper), active star (optical fibre)


Medium: copper: twisted wire pair
optical: fibres and active star coupler
Covered distance: OGF: 2000 m, total 4096 devices
EMD: 200 m copper with transformer-coupling
ESD: 20 m copper (RS485)
Communication chip dedicated IC available
Processor participation none (class 1), class 2 uses minor processor capacity
Interface area on board 20 cm2 (class 1), 50 cm2 (class 2)
Additional logic RAM, EPROM , drivers.
Medium redundancy: fully duplicated for availability
Signalling: Manchester II + delimiters
Gross data rate 1,5 Mb/s
Response Time typical 10 µs (<43 µs)
Address space 4096 physical devices, 4096 logical ports per bus
Frame size (useful data) 16, 32, 64, 128, 256 bits
Integrity CRC8 per 64 bits, HD = 8, protected against sync slip

EPFL - Industrial Automation 2003 July, HK 62 3.4 MVB case study


MVB Link Layer Interface

Real-Time Protocols
Link Layer Interface
Upper Link Layer LP LM LS

management
station
process message supervisory
data data data

Traffic Store

slave master
Lower Link Process Data polling
Layer Message Data telegram arbitration
Supervisory Data handling mastership transfer

frame coding
Physical Layer

EPFL - Industrial Automation 2003 July, HK 63 3.4 MVB case study


MVB Components

Bus Controllers:
BAP 15 (Texas Instruments, obsolete)
MVBC01 (VLSI, in production, includes master logic
MVBC02 (E2S, in production, includes transformer coupling)
Repeaters:
REGA (in production)
MVBD (in production, includes transformer coupling)
Medium Attachment Unit:
OGF: fully operational and field tested (8 years experience)
ESD: fully operational and field tested (with DC/DC/opto galvanic separation)
EMD: lab tested, first vehicles equipped
Stack:
Link Layer stack for Intel 186, i196, i960, 166, 167, Motorola 68332, under
DOS, Windows, VRTX,...
Tools:
Bus Administrator configurator
Bus Monitor, Download, Upload, remote settings

EPFL - Industrial Automation 2003 July, HK 64 3.4 MVB case study


MVB Throughput (raw data)

transmission delay [ms]


0.9

0.8 IEC Fieldbus @ 1,0 Mbit/s


0.7

0.6
MVB @ 1,5 Mbit/s

0.5

0.4

0.3
IEC Fieldbus @ 2,5 Mbit/s
0.2

0.1

16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256
dataset size in bits

EPFL - Industrial Automation 2003 July, HK 65 3.4 MVB case study


MVB & IEC 61158-2 Frames

IEC 61158-2 frame


Preamble Start Delimiter PhSDU End Delimiter Spacing

1 0 1 0 1 0 1 0 1 N+ N- 1 0 N+ N- 0 Data FCS 1 N+ N- N+ N- 1 0 1 v v v v

16 bits

MVB frame
Start Delimiter 8 bits End Delimiter
0 N- N+ 1 N- N+ 1 1 1 Data FCS v v
Master Frame
v v
0 0 0 0 N+ N- 0 N+ N- Data FCS Slave Frame

IEC65 frames have a lesser efficiency (-48%) then MVB frames


To compensate it, a higher speed (2,5 Mbit/s) would be needed.

EPFL - Industrial Automation 2003 July, HK 66 3.4 MVB case study


EPFL - Industrial Automation 2003 July, HK 67 3.4 MVB case study

You might also like