Co za dużo, to niezdrowo

25 sie 2015

Upowszechnienie sieci komunikacyjnych CAN przysporzyło wielu trudności warsztatom. Świadczy o tym również poniższa, niezwykła, choć jak najbardziej prawdziwa historia.

CANWprowadzenie do konstrukcji samochodów sieci komunikacyjnych było koniecznością ze względu na wzrost liczby sterowników, które muszą wymieniać między sobą dane. Dla przykładu: sterownik pneumatycznego zawieszenia musi wiedzieć, z jaką prędkością porusza się auto, aby je stosownie obniżyć. Kiedy z kolei samochód jedzie szybko, a układ ESP wchodzi w pętlę programową sterowania zaciskami hamulców, a to w w celu przywrócenia pojazdu na prawidłowy tor jazdy (bo kierowca przesadził), sterownik silnika musi zareagować redukcją mocy i momentu.

Ponieważ budowa i działanie sieci komunikacyjnych było w praktyce warsztatowej czymś zupełnie nowym, pierwsze starcia z uszkodzeniami sieci nie kończyły się spektakularnymi sukcesami. Wręcz przeciwnie – na wlokącej się, a na koniec i tak nieskutecznej naprawie CAN poległ niejeden warsztat.

Porażek byłoby mniej, gdyby właściciele serwisów inwestowali w szkolenie mechaników. Oczywiście wszyscy zgadzają się z sentencją, że wiedza jest potęgą, ale w praktyce wyznaje się polską maksymę: jakoś to będzie. A było tak.

Nagła niemoc

W serwisie zjawił się pewien znany z telewizji lekkoatleta. Przyjechał  samochodem sportowym, pasującym zresztą do wizerunku bohatera stadionów. Wedle opowieści sportsmena, jedną z przejażdżek owym efektownym samochodem zakłóciło niemiłe wydarzenie polegające na tym, że przy jeździe z zupełnie umiarkowaną – jak na możliwości silnika maszyny (367 kW) – prędkością 90 km/h na ekranie komputera pokładowego zaświeciły się liczne komunikaty informujące o niesprawnych urządzeniach w aucie, a w chwilę potem na tablicy wskaźników pojawił się “motorek z piorunkiem”.SAMSUNG DIGIMAX 360

Usterka ta spowodowała, że auto sportowca zostało powyprzedzane przez wszystko, co z tyłu nadjechało. Nie dał rady jedynie Żuk, trochę przeładowany, jak na swoje możliwości. Siedząca obok sportowca narzeczona nie śmiała pisnąć, bo skupiona twarz kierowcy wyrażała rządzę mordu.

Jak wiadomo, współczesny trening sportowców wyczynowych opiera się również na technikach psychologicznych i radzenie sobie ze stresem jest ćwiczone na równi z wytrzymałością fizyczną. Nasz mistrz sportu w autoryzowanym serwisie spokojnie i rzeczowo zdał więc krótką relację na temat awarii, po czym dokumenty auta zostawił i opuścił warsztat, umówiwszy się z doradcą, że jak już wszytko będzie gotowe, ten czym prędzej do niego zadzwoni.

W serwisie bez zbędnej zwłoki przystąpiono do naprawy. Po pierwsze odczytane zostały zapisy pamięci błędów w sterownikach, które takowe pamięci miały. Ten pierwszy krok dał zarazem dużo i nic. Sytuacja była kuriozalna, bowiem jako obciążone błędami zameldowały się praktycznie wszystkie sterowniki, których auto miało w sumie ze czterdzieści. Otrzymany wydruk wyglądał w przybliżeniu tak jak w poniższej tabelce:

Zapis pamięci sterownika

Nr

Nazwa sterownika/funkcja

Nr błędu

Opis błędu

1

EC-silnik

Ab01

brak komunikacji CAN-A

2

EC-silnik

Ab02

brak komunikacji CAN-B

3

AT-aut. sk. biegów

Ab01

brak komunikacji CAN-A

4

AT-aut. sk. biegów

Ab02

brak komunikacji CAN-B

5

CGD-moduł sprzęgjący

Ab00

communication break down CAN-A-B

6

AC-klimtyzacja

Bb01

communication break down CAN-A-B

communication break down CAN-A-B

Nie pokazujemy dalszych rozwinięć zapisów, dość bowiem powiedzieć, iż wynikało z nich, że zakłócona jest komunikacja “każdego z każdym”. Uszkodzenie wszystkich sterowników było jednak zupełnie nieprawdopodobne.

Brak porozumienia

W tym miejscu warto, choćby w zarysie, wyjaśnić, na czym polega sieć komunikacyjna CAN, aby ci Czytelnicy, którzy nie są fachowcami, również mogli śledzić ciąg dalszy opowieści. Według Wikipedii “Controller Area Network (CAN) jest szeregową magistralą komunikacyjną powstałą w latach 80. w firmie Robert Bosch GmbH z myślą o zastosowaniach w przemyśle samochodowym (ABS, sterowanie silnika)”. Dla dalszego wywodu to przybliżenie wystarczy, szczególnie jeśli dodamy, że podstawowym patentem, na którym opiera się koncepcja CAN jest zastosowanie „szyny” w postaci dwóch przewodów.

Dołączone do szyny sterowniki korzystają z niej jak z urządzenia wejścia i wyjścia. Informacje wytwarzane przez sterowniki i dane potrzebne sterownikom do obliczeń pobierane są i wysyłane przez tę właśnie linię. Odpowiednie rozwiązania hard i softwarowe zapewniają – używając retoryki stosowanej podczas zebrania w filmie “Rejs” – “że każdy może się wypowiedzieć i posłuchać”. Oczywiście, nie zawsze tak bywa i czasem dochodzi do nieprzewidzianych trudności. Przywołać tu można przykład okupowania sejmowej mównicy przez posła, który próbuje zagadać parlament nie zważając na wezwania marszałka, aby skończył swą tyradę. Może nawet ta analogia jest kluczem do rozwiązania naszej CAN-owskiej zagadki?

To, że z CAN-em jest coś nie tak, autoryzowany serwis stwierdził natychmiast. O ile jednak sekwencje błędów, podobne do pokazanej w tabeli, tyle że dotyczące zakłóceń komunikacji “wszystkich z jednym” są łatwe w interpretacji, bowiem “winowajcą” jest ten, który pojawia się w błędach komunikacyjnych innych sterowników, to w tym przypadku problem diagnostyczny był poważniejszy. Na dokładkę, usterka miała charakter stały, ale przypadkowy. Po zgaszeniu błędów “z góry do dołu” samochód działał jak należy i dopiero dłuższa jazda powodowała pojawienie się wspomnianego communication break down.

Techniczne poczynania serwisu zostały przerwane wizytą sportowca, który poprosił o wydanie auta “tak jak jest”, bo samochód jest mu bardzo potrzebny. Z ociąganiem, ale auto jednak wydano, podkreślając, że jest niesprawne.

Klient nie zgłaszał się przez dłuższy czas i można rzec, że słuch o nim zaginął. Serwis jednak zdecydował się, w trosce o klienta, a może bardziej o własne bezpieczeństwo, na telefon typu “Dzień dobry, co słychać”. Dzień dobry – odpowiedział uprzejmie sportowiec, co doradcy zdjęło kamień z serca. Na pytanie, kiedy przyprowadzi auto celem dokończenia naprawy, mistrz sportu odrzekł, że na razie nie ma takiej potrzeby, bo chyba się coś naprawiło i samochód jeździ dobrze. Może więc zjawi się w warsztacie wczesną wiosną.

Zwracamy uwagę na powyższe zdanie. Oprócz analogii “sejmowej” okazało się to drugą, istotną informacją pozwalająca rozwikłać problem złej komunikacji “każdego z każdym”.

Powrót na wiosnę

Zima, byle jaka zresztą, minęła jak z bicza trzasł. Nieproszony i nieponaglany telefonem sportowiec zgłosił się do serwisu z inicjatywy własnej, z samochodem w trybie awaryjnym i z identycznymi zapisami błędów, co na początku historii.

Wspomnieć w tym miejscu należy, że okres zimowy został wykorzystany przez służby serwisowe do analizy przypadków communication break down w naszym typie auta, bo meldunki z frontu, czyli z autoryzowanych serwisów obsługujących takie samochody, potwierdzały, nieliczne wprawdzie, analogiczne przypadki. Okazało się, że ich przyczyną jest zła wymiana informacji pomiędzy (patrz definicja) siecią szybką A, a siecią wolną B. Remedium na tę przypadłość była wymiana sterownika CGD, gdyż miał on wadliwe oprogramowanie, a w owych czasach, sterownikom nie dawało się zrobić update.

Bez chwili zastanowienia poszedł więc sserwis na wymianę wspomnianego CGD, operacji nieprostej, która łączy się z personalizacją sterownika (przypisaniem do konkretnego VIN auta) oraz uważnym wpisaniem danych kodujących dostosowujących uniwersalny sterownik do wersji i wyposażenia dodatkowego konkretnego egzemplarza samochodu. Sąd Najwyższy techniki serwisowej, czyli banalna jazda próbna na kilkunastokilometrowym odcinku, wydał druzgocący wyrok – jest jak było, czyli nadal communication break down, lub fehlerhafte Kommunikation, jak komuś lepiej brzmi w języku niemieckim.

Gorąca kawa i chłodna analiza

Próba rzeczowego zaplanowania dalszych czynności diagnostycznych prowadziła niestety do wniosku, że jedyną szansą znalezienia winowajcy jest wymiana “po kolei” wszystkich sterowników, z nadzieją, że ten wadliwy, trafi się odpowiednio wcześnie, bo tylko wtedy koszt naprawy nie będzie horrendalny.

Sprawę pogarszała konieczność przeprowadzenia wspomnianej już personalizacji najważniejszych sterowników. Po elektronicznym wbudowaniu do naprawianego auta, sterownik nie mógł już wrócić na półkę magazynu i zostać sprzedany po raz wtóry. Płacąca za naprawę gwarancyjną Centrala zaprotestowało przeciwko takiemu rozwiązaniu, gdy tylko wymiana pierwszych podejrzanych sterowników silnika i systemu ABS/ESP, pomimo, że w sposób rzeczowy umotywowana, nie zakończyła się sukcesem. Rada w radę, postanowiono załadować sportowe auto na lawetę i zawieźć do Centrali, bez nadziei, że szybko ono wróci.

Zastosowane przez tamtejszych techników bardziej zaawansowane procedury diagnostyczne również nie posuwały sprawy naprzód. Powodująca tryb awaryjny lawina błędów komunikacyjnych pojawiała się krótko po umiarkowanym rozgrzaniu silnika. Zastosowany trick polegający na oszukaniu sterownika silnika, poprzez “wmówienie” mu, że motor jest zimny (podłączenie rezystora zamiast czujnika temperatury) nie zmieniał zachowania całości sieci – tryb awaryjny, wcześniej czy później, pojawiał się i tak.

Po odstawieniu auta w mało uczęszczany róg parkingu, nadzorujący sprawę technik, zrobiwszy sobie dobrej kawy zatopił się w lekturze zgromadzonych w sprawie sportowego auta papierów. Jego wysiłek intelektualny przyniósł wreszcie długo oczekiwany sukces. Okazało się przy tym, że przyczyna usterki jest mało poważna.tyl

Odpowiedzialny za awarię był bowiem uszkodzony sterownik układu kontroli ciśnienia w oponach. W stanie awaryjnym kierował on zbyt dużą ilość danych na szynę CAN doprowadzając do zablokowania komunikacji. Przyczyną zjawiska był zaś zbyt wysoki priorytet nadany informacjom z tego sterownika.

Spokój jaki zapanował podczas zimowej eksploatacji samochodu spowodowany był zmianą kół na koła z oponami zimowymi bez nadajników układu kontroli ciśnienia. Kierowca widział wprawdzie komunikat informujący o tym, że układ nie działa, ale jego całkowite odłączenie chroniło sieć CAN przed przeciążeniem i samochód nie przechodził w tryb awaryjny. Wymiana sterownika na sprawny rozwiązała problem.

Zostaw Komentarz