c a n controller area network

Post on 12-Jan-2016

66 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

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 Presentation

TRANSCRIPT

25 in 26 marec 2002, Rudnik Lignita Velenje 1

Evgen UrlepFakulteta za elektrotehniko, računalništvo in informatiko

Smetanova 17, 2000 Mariborevgen.urlep@uni-mb.si

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!

top related