Załącznik 1 II Protokół komunikacyjny FATEK
Protokół ten stanowi każdy port komunikacyjny FATEK PLC wykorzystywany do komunikacji z urządzeniami peryferyjnymi w trybie standardowym. W celu prawidłowej komunikacji z FATEK PLC, urządzenia peryferyjne muszą spełniać wymagania nie tylko z zakresu połączeń sprzętowych, ale także ustawień parametrów software’owych. Ponadto, format komunikatów musi być zgodny z protokołem w celu umożliwienia prawidłowej odpowiedzi PLC
1.1. Definicja i komunikacja master-slave
FATEK PLC w komunikacji z urządzeniami peryferyjnymi (master) są urządzeniami typu slave. Urządzenia peryferyjne typu master wysyłają komunikaty do FATEK PLC, który to po odebraniu wiadomości wysyła odpowiedź zwrotną.
1.2. Format komunikatu FATEK PLC
Format komunikacyjny FATEK PLC zawierający komendę (z urządzenia master) i odpowiedź (z urządzenia slave) składa się z 6 kolumn danych
Kod startu(STX):Wartością szesnastkową STX w kodzie ASCII jest 02H. Wszystkie początkowe znaki komendy
i odpowiedzi figurują jako STX. Odbiorca może ustawić kod startu jako za pomocą STX.
Nr stacji slave : Numery stacji są dwucyfrowymi wartościami w kodzie szesnastkowym. W ramce komunikacyjnej PLC znajduje się tylko jedna stacja master i 255 stacji slave. Każda stacja slave charakteryzuje się unikalnym numerem z zakresu 1~FEH (jeżeli stacja ma nr 0, oznacza to, że stacja master może wysyłać komendy do wszystkich stacji slave). Kiedy stacja master zechce wysłać komendę do jednej lub wszystkich stacji slave (nr stacji = 0), wskazuje do której stacji komenda jest adresowana. Stacja slave wyśle swój numer do stacji master w wiadomości zwrotnej.
Uwaga: Domyślnym numerem stacji dla PLC jest 1. Numeru stacji nie da się modyfikować w sieci, lecz tylko za pomocą FP-08 lub WinProladder.
Kod komendy :Kod komendy składa się z dwóch numerów w kodzie szesnastkowym. Komenda jest zadaniem, którego wykonania stacja master żąda od stacji slave, np.: odczyt lub zapis statusu zmiennej dyskretnej, realizacja ustawienia, uruchomienie, zatrzymanie, itp. Nr komendy odbieranej ze stacji master zawarty jest także w wiadomości zwrotnej wysyłanej ze stacji slave.
Informacje o danych:Informacje dotyczące danych składają się ze znaków w kodzie ASCII w zakresie 0(brak danych)~500. Dane zawarte w tej kolumnie służą do przypisywania adresu lub wartości do odczytu lub zapisu. Początek informacji o danych zawiera kod błędu w wiadomości zwrotnej. W normalnych warunkach (bez błędów), kodem błędu zawsze rozpoczyna się od 0 (30H), po czym następuje odpowiedni status lub wartość w wiadomości zwrotnej. W przypadku błędu, zamiast 0 (30H) pojawi się kod błędu bez informacji o danych.
Suma kontrolna :Suma kontrolna służy do sprawdzania wartości szesnastkowej w kodzie ASCII znajdującej się w kolumnach ~ i generowania wartości kontrolnej o długości jednego bitu (dwie wartości szesnastkowe 00~FF) za pomocą metody „LRC (kontroli wzdłużnej)”. Wiadomość zostanie także sprawdzona przy odbiorze przez urządzenie odbierające. W przypadku, gdy obie wartości kontrolne są równe, oznacza to, że dane zostały przesłane w sposób prawidłowy. Jeżeli wartości są różne, oznacza to, że zaistniał błąd. Metoda LRC polega na dodaniu wszystkich wartości szesnastkowych (o długości 8 bitów) w kodzie ASCII. Przepełnienie jest odrzucane w celu uzyskania 8-bitowej sumy kontrolnej.
Kod końca (ETX):Wartością szesnastkową EXT w kodzie ASCII jest 03H. Komendy i wiadomości zwrotne kodowane są jako ETX. Odebranie kodu ETX przez urządzenie oznacza zakończenie transmisji i rozpoczęcie przetwarzania danych.
1.3. Kod błędu komunikacji FATEK PLC
Pojawienie się błędu komendy OS, adresu, obszaru wartości, działania oprogramowania lub sprzętu spowoduje brak możliwości przetworzenia komendy wysłanej z systemu master przez system slave. Niezależnie od tego jaki kod lub dane przesyła system master, format wiadomości jest zawsze ten sam. Do systemu master przesłany zostanie wymagany kod startu (STX), kod końca (ETX), suma kontrolna, kod komendy i nr stacji. System slave oceni rodzaj błędu i prześle odpowiedni kod do systemu master.
● W poniższej tabeli przedstawione są formaty odpowiedzi na błąd komunikacyjny w FATEK PLC:
1.4. Opis funkcji komendy komunikacyjnej
W rozdziale tym opisane zostały kody komend komunikacyjnych, wiadomości wysyłane z systemu master oraz formaty odpowiedzi z systemu slave (na przykładach).
1.4.1. Klasyfikacja i przypisywanie komponentów
Główną funkcją komunikacyjną PLC jest odczyt i zapis statusu lub wartości komponentów PLC. W poniższej tabeli przedstawione są adresy zmiennych dyskretnych i rejestrów do zapisu i odczytu:
● Status zmiennej dyskretnej (X, Y, M, S) może łączyć w sobie 16 lub 32 ciągłe statusy w postawi 16 i 32-bitowych rejestrów, tak jak WX0000 lub DWX0000 w powyższej tabeli, ale wartość 0000 powinna być wielokrotnością liczby 8.
● Do przypisania adresu zmiennej dyskretnej wymaganych jest 5 znaków, 6 znaków do przypisania adresu rejestru 16-bitowego i 7 znaków do przypisania adresu rejestru 32-bitowego.
● W powyższej tabeli podane zostały zakresy adresów komponentów dla FATEK PLC. Użytkownik powinien sprawdzić dopuszczalność adresu i przypisania poszczególnych komponentów PLC (np.: dla FBs-PLC zakresem dla wartości X, Y jest 0000~0255; 0000~0999 dla wartości S). W przypadku przekroczenia zakresu, PLC wyśle kod błędu „A” (niedopuszczalny adres) i nie zrealizuje komendy.
1.4.2. Opis komend komunikacyjnych
● Opis komend komunikacyjnych:
| Kod komendy 40(Odczytaj status systemu PLC) |
|
Format |
|
Przykład W przypadku, gdy PLC wyposażony jest w MEMORY PACK, ID ustawione jest zarówno na PLC jak i MEMORY PACK, a statusem MEMORY PACK i PLC w normalnych warunkach jest „START”, to status systemu PLC odczytywany przez stację MASTER będzie następujący: (B5, B3 i B0 = 1, a pozostałe statusy = 0; STATUS = 29H) |
| Kod komendy 41(Steruj START / STOP PLC) |
|
Format
|
|
Przykład Zmień status na PLC na "Start"
|
| Kod komendy 42(Sterowanie pojedynczą zmienną dyskretną) |
|
Format Komenda ta steruje przypisaną zmienną dyskretną w celu WŁĄCZENIA, WYŁĄCZENIA, USTAWIENIA lub ZEROWANIA.
|
|
Przykład Przedstawiony format komunikacyjny jest przykładem WYŁĄCZENIA zmiennej dyskretnej X16
|
| Kod komendy 43(Odczytaj status WŁĄCZ / WYŁĄCZ zmiennej ciągłej) |
|
Format Komenda ta wykorzystywana jest do odczytu statusu WŁĄCZ / WYŁĄCZ zmiennych ciągłych
|
|
Przykład Jeżeli status 7 zmiennych ciągłych Y10, Y12 i Y16 i Y10~Y16 będzie WŁĄCZ, a pozostałe statusy będą WYŁĄCZ, to status PLC przy odczycie tej komendy będzie następujący. |
| Kod komendy 44 (Odczytaj status zmiennych ciągłych) |
|
Format
|
|
Przykład Statusy X50, X52, X55 = 0, a X51, X53, X54 = 1. Poniżej przedstawiony jest status z odczytu 6 kolejnych wejść (X50~X55)
|
| Kod komendy 45(Przypisz status do zmiennej dyskretnej) |
|
Format
|
|
Przykład Zapisz status 4 kolejnych wyjść(Y0~Y3), Y0 i Y3 = 1, Y1 i Y2 = 0.
|
| Kod komendy 46(Odczytaj dane z rejestrów zmiennych ciągłych) |
|
Format
● Numer N składa się z dwóch wartości w kodzie szesnastkowym; zakres wynosi 01H~40H lub 20H (w przypadku komponentu 32-bitowego) ● Numer rejestru 16-bitowego składa się z 6 znaków, a dane wyrażone w kodzie szesnastkowym zawierają 4 znaki (mogą być wyrażone jako 0000H~FFFFH) ● Numer rejestru 32-bitowego składa się z 7 znaków, a dane wyrażone w kodzie szesnastkowym zawierają 8 znaków (mogą być wyrażone jako 00000000H~FFFFFFFFH) |
|
Przykład Odczytaj dane 3 16-bitowych rejestrów zmiennych ciągłych rozpoczynając od R12.(R12,R13,R14)
W powyższym przykładzie, odpowiedź PLC jest następująca: R12=10A5H, R13=7FC4H, R14=0001H
|
| Kod komendy 47(Zapisz w rejestrze zmiennych ciągłych) |
|
Format
● Numer N składa się z dwóch wartości w kodzie szesnastkowym; zakres wynosi 01H~40H lub 20H (w przypadku komponentu 32-bitowego) ● Numer rejestru 16-bitowego składa się z 6 znaków, a dane wyrażone w kodzie szesnastkowym zawierają 4 znaki (mogą być wyrażone jako 0000H~FFFFH) ● Numer rejestru 32-bitowego składa się z 7 znaków, a dane wyrażone w kodzie szesnastkowym zawierają 8 znaków (mogą być wyrażone jako 00000000H~FFFFFFFFH) |
|
Przykład Wprowadź AAAAH do WY8 rejestru 16-bitowego i 5555H do WY24. Jest to format wprowadzania danych do rejestrów zmiennych ciągłych ponieważ zmienne WY8 i WY24 są ciągłe
|
|
Kod komendy 48(Odczytaj status dowolnej zmiennej dyskretnej lub danych w rejestrze) |
|
Format
● Numer N składa się z dwóch liczb w kodzie szesnastkowym, które oznaczają całkowity zakres numerów komponentów. Zakres ten wynosi 01H~40H. (odnieść się do punktu 3) ● Jeżeli komponent jest zmienną dyskretną, to jego numer może składać się jedynie z 5 znaków, a odpowiedź dotycząca statusu będzie w postaci jednego znaku (1 lub 0). ● Jeżeli komponent jest 16-bitowym rejestrem, to jego numer może składać się z 6 znaków, a odpowiedź dotycząca danych jest liczbą szesnastkową o 4 znakach. ● Jeżeli komponent jest 32-bitowym rejestrem, to jego numer może składać się z 7 znaków, a odpowiedź dotycząca danych jest liczbą szesnastkową o 8 znakach.
|
|
Przykład Odczytaj status danych R1, Y9 i DWM0(tj. M31~M0) ● W przykładzie powyżej, R1=5C34H a status Y9 = 1(”WŁ”), DWM0=3547BAH |
| Kod komendy 49(Zapisz status dowolnej zmiennej dyskretnej lub danych w rejestrze) |
|
Format
● Numer N składa się z dwóch liczb w kodzie szesnastkowym, które oznaczają całkowity zakres numerów komponentów. Zakres ten wynosi 01H~40H. (odnieść się do punktu 3) ● Jeżeli komponent jest zmienną dyskretną, to jego numer może składać się jedynie z 5 znaków, a odpowiedź dotycząca statusu będzie w postaci jednego znaku (1 lub 0). ● Jeżeli komponent jest 16-bitowym rejestrem, to jego numer może składać się z 6 znaków, a odpowiedź dotycząca danych jest liczbą szesnastkową o 4 znakach. ● Jeżeli komponent jest 32-bitowym rejestrem, to jego numer może składać się z 7 znaków, a odpowiedź dotycząca danych jest liczbą szesnastkową o 8 znakach. |
|
Przykład Ustaw status Y0 na 1, Y1 na 0, WM8 16-bitowego rejestru na 5555H, DR2 32-bitowego rejestru na FFH |
| Kod komendy 4E(Test pętli zwrotnej) |
|
Format Komenda wymusza odesłanie przez PLC wszystkich danych testowych z powrotem do stacji Master. Test polega na sprawdzeniu jakości łącza pomiędzy stacją Master a PLC i nie wpływa na funkcjonowanie PLC. |
|
Przykład Wykorzystanie komendy do przesłania danych „ABCDEFG” do PLC w celu sprawdzenia, czy PLC odpowie prawidłowo |
| Kod komendy 53(Odczytaj szczegółowy status systemu PLC) |
|
Format
|
| Kod komendy 53(Odczytaj szczegółowy status systemu PLC) |
|
Przykład
|
































No comments to display
No comments to display