1
Politechnika Krakowska im. T. Kościuszki
INSTYTUT INFORMATYKI STOSOWANEJ
Podstawy obsługi sterownika M91-2-R2C
Mikrokontrolery i
przetwarzanie sygnałów
LABORATORIUM
3 x 45min
Lab. nr 1
1. Cel
Celem ćwiczenia jest zapoznanie się z podstawami pracy ze sterownikiem M91-2-R2C.
2. Budowa sterownika i komunikacja
Sterownik M91 należy do grupy mikrosterowników OPLC - sterowników z wbudowanym
panelem operatorskim (ang. Operating Panel + Programable Logic Controler). Przeznaczony
jest do automatyzacji niewielkich obiektów, zarówno w zastosowaniach przemysłowych jak i
domowych. Może być stosowany do sterowania maszynami technologicznymi i
produkcyjnymi, przenośnikami, liniami pakującymi, piecami, urządzeniami klimatyzacyjnymi,
pompami.
Sterownik M91-2-R2C posiada możliwość przyłączania dodatkowych modułów
rozszerzających poprzez złącze I/O expansion port. Budowa sterownika z wszystkimi
możliwymi dodatkowymi modułami:
• Zasilanie 12 lub 24 V – wymagane jest zewnętrzne źródło napięcia. Sterownik
posiada wbudowaną baterię podtrzymującą pamięć RAM i zegar RTC. Bateria ta ma
żywotność 7 lat.
• Wbudowany dwuwierszowy wyświetlacz LCD z klawiaturą
• Dołączany moduł rozszerzeń I/O (opcjonalnie). Możliwe jest dołączenie maksymalnie
ośmiu modułów rozszerzeń.
• Port komunikacji RS232/RS485
• Moduł UniCAN/CANOpen
• Zintegrowany z panelem moduł I/O zawierający 10 wejść cyfrowych (dwustanowych),
2 wejścia analogowe i 6 wyjść cyfrowych. Wejście dwustanowe mogą funkcjonować
zarówno jako standardowe wejście dwustanowe jak i szybkie wejście licznikowe.
Wejście licznikowe jest wyzwalane opadającym zboczem sygnału. Sterownik M91-2-
R2C posiada 3 szybkie wejścia licznikowe.
Sterownik posiada Panel Operatorski HMI (Human Machine Interface). HMI zawiera 32
znakowy wyświetlacz (2 linie po 16 znaków) do pokazywania parametrów procesu i
komunikatów oraz 15 przyciskową, klawiaturę umożliwiającą nawigację po wyświetlaczu i
wprowadzanie danych.
Ponadto w sterownikach M91 jest możliwość komunikacji po protokole MODBUS na
łączu RS.
3. Komunikacja
3.1 Konfiguracja połączenia ze sterownikiem
Sterownik M91-2-R2C łączy się z komputerem za pomocą portu RS 232.
Aby wprowadzić podstawowe parametry komunikacyjne należy z menu głównego wybrać
zakładkę Controller -> M90 OPLC Stettings (Rys 1).
2
Rysunek 1. Ustawienia komunikacyjne
W oknie tym można również sprawdzić wersję sterownika podłączonego do komputera oraz
wersję zainstalowanego na nim systemu operacyjnego w oknie Version. Można w nim
również ustawić bądź sprawdzić identyfikator wybranego sterownika w oknie Unit ID. Można
uaktualnić lub sprawdzić czas sterownika, zatrzymać, restartować wyczyścić pamięć
zmiennych binarnych i całkowitych (MB & MI) jak również uruchomić sterownik.
3.2 Aktualizacja systemu operacyjnego PLC
Sprawdzenia bądź aktualizacji systemu operacyjnego PLC możemy dokonać wybierając w
menu Controller -> Operating System (Rys. 2).
Rysunek 2. Okno konfiguracji systemu operacyjnego PLC
W oknie tym również można zmodyfikować parametry komunikacyjne takie jak port
komunikacyjny oraz prędkość komunikacji.
3
4. Moduł Hardware Configuration
4.1 Wstęp
Moduł ten umożliwia konfigurację sprzętową sterownika. Z górnego menu należy wybrać
Controller -> HW Configuration
Rysunek 3. Okno konfiguracji sprzętowej
Należy wybrać sterownik M91-2-R2C z bocznego menu (Rys. 3). Zakładki Digital i Aalog
umożliwiają konfigurację dodatkowych modułów rozszerzeń. Numerowanie wejść/wyjść
odbywa się zgodnie ze wzorem:
32+x*16+y
gdzie:
x – numer porządkowy modułu (0-7)
y – licząc od pierwszego modułu numer wejścia lub wyjścia w module (0-15)
Po podaniu odpowiedniego modelu sterownika użytkownik może skonfigurować
odpowiednie wejścia/wyjścia urządzenia. Wejścia/wyjścia cyfrowe nie wymagają dodatkowej
konfiguracji. Jednak, aby uzyskiwać dane z wejść analogowych należy podać nazwy
zmiennych całkowitych, które będą przechowywały wartości pomierzone na tych wejściach.
W przypadku wejść analogowych należy zadeklarować również czy będą to wejścia prądowe
czy też napięciowe. Po ich zadeklarowaniu pojawi się pytanie o zmienną całkowitą.
Podobnie należy postąpić w przypadku szybkich wejść licznikowych (High Speed Input –
HSI).
Wybieramy wejście napięciowe (0-10V) w polu Type. Dla AI0 wybieramy MI1, dla AI1
wybieramy MI2. Od tego momentu wartości tych zmiennych będą równe wartościom
mierzonym napięć mierzonych na odpowiednich wejściach analogowych (w zakresie 1-10V).
4.3 Konfiguracja z poziomu panelu sterownika
4
Na panelu operatorskim znajduje się klawisz "i". Po wciśnięciu i kilkusekundowym
przytrzymaniu klawisza pojawi się prośba o wprowadzenie hasła. Po wpisaniu hasła
dostępowego "1111" mamy możliwość wglądu i częściowej konfiguracji sterownika.
4. Oprogramowanie U90Ladder
4.1 Wstęp
Najnowsze oprogramowanie jest dostępne na stronach:
http://www.unitronics.com/
http://support.elmark.com.pl/
Komunikacja programator U90Ladder odbywa się ze sterownikiem poprzez port szeregowy.
4.1 Edytor języka drabinkowego (Ladder Editor)
Edytor ten służy do programowania w języku drabinkowym jak również oglądania programu
w języku STL (STatement List).
Rysunek 4. Okno programu U90Ladder
4.2 Programowanie drabinkowe (LAD)
Programowanie polega na składaniu odpowiednich elementów w pewną logiczną całość.
Podstawowe elementy i funkcje dostępne w środowisku IDE strownika:
Contacts (Styki) – umożliwiają sprawdzanie stanów poszczególnych rejestrów bitowych.
Coils (Cewki) – Służą do ustawiania stanów zmiennych bitowych.
Compare (Funkcje porównań) – operatory porównania wartości.
Math (Funkcje matematyczne) – zestaw operatoró matematycznych
Logic (Funkcje logiczne) – operatory ligiczne
Clock (Zegar) – zestaw zegarów
Elementy i funkcje
drabinkowe
Nawigator projektu
Edytor drabinek
5
Store (Operacje przeniesienia) – funkcje zapamiętywania i odtwarzania danych.
Loop (Pętla) – bloki ustawiania pętli.
Pisząc program pamiętamy o umieszczaniu każdego szczebla drabinki w odrębnej linii
pamiętając, że każda linia programu realizowana jest w cyklu.
WAŻNE! Należy również pamiętać o dodawaniu komentarzy do zmiennych. Ułatwia to
znacznie ich lokalizację oraz zachowanie porządku w programie.
4.3 Edytor interfejsu graficznego (HMI Display Editor)
Jest to edytor służący do tworzenia ekranów wyświetlanych na panelu sterownika.
Niezależnie od właściwego programu odpowiedzialnego za sterowanie, użytkownik może
odpytywać i zmieniać rejestry. Sterownik M91-2-R2C posiada wyświetlacz dwuwierszowy. W
każdym wierszu mieści się po 16 znaków.
Do edytora przechodzimy poprzez Window -> Displays, albo przez ikonę HMI Dispays.
W okienku Variables określamy wartości wyświetlane, zaś w okienku Jumps realizujemy
warunki skoku do wybranego ekranu.
4.4 Przesyłanie programu
Aby przesłać gotowy program do sterownika z paska menu należy wybrać zakładkę
Controller -> Download lub Controller -> Stop – Download – Reset.
Pierwsza opcja jedynie przesyła program do sterownika, druga zaś wykonuje sekwencję
zatrzymania pracy sterownika, przesłania programu, a następnie zresetowania sterownika.
Możemy również pobrać program ze sterownika, jeśli autor programu nie zablokował nie
zablokował tej możliwości przy wgrywaniu go do sterownika. Pobieranie odbywa się przez
zakładkę menu Controller -> Upload -> Upload lub Controller -> Upload -> Upload From
Network ID ….
5. Struktura Programu
5.1 Podstawowe typy zmiennych
Program ma do dyspozycji najważniejsze typy zmiennych:
I – bit wejścia
O – bit wyjścia
MB – zmienne bitowe (użytkownika)
Odczyt
Wykonanie programu
Ustawienie wyjść
Aktualizacja ekranu
Przerwania
6
MI – zmienne całkowite (użytkownika)
SB – zmienne bitowe (systemowe)
SI – zmienne całkowite (systemowe)
T - zegary
Stan tych zmiennych można podejrzeć poprzez wybranie w oknie nawigatora jednej z pozycji
w folderze Data Types, gdy uruchomiony jest tryb Debug (Controller -> Debug -> Dispay
Only lub Controller -> Debug -> Full M90 OPLC View).
Tabele zmiennych systemowych:
Bity systemowe (SB)
Funkcja
0
1
2
3
4
5
6
10*
30
31
32
33
34
40-53
80*
200*-215*
220*-227*
228-235
236
237*
238
Zawsze 0
Zawsze 1
Włączenie zasilania
Impuls 1 sekundowy
Dzielenie przez 0
Zwarcie na wyjściach sterownika
Klawiatura jest aktywna
Funkcja zerowania licznika jest dostępna
Flaga końca wprowadzania danych z HMI
Flaga końca wprowadzania zmiennej Var1 z HMI
Flaga końca wprowadzania zmiennej Var2 z HMI
Flaga końca wprowadzania zmiennej Var3 z HMI
Flaga końca wprowadzania zmiennej Var4 z HMI
Bity przycisków klawiatury (patrz następna tabela)
Uaktywnienie funkcji linearyzacji
Operandy sieciowe
Wysyłane bity
Odbierane bity
Błąd komunikacji
Sieć nie aktywna
Stacja master aktywna
* zmienne systemowe, które mogą być modyfikowane
Rejestry Systemowe (SI)
Funkcja
0
1
2*
4
6
10*
14*
20
21
28*
30
31
32
33
80*
81*
82*
83*
84*
85
200*-201*
230*-231*
232
Czas skanowania
Licznik 10 ms
Aktualnie wyświetlany komunikat
Znacznik dzielenia
Aktualnie wciśnięty klawisz
Wartość akumulatora szybkiego licznika
Tryb pracy szybkiego licznika
Wejście analogowe 0
Wejście analogowe 2
Wyjście analogowe 0
Sekundnik zegara czasu rzeczywistego RTC
Aktualny czas zegara czasu rzeczywistego RTC
Aktualna data na zegarze czasu rzeczywistego RTC
Aktualny rok na zegarze czasu rzeczywistego RTC
Linearyzacja: współrzędna x1
Linearyzacja: współrzędna x2
Linearyzacja: współrzędna y1
Linearyzacja: współrzędna y1
Linearyzacja: wartość wejściowa X
Linearyzacja: wynik linearyzacji Y
Operandy sieciowe
Wysyłane rejestry
Odbierane rejestry
7
233*
236
237
Maska
Kod błędu transmisji/sieci
Numer ID stacji zgłaszającej błąd
* zmienne systemowe, które mogą być modyfikowane
5.2 Podstawowe instrukcje
Styk ustawiany zboczem
narastającym
Daje na wejściu 1 przy zmianie bitu adresującego z 0 na 1
Styk ustawiany zboczem
opadającym
Daje na wejściu 1 przy zmianie bitu adresującego z 1 na 0
Cewka normalnie
Jeżeli część warunkowa poprzedzająca cewkę równa jest 1
Styk normalnie otwarty
Styk normalnie zamknięty
Styk ustawiany zboczem
narastającym
Styk ustawiany zboczem
opadającym
Cewka normalnie otwarta
Cewka normalnie zamknięta
8
otwarta
cewka przyjmuje wartość 1 w przeciwnym razie 0
Cewka normalnie
zamknięta
Jeżeli część warunkowa poprzedzająca cewkę równa jest 0
cewka przyjmuje wartość 1 w przeciwnym razie 0
Cewka
SET
Cewka jednorazowo ustawia się na stan 1, gdy część
warunkowa przyjmuje stan 1. Gdy część warunkowa zmieni stan
na 0 nie zmieni to stanu cewki.
Cewka
RESET
Cewka jednorazowo ustawia się na stan 0, gdy część
warunkowa przyjmuje stan 1. Gdy część warunkowa zmieni stan
na 0 nie zmieni to stanu cewki.
Poniżej przedstawiony jest przykład zastosowania zmiennych binarnych MB do zapamiętania
stanu wejść cyfrowych i utworzenia warunku na bazie wartości zmiennych MB.
5.3 Instrukcje zegarowe
Zegary są wykorzystywane w następujących sytuacjach:
- zadawanie określonego opóźnienia czasowego
- badanie czasu trwania jakiegoś zdarzenia
- załączanie urządzenia w określonym czasie
Cewka SET
Cewka RESET
9
W przypadku zegara T0 realizującego opóźnienie przełącznik dla wejścia I0 równego 1
powoduje włączenie zegara T0.
Jeżeli upłynął zadany czas 10s, w którym I0 było aktywne styk T0 włączy się. Wyłączenie
przełącznika I0 spowoduje zatrzymanie zegara. Ponowne jego włączenie spowoduje restart
zegara i odliczanie czasu od początku.
W kolejnym przykładzie przedstawione jest odmierzanie czasu między zdarzeniami.
Zastosowane jest tu zliczanie impulsów sekundowych generowanych dla zmiennej
systemowej SB3.
Ostatni przykład przedstawia przypadek załączania oraz wyłączania urządzenia w
określonym czasie.
10
6. Edytor HMI (Human Machine Interface)
6.1 Edycja HMI
Aby przystąpić do programowania wyświetlacza panelu operatorskiego należy wybrać w
oknie nawigatora HMI lub z menu Window -> Displays.
Na ekranie może być umieszczony tekst stały jak również wartości zmiennych użytkownika
bądź systemowych. Aby umieścić zmienne należy zaznaczyć kilka pól znakowych
wyświetlacza (np. 3), a następnie kliknąć prawym klawiszem na zaznaczeniu. Z rozwiniętego
menu należy wybrać polecenie Attach Variable, a następnie podać numer i nazwę
zmiennej. Wartość ta wraz z jej nazwą wyświetli się w oknie Variables.
11
W oknie Jumps ustalane są warunki skoku do innego ekranu. Jeżeli wartość binarna
występująca w tym warunku wynosi 1 to wykonywany jest skok do zadanego ekranu.
W następnym kroku pojawi się okno deklaracji zmiennej (np. Variable 1).
Zmienna ta może mieć charakter dwustanowy (Bit(on/off)), zmiennej całkowitej (Integer),
czasu zegara (Timer), funkcji czasu (Time function), listy elementów (List) bądź też daty i
czasu (Date & Time). Z każdym z tych formatów zmiennych wiąże się określony zbiór
parametrów.
Dla zmiennych binarnych na ekranie mogą być wyświetlane dwa komunikaty w zależności od
wartości bitu zmiennej.
Dla zmiennej całkowitej natomiast można zadeklarować czy będzie ona pobierana z wejścia
analogowego, czy będzie to jakaś zmienna wynikająca z obliczeń i operacji, czy też będzie
ona wprowadzona przez użytkownika.
12
Jeśli będzie wprowadzona przez użytkownika to powinna być zaznaczona opcja Keypad
Entry. Wartość wyświetlanej zmiennej może być proporcjonalna do wartości zmiennej
odniesienia przez zastosowanie opcji Enable linearization.
6.2 Przykład zastosowania
Ekran logowania
W polu DISPLAY 1 wpisać Ekran logowania
W polu wyświetlacza należy wpisać tekst, który ma być wyświetlany np. ID pracownika:
Zmienna ekranowa
W polu wyświetlacza należy zaznaczyć dwa segmenty, a następnie na pasku narzędzi
kliknąć Attach Variable (dołącz zmienną). Otworzy się okno o nazwie Attach Variable.
W nazwie zmiennej należy wpisać np. VR 6 ID pracownika i potwierdzić OK.
Formatowanie zmiennej ekranowej
Zmienna powinna akceptować dwucyfrowe liczby z zakresu od 1 do 10. Należy otworzyć
zmienną ekranową klikając na niej w oknie nawigacyjnym.
Następnie należy wybrać z listy typ zmiennej Integer (liczba całkowita), a następnie kliknąć
przycisk Link To (połącz z). Otworzy się okno Set Link to Int.
Należy wprowadzić numer i nazwę skojarzonej zmiennej całkowitej np. MI 4 Lista imion
pracowników, a następnie kliknąć OK.
W grupie informacji o zmiennej należy zaznaczyć pole Keypad Entry (wprowadzanie z
klawiatury).
Należy zaznaczyć również opcję Start with Clear Field (rozpocznij od pustego pola).
Należy ustawić Entry Limits (zakres zmiennej) od 1 do 10.
13
Tworzenie skoku warunkowego
Należy wybrać Display 1 (komunikat 1) klikając na nim w okna nawigacyjnym.
Kliknąć na polu warunku pierwszego skoku - Jump Conditions. Otworzy się okno edycji -
Define Jump to Condition.
Wybrać z listy warunek skoku - SB30 Keypad entries complete (wprowadzanie danych
zakończone) i kliknąć OK.
Otworzy się okno edycji docelowego komunikatu - Define to Display Jump.
Należy wpisać nazwę docelowego komunikatu np.: DS 2 Potwierdzenie i kliknąć OK.
Formatowanie komunikatu 2
W polu wyświetlacza proszę wpisać słowo Dostęp. Słowo to będzie tekstem stałym
komunikatu 2.
Następnie proszę wpisać słowo weryfi. Słowo to bedze tekstem zmiennym komunikatu 2.
Należy zaznaczyć słowo weryfi.
Kliknąć na pasku narzędzi Attach Variable.
Nazwać zmienną ekranową np. VR 9 Weryfikacja numeru.
W edytorze warunku należy zdefiniować nową zmienną MB 7 Czas na skok do 3 i kliknąć
OK.
Otworzy się okno edycji docelowego komunikatu - Define to Display Jump.
Należy wpisać nazwę docelowego komunikatu - DS 3 Wyświetl imię pracownika
i kliknąć OK.
Należy powtórzyć powyższe czynności celem zdefiniowania drugiego skoku - Jump
Condition 2 wykorzystując jako warunek zmienną MB 8 Czas wrócić do 1, oraz jako
komunikat docelowy komunikat 1.
Formatowanie zmiennej 9
Otworzyć zmienną 9 Varaible 9 z poziomu okna nawigatora.
Z listy typów wybrać zmienną bitową - Bit (on/off). Otworzy się okno edycyjne - Set Link to
Bit.
Wpisać nazwę skojarzonej zmiennej bitowej np.: MB 20 System może pracować i kliknąć
OK.
W polu Text for off (0) wpisac tekst odrzuc.
W polu Text for on (1) wpisz tekst potwie.
Formatowanie komunikatu 3
Należy nazwać komunikat 3 np. Wyświetl imię pracownika
W polu wyświetlacza wpisać stałą część tekstu np.: Witaj.
Zaznaczyć osiem segmentów wyświetlacza celem zarezerwowania miejsca na zmienną
ekranowa, następnie dołącz zmienną np. zmienną 7 - Variable 7 Imię pracownika.
Zdefiniować skok do komunikatu 4 po spełnieniu warunku SB 6 Keyboard is Active
(klawiatura aktywna).
Formatowanie zmiennej 7
Z okna nawigatora należy otwórzyć zmienną 7 - Variable 7.
Z listy typów zmiennej wybreć typ lista - List. Otworzy się okno edycji Set Link to List.
Wybrać i skojarzyć zmienną całkowitą - MI 4 Lista imion pracowników.
W informacji o zmiennej wpisać liczbę 10 (jest to informacja o długości listy - Lines).
Zatwierdzić długość listy przyciskiem APPLY.
Wprowadź imiona pracowników w liniach 0, 1 i 2. W powyższym przykładzie nie ma potrzeby
wprowadzania imion wszystkich pracowników.
14
Program drabinkowy
15