
– trzy etapy pracy (2). Naprawiając samochód, z reguły zawsze musimy podłączyć do niego skaner. Kiedyś ta dziedzina była zarezerwowana dla elektryków (elektroników), a teraz praktycznie w każdym warsztacie posługujemy się tym najpopularniejszym przyrządem diagnostycznym. Optymalnie byłoby, gdyby we wszystkich skanerach menu było przetłumaczone na język polski i to jeszcze w ten sam sposób. Tak, niestety, jednak nie jest. Tłumacze używają wielu różnych terminów, nie zwracając uwagi na typowe określenia warsztatowe. Nie patrzą nawet na to, że język jest „żywy” i zmienia się nader szybko. Tłumaczenia techniczne wykonane przy pomocy słownika nie zawsze są idealne. Doprowadzają czasem do śmiesznych sformułowań i denerwujących zwrotów, nad którymi musimy się zastanawiać, aby je rozszyfrować. A w tym czasie można przecież naprawić samochód. Na dodatek co pewien czas pojawiają się komunikaty w postaci wyrazów zapisanych w kodzie heksagonalnym. Tłumaczeń w skanerze nie zmienimy, ale słów heksagonalnych możemy się nauczyć. I właśnie dlatego warto dowiedzieć się czegoś więcej na ten temat. Wyobraźmy sobie, że w samochodzie jest dużo różnych sterowników (nawet kilkadziesiąt) połączonych sieciami cyfrowymi. Włączenie dodatkowego sterownika nie jest dla całego systemu „wielkim przeżyciem”. Zaczyna on normalnie funkcjonować w sieci, odbierając sygnały i samemu nadając wiadomości. Oczywiście najważniejszą jego funkcją jest sterowanie – właśnie tym czymś, do czego został stworzony. Wyobraźmy sobie sytuację. Są dwa modele samochodów: jeden z klimatyzacją, drugi bez. W sieci cyfrowej mamy różnicę – o jeden sterownik klimatyzacji. Jeżeli go wymontujemy, nic specjalnego się nie stanie. Następnie do takiej sieci cyfrowej włączamy skaner diagnostyczny. Jego głównym zadaniem jest pokazywanie komunikatów na ekranie. Rozmowy w sieci cyfrowej z innymi sterownikami (węzłami) są przeprowadzane podobnie jak z każdym innym sterownikiem zamontowanym na stałe w samochodzie.
Lista usług świadczonych przez sterowniki
Popatrzmy na początki. Najpierw skaner wysyła do danego sterownika prośbę (request). Sterownik odbiera tę informację jako wskazówkę (indication). Zgadza się na nawiązanie komunikacji, a więc wysyła odpowiedź (response). Z kolei tester odbiera to jako potwierdzenie (confirm). Jest to taka pierwsza wymiana informacji. Zwróćmy uwagę na to, że ta sama informacja pojawiająca się w sieci jest różnie nazywana, w zależności od tego, czy jest ona nadawana, czy odbierana. Między dwoma węzłami nastąpiła jakaś wymiana. Najwłaściwszym słowem jest tutaj pojęcie wymiany usług (dwa sterowniki świadczą sobie nawzajem usługi). W języku angielskim słowo to brzmi „service”. Wydaje się teraz naturalne, że takie usługi powinny być zebrane i opisane. I do tego służą właśnie normy (ISO, SAE). Następnie trzeba nadać im nazwy, numery lub coś podobnego, co stworzy nam tabelę klasyfikacyjną. I w tym momencie możemy przejść do pojęcia SID (Service Identifier). Jest to identyfikator, czyli numer zdefiniowanej usługi, po którym możemy poznać rodzaj wykonywanych czynności między sterownikami. Przykład: podłączamy skaner, by dowiedzieć się, z jakim typem sterowania mamy do czynienia. Zazwyczaj na sterownikach są numery, ale wszystkie informacje o nim powinniśmy uzyskać drogą elektroniczną. Tester diagnostyczny wysyła (prosi) identyfikator (czyli liczbę), pod którym kryje się usługa przeczytania wartości parametrów sterownika. Ta usługa po angielsku nazywa się „Read ECU Identification” i ma numer 26. Z tym, że w świecie cyfrowym posługujemy się liczbami zapisanymi heksagonalnie, czyli w kodzie szesnastkowym. Liczba 26 zapisana w tym kodzie ma postać 1A. Na wszelki wypadek, aby podkreślić, że mamy do czynienia z tym kodem, dopisujemy literkę „h” (od słowa heksagonalny), czyli SID: 1Ah: identyfikacja parametrów ECU. Podczas pracy z testerem czasami możemy zauważyć tę liczbę „1A”, na przykład w nagłówku wiadomości podającej numer sterownika. Mając te wiadomości, przestaniemy się denerwować, że skaner pokazuje nam coś, co nie jest przetłumaczone lub jest, ale błędnie.
Wszystko w kodzie szesnastkowym
Pojawiające się komunikaty na skanerze w postaci szesnastkowej (czyli na dobrą sprawę liczby) wcale nie musimy tłumaczyć na postać dziesiętną. O wiele wygodniej jest pozostać przy postaci heksagonalnej. Jeżeli otworzymy fachowe książki na ten temat, to wszyscy posługują się właśnie takim formatem. A jak jesteśmy bardziej dociekliwi i otworzymy normy, to tam również (zwłaszcza tam) wszystko jest uporządkowane w tym systemie. Popatrzymy na sytuację praktyczną. Na skanerze wywołujemy funkcję EOBD i zgadzamy się, aby sam skaner (automatyczne wyszukiwanie) odszukał i połączył się ze sterownikiem silnika według norm EOBD. W pewnym momencie zobaczymy komunikat o sukcesie (połączenia) i napis „ECM 7E”. To „7E” (może być jeszcze jakiś dodatkowy numer), to pozytywna odpowiedź (positive response) od sterownika odnośnie usług alternatywnych dla linii K oraz CAN. Negatywna odpowiedz miałaby numer 7F. Reasumując, zapisane numery w kodzie szesnastkowym to przekazywane informacje między sterownikami a testerem. Są to informacje zebrane i uporządkowane w postaci usług, a co najważniejsze, znormalizowane na całym świecie. Omawiane przez nas przykłady dotyczą norm zebranych pod zbiorczą nazwą KWP 2000.
Praktyczne wnioski
Chcemy na przykład przeprowadzić programowanie w samochodowym sterowniku. Skaner musi się skontaktować z odpowiednim ECM i wysłać do niego prośbę o wykonanie pewnej usługi. A przede wszystkim musi mieć taką możliwość. Sterownik ECU może odpowiedzieć na to pozytywnie lub negatywnie, czyli zgodzić się na wykonanie danej usługi (każda taka usługa jest znormalizowana i ma odpowiedni numer SID). Sterownik wykonuje część usług bez żadnych warunków. Ale są też usługi, które mogą być wykonane po spełnieniu pewnych warunków, na przykad, wpisaniu numeru PIN. Myśląc w ten sposób, cały czas kontrolujemy (rozumiejąc komunikaty), co się dzieje. Potrafimy np. określić, kto jest winny niewykonania danej usługi.
I jeszcze na koniec – najpopularniejszym słowem w niniejszym artykule jest pojęcie „usługa”. Alternatywnie możemy używać „service”, bo właśnie takim wyrazem posługuje się cały świat. A przecież to wszystko musi być dla nas jasne i zrozumiałe podczas codziennej pracy.
Stanisław Mikołaj Słupski

Popatrzmy na początki. Najpierw skaner wysyła do danego sterownika prośbę (request). Sterownik odbiera tę informację jako wskazówkę (indication). Zgadza się na nawiązanie komunikacji, a więc wysyła odpowiedź (response). Z kolei tester odbiera to jako potwierdzenie (confirm). Jest to taka pierwsza wymiana informacji. Zwróćmy uwagę na to, że ta sama informacja pojawiająca się w sieci jest różnie nazywana, w zależności od tego, czy jest ona nadawana, czy odbierana. Między dwoma węzłami nastąpiła jakaś wymiana. Najwłaściwszym słowem jest tutaj pojęcie wymiany usług (dwa sterowniki świadczą sobie nawzajem usługi). W języku angielskim słowo to brzmi „service”. Wydaje się teraz naturalne, że takie usługi powinny być zebrane i opisane. I do tego służą właśnie normy (ISO, SAE). Następnie trzeba nadać im nazwy, numery lub coś podobnego, co stworzy nam tabelę klasyfikacyjną. I w tym momencie możemy przejść do pojęcia SID (Service Identifier). Jest to identyfikator, czyli numer zdefiniowanej usługi, po którym możemy poznać rodzaj wykonywanych czynności między sterownikami. Przykład: podłączamy skaner, by dowiedzieć się, z jakim typem sterowania mamy do czynienia. Zazwyczaj na sterownikach są numery, ale wszystkie informacje o nim powinniśmy uzyskać drogą elektroniczną. Tester diagnostyczny wysyła (prosi) identyfikator (czyli liczbę), pod którym kryje się usługa przeczytania wartości parametrów sterownika. Ta usługa po angielsku nazywa się „Read ECU Identification” i ma numer 26. Z tym, że w świecie cyfrowym posługujemy się liczbami zapisanymi heksagonalnie, czyli w kodzie szesnastkowym. Liczba 26 zapisana w tym kodzie ma postać 1A. Na wszelki wypadek, aby podkreślić, że mamy do czynienia z tym kodem, dopisujemy literkę „h” (od słowa heksagonalny), czyli SID: 1Ah: identyfikacja parametrów ECU. Podczas pracy z testerem czasami możemy zauważyć tę liczbę „1A”, na przykład w nagłówku wiadomości podającej numer sterownika. Mając te wiadomości, przestaniemy się denerwować, że skaner pokazuje nam coś, co nie jest przetłumaczone lub jest, ale błędnie.

Pojawiające się komunikaty na skanerze w postaci szesnastkowej (czyli na dobrą sprawę liczby) wcale nie musimy tłumaczyć na postać dziesiętną. O wiele wygodniej jest pozostać przy postaci heksagonalnej. Jeżeli otworzymy fachowe książki na ten temat, to wszyscy posługują się właśnie takim formatem. A jak jesteśmy bardziej dociekliwi i otworzymy normy, to tam również (zwłaszcza tam) wszystko jest uporządkowane w tym systemie. Popatrzymy na sytuację praktyczną. Na skanerze wywołujemy funkcję EOBD i zgadzamy się, aby sam skaner (automatyczne wyszukiwanie) odszukał i połączył się ze sterownikiem silnika według norm EOBD. W pewnym momencie zobaczymy komunikat o sukcesie (połączenia) i napis „ECM 7E”. To „7E” (może być jeszcze jakiś dodatkowy numer), to pozytywna odpowiedź (positive response) od sterownika odnośnie usług alternatywnych dla linii K oraz CAN. Negatywna odpowiedz miałaby numer 7F. Reasumując, zapisane numery w kodzie szesnastkowym to przekazywane informacje między sterownikami a testerem. Są to informacje zebrane i uporządkowane w postaci usług, a co najważniejsze, znormalizowane na całym świecie. Omawiane przez nas przykłady dotyczą norm zebranych pod zbiorczą nazwą KWP 2000.
Praktyczne wnioski
Chcemy na przykład przeprowadzić programowanie w samochodowym sterowniku. Skaner musi się skontaktować z odpowiednim ECM i wysłać do niego prośbę o wykonanie pewnej usługi. A przede wszystkim musi mieć taką możliwość. Sterownik ECU może odpowiedzieć na to pozytywnie lub negatywnie, czyli zgodzić się na wykonanie danej usługi (każda taka usługa jest znormalizowana i ma odpowiedni numer SID). Sterownik wykonuje część usług bez żadnych warunków. Ale są też usługi, które mogą być wykonane po spełnieniu pewnych warunków, na przykad, wpisaniu numeru PIN. Myśląc w ten sposób, cały czas kontrolujemy (rozumiejąc komunikaty), co się dzieje. Potrafimy np. określić, kto jest winny niewykonania danej usługi.
I jeszcze na koniec – najpopularniejszym słowem w niniejszym artykule jest pojęcie „usługa”. Alternatywnie możemy używać „service”, bo właśnie takim wyrazem posługuje się cały świat. A przecież to wszystko musi być dla nas jasne i zrozumiałe podczas codziennej pracy.
Stanisław Mikołaj Słupski
Komentarze (0)