Page 47 - XXIV Konferencja Automatyków Rytro 2026
P. 47
Dostępność zasobów sprzętowych
Funkcjonalność realizowana za pomocą dedykowanego oprogramowania jest
najczęściej uruchamiana na dedykowanej platformie sprzętowej skonstruowanej na
potrzeby danego urządzenia. Każda platforma tego typu (ang. embedded system)
dysponuje ograniczonymi zasobami, co w kontekście oprogramowania przekłada się na
limity dostępnej pamięci operacyjnej oraz mocy obliczeniowej. Naturalną konsekwencją
tych ograniczeń jest konieczność projektowania algorytmów w taki sposób, aby
wynikowy program mieścił się w dostępnej pamięci, zapotrzebowanie na pamięć
operacyjną (np. liczba i rozmiar zmiennych) nie przekraczało dostępnych zasobów
pamięci RAM, a wymagania obliczeniowe mogły zostać spełnione bez przeciążania
procesora lub systemu wieloprocesorowego. W zastosowaniach przemysłowych
dodatkowo uwzględnia się tzw. bufor bezpieczeństwa zasobów, istotny z punktu
widzenia dalszego rozwoju produktu. Oznacza to, że dostępne zasoby nie powinny być
wykorzystywane w całości – przykładowo, przy 100 MB dostępnej pamięci jedynie około
75 MB przeznacza się na implementację bieżącej funkcjonalności, pozostawiając
pozostałą część na przyszłe rozszerzenia systemu. Ponadto, szczególnie w systemach
krytycznych pod względem bezpieczeństwa, nakłada się ograniczenia na maksymalne
obciążenie procesora, które zazwyczaj nie powinno przekraczać określonego progu (np.
80%). Przekroczenie tej wartości może prowadzić do niepożądanych efektów, takich jak
wzrost temperatury układu elektronicznego, niestabilność działania czy nawet reset
systemu, co jest niedopuszczalne w warunkach przemysłowych.
Powyższe ograniczenia oznaczają, że niektóre, nawet bardzo dobre rozwiązania
algorytmiczne, ze względu na wysokie wymagania sprzętowe, nie są możliwe do
wdrożenia przemysłowego lub ich implementacja wiąże się z kosztami, które z punktu
widzenia biznesowego są nieuzasadnione.
Praca w czasie rzeczywistym
Czas rzeczywisty w układach sterowania oznacza zdolność systemu do wykonania
wszystkich niezbędnych operacji związanych z przetwarzaniem danych wejściowych
oraz generowaniem sygnałów wyjściowych w ściśle określonych ramach czasowych.
Wymaganie to ma kluczowe znaczenie w systemach krytycznych z punktu widzenia
bezpieczeństwa. Zapewnienie pracy w reżimie czasu rzeczywistego zależy zarówno od
doboru odpowiedniej platformy sprzętowej i systemu operacyjnego, jak i od takiego
projektowania algorytmów, które w sposób świadomy uwzględnia ograniczenia
czasowe. Operacje obliczeniowe o wysokiej złożoności, stanowiące element
projektowanych algorytmów, mogą nie spełniać wymagań czasowych, co prowadzi do
poważnych konsekwencji. Ten problem jest szczególnie widoczny w systemach
przetwarzających duże ilości danych (np. dane wizyjne, chmury punktów lidarowych),
gdzie wymagana jest wysoka moc obliczeniową.
Paweł Skruch, Wiele celów, jedno rozwiązanie – o projektowaniu nowoczesnej automatyki. str. 3
XXIV KONFERENCJA AUTOMATYKÓW RYTRO 2026 AGH

