Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych
Nr 59
Politechniki Wrocławskiej
Nr 59
Studia i Materiały Nr
26
2006
__________
przemysłowe sieci kontrolno-pomiarowe,
komunikacja międzysieciowa
Andrzej KAŁWAK
*
, Krzysztof PODLEJSKI
F
∗
WIRTUALNY MOST DO KOMUNIKACJI MIĘDZYSIECIOWEJ
Przemysłowe sieci kontrolno-pomiarowe są stosowane w wielu dziedzinach. Ich stale rosnąca
funkcjonalność sprawia., że potencjalne obszary zastosowań pokrywają się. Znanych jest wiele róż-
nych sieci, które są stosowane w tych samych dziedzinach. Możliwość wymiany informacji między
różnymi sieciami tworzy warunki do budowy rozproszonych sieci kontrolno-pomiarowych nadzoro-
wanych z wysokiego poziomu informatycznego. Jednym z promowanych rozwiązań jest zastosowa-
nie funkcji, jakie oferuje Ethernet przemysłowy. Druga propozycja to standard IEEE 1451 [8]. W ar-
tykule przedstawiono układ do konwersji danych trzech wybranych standardów sieciowych na
poziomie łącza danych modelu ISO/OSI. Układem tym jest most wyposażony w trzy bramy pełniące
funkcje translatora danych. Scharakteryzowano cztery podstawowe rodzaje pracy mostu, który został
wykonany w formie wirtualnej i umożliwia prowadzenie eksperymentów dotyczących komunikacji
międzysieciowej.
1. WPROWADZENIE
Kompatybilność danych i protokołów komunikacyjnych między poszczególnymi
sieciami nie była brana pod uwagę przy projektowaniu różnych standardów. Problem
ten jest aktualny do dzisiaj, pomimo podjętych prób jego rozwiązania [1, 2, 3, 4, 5, 7,
10]. Komunikacja międzysieciowa może być rozwiązana w różny sposób, zależny od
występowania poszczególnych warstw modelu ISO/OSI w sieciach. W przypadku
warstwy łącza danych możliwe jest zastosowanie kilku niezależnych układów (w pro-
ponowanym rozwiązaniu dla trzech sieci: CAN, PROFIBUS i MODBUS), które utwo-
rzą logiczną strukturę trójkąta. Takie rozwiązanie, chociaż przejrzyste, wymaga zasto-
sowania trzech niezależnych mostów i jest nieracjonalne przy technicznej realizacji a
także problematyczne przy konfigurowaniu mostów. Drugie rozwiązanie to zastoso-
wanie jednego mostu, pracującego w układzie gwiazdy, wyposażonego w bramy kie-
∗
Politechnika Wrocławska, Instytut Maszyn, Napędów i Pomiarów Elektrycznych, 50-370 Wrocław,
ul. Smoluchowskiego 19, andrzej.kalwak@pwr.wroc.pl, krzysztof.podlejski@pwr.wroc.pl
rujące pakiety danych z jednej sieci do dwóch pozostałych, działające w oparciu o
procedury tłumaczące ramki danych między poszczególnymi sieciami. Takie podej-
ście nie jest spotykane w sieciach komputerowych i ma charakter oryginalny. W pu-
blikacji [6] przedstawiono ogólne zasady wymiany danych pomiędzy wybranymi sie-
ciami kontrolno-przemysłowymi. Podkreślono różnicę w stosunku do sieci
komputerowych, szczególnie w zakresie niezawodności i wagi poszczególnych komu-
nikatów (np. sytuacje alarmowe o najwyższym priorytecie) oraz opisano ogólną struk-
turę i zasadę działania mostu z konwersją ramek. Most lub mostek (ang. bridge) jest
urządzeniem stosowanym w sieciach komputerowych na poziomie warstwy łącza
danych decydującym o przesyłaniu ramek danych, ale nie pełni funkcji konwersji
ramek różnych typów. Proponowany most, logicznie, zbudowany jest z trzech bram
wyposażonych (przykładowo) w dwie funkcje konwersji ramki sieci CAN na ramki
sieci MODBUS i odwrotnie. Z punktu widzenia poszczególnych sieci most jest prze-
zroczysty (rys.1.) i nie jest węzłem sieci.
Profibus
Modbus
Brama
PROFIBUS- MODBUS
odrzucanie niestandardowych pakietów
Brama
MODBUS - CAN
odrzucanie niestandardowych pakietów
kontrola RTR modbus
Brama
PROFIBUS - CAN
odrzucanie niestandardowych pakietów
kontrola RTR profibus
CAN
profibus_tłumacz_rtu
rtu_tłumacz_profibus
profibus_tłumacz_can
can_tłumacz_profibus
can_tłumacz_rtu
rtu_tłumacz_can
60,
61,
62,
... ,
60,
61,
62,
... ,
80, 81, 82, ...
80, 81, 82, ...
100,101,
102, ...
200,201,
202, ...
300,301,
302, ...
400,401,
402, ...
Niestandardowe ramki SD1 SD3
Dzielenie pakietów Modbus na pakiety Profibus
Niestandardowe ramki SD1 SD3
dzielenie pakietów Profibus na pakiety CAN
Symulacja pola funkcji Profibus
RTR=0
master po stronie
sieci Profibus
RTR=1
master po stronie
sieci CAN
RTR=1
master po stronie
sieci Profibus
RTR=0
master po stronie
sieci CAN
RTR=1
master po stronie
sieci CAN
RTR=0
master po stronie
sieci Modbus
RTR=1
master po stronie
sieci Modbus
RTR=0
master po stronie
sieci CAN
Dzielenie pakietów Profibus na pakiety CAN
Symulacja pola funkcji Modbus
Wy
Wy
We
We
ruoting_profibus
master_profibus
adres_mastera_profibus
ruoting_modbus
master_modbus
ruoting_can
master_can
Rys.1. Schemat komunikacji międzysieciowej
Fig.1. Internetwork communication diagram
Niniejsza publikacja przedstawia zasadnicze układy pracy mostu. Podstawowymi
elementami mostu są bramy czyli konwertery ramek, które realizują trzy zasadnicze
zadania: sprawdzają poprawność ramki, określają sieć docelową, interpretują i tłuma-
czą zawartość danych ramki. Algorytm wyznaczania obiektu docelowego jest podob-
ny we wszystkich trzech konwerterach i polega na sprawdzeniu adresu docelowego
ramki. Adresy zorganizowane są w postaci określonych pul (zbiorów), list i identyfi-
katorów zapewniających poprawność określenia miejsca docelowego zgodnie z wy-
maganiami poszczególnych standardów. Procedura tłumaczenia ramki jest skompli-
kowana i zależna od wielu parametrów mostu oraz zawartości poszczególnych pól
ramki. Dla poprawnej komunikacji międzysieciowej konieczne jest zastosowanie do-
datkowego algorytmu, który jednoznacznie określi możliwość dostępu do sieci doce-
lowych. W opisywanym rozwiązaniu zastosowano algorytm oparty na znajomości
struktur logicznych sieci dołączonych do mostu. Każdej z trzech sieci przyporządko-
wano grupy parametrów, zaimplementowanych w moście, które jednoznacznie okre-
ślają możliwość konwersji pomiędzy formatami ramek.
2. UKŁADY PRACY MOSTU
W każdym z czterech układów pracy mostu występują trzy bramy pośredniczące w
wymianie danych pomiędzy dwoma sieciami ze zdefiniowanymi kierunkami komuni-
kacji. Z punktu widzenia zarządzania przepływem informacji między sieciami należy
określić element nadrzędny (master). Możliwe są dwa przypadki: element nadrzęd-
ny(„rodzimy master”) występuje w danej sieci („sieć nadrzędna”) lub element nad-
rzędny („zewnętrzny master”) występuje w innej sieci. Sieć nadzorowana przez „ze-
wnętrzny master” jest „siecią podrzędną”.
2.1. PRACA MOSTU W UKŁADZIE „A”
W tym układzie pracy (rys.2) aktywne są wszystkie bramy mostu. W sieci
PROFIBUS występuje „rodzimy master”, w sieci MODBUS nie ma elementu nad-
rzędnego. Sieć CAN jest nadrzędna w stosunku do MODBUS i podrzędna dla sieci
PROFIBUS. Można tutaj wyróżnić sześć kierunków komunikacji (z dwunastu możli-
wych). Pierwszy kierunek określa sytuację, w której element master sieci PROFIBUS
wysyła ramkę żądania („request”) do elementu slave sieci MODBUS. Kolejny kieru-
nek komunikacji to odpowiedź („response”) elementu slave ramką do master
PROFIBUS. . Poprawność komunikacji zapewnia zdefiniowanie puli adresów dla tych
dwóch kierunków. Następne dwa kierunki komunikacji wynikają z nadrzędności sieci
CAN w stosunku do sieci MODBUS. CAN ma dostęp do elementów slave w innej
puli adresów niż PROFIBUS. W tej komunikacji master CAN wysyła komunikat o
identyfikatorze należącym do określonej puli adresów wyjściowych. Most dokonuje
konwersji komunikatu na ramkę „request” MODBUS. Komunikacja w przeciwnym
kierunku sprowadza się do odwrotnej konwersji ramki na postać komunikatu. Komu-
nikat nadawany jest z identyfikatorem odpowiadającym adresowi z określonej puli
adresów wejściowych CAN. W przypadku długich pól danych dokonywany jest po-
dział ramki na kilka kolejnych komunikatów o tych samych identyfikatorach. W opi-
sywanym układzie pracy sieć CAN może być podrzędna w stosunku do sieci
PROFIBUS, bo zastosowana zasada „peer to peer” umożliwia dostęp dowolnego
SLAVE
PROFIBUS
SLAVE
CAN
SL
AV
E
MASTE
R
SLAV
E
MASTER
SLAVE
PROFIBUS
RT
R
=
0
RT
R
=
0
RTR=1
RTR=1
z master Profibus
(z master Modbus)
do master Profibus
(do master Modbus)
do adresy_profibus
(do adresy_modbus)
z adresy_profibus
(z adresy_modbus)
master_profibus=true
master_modbus=false
z adresy_can
(z modułów CAN)
do adresy_can
(do modułów CAN)
do master Profibus
(do modułów CAN)
z master Profibus
(z modułów CAN)
do can_modbus_we
(do master Modbus)
z can_modbus_wy
(z master Modbus)
z can_peofibus_wy
(z adresy_can)
do can_profibus_we
(do adresy_can)
master_can=modbus
PROFIBUS
MODBUS
CAN
MASTER
SLAVE
Rys.2. Schemat układu „A” pracy mostu
Fig.2. Bridge „A” operating diagram
„zewnętrznego mastera” do modułów sieci CAN. Występują tutaj kierunki komunika-
cji analogiczne do wcześniej opisanych.
2.2. PRACA MOSTU W UKŁADZIE „B”
W układzie „B” pracy mostu sieć CAN jest nadrzędna względem sieci PROFIBUS
i MODBUS, w których nie występują elementy master. W konsekwencji brama mię-
dzy tymi sieciami jest nieaktywna (rys.3). Komunikacja międzysieciowa odbywa się
w postaci połączeń CAN(master)►PROFIBUS, CAN(master)◄PROFIBUS,
CAN(master)►MODBUS i CAN(master)◄MODBUS. Wymiana danych zorganizo-
wana jest jak w układzie „A”, to znaczy w oparciu o zdefiniowane pule adresów
i konwersji komunikatu z identyfikatorem na odpowiednią ramkę. Na przykład dla
komunikacji między sieciami CAN i PROFIBUS komunikaty o identyfikatorach nale-
żących do puli adresów wyjściowych rozpoczynają się od adresu 400. Odbierając
ramki od elementów slave (w sieci PROFIBUS) most nadaje komunikatom identyfika-
tory od numeru 300.
SL
A
V
E
MASTE
R
SL
A
V
E
MASTE
R
RT
R=0
RT
R=0
RTR=1
RT
R=
1
master_profibus=false
master_modbus=false
z adresy_can
(z modułów CAN)
do adresy_can
(do modułów CAN)
do master Modbus
(do modułów CAN)
z master Modbus
(z modułów CAN)
do can_profibus_we
(do master Profibus)
z can_profibus_wy
(z master Profibus)
z can_modbus_wy
(z adresy_can)
do can_modbus_wy
(do adresy_can)
master_can=obecny
PROFIBUS
MODBUS
CAN
SLAVE
CAN
SLAVE
CAN
Rys.2. Schemat układu „B” pracy mostu
Fig.2. Bridge „B” operating diagram
2.3. PRACA MOSTU W UKŁADZIE „C”
W tym układzie aktywne są trzy bramy mostu. W sieci MODBUS znajduje się „ro-
dzimy master” i ta sieć jest nadrzędna dla dwóch pozostałych. Sieć CAN jest nadrzęd-
na tylko dla sieci PROFIBUS, w której element master nie występuje (rys.4). CAN
pracuje podobnie jak w układzie „A” z tą różnicą, że master sieci MODBUS może
kontrolować część modułów CAN. Elementy slave o adresach z puli bramy
PROFIBUS-CAN komunikują się za pomocą kierunku CAN(master)◄PROFIBUS i
CAN(master)►PROFIBUS. Natomiast elementy slave o adresach zdefiniowanych dla
puli bramy MODBUS-PROFIBUS wymieniają dane w kierunkach
MODBUS(master)►PROFIBUS oraz MODBUS(master)◄PROFIBUS. W tym przy-
padku standardowe adresy bramy są takie same i po obu stronach (MODBUS,
PROFIBUS) rozpoczynają się od wartości 60.
SLAVE
CAN
SLAVE
MODBUS
SLVE
SL
A
VE
MAS
T
ER
SL
A
VE
MAS
T
ER
SLAVE
MODBUS
RTR
=
0
RT
R
=
0
RT
R=
1
RT
R
=
1
do master Modbus
(do master Profibus)
do adresy_modbus
(do adresy_profibus)
z adresy_modbus
(z adresy_profibus)
master_profibus=false
master_modbus=true
z adresy_can
(z modułów CAN)
do adresy_can
(do modułów CAN)
do master Modbus
(do modułów CAN)
z master Modbus
(z modułów CAN)
do can_profibus_we
(do master Profibus)
z can_profibus_wy
(z master Profibus)
z can_modbus_wy
(z adresy_can)
do can_modbus_wy
(do adresy_can)
master_can=profibus
PROFIBUS
MODBUS
CAN
MASTER
SLAVE
z master Modbus
(z master Profibus)
Rys.2. Schemat układu „C” pracy mostu
Fig.2. Bridge „C” operating diagram
2.4. PRACA MOSTU W UKŁADZIE „D”
Konfiguracja tego układu pracy eliminuje możliwość bezpośredniej wymiany pa-
kietów przez bramę PROFIBUS-MODBUS, podobnie jak w układzie „B” pracy mo-
stu. Różnica, między tymi układami, polega na występowaniu „rodzimych masterów”
w obu tych sieciach. Możliwa jest natomiast komunikacja między tymi sieciami drogą
pośrednią poprzez bramy łączące je z siecią CAN (rys.5), która nie zawiera elementów
nadrzędnych wysyłających komunikaty do innych sieci ale może zawierać elementy
inicjujące transmisję wewnątrz własnej sieci. Elementy te pozbawione są możliwości
generowania komunikatów o identyfikatorach z pul adresów wejściowych i wyjścio-
wych przyporządkowanym sieciom MODBUS i PROFIBUS. W układzie „D” pracy
mostu występują cztery kierunki komunikacji: PROFIBUS(master)►CAN,
PROFIBUS(master)◄CAN, MODBUS(master)►CAN i MODBUS(master)◄ Dla
obu rodzajów błędów można określić prawdopodobieństwo ich wystąpienia. Funkcja
zakłócająca może być wprowadzana dla wybranych pół ramki.
SLAVE
PROFIBUS
SLAVE
CAN
SL
AVE
MAST
ER
SL
AVE
MAST
ER
SLAVE
PROFIBUS
RTR=0
RT
R=
0
RTR=
1
RTR=
1
master_profibus=true
master_modbus=true
z master Modbus
(z modułów CAN)
do master Modbus
(do modułów CAN)
do master Profibus
(do modułów CAN)
z master Profibus
(z modułów CAN)
do can_modbus_we
(do adresy_can)
z can_modbus_wy
(z adresy_can)
z can_peofibus_wy
(z adresy_can)
do can_profibus_we
(do adresy_can)
master_can=brak
PROFIBUS
MODBUS
CAN
SLAVE
SLAVE
MODBUS
W sieci mogą znajdować się węzły nadrzędne
nadające jednak pakiety tylko w obrąbie sieci CAN
Rys.2. Schemat układu „D” pracy mostu
Fig.2. Bridge „D” operating diagram
3. PODSUMOWANIE
Procedura transmisji ramki miedzy sieciami oparta jest na trzech podstawowych
zadaniach: sprawdzenie poprawności ramki, wyznaczenie docelowej sieci i tłumacze-
niu ramki. Sprawdzenie poprawności ramki polega na obliczaniu kodu CRC i ocenie
jego wartości. Wyznaczanie docelowej sieci realizowane jest przez sprawdzanie adre-
su docelowego ramki. Most wyposażony jest w zdefiniowane pule adresów przypo-
rządkowane poszczególnym sieciom. Pule adresowe są „oknami”, przez które dana
sieć „widzi” elementy innej sieci. Tłumaczenie ramki jest procedurą najbardziej za-
awansowaną. Koniczna jest interpretacja typu ramki („request” lub „response”), usta-
wienie odpowiedniej wartości bitu zdalnej transmisji RTR (wysyłanie od elementu
master, RTR=1) a także zastosowanie dodatkowego algorytmu definiującego parame-
try mostu bezpośrednio i pośrednio związanych z sieciami. Opisane układy pracy w
wyczerpujący sposób umożliwiają szeroką symulację komunikacji między zapropo-
nowanymi sieciami. Most został zrealizowany programowo dla środowiska
WINDOWS z przeznaczeniem do laboratorium dydaktycznego.
LITERATURA
[1] BORKOWSKI D., Różnorodność i próby ujednolicenia przemysłowych systemów pomia-
rowo-kontrolnych, http://zm219.zmet.agh.edu.pl
[2] MICHTA E., ADAMSKI A., Protokoły komunikacyjne przemysłowych systemów pomia-
rowo kontrolnych, Zielona Góra, 1997
[3] MICHTA E., Integracja sieci komputerowych a sieciami przemysłowymi, Materiały konfe-
rencyjne Seminarium ZielMAN’1999, Zielona Góra, 1999
[4] MICHTA E., Modele komunikacyjne sieciowego systemu pomiarowo-kontrolnego, Zielo-
na Góra, Wydawnictwo Politechniki Zielonogórskiej, 2000.
[5] PLUCIŃSKA M., Interfejsy komunikacyjne dla czujników inteligentnych,
http://imm.org.pl/biuletyn/file0003.htm
[6] K. Podlejski, K. Brunicki., Zagadnienie komunikacji miedzy sieciami przemysłowymi,
Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych Politechniki Wro-
cławskiej, Wrocław, 2005.
[7] J. Truchard., Systemy kontrolno-pomiarowe w przedsiębiorstwach 21. wieku, „Napędy i
Sterowanie”, wrzesień, 2001.
[7] WWW.
[8] http://
www.ieee.1451.nist.gov
.
[9]
http://profibus.org
.
[10] http://ethernet.industrial-networking.com
VIRTUAL BRIDGE FOR INTERNETWORK COMMUNICATION
The paper presents results four typical systems bridge operation for PROFIBUS, MODBUS and
CAN networks communication. Conversions of data (frames) between networks is currying out into
bridge gateways.