Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
Realizacja prostej sieci miejscowej CAN
Zygmunt KUBIAK Instytut Informatyki Politechnika Poznańska
2
Realizacja prostej sieci miejscowej CAN
Wprowadzenie do sieci CAN Realizacja modelu sprzętowego sieci CAN Podsumowanie Realizacja prostej sieci miejscowej CAN
3
Wprowadzenie do sieci CAN Model sieci miejscowej
AL Warstwa aplikacji Wspiera: zadania użytkownika, komunikaty, bloki funkcji DL Warstwa łącza danych Wspiera warstwę aplikacji, sterowanie dostępem do medium PL Warstwa fizyczna Obsługuje medium transmisyjne UL Warstwa użytkownika Zadania użytkownika Z a r z ą d n i e Medium transmisyjne Użytkownicy sieci Standard miejscowej Realizacja prostej sieci miejscowej CAN
4
Wprowadzenie do sieci CAN Informacje ogólne
CAN (ang. Controller Area Network) – sieć miejscowa opracowana dla potrzeb pojazdów, w firmie Robert Bosch GmbH. Sieć o konfiguracji magistralowej typu M-M (ang. multi-master). to znaczy, że poszczególne węzły sieci mogą jednocześnie żądać dostępu do magistrali. Sieć CAN została zatwierdzona przez ISO (1992 r.) jako standard międzynarodowy w normach ISO oraz ISO Standard CAN dotyczy głównie warstwy drugiej (DL) oraz częściowo warstwy pierwszej (PL), przy czym pierwszy z dokumentów odnosi się do rozwiązań o dużych prędkościach transmisji a drugi - małych. Po raz pierwszy na dużą skalę zastosowana w roku 1990 w samochodach Mercedes „S”. Realizacja prostej sieci miejscowej CAN
5
Wprowadzenie do sieci CAN Warstwa fizyczna
Warstwa fizyczna dotyczy technicznych aspektów przesyłania danych w postaci strumienia bitów. Dla sieci CAN najczęściej stosowanym medium transmisyjnym jest para skręconych przewodów, tworząca magistralę dla dołączanych węzłów. CAN_H CAN_L Stan recesywny Ur<0,5V ok. 1,5V ok. 3,5V ok. 2,5V Ur [V] Stan dominujący 0,9V< Ur<2V Magistrala (dwie linie: CAN-H i CAN-L) z obu stron powinna być zakończona dopasowującymi imp. (terminatory ). Realizacja prostej sieci miejscowej CAN
6
Wprowadzenie do sieci CAN Warstwa fizyczna
Synchronizacja bitowa Strumień bitów w sieci CAN kodowany jest zgodnie z metodą NRZ. Oznacza to, że może wystąpić wielobitowy stan dominujący lub recesywny. Przyjęto tzw. szpikowania bitami - po każdych pięciu jednakowych bitach następuje wstawienie bitu o przeciwnej polaryzacji. Czas trwania pojedynczego bitu podzielony został na cztery segmenty, których długość jest całkowitą wielokrotnością kwantu czasu tq. Celem tego podziału jest ustalenie właściwego momentu próbkowania bitu. W każdym węźle musi istnieć możliwość ustawiania czasu trwania bitu od 8 do 25 kwantów czasu. W CiA (CAN in Automation) przygotowano specyfikację wiążącą prędkość transmisji, długość magistrali z liczbą kwantów czasu na bit i położeniem momentu odczytu. Realizacja prostej sieci miejscowej CAN
7
Wprowadzenie do sieci CAN Warstwa łącza danych
Warstwa łącza danych (wg specyfikacji Bosch’a) dzieli się na dwie podwarstwy: obiektowa: filtracja wiadomości oraz obsługa wiadomości i statusu, transferowa: przygotowaniem ramki wiadomości, zatwierdzaniem i rozpakowaniem wiadomości, detekcją i sygnalizacją błędów, arbitrażem oraz prędkością transmisji i zależnościami czasowymi. CAN jest protokołem typu M-M (ang. multi-master) - poszczególne węzły sieci mogą jednocześnie żądać dostępu do magistrali. Taka sytuacja wymaga arbitrażu. Nieniszczący arbitraż (modyfikacja metody CSMA/CD - ang. Carrier Sense Multiple Access with Collision Detect), oznacza, że w przypadku wystąpienia kolizji dostęp do magistrali uzyskuje wiadomość o najwyższym priorytecie. Realizacja prostej sieci miejscowej CAN
8
Wprowadzenie do sieci CAN Warstwa łącza danych
Składanie ramki Nadanie wiadomości Odbiór Wybór Akceptacja N1 N2 N3 N4 Adresy: N1 (nad.+ odb.) - ident.wiad.nadawanych B=716D=2CCH, - ident.wiad.odbieranych B=714D=2CAH, N2 (tylko nad.) - ident.wiad.nadawanych B=714D=2CAH, N3 (tylko odb.) - ident.wiad.odbieranych xxxB=712D..719D=2C8H..2CFH, N4 (nad.+ odb.) - ident.wiad.nadawanych B=722D=2D2H, - ident.wiad.odbieranych xx1B=729D..735D=2D9H..2DFH. Realizacja prostej sieci miejscowej CAN
9
Wprowadzenie do sieci CAN Warstwa łącza danych
Jednoczeny start węzłów N1, N2 i N4. Identyfikator wiadomości (w wersji CAN 2.0A) zawiera 11 bitów (pole arbitrażu). N4 - najniższy priorytet, N2 - najwyższy priorytet. Obowiązuje zależność: im niższy numer identyfikatora tym wyższy priorytet wiadomości. Realizacja prostej sieci miejscowej CAN
10
Wprowadzenie do sieci CAN Warstwa łącza danych
Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) Dwa formaty ramek: rozszerzony (CAN 2.0B) identyfikator 29 bitów (znaczna długość identyfikatorów pozwala na kodowanie dodatkowych informacji dotyczących wiadomości lub węzłów, np. typ wiadomości, rodzaj sensora czy np. kod producenta). standardowy (CAN 2.0A) identyfikator 11 bitów, Realizacja prostej sieci miejscowej CAN
11
Wprowadzenie do sieci CAN Warstwa łącza danych
Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) · SOF (ang. start of frame), · pole arbitrażu - ident. wiadomości i rozstrzyganie ew. konfliktów z dostępem do sieci, · bit RTR - rozróżnienie ramki z danymi (bit dominujący) od ramki zdalnej (bit recesywny), · bit IDE (bit dominujący - ramka standardowa, bit recesywny - ramka rozszerzona), · bit SRR wysyłany jest jako recesywny, Realizacja prostej sieci miejscowej CAN
12
Wprowadzenie do sieci CAN Warstwa łącza danych
Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) · bity rezerwowe r0 i r1 są ustawione jako dominujące, · pole kontrolne definiuje liczbę bajtów danych; zawartość DCL w zakresie 0..7 równa jest liczbie bajtów, natomiast wartość oznacza 8 bajtów, · pole CRC - zabezpieczenie nadmiarowe transmisji; bit 16-ty jest recesywny. Kodowanie pól od SOF do pola danych włącznie - kod cyklicznego o następującym wielomianie generującym: g(x) = x15 + x14 + x10 + x8 + x7 + x4 + x3 +1 Realizacja prostej sieci miejscowej CAN
13
Wprowadzenie do sieci CAN Warstwa łącza danych
Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) Pole arbitrażu Pole kontrolne danych CRC ACK Koniec ramki Przerwa Szyna wolna S O F R I D E T IDENTYFIKATOR 11 bitów DLC 4 bity DANE 0-8 bajtów 15 bitów EOF 7 bitów 3 bity r 18 bitów 1 a) b) · pole potwierdzenia (ACK) zawiera 2 bity: ACK i bit ogranicznika. Po wysłaniu ramki nadajnik wysyła 2 recesywne bity pola ACK, a odbiornik, który poprawnie odebrał wiadomość odpowiada w tym samym czasie dominującym bitem ACK. Dzięki temu nadajnik uzyskuje potwierdzenie, że przynajmniej jeden węzeł poprawnie odebrał wiadomość. · pole EOF składa się z 7 recesywnych bitów kończących ramkę, · ramka zdalna - wysyła odbiornik żądający potrzebnej wiadomości; identyfikator określa źródło danych. Realizacja prostej sieci miejscowej CAN
14
Wprowadzenie do sieci CAN Warstwa łącza danych
Obsługa błędów Każdy z węzłów przeprowadza kontrolę bitów. Wykrywane są następujące typy błędów: stanu bitu - węzeł wysłał bit dominujący a odebrał recesywny (wyjątek - arbitraż), szpikowania bitami - w ciągu bitów między SOF a ogranicznikiem CRC pojawiło się więcej niż 5 takich samych bitów, kontroli kodowej (CRC) - odległ. Hamminga 6 - tylko wykrywanie błędów bez korekcji, potwierdzenia (ACK), formatu ramki. Po wykryciu błędu przez dowolny węzeł - generowana specjalna ramka błędu, zawierająca flagę błędu (6 bitów dominujących). Bity dominujące flagi błędu powodują nadpisanie uszkodzonej ramki i wymuszają powtórzenie transmisji. Realizacja prostej sieci miejscowej CAN
15
Wprowadzenie do sieci CAN Warstwa łącza danych
Kontrolery CAN wyposażone są w dwa liczniki: licznik błędów odbioru (REC - Receive Error Counter) oraz licznik błędów nadawania (TEC - Transmit Error Counter) - cel odróżnienie błędów chwilowych od trwałych. Liczniki zwiększają swoją zawartość przy błędzie odpowiedniej operacji i zmniejszają ją przy poprawnej operacji. W zależności od stanu licznika może zmieniać się stan węzła. Stan czynny (error active) Stan czynny (REC=TEC<128) jest normalnym stanem węzłów. Sieć działa bez zakłóceń gdy REC=TEC=0. Stan bierny (error passive) - węzły nadal nadają i odbierają wiadomości (127<RECTEC<255). W przypadku błędu, węzeł czynny wysyła czynną ramkę błędu (z czynną flagą błędu - 6 bitów dominujących) a węzeł bierny wysyła bierną ramkę błędu (z bierną flaga błędu - 6 bitów recesywnych). Stan odcięcia (bus off) - przekroczenie zawar-tości RECTEC>255. Realizacja prostej sieci miejscowej CAN
16
Wprowadzenie do sieci CAN Realizacja modelu sprzętowego sieci CAN
K Kontroler CAN Kontroler CAN Układ styku z magistralą CAN RxD magistrala CAN TxD Układy I/O mikrokontroler z portem CAN Typowe struktury węzłów sieci CAN Realizacja prostej sieci miejscowej CAN
17
Wprowadzenie do sieci CAN Realizacja modelu sprzętowego sieci CAN
AT89C 4051 SJA 1000 TxD RxD PCA 82C250 CAN_H CAN_L Układy I/O TL 7705 Dekoder adresu Pamięć szereg. RST CS Schemat blokowy węzła sieci CAN Realizacja prostej sieci miejscowej CAN
18
Wprowadzenie do sieci CAN Realizacja modelu sprzętowego sieci CAN
Węzeł A Magistrala CAN Węzeł B Węzeł C Węzeł D Węzeł E Węzeł G Węzeł F Terminator Sieć CAN Realizacja prostej sieci miejscowej CAN
19
Wprowadzenie do sieci CAN Realizacja modelu sprzętowego sieci CAN
Węzły sieci wyposażone są w układy wejścia - wyjścia o różnych funkcjach. Zadania realizowane przez węzły sieci są następujące: kontrola czasu rzeczywistego (układ RTC 58321), wyjścia logiczne (proste jednobitowe wyjścia) , programowalny układ wejść-wyjść (wykorzystanie układu 82C55), pomiar temperatury (układ DS1620), przetwornik A/C (przetwornik AD7575), przetwornik C/A (przetwornik AD7528), wyświetlacze 6-cyfrowy (wyświetlacze 7-segmentowe LED). Zrealizowany model sieci działa z prędkością transmisji 1Mb/s. Dla potrzeb dydaktycznych dodatkowo wprowadzono możliwość obniżenia tej prędkości. Dostępne są 500 kb/s, 250 kb/s, 125 kb/s, 50 kb/s, 25 kb/s i 12,5 kb/s. Pozwala to na przesyłanie danych na większe odległości, a także upraszcza monitorowanie sieci. Współpraca z komputerem PC realizowana jest poprzez styk RS232. Realizacja prostej sieci miejscowej CAN
20
Realizacja prostej sieci miejscowej CAN
Podsumowanie Zalety sieci miejscowej CAN: dostępna dokumentacja, dostępne i tanie układy transmisyjne, dostępne i tanie kontrolery sieci CAN, dostępne i tanie uniwersalne mikrokontrolery z kanałami sieci CAN, otwarta architektura, wysokie bezpieczeństwo przekazywanych danych pomiarowych i sterujących, popularność sieci, dostępne gotowe moduły wejściowo - wyjściowe dla sieci CAN, dostępne dla sterowników PLC moduły typu mosty i bramy do współpracy z siecią CAN. Realizacja prostej sieci miejscowej CAN
21
Realizacja prostej sieci miejscowej CAN
Podsumowanie Liczba sprzedanych układów z kontrolerem sieci CAN w latach oraz sprzedaż przewidywana w latach (w mln.sztuk) z podziałem na typy układów (Dane wg CiA). Realizacja prostej sieci miejscowej CAN
22
Realizacja prostej sieci miejscowej CAN
Podsumowanie Wybrane monolitycznych układów nadawczo-odbiorczych realizujące styk z fizyczną magistralą jak: CF150B (Bosch), MTC3054 (Alcatel Mietec), PCA82C250, PCA82C251, PCA82C252, TJA1053 (Philips), TLE6252G (Siemens), Si9200EY, B10011S (Temic Siliconix), SN75LBC031, SN65LBC031 (Texas), UC5350 (Unitrode) itd. Do najbardziej popularnych należy PCA82C250. Kontrolery można podzielić na dwie podstawowe grupy: specyficzne - realizujące wyłącznie zadania CAN - do najpopularniejszych należą SJA1000 (Philips), AN82257 (Intel) a także SAE81C91 (Siemens), uniwersalne, oparte na znanych mikrokontrolerach wyposażonych w kanały CAN – bardzo liczna grupa układów; praktycznie każdy z producentów mikroprocesorów ma w swojej ofercie co najmniej jeden uniwersalny mikrokontroler z kanałami CAN. Przykłady: PIC16C185 (Microchip), 8X196CA (Intel), M37632MF (Mitsubishi), SABC164 (Siemens) czy P87C592 (Philips). Praktycznie każdy producent sterowników programowalnych PLC oferuje urządzenia typu most lub brama do współpracy z siecią CAN. Realizacja prostej sieci miejscowej CAN
23
Podsumowanie PCA82C250 (w pełni zgodny z ISO 11898)
„0” logiczne na wejściu TxD wymusza na wyjściach 7 i 6 napięcie różnicowe większe od 1,5V - stan dominujący, sygnał „1” - napięcie mniejsze niż 0,05V - stan recesywny PCA82C250 (w pełni zgodny z ISO 11898) Wejście Rs określa jeden z trzech trybów pracy: wysoka prędkość (zwarcie do masy), sterowanie nachyleniem zboczy przebiegów na wyjściu nadajnika (rezystor od wejścia do masy), stan uśpienia („1” na wej.)
24
Podsumowanie Nazwa sieci Prędkość bit/s Medium transmisyjne Nad./odb. układ trans. Obszar zastosowań SAE J 250k 2ps, ek 250 Pojazdy ciężarowe i specjalne, autobusy SAE J 2ps, ek, zs 12V Rolnictwo - maszyny SAE J2284 500k 2ps, nek Automatyzacja - duże prędkości, SAE J2411 25k, 40k 1p SWC Automatyzacja - małe prędkości NMEA2000 62,5k, 125k, 250k, 500k, 1M 2ps, ek, zs Przemysł stoczniowy, statki, okręty Device Net 125k, 250k, 500k 2ps, sk, zs 24V Automatyzacja przemysłu CANopen 10k, 20k, 50k, 125k, 250k, 500k, 800k, 1M 2ps,ek - opcja, zs - opcja SDS 125k, 250k, 500k, 1M 2ps, ek, zs - opcja Objaśnienia: 2ps - dwuprzewodowa skrętka, 1p - jeden przewód, ek - ekran, nek - bez ekranu, zs - przewody zasilania Realizacja prostej sieci miejscowej CAN
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.