symulator sym-ps4 sterownika programowalnego ps4-201-mm1

Transkrypt

symulator sym-ps4 sterownika programowalnego ps4-201-mm1
SYMULATOR SYM-PS4
STEROWNIKA PROGRAMOWALNEGO PS4-201-MM1
Ireneusz MOSOŃ, Krzysztof ŻUKOWSKI #
Politechnika Gdańska, ul. G. Narutowicza 11/12, 80-952 Gdańsk
tel: (0-58) 347-14-85 fax: (0-58) 341-08-80 e-mail: [email protected]
#
Simex Sp. z o.o., ul. Wielopole 7, 80-556 Gdańsk
tel: (0-58) 762-07-77 fax: (0-58) 762-07-77 e-mail: [email protected]
W referacie przedstawiono opis opracowanego programowego symulatora Sym-PS4
sterownika programowalnego PS4-201-MM1. Symulator umożliwia tworzenie i testowanie
programów sterowania napisanych dla samego sterownika, jak również programów
napisanych dla sterownika z dołączonymi do niego modułami rozszerzenia lokalnego LE4.
Symulator posiada możliwość dołączania do niego tworzonych modeli sterowanych obiektów
i pozwala na symulację działania programu sterowania łącznie z symulacją dołączonego
obiektu. Symulator Sym-PS4 może być wykorzystywany nie tylko do nauki programowania,
ale również do testowania fragmentów większych programów sterowania.
1. WPROWADZENIE
W cyklu tworzenia oprogramowania, również i tego przeznaczonego dla sterowników
programowalnych (ang. Programmable Logic Controllers - PLC), bardzo ważną rolę
odgrywa testowanie. Im większy jest kod programu, większa liczba elementów
oprogramowania i powiązań między nimi, tym trudniej jest w programie wykryć i
zlokalizować błędy.
Testowanie oprogramowania to sprawdzanie jego działania przy zmianach wielkości
wejściowych które występują podczas normalnej pracy sterowanego urządzenia lub linii
technologicznej oraz dla takich wielkości wejściowych, które mogą wystąpić w stanach
awaryjnych. W przypadku oprogramowania sterowników programowalnych testowanie
często wymaga pracy ze sterownikiem lub całym systemem automatyki.
Do sprawdzenia poprawności działania programu można także użyć symulatora
sterownika [1-4], jednak w sposobie tym wiele zależy od dokładności z jaką symulator
odzwierciedla rzeczywisty sterownik. Wstępne uruchomienie programu na wirtualnym
sterowniku często odbywa się znacznie szybciej niż uruchamianie programu w sterowniku
zainstalowanym już w układzie sterowania uruchamianego obiektu sterowania.
Wykorzystanie symulacji do wstępnego uruchomienia oprogramowania pozwala
ponadto obniżyć koszty uruchomienia, a także wyeliminować lub chociażby ograniczyć
liczbę i skutki ewentualnych awarii których przyczynami mogłyby być błędy w programie
sterowania.
2. STEROWNIKI PROGRAMOWALNE PS4-201-MM1
Sterowniki programowalne PS4-201-MM1 [5] dla których został stworzony
symulator Sym-PS4 [4], są sterownikami kompaktowymi przeznaczonymi do
różnorodnych zadań automatyzacji – od małych układów sterowania do rozbudowanych
systemów sterowania, w tym szczególnie systemów sterowania zdecentralizowanego [6].
Sterownik PS4-201-MM1 posiada dwa wejścia analogowe i jedno wyjście analogowe
oraz 8 wejść i 6 wyjść binarnych. Wejścia analogowe (0÷10V) mają rozdzielczość 10
bitów, a wyjście analogowe (0÷10V) ma rozdzielczość 12 bitów. Sterownik ma jedno
wejście szybkiego licznika zliczające impulsy o częstotliwości do 3kHz i jedno wejście
alarmowe działające na zasadzie wejścia przerywającego. Ma też dwa zadajniki
potencjometryczne. Wartości analogowe z potencjometrów, tak samo jak i dla wejść
analogowych są przetwarzane i odczytywane z dokładnością 10 bitów. Szybkość
wykonywania programu przez sterownik wynosi 5ms na tysiąc instrukcji logicznych.
Uniwersalność tego sterownika w zakresie zastosowań wynika przede wszystkim z
bardzo dużych możliwości rozbudowy systemu sterowania w oparciu o moduły zewnętrzne
EM4 i moduły rozszerzenia lokalnego LE4, oraz z odpowiednio dużej pojemności pamięci
przeznaczonej na dane i program użytkownika.
W programie symulacyjnym uwzględniono wymienione powyżej charakterystyki
techniczne sterowników PS4-201-MM1 za wyjątkiem możliwości budowy sieci. Można
natomiast dołączyć do sterownika moduły LE4 służące do lokalnego rozszerzenia systemu
sterowania o dodatkowe wejścia/wyjścia.
Do programowania sterowników PS4-201-MM1 służy, zgodne z normą
międzynarodową IEC 61131-3 [7,8], oprogramowanie narzędziowe Sucosoft S40 [9].
Oprogramowanie to składa się z okna głównego (nawigatora) wspomagającego tworzenie i
organizację projektów oraz z okien pomocniczych służących do: tworzenia konfiguracji
układów sterowania, deklarowania zmiennych i edycji programu, komunikacji ze
sterownikiem oraz testowania i modyfikacji programu zapisanego w pamięci sterownika w
trybie on-line.
3. PROGRAM SYMULACYJNY SYM-PS4
Do stworzenia programu symulatora Sym-PS4 wybrane zostało zintegrowane
środowisko Delphi. Zapis programu odbywa się w języku Pascal z uwzględnieniem
możliwości użycia obiektów przewidzianych dla tego języka. Program Sym-PS4
przeznaczony jest do pracy w środowisku Windows.
Tak jak wszystkie aplikacje Windows, program symulatora Sym-PS4 składa się z
okien. Główne okno, na wzór oprogramowania narzędziowego Sucosoft S40, można
nazwać oknem nawigacyjnym, gdyż to ono zapewnia możliwość poruszania się po
programie. Jest ono interfejsem pomiędzy użytkownikiem a programem. Pozostałe okna
stworzone w aplikacji spełniają swoje zadania w powiązaniu z oknem głównym.
Podstawowym zadaniem symulatora Sym-PS4 jest dokładne odtworzenie działania
sterownika programowalnego. Uwzględniając wymagania stawiane oprogramowaniu
symulacyjnemu program posiada również narzędzia umożliwiające konfigurację
sterownika, edycję programu sterowania, otwieranie okien podglądu symulacji i wartości
zmiennych a ponadto, w stosunku do oprogramowania Sucosoft S40, został wzbogacony o
możliwość podglądu miejsca wykonywania programu i wykonywanie programu krok po
kroku, oraz możliwość dołączenia modeli obiektów sterowania.
Symulator sterownika Sym-PS4 realizuje nie tylko symulację, ale jest również
wydajnym edytorem do tworzenia programów sterowania. Program uwzględnia
wymagania zawarte w normie IEC 61131-3 [7,9] dotyczące struktury programów oraz
języków programowania sterowników. Symulator wspomaga tworzenie i testowanie
wszystkich elementów oprogramowania – programów (ang. Program - P) a także bloków
funkcyjnych (ang. Function Block - FB) i funkcji (ang. Function - F) będących elementami
pozwalającymi ograniczyć złożoność kodu aplikacji.
Program symulatora Sym-PS4 można podzielić na dwie funkcjonalne części: edytor i
symulator sterownika.
Edytor w programie symulacyjnym został tak zaprojektowany, aby praca z nim
możliwie najbardziej przypominała pracę z programem Sucosoft S40. Dzięki dużemu
podobieństwu zasad edycji programista znający oprogramowanie narzędziowe Sucosoft
S40 nie powinien mieć problemów wykorzystując do pisania programów edytor
symulatora Sym-PS4. Edytor jest odpowiedzialny za poprawność składniową, dlatego też
jest wyposażony w procedury do wykrywania błędów. W zależności od preferencji
programista może wybrać język programowania: listę instrukcji (ang. Instruction List – IL)
lub schemat drabinkowy (ang. Ladder Diagram – LD); ten ostatni z uwagi na ograniczenia
języka może być łączony z listą instrukcji i schematem bloków funkcyjnych. Przełączanie
między dostępnymi formami wyświetlania może odbywać się w trakcie edycji. Pisanie
programu ułatwiają skróty klawiszowe, paski narzędzi oraz opcje pozwalające na
kopiowanie i usuwanie całych partii kodu.
Druga z funkcjonalnych części Sym-PS4 to symulator sterownika. Ma on za zadanie
interpretację programu i umożliwia komunikację ze światem zewnętrznym
(użytkownikiem). Na Rys.1 przedstawiono widok panelu wirtualnego sterownika PS4-201MM1 z trzema modułami rozszerzenia lokalnego LE4 (na rysunku widoczny jest tylko
sterownik i jeden moduł rozszerzenia lokalnego).
Symulator wykonuje program według zasad obowiązujących w sterowniku. Cykl
programowy jest w nim jednak uproszczony, gdyż obejmuje jedynie:
• odczytanie stanów wejść;
• wykonanie programu;
• uaktualnienie stanów wyjść.
Program wykonuje się w czasie nieco dłuższym niż w normalnym sterowniku
(porównanie dla programu zainstalowanego i testowanego na komputerze typu IBM/PC,
400MHz, 32MB RAM), jednak w pracy z symulatorem nie ma to większego znaczenia.
Uzyskany czas cyklu symulatora został osiągnięty dzięki przetłumaczeniu języka listy
instrukcji na postać liczbową. Postać taka pozwala na szybkie wybieranie wykonywanej
instrukcji i docieranie do jej parametrów.
Symulacja działania sterownika opiera się na cyklicznym wywoływaniu
interpretera listy instrukcji. Obiekt interpretera Tsimulation (odpowiedzialny za
symulację) działa równolegle z aplikacją główną programu symulacyjnego. W fazie
tworzenia tego obiektu przygotowywana jest postać numeryczna programu, oraz tworzone
są: ukonkretnienia obiektów odwzorowujących bloki funkcyjne, obiekty przechowujące
wartości zmiennych, obiekt naśladujący działanie rejestrów sterownika oraz jego pamięci.
Można powiedzieć, że cała struktura wirtualnego sterownika jest tworzona w chwili
uruchamiania symulacji. Taki sposób uruchomienia eliminuje nadmierne wykorzystywanie
pamięci. Uruchomienie symulacji to
również
stworzenie
wewnętrznej listy
instrukcji
P1
P2
Rys.1. Widok panelu witrualnego sterownika
składającej się z liczb oznaczających symulowane funkcje. Ta zastępcza lista instrukcji
pozwala zmieścić około 300000 instrukcji. Przetłumaczony program ma postać bardziej
przystosowaną do wykonywania przez interpreter symulatora. Każda instrukcja zawiera
indeks pozwalający zlokalizować ją w pierwotnej liście instrukcji. Indeksy
wykorzystywane są w uruchamianiu symulacji z podglądem listy instrukcji.
4. MOŻLIWOŚCI I WYKORZYSTANIE SYMULATORA
Symulator Sym-PS4 został wyposażony w narzędzia do edycji programów
sterowania, dzięki którym można tworzyć nowe programy, dokonywać edycji wcześniej
utworzonych programów, zapisywać je na dysk w postaci plikowej i ponownie
odczytywać. Forma deklaracji zmiennych i prezentacji programu może być wybrana przez
użytkownika spośród dwóch języków programowania: listy instrukcji i schematu
drabinkowego, a realizowane jest to poprzez przyciski wyboru formy prezentacji. W
zależności od aktualnie wybranego rodzaju okna program udostępnia odpowiednie
przyciski na listwie narzędziowej. Ograniczenie liczby przycisków (opcji programu
dostępnych w danej chwili) stanowi duże ułatwienie w pierwszych kontaktach z
programem.
Jeśli istnieje potrzeba przetestowania programu razem ze sterowanym urządzeniem
można posłużyć się jednym z modeli dołączonych do symulatora lub stworzyć model
własnego obiektu sterowania.
Wybranie w konfiguracji wirtualnego sterownika symulacji z modelem powoduje, że
przez program czytane są sygnały z modelu, a zablokowane jest wówczas wprowadzanie
sygnałów z panelu sterownika. Sygnały z modelu wybierane są w programie na podstawie
tabeli połączeń.
Przykładem takiego modelu obiektu jest model asynchronicznego silnika liniowego
na bieżni liniowej. Na Rys.2 przedstawiono okno modelu tego silnika na bieżni.
Sterowanie omawianym silnikiem liniowym jest jednym z tematów zajęć projektowych z
przedmiotu „Sterowniki programowalne” [10]. Dzięki modelowi silnika liniowego
możliwe jest uruchomienie programu sterowania cyklami jazdy silnika liniowego na bieżni
liniowej i w miarę pełne jego przetestowanie, jeszcze przed uruchamianiem programu na
rzeczywistym obiekcie sterowania.
Rys.2. Okno modelu silnika liniowego
Podłączenie do wirtualnego sterownika modelu obiektu pozwala testować program w
warunkach bardziej zbliżonych do rzeczywistych. Odpowiednio zbudowany model
pozwala także zbadać zachowanie się programu w sytuacjach awaryjnych.
5. PODSUMOWANIE I WNIOSKI KOŃCOWE
Stworzony program symulacyjny pozwala na usprawnienie testowania programów
napisanych na sterownik PS4-201-MM1 (ew. sterownik z modułami rozszerzenia
lokalnego LE4). Jest przeznaczony nie tylko do nauki programowania na przykładzie
prostych programów sterowania, ale również do pisania i testowania bardziej złożonych
programów sterowania, a także do testowania większych programów w częściach.
Uruchomienie programu na wirtualnym sterowniku często odbywa się znacznie szybciej
niż na obiekcie sterowania.
Wstępna analiza problemu testowania programów narzuciła konieczność wyposażenia
symulatora w dodatkowe opcje podglądu zmiennych, dodatkowy, w porównaniu z
rzeczywistym sterownikiem, tryb pracy symulatora i w modele sterowanych obiektów.
Dzięki temu Sym-PS4 stał się narzędziem bardzo funkcjonalnym, pozwalającym
uruchamiać programy i obserwować panel sterownika oraz działanie urządzeń którymi
steruje. Użycie programu Sym-PS4 pozwala w pełni przetestować program.
Program Sym-PS4 realizuje wszystkie niezbędne dla symulacji funkcje i oferuje
przyjazny interfejs. Edytor programu zbliżony jest do stosowanego w oprogramowaniu
Sucosoft S40. Doskonale nadaje się do szybkiego tworzenia niewielkich aplikacji i ich
testowania. Ułatwienia edycyjne znacznie przyspieszają pracę z programem, a zawarte w
programie pliki pomocy dają odpowiedzi na większość pytań związanych z programem.
6. BIBLIOGRAFIA
1. Teach Ladder Logic Programming without the Expense of Buying PLC Equipment:
http:/www.bytronic.co.uk/ladsim.htm;
2. Król A., Moczko-Król J.: S5/S7 Windows. Programowanie i symulacja sterowników
PLC firmy SIEMENS. Wydawnictwo Nakom, Poznań, 2000, s. 383.
3. Tarnawski J.: Symulator sterownika programowalnego. Praca dyplomowa. Opiekun
pracy: dr inż. W Chotkowski. Politechnika Gdańska, Wydz. Elektrotechniki i
Automatyki, Gdańsk, 1999.
4. Żukowski K.: Symulator sterownika programowalnego PS4-201-MM1. Praca
dyplomowa. Opiekun pracy: dr inż. I. Mosoń. Politechnika Gdańska, Wydz.
Elektrotechniki i Automatyki, Gdańsk, 2001.
5. Automation Systems and Drives. Main Catalogue 2001/2002. Moeller GmbH, Bonn,
01/2001, HPL0213-2001/2002GB.
6. Mosoń I.: Sterowniki programowalne PS4 w zdecentralizowanych systemach
sterowania. Elektroinstalator. Automatyka. 1996, Nr 11, s.27-30.
7. Norma PN-IEC 1131-3. Sterowniki programowalne. Języki programowania.
8. Legierski T., Kasprzyk J., Hajda J., Wyrwał J.: Programowanie sterowników PLC.
Wydawnictwo Pracowni Komputerowej Jacka Skalmierskiego, Gliwice, 1998, s. 521.
9. Einwag H., Kastner E.: Compliance with the Standard. Sucosoft S40. IEC Features.
Klockner-Moeller GmbH, Bonn, 12/97, AWB 27-1310-GB.
10. Mosoń I.: Wybrane aspekty wprowadzenia do dydaktyki przedmiotu Sterowniki
Programowalne. „Zastosowanie komputerów w dydaktyce ’99”, IX cykl seminariów
zorganizowanych przez PTETiS Oddział w Gdańsku, Zesz. Nauk. Wydz.
Elektrotechniki i Automatyki Politechniki Gdańskiej Nr13, 1999, s.101-106.
SIMULATOR SYM-PS4
OF PS4-201-MM1 PROGRAMMABLE CONTROLLER
A description of the developed program simulator Sym-PS4 of PS4-201-MM1
programmable controller is presented in the paper. This simulator enables creation and
testing of control programs written for the programmable controller itself and programs
created for the controller with local expansion modules LE4 connected to it. The simulator
has a possibility of incorporating created models of controlled objects and therefore enables
testing of control programs together with simulation of these objects. Sym-PS4 can be used
not only for learning of programming but also for testing longer control programs in parts.

Podobne dokumenty