wersja mobilna
Online: 496 Sobota, 2016.10.01

Biznes

Błędy sprzętu i oprogramowania w samochodach

wtorek, 21 kwietnia 2015 11:20

Upowszechnianie elektroniki w samochodach zapewnia wiele korzyści, ale równocześnie jest dla konstruktorów wyzwaniem. Mimo starań nie udaje się całkiem uniknąć błędów w zakresie sprzętu i oprogramowania. Te z kolei nie tylko negatywnie wpływają na opinię o producencie aut, ale - jeżeli nie zostaną wcześniej wykryte i naprawione - mogą doprowadzić do wypadku. W ostatnich latach odnotowano liczne przypadki usterek, przez które doszło do tragedii lub konieczne okazało się wezwanie do serwisu wybranych modeli pojazdów. Ucierpiała na tym reputacja wielu producentów z branży motoryzacyjnej.

Przykładem jest firma General Motors. Pod koniec minionego roku CNN na stronie internetowej www.cnn.com/interactive/2014/05/us/gm-recalls przedstawiło spis wad, jakie w 2014 roku wykryto w samochodach tego producenta. Łącznie z ich powodu naprawy wymagało prawie 20 milionów pojazdów. Wśród usterek, które uznano za niebezpieczne, znalazły się te o charakterze typowo mechanicznym, elektrycznym i błędy w oprogramowaniu.

Długa lista usterek aut GM

General Motors m.in. alarmowało o możliwości zwarcia w jednym z modułów kontrolnych, o niedomykaniu się maski, uszkodzeniu części zawieszenia powodującym chybotanie się kół i o możliwości przegrzania oraz stopienia się części systemu pompy paliwowej, które prowadzi do wycieku paliwa. Groźny dla użytkowników okazał się również problem z połączeniem elektrycznym, przez który poduszka powietrzna nie otwiera się do końca, możliwość korozji przewodów z płynem hamulcowym, niedziałanie napinaczy pasów bezpieczeństwa oraz lamp przednich i wadliwie przyspawane siedzenia.

GM musiało ponadto rozwiązać problemy z połączeniem elektrycznym, przez które nie działało wspomaganie układu kierowniczego i hamulcem wydłużającym drogę hamowania. Do serwisu wezwano też samochody, w których stwierdzono prawdopodobieństwo nieotwarcia się poduszek powietrznych z powodu błędnie zaprogramowanego komputera pokładowego, przegrzania oraz pożaru instalacji elektrycznej i uszkodzenia w niskiej temperaturze kabla, który zasila podgrzewacz bloku silnika.

Defekty pojazdów Mazdy i Nissana

Na wykazie CNN znalazły się także błędy w programie, powodujące kilkusekundowe opóźnienie przyspieszenia pojazdu, wyłączanie się systemu ESC (electronic stability control) bez ostrzeżenia, korodowanie okablowania zainstalowanego w drzwiach auta, błędne wskazania wskaźnika paliwa i nieprawidłowe podłączenie przewodów paliwowych. Problemy nie ominęły i innych firm.

Na przykład Mazda musiała wycofać kilka modeli aut w związku z awarią systemu ich ładowania, powodującą wyłączenie silnika. Przyczyną usterki było ześlizgiwanie się paska alternatora błędnie interpretowane przez moduł PCM (power control module). W starszych pojazdach tej marki z kolei stwierdzono, że czujnik momentu obrotowego w kierownicy nie działa prawidłowo. Aby naprawić tę usterkę, m.in. konieczna okazała się aktualizacja oprogramowania modułu PSCM (power steering control module). W samochodach Nissana natomiast wystąpił problem z nadmiernym ciśnieniem w poduszce powietrznej. Pękając, mogła ona, zamiast zabezpieczyć pasażerów pojazdu przed skutkami wypadku, spowodować poważne obrażenia ciała.

Błędy w kodzie źródłowym przyczyną tragedii

Głośnym echem w mediach odbiła się również sprawa Toyoty. Dowiodła ona niestety, że chociaż od producenta tej klasy można by oczekiwać dotrzymywania wysokich standardów jakości, w praktyce okazuje się, że nie zawsze są one przestrzegane. W tym wypadku niestety złamanie podstawowych zasad kosztowało życie ludzkie. Z powodu błędów w kodzie źródłowym systemu ETCS (electronic throttle control system) samochody przyspieszały w sposób nagły i niezamierzony. W wypadkach tym spowodowanych zginęli ludzie. Co w obliczu takiej tragedii jest wprawdzie drugorzędne, poza trudnymi do oszacowania stratami wizerunkowymi, firma ta poniosła również wymierne koszty procesów i odszkodowań, które musiała wypłacić rodzinom ofiar.

Eksperci, którzy analizowali kod źródłowy ETCS, zarzucali mu nie tyle błędną implementację funkcji, jakie miał realizować, co przede wszystkim nadmierną złożoność oraz mnogość zmiennych globalnych i funkcji, których stopień skomplikowania uniemożliwiał nawet ich przetestowanie. Poza tym programistom Toyoty udowodniono nieprzestrzeganie lub tylko wybiórcze dotrzymywanie standardów budowania aplikacji w języku C, głównie MISRA-C. Kod źródłowy nie został też należycie przetestowany.

Prostota i staranność gwarancją bezpieczeństwa

Chociaż usterek mechanicznych, elektrycznych ani tych z powodu błędów w oprogramowaniu nie da się całkowicie uniknąć, należy zrobić wszystko, by do nich nie dopuścić. W coraz bardziej skomplikowanych systemach, w jakie są wyposażane samochody, zwłaszcza w związku z popularyzacją tych hybrydowych i elektrycznych, nie można niestety przewidzieć wszystkich prawdopodobnych awarii. Najlepszym zabezpieczeniem jest zatem stosowanie się do powszechnie przyjętych norm. Zadania powinny być z kolei implementowane w sposób najprostszy z możliwych (ale nie prostszy). Najłatwiej wyjaśnić to na przykładzie oprogramowania. Złotą zasadą przy tworzeniu kodu źródłowego powinno być ostrożne gospodarowanie zasobami pamięci i wydajności obliczeniowej, dbałość o jakość kodu oraz testowanie go przez niezależnie pracujące zespoły programistów.

Monika Jaworowska

 

World News 24h

piątek, 30 września 2016 17:11

Chinese smartphone maker OPPO has overtaken Apple for the first time to become the number two brand in India by sales value behind Samsung in August 2016. OPPO also clocked in a growth of 16 per cent in comparison to the previous month, Germany-based market research firm GFK said on Thursday.

więcej na: thenewsminute.com