sprawko AiSKSS Data Access Server(DAServer Wonderware).doc

(590 KB) Pobierz



 

Akademia Górniczo-Hutnicza

w Krakowie

Kierunek:

AiR

Specjalność:

KSS

 

Rok akademicki:

    2008/2009

Algorytmy i Struktury Komputerowych Systemów Sterowania

Data wykonania:

7.01.2009 r.

Rok studiów:

5

Temat:

Serwery danych procesowych TCP/IP

Data Access Server(DAServer Wonderware)

 

Ocena:

 

Wykonał:   Sawa Paweł

                   Swatek Maciej     

                   Skórski Marek

 

 

1.     Wstęp

 

              Celem projektu jest utworzenie połączenia pomiędzy sterownikiem PLC RX3i a środowiskiem SCADA. Wymianę danych uzyskujemy za pomocą protokołu TCP/IP na sieci Ethernet. W sterowniku zaimplementowaliśmy prostą emulację trzech zbiorników z pompą. Zawory i pompa jest sterowana za pomocą przełączników w module sterownika PLC. Z poziomu środowiska SCADA możliwe jest włączenie automatycznego sterowania zaworami i pompą.

 

 



Rys. 1 Widok okna podglądu procesu w systemie SCADA – InTouch 10.0

 

 

 

 

2.     DASever

 

Rys. 2 Schemat działania środowiska ArchestrA

              Wondareware Software Solution pomaga w pełnym integracji zarządzania i sterowaniem linią produkcyjną. Dzięki budowie modułowej w prosty sposób integruje się cały system. Aplikacje InTouch dzięki DAServer mogą się komunikować z dowolnym sterownikiem.

              DAServer – jest to serwer zawierający sterownik umożliwiający połączenie się systemy ArchestrA z różnymi rodzajami sterowników.

              Użytkownik nie musi się zajmować problemami związanymi z komunikacją z urządzeniem docelowym gdyż zajmuje się tym DAServer. Konfiguracja jest znacznie uproszczona dzięki zastosowaniu narzędzia SMC (System Management Console). Aplikacje InTouch mogą komunikowac się z serwerem za pomocą systemu OPC lub SuitLink. Dostęp do danych z sterowników,  w większości przypadków polega na użyciu nazwy referencyjnej używanej w danym typie sterownika. Tak jest w przypadku sterowników rodziny GE Fanuc.

              Dla rodziny urządzeń GE Fanuc używamy serwera GESRTP DAServer. Używa on protokołu SRTP do komunikacji z urządzeniami. Protokół ten gwarantuje spełnienie zależności czasowych oraz dotarcie wszystkich pakietów (potwierdzanie dotarcia pakietu).

              Nomenklatura odnośników do danych jest przedstawiona na liście poniżej. Jest ona identyczna z nazwami używanym podczas programowania sterownika. W przypadku sterowników Simens, nazwy się trochę różnią od tego używanego w samym sterowniku.

              Nazwy używane podczas komunikacji z sterownikami GE Fanuc za pomocą GE SRT DAServer:

u    Zmienne bazowe:

Ø      In – dyskretne wejścia

Ø      On lub Qn  - dyskretne wyjścia,

Ø      Tn  - dyskretna tymczasowa

Ø      Mn  - dyskretna zapamiętywana

Ø      Gn  - globalna

Ø      GAn – globalna z tablicy A(B … E)

Ø      Wn  - PLC WORD rejestr

Ø      Rn - PLC rejestr

Ø      Inne…

u    Zmienne stanu urządzenia:

Ø      Run

Ø      FTStatus

Ø      IOStatus

Ø      Time

Ø      SweepTime

Ø      State

Ø      inne..

              SMC umożliwia również konfiguracje połączeń z serwerami danych, systemami obsługi alarmów i dodawanie obiektów InBatch w celu zgodności komunikacji.

 

3.     Sterownik PLC

 

              Nie zostanie tutaj przedstawiony schemat logiki PLC gdyż nie na tym skupia się projekt. Wystarczy wspomnieć, że napełnianie zbiorników jest realizowane za pomocą najprostszej inkrementacji rejestru zawierającego poziom danego zbiornika.

 

              Powinniśmy się skupić głównie na tym jak skonfigurować sterownik PLC, aby mógł on współpracować z środowiskiem SCADA za pomocą TCP/IP. Pierwszym i jedynym warunkiem jest aby sterownik posiadał moduł ethernet i był on skonfigurowany. Na rysunku 2 przedstawiono widok konfiguracji takowego modułu. Naszym zadaniem jest uzupełnienie danych dotyczących adresu ip, bramy i maski sieci. Adres IP sterownika będzie nam potrzebny do skonfigurowania serwera w celu ustalenia z jakim urządzeniem ma się komunikować.

             

              W przypadku sterownika PLC firmy GE FANUC konfiguracja komunikacji kończy się na tym etapie. Należy również sporządzić sobie tabele danych z zmiennymi (rejestry, porty wejścia, wyjścia),  które chcemy odczytywać lub zapisywać. Komunikacja będzie polegać na podanie programowi z poziomu SCADA nazw zmiennych czyli np. R1, M7, I81, AI2 itp.



Rys. 3 Okno konfiguracji modułu IC695ETM001 (port Ethernet)

 

4.     Środowisko SCADA

 

              Wondarewere InTouch komunikuje się z sterownikami za pomocą serewrów I/O pod ogólną nazwą DAServer, które są zbudowane na technologii ArchestrA. Dodatkowo dostarczony jest narzędzie do zarządzania serwerami ArchestrA Management Console. DAServery pozwalają komunikować się z urządzeniami za pomocą różnych protokołów Ethernet TCP/IP, ProfiBus, DeviceNet, ModBus Plus, CanOpen Serial i inne. Dla danego sterownika przemysłowego  trzeba zainstalować odpowiedni serwer. Obecnie Wonderware wspiera sterowniki firm Allen-Bradley, Siemens, Schneider, Mitsubishi, GE Fanuc, Omron i innych.

 

              W naszym przypadku musimy użyć dodatku Wonderware GESRTP DAServer 1.5, gdyż służy on do komunikacji z urządzeniami firmy GE FANUC. W celu konfiguracji połączenia należy otworzyć program  ArchestrA Management Console.

 

 

5.     Konfiguracja.

 

              Odnajdujemy serwer odpowiedzialny za nasze połączenie Archestra.DASGESRTP i dodajemy nowy port (Add GESRTP_PORT object - rysunek 4). Po zaznaczeniu pola Configuration można edytować główne parametry serwera a w szczególności czas odświeżania danych (Device Group Update Interval), który jest wyrażony w milisekundach.



Rys. 4 Dodawanie nowego portu do serwera.



Rys. 5 Dodanie nowego sterownika PLC do serwera.

 

              Po dodaniu portu należy dodać również obiekt do komunikacji (rysunek 5). W nowym oknie należy skonfigurować sterownik. W tym celu na liście trzeba mieć zaznaczony najniższy obiekt z drzewa ArchestrA.DASGESRTP.1 pod nazwą domyślną New_GEFANUC_PLC_000. Na rysunku 6 widzimy okno konfiguracji. W pozycji 1 należy wybrać rodzaj sterownika w naszym przypadku PACSystems RX3i. W pozycji 2 wpisujemy adres IP sterownika, ten jaki wpisaliśmy mu w konfiguracji modułu ethernet.

 



Rys. 6 Konfiguracja połączenia z sterownikiem PLC

 

Pozostało nam teraz jedynie dodanie w zakładce Device Items (rysunek 7) kanału komunikacji, którego nazwa posłuży nam w dalszej części do komunikacji z sterownikiem.

 



Rys. 7 Konfiguracja kanału komunikacji z sterownikiem.

 

              W celu stworzenia innych konfiguracji dla danego serwera należy zarchiwizować obecną konfiguracje poprzez zaznaczenie pola Configuration i w popupmenu kliknięcie w Archive configuration Set i nadajemy nazwę naszej konfiguracji. W celu odzyskania starych ustawień wybieramy Use Another Configuration Set-> nazwa naszej konfiguracji.

             

 

Zosało nam jedynie uruchomienie serwera. Klikamy prawym klawiszem i Connect. Zielony ptaszek przy ikonce serwera oznacza prawidłowe połączenie. Podczas działania ArchestrA Management Console (AMC) nie można uzyskać pełnych prędkości działania serwerów gdyż jest to program konfiguracyjny a nie właściwy serwer. Po wyłączeniu AMC serwer może uzyskać pełną prędkość komunikacji jaką ustawiliśmy w konfiguracji.

 

 

6.     Konfiguracja projektu w Window Maker

 

 

              Konfiguracja połączenia w Window Maker polega na tym samym co utworzenie komunikacji z dowolnym programem. Wybieramy Special-> Acces Names... i dodajemy nowe połączenie (rysunek 8).

 



Rys. 8 Dodawanie połączenia danych z inną aplikacją

 

W Nowym oknie ustawiamy nazwę aplikacji, w tym przypadku dasgesrtp (nazwa serwera) oraz nazwę kanału, którą my skonfigurowaliśmy w serwerze na channel1 (Rysunek 9).



Rys. 9 Konfiguracja wymiany danych z aplikacją.

 

              Sama komunikacja odbywa się już w bardzo prosty sposób. Dodajemy nową zmienną w Tagname Dictionary i nadajemy jeden z typów z przedrostkiem I/O, który oznacza komunikacje z portami. Typ zmiennej zależy jaką zmienną chcemy odczytać dyskretną, typu word czy inną. Możemy dodatkowo zezwolić na zapis i odczyt lub tylko na sam odczyt zmiennej. Następnie należy ustawić nazwę dostępu Access Name. W naszym przypadku łącze z aplikacją nazwaliśmy do_serwera. W polu Item należy podać nazwę zmiennej z którą chcemy się połączyć (rysunek 10). Nomenklatura nazwy obowiązuje taka jak w sterownikach PLC np. %M1, %R2, %I81 itp.

 



Rys. 10 Konfiguracja zmiennej.

 

              W ten sposób zrealizowaliśmy prostą aplikację, która przedstawia poziomy zbiorników i stany zaworów. Lampki po prawej (rysunek 11) przedstawiają stan przełączników od 1 do 4 sterownika PLC, które również odpowiadają za otwieranie zaworów w trybie manual (przełączanym za pomocą przycisku 0/1).

 

 



Rys. 11 Aplikacja podglądu stanu zbiorników i zaworów.

 

              W aplikacji reprezentowane są obok zaworów wartości ograniczeń pojemnościowych zbiorników, które są podawane z urządzenia ale można je zmieniać i zmiany zostaną przesłane do sterownika. Otwarte zawory są reprezentowane za pomocą czerwonej obwódki. W przypadku poniżej otwarte są dwa zawory 1 i 3, a pompa nie działa, również włączone są przełączniki 2 i 3 na module wejść sterownika. Na rysunku 1 jest przedstawiony inny stan rzeczy, włączony jest zawór 2 oraz pompa.

 

 

7.     Wymiana Danych

 

              Wymiana danych jest inicjalizowana przez serwer i następuje w określonych momentach czasu określonych w konfiguracji serwera. Wynika z tego, że odczytujemy dane jedynie z sterownika z pętli gdy nastąpiła komunikacja. Zapis danych w okresie szybszym niż okres wymiany danych serwera nie ma sensu gdyż sterownik otrzyma tylko te dane które zostały ustawione w czasie przesyłu danych a nie w innych momentach. Zapis do zmiennej nie oznacza ustanowienia połączenia ze sterownikiem.

 

 

8.     Zrealizowany przykład komunikacji

 

              Na rysunku 11 widać postac panelu zrealizowanego w środowisku InTouch, który wyświetla  poziomy zbiorników wraz z stanem zaworów. Możliwe jest włączenie trybu automatycznego, który nie realizuje żadnego realnego sterownika jedynie otwieranie i zamykanie zaworów w przypadku przekroczenia dopuszczalnych stanów.

              W sterowniku jest zrealizowany prosty układ symulujący zbiorniki. Zrealizowaliśmy go za pomocą bloków dodawania i odejmowania, które operowały na rejestrze oznaczającym poziom danego zbiornika. Zrealizowana została również logika odpowiedzialna za tryb automatyczny, w którym to zostaje odłączona możliwość ręcznego włączania zaworów za pomocą przełączników w module wejść sterownika RX3i. Tryb automatyczny jest realizowany na zasadzie sprawdzania poziomów w poszczególnych zbiornikach. W przypadku przekroczenia dolnego zakresu lub górnego otwierany jest odpowiedni zawór lub włączana jest pompa. Nie przedstawiamy logiki gdyż jest ona jedynie przykładem dość banalnym i nie była ona głównym zadaniem naszego projektu. Program w języku drabinkowym można zobaczyć w samym projekcie dla sterownika pod nazwą RX3i_SaSwSk, który jest dostarczony na płycie z projektem.

 

 

9.     Charakterystyka protokołu TCP/IP

              TCP/IP (ang. Transmission Control Protocol / Internet Protocol) jest pakietem najbardziej rozpowszechnionych protokołów komunikacyjnych współczesnych sieci komputerowych. Jest to najczęściej obecnie wykorzystywany standard sieciowy, stanowiący podstawę współczesnego Internetu. Nazwa pochodzi od dwóch najważniejszych jego protokołów: TCP oraz IP.

TCP/IP jest standardem komunikacji otwartej. Otwartość oznacza tu możliwości komunikacji między dowolnymi typami urządzeń, bez względu na ich fizyczną różnorodność.

Protokoły te mają następujące cechy charakterystyczne:

·         dobrą odtwarzalność po awarii

·         możliwość dodawania nowych sieci bez przerywania pracy istniejących

·...

Zgłoś jeśli naruszono regulamin