Exception Response to kod błędu przesyłany przez urządzenie slave w przypadku kiedy zapytanie wysłane z mastera nie może być wykonane przez slave (serwer).
W bibliotece Saia PCD Modbus wyświetlany jest w bloku funkcyjnym Define Unit Client jak widać na poniższym ekranie:
Jeżeli bloki funkcyjne zwracają błąd komunikacji Error, a w Exception Response jest wartość 0 to świadczy to o błędzie podczas inicjalizacji portu sterownika PCD, zakłóceniach lub o braku odpowiedzi ze stacji slave. W tym przypadku należy sprawdzić informacje wyświetlane we właściwościach bloku Init Client (obszar Diagnostics).
W przypadku komunikatu response timeout (brak odpowiedzi ze stacji slave) lub innych błędów należy przede wszystkim sprawdzić okablowanie, parametry transmisji, adres modbus (UID).
Jeżeli jest zwracany kod błędu inny niż 0 to znaczy, że sama komunikacja pomiędzy Master, a Slave została nawiązana i należy sprawdzić co oznacza dany kod błędu.
Poniżej wyjaśnienie co znaczą najczęściej występujące kody błędów Exception Response:
ILLEGAL_FUNCTION_CODE | 1 | Kod funkcji modbus nieprawidłowy – nie obsługiwany poprzez stację slave (server) |
ILLEGAL_DATA_ADDRESS | 2 | Zapytanie o adres zmiennej, która nie jest dostępna w pamięci urządzenia slave (należy sprawdzić listę adresów zmiennych dostępnych w urządzeniu slave) |
ILLEGAL_DATA_VALUE | 3 | Ilość danych w zapytaniu jest nieprawidłowa |
SERVER_FAILURE | 4 | Wystąpił nieodwracalny błąd w momencie kiedy stacja slave próbowała wykonać żądaną operację.
Np. zmienne modbus w sterowniku PCD mogą być niedostępne (nie zmapowane na zmienne modbus) lub adres Modbus (UID) nie skonfigurowany. |
ACKNOWLEDGE | 5 | Serwer (lub slave) odebrał zapytanie, ale przez wymaga dłuższego okresu czasu na przetworzenie tego zapytania. |
SERVER_BUSY | 6 | Serwer jest zajęty podczas próby dostępu do niego (wykonuje inne zadanie) |