c a n controller area network
DESCRIPTION
C A N Controller Area Network. Evgen Urlep Fakulteta za elektrotehniko, računalništvo in informatiko Smetanova 17, 2000 Maribor evgen.urlep @uni-mb.si. Kaj je CAN vodilo?. - PowerPoint PPT PresentationTRANSCRIPT
25 in 26 marec 2002, Rudnik Lignita Velenje 1
Evgen UrlepFakulteta za elektrotehniko, računalništvo in informatiko
Smetanova 17, 2000 [email protected]
CC A A N N
Controller Area Network
25 in 26 marec 2002, Rudnik Lignita Velenje 2
Kaj je CAN vodilo?
Controller Area Network ali “krmilniško področno vodilo” je večtočkovno področno serijsko vodilo definirano po ISO standardu:– ISO 11898 (višje hitrosti do 1Mbps)
– ISO 11519-2 (nižje hitrosti). CAN je bil razvit v nemškem avtomobilskem
podjetju Robert Bosch GmbH in Intel sredi 80’h za potrebe v avtomobilski industriji, kasneje pa se je uporaba razširila na industrijske aplikacije.
25 in 26 marec 2002, Rudnik Lignita Velenje 3
Lastnosti CAN vodila
• serijsko vodilo, namenjeno za aplikacije v realnem času, do 1Mbps
• velika imunost na motnje• MM “multimaster”• MC “multicast”• definirane prioritete sporočil• zagotovljeni časi dostopanja na vodilo• konsistentnost širine podatkov na vodilu• detekcija in signalizacija napak (CRC, BSE. FE., FOVL) • razločevanje med trenutnimi in stalnimi napakami na
vozlišču in samostojna izključitev vozlišča v okvari
25 in 26 marec 2002, Rudnik Lignita Velenje 4
Princip delovanja Podatki nimajo naslova enote, ki
pošilja, niti naslova prejemnika, ampak
edinstveno identifikacijsko
številko spremenljivke (vrtljaji, tokovi, temperature,
napetosti…), ki hkrati definira njeno
prioriteto.
Odpri desno Odpri desno okno!!!okno!!!
Vrata so Vrata so zaprta!!zaprta!!
Nastavi Nastavi luči na luči na ustrezeustreze
n n položaj.položaj.
Motor se Motor se vrti z vrti z
1834o/mi1834o/minn
Koliko Koliko je je
goriva?goriva?
25 in 26 marec 2002, Rudnik Lignita Velenje 5
CAN modelAPLIKACIJA
OBJEKTNI NIVOsito sporočilurejanje sporočil
PRENOSNI NIVOzajezitev napakdetekcija napak in signalizacijapreverjanje sporočilpotrjevanje okvirjevarbitraža – nadzor nad vodilomokvirjanje sporočilhitrost prenosa in časovniki
FIZIČNI NIVOnivoji signalov in predstavitev bitovprenosni medij
CAN CAN sspecifikacija pecifikacija
ISO11898ISO11898 definira le definira le fizifizični in čni in
podatkovni podatkovni nivonivo
25 in 26 marec 2002, Rudnik Lignita Velenje 6
Prenosni medij
+12V opto
CANH
CANL
GND
+12V 62mA+12V 62mA
GND
• ploščat kabel, telefonski kabel• zvita parica• oklopljena zvita parica• optična povezava
25 in 26 marec 2002, Rudnik Lignita Velenje 7
Signalni vmesnik
Op
tična
ločite
v
mikrokrmilnik
KEDEXLEDEX
25 in 26 marec 2002, Rudnik Lignita Velenje 8
Nivoji signalov
Recesivno -1..0.5V
dominantno
0.9..5V
tt
UU
CANHCANH
CANLCANL
VVdiffdiff
dominantdominantno stanjeno stanje
RecesivnRecesivno, o,
plavajoče plavajoče stanjestanje
Vdiff
Velja za PCA82C250
25 in 26 marec 2002, Rudnik Lignita Velenje 9
Zaključitev vodila
120E 120E
E1 E2 EN…
nmax=110
25 in 26 marec 2002, Rudnik Lignita Velenje 10
Hitrost prenosa
40
1000
10000100 1000
5
10
100
dolžina vodila [m]
hitrostprenosa [kbps]
Klasične dolžine vodila: 5-10m
-1km
25 in 26 marec 2002, Rudnik Lignita Velenje 11
Nominalni čas enega bita
sinhronizacija enotsinhronizacija enotčas zakasnitev enot čas zakasnitev enot in pozitivne fazne in pozitivne fazne
napakenapake
negativne negativne fazne napake, fazne napake,
driftdrift
ttDelay Delay = 2 = 2 ((ttBusBus + + ttCompComp + t + tDriverDriver ) + t ) + tInOutInOut
ttBLBL = t = tTSeg1TSeg1 + t + tTSeg2TSeg2 + 1 + 1 tSCL tSCL BR = BR = f f crystalcrystal / (2 x (BRP + 1) x (TS1 + TS2 + 3) ) / (2 x (BRP + 1) x (TS1 + TS2 + 3) )
Zakasnitve:vodilo,vh. komparator,izh.krmilnik+I/O Zakasnitve:vodilo,vh. komparator,izh.krmilnik+I/O CANCAN
25 in 26 marec 2002, Rudnik Lignita Velenje 12
Osnovni podatkovni okvir
NRZ + Vrivanje bitovNRZ + Vrivanje bitov
podatkipodatkiedinstvena edinstvena
identifikacija identifikacija spremenljivkspremenljivk
e, 11/29 e, 11/29 bitovbitov
dolžinadolžina
potrditepotrditevv
2.0A format2.0A format
DATA FRAMEREMOTE FRAMEERROR FRAME-6bOVERLOAD FRAME
25 in 26 marec 2002, Rudnik Lignita Velenje 13
Časovni potek signalov na CAN vodilu
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.021
1.25
1.5
1.75
2
2.25
2.5
2.75
3
3.25
3.5
CANHj
CANLj
.j kt
U(V)
t(s)
25 in 26 marec 2002, Rudnik Lignita Velenje 14
Primer: komunikacija med KEDEX in SKIIP
1. KEDEX vsakih 100ms pošlje stanje senzorjev2. CAN na SKIIP-u sprejme stanje in ga preda internemu
algoritmu regulacije. 3. CAN na SKIIP-u vrne stanje obratovanja krmilnika
MASTER-SLAVEMASTER-SLAVE SKIIP
25 in 26 marec 2002, Rudnik Lignita Velenje 15
Parametri nastavitev
• Bitrate: 5kbps• Pogostost pošiljanja podatkov: 100ms
Sporočilo iz KEDEX enote
ID=2 LEN=5 status a1 a2 a3 cmd a1=.=meas_pressa2=.=press_ref
ID=1 LEN=5 status a1 a2 a3 cmd status=0x13a2=obs.omegaa1=meas.press
Sporočilo iz SKIP enote
Primer: regulacija tlaka
25 in 26 marec 2002, Rudnik Lignita Velenje 16
Parametri nastavitev
• Bitrate: 20kbps• Pogostost pošiljanja podatkov:
10ms
Sporočilo iz KEDEX enote
ID=2 LEN=5 Dig.vh a1 a2 - qq= pretoka1=.=meas_press1a2=.= meas_press2
ID=1 LEN=5 status a1 a2 a3 cmd cmd=0x13a2=obs.omegaa1=meas.press
Sporočilo iz SKIP enote
Primer: vodna črpalka
25 in 26 marec 2002, Rudnik Lignita Velenje 17
Diagram poteka programa v krmilniku
InicijalizacijaInicijalizacija
Sporočilo?Sporočilo?
Procesiraj sporočiloProcesiraj sporočilo
DADA
Nova Nova vrednost?vrednost? Pošlji novo vrednostPošlji novo vrednost
NENE
Pošlji novo vrednostPošlji novo vrednostREMOTEREMOTE
NapakaNapakaNENE
25 in 26 marec 2002, Rudnik Lignita Velenje 18
Zaključek
• Kje uporabiti CAN?– uporaba je smiselna, kadar želimo povezati več mikrokrmilnikov
med sabo in z oddaljeno periferijo. To je lahko v hišnih aplikacijah, v avtomobilski industriji, krmilnih sistemih, ki zahtevajo odziv v realnem času, kot so procesni sistemi povezani z aktuatorskimi sistemi in mnogimi senzorji. CAN zagotavlja kratek dostopni čas do vodila, kjer se podatki spreminjajo v rangu nekaj 100s.
– v sistemih, kjer je potrebno čimmanj povezav, ob močnih izvorih motenj.
– kjer je pomembna združljivost z drugimi napravami, uporaba obstoječe infrastrukture.
25 in 26 marec 2002, Rudnik Lignita Velenje 19
HVALA!