Jak przygotować test Hardware-in-Loop?

Cześć!

Mam na imię Wojtek i jestem inżynierem od testowania Systemów Wbudowanych.

Zachęcam do kupienia mojego kursu Wszystko o magistrali CAN

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

Neo i Trinity podczas testów Human-in-Loop

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).

Rzadki widok dzikiego urządzenia w swoim naturalnym środowisku

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:

  1. Uruchom symulację cyklicznych ramek CAN na magistrali
  2. Włącz urządzenie (podaj zasilanie)
  3. Ustaw wyjście analogowe nr. 1 na 4,25V (symulacja sensora 1)
  4. Ustaw wyjście analogowe nr. 2 na 1,5V (symulacja sensora 2)
  5. Odczekaj 3 sekundy
  6. Odczytaj pomiar napięcia [ kryterium: napięcie < 0.05V ] (napęd niezasilony)
  7. Nadaj na magistrali CAN ramkę od komputera pokładowego z żadniem włączenia napędu
  8. Odczekaj 1s
  9. Odczytaj pomiar napięcia [ kryterium: napięcie w zakresie [11.5V – 12.5V ] (napęd zasilony)
  10. 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


Opublikowano

w

przez

Tagi:

Komentarze

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *