CAN ett kommunikationsprotokoll för realtidssystem MOP 12/13 1



Relevanta dokument
Seriekomunikation. CAN ett kommunikationsprotokoll för realtidssystem. Seriekomunikation -forts. Seriekomunikation -forts

Seriekommunikation. Ur innehållet: Nätverkstopologier Nätverksprotokoll Asynkron/synkron seriell överföring Programmering av USART-krets

Instuderingsfrågor ETS052 Datorkommuniktion

Föreläsning 4. Multiplexering (1/2) Multiplexering (2/2) Multiplexering Närnät

MAC-(sub)lagret. Nätlagret. Datalänklagret. Fysiska lagret LLC MAC. LLC = Logical Link Control-sublager MAC = Media Access Control-sublager

DA HT2011: F18. Länklagret och uppkopplingstekniker Ann-Sofi Åhn

Kihl & Andersson: , Stallings: , 12.1, 12.2, 13.1, 13.3

BSR Diagnostic tool Communcation over CAN and K-line bus

Lokala nät Ethernet o 802.x. (Maria Kihl)

Seriekommunikation. Ur innehållet: Nätverkstopologier Nätverksprotokoll LIN, CAN Asynkron/synkron seriell överföring Programmering av USART-krets

Kihl & Andersson: , 3.3 Stallings: , 12.1, 12.2, 13.1, 13.3

Access till nätet. Maria Kihl

Lokala nät (forts ) Ethernet o 802.x Stora nät och behovet av nätprotokoll IP. Felkorrektion. Att bekräfta paket. Jens A Andersson (Maria Kihl)

Datakommunikation i fordon

Laborationer onsdag/fredag. Laborationer onsdag/fredag. Tillförlitlig dataöverföring Multiplexering Lokala nät (inledning) Labbmanual

Synkronisering. Föreläsning 8

Datakommunikation vad är det?

Tillförlitlig dataöverföring Egenskaper hos en länk Accessmetoder. Jens A Andersson

OSI-modellen. Skiktade kommunikationsprotokoll. OSI-Modellen. Vad är en bra skiktindelning? Fysiska skiktet. Länkskiktet

Grundläggande datavetenskap, 4p

Kapitel 5: Lokala nät Ethernet o 802.x. Lokala nät. Bryggan. Jens A Andersson (Maria Kihl)

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det

Kapitel 3 o 4. Tillförlitlig dataöverföring. (Maria Kihl)

Kapitel 5: Lokala nät Ethernet o 802.x. Felkorrektion. Att bekräfta paket. Jens A Andersson (Maria Kihl)

6. Blandade uppgifter

Nät med flera länkar. Vägval. Enklaste formen av kommunikation:

Fortnox. För att aktivera bokföring genom Fortnox för er förening finns dessa krav:

OH Slides E: Local Area Networks. Repeater. Vanliga LANtopologier. Några av IEEE 802 protokollen. Hub. Ring. Stjärnnät. Buss

Fysiska lagret. Kanal. Problem är att kanalen har vissa begränsningar: Kanalen är analog Kanalen är bandbreddsbegränsad och är oftast störd (av brus)

Nya trender inom belysningsstyrning

KomSys Hela kursen på en föreläsning ;-) Jens A Andersson

Tillförlitlig dataöverföring Egenskaper hos en länk Accessmetoder. Jens A Andersson

IT-arbetsplats med distansåtkomst

MONTERINGSANVISNING & BRUKSANVISNING för CARGARD Portstyrning RDC 30 / RDC 120

F7: I/O hantering. Asynkron och synkron busscykel Bussfördelning. Periferikretsar

Föreläsning 5: ARP (hur hitta MAC-adress) Från applikation till applikation

Access till nätet. Maria Kihl

Hjälpprotokoll till IP

Länkhantering (feldetektering, felhantering, flödeskontroll) Maria Kihl

Föreläsning 4: Lokala nät (forts ) Ethernet o 802.x Stora nät och behovet av nätprotokoll Transportprotokoll. Emma Fitzgerald

Implementering av ISOBUS Virtual Terminal på fordonsdatorn CCP XS. Anders Öberg

Manual. Abelko M-Bus Device Creator (MBDC)

Vad är Affärskommunikation

Innehåll. 1 Om detta dokument. 1 Om detta dokument 1. 2 Kundnytta Introduktion till BACnet 2

TDDI02. Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Kihl & Andersson: , 4.5 Stallings: , , (7.3)

Tentamen i Trådlös Internet-access

Larmanordning för motorcykel BRUKSANVISNING

Ethernet-anslutning. För mer information om skrivarens Ethernet-funktion klickar du på avsnittet nedan: Ethernet-lampor. nätverkskonfigurationssida

Scanwill. Parmab Drivelement AB. Produktprogram

Ad-Hoc Nätverk. Christer Corneliusson Ett arbete i kursen Datakommunikation och Distribuerade System VT- 2005

Förslag externt VÄLKOMMEN TILL EN VÄRLD AV MÖJLIGHETER. HEJ! VAD HÄNDER NU?

Seriekommunikation. Ur innehållet: Nätverkstopologier Nätverksprotokoll Asynkron/synkron seriell överföring Programmering av USART-krets

IMSE WebMaster. med inbäddad webbserverteknik

Paketförstörare Implementerad på XESS XSV800 labbkort

Nyhetsdokument Vitec Teknisk Förvaltning App

Föreläsning 5: Stora datanät Från användare till användare ARP

DIG IN TO Administration av nätverk- och serverutrustning

ETSF05 Repetition av KomSys

Din manual NOKIA C111

Tentamen SSY 065, onsdag 17/12, 08:30-12:30, H. Lärare: Petter Falkman, (772) 3723 Tider för lärarens närvaro: 09:30, 11:00

Mail för attest. Skickas ett mail till den som skapade och till den som attesterade rapporten om felet, åtgärda felet för ett nytt inrapportering

Installatörs- och användarhandbok DI L

Från användare till användare ARP. (Maria Kihl)

In- och Utenheter. Fö 3: In/Ut matning och kopplingsstruktur. Några exempel. Egenskaper. In- och Utenheter. Styrning.

Kommunikationsgränssnitt med CANopen

Eltex Tension Monitor

Föreläsning 5: ARP (hur hitta MAC-adress) IPv4, IPv6 Transportprotokoll (TCP) Jens A Andersson

Mätrapport. Malmö Högskola. Index. Mottagare & Beställare: Rutger Blom

Skicka e-post direkt fra n W3D3 Diariet

Föreläsning 3. Datakodning (Data encoding) Mål (fortsättning) Länk Mottagare. Sändare

Lösenordet till dator, mejl och självservice

Svar till SSNf angående projekt SKA 3.1, Säker Kund Anslutning. 12 Mars 2008 Version 3.0

Installatörs- och användarhandbok DI L

DAC500 Door Access Control unit

Omgivnings temperatur. Drift: -5 C till +45 C. Lagring: -25 C till +55 C. Transport: -25 C till +70 C. Luftfuktighet: Max 93 % EU Direktiv: Symbol

Guide till LogMeIn. AnyWare. Så genomför du de praktiska övningarna på din AnyWare -kurs. Du är där med AnyWare! SE1311 LogMeIn Guide ALAG-UK/A.

WAGO IO System Service Seminar. Diagnostik

PNSPO! Exporterar och Importerar texter från CX- Designer. 20 mars 2012 OMRON Corporation

För installationer av SQL Server som inte görs från Hogias installation måste följande inställningar göras:

Installationsguide. För att installera mjukvara och hårdvara, följ nedanstående anvisningar.

EDA480/EDA485 - Maskinorienterad programmering, tentamen 2006-xx-xx 1(7)

Sites/GC/FSMO. EC Utbildning AB

Manual Sportident Onlinekontroll via GPRS

Dockningsstation för två bärbara datorer med fildelning och perifer delning - USB 3.0

Stora datanät Från användare till användare. Jens A Andersson

STÄNG AV FÖNSTER. Regler FLAGGSPECTRUM I FLAGGSPECTRUM II FLAGGSPECTRUM III FLAGGSPECTRUM STJÄRNSPEL

Tillförlitlig dataöverföring. Jens A Andersson

Logger II Plus RADERA NAMN RING UPP

Tips och råd om trådlöst

Portabelt Bluetooth Ljudsystem Med PLL FM Radio TRA-800BT. Svensk Instruktions Manual

A4-ark 1, framsida. A4-ark 1, baksida. A4-ark 2, framsida. A4-ark 2, baksida

Introduktion - LAN Design och switching concepts Basic Switch Concepts and Configuration Frågor? Referenser. Nätverksteknik 2

Användarmanual Pagero Connect 2.0

PNSPO! Tips! Xpectia kommunikation till OMRON PLC via Seriellt. 14 mars 2012 OMRON Corporation

God nätverksdesign och distribuerade brandväggar. Patrik Fältström

Kihl & Andersson: Kapitel 6 (+ introduktioner från kap 7, men följ slides) Stallings: 9.5, 14.1, 14.2, Introduktion i 14.3, 16.1

DATALINK-NÄTVERK. Hårdvarubyggklossar

EDL. Enkel DALI-styrning av LED. Styrenheter. Strömförsörjning DALI-bus. Styrdon. scene DOT. push DOT. motion DOT. Dali BUS

Inköpsorder. Innehåll. 1. Registrera Order Bokföra order... 3

Transkript:

CAN ett kommunikationsprotokoll för realtidssystem 1

Seriekomunikation- Datanät- Topologi Buss Ring Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Nod Stjärna Masknät 2

Seriekomunikation- Datanät- Acessmetoder När ska någon få skicka data ut på nätet? Polling CSMA TDMA Token 3

CAN (Controller Area Network) Meddelanden, allmänt Bussåtkomst Synkronisering Olika ramar Felhantering Identifierare CC PE CC CC PE PE: Processor CC PE CC CC: CAN-Controller 4

CAN (forts) 1984 CAN C-Spec, Bosch och Intel Kommunikationsstandard för bilindustrin Standard CAN, senare Extended CAN I dag, Leverantörer INTEL, FREESCALE, PHILIPS, NCS, SGS, etc,etc Utmärkt protokoll för distribuerad styrning av händelsestyrda system där man önskar att skicka små mängder data (1-8 bytes) i ett datanät med fysisk liten utsträckning. 5

CAN-protokollets egenskaper Flexibelt Multimaster protokoll Multicast protokoll Hög överföringshastighet (1 Mbit/s) Kort svarstid (200 µs) Automatisk omsändning av störda överföringar Atomic Broadcast Stöd för synkroniserad exekvering i olika noder Avlastar processorn/användaren med meddelandeöverföringen 6

Ett typiskt CAN nät Busstopologi Media: twisted pair, koaxial, fiber Utsträckning: 40m vid 1Mbit/s CC PE CC CC PE PE: Processor CC PE CC CC: CAN-Controller Flexibelt att ansluta nya noder 7

Meddelanden i ett CAN-nät Objekt (Meddelanden) Ex: broms, ljus, fönsterhiss Skicka/efterfråga ett objekt Prioriteter knutna till objekten (meddelanden) Specificeras innan run-time Prioriteten kan tolkas som en adress 8

Meddelanden i ett CAN-nät forts SOF ARB CTRL DATA CRC ACK EOF ARB Arbitrering (tävlan om bussen) Identifierare anger objekttyp; även prioritet CTRL Control Antal byte; Standard/Extended CAN Data 0-8 bytes CRC Kontrollsumma Tillsammans med felhantering Samtidig exekvering ACK Kvitto Inbyggd handskakning EOF Slutmarkering 9

Bussåtkomst CSMA/CD (Ethernet) Carrier Sense: Lyssna Först Multiple Access: Vem som helst kan skicka ett meddelande när bussen är ledig. Collision Detect: Buss-krock upptäcks. Algoritm: Börja om vid fel 10

Bussåtkomst forts Algoritm (CSMA/CD ) Lyssna på bussen; Om bussen är ledig starta sändning av ett meddelande Node A Node B Node P Node Q 11

Bussåtkomst forts Algoritm (CSMA/CD) Lyssna på bussen och kontrollera om busskrock uppstår. Node A Node B Node P Node Q 12

Bussåtkomst forts Algoritm (CSMA/CD) Om busskrock uppstått, avsluta då sändningen och försök igen senare. Krock Krock Node A Node B Node P Node Q 13

Bussåtkomst forts CSMA/CR (CAN) Carrier Sense: Lyssna först Multiple Access: Vem som helst kan skicka ett meddelande när bussen är ledig. Collision Resolution: Buss-krocksupplösning. Algoritm: Starkast vinner Multimaster 14

Bussåtkomst forts Algoritm (CAN) Lyssna på bussen. Om bussen är ledig starta sändning av ett meddelande. Fortsätt lyssna på bussen och jämför bit för bit av sänt data och data på bussen. Om läst bit skiljer sig från sänd bit indikerar detta att någon med högre prioritet skickar data samtidigt. Avsluta då sändningen och försök igen när högprioritetsmeddelandet har skickats i sin helhet. Kort svarstid (200 µs vid 1Mbit) 15

Bussåtkomst forts Bussdrivare: Princip Open collector Bussens nivå: Recessiv (bit) Dominant (bit) CAN buss +5V R 1 1 Nod A Nod B 16

Bussåtkomst forts CAN buss +5V I R = 0 1 0 I A = 0 1 0 1 1 I B = 0 Nod A Nod B 17

Bussåtkomst forts Skickat nolla Läser nolla. Ok! Bussens nivå: 0V Nod A +5V R Skickat etta, läser nolla. Fel! Tappat arbitreringen Nod B 0 0 0 1 I A > 0 I B = 0 1 0 1 1 18

Bussåtkomst forts Inskränkningar Bitsynkronisering En enskild bit måste vara giltig i hela nätet Node A Node B Node P Node Q 19

Bussåtkomst forts Inskränkningar Nätets utsträckning/bithastighet R D 0 0.2 0.4 0.6 0.8 1 t τ vänta = 2 l/υ = 2 40 / 2 10 8 s = 0,4 µs Max 40m vid 1 Mbit 20

Bussåtkomst (arbitrering) Tre noder vill sända samtidigt Nod A identifierare: $257 (010 0101 0111) Nod B - : $360 (011 0110 0000) Nod C - : $25F (010 0101 1111) Bit nummer SOF 1 2 3 4 5 6 7 8 9 10 11 12 D D R D D R D R D R R R D Bussens nivå 0 0 1 0 0 1 0 1 0 1 1 1 0 Nod A skickar 0 0 1 0 0 1 0 1 0 1 1 1 0 Nod B skickar 0 0 1 1 Slutar sända Nod C skickar 0 0 1 0 0 1 0 1 1 Slutar sända 21

Bussåtkomst (arbitrering) Varje datameddelande har en unik identifierare som också anger prioriteten OBS!!! Två noder får inte sända datameddelanden med samma identifierare 22

Synkronisering i CAN Asynkront protokoll Okodade bitar SOF ID CTRL DATA CRC ACK EOF 23

Synkronisering i CAN forts Synkroniseringsmekanism Mottagare: Hård synkronisering på SOF Synkronisera på flanker i mottaget data Sändaren: Inför STUFF BITAR vid långa sekvenser av nollor / ettor 24

Synkronisering i CAN forts Stuffbitar Skickar ett meddelande som börjar med $7F03 binärt 111 1111 0000 0011. (Bussen får innehålla högst 5 st lika bitar i rad, inklusive eventuell tidigare stuffbit.) Bit nr SOF 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Data 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 Stuffbit 0 1 Skickad Sekv 0 1 1 1 1 1 0 1 1 0 0 0 0 0 1 0 1 1 1 25

Olika ramar (frames) Data Frame (skickar data) SOF Start Of Frame. 1 bit ARB Arbitration. 12 bitar (Stand CAN) CTRL Control. 6 bitar DATA Användardata. 0-8 byte (max 64 b) CRC Kontrollsumma 16 bitar ACK Kvitto 2 bitar EOF End Of Frame 7 bitar (Totalt 108 b) IFS Inter Frame Space. 3 bitar SOF ID CTRL DATA CRC ACK EOF 26

Olika ramar (forts.) Remote Frame (efterfråga en data frame) En remoteframe saknar datafält (se data frame). Remote- och dataframe har samma identifierare Ex efterfråga hastighet; skicka hastighet ID är 11 bitar, ARB-fältet är 12 bitar RTR-bit (bit 12 i ARB-fältet) Remote frame recessiv RTR-bit Data frame dominant RTR-bit Innebär att vem som helst kan skicka en remoteframe (men endast EN kan skicka en data-frame) 27

Olika ramar (forts.) Error frame (skriv sönder pågående utskick) 6 st dominanta bitar (Error flag) 8 recessiva bitar (Error delimiter) Error Flag Error Delimiter 6 bitar Alla kan skicka en Error frame 8 bitar Automatisk omsändning av störda överföringar Robust 28

Olika ramar (forts.) Error frame (forts.) Vem detekterar en error frame? Sändaren av data/remote-frame Utskickad bit Läst bit Mottagare Felupptäckt Own Error Flag Other Error Flag Error Delimiter 6 bitar 0-6 bitar 8 bitar 29

Feldetektering Skicka Error Frame vid felupptäckt Bit-fel Stuff-fel CRC-fel Fixed Form-fel Möjliggör samtidig exekvering i noder Atomic broadcast 30

Kvitto (ACK) En frame innehåller ett två-bitars ACK-fält för handskakning Sändaren av en frame skickar två recessiva bitar i detta fält En adresserad fungerande mottagare skriver över den första med en dominant bit Sändaren detekterar dominant eller recessiv bit i ACK-fältet ACK (1b) ACK Delimiter (1b) CRC Delimiter 31

Kvitto forts Vad innebär ACK-funktionen? Sändaren ser att hans frame tas emot Sändaren detekterar att den inte är ensam i nätet Observera att sändaren inte kan detektera vem som korrekt tagit emot utskickad meddelande utan endast att någon korrekt tagit emot utskickad meddelande. Underlättar konsistens 32

Identifierare Identifieraren identifierar meddelandet ID x kan endast skickas av en viss nod pga arbitrering Standard CAN 11 bitar- 2048 olika identifierare Enskilda meddelanden $04B Bromskommando $1A2 Ljus meddelande, fram 33

Identifierare forts Extended CAN (29 bitar 0.5 10 9 identifierare) Försök till standardisering (anpassning J1939) Standardiserade identifierare $1A29 92D0 HF parklampa $1A29 22D1 HF halvljuslampa $1A29 32D2 HF helljuslampa 34

Filtrering Identifierare forts En CAN-krets initieras (i mask-registret) med ett antal identifierare som den skall känna igen N1 N2 N3 N i Guard Guard Guard Guard Multicast Belastar ej processorn med oönskad data 35

Sammanfattning CAN Flexibelt Multimaster protokoll Multicast protokoll Hög överföringshastighet (1 Mbit/s) Kort svarstid (200 µs) Automatisk omsändning av störda överföringar Atomic Broadcast Stöd för synkroniserad exekvering i olika noder Avlastar processorn/användaren med meddelandeöverföringen 36