Problematyka sieci miejscowej LIN -...
Transcript of Problematyka sieci miejscowej LIN -...
1.08.07 Zygmunt Kubiak 1
Problematyka
sieci miejscowej LIN
Zygmunt Kubiak
Instytut Informatyki
Politechnika Poznańska
1.08.07 Zygmunt Kubiak 2
Problematyka sieci miejscowej LIN
Wprowadzenie
Protokół sieci LIN
Przykładowe rozwiązanie sieci LIN
Podsumowanie
1.08.07 Zygmunt Kubiak 3
Problematyka sieci miejscowej LIN
Wprowadzenie
LIN (ang. Local Interconnect Network) – standard szeregowej
transmisji danych na bliskie odległości, przeznaczona do
stosowania w systemach elektroniki samochodowej.
Pierwsza wersja LIN powstała w 1999 roku a ostatnia – LIN 2.1
w 2006 roku.
Udział w opracowaniu specyfikacji: Audi, BMW, Daimler Chysler,
Motorola, Volcano Communications Technologies, Volkswagen
oraz Volvo.
Lista firm tworząca LIN Consortium, tzn. Organizację powołaną
do zarządzania standardem jest znacznie szersza.
1.08.07 Zygmunt Kubiak 4
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Układ sterowania magistralą LIN
Dostęp do magistrali – asymetryczny z jednym przewodem sygnałowym.
Wyjście – realizacja „iloczynu na drucie”.
Napięcie zasilania VBAT = 8 - 18V.
1.08.07 Zygmunt Kubiak 5
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Układ sterowania magistralą LIN
Sygnały na magistrali:
recesywny – dla Tx = 0,
dominujący – dla Tx =1.
1.08.07 Zygmunt Kubiak 6
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Układ sterowania magistralą LIN
Prędkość transmisji 1 – 20 kb/s.
Zasięg do 40m.
1.08.07 Zygmunt Kubiak 7
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Poziomy sygnałów na magistrali LIN
1.08.07 Zygmunt Kubiak 8
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Topologia sieci LIN
Metoda dostępu węzłów do magistrali - Master-Slave
Wszystkie węzły sieci tworzą tzw. klaster
Wszystkie węzły sieci LIN obsługują zadanie Slave
Węzeł nadrzędny zarządza siecią za pomocą zadania Master
1.08.07 Zygmunt Kubiak 9
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Ramka wiadomości sieci LIN
Nagłówek generuje zawsze węzeł Master
Drugą część ramki (odpowiedź) węzeł Master lub jeden z węzłów
Slave
1.08.07 Zygmunt Kubiak 10
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Standard LIN definiuje trzy rodzaje ramek:
ramka bezwarunkowa (unconditional frame), przeznaczona do
cyklicznej transmisji sygnałów, które są rejestrowane przez
zainteresowane węzły;
ramka wyzwalana zdarzeniem (event triggered frame),
przeznaczona dla rzadko transmitowanych informacji; w tym
przypadku jeżeli zdarzenie nie wystąpiło to również nie pojawi
się odpowiedź na wysłany nagłówek;
ramka sporadyczna (sporadic frame), wysyłana jest zawsze w
szczelinie, przewidzianej w harmonogramie dla tego rodzaju
ramek, gdy uaktualniona zostanie wartość sygnału
zdefiniowanego dla tej ramki.
1.08.07 Zygmunt Kubiak 11
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Zadanie Master
Jeżeli jest spełniony warunek transmisji
lub ma być wysłana ramka bezwarunkowa i wykryty
zostanie odstęp między ramkami (zakończone
zadanie Slave)
to następuje wysłanie nagłówka (pola przerwy, dalej
pola synchronizacji oraz pola identyfikatora)
i zadanie Master ponownie przechodzi do stanu
oczekiwania na spełnienie kolejnego warunku
transmisji.
1.08.07 Zygmunt Kubiak 12
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Zadanie Slave
1.08.07 Zygmunt Kubiak 13
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Bajt pola synchronizacji
Ramki transmitowane są znakowo, w formacie 8N1 – bit startu, 8 bitów
danych bez bitu parzystości oraz bit stopu.
Wyjątek stanowi pole przerwy, które składa się z 13 bitów
dominujących oraz 1..4 bitów recesywnych, stanowiących ogranicznik pola.
Pole synchronizacji jest bajtem o wartości 0x55. Wszystkie pięć
opadających zboczy (przejście ze stanu recesywnego do dominującego)
tego pola wykorzystanych jest do synchronizacji węzłów sieci.
Pole synchronizacji wykorzystywane też do automatycznego ustawiania
prędkości transmisji.
1.08.07 Zygmunt Kubiak 14
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Bajt pola identyfikatora
Kolejnym polem nagłówka jest identyfikator. Składa się z 6 bitów
określających identyfikator wiadomości oraz dwóch bitów kontrolnych.
Są one wyznaczane następująco:
P0 = ID0 ID1 ID2 ID4,
P1 = (ID1 ID3 ID4 ID5).
1.08.07 Zygmunt Kubiak 15
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Bajt pola identyfikatora
We wcześniejszych wersjach standardu dwa ostatnie bity
identyfikatora określały długość danych.
Od wersji 2.0 przyjęto, że długość danych powiązana jest
z identyfikatorem wiadomości.
Identyfikator może przyjmować wartości od 0x00 do 0x3f.
Ostatnie cztery kody zarezerwowane są dla ramek specjalnych.
1.08.07 Zygmunt Kubiak 16
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Odpowiedź
Odpowiedź stanowiąca drugą część ramki wiadomości
może zawierać jeden do ośmiu bajtów, przesyłane od
najmłodszego bitu.
Ostatnim bajtem odpowiedzi jest suma kontrolna. Jest
to zanegowana suma bajtów danych (modulo 256)
z uwzględnieniem przeniesienia.
Od wersji 2.0 sumę kontrolną opcjonalnie rozszerzono
o pole identyfikatora.
1.08.07 Zygmunt Kubiak 17
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Typy wymiany danych w sieci LIN
1.08.07 Zygmunt Kubiak 18
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Typy wymiany danych w sieci LIN
1.08.07 Zygmunt Kubiak 19
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Typy wymiany danych w sieci LIN
1.08.07 Zygmunt Kubiak 20
Problematyka sieci miejscowej LIN
Protokół sieci LIN
Przykładowe scenariusze wymiany wiadomości; a) ze stałą
tablicą, b) z wieloma tablicami wymiany
Wszystkie węzły Slave, ze względu na zmniejszony pobór mocy, mogą być wprowadzone przez węzeł Master w stan uśpienia przy pomocy ramki o identyfikatorze 0x3C lub autonomicznie po stwierdzeniu na magistrali braku aktywności przez 4 s. Sygnałem budzenia jest pojawienie się na magistrali sygnału dominującego, trwającego od 250 s do 5 ms.
1.08.07 Zygmunt Kubiak 21
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Węzeł sieci LIN
Mikrokontroler C8051F530 (f. Silicon Laboratories) - wyposażony
między innymi w port transmisji szeregowej w standardzie LIN
w wersji 2.0. Jest to szybki układ (25 MIPS), dysponujący pamięcią
Flash 8 kB oraz RAM 265 B z elastyczną matrycą wyjść/wejść,
obsługującą wejścia i wyjścia cyfrowe jak i analogowe
1.08.07 Zygmunt Kubiak 22
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Węzeł sieci LIN
Moduł zawiera również odrębny sterownik magistrali LIN
wykorzystujący prosty układ interfejsu TH8080 firmy Melexis [8],
zasilany z zewnętrznego napięcia +12 V.
1.08.07 Zygmunt Kubiak 23
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Mikrokontroler C8051F530 umożliwia wybór trybu Master lub Slave.
Zapewnia poprawną synchronizację transmisji bez rezonatorów
kwarcowych lub ceramicznych. Ta uwaga dotyczy nie tylko węzłów
Slave co jest wymogiem specyfikacji LIN ale również węzła Master.
Zastosowane rozwiązanie oscylatora wewnętrznego zapewnia
ograniczenie zmiany częstotliwości do 0,5% w dopuszczalnym
zakresie napięcia zasilania i temperatury.
Umożliwia pełną konfigurację parametrów nadawczo-odbiorczych
poprzez specjalne rejestry.
Obsługa sieci LIN wymaga zastosowania zegara systemowego
(SYSCLK) o częstotliwości minimum 8 MHz.
1.08.07 Zygmunt Kubiak 24
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Układy mikrokontrolera C8051F530 wspierające standard LIN
Układy wspierające LIN można podzielić na cztery grupy
rejestry interfejsu LIN – zapewniają powiązanie między rdzeniem
mikrokontrolera a peryferiami;
1.08.07 Zygmunt Kubiak 25
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Układy mikrokontrolera C8051F530 wspierające standard LIN
Układy wspierające LIN można podzielić na cztery grupy
bufor danych – rejestry w których umieszczane są bajty danych
odbierane i do wysłania;
1.08.07 Zygmunt Kubiak 26
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Układy mikrokontrolera C8051F530 wspierające standard LIN
Układy wspierające LIN można podzielić na cztery grupy
blok rejestrów – rejestry wykorzystywane do sterowania pracą
interfejsu;
1.08.07 Zygmunt Kubiak 27
Problematyka sieci miejscowej LIN
Przykładowe rozwiązanie sieci LIN
Układy mikrokontrolera C8051F530 wspierające standard LIN
Układy wspierające LIN można podzielić na cztery grupy
układ sterowania – sprzętowe rozwiązanie transmisji szeregowej
wiadomości oraz kontrola zależności czasowych transmisji.
1.08.07 Zygmunt Kubiak 28
Podsumowanie
Z punktu widzenia dydaktyki, sieć LIN jest interesującymrozwiązaniem technicznym. Stanowi stosunkowo prostysystem a przy tym obejmuje wiele istotnych zagadnieńtransmisyjnych.
Występują tu uniwersalne problemy jak tworzenie lubdekodowanie ramki, zabezpieczenie ramki, obsługa błędów,harmonogram transmisji, ale również zagadnienianiekonwencjonalne jak sposób organizacji transmisji czy teżrozwiązanie synchronizacji bitowej (częściowo wzorowane nasieci CAN), które pozwala w transmisji asynchronicznej narezygnację z precyzyjnych, stabilnych w czasiei temperaturze rezonatorów kwarcowych.
1.08.07 Zygmunt Kubiak 29
Podsumowanie
Przedstawione rozwiązanie sprzętowe zapewnia dużąelastyczność.
Pozwala na znaczną ingerencję w protokół LIN jakdefiniowanie wiadomości, obsługa błędów, tworzenie różnychharmonogramów, monitorowanie sieci LIN.
W przypadku rezygnacji ze wsparcia sprzętowegomikrokontrolera C8051F530 można eksperymentować z pełnąobsługą programową warstwy łącza danych.
Dwa prawie całkowicie dostępne porty mikrokontrolera możnawyposażyć w proste układy we/wy jak klawisze, diody LED,wyświetlacze, sensory, uzyskując w ten sposób w pełnifunkcjonalny węzeł sieci miejscowej.
1.08.07 Zygmunt Kubiak 30
Podsumowanie
Na bazie omawianego modułu można tworzyći badać węzły również innych sieci jak Modbus, HART czyProfibus DP ale oczywiście w tym przypadku z warstwąfizyczną typu LIN.
Na bazie warstwy fizycznej można projektować własne siecitypu Multi Master z arbitrażem analogicznym jak w sieciCAN.
1.08.07 Zygmunt Kubiak 31
Dziękuję