Bezpieczeństwo funkcjonalne ARM - Computer Controls zaprasza na seminarium
| Gospodarka Projektowanie i badaniaWarunkiem wprowadzenia na rynek wielu produktów, w branżach takich, jak artykuły gospodarstwa domowego, motoryzacja, przemysł, czy medycyna, jest spełnienie wymogów prawnych potwierdzających ich zgodność z normami bezpieczeństwa funkcjonalnego. Uzyskanie certyfikatu jest jednym z wymagań dopuszczenia artykułu do sprzedaży i polega na spełnieniu norm bezpieczeństwa, czyniąc dany produkt bezpiecznym dla użytkowników.
Producentów obowiązują normy: IEC 61508 dla systemów przemysłowych, ISO 26262 dla przemysłu motoryzacyjnego, IEC62304 dla systemów medycznych, czy EN 50128 dla aplikacji kolejowych. Zaprojektowanie i wdrożenie systemu zarządzania bezpieczeństwem funkcjonalnym nie różni się znacząco od wdrażania innych systemów zarządzania, wymaga jednak spełnienia szczególnych warunków.
Mówiąc o bezpieczeństwie funkcjonalnym, należy je rozpatrywać w 3 aspektach, to znaczy na poziomie rdzeni, systemu i oprogramowania. Szczegółowo zostanie to przedstawione podczas wspólnego seminarium z firmą LDRA, 10 kwietnia w Katowicach, na które zaprasza firma Computer Controls. Strona rejestracji na seminarium: www.ccontrols.net/pl/kontakt/wydarzenia/seminarium-bezpieczenstwo-funkcjonalne-10.04.2019.html.
Poniżej zaprezentowano krótkie wprowadzenie do zagadnienia bezpieczeństwa funkcjonalnego.
W ramach standardów powstało kilka poziomów integralności bezpieczeństwa - dla branży motoryzacyjnej jest to norma ASIL, a dla pozostałych obszarów, norma SIL. Standardy te określają między innymi formalne metody pracy i kontroli jakości dla opracowania kodu aplikacji. Nie bez znaczenia jest dobór odpowiednich składników oprogramowania i zestawów narzędzi, bezpiecznych dla zamierzonego zastosowania. Dla przykładu, podzespoły z klasą bezpieczeństwa ASIL A mają najmniejszy wpływ na zdrowie człowieka. Taka certyfikacja dotyczy np. sterowania oświetleniem wewnętrznym w samochodzie - wpływ jego uszkodzenia na bezpieczeństwo użytkowników jest raczej niewielki, a kierowca w czasie problemu jest w stanie zapanować nad pojazdem bez bezpośredniego zagrożenia życia.
Awaria elementów istotniejszych z punktu widzenia bezpieczeństwa (np. hamulców czy wspomagania kierownicy, powodująca np. jego blokadę) może przyczynić się do bezpośredniego zagrożenie zdrowia, a nawet życia. Elementy składowe takich układów muszą spełniać wymagania najwyższej klasy poziomu bezpieczeństwa - ASIL D. Wiąże się to z koniecznością znaczącego ograniczenia ryzyka, tak aby potencjalna awaria układu nie stała się przyczyną urazów kierowcy, pasażerów, czy pozostałych uczestników ruchu.
Aby zapobiegać ewentualnym sytuacjom niebezpiecznym stosuje się różne metody ograniczania ich wystąpienia, miedzy innymi FMEA, czyli analizę przyczyn i skutków możliwych błędów. Metoda ta ma na celu zapobieganie skutkom wad, które mogą wystąpić w fazie projektowania oraz w fazie wytwarzania produktu.
Opracowywanie i optymalizacja złożonych aplikacji związanych z bezpieczeństwem jest trudnym zadaniem, zwłaszcza gdy ważnym czynnikiem jest czas wprowadzenia produktu na rynek. ARM dysponuje oprogramowaniem, narzędziami i platformami przeznaczonymi do tworzenia aplikacji dla bezpieczeństwa funkcjonalnego - upraszcza projektowanie systemu i przyspiesza proces weryfikacji. Obejmuje to certyfikowany system bezpieczeństwa dla procesorów, w tym system operacyjny czasu rzeczywistego do programowania aplikacji. Łączenie powszechnie używanych funkcji bibliotecznych C z certyfikowanym przez TÜV zestawem narzędzi kompilatora ARM i systemem operacyjnym Keil RTX5 w czasie rzeczywistym zapewnia niezawodna, bezpieczna i zoptymalizowana platforma programowa µVision ARM KEIL MDK-Professional. Jeżeli dodamy Qualification Kit, czyli dokumentację Functional Safety dostępną w pakiecie MDK-Pro w postaci raportów, instrukcji i analiz, to proces certyfikacji ulegnie znaczącemu skróceniu.
Do głównych narzędzi oprogramowania MDK-Pro wspomagających proces certyfikacji należy debugger z wbudowanymi narzędziami do testowania kodu oraz Kompilator Arm C/C ++. Za pomocą analizy strumieniowej ETM, przy użyciu adaptera debuggowania ULINKpro można korzystać z dodatkowych funkcji analizy. Arm Keil MDK-Professional zawiera debugger z wbudowanymi narzędziami do testów pokrycia kodu i profilowania wykonania.
Funkcja oprogramowania, jaką jest "pokrycie kodu", ang. ”Code coverage” identyfikuje wykonywanie programu instrukcja po instrukcji, zapewniając dokładne testowanie aplikacji. Jest to podstawowy wymóg pełnej weryfikacji oprogramowania i certyfikacji. Funkcjonalne normy bezpieczeństwa wymagają testów pokrycia kodu dla wielu poziomów nienaruszalności bezpieczeństwa. Z kolei "Execution Profiler" rejestruje statystyki czasu i wykonania instrukcji dla całego kodu programu. Wartości te są wyświetlane w edytorze µVision lub oknie "Disassembly".
źródło: Computer Controls