Testy Hardware-in-Loop (HIL) polegają na wyizolowaniu testowanego urządzenia (DUT = Device under Test, czasami stosowane również UUT = Unit Under Test) od wszystkich zewnętrznych bodźców takich jak dostarczane wiadomości, wartości sygnałów, poziomy elektryczne itd. Następnie urządzenie umieszczane jest w uchwycie testowym, który symuluje wszystkie bodźce/dane wejściowe, oraz mierzy jego wyjścia.
Testy HIL to wyjęcie urządzenia z jego środowiska i umieszczenie go w symulatorze rzeczywistości
Omówmy to na przykładzie. Mamy system wbudowany pracujący w samochodzie. Jego zadaniem jest sterowanie małym napędem elektrycznym. Ma podpięte dwa czujniki analogowe (np. natężenia światła oraz temperatury). Poza tym podpięty jest do magistrali komunikacyjnej CAN, na którym znajdują się również inne urządzenia, z którymi wymienia wiadomości, czyli ramki (np. komputer pokładowy).
Teraz w wyobraźni bierzemy wielki nóż i odcinamy wszystko co jest podłączone do naszego urządzenia. Następnie zastanawiamy się czego użyć do zasymulowania odpowiednich warunków:
- Sensory przekazują wartość za pomocą poziomu napięcia. Użyjemy więc symulatora poziomu napięcia – wyjścia analogowego
- Do zasymulowania wiadomości pochodzących od innych urządzeń użyjemy symulatora komunikacji interfejsu CAN
- Na koniec zweryfikujemy poprawność sterowania napędem przez pomiar napięcia na wejściu analogowym
Następnie przygotowujemy nasz scenariusz testowy do wykonania ręcznie lub automatycznie. Może on wyglądać tak:
- Uruchom symulację cyklicznych ramek CAN na magistrali
- Włącz urządzenie (podaj zasilanie)
- Ustaw wyjście analogowe nr. 1 na 4,25V (symulacja sensora 1)
- Ustaw wyjście analogowe nr. 2 na 1,5V (symulacja sensora 2)
- Odczekaj 3 sekundy
- Odczytaj pomiar napięcia [ kryterium: napięcie < 0.05V ] (napęd niezasilony)
- Nadaj na magistrali CAN ramkę od komputera pokładowego z żadniem włączenia napędu
- Odczekaj 1s
- Odczytaj pomiar napięcia [ kryterium: napięcie w zakresie [11.5V – 12.5V ] (napęd zasilony)
- koniec przypadku testowego
Jak widać, ten przypadek testowy sprawdzał jedynie jak urządzenie zachowa się podczas wysłania odpowiedniej ramki na magistrali CAN. Nie sprawdzaliśmy jednak co się stanie w takiej sytuacji, ale przy różnych sygnałach od czujników. To już należy zrobić w osobnych przypadkach testowych.
Ikona układu scalonego pochodzi z pakietu: Techonology icons created by Vitaly Gorbachev – Flaticon
Dodaj komentarz