ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

9
  Prace Naukowe Instytutu Maszyn, Napę dów i Pomiarów Elektrycznych Nr 63 Politechniki Wrocławskiej Nr 63 Studia i Materiały Nr 29 2009  słowa kluczowe: MODBUS, LabVIEW Krzysztof PODLEJSKI * , Przemysław MROZEK *  ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS W artykule opisano podstawowe zasady wykorzystania środowiska LabVIEW do realizacji transmisji danych w standardzie MODBUS. Środowisko LabVIEW dostarcza odpowiednich bibliotek i funkcji dla standardu MODBUS, umożliwia pomiary wielu wielkości fizycznych i ich analizę  a tak że ułatwia projektowanie i programowanie sys temów kontrolno-pomiarowych poprzez rozbu- dowane formy graficzne. Wszystkie funkcje realizowane w standardzie MODBUS są  dostę pne w LabVIEW, jednak część z nich wymaga rozbudowania, co pokazano na przykładzie sterowania światłami regulują cymi ruch drogowy na przejściu dla pi eszych. Opracowany program umo żliwia ob- serwacj ę  działania standardu MODBUS, ocenę  poprawności transmisji danych w układzie MASTER – SLAVE, wykrywanie i analizowanie błę dów a tak że ocenę  efektywności działania projektowanego układu, szczególnie z uwzglę dnieniem kryterium bezpieczeństwa sterowanego procesu. 1. WSTĘP Aplikacje napisane w LabVIEW mogą  pracować pod kontrol ą  systemu MS Windows XP, Vista ( tak że systemów Unix, Linux, Mac OS itp.). Środowisko umoż- liwia tworzenie aplikacji działaj ą cych w systemie czasu rzeczywistego na kompute- rach PXI. Posiada mechanizmy pracy sieciowej DataSocket i RemotePanel realizuj ą ce wymianę  danych pomię dzy aplikacjami pracują cymi na różnych komputerach i moż- liwość zdalnego sterowania pracą  rozproszonego systemu. W efekcie mo żliwa jest budowa systemu, w którym diagnozowanie poszczególnych urz ą dzeń odbywa się  w sposób niezależny, poprzez dedykowane do tego celu urz ą dzenia a jednocześnie moż- liwe jest sterowanie danym procesem oraz wymiana informacji pomi ę dzy poszczegól- nymi elementami [1,2,3,4]. W standardzie MODBUS funkcje (rozkazy wysyłane *  Politechnika Wrocławska, Instytut Maszyn, Napę dów i Pomiarów Elektrycznych, 50-370 Wrocław, ul. Smoluchowskiego 19, [email protected]

Transcript of ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

Page 1: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 1/9

 

 

Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych

Nr 63 Politechniki Wrocławskiej Nr 63

Studia i Materiały Nr 29 2009

 

słowa kluczowe: MODBUS, LabVIEW 

Krzysztof PODLEJSKI*, Przemysław MROZEK

ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM

W STANDARDZIE MODBUS

W artykule opisano podstawowe zasady wykorzystania środowiska LabVIEW do realizacji

transmisji danych w standardzie MODBUS. Środowisko LabVIEW dostarcza odpowiednich bibliotek 

i funkcji dla standardu MODBUS, umoliwia pomiary wielu wielkości fizycznych i ich analizę 

a tak e ułatwia projektowanie i programowanie systemów kontrolno-pomiarowych poprzez rozbu-

dowane formy graficzne. Wszystkie funkcje realizowane w standardzie MODBUS są  dostępne

w LabVIEW, jednak część z nich wymaga rozbudowania, co pokazano na przykładzie sterowania

światłami regulują cymi ruch drogowy na przejściu dla pieszych. Opracowany program umoliwia ob-

serwację działania standardu MODBUS, ocenę poprawności transmisji danych w układzie MASTER

– SLAVE, wykrywanie i analizowanie błędów a tak e ocenę efektywności działania projektowanego

układu, szczególnie z uwzględnieniem kryterium bezpieczeństwa sterowanego procesu.

1. WSTĘP

Aplikacje napisane w LabVIEW mogą  pracować pod kontrolą  systemu MS

Windows XP, Vista ( tak e systemów Unix, Linux, Mac OS itp.). Środowisko umo-

liwia tworzenie aplikacji działają cych w systemie czasu rzeczywistego na kompute-

rach PXI. Posiada mechanizmy pracy sieciowej DataSocket i RemotePanel realizują ce

wymianę danych pomiędzy aplikacjami pracują cymi na rónych komputerach i mo-

liwość zdalnego sterowania pracą  rozproszonego systemu. W efekcie moliwa jest

budowa systemu, w którym diagnozowanie poszczególnych urzą dzeń odbywa się w

sposób niezaleny, poprzez dedykowane do tego celu urzą dzenia a jednocześnie mo-

liwe jest sterowanie danym procesem oraz wymiana informacji pomiędzy poszczegól-

nymi elementami [1,2,3,4]. W standardzie MODBUS funkcje (rozkazy wysyłane

__________

* Politechnika Wrocławska, Instytut Maszyn, Napędów i Pomiarów Elektrycznych, 50-370 Wrocław,

ul. Smoluchowskiego 19, [email protected]

Page 2: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 2/9

 

 

przez jednostk ę nadrzędną  oraz interpretowane i wykonywane przez jednostki pod-

rzędne) są  oddzielnym blokiem kodu, który moe być wielokrotnie wykonywanyw danym programie. W MODBUS dzielą się one na funkcje publiczne (standardowe)

i funkcje definiowane przez uytkownika. Na rys.1. został przedstawiony schemat

blokowy polecenia czytaj rejestry wejściowe (ang. Read Holding Register), dostępny

w LabVIEW. Funkcja czytaj rejestry wyjściowe słuy do odczytywania zawartości

(od 1 to 125) rejestrów urzą dzenia podrzędnego. Rejestry tworzą spójny blok w prze-

strzeni adresowej urzą dzenia. Ramka polecenia zawiera adres pierwszego rejestru w

bloku i liczbę rejestrów do odczytania. Kod tej funkcji w trybie RTU jest równy 0000

0100.

Rys. 1. Schemat blokowy polecenia czytaj rejestry wejściowe

Fig. 1. Schematic diagram of control statement read input registers

LabVIEW dostarcza kompletu narzędzi do realizacji transmisji danych w standar-dzie MODBUS [6,7] ale częśc z nich wymaga rozbudowania przy opracowywaniu

rónych aplikacji.

Page 3: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 3/9

 

 

2. APLIKACJA W LabVIEW Z PROTOKOŁEM MODBUS

Załoono, e przykładowa aplikacja ma umoliwić poznanie protokołu MODBUS,

w szczególności funkcji realizują cych proces komunikacji między urzą dzeniami,

obrazować efekty zmian wybranych parametrów, sygnalizować występują ce błędy,

ilustrować sytuacje niebezpieczne i stany awaryjne, umoliwić optymalizowanie dzia-

łania procesu według przyjętych kryteriów. Analiza wybranych zastosowań standardu

Modus i doświadczenie własne, skłoniła autorów do modelowania działania sygnali-

zacji świetlnej przy przejściu dla pieszych, wyposaonej w moliwość ą dania światła

zielonego przez pieszych.

Rys. 2. Schemat blokowy sygnalizacji

Fig. 2. Schematic diagram of the signalling

Podstawowy schemat modelu przedstawia Rys.2, na którym cztery urzą dzenia ty-

pu Slave obrazują  sygnalizację  świetlną  dla pieszych i pojazdów samochodowych.

Urzą dzenie Master nadzoruje proces sterowania sygnalizacją . Ten prosty schemat,

uzupełniony o moliwość  ą dania przez pieszych światła zielonego rozwija się 

w skomplikowany algorytm, budowany według kryterium zachowania bezpieczeństwa

na przejściu. Podstawą algorytmu są zdefiniowane odcinki czasu:

dt1 – czas mierzony od momentu wciśnięcia przycisku skojarzonego ze światłami

dla pieszych do chwili gdy zostanie włą czone światło zielone. W tym czasie zawiera

się interwał dla światła pomarańczowego (dtOrange).

dt2 – czas mierzony od momentu włą czenia światła zielonego dla pieszych do

momentu włą czenia się światła czerwonego, jest to czas jaki potrzebuje pieszy, aby

przejść przez jezdnię. W tym czasie zawiera się interwał migotania tego światła (dt-

Blink).dt3 – czas włą czenia światła czerwonego na przejściu dla pieszych..

Page 4: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 4/9

 

 

dtOrange – czas włą czenia światła pomarańczowego dla aut; czas ten nie ma

wpływu na pomiar czasu dt1 i dt3dtBlink – czas migotania światła zielonego dla pieszych

dtBlinkFreq – częstotliwość migotania

W celu poprawnego funkcjonowania modelu powysze czasy muszą  spełniać na-

stępują ce warunki:

- dt1 > 2 * dtOrange

- dt2 > 2 * dtBlink 

- dtBlink > 2 * dtBlinkFreq

Dodatkowo mona regulować prędkość pojazdów.

Do realizacji urzą dzenia Master w LabVIEW zostały uyte pętle Case i Stacked

sequence oraz pętle for dla urzą dzenia Slave.

Rys. 3. Panel czołowy (animacja)

Fig. 3. The front panel (animation)

Najpierw następuje otwarcie sesji VISA oraz inicjalizacja portów COM (adres, re-

  jestry wejściowe). Master odpytuje urzą dzenie Slave o wybrane dane. Pierwsza se-kwencja przygotowuje dane do formatu ramki w protokole MODBUS. Ramka ta jest

Page 5: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 5/9

 

 

zapisywana do portu za pomocą VISA Write VI. Następnie urzą dzenie Master ocze-

kuje na odpowiedź z urzą dzenia Slave. Odebrane dane muszą  zostać sformatowanetak, aby mona je było przechowywać i odczytywać w LabVIEW. Urzą dzenie Slave

cią gle monitoruje porty, oczekują c polecenia od Master, w tym celu wykorzystano

pętlę czasową . Biblioteka NI MODBUS została zmodyfikowana tak, by moliwe było

 jednoczesne uruchomienie kilku urzą dzeń Slave. Do zobrazowania pracy świateł na

przejściu dla pieszych został utworzony model animacyjny obrazują cy przejście

uliczne (rys.3).

Program Master mierzy czasy stanów świateł i na ich podstawie kontroluje pracę 

czterech programów Slave. Master wykorzystuje 4 porty szeregowe do komunikowa-

nia się z kadym urzą dzeniem Slave (komunikacja peer-to-peer). Kady z programów

Slave wykorzystuje jeden port. Porty mogą być fizyczne, ale dla testów zostały utwo-

rzone porty wirtualne [8] . Interfejs uytkownika dla programu Master składa się z

3 zakładek: Status, Settings i About. Po uruchomieniu wszystkich urzą dzeń Slave przy

starcie, program Master przechodzi do zakładki Status. W lewej górnej części ekranu

zostały umieszczone zielone diody informują ce o poprawności uruchomienia aplikacji

Slave, poprawności otwarcia portu szeregowego po stronie Master (Visa)

i poprawności komunikacji pomiędzy Master a Slave (MODBUS). Wystą pienie błędu

powoduje przejście w stan awaryjny i umoliwia jego lokalizację. Program Master

składa się z siedmiu głównych sekwencji. Pierwsza to odczytania wartości dt1, dt2,

dt3, dtOrange, dtBlink oraz dtBlinkFreq (wprowadzonych przez uytkownika), zaini-

cjowanie zmiennych globalnych i lokalnych oraz ustawienie na panelu frontowym

aut, pieszego oraz zakładek głównych.

W sekwencji drugiej następuje uruchomienie urzą dzeń Slave (świateł) po wybra-

niu przycisku RUN na panelu frontowym. W sekwencji trzeciej następuje zainicjowa-

nie komunikacji między urzą dzeniami Master i Slave. W tej sekwencji odbywa się 

równie sprawdzenie czy odpowiednie porty zostały otwarte (czy jest moliwa komu-nikacja Master – Slave). Master komunikuje się z urzą dzeniami Slave za pomocą  standardu VISA. Na Rys.4 została przedstawiona sekwencja czwarta – jest to schemat

działania kilku pętli równoległych realizują cych program obsługują cy zdarzenia naci-

śnięcia przycisku STOP (SLAVE korzysta z algorytmu sterowania światłami, wpisuje

stany wszystkich świateł i zatrzymuje ruch uliczny ). Ostatnie sekwencje realizują  zatrzymanie i zamykanie aplikacji oraz zapisanie wprowadzonych ustawień. Aplikacja

Slave składa się z trzech sekwencji struktury Case.

W pierwszej sekwencji następuje ustawienie parametrów Slave (adres, wartości re-

 jestrów)oraz otwarcie portów. W drugiej sekwencji występują dwie pętle równoległe

Page 6: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 6/9

 

 

Rys. 4. Diagram działania programu MASTER

Fig. 4. Experimental identification tests running scheme MASTER

Page 7: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 7/9

 

 

(przykładowy diagram na Rys.5). Pierwsza od góry pętla obsługuje komunikację 

(Slave Car czyta z rejestrów a Slave People, ustawia cyfrowe wejście oraz czyta zrejestrów MODBUS). Dolna pętla ustawia stan świateł na podstawie wartości reje-

strów. W trzeciej sekwencji jest realizowane zamykanie portów dla urzą dzeń Slave.

Rys. 5. Diagram działania programu SLAVE PEOPLE

Fig. 5. Experimental identification tests running scheme SLAVE PEOPLE

Page 8: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 8/9

 

 

Wszystkie zdarzenia zwią zane z procedurami sterowania światłami i występują -

cymi błędami są zapisywane w odpowiednim pliku.

3. PODSUMOWANIE

Celem zrealizowanych zadań było przedstawienie właściwości protokołu

MODBUS, jego budowy i działania oraz utworzenie aplikacji opartej na tym protoko-

le w środowisku LabVIEW. Jako model wybrano proces sterowania sygnalizacją  świetlną na przejściu dla pieszych z moliwością  ą dania światła zielonego. Jako kry-

terium poprawności działania modelu przyjęto bezpieczeństwo pieszych. Na tej pod-

stawie napisano algorytm zawierają cy zdefiniowane odcinki czasu regulują ce zmianę 

świateł. Program wyposaono w funkcje sygnalizowania i definiowania błędów cha-

rakterystycznych dla standardu Modbus. Forma graficzna jest animacją  i obrazujeruch pieszych i pojazdów. Takie rozwią zanie „panelu czołowego” umoliwia wizuali-

zację skutków poprawnego i nieprawidłowego dobrania wartości zdefiniowanych

odcinków czasowych. Intencją autorów było tak e zwrócenie uwagi na moliwe kon-

sekwencje stosowania układów zautomatyzowanych nie sygnalizują cych błędów.

W projekcie wykorzystano program Virtual Serial Port Driver dla utworzenia wirtual-

nych portów, niezbędnych do komunikacji między urzą dzeniami Slave oraz Master.

Do realizacji modelu wykorzystano biblioteki środowiska LabVIEW dla protokołu

Modbus , zostały one jednak zmodyfikowane w celu umoliwienia komunikacji urzą -dzenia Master z wieloma urzą dzeniami Slave. Artykuł zawiera podstawowe informa-

cje dotyczą ce symulowania zjawisk występują cych w ruchu drogowym. Pokazuje

moliwości środowiska LabVIEW w wykorzystaniu do tego celu standardu Modbus.

Opracowany program działa na zasadzie definiowania odpowiednich odcinków cza-

sów i nie jest sprzeczny z wymaganiami dotyczą cymi ruchu drogowego, zawartymi wodpowiednich normach i zaleceniach.

LITERATURA

[1] BATKO S., Sieci komputerowe. Topologia sieci, HEXA, Warszawa 2007,

[2] DERE Ń A. , Zastosowanie sieci przemysłowych, Turck, Warszawa 2003,

[3] NORMAN P., Systemy komunikacji w technice automatyzacji, Centralny Ośrodek Szkole-

nia i Wydawnictw Stowarzyszenia Elektryków Polskich, Warszawa 2003.

[4] MIELCZAREK W., Interfejsy cyfrowe, Helion, Warszawa 2004.

[5] SHELDON T., Wielka encyklopedia sieci komputerowych, Robomatic, Wrocław 2003,

[6] www. Modbus.pl

[7] www. LabVIEW.pl[8] www.eltima.pl

Page 9: ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS

5/13/2018 ZAGADNIENIE STEROWANIA RUCHEM ULICZNYM W STANDARDZIE MODBUS - slidepdf.com

http://slidepdf.com/reader/full/zagadnienie-sterowania-ruchem-ulicznym-w-standardzie-modbus 9/9

 

 

THE PROBLEMS OF TRAFFIC LIGHTS CONTROL IN MODBUS STANDARD

The major goal of this essay is to present Modbus’s structure, work and create model which is based

on Modbus in the LabVIEW environment. The new model has to show communication between

Master and Slave tool. User is able to define time parameter and stimulate process of changing traf-

fic lights and it’s dynamics based on new model. The program Virtual Serial Port Driver is used in

this essay. This program enable to create virtual port which is necessary in communication between

Master and Slave and modify library for Modbus in LabVIEW. The purpose of this essay is to under-

line inefficient daily use of traffic lights. Defects in traffic light configuration causes difficulties in

every day routine, and create traffic jam. User can use new model to set up different times of chang-

ing traffic lights and change cars’ speed. Results of this experiment can improve traffic and assist in

correct set up of traffic lights.