Vous êtes sur la page 1sur 11

Controller Area Network

A Serial Bus System - Not Just For Vehicles

esd gmbh Hannover 1


The need for serial communication in vehicles

Many vehicles already have a large number If we also consider future developments
of electronic control systems. The growth of aimed at overall vehicle optimization, it be-
automotive electronics is the result partly of comes necessary to overcome the limitations
the customer‘s wish for better safety and of conventional control device linkage. This
greater comfort and partly of the govern- can only be done by networking the system
ment‘s requirements for improved emission components using a serial data bus system.
control and reduced fuel consumption. Con- lt was for this reason that Bosch developed
trol devices that meet these requirements the ”Controller Area Network” (CAN), which
have been in use for some time in the area has since been standardized internationally
of engine timing, gearbox and carburettor (ISO 11898) and has been ”cast in silicon”by
throttle control and in anti-block systems several semiconductor manufacturers.
(ABS) and acceleration skid control (ASC).
Using CAN, peer stations (controllers, sen-
The complexity of the functions implemented sors and actuators) are connected via a se-
in these systems necessitates an exchange rial bus. The bus itself is a symmetric or
of data between them. With conventional asymmetric two wire circuit, which can be
systems, data is exchanged by means of either screened or unscreened. The electri-
dedicated signal lines, but this is becoming cal parameters of the physical transmission
increasingly difficult and expensive as con- are also specified in ISO 11898. Suitable bus
trol functions become ever more complex. In driver chips are available from a number of
the case of complex control systems (such manufacturers.
as Motronic) in particular, the number of con-
nections cannot be increased much further. The CAN protocol, which corresponds to the
data link layer in the ISO/OSI reference mo-
Moreover, a number of systems are being del, meets the real-time requirements of
developed which implement functions co- automotive applications. Unlike cable trees,
vering more than one control device. For in- the network protocol detects and corrects
stance, ASC requires the interplay of engine transmission errors caused by electromag-
timing and carburettor control in order to netic interference. Additional advantages of
reduce torque when drive wheel slippage such a network are the easy configurability of
occurs. Another example of functions span- the overall system and the possibility of cen-
ning more than one control unit is electronic tral diagnosis.
gearbox control, where ease of gearchan-
ging can be improved by a brief adjustment The purpose of using CAN in vehicles is to
to ignition timing. enable any station to communicate with any
other without putting too great a load on the
controller computer.

Use of the CAN network in vehicles

There are four main applications for serial and seat and mirror adjustment. Parti-
communication in vehicles, each having dif- cular importance has to be attached here
ferent requirements and objectives. to the cost of the components and wiring
requirements. Typical data rates are
! Networking controllers for engine timing, around 50 kbit/s.
transmission, chassis and brakes. The
data rates are in the range - typical of ! In the near future, serial communication
real-time systems of 200 kbit/s to will also be used in the held of mobile
1 Mbit/s. communication in order to link compo-
nents such as car radios, car telephones,
! Networking components of chassis elec- navigation aids etc. to a central, ergo-
tronics and electronics which make the nomically designed control panel. The
vehicle more comfortable. Examples of functions defined in the Prometheus pro-
such multiplex applications are lighting ject, such as vehicle-to-vehicle and vehi-
control, air-conditioning, central locking cle-to-infrastructure communication will

2 esd gmbh Hannover


depend to a large extent on serial com- ! At present, CAN can be used for the first
munication. three applications, but for diagnosis the
preferred solution is an interface accor-
ding to ISO 9141.

Industrial applications of the CAN network

A comparison of the requirements for vehicle Users Group”, which in turn is a member of
bus systems and industrial field bus systems the international users and manufacturers
shows amazing similarities: low cost, oper- group ”CAN in Automation”. Similar require-
ability in a harsh electrical environment, high ments to those of the textile machinery are to
real-time capabilities and ease of use are be found in packaging machinery and machi-
equally desirable in both sectors. nery for paper manfacture and processing.

The standard use of CAN in Mercedes- In the USA a number of enterprises are
Benz‘s ”S”Class and the adoption of CAN by using CAN in production lines and machine
US commercial vehicle manufacturers for tools as an internal bus system for networ-
fast transmissions (up to 1 Mbit/s) has made king sensors and actuators within the line or
industrial users prick up their ears. Not only machine. Some users, for instance in the
manufacturers of mobile and stationary agri- medical engineering sector, decided in fa-
cultural and nautical machinery and equip- vour of CAN because they had particularly
ment have chosen to use CAN, it has also stringent safety requirements. Similar pro-
been the choice of manufacturers of medical blems are faced by other manufacturers of
apparatus, textile machines, special-purpose machinery and equipment with particular re-
machinery and elevator controls. The serial quirements with respect to safety (e.g. robots
bus system is particularly well suited to net- and transport systems).
working ”intelligend” I/O devices as well as
sensors and actuators within a machine or Apart from the high transmission reliability,
plant. the low connection costs per station are a
further decisive argument for CAN. In appli-
The textile machinery industry is one of the cations where price is critical it is of essen-
pioneers of CAN. One manufacturer equip- tial importance that CAN chips be available
ped his looms with modular control systems from a variety of manufacturers. The com-
communicating in real time via CAN net- pactness of other controller chips is also an
works as early as 1990. In the meantime se- important argument, for instance in the held
veral textile machinery manufacturers have of low-voltage switchgear.
joined together to form the ”CAN Textile

How the CAN network functions

Principles of data exchange. ready”). This is all the CPU has to do to initi-
ate data exchange. The message is con-
When data are transmitted by CAN, no sta- structed and transmitted by the CAN chip. As
tions are addressed, but instead, the content soon as the CAN chip receives the bus allo-
of the message (e.g. rpm or engine tempe- cation (”Send Message”) all other stations on
rature) is designated by an identifier that is the CAN network become receivers of this
unique throughout the network. The identifier message (”Receive Message”). Each station
defines not only the content but also the pri- in the CAN network, having received the
ority of the message. This is important for message correctly, performs an acceptance
bus allocation when several stations are test to determine whether the data received
competing for bus access. are relevant for that station (”Select”). If the
data are of significance for the station con-
If the CPU of a given station wishes to send cerned they are processed (”Accept”), other-
a message to one or more stations, it passes wise they are ignored.
the data to be transmitted and their identi- A high degree of system and configuration
fiers to the assigned CAN chip (”Make flexibility is achieved as a result of the con-

esd gmbh Hannover 3


tent-oriented addressing scheme. It is very supports the concept of modular electronics
easy to add stations to the existing CAN net- and also permits multiple reception (broad-
work without making any hardware or soft- cast, multicast) and the synchronization of
ware modifications to the existing stations, distributed processes: measurements
provided that the new stations are purely re- needed as information by several controllers
ceivers. Because the data transmission pro- can be transmitted via the network, in such a
tocol does not require physical destination way that it is unnecessary for each controller
addresses for the individual components, it to have its own sensor.

Broadcast transmission and acceptance filtering by CAN nodes

Principle of non-destructive bitwise arbitration

Non-destructive bitwise arbitration. In real-time processing the urgency of mes-


sages to be exchanged over the network can
For the data to be processed in real time differ greatly: a rapidly changing dimension
they must be transmitted rapidly. This not (e.g. engine load) has to be transmitted more
only requires a physical data transfer path frequently and therefore with less delays
with up to 1 Mbit/s but also calls for rapid bus than other dimensions (e.g. engine tempera-
allocation when several stations wish to send ture) which change relatively slowly. The
messages simultaneously. priority at which a message is transmitted

4 esd gmbh Hannover


compared with another less urgent message lowing a single bus access (by one or
is specified by the identifier of the message more stations). This ensures that each
concerned. The priorities are laid down du- bus access by one or more stations leads
ring system design in the form of correspon- to an unambiguous bus allocation (exam-
ding binary values and cannot be changed ples: token slot, token passing, round
dynamically. The identifier with the lowest bi- robin, bitwise arbitration)
nary number has the highest priority.
! Destructive bus allocation.
Bus access conflicts are resolved by bitwise Simultaneous bus access by more than
arbitration on the identifiers involved by each one station causes all transmission at-
station observing the bus level bit for bit. In tempts to be aborted and therefore there
accordance with the ”wired and”mechanism, is no successful bus allocation. More than
by which the dominant state (logical 0) over- one bus access may be necessary in
writes the recessive state (logical 1), the order to allocate the bus at all, the num-
competition for bus allocation is lost by all ber of attempts before bus allocation is
those stations with recessive transmission successful being a purely statistical quan-
and dominant observation. All ”losers”auto- tity (examples: CSMA/CD, Ethernet).
matically become receivers of the message
with the highest priority and do not reattempt In order to process all transmission requests
transmission until the bus is available again. of a CAN network while complying with la-
tency constraints at as low a data transfer
rate as possible, the CAN protocol must im-
Efficiency of bus allocation. plement a bus allocation method that gua-
rantees that there is always unambiguous
The efficiency of the bus allocation system is bus allocation even when there are simul-
determined mainly by the possible applica- taneous bus accesses from different sta-
tion for a serial bus system. In order to judge tions.
as simply as possibly which bus systems are
suitable for which applications the literature The method of bitwise arbitration using the
includes a method of classifying bus alloca- identifier of the messages to be transmitted
tion procedures. Generally we distinguish uniquely resolves any collision between a
between the following classes: number of stations wanting to transmit, and
it does this at the latest within 13 (standard
! Allocation on a fixed time schedule. format) or 33 (extended format) bit periods
Allocation is made sequentially to each for any bus access period. Unlike the mes-
participant for a maximum duration re- sage-wise arbitration employed by the
gardless of whether this participant needs CSMA/CD method this nondestructive me-
the bus at this moment or not (examples: thod of conflict resolution ensures that no
token slot or token passing). bus capacity is used without transmitting
useful information.
! Bus allocation on the basis of need.
The bus is allocated to one participant on Even in situations where the bus is over-
the basis of transmission requests out- loaded the linkage of the bus access priority
standing, i.e. the allocation system only to the content of the message proves to be a
considers participants wishing to transmit beneficial system attribute compared with
(examples: CSMA, CSMA/CD, flying existing CSMA/CD or token protocols: in
master, round robin or bitwise arbitration). spite of the insufficient bus transport capa-
For CAN, bus allocation is negotiated city, all outstanding transmission requests
purely among the messages waiting to be are processed in order of their importance to
transmitted. This means that the proce- the overall system (as determined by the
dure specified by CAN is classified as al- message priority).
location on the basis of need.
The available transmission capacity is uti-
Another means of assessing the efficiency of lized efficiently for the transmission of useful
bus arbitration systems is the bus access data since ”gaps” in bus allocation are kept
method: very small. The collapse of the whole trans-
mission system due to overload, as can
! Non-destructive bus access. occur with the CSMA/CD protocol, is not
With methods of this type the bus is allo- possible with CAN. Thus, CAN permits im-
cated to one and only one station either plementation of fast, traffic-dependent bus
immediately or within a specified time fol- access which is non-destructive because of

esd gmbh Hannover 5


bitwise arbitration based on the message tem), the CAN protocol implements decen-
priority employed. tralized bus control. All major communication
mechanisms, including bus access control,
Non-destructive bus access can be further are implemented several times in the sys-
classified into tem, because this is the only way to fulfil the
high requirements for the availability of the
! centralized bus access control and communication system.
! decentralized bus access control
In summary it can be said that CAN imple-
depending on whether the control mecha- ments a traffic-dependent bus allocation sys-
nisms are present in the system only once tem that permits, by means of a non-de-
(centralized) or more than once (decentral- structive bus access with decentralized bus
ized). access control, a high useful data rate at the
lowest possible bus data rate in terms of the
A communication system with a designated bus busy rate for all stations. The efficiency
station (inter alia for centralized bus access of the bus arbitration procedure is increased
control) must provide a strategy to take by the fact that the bus is utilized only by
effect in the event of a failure of the master those stations with pending transmission
station. This concept has the disadvantage requests.
that the strategy for failure management is
difficult and costly to implement and also that These requests are handled in the order of
the takeover of the central station by a the importance of the messages for the sys-
redundant station can be very time-con- tem as a whole. This proves especially ad-
suming. vantageous in overload situations.
Since bus access is prioritized on the basis
For these reasons and to circumvent the pro- of the messages, it is possible to guarantee
blem of the reliability of the master station low individual latency times in real-time sys-
(and thus of the whole communication sys tems.

Message frame for standard format (CAN Specification 2.0A)

Message frame formats. extension) bit, which indicates either stan-


dard format or extended format, a bit re-
The CAN protocol supports two message served for future extensions and - in the last
frame formats, the only essential difference 4 bits - a count of the data bytes in the data
being in the length of the identifier (ID). In field.
the standard format the length of the ID is
11 bits and in the extended format the length The ”data field” ranges from 0 to 8 bytes in
is 29 bits. The message frame for transmit- length and is followed by the ”CRC field”,
ting messages on the bus comprises seven which is used as a frame security check for
main fields. detecting bit errors.

A message in the standard format begins The ”ACK field”, comprises the ACK slot
with the start bit ”start of frame”, this is (1 bit) and the ACK delimiter (1 recessive
followed by the ”arbitration field”, which con- bit). The bit in the ACK slot is sent as a re-
tains the identifier and the ”RTR” (remote cessive bit and is overwritten as a dominant
transmission request) bit, which indicates bit by those receivers which have at this time
whether it is a data frame or a request frame received the data correctly (positive acknow-
without any data bytes (remote frame). ledgement). Correct messages are acknow-
ledged by the receivers regardless of the
The ”control field”contains the IDE (identifier result of the acceptance test. The end of the

6 esd gmbh Hannover


message is indicated by ”end of frame”. ciency in bit coding. The synchronisation
”Intermission”is the minimum number of bit edges are generated by means of bit stuf-
periods separating consecutive messages. If fing, i.e. after five consecutive equal bits
there is no following bus access by any sta- the sender inserts into the bit stream a
tion, the bus remains idle (”bus idle”). stuff bit with the complementary value,
which is removed by the receivers. The
code check is limited to checking adher-
Detecting and signalling errors. ence to the stuffing rule.

Unlike other bus systems, the CAN protocol If one or more errors are discovered by at
does not use acknowledgement messages least one station (any station) using the
but instead signals any errors that occur. For above mechanisms, the current transmission
error detection the CAN protocol implements is aborted by sending an ”error flag”. This
three mechanisms at the message level: prevents other stations accepting the mes-
sage and thus ensures the consistency of
! Cyclic Redundancy Check (CRC) data throughout the network.
The CRC safeguards the information in
the frame by adding redundant check bits After transmission of an erroneous message
at the transmission end. At the receiver has been aborted, the sender automatically
end these bits are re-computed and re-attempts transmission (automatic repeat
tested against the received bits. If they do request). There may again be competition for
not agree there has been a CRC error. bus allocation. As a rule, retransmission will
be begun within 23 bit periods after error de-
! Frame check tection; in special cases the system recovery
This mechanism verifies the structure of time is 31 bit periods.
the transmitted frame by checking the bit
fields against the fixed format and the However effective and efficient the method
frame size. Errors detected by frame described may be, in the event of a defective
checks are designated ”format errors”. station it might lead to all messages (inclu-
ding correct ones) being aborted, thus
! ACK errors blocking the bus system if no measures for
As mentioned above, frames received self-monitoring were taken. The CAN proto-
are acknowledged by all recipients col therefore provides a mechanism for dis-
through positive acknowledgement. If no tinguishing sporadic errors from permanent
acknowledgement is received by the errors and localizing station failures (fault
transmitter of the message (ACK error) confinement). This is done by statistical as-
this may mean that there is a trans- sessment of station error situations with the
mission error which has been detected aim of recognizing a station‘s own defects
only by the recipients, that the ACK field and possibly entering an operating mode
has been corrupted or that there are no where the rest of the CAN network is not
receivers. negatively affected. This may go as far as
the station switching itself off to prevent
The CAN protocol also implements two messages erroneously recognized as
mechanisms for error detection at the bit incorrect from being aborted.
level.

! Monitoring Data reliability of the CAN protocol.


The ability of the transmitter to detect
errors is based on the monitoring of bus The introduction of safety-related systems in
signals: each node which transmits also automobiles brought with it high require-
observes the bus level and thus detects ments for the reliability of data transmission.
differences between the bit sent and the The objective is frequently formulated as not
bit received. This permits reliable detec- permitting any dangerous situations for the
tion of all global errors and errors local to driver to occur as a result of data exchange
the transmitter. throughout the whole life of a vehicle.

! Bit stuffing This goal is achieved if the reliability of the


The coding of the individual bits is tested data is sufficiently high or the residual error
at bit level. The bit representation used probability is sufficiently low. In the context of
by CAN is NRZ (non-return-to-zero) co- bus systems data, reliability is understood as
ding, which guarantees maximum effi- the capability to identify data corrupted by

esd gmbh Hannover 7


transmission faults. The residual error pro- corruption will remain undetected. The resi-
bability is a statistical measure of the impair- dual error probability should be so small that
ment of data reliability: it specifies the proba- on average no corrupted data will go unde-
bility that data will be corrupted and that this tected throughout the whole life of a system.

Residual error probability as a function of bit error probability

Calculation of the residual error probability For example, if a CAN network operates at a
requires that the errors which occur be clas- data rate of 1 Mbit/s, at an average bus ca-
sified and that the whole transmission path pacity utilization of 50 percent, for a total
be described by a model. If we determine the operating life of 4000 hours and with an
residual error probability of CAN as a func- average message length of 80 bits, then the
tion of the bit error probability for message total number of messages transmitted is
lengths of 80 to 90 bits, for system configura- 9 x 1010. The statistical number of unde-
tions of, for instance, five or ten nodes and tected transmission errors during the opera-
with an error rate of 1/1000 (an error in one ting life is thus in the order of less than 10-2.
message in every thousand), then maximum Or to put it another way, with an operating
bit error probability is approximately 0.02 - in time of eight hours per day on 365 days per
the order of 10-13. Based on this it is possible year and an error rate of 0.7 s, one unde-
to calculate the maximum number of unde- tected error occurs every thousand years
tectable errors for a diven CAN network. (statistical average).

Extended format CAN messages

The SAE ”Truck and Bus” subcommittee extension (ID extension). Thus the CAN pro-
standardized signals and messages as well tocol allows the use of two message formats:
as data transmission protocols for various StandardCAN (Version 2.0A) and Extended-
data rates. lt became apparent that stanard- CAN (Version 2.0B). As the two formats
ization of this kind is easier to implement have to coexist on one bus it is laid down
when a longer identification field is available. which message has higher priority on the
bus in the case of bus access collisions with
To support these efforts, the CAN protocol dithering formats and the same base identi-
was extended by the introduction of a 29-bit fier: the message in standard always has
identifier. This identifier is made up of the ex- priority over the message in extended for-
isting 11-bit identifier (base ID) and an 18-bit mat.

8 esd gmbh Hannover


CAN controllers which support the messages ing transmitted or whether a specific mes-
in extended format can also send and re- sage is being requested from a station.
ceive messages in standard format. When In place of the RTR bit in standard format the
CAN controllers which only cover the stan- SRR (substitute remote request) bit is trans-
dard format (Version 2.0A) are used on one mitted for frames with extended ID. The SRR
network, then only messages in standard for- bit is always transmitted as recessive, to en-
mat can be transmitted on the entire net- sure that in the case of arbitration the stan-
work. Messages in extended format would dard frame always has priority bus allocation
be misunderstood. However there are CAN over an extended frame when both mes-
controllers which only support standard for- sages have the same base identifier.
mat but recognize mes-sages in extended Unlike the standard format, in the extended
format and ignore them (Version 2.0B pas- format the IDE bit is followed by the 18-bit ID
sive). extension, the RTR bit and a reserved
bit (r1).
The distinction between standard format and
extended format is made using the IDE bit All the following fields are identical with stan-
(Identifier Extension Bit) which is transmitted dard format. Conformity between the two for-
as dominant in the case of a frame in stan- mats is ensured by the fact that the CAN
dard format. For frames in extended format controllers which support the extended for-
it is recessive. mat can also communicate in standard for-
The RTR bit is transmitted dominant or re- mat.
cessive depending on whether data are be

Message frame for standard format (CAN Specification 2.0A)

Implementations of the CAN protocol

Communication is identical for all implemen- ters allow a limited acceptance filtering
tations of the CAN protocol. There are differ- (8 MSB of the identifier). Suitable choice of
ences, however, with regard to the extent to these register values allows groups of identi-
which the implementation takes over mes- fiers or in borderline cases all ID‘s to be
sage transmission from the microcontrollers selected. If more than the 8 ID-MSB‘s are
which follow it in the circuit. necessary to differentiate between mes-
sages then the microcontroller following the
CAN controller in the circuit must comple-
CAN controller with intermediate buffer. ment acceptance filtering by software.
CAN controllers with intermediate buffer may
CAN controllers with intermediate buffer (for- place a strain on the microcontroller with the
merly called basicCAN chips) have imple- acceptance filtering, but they require only a
mented as hardware the logic necessary to small chip area and can therefore be pro-
create and verify the bitstream according to duced at lower cost. In principle they can
protocol. However, the administration of data accept all objects in a CAN network.
sets to be sent and received, acceptance fil-
tering in particular is carried out to only a
limited extent by the CAN controller. CAN controller with object storage.

Typically, CAN controllers with intermediate CAN objects consist mainly of three compo-
buffer have two reception and one transmis- nents: identifier, data length code and the
sion buffer. The 8-bit code and mask regis- actual useful data.

esd gmbh Hannover 9


CAN controllers with object storage (formerly tion to this, they can only administer a limited
called fullCAN) function like CAN controllers number of chips.
with intermediate buffers, but also administer
certain objects. Where there are several si- CAN controllers are now available which
multaneous requests they determine, for ex- combine both principles of implementation.
ample, which object is to be transmitted first. They have object storage, at least one of
They also carry out acceptance filtering for which is designed as an intermediate buffer.
incoming objects. The interface to the fol- For this reason there is no longer any point
lowing microcontroller corresponds to a in differentiating between basicCAN and
RAM. Data to be transmitted are written into fullCAN.
the appropriate RAM area, data received are
read out correspondingly. The microcontrol-
ler has to administer only a few bits (e.g. CAN slave controllers for I/O functions.
transmission request).
As well as CAN controllers which support all
CAN controllers with object storage are de- functions of the CAN protocol there are also
signed to take as much strain as possible off CAN chips which do not require a following
the local microcontroller. These CAN control- microcontroller. These CAN chips are called
lers require a greater chip area, however, SLIO (serial link I/O). CAN chips are CAN
and are therefore more expensive. In addi- slaves and have to be administered by a
CAN master.

Physical CAN connection

The data rates (up to 1 Mbit/s) necessitate a Integrated driver chips in accordance with
sufficiently steep pulse slope, which can be ISO 11898 are available from several com-
implemented only by using power elements. panies (Bosch, Philips, Siliconix and Texas
A number of physical connections are ba- Instruments). The international users and
sically possible. However, the users and manufacturers group (CiA) also specifies se-
manufacturers group CAN in Automation re- veral mechanical connections (cable and
commends the use of driver circuits in ac- connectors).
cordance with ISO 11898.

Physical CAN Connection according to ISO 11898

10 esd gmbh Hannover


Source Proof

This text was kindly provided for us by the


users and manufacturers organisation CiA
(CAN in Automation e.V.).

esd gmbh
Vahrenwalder Str. 205
D-30165 Hannover
Tel.: +49-511-37298-0
Fax: +49-511-37298-198
E-Mail: info@esd-electronics.com
Internet: http://www.esd-electronics.com

esd gmbh Hannover 11

Vous aimerez peut-être aussi