31 Protokół komunikacyjny Memory Map
Protokół komunikacyjny Memory Map
W tym rozdziale wyjaśniono ustawienia związane z protokołem Memory Map.
Przegląd
Protokół komunikacyjny Memory Map jest podobny do protokołu IBM 3764R i jest używany, gdy dane pamięci są przesyłane rzadko między dwoma urządzeniami. Podczas definicji dwóch urządzeń, jedno jest ustawiony jako Master, a drugi jako Slave. Ogólnie rzecz biorąc, Master i Slave nie komunikują się, chyba że dane w wybranym adresie uległy zmianie. Po zsynchronizowaniu danych komunikacja zostanie zatrzymana. Celem korzystania z protokołu Memory Map jest zachowanie spójności przypisanej części danych między dwoma urządzeniami (Master i Slave).
Odpowiednie adresy urządzeń Master i Slave powinny mieć tę samą właściwość co typ adresu MW (MB). Wielkość pamięci MW (MB) w HMI wynosi 10.000 słów.
MB i MW odnoszą się do tego samego obszaru pamięci, na przykład MB0 ~ MBf odpowiada bitom MW0, MB10 ~ MB1f odpowiada MW1, jak pokazano w poniższej tabeli:
Typ zmiennej | Format | Zakres |
|---|---|---|
MB | DDDDh | DDDD:0~4095 h:0~f(hex) |
MW | DDDD | DDDD:0~9999 |
Ustawienia komunikacji (piny)
Podczas korzystania z protokołu komunikacyjnego Memory Map, Master i Slave muszą mieć ustawione te same parametry komunikacyjne. Schemat połączenia urządzeń pokazano w poniższej tabeli:
(liczba # będzie różna w zależności od typu sterownika PLC lub kontrolera.)
Port COM | RS-232 |
|---|---|
Urządzenie | Master |
Numer pinu | TX(#) |
RX(#) | TX(#) |
GND(#) | GND(#) |
Port COM | RS-485 (4W) |
|---|---|
Urządzenie | Master |
Numer pinu | TX+(#) |
TX-(#) | RX-(#) |
RX+(#) | TX+(#) |
RX-(#) | |
GND(#) |
Schemat blokowy komunikacji
Uwaga
Schemat blokowy komunikacji 2 odnosi się do urządzenia Slave, ale nie Master.
STX: Początek tekstu, ACK: potwierdzenie, NAK: odpowiedź negatywna
Typy adresów
Istnieją dwa typy adresów: MB i MW.
Format poleceń sterujących zmienną MB jest wymieniony w poniższej tabeli:
MB komenda |
|---|
Przesunięcie(byte) |
0 |
1 2 |
3 |
4, 5 |
6 |
Format poleceń sterujących zmienną MW jest wymieniony w poniższej tabeli:
MW komenda |
|---|
Przesunięcie(byte) |
0 |
1 2 |
3 |
4 to 4+n-1 |
4+n, 4+n+1 |
4+n+2 |
Przykład komunikacji
Przykład 1
Jeśli Master ustawi dane w zmiennej MW-3 na 0x0a, Master nawiąże komunikację z urządzeniem Slave natychmiast ze względu na zmianę danych, więc Slave zaktualizuje swoją zmienną MW-3 do 0x0a, procedura jest następująca:
Master wysyła STX(0x02h).
Slave otrzymuje STX(0x02h) z urzadzenia Master, I wysyła ACK(0x06h) do urządzenia Master.
Master otrzymuje ACK(0x06h) z urzadzenia Slave.
Master wysyła 0x01,0x03,0x00,0x02,0x0a,0x00,0x10,0x03,0x19, jak pokazano w poniższej tabeli:
Przesunięcie(byte) | Format | Opis |
|---|---|---|
0 | 0x01 | Znak operacyjny dla MW |
1 2 | 0x03 0x00 | Adres (Młodszy bajt) Adres bitowy (Starszy bajt) |
3 | 0x02 | Liczba wysyłanych bajtów (MW-3= dwa bajty). |
4, 5 | 0x0a, 0x00 | Wartość w MW-3 to 0x0a i 0x00 |
6, 7 | 0x10, 0x03 | Znak końca |
8 | 0x19 | Suma kontrolna 0x01^0x03^0x00^0x02^0x0a^0x00^0x10^0x03=0x19 |
Slave odbiera dane od urządzenia Master, a następnie wysyła ACK(0x06h).
Master otrzymuje ACK(0x06h) z urządzenia Slave.
Po zakończeniu komunikacji Master wysyła zaktualizowane dane z MW do urządzenia Slave, a Slave zsynchronizuje swoje dane MW z urządzeniem Master.
Przykład 2
Jeśli dane zawierają 0x10; proszę zauważyć, że nastąpi zmiana formatu danych.
Jeśli MW-10 w urządzeniu Slave jest ustawione na 0x10, Slave natychmiast nawiążę komunikację z urządzeniem Master, a Master zaktualizuje jej zmienną MW-10 do 0x10, procedura jest następująca:
Slave wysyła STX(0x02h)
Master otrzymuje STX(0x02h) z urządzenia Slave, I wysyła ACK(0x06h) do urządznia Slave.
Slave otrzymuje ACK(0x06h) z urządzenia Master
Slave wysyła 0x01,0x10,0x10,0x00,0x02,0x10,0x10,0x00,0x10,0x03,0x10 , jak pokazano w poniższej tabeli:
Przesunięcie(byte) | Format | Opis |
|---|---|---|
0 | 0x01 | Znak operacyjny dla MW |
1 2 3 | 0x10 0x10 0x00 | Adres (Młodszy bajt) Wstawia 0x10 Adres bitowy (Starszy bajt) |
4 | 0x02 | Liczba wysyłanych bajtów (MW-10= dwa bajty). |
5 6 7 | 0x10 0x10 0x00 | 0x10 jest młodszym bajtem MW-10 Wstawia 0x10 0x00 jest starszym bajtem |
8 9 | 0x10 0x03 | Znak końca |
10 | 0x10 | Suma kontrolna 0x01^0x10^0x10^0x00^0x02^0x10^0x 10^0x00^0x10^0x03=0x10 |
Master otrzymuje dane z urządzenia Slave i wysyła ACK(0x06h) do urządzenia slave.
Slave otrzymuje ACK(0x06h) z urządzenia Master.
Slave przesyła zaktualizowane dane z zmiennaj MW w urzadzeniu Master, a Master synchronizuje swoje dane MW z urządzeniem Slave.
Ustawienia
Poniżej wyjaśniono, jak podłączyć dwa HMI za pomocą protokołu Memory Map.
Uwaga
Jeśli model dwóch paneli HMI jest inny, proszę utworzyć dwa różne pliki projektu lub, po ustawieniu pierwszego panela, bezpośrednio zmienić typ drugiego panela HMI w zakładce w menu narzędziowym [Edycja] »[Ustawienia systemowe]» [Model], a następnie skompilować i wgrać projekt do drugiego HMI.
Kroki do zdefiniowania komunikacji Memory Map
Uruchom EasyBuilder Pro, naciśnij [Nowy projekt], I wybierz model panelu HMI.
Z paska narzędzi wybierz zakładkę [Edycja] » [Ustawienia systemowe], a następnie wybierz zakładkę [urządzenia] i naciśnij [Nowe], aby dodać nowe urządzenie.
W polu [Nazwa] wprowadź "Memory Map", a następnie wybierz [Sterownik] i ustaw typ poączenia jako to [lokalny].
Ustaw [Typ sterownika] jako [Memory Map] I [interfejs panela] jako [RS-232].
Naciśnij [ustawienia] I nadaj jak pokazano na poniższym obrazie.
Po nadaniu ustawień dla portu COM naciśnij [OK].
Naciśnij ponownie [OK], aby zakończyć nadawanie ustawień.
Uwaga
Memory Map w serii MT500 jest podzielona na [Memory Map_Master] i [MemoryMap_Slave]; proszę zapoznać się z odpowiednią instrukcją.
W przypadku serii eMT3000 i MT8000 można wybrać [Memory Map] z lity typów sterownika.
[Bity danych] musza być ustawienie jako 8 bitów.
Wszystkie ustawienia obu paneli HMI muszą być takie same.
Ustawienia obiektów
Dodaj dwa obiekty przełącznik i przełącznik multi-stanowy na oknie numer. 10,
Utwórz obiekt przełącznik, zgodnie z poniżej opisanymi krokami.
Ustaw [PLC] jako Memory Map.
Ustaw [Adres] jako MB-0.
Ustaw [sposób przełączeń] jako [Przełacz]. (Można również ustawić obraz i etykietę obiektu).
Utwórz obiekt przełącznik multi-stanowy, zgodnie z poniżej opisanymi krokami.
Ustaw [PLC] jako Memory Map.
Ustaw [Adres] jako MW-1.
W polu [Cykliczny] wybierz opcję [załącz]. (Można również ustawić obraz i etykietę obiektu).
Testowanie programu
Kompiluj projekt, a następnie wgraj do panela HMI 1 i HMI 2.
Po naciśnięciu przycisku na jednym z HMI zmieni się również jego status na drugim.
Sposób podłączenia HMI do kontrolera jest podobny do powyższego przykładu. Dane w tych samych adresach obu urządzeń są identyczne.