You are on page 1of 98

Zbir zada dla sterownikw

GE-Fanuc serii 90-30/VersaMax/Micro


wraz z przykadami rozwiza
Uwaga:

Zadania zamieszczone w tym zbiorze mona zrealizowa uywajc ju najmniejszego


sterownika serii VersaMax Nano (np. IC200NDR001), jedynie zadanie 5 - ze wzgldu na
liczb wej wymaga zastosowania modelu IC200UDR005 lub wikszego i zadanie 9 -
ze wzgldu na konieczno zastosowania wej i wyj analogowych przy podczeniu
do rzeczywistego obiektu regulacji wymaga zastosowania sterownika IC200UAL006.
Kade zadanie da si oczywicie zrealizowa na sterowniku serii VersaMax lub 90-30.
Do napisania programw sterujcych dla sterownikw wykorzystano oprogramowanie
Cimplicity Machine Edition Logic Developer PLC. Wszystkie zamieszczone programy
zostay przetestowane w dziaaniu.

Materiay szkoleniowe opracowane przez:


Grzegorza Faracika, Grzegorza Dubiela, Sawomira Dzierka i Tomasza Michaka

Wydano nakadem
ASTOR sp. z o.o.
31-112 Krakw
ul. Smolesk 29
tel. 428-63-00, 428-63-09
Spis treci

Przykady uycia blokw funkcyjnych .........................................................................................................................1


Przykad 1. Elementy logiczne ......................................................................................................................1
Przykad 2. Liczniki i przekaniki czasowe blok TMR .................................................................................1
Przykad 3. Liczniki i przekaniki czasowe blok ONDTR ............................................................................2
Przykad 4. Liczniki i przekaniki czasowe blok UPCTR ............................................................................2
Przykad 5. Funkcje matematyczne blok ADD............................................................................................2
Przykad 6. Funkcje matematyczne blok MOD...........................................................................................3
Przykad 7. Funkcje matematyczne blok SQRT .........................................................................................3
Przykad 8. Relacje matematyczne blok EQ...............................................................................................3
Przykad 9. Operacje bitowe blok AND.......................................................................................................4
Przykad 10. Operacje bitowe blok XOR ....................................................................................................4
Przykad 11. Operacje bitowe blok NOT.....................................................................................................4
Przykad 12. Operacje bitowe blok SHL .....................................................................................................5
Przykad 13. Operacje bitowe blok ROR ....................................................................................................5
Przykad 14. Operacje bitowe blok BTST ...................................................................................................5
Przykad 15. Operacje bitowe blok BSET...................................................................................................6
Przykad 16. Operacje bitowe blok BPOS ..................................................................................................6
Przykad 17. Operacje na danych blok MOVE ...........................................................................................6
Przykad 18. Operacje na danych blok BLKMOV .......................................................................................7
Przykad 19. Operacje na danych blok BLKCLR ........................................................................................7
Przykad 20. Operacje na danych blok SHFR ............................................................................................8
Przykad 21. Operacje na danych blok BITSEQ.........................................................................................9
Przykad 22. Operacje tablicowe blok ARRAY_MOVE.............................................................................10
Przykad 23. Funkcje konwersji blok INT..................................................................................................10
Przykad 24. Funkcje sterujce blok CALL ...............................................................................................11
Przykad 25. Funkcje sterujce blok PID ..................................................................................................11

Wskazwki do programowania sterownikw............................................................................................................12


Wskazwka 1 ..............................................................................................................................................12
Wskazwka 2 ..............................................................................................................................................12
Wskazwka 3 ..............................................................................................................................................12
Wskazwka 4 ..............................................................................................................................................13
Wskazwka 5 ..............................................................................................................................................13

Tematy zada ...............................................................................................................................................................14


Zadanie 1.1 Transkoder ..............................................................................................................................14
Zadanie 1.2 Transkoder strobowany ...........................................................................................................14
Zadanie 2.1 Licznik modulo 3......................................................................................................................14
Zadanie 2.2 Dodawanie i mnoenie ............................................................................................................15
Zadanie 2.3 Relacje pomidzy liczbami ......................................................................................................15
Zadanie 3 Generator fali prostoktnej .........................................................................................................15
Zadanie 4 Liczniki kaskadowe .................................................................................................................... 16
Zadanie 5 Sterowanie drzwi w tramwaju .................................................................................................... 16
Zadanie 6.1 Sterowanie wind dwu poziomow ......................................................................................... 17
Zadanie 6.2 Sterowanie wind dwu poziomow z czujnikami..................................................................... 18
Zadanie 7 Linia napeniania kartonw ........................................................................................................ 19
Zadanie 8 Sygnalizacja wietlna................................................................................................................. 19
Zadanie 9 Regulator PID ............................................................................................................................ 21

Zadania o zikszonym stopniu zaawansowania ...................................................................................................... 22


Zadanie 10 Odczyt daty i czasu z zegara kalendarzowego w sterowniku................................................... 22
Zadanie 11 Sterownie silnikami krokowymi ................................................................................................ 22
Zadanie 12 Komunikacja w protokole SNP ................................................................................................ 23
Zadanie 13 Komunikacja w protokole SNP-X ............................................................................................. 24
Zadanie 17 Przesyanie danych przez port szeregowy............................................................................... 25

Informacje pomocnicze do zada.............................................................................................................................. 27


Zadanie 1.1 Transkoder ............................................................................................................................. 27
Zadanie 1.2 Transkoder strobowany .......................................................................................................... 27
Zadanie 2.1 Licznik modulo 3..................................................................................................................... 28
Zadanie 2.2 Dodawanie i mnoenie ........................................................................................................... 29
Zadanie 2.3 Relacje pomidzy liczbami ..................................................................................................... 30
Zadanie 3 Generator fali prostoktnej ........................................................................................................ 31
Zadanie 4 Liczniki kaskadowe .................................................................................................................... 32
Zadanie 5 Sterowanie drzwiami tramwaju .................................................................................................. 33
Zadanie 6.1 Sterowanie wind dwu poziomow ......................................................................................... 34
Zadanie 6.2 Sterowanie wind dwu poziomow z czujnikami..................................................................... 35
Zadanie 7 Linia napeniania kartonw z zabezpieczeniami ........................................................................ 36
Zadanie 8 Sygnalizacja wietlna................................................................................................................. 37
Zadanie 9 Regulator PID ............................................................................................................................ 39
Zadanie 10 Odczyt daty i czasu z zegara kalendarzowego w sterowniku................................................... 41
Zadanie 11 Sterownie silnikami krokowymi ................................................................................................ 42
Zadanie 12 Komunikacja w protokole SNP ................................................................................................ 43
Zadanie 13 Komunikacja w protokole SNP-X ............................................................................................. 46
Zadanie 14 Przesyanie danych przez port szeregowy............................................................................... 48

Przykady rozwiza ................................................................................................................................................... 54


Zadanie 1.1 Transkoder ............................................................................................................................. 54
Zadanie 1.2 Transkoder strobowany .......................................................................................................... 55
Zadanie 2.1 Licznik modulo 3..................................................................................................................... 56
Zadanie 2.2 Dodawanie i mnoenie ........................................................................................................... 57
Zadanie 2.3 Relacje pomidzy liczbami ..................................................................................................... 58
Zadanie 3 Generator fali prostoktnej ........................................................................................................ 59
Zadanie 4 Liczniki kaskadowe .................................................................................................................... 60
Zadanie 5 Sterownie drzwiami w tramwaju................................................................................................. 62
Zadanie 6.1 Sterowanie wind dwu poziomow ......................................................................................... 65
Zadanie 6.2 Sterowanie wind dwu poziomow z czujnikami .....................................................................66
Zadanie 7 Linia napeniania kartonw z zabezpieczeniami .........................................................................68
Zadanie 8 Sygnalizacja wietlna .................................................................................................................71
Zadanie 9 Regulator PID.............................................................................................................................79
Zadanie 10 Odczyt daty i czasu z zegara kalendarzowego w sterowniku ...................................................81
Zadanie 11 Sterowanie silnikami krokowymi ...............................................................................................81
Zadanie 12 Komunikacja w protokole SNP .................................................................................................82
Zadanie 13 Komunikacja w protokole SNP .................................................................................................86
Zadanie 14 Przesyanie danych przez port szeregowy................................................................................89
Przykady uycia blokw funkcyjnych

Przykad 1. Elementy logiczne


Poniej przedstawiono rne rodzaje przekanikw:

Element o adresie I1 jest typu styk normalnie otwarty - przewodzi sygna wtedy, gdy warto logiczna
przypisanej zmiennej jest 1. Element o adresie I2 jest typu styk normalnie zamknity - przewodzi sygna, gdy przypisana
dla niego zmienna ma warto logiczn 0. Przekanik Q1 i Q2 dziaaj w ten sposb, e ich styki s zwierane w
momencie dotarcia sygnau. Q3 rwnie zadziaa w momencie dotarcia do sygnau, ale stan ten bdzie trwa nawet po
odciciu tego sygnau - jest to przekanik z pamici. Ustawiony stan w tym przekaniku bdzie trwa nawet po
wyczeniu zasilania sterownika. W przypadku stykw takich jak styki o adresie %Q3, %M15 jako atrybuty zmiennej
mona zadeklarowa opcj retentive (robimy to w tablicy deklaracji zmiennych). Stan przekanikw z aktywn opcj
retentive bdzie pamitany nawet po wyczeniu zasilania sterownika i zostanie odtworzony po ponownym zaczeniu
zasilania sterownika. M25 to przekanik uaktywniany zboczem narastajcym sygnau (zmian wartoci logicznej z 0 na
1). Styki tego przekanika s zwierane na czas jednego cyklu sterownika.
Nie jest moliwe uycie przekanika -(S)-, -(R)-, -( )-, -(/)-, itp. jako przekanika wprowadzajcego
sygna do szczebla, jak rwnie przekanika --] [-- , --]/[-- do wyprowadzania sygnau ze szczebla.

Przykad 2. Liczniki i przekaniki czasowe blok TMR


Program sygnalizujcy, e sygna aktywny na wejciu I1 trwa nieprzerwanie przynajmniej 10 sekund:

Program zrealizowano w oparciu o przekanik czasowy bez pamici. Wejciu I1 przypisany jest styk otwarty -
czyli przewodzcy sygna wtedy, gdy warto logiczna zmiennej I1 jest 1. Zaczenie I1 spowoduje uaktywnienie bloku
funkcyjnego TMR. Wtedy nastpi zliczanie czasu, a jego warto bieca przechowywana bdzie w rejestrze R1.
Wanie ta warto wywietlana jest podczas pracy programatora ONLINE / RUN. Oprcz wartoci biecej przekanika
s take inne informacje o nim; przechowywane s w dwch nastpnych rejestrach (w naszym przypadku w R2 i w R3).
Dlatego dla kadego bloku funkcyjnego TMR naley zarezerwowa trzy kolejne rejestry. Jako warto zadan ustawiono
100. Jest to warto czasu podana w dziesitych czciach sekundy, po osigniciu, ktrej na wyjciu przekanika
pojawi si sygna logiczny 1. Kadorazowy zanik sygnau na wejciu I1 powoduje wyzerowanie wartoci czasu
dotychczas zliczonego. Jeeli jednak sygna trwa przynajmniej tyle czasu ile wynosi PV, to przekanik Q1 zostaje
zaczony. Licznik zlicza nadal, a do momentu, w ktrym zaniknie sygna I1, po czym jest znw zerowany. Istnieje
moliwo zmiany podstawy czasu z dziesitych czci sekundy na setne czci.

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 1


Przykad 3. Liczniki i przekaniki czasowe blok ONDTR
Program sygnalizujcy, e sygna aktywny na wejciu I1 trwa przynajmniej 10 sekund:

Wykorzystano przekanik czasowy z pamici. Praca jego jest podobna do pracy przekanika bez pamici, a
rnica polega na tym, e zlicza on czas gdy dopywa do niego sygna, i zatrzymuje naliczon warto gdy sygna
przestaje dopywa. Dla wyzerowania naliczonej wartoci potrzebne jest wic dodatkowe wejcie - rol t peni wejcie R
(Reset), sterowane w naszym przypadku przekanikiem I2. Na ten licznik trzeba zarezerwowa trzy kolejne rejestry.

Przykad 4. Liczniki i przekaniki czasowe blok UPCTR


Program sygnalizujcy, e do wejcia I1 dotaro przynajmniej 10 impulsw:

Realizacja oparta jest o licznik zliczajcy w gr UPCTR. Suy on do zliczania impulsw od 0 do wartoci
zadanej (u nas warto zadana wynosi 10). Kada zmiana sygnau I1 z 0 na 1 powoduje zwikszenie wartoci biecej o
1. Podanie sygnau I2 powoduje wyzerowanie licznika. Po zrwnaniu si z wartoci zadan przesyany jest sygna do
przekanika M1. Na ten licznik trzeba zarezerwowa trzy kolejne rejestry.

Przykad 5. Funkcje matematyczne blok ADD


Dodawanie liczby 26 do liczby w rejestrze R44:

Do dodawania liczb wykorzystano blok ADD_INT. Suy on do dodawania liczb cakowitych ze znakiem (16-
bitowe). Pierwszy operand to staa rwna 26, drugi - liczba w rejestrze R44. Wynik operacji przesyany jest do rejestru
R50. Moe si zdarzy, ze wynik przekracza dopuszczalny zakres wartoci; wtedy parametr wyjciowy przyjmuje
najwiksz warto, a sygna potwierdzenia operacji (sygna Ok) nie jest przesyany. Dlatego dobrze jest sprawdza
poprawno wykonywanej operacji, na przykad wpisujc bit poprawnoci wykonania funkcji do wyznaczonego w tym celu
rejestru (w przykadzie jest to M99).

2 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Przykad 6. Funkcje matematyczne blok MOD
Sprawdzanie czy liczba w rejestrze R1 jest wielokrotnoci liczby w rejestrze R5:

Do sprawdzenia tego czy liczba w rejestrze R1 jest wielokrotnoci liczby w rejestrze R5 sprawdzono czy liczba
w R1 dzieli si bez reszty przez liczb w R5. Posuono si blokiem funkcyjnym MOD_INT, ktry wykonuje dzielenie
dwch liczb o typie INT, a wynikiem dziaania jest reszta z dzielenia. Znak wyniku jest zawsze taki sam jak znak
pierwszego parametru wejciowego (u nas liczby w R1). Gdy do bloku dopywa sygna, czyli I22 jest wyczone,
wykonywane jest dzielenie i wynik jest obliczany w nastpujcy sposb:

Q = I1 - ( I1 DIV I2) I2
(gdzie wynikiem dzielenia DIV jest liczba cakowita).

Wynik rwny 0 wiadczy o tym e liczba w R1 jest wielokrotnoci liczby w R5. (W przykadzie wynik
odczytywany jest bezporednio na wyjciach, poczwszy od Q1).

Przykad 7. Funkcje matematyczne blok SQRT


Obliczenie pierwiastka kwadratowego z liczby znajdujcej si w rejestrze R1:

Do obliczania pierwiastka kwadratowego suy blok SQRT. Przyrostek INT oznacza, e pierwiastek bdzie
liczony z liczby o pojedynczej precyzji (16 bitw). Gdy do bloku dociera sygna zezwolenia na prac (poprzez M1),
parametr Q przyjmuje warto rwn czci cakowitej pierwiastka z liczby w R1. Sygna wyjciowy jest przesyany, gdy
wynik operacji nie przekracza dopuszczalnego zakresu wartoci oraz gdy pierwiastkowana liczba nie jest ujemna. Wynik
pierwiastkowania zostanie umieszczony w szesnastu bitach, poczwszy od rejestru M9.

Przykad 8. Relacje matematyczne blok EQ


Sprawdzenie, czy liczba w rejestrze R1 to liczba 16:

Blok EQ umoliwia porwnywanie dwch liczb. Jeli parametry wejciowe speniaj relacj rwnoci, przesyany
jest sygna potwierdzenia Q (w przykadzie trafia on do komrki M20).

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 3


Przykad 9. Operacje bitowe blok AND
Operacja AND na dwch sowach bitowych:

Zmienna tymczasowa T2 zezwala na wykonanie operacji koniunkcji dwch sw bitowych. Funkcja zostanie
wykonana na 16 bitach, o adresach pocztkowych: R1 (pierwsze sowo) i R10 (drugie sowo). Poprawne wykonanie
sygnalizowane jest na wyjciu Ok (sygna z Ok trafia do T3), a wynik umieszczany jest w rejestrze R15. Blok AND moe
by wykorzystywany do zerowania wybranych rejestrw - gdy jednym z operandw jest liczba zero.

Przykad 10. Operacje bitowe blok XOR


Sprawdzenie czy liczba w rejestrze R7 ma pi najmniej znaczcych bitw postaci: 10101 i ktre bity odbiegaj od tego
wzorca:

Liczba dwjkowa 10101 to liczba 21 w systemie dziesitnym. Dlatego porwnywanie odbywa si bdzie z
liczb 21. Porwnywanie zrealizowano stosujc blok XOR. Na kadych dwch bitach liczb: 21 i liczby w rejestrze R7
wykonywana jest operacja rnicy symetrycznej. Jeeli ktrykolwiek bit liczby w rejestrze R7 odbiega od wzorca 10101,
to ten bit w wyniku bdzie ustawiony na 1. Jeeli natomiast jest zgodno tych dwch liczb, to wynikiem operacji bdzie
zero. Dla wykrycia ewentualnego bdu w wyniku operacji mona kontrolowa wyjcie Ok, jednak przykad pokazuje, e z
punktu widzenia poprawnoci programu niewykorzystanie wyjcia Ok nie jest bdem.

Przykad 11. Operacje bitowe blok NOT


Negacja logiczna sowa bitowego o adresie pocztkowym M1:

Jeeli komrka G1 zezwala na wykonanie operacji, to nastpuje zmiana stanu logicznego kadego bitu na
przeciwny. Wynik operacji ulokowany zostanie w szesnastu bitach od adresu M97. Jest moliwo uzyskania
potwierdzenia wykonania operacji negacji - sygna z wyjcia Ok.

4 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Przykad 12. Operacje bitowe blok SHL
Przesunicie sowa bitowego w lewo o dwa bity:

Funkcja SHL moe by wykorzystywana do przesunicia wszystkich bitw jednego sowa bitowego lub kilku sw
bitowych w lewo, o wyszczeglnion liczb miejsc. Liczba ta moe by zarwno sta jak i zmienn. Oprcz sygnau
zezwalajcego na wykonanie operacji (w naszym przypadku wejcie zezwalajce zaczone jest zawsze, bo sygna
pochodzi z przekanika ALW_ON, czyli zawsze zaczonego) naley poda do bloku adres pierwszego sowa cigu sw,
ktrego bity maj zosta przesunite (u nas R4), liczb bitw, o ktre ma by przesunite dane sowo (u nas o 2 bity),
oraz warto bitw ktre maj zosta wstawione w puste miejsca sowa powstae po przesuniciu (w naszym przykadzie
s to zera). Funkcja zwraca warto ostatniego bitu, ktry wyszed poza zakres sowa po dokonaniu przesunicia. Naley
take wyszczeglni adres pierwszego sowa cigu sw otrzymanego po przesuniciu bitw sowa (u nas: Q1). Zachodzi
take moliwo przesuwania wicej ni jednego sowa bitowego - przez zmian parametru LEN.

Przykad 13. Operacje bitowe blok ROR


Przesunicie sowa bitowego w prawo w obiegu zamknitym:

W tym przykadzie liczba ulokowana w adresie R4 podlega cyklicznemu przesuwaniu, co sekund, o dwa bity w
prawo. Przesunicie odbywa si w ten sposb, e najmniej znaczce bity sowa (tzn. z prawej strony sowa) zostaj
wpisane w puste miejsca po stronie lewej. Wynik operacji przesany jest na wyjcia, poczwszy od adresu Q1. W
przykadzie nie korzystano z wyjcia potwierdzajcego wykonanie operacji. Ilo przesuwanych sw mona zmieni
zmieniajc parametr LEN.

Przykad 14. Operacje bitowe blok BIT TEST


Sprawdzenie czy trzeci bit sowa o adresie pocztkowym w R4 jest jedynk logiczn:

Po uaktywnieniu wejcia I1 Funkcja BTST sprawdza wyszczeglniony bit (bit trzeci) podanego sowa bitowego
(adres pocztkowy w R4). Warto tego bitu jest przesyana bezporednio na wyjcie Q bloku funkcyjnego (a stamtd na
wyjcie Q3 sterownika). Zachodzi moliwo zmiany liczby sw bitowych cigu sw, z ktrego wybierany jest bit do
przetestowania (maksymalnie 256).

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 5


Przykad 15. Operacje bitowe blok BIT SET
Ustawienie wartoci bitu sowa bitowego o adresie pocztkowym M1 na 1, gdzie numer bitu do ustawienia
wyszczeglniony jest w R3:

Aby ustawi dany bit sowa bitowego na 1 stosujemy funkcj BSET. Blok posiada wejcie zezwalajce na
wykonanie operacji oraz wyjcie potwierdzajce wykonanie teje operacji. Podanie numeru bitu sowa bitowego do
ustawienia w 1 jako adresu pocztkowego umoliwia dynamiczne zadawanie lokacji tego bitu. W razie potrzeby mona
zmieni liczb sw bitowych cigu sw LEN, z ktrego wybierany jest bit, ktrego warto ma zosta ustawiona
(maksymalnie 256).

Przykad 16. Operacje bitowe blok BIT POS


Znale pierwsze wystpienie jedynki w dwch sowach bitowych o adresie pocztkowym w R1:

Do realizacji tego zadania posuono si funkcj BPOS. Jeeli zostan zaczone przekaniki M1, M2 i M3, to
zostanie przeprowadzona operacja przeszukiwania dwch sw bitowych o adresie pocztkowym R1. Wynikiem operacji
jest pozycja pierwszego niezerowego bitu w przeszukiwanych sowach bitowych lub zero, jeeli w przeszukiwanych
sowach wystpuj same zera (wynik operacji umieszczany jest w R4). Ilo przeszukiwanych sw moe oczywicie ulec
zmianie, gdy zmienimy parametr LEN. Mona te obserwowa sygna wyjciowy Ok, pojawiajcy si po dopyniciu do
bloku funkcyjnego sygnau wejciowego.

Przykad 17. Operacje na danych blok MOVE


Skopiowanie sowa bitowego z rejestru R1 na wyjcia, od adresu Q1:

Do przemieszczania danych jako pojedynczych bitw suy funkcja MOVE. Poniewa dane s przesyane jako
bity, nowy adres nie musi odpowiada temu samemu typowi danych co adres oryginalny. Naley pamita, e
skopiowanie jednego sowa bitowego na wyjcie, poczwszy od Q1, spowoduje, e wynik zajmie szesnacie kolejnych
lokacji. Gdyby zada dugo LEN rwn 2, to wynik zajmie 32 kolejne lokacje, liczc od Q1. Po dopyniciu sygnau do
bloku funkcyjnego pojawia si na wyjciu Ok sygna potwierdzenia, ktry moe by wykorzystywany lub nie.

6 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Przykad 18. Operacje na danych blok BLKMOV
Skopiowanie grupy siedmiu staych wartoci do obszaru pamici rozpoczynajcego si od adresu M1:

Stae: 1, 5, 0, 2, 12, 16, 17 zostan skopiowane do pamici od adresu M1, gdy do bloku funkcyjnego BLKMV
dotrze sygna z przekanika I1. Kada staa typu INT jest zapisana na szesnastu bitach, wic w sumie zostan zajte
komrki od M1 do M112. Wykonanie operacji sygnalizowane jest na wyjciu Q1.

Przykad 19. Operacje na danych blok BLK CLR


Zerowanie trzech kolejnych sw w pamici sterownika, poczynajc od adresu M1:

Aby wyzerowa okrelon liczb kolejno nastpujcych po sobie sw w pamici sterownika, najlepiej posuy
si funkcj BLKCLR. Umoliwia ona skasowanie okrelonego miejsca w pamici poprzez podanie adresu pocztkowego
sowa i iloci sw do skasowania. Blok zadziaa wtedy gdy zostanie zaczony przekanik I1, a potwierdzenie wykonania
operacji zostanie przesane na wyjcie Q1.

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 7


Przykad 20. Operacje na danych blok SHFR
Program tworzcy pami kolejkow o pojemnoci 10 liczb (obszar pamici zawierajcy 10 liczb, wpisanie kolejnej liczby
powoduje przesunicie pozostaych o jedn pozycj w d, a ostatnia liczba wysyana jest pod wskazany adres):

Do budowy pamici kolejkowej (inaczej pamici FIFO: First Input First Output) suy blok funkcyjny SHFR.
Poprzez parametr LEN zadajemy dugo tej pamici, parametr IN zawiera adres pocztkowy pamici kolejkowej, a
parametr Q - adres, pod ktry wysyane s elementy wypchnite z pamici. Przesuwanie elementw w pamici odbywa
si, gdy do bloku funkcyjnego dopywa sygna i dokonywane jest tyle razy, ile sterownik wykona cykli. Dlatego jeeli
chcemy przesuwa tylko jeden raz przy jednokrotnym zaczeniu I1, to musimy zamieni sygna z przekanika I1 na
pojedynczy impuls o czasie trwania rwnym jednemu cyklowi sterownika - do tego celu wykorzystano przekanik M1.
Warto wpisywana do pamici jest staa i wynosi A w systemie heksadecymalnym, czyli 10 w systemie dziesitnym.
Pocztek pamici kolejkowej usytuowany jest w rejestrze R1, a elementy wypychane z pamici trafiaj do rejestru R20.
Blok posiada wyjcie potwierdzajce wykonanie operacji, przykadowo podczone do przekanika Q1.

8 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Przykad 21. Operacje na danych blok BIT SEQ
Przesuwanie jedynki od wyjcia Q1 do wyjcia Q8:

Zadanie atwo jest zrealizowa na bazie bloku BIT_SEQ. Powoduje on przesuwanie bitu w gr lub w d o
jedn pozycj. Blok posiada wejcie zezwalajce na prac; na wejcie to bezpieczniej jest wprowadzi impuls o czasie
trwania jednego cyklu - std wczeniejszy przekanik M1. Sygna doprowadzony na wejcie R powoduje ustawienie
warunkw pocztkowych, tzn. ustawienie jedynki tylko w miejscu wyspecyfikowanym na wejciu STEP (poniewa na
wejciu tym jest staa rwna 1, to po zaczeniu I3 jedynka zostanie ustawiona na pierwszym bicie liczc od adresu
pocztkowego). Dla prawidowej pracy bloku pozostaje jeszcze tylko podanie adresu pierwszego bitu, na ktrym dziaa
funkcja BIT_SEQ. Aby umoliwi atw obserwacj dziaania ukadu, jako adres ten podano Q1. Naley rwnie poda
parametr LEN, aby wiadomo byo do jakiego momentu ma si odbywa przesuwanie bitu. Jeeli przesuwanie ma si
odbywa od Q1 do Q8, czyli o osiem pozycji, naley wpisa LEN=8. Zachodzi moliwo kontrolowania czy operacja
zostaa wykonana pomylnie (wyjcie Ok), z moliwoci tej jednak w zadaniu nie skorzystano.

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 9


Przykad 22. Operacje tablicowe blok ARRAY MOVE
Kopiowanie tablicy 10-elementowej od M1 do M17, z moliwoci zadania indeksacji elementw:

Przekanik I1 daje zezwolenie na wykonanie operacji. SR okrela adres pocztkowy rdowej tablicy danych (w
przykadzie wynosi on M1), DS - adres pocztkowy docelowej tablicy danych (rwny M17). LEN to liczba elementw, z
ktrych skada si tablica rdowa, jak rwnie docelowa (10 elementw). SNX oraz DNX to indeksy pierwszego z
kopiowanych elementw tablicy rdowej oraz docelowej, natomiast N oznacza liczb elementw, ktre maj zosta
skopiowane (kopiujemy 3 elementy). Wykonanie operacji sygnalizowane jest na wyjciu Ok.

Przykad 23. Funkcje konwersji blok INT


Zamiana liczby cakowitej ze znakiem (typ INT) na liczb w kodzie BCD. Liczba zapisana jest w szesnastu komrkach o
adresie pocztkowym M1:

Wykorzystano blok funkcyjny dokonujcy konwersji znakw typu INT na BCD. Zezwolenie przekanika I1
powoduje przeliczenie liczby cakowitej ze znakiem na liczb BCD i przesanie jej bezporednio na wyjcia, gdzie
adresem pocztkowym liczby po konwersji jest Q1. W przykadzie nie skorzystano z sygnau potwierdzenia wykonania
konwersji (sygna ten pojawia si po dopyniciu do bloku funkcyjnego sygnau i dokonaniu konwersji bez przekroczenia
dozwolonego zakresu wartoci).

10 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Przykad 24. Funkcje sterujce blok CALL
Przywoanie procedury o nazwie COS1 w danym miejscu programu sterujcego:

W momencie, gdy przekanik M12 zostanie zaczony, nastpi natychmiastowe przywoanie procedury o nazwie
COS1 i jej kompletne wykonanie, a nastpnie powrt do punktu nastpujcego bezporednio po bloku CALL. Edycja
bloku CALL moe odby si przez ustawienie kursora na tym bloku i nacinicie klawisza F10 (Zoom). W bloku deklaracji
powinna znale si definicja procedury COS1.

Przykad 25. Funkcje sterujce blok PID


Podczenie regulatora PID z moliwoci rcznego zadawania parametrw:

Przekanik I1 zezwala na prac regulatora. Warto SP zawiera warto zadan wielkoci regulowanej (punkt
pracy regulatora), PV jest wielkoci regulowan. Gdy przekanik I1 jest wyczony, to regulator pracuje w trybie
automatycznym. Jeeli natomiast chcemy z jakich powodw zada rcznie parametry wyjciowe, to naley przej w
tryb pracy manual - przekanik I2 zaczony. Teraz mamy moliwo zwikszania nastaw wyjciowych regulatora - I3
lub zmniejszania - I4. Pamita trzeba, e regulator PID zajmuje 40 kolejnych rejestrw, wic nie powinnimy ich uywa
przez inne bloki funkcyjne (z wyjtkiem niektrych wartoci, ktre moe zmieni uytkownik poprzez przesanie
podanych wartoci do odpowiednich rejestrw sterownika przy uyciu innych blokw funkcyjnych; informacje o tym,
ktrych rejestrw uwaga ta dotyczy znajduj si np. w podrczniku programisty Sterowniki programowalne serii 90-20 i
90-30). Blok funkcyjny PID wysya sygna potwierdzajcy zrealizowanie algorytmu bez przeszkd. Sygna wypracowany
przez PID w podanym przykadzie przesyany jest do pamici od lokacji M97. Aby regulator PID zacz dziaa naley
zada mu przynajmniej podstawowe parametry, tj. wspczynnik proporcjonalnoci rny od zera oraz zakres wartoci
sygnau wyjciowego wikszy od zera. Mona tego dokona edytujc blok funkcyjny PID (ustawi kursor na bloku
funkcyjnym i nacisn F10).

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 11


Wskazwki do programowania sterownikw

Wskazwka 1
W przypadku korzystania z przekanikw czasowych jak i licznikw pamita naley o tym, e:
1. Odstp w ich adresowaniu powinien by nie mniejszy jak 3 rejestry.
2. Niepodanie wartoci zadanej PV spowoduje, e wyjcie tego bloku funkcyjnego bdzie cay czas aktywne.
3. Kadorazowy zanik sygnau zezwalajcego Enable spowoduje wyzerowanie TMR.
Dla prby proponujemy sprawdzi zasad pierwsz - ulokowa jeden przekanik czasowy np. w rejestrze R2, a drugi
przekanik czasowy np. w rejestrze R3 i sprawdzi, jaki to ma wpyw na prac tego typu blokw funkcyjnych.

Wskazwka 2
Z du rozwag naley podchodzi do sytuacji, gdy stosujemy rne typy zmiennych dla tej samej komrki
rejestru:

W zaprezentowanym przykadzie mona jeszcze kontrolowa przebieg wykonywania programu. Niestety, w


praktyce spotka si mona z o wiele bardziej rozbudowanymi strukturami, zawierajcymi instrukcje skoku czy te
podprogramy. Wtedy doprowadzenie do konfliktu typw zmiennych powoduje, e przestajemy kontrolowa przebieg
programu i nie jestemy w stanie przewidzie stanu, w jakim znajdzie si sterownik.
Zaleca si ponadto, aby w programie znalaz si tylko jeden szczebel bezporednio sterujcy danym wyjciem.
Oprogramowanie narzdziowe CIMPLICITY ME posiada odpowiednie narzdzia suce do wyeliminowania podwjnego
uycia tego samego przekanika.

Wskazwka 3
Gdy korzystamy z przekanikw z pamici, (aktywn opcj retentive). pamita trzeba o moliwoci zadania
warunkw pocztkowych, koniecznych np. przy restarcie programu. Mona to zrealizowa np. uywajc do tego celu
dodatkowego wejcia, ktre bdzie zerowao okrelone obszary pamici sterownika. Pamita naley take o
zachowaniu informacji np. o miejscu w programie lub o zmiennych, gdyby projektowany system musia by odporny na
zaniki napicia zasilajcego sterownik.

12 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Wskazwka 4
Do wyzerowania bitu pamici w sterowniku moe suy przekanik:

a do wyzerowania sowa bitowego blok XOR, AND, BLK CLR, itp.


Przykadowo podano sposb wyzerowania sowa bitowego zaczynajcego si w Q1:

Wskazwka 5
Stosujc bloki MOVE moemy dokonywa przemieszczenia bitu, liczby lub sowa bitowego. Przemieszczenia
mog si odbywa pomidzy wejciami, wyjciami i rejestrami, z uwzgldnieniem typw zmiennych. Przesyajc wartoci
z okrelonych rejestrw do pamici bitowej pamita trzeba o tym, e jeden rejestr zawiera 16 bitw - wic np. przesanie
trzech rejestrw spowoduje zwikszenie indeksacji adresw obszaru bitowego o 48 (a nie o 3).

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 13


Tematy zada

Zadanie 1.1 Transkoder


Naley napisa program, ktry bdzie zamienia liczb zaczonych wej na numer zaczonego wyjcia (np.
gdy zaczymy dowolne dwa wejcia, to fakt ten powinien zosta zasygnalizowany zaczeniem wyjcia drugiego - Q2,
gdy zaczymy dowolne trzy wejcia - powinno to by sygnalizowane zaczeniem wyjcia trzeciego - Q3, itp.). Naley
ograniczy si do trzech pierwszych wej i trzech wyj.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ_1 Wejcie pierwsze


%I0002 WEJ_2 Wejcie drugie
%I0003 WEJ_3 Wejcie trzecie
%Q0001 WYJ_1 Wyjcie pierwsze
%Q0002 WYJ_2 Wyjcie drugie
%Q0003 WYJ_3 Wyjcie trzecie

Powodzenia!

Zadanie 1.2 Transkoder strobowany


Zmodyfikowa poprzedni program tak, aby stan wyj zostawa zapamitywany w momencie podania impulsu
WPIS.
Proponowana tablica deklaracji zmiennych - jak poprzednio.

Ref Address Name Description

%I0001 WEJ_1 Wejcie pierwsze


%I0002 WEJ_2 Wejcie drugie
%I0003 WEJ_3 Wejcie trzecie
%I0004 WEJ_WPIS Wejcie wpisujce
%Q0001 WYJ_1 Wyjcie pierwsze
%Q0002 WYJ_2 Wyjcie drugie
%Q0003 WYJ_3 Wyjcie trzecie

Powodzenia!

Zadanie 2.1 Licznik modulo 3


Napisa program na licznik impulsw przychodzcych do wejcia I1. Licznik ma liczy do trzech (podanie
czterech impulsw powoduje powrt do stanu wyjciowego). Wejcie I4 powinno zerowa licznik.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJSCIE Wejcie zliczajce


%I0004 RESET Wejcie zerujce

Powodzenia!

14 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 2.2 Dodawanie i mnoenie
Zmodyfikowa przykad z ostatniego zadania w nastpujcy sposb:
Doda drugi licznik do trzech, zliczajcy impulsy z wejcia I2. Wartoci zliczone przez liczniki powinny by nastpnie
a. dodawane
b. mnoone.
W zalenoci od stanu wejcia I3 na wyjciach Q1...Q4 moemy obserwowa wynik odpowiedniej operacji
matematycznej w postaci dwjkowej. Jeeli I3=0, to na Q1Q4 powinien by wynik dodawania, a gdy I3=1, to na wyjciach
Q1...Q4 powinien by wynik mnoenia.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ_1 Wejcie zliczajce nr 1


%I0002 WEJ_2 Wejcie zliczajce nr 2
%I0003 TRYB Przecznik tego, co ma by na wy
%I0004 RESET Wejcie zerujce

Powodzenia!

Zadanie 2.3 Relacje pomidzy liczbami


Do programu z poprzedniego zadania doda ukad wykrywania relacji pomidzy liczbami znajdujcymi si w
rejestrach R2 i R6. Naley wykry, czy liczba w pierwszym rejestrze jest wiksza od liczby w rejestrze drugim. Fakt ten
ma by sygnalizowany przeczaniem wyjcia Q8 z czstotliwoci 1 Hz.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ_1 Wejcie zliczajce nr 1


%I0002 WEJ_2 Wejcie zliczajce nr 2
%I0003 TRYB Przecznik tego, co ma by na wy
%I0004 RESET Wejcie zerujce
%Q0008 SYGNAL Sygnalizacja zadanej relacji

Powodzenia!

Zadanie 3 Generator fali prostoktnej


Napisa program na ukad generujcy przebieg prostoktny z moliwoci zadawania okresu przebiegu jak i
wspczynnika wypenienia. Ukad powinien samoczynnie wystartowa po wczeniu zasilania oraz powinien mie wejcie
synchronizujce STROB (inicjujce prac od zadanych warunkw pocztkowych). Generator powinien mie wyjcie
proste i wyjcie zanegowane.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 STROB Restart licznikw


%Q0001 Q Wyjcie proste
%Q0002 NOTQ Wyjcie zanegowane

Powodzenia!

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 15


Zadanie 4 Liczniki kaskadowe
Napisa program na ukad do zliczania impulsw i przetrzymywania ich liczby w rejestrach. Ukad ma zlicza
impulsy pochodzce z wejcia I2. Zliczanie powinno si odbywa w nastpujcy sposb: licznik nr 1 ma liczy od 0001
do 0004, a nastpnie wysa impuls do licznika nr 2. Licznik nr 2 ma rwnie liczy od 0001 do 0004. Aby zapocztkowa
zliczanie, trzeba wysa impuls STARTu do I1. Wtedy powinno nastpi ustawienie rejestrw R2 i R6 w stan 0001 oraz
zaczenie Q1. Nastpnie podajemy na I2 impulsy zliczane. Jednoczesny stan licznikw wynoszcy 0004 ma zosta
wykryty i zasygnalizowany przez wyczenie Q1 i zaczenie Q2; jednoczenie powinno nastpi wtedy zablokowanie
licznikw.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 START Start


%I0002 WEJSCIE Wejcie zliczajce
%Q0001 ZLICZAM Zliczanie
%Q0002 KONIEC Koniec zliczania

Powodzenia!

Zadanie 5 Sterowanie drzwi w tramwaju


Zaprogramowa PLC do penienia funkcji ukadu sterujcego otwieraniem drzwi w tramwaju. Kade wejcie do
tramwaju posiada przycisk dania otwarcia drzwi. Nacinicie go jest pamitane do momentu wydania zezwolenia przez
motorniczego na otwarcie drzwi. On rwnie decyduje o zamkniciu drzwi w danym wagonie. Ma rwnie moliwo
otwierania drzwi w danym wagonie (jeden przycisk otwiera wtedy wszystkie drzwi w wagonie). Wydanie zezwolenia na
otwarcie drzwi lub otwarcie ich w dowolnym wagonie powinno by sygnalizowane, np. na wyjciu Q8. Gdy motorniczy
otworzy drzwi w ktrymkolwiek wagonie, to nacinicie zezwolenia na otwarcie drzwi nie powinno by przyjte. Przyj,
e tramwaj ma dwa wagony, a wagon troje drzwi. Wszystkie wczniki - monostabilne.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 ZADA_1 danie otwarcia drzwi 1


%I0002 ZADA_2 danie otwarcia drzwi 2
%I0003 ZADA_3 danie otwarcia drzwi 3
%I0004 ZADA_4 danie otwarcia drzwi 4
%I0005 ZADA_5 danie otwarcia drzwi 5
%I0006 ZADA_6 danie otwarcia drzwi 6
%I0007 ZEZWOLE Zezwolenie otwarcia drzwi
%I0008 ZANKN_1 Zamknij wagon pierwszy
%I0009 ZAMKN_2 Zamknij wagon drugi
%I00010 OTW_PIR Otwrz wagon pierwszy
%I00011 OTW_DRU Otwrz wagon drugi
%Q0001 DRZWI_1 Otwarcie drzwi 1
%Q0002 DRZWI_2 Otwarcie drzwi 2
%Q0003 DRZWI_3 Otwarcie drzwi 3
%Q0004 DRZWI_4 Otwarcie drzwi 4
%Q0005 DRZWI_5 Otwarcie drzwi 5
%Q0006 DRZWI_6 Otwarcie drzwi 6
%Q0008 SYGNAL Sygnalizacja otwarcia drzwi

Powodzenia!

16 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 6.1 Sterowanie wind dwu poziomow
Zaprojektowa sterowanie wind 2-poziomow, w ktrej wyrniamy nastpujce sygnay sterujce:

I1 - danie jazdy w d,
I2 - danie jazdy w gr,

Sygnaami wyjciowymi s:

Q5 - wczenie silnika do jazdy w d,


Q6 - wczenie silnika do jazdy w gr.

danie jazdy moe by przyjte dopiero po zakoczeniu poprzedniego cyklu.

Cykl skada si z:
1. wczenia silnika do jazdy w odpowiednim kierunku (na czas 5 sekund)
2. czasu oczekiwania po dojechaniu do odpowiedniego poziomu (3 sekundy).

Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 W_DOL danie jazdy w d


%I0002 W_GORE danie jazdy w gr
%Q0005 SIL_DOL Silnik w d
%Q0006 SIL_GOR Silnik w gr

Powodzenia!

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 17


Zadanie 6.2 Sterowanie wind dwu poziomow z czujnikami
Zaprojektowa sterowanie wind 2-poziomow posiadajc moliwo wczenia silnika do jazdy szybkiej i
jazdy wolnej w d lub w gr. Najpierw winda wcza silnik do jazdy szybkiej, natomiast przy dojedaniu do danego
poziomu wycza go i zacza silnik do jazdy wolnej. Winda posiada czujniki:
- czujnik dojedania windy w d,
- czujnik dojedania windy w gore,
- czujnik dojechania windy w d,
- czujnik dojechania windy w gore.
W zalenoci od tego, w ktrym kierunku winda jedzie, fakt ten powinien by sygnalizowany odpowiedni kontrolk w
kabinie.

Zasada pracy windy:


danie jazdy przyjmowane jest dopiero po zakoczeniu jazdy. Generuje ono jeden cykl pracy windy. Po
przyjciu dania jest ono bezporednio realizowane. Operator windy ma mie moliwo natychmiastowego
zatrzymania windy w dowolnym miejscu. Winda nie powinna przyj dania jazdy na poziom, na ktrym aktualnie si
znajduje.

Cykl skada si z:
1. wczenia silnika do jazdy szybkiej w odpowiednim kierunku,
2. wyczenia silnika szybkiego i wczenia wolnego (po przyjciu sygnau z czujnika dojedania do
odpowiedniego poziomu),
3. wyczenia silnika jazdy wolnej (po otrzymaniu sygnau o dojechaniu do danego poziomu) i wyczenia kontrolki
w kabinie,
4. czasu oczekiwania (3 sekundy).

Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 W_DOL danie jazdy w d


%I0002 W_GORE danie jazdy w gr
%I0004 STOP Stop
%I0005 CZU_DOL Czujnik dojedania w d
%I0006 CZU_GOR Czujnik dojedania w gr
%I0007 DOL Winda dojechaa w d
%I0008 GORA Winda dojechaa w gr
%Q0001 KON_DOL Kontrolka jazdy w d
%Q0002 KON_GOR Kontrolka jazdy w gr
%Q0003 WOL_DOL Jazda wolna w d
%Q0004 WOL_GOR Jazda wolna w gr
%Q0005 SZY_DOL Jazda szybka w d
%Q0006 SIL_SZY Jazda szybka w gr

Powodzenia!

18 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 7 Linia napeniania kartonw
Zaprojektowa sterowanie lini do napeniania kartonw zadan iloci pynu. Linia zbudowana jest w oparciu o
tamocig, wyposaony w czujniki I1, I2. Operator posiada przyciski do sterowania: I3 i I4 (monostabilne).
I1 przesunito o jeden karton,
I2 karton jest obecny pod zaworem,
I3 START,
I4 STOP,
Q1 otwarcie zaworu do napeniania,
Q2 wczenie silnika do przesuwu tamocigu.
Po przesuniciu o jeden karton powinno nastpi zatrzymanie tamocigu na czas 4 s. Gdy w danym miejscu
znajduje si karton, powinno nastpi jego napenianie przez czas 3 s. Po zatrzymaniu linii przyciskiem STOP lub po
zaniku napicia zasilajcego powinno nastpi zachowanie aktualnego stanu pracy linii w pamici sterownika, tak aby po
ponownym jej uruchomieniu nie nastpio zarwno przelanie kartonu jak i te jego ominicie.

Ref Address Name Description

%I0001 KON_PRZ Przesunito jeden w d


%I0002 JEST Jest karton
%I0003 PRACA Praca start
%I0004 STOP Praca stop
%Q0001 OTW_ZAW Otwarcie zaworu
%Q0002 PRZESUW Przesuw tamy
%Q0007 K_STOP Kontrolka: STOP
%Q0008 K_START Kontrolka: STRAT
%M0001 CZEKAJ Oczekiwanie po przesuwie
%M0002 ZAWOR Otwrz zawr
%M00010 START Cykl trwa
%M00011 ZAKONCZ Zakocz cykl
%M00013 ZBO_STA Zbocze start
%M00015 ZBO_STO Zbocze stop
%M00016 KONIEC Koniec napeniania
%M00017 ZERUJ Koniec cyklu
%M00019 ODCZYT Odtwrz stan pracy
%M00020 ZAPIS Zachowaj stan pracy
%M00021 PRZ_ZBO Zbocze przesunicia

Powodzenia!

Zadanie 8 Sygnalizacja wietlna


Zaprojektowa sterowanie sygnalizacj wietln na przejciu dla pieszych. Naley zaoy, e ukad bdzie
generowa siedem stanw odpowiadajcych nastpujcym zdarzeniom:
1. pojazdy maj wiato zielone, piesi - czerwone,
2. pojazdy - te, piesi - czerwone,
3. pojazdy - czerwone, piesi czerwone,
4. pojazdy - czerwone, piesi - zielone,
5. pojazdy - czerwone,
6. pojazdy - czerwone i te, piesi - czerwone,
7. pojazdy - te.

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 19


Kademu z tych zdarze przypisa naley flag (przykadowo flaga 1 bdzie powodowaa zawiecenie wiata
zielonego dla pojazdw i wiata czerwonego dla pieszych). Wyrniamy take dwa tryby pracy ukadu:
a. tryb pulsowanie,
b. tryb sterowanie.
Po wczeniu zasilania do sterownika powinien on przej w tryb pulsowanie - pulsowanie wiata tego.
Pulsowanie powinno si odbywa z okresem rwnym 2 s. W momencie zaczenia wejcia I2 sterownik wchodzi w tryb
sterowanie. Nastpuje zawiecenie wiata zielonego dla pojazdw i wiata czerwonego dla pieszych (flaga 1). Ukad
oczekuje na nacinicie przycisku dania zielonego wiata dla pieszych (wejcie I1). Gdy to danie wystpi, ukad sprawdza
czy wiato zielone dla pojazdw wiecio si przynajmniej przez 30 sekund. Jeeli tak byo, to ukad inicjuje cykl zapalenia
wiata zielonego dla pieszych. Jeeli natomiast wiato zielone dla pojazdw wiecio si przez czas krtszy ni 30 sekund, to
ukad pamita o zgoszonym daniu, lecz z jego realizacj czeka a upyn wspomniane 30 sekundy. Zgoszenie dania
pieszych jest sygnalizowane zawieceniem kontrolki na supie (Q6). Ukad nie powinien jednak przyj dania pieszych w
przypadku, gdy jest on wanie w trakcie realizacji takiego dania (z poprzedniego cyklu).
Wykonanie cyklu jest nastpujce:
- Zawiecenie wiata tego dla pojazdw.
- Zgaszenie wiata tego dla pojazdw i zawiecenie wiata czerwonego dla pojazdw (po upywie 5 sekund
od ostatniej zmiany).
- Zawiecenie wiata zielonego dla pieszych (po upywie 3 sekund od poprzedniej zmiany).
- Mruganie wiata zielonego dla pieszych (po upywie 15 sekund od ostatniej zmiany).
- Zgaszenie wiata zielonego dla pieszych i zawiecenie wiata czerwonego dla pieszych (po upywie 6 sekund
od ostatnie zmiany).
- Zawiecenie wiata tego (po upywie 3 sekund od ostatniej zmiany).
- Zgaszenie wiata czerwonego i tego dla pojazdw i zawiecenie zielonego (po 3 sekundach od ostatniej
zmiany).
- Po zakoczeniu cyklu naley zgasi kontrolk zgoszenia dania na supie.
- Przyj, e wszystkie wczniki s monostabilne (po puszczeniu wracaj samoczynnie do pozycji wyjciowej).

Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 ZAD PIE danie pieszych


%I0002 STEROW Przejcie w tryb sterowanie
%I0003 PULSUJ Powrt do trybu pulsowanie
%Q0001 POJ CZE wiato czerwone dla pojazdw
%Q0002 POJ ZIE wiato zielone dal pojazdw
%Q0003 PIE CZE wiato czerwone dla pieszych
%Q0005 PIE ZIE wiato zielone dla pieszych
%Q0006 SLUP Kontrolka na supie
%M0001 FLAGA1 Pojazdy: ziel, piesi: czerw
%M0002 FLAGA2 Pojazdy: te, piesi: czerw
%M0003 FLAGA3 Pojazdy: czerw, piesi: czerw
%M0004 FLAGA4 Pojazdy: czerw, piesi: ziel
%M0005 FLAGA5 Pojazdy: czerw
%M0006 FLAGA6 Pojazdy: czerw, te, piesi: czerw
%M0006 FLAGA7 Pojazdy: te

Powodzenia!

20 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 9 Regulator PID
Napisa program do sterowania grzak tak, aby temperatura w pomieszczeniu wynosia tyle, ile zadano
w rejestrze R2. Warto tej temperatury moe by zmieniana przez operatora w granicach od 0 do 50 jednostek. Naley
przyj, e rnica temperatury zadanej i regulowanej o 1 stopie powinna wywoa warto sterujc rwn 1 jednostce
(wspczynnik wzmocnienia P=1). Warto sterujca powinna zawiera si w granicach 0 ... 32000 jednostek. Naley
take uwzgldni zalecenie, aby grzaka nie otrzymywaa zbyt gwatownych uderze prdowych (ograniczy minimalny
czas reakcji regulatora PID na skokow zmian wartoci zadanej do maksymalnie 100% w cigu 10 sekund). Przyj e
warto zadana znajduje si w rejestrze R2, warto regulowana - w R6, warto sterujca - w R10.
Mona rwnie uwzgldni wspczynnik cakujcy rwny 0.063 rep/s i zaobserwowa zachowanie regulatora.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 PRACA Regulator wyczony


%I0002 MANUAL Sterowanie rczne
%I0003 GORA Regulacja w gr
%I0004 DOL Regulacja w d
%I0007 ZWIEKSZ Zwiksz warto zadan
%I0008 ZMINEJS Zmniejsz warto zadan
%Q0001 DZIALA Regulator pracuje
%R0002 ZADANA Warto zadana
%R0006 REGUL Warto wielkoci regulowanej
%R0010 STERUJ Warto sterujca
%R0018 REJ_PID Rejestr bloku PID

Powodzenia!

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 21


Zadania o zikszonym stopniu zaawansowania

Zadanie 10 Odczyt daty i czasu z zegara kalendarzowego w sterowniku


wiczenie to mona przeprowadzi korzystajc ze sterownika posiadajcego zegar czasu rzeczywistego, np.:
IC693UDR005, IC693UAL006, IC693CPU331 i jednostek wyszych.

Napisa program dokonujcy cyklicznego odczytu daty i czasu (rok, miesic, dzie, godzina, minuta, sekunda,
dzie tygodnia) co 1 sekund. Dla operacji odczytu zegara s do dyspozycji rejestry od R1 do R6.
Proponowana tablica zmiennych:

Ref Address Name Description

%T0001 POTWIE Odczyt zegara OK.


%R0001 TRYB 0=odczyt, 1= zapis
%R0002 ZAW_1 Zawsze 1

Powodzenia!

Zadanie 11 Sterownie silnikami krokowymi


wiczenie niniejsze mona przeprowadzi korzystajc ze sterownika Micro-90 posiadajcego przynajmniej jedno wyjcie
tranzystorowe, np. IC693UDR005, IC693UAL006 itp.

Napisa program sterujcy silnikiem krokowym w nastpujcy sposb: po doprowadzeniu do wejcia I1 sygnau
logicznego 1 ma zosta wygenerowanych 50 impulsw o czstotliwoci 20Hz.
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ1 Sygna startu od operatora


%Q0494 START Wygeneruj impuls
%T001 ZBOCZE Zmienna pomocnicza
%AQ123 CZESTOT Czstotliwo impulsw
%AQ124 ILOSC Ilo impulsw

Powodzenia!

22 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 12 Komunikacja w protokole SNP
Napisa program, przy pomocy, ktrego moliwe bdzie nawizanie komunikacji w protokole SNP pomidzy
sterownikiem nadrzdnym (master) - sterownik Micro 23- lub 28-punktowy, a sterownikiem podrzdnym (slave) -
sterownik Micro 14-punktowy. Zadaniem sterownika nadrzdnego jest, po nawizaniu komunikacji, odczytanie wartoci 8
wyj ze sterownika podrzdnego oraz zapisanie 6 wej w tym sterowniku. Program naley napisa w sterowniku
nadrzdnym.
Proponowana tablica zmiennych:

Ref Address Name Description

%R0301 STATUS Status komunikacji


%R0302 OPOZN Opnienie komunikacji
%R0305 DANE1 Pierwsze sowo bloku danych
%R0312 DANE8 sme sowo bloku danych
%R0325 LICZNIK Warto licznika
%M0801 RESET Reset licznika
%T0201 START Zaczenie timera
%T0202 KOM_1SK Nawizanie komunikacji w 1 skanie programu
%T0203 BLAD Bd komunikacji
%T0204 KOMUNIK Nawizanie komunikacji
%T0205 ZM_POM Zmienna pomocnicza
%T0206 PO_AW Nawizanie komunikacji po awarii

Powodzenia!

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 23


Zadanie 13 Komunikacja w protokole SNP-X
Napisa program, przy pomocy, ktrego moliwe bdzie nawizanie komunikacji w protokole SNP-X pomidzy
sterownikiem nadrzdnym (master) - sterownik serii 90-30, a dwoma sterownikami podrzdnymi (slave) - sterowniki Micro
14-punktowe. Zadaniem sterownika nadrzdnego jest, po nawizaniu komunikacji, odczytanie wartoci rejestru
pierwszego z jednego i drugiego sterownika podrzdnego i umieszczenie wartoci tych rejestrw, odpowiednio w
rejestrze 100 i 120. Program naley napisa w sterowniku nadrzdnym.
Proponowana tablica zmiennych:

Ref Address Name Description

%R0001 STATUS Status komunikacji


%R0002 OPOZN Opnienie komunikacji
%R0005 DANE1 Pierwsze sowo bloku danych
%R0012 DANE8 sme sowo bloku danych
%R0019 DANE15 Pitnaste sowo bloku danych
%R0026 DANE22 Dwudzieste drugie sowo bloku danych
%R0050 LICZNIK Warto licznika
%M0001 RESET Reset licznika
%T0001 START Zaczenie timera
%T0002 KOM_1SK Nawizanie komunikacji w 1 skanie programu
%T0003 BLAD Bd komunikacji
%T0004 KOMUNIK Nawizanie komunikacji
%T0005 ZM_POM1 Zmienna pomocnicza 1
%T0006 ZM_POM2 Zmienna pomocnicza 2

Powodzenia!

24 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 14 Przesyanie danych przez port szeregowy

Napisa program realizujcy cykliczne, co 1 sekund, wysyanie poprzez port szeregowy w formacie ASCII
cigu znakw: ABCD. Program ma wycznie wysya znaki ASCII, nie naley implementowa procedur do odczytu
znakw ASCII z portu szeregowego.
Proponowana tablica zmiennych:

Ref Address Name Description

%R00002 IloscSlowDoWyslania Ilo sw do wysania


%R00005 NrPortu Numer portu (1=19, 2=20)
%R00050 Tmr1 Timer 1
%R00053 Tmr2 Timer 2
%R00056 Tmr3 Timer 3
%R00059 Tmr4 Timer 4
%R00100 StatusFunkcjiComreq Status komunikacji
%R00101 ComInit Operacja COMREQ Init Port
%R00115 ComCancel Operacja COMREQ cancel
%R00122 ComCancel1 Operacja COMREQ cancel - cd
%R00123 ComPortStatus Operacja COMREQ Get Port Status
%R00129 ComPortStatus1 Operacja COMREQ Get Port Status cd
%R00143 ComWrite Operacja COMREQ Write Bytes
%R00150 ComWrite1 Operacja COMREQ Write Bytes - cd
%M00001 ComFault COMREQ Fault Marker sygna bdu
wywoania funkcji - COMREQ
%T00001 Sekwencja Sekwencja krokw (typ zmiennej - word)
%T00001 Krok1 Krok1
%T00002 Krok2 Krok2
%T00003 Krok3 Krok3
%T00004 Krok4 Krok4
%T00005 Krok5 Krok5
%T00006 Krok6 Krok6
%T00007 Krok7 Krok7
%T00008 Krok8 Krok8
%T00009 Krok9 Krok9
%T00010 Krok10 Krok10
%T00011 Krok11 Krok11
%T00012 Krok12 Krok12
%T00013 Krok13 Krok13
%T00014 Krok14 Krok14
%T00015 Krok15 Krok15
%T00016 Krok16 Krok16
%I00001 Wejscia Wejcia lokalne
%I00065 SlowoStatusowePortu Port Status Word sowo statusowe
portu
%I00076 WS Write Success sukces wysyania znakw
%I00079 RS Read Success sukces odczytu
%G00001 Impuls_1min Impuls co 1 minut

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 25


Przykadowa konfiguracja portu do wysyania znakw ASCII:

Powodzenia!

26 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Informacje pomocnicze do zada

Zadanie 1.1 Transkoder


Proponowana tablica deklaracji zmiennych nie ulega zmianie:

Ref Address Name Description

%I0001 WEJ_1 Wejcie pierwsze


%I0002 WEJ_2 Wejcie drugie
%I0003 WEJ_3 Wejcie trzecie
%Q0001 WYJ_1 Wyjcie pierwsze
%Q0002 WYJ_2 Wyjcie drugie
%Q0003 WYJ_3 Wyjcie trzecie

Nie zachodzi potrzeba stosowania dodatkowych zmiennych jak i blokw funkcyjnych.


Dla rozwizania zadania mona napisa tabel prawdy, czyli wszystkie kombinacje sygnaw wejciowych i
odpowiadajce im sygnay wyjciowe.

Zadanie 1.2 Transkoder strobowany


Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ_1 Wejcie pierwsze


%I0002 WEJ_2 Wejcie drugie
%I0003 WEJ_3 Wejcie trzecie
%I0004 WE_WPIS Wyjcie wpisujce
%Q0001 WYJ_1 Wyjcie pierwsze
%Q0002 WYJ_2 Wyjcie drugie
%Q0003 WYJ_3 Wejcie trzecie
%M0001 FLAGA1 Do zaczenia Q1
%M0002 FLAGA2 Do zaczenia Q2
%M0003 FLAGA3 Do zaczenia Q3
%M0009 IMPULS Impuls zerujcy
%M0010 WPIS Dokonanie wpisu

Nie zachodzi potrzeba stosowania blokw funkcyjnych.

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 27


Zadanie 2.1 Licznik modulo 3
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJSCIE Wejcie zliczajce


%I0004 RESET Wejcie zerujce
%M0001 POWROT Impuls zerujcy

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:

E enable: umoliwia prac bloku


funkcyjnego
R reset: stan wysoki tego wejcia
zeruje licznik
PV preset value: warto zadana
Q wyjcie: jest aktywne, gdy
aktualna warto rejestru
roboczego jest rwna PV

28 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 2.2 Dodawanie i mnoenie
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ_1 Wejcie zliczajce nr 1


%I0002 WEJ_2 Wejcie zliczajce nr 2
%I0003 TRYB Przecznik tego, co ma by na wyjciu
%I0004 RESET Wejcie zerujce
%M0001 POWROT1 Impuls zerujce licznik nr 1
%M0002 POWROT2 Impuls zerujcy licznik nr 2

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis bloku podano w zadaniu 21
2. Dodawanie dwch liczb:

E enable: umoliwia prac bloku


funkcyjnego
I1 parametr wejciowy pierwszy
I2 parametr wejciowy drugi
Q wyjcie: jest aktywne, gdy
aktualna warto rejestru
roboczego jest rwna PV
OK potwierdzenie poprawnego
wykonania dziaania

3. Mnoenie dwch liczb:

E enable: umoliwia prac bloku


funkcyjnego
I1 parametr wejciowy pierwszy
I2 parametr wejciowy drugi
Q wyjcie: jest aktywne, gdy
aktualna warto rejestru
roboczego jest rwna PV
OK - potwierdzenie poprawnego
wykonania dziaania

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 29


Zadanie 2.3 Relacje pomidzy liczbami
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ_1 Wejcie zliczajce nr 1


%I0002 WEJ_2 Wejcie zliczajce nr 2
%I0003 TRYB Przecznik tego, co ma by na wyjciu
%I0004 RESET Wejcie zerujce
%Q0008 SYGNAL Sygnalizacja zadanej relacji
%M0001 POWROT1 Impuls zerujcy licznik nr 1
%M0002 POWROT2 Impuls zerujce licznik nr 2
%M0005 MNIEJ Liczba w rej. R2 jest < od liczby w rej. R6

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis bloku - w zadaniu 2.1
2. Dodawanie dwch liczb:
Opis bloku - jak w zadaniu 2.2
3. Mnoenie dwch liczb:
Opis bloku - jak w zadaniu 2.2
4. Relacja matematyczna mniejszoci:

E enable: umoliwia prac bloku


funkcyjnego
I1 parametr wejciowy pierwszy
I2 parametr wejciowy drugi
Q sygna wyjciowy pojawiajcy si
gdy parametry I1 i I2 speniaj
relacj

30 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 3 Generator fali prostoktnej
Okres przebiegu jak i jego wypenienie mona regulowa zmieniajc warto PV zadan (Preset Value).
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 STROB Restart licznikw


%Q0001 Q Wyjcie proste
%Q0002 NOTQ Wyjcie zanegowane
%M0001 ZERUJ1 Zerowanie licznika 1
%M0002 ZATRZY1 Zatrzymaj licznik 1
%M0003 ZATRZY2 Zatrzymaj licznik 2
%M0004 ZRERUJ2 Zerowanie licznika 2
%M0009 PIK Zamiana sygnau na impuls
%M0010 RESET Reset licznikw

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:

E enable: umoliwia prac bloku


funkcyjnego
R reset: wejcie zerujce
PV preset value: warto zadana
Q sygna wyjciowy informujcy o
zrwnaniu lub przekroczeniu
wartoci zadanej przez stan
rejestrw

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 31


Zadanie 4 Liczniki kaskadowe
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 START Start


%I0002 WEJSCIE Wejcie zliczajce
%Q0001 ZLICZAM Zliczanie
%Q0002 KONIEC Koniec zliczania
%M0001 KASOW1 Kasowanie licznika 1
%M0003 KASOW2 Kasowanie licznika 2
%M0004 WEJ1 Wejcie licznika 1
%M0005 WEJ2 Wejcie licznika 2
%M0006 R6=0000 Wykrywanie czy R6=0000
%M0010 R2=0004 Wykrywanie czy R2=0004
%M0011 R6=0004 Wykrywanie czy R6=0004
%M0040 RESET Reset

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis w zadaniu 2.1
2. Relacja matematyczna rwnoci:

E enable: umoliwia prac bloku


funkcyjnego
I1 parametr wejciowy pierwszy
I2 parametr wejciowy drugi
Q sygna wyjciowy pojawiajcy si
gdy I1 i I2 speniaj relacj

3. Ustawianie wartoci danego bitu cigu bitowego na 1:

32 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


E enable: umoliwia prac bloku
funkcyjnego
IN adres pierwszego sowa cigu
sw
BIT numer bitu sowa IN, ktrego
warto ma zosta sprawdzona

Zadanie 5 Sterowanie drzwiami tramwaju


Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 ZADA_1 danie otwarcia drzwi 1


%I0002 ZADA_2 danie otwarcia drzwi 2
%I0003 ZADA_3 danie otwarcia drzwi 3
%I0004 ZADA_4 danie otwarcia drzwi 4
%I0005 ZADA_5 danie otwarcia drzwi 5
%I0006 ZADA_6 danie otwarcia drzwi 6
%I0007 ZEZWOLE Zezwolenie otwarcia drzwi
%I0008 ZAMKN_1 Zamknij wagon pierwszy
%I0009 ZAMKN_2 Zamknij wagon drugi
%I0010 OTW_PIE Otwrz wagon pierwszy
%I0011 OTW_DRU Otwrz wagon drugi
%Q0001 DRZI_1 Otwarcie drzwi 1
%Q0002 DRZI_2 Otwarcie drzwi 2
%Q0003 DRZI_3 Otwarcie drzwi 3
%Q0004 DRZI_4 Otwarcie drzwi 4
%Q0005 DRZI_5 Otwarcie drzwi 5
%Q0006 DRZI_6 Otwarcie drzwi 6
%Q0008 SYGNAL Sygnalizacja otwarcia drzwi
%M0001 ZAP_1 Zapamitanie dania 1
%M0002 ZAP_2 Zapamitanie dania 2
%M0003 ZAP_3 Zapamitanie dania 3
%M0004 ZAP_4 Zapamitanie dania 4
%M0005 ZAP_5 Zapamitanie dania 5
%M0006 ZAP_6 Zapamitanie dania 6
%M0008 OTW_2 Sygnalizacja otwarcia wagonu 2
%M0009 OTW_1 Sygnalizacja otwarcia wagonu 1
%M0010 ZEZ_OTW Otworzy drzwi

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 33


Proponowane do wykorzystania bloki funkcyjne:
1. Blok przesania bitw:

E enable: umoliwia prac bloku


funkcyjnego
IN warto lub adres do
przeniesienia
Q wyjcie
OK potwierdzenie wykonania
operacji

Zadanie 6.1 Sterowanie wind dwu poziomow


Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 W_DOL danie jazdy w d


%I0002 W_GORE danie jazdy w gr
%Q0005 SIL_GOL Silnik w d
%Q0006 SIL_GOR Silnik do gry
%M0001 LICZ_R2 Liczy R2
%M0002 LICZ_R6 Liczy R6
%M0003 KAS_R6 Kasowanie R6
%M0009 KAS_R2 Kasowanie R2
%M0031 LICZY10 Liczy R10
%M0032 LICZY14 Liczy R14
%M0033 KAS_R14 Kasowanie R14
%M0039 KAS_R10 Kasowanie R10
%M0100 BLOKADA Winda wanie jedzie

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis w zadaniu 3

34 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 6.2 Sterowanie wind dwu poziomow z czujnikami
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 W_DOL danie jazdy w d


%I0002 W_GORE danie jazdy w gr
%I0004 STOP Stop
%I0005 CZU_DOL Czujnik dojedania w d
%I0006 CZU_GOR Czujnik dojedania w gr
%I0007 DOL Winda dojechaa w d
%I0008 GORA Winda dojechaa do gry
%Q0001 KON_DOL Kontrolka jazdy w d
%Q0002 KON_GOR Kontrolka jazdy w gr
%Q0003 WOL_DOL Jazda wolna w d
%Q0004 WOL_GOR Jazda wolna w gr
%Q0005 SZY_DOL Jazda szybka w d
%Q0006 SIL_SZY Jazda szybka w gr
%M0001 LICZY_2 Liczy R2
%M0002 KASUJ_2 Kasowanie R2
%M0003 LICZY_6 Liczy R6
%M0004 KAS_R6 Kasowanie R6
%M1000 BLOKADA Blokada dania

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis w zadaniu 3

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 35


Zadanie 7 Linia napeniania kartonw z zabezpieczeniami
Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 KON_PRZ Przesunito o jeden w przd


%I0002 JEST Jest karton
%I0003 PRACA Praca start
%I0004 STOP Praca stop
%Q0001 OTW_ZAW Otwarcie zaworu
%Q0002 PRZESUW Przesuw tamy
%Q0007 K_STOP Kontrolka: STOP
%Q0008 K_START Kontrolka: START
%M0001 CZEKAJ Oczekiwanie po przesuwie
%M0002 ZAWOR Otwrz zawr
%M0010 START Cykl trwa
%M0011 ZAKONCZ Zakocz cykl
%M0013 ZBO_STA Zbocze start
%M0015 ZBO_STO Zbocze stop
%M0016 KONIEC Koniec napeniania
%M0017 ZERUJ Koniec cyklu
%M0019 ODCZYT Odtwrz stan pracy
%M0020 ZAPIS Zachowaj stan pracy
%M0021 PRZ_ZOB Zbocze przesunicia

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis w zadaniu 3
2. Blok przesania bitw:
Opis w zadaniu 5
3. Wywoanie podprogramu:

E enable: zezwolenie na wykonanie


polece

36 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 8 Sygnalizacja wietlna

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 37


Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 ZAD_PIE adnych pieszych


%I0002 STEROW Przejcie do trybu sterowania
%I0003 PULSUJ Powrt do trybu pulsowania
%Q0001 POJ_CZE wiato czerwone dla pojazdw
%Q0002 POJ_ZOL wiato te dla pojazdw
%Q0003 POJ_ZIE wiato zielone dla pojazdw
%Q0004 PIE_CZE wiato czerwone dla pieszych
%Q0005 PIE_ZIE wiato zielone dla pieszych
%Q0006 SLUP Kontrolka na supie
%M0001 FLAGA1 Pojazdy: ziel, piesi: czerw
%M0002 FLAGA2 Pojazdy: te, piesi: czerw
%M0003 FLAGA3 Pojazdy: czerw, piesi: czerw
%M0004 FLAGA4 Pojazdy: czerw, piesi: ziel
%M0005 FLAGA5 Pojazdy: czerw
%M0006 FLAGA6 Pojazdy: czerw, te, piesi: czerwone
%M0007 FLAGA7 Pojazdy: te
%M0100 LICZY1 Dziaa licznik nr 1
%M0101 KASUJ1 Kasowanie licznika nr 1
%M0102 LICZY2 Dziaa licznik nr 2
%M0103 KASUJ2 Kasowanie licznika nr 2
%M0999 ZAPAL Zapal kontrolk na supie
%M1000 TRYB Tryb pracy (serow./pulsow.)
%M1001 ZGLOSZ Piesi zgosili danie
%M1006 LICZ_10 Liczy %R0010
%M1007 KAS_10 Kasowanie %R0010
%M0008 LICZ_14 Liczy %R0014
%M0009 KAS_14 Kasowanie %R0014
%M1010 LICZ_18 Liczy %R0018
%M1011 KAS_18 Kasowanie %R0018
%M1012 MIGANIA Miganie wiata zielonego
%M1013 LICZ_22 Liczy %R0022
%M1014 KAS_22 Kasowanie %R0022
%M1015 LICZ_26 Liczy %R0026
%M1016 KAS_26 Kasowanie %R0026
%M1017 LICZ_30 Liczy %I0030
%M0018 DALEJ Cig dalszy do %I0001+1
%M0019 KAS_30 Kasowanie %R0030
%M1020 KASUJ Kasowanie rejestrw
%M1021 KAS_R34 Kasowanie %R0034
%M1022 LICZ_34 Liczy %R0034
%M1023 START30 Rozpoczcie cyklu 30 sekundowego
%M1024 BLOKADA Blokada 30 sekundowa

38 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Proponowane do wykorzystania bloki funkcyjne:
1. Licznik zliczajcy w gr:
Opis w zadaniu 3

Zadanie 9 Regulator PID


Proponowana pena tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 PRACA Regulator wczony


%I0002 MANUAL Sterowanie rczne
%I0003 GORA Regulacja w gr
%I0004 DOL Regulacja w d
%I0007 ZWIEKSZ Zwiksz warto zadan
%I0008 ZMINEJS Zmniejsz warto zadan
%Q0001 DZIALA Regulator pracuje
%M0001 STOP_50 Koniec zwikszania R2
%M0002 ZBO_DOL Zbocze sygnau wpisujcego w R2
%M0003 ZBO_GOR Zbocze sygnau wpisujcego w R14
%M0004 NIE_ZMN Nie zmniejszaj wicej
%R0002 ZADANA Warto zadana
%R0006 REGUL Warto wielkoci regulowanej
%R0010 STERUJ Warto sterujca
%R0014 POMOC Rejestr pomocniczy
%R0018 REJ_PID Rejestr PID

Uwaga: aby zrealizowa zadanie w praktyce, wielkoci regulowanej powinien zosta przypisany rejestr wejcia
analogowego (%AI), przez ktre realizowany jest pomiar wielkoci regulowanej (temperatury), a wartoci
sterujcej rejestr wyjcia analogowego (%AQ), sucego do sterowania moc grzaki. Do realizacji zadania
konieczny jest sterownik 90-30.

Proponowane do wykorzystania bloki funkcyjne:


1. Licznik zliczajcy w gr:
Opis w zadaniu 3
2. Blok przemieszczania liczb cakowitych:

E enable: zezwolenie na wykonanie


operacji
IN warto staa lub adres
zmiennej, ktrej warto ma by
przemieszczona
Ok sygna potwierdzenia wykonania
operacji
Q miejsce, do ktrego ma si odby
kopiowanie

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 39


3. Regulator PID:

E enable: zezwolenie na wykonanie


operacji
SP punkt pracy regulatora
PV wielko regulowana
MAN wejcie przeczania w rczny
tryb pracy
UP zwikszenie sygnau sterujcego
(tylko podczas rcznego trybu
pracy)
DN zmniejszenie sygnau sterujcego
(tylko podczas rcznego trybu
pracy)
Register adres pierwszego z 40
rejestrw, w ktrych
przechowywane s parametry
regulatora
Ok sygna potwierdzenia zrealizowania
algorytmu bez przeszkd
CV warto sygnau sterujcego

40 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 10 Odczyt daty i czasu z zegara kalendarzowego w sterowniku
Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%T0001 POTWIE Odczyt zegara OK


%R0001 TRYB 0 = odczyt, 1 = zapis
%R0002 ZAW_1 Zawsze 1

Naley uy blok funkcyjny SVCREQ i wpisa numer funkcji 7:

E enable: zezwolenie na wykonanie


operacji
Ok potwierdzenie poprawnie wykonanej
operacji przez blok funkcyjny
FNC na wejciu tym okrelamy numer
funkcji realizowanej przez blok
SVCREQ. Dla operacji odczytu lub
zapisu zegara w sterowniku naley
wpisa 7
PRM zawiera adres pocztkowy bloku
parametrw funkcji okrelonej
przez FNC

Funkcja SVCREQ o numerze 7 moe dokona odczytu lub zmiany ustawienia zegara w sterowniku
podtrzymujcego aktualny czas i dat. Funkcja SVCREQ nr 7 moe operowa na 6 rejestrach. Warto 0 w pierwszym
rejestrze wykorzystywanym przez t funkcj oznacza, e dokonywany bdzie odczyt biecego czasu i daty, warto 1 -
oznacza ustawienie nowego czasu i daty. Wpisanie wartoci 1 do drugiego rejestru wykorzystywanego przez funkcj
SVCREQ oznacza e dane bd w formacie BCD. Przy odczycie zegara rejestry od 1 do 6 bd zawieray nastpujce
informacje:

bajt wyszy bajt niszy


rejestr pierwszy 0
rejestr drugi 1
rejestr trzeci miesic rok
rejestr czwarty godzina dzie
rejestr pity sekunda minuta
rejestr szsty dzie tygodnia niewykorzystany (zera)

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 41


Zadanie 11 Sterownie silnikami krokowymi
Zakadamy, e sterowanie silnikiem krokowym odbywa si bdzie za pomoc wyjcia Q1 (wyjcie
tranzystorowe). Aby uaktywni prac tego wyjcia jako generatora fali prostoktnej naley odpowiednio skonfigurowa
sterownik, np.:

Nastpnie konieczne jest zaadowanie wartoci do rejestrw AQ123 (czstotliwo z zakresu 15...5000Hz) oraz
AQ124 (ilo impulsw z zakresu 0...65535) oraz uruchomienie generatora fali prostoktnej wyjciemQ494.

Proponowana tablica deklaracji zmiennych:

Ref Address Name Description

%I0001 WEJ1 Sygna startu od operatora


%Q0494 START Wygeneruj impuls
%T0001 ZBOCZE Zmienna pomocnicza
%AQ123 CZESTOT Czstotliwo impulsw
%AQ124 ILOSC Ilo impulsw

42 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 12 Komunikacja w protokole SNP
w programie naley wykorzysta funkcj COMREQ
w celu odczytania wyj naley uy komend: Attach oraz Read System Memory
w celu zapisania wej naley uy komend: Attach oraz Write System Memory
program naley napisa w ten sposb aby odczyt i zapis nastpoway cyklicznie po sobie. Warunkiem
rozpoczcia kolejnego cyklu jest pojawienie si wartoci 1 w rejestrze statusowym komunikacji
program naley napisa w ten sposb, aby po wyczeniu i ponownym wczeniu zasilania, komunikacja
pomidzy sterownikami zostaa nawizana automatycznie

Proponowana tablica zmiennych:

Ref Address Name Description

%R0301 STATUS Status komunikacji


%R0302 OPOZN Opnienie komunikacji
%R0305 DANE1 Pierwsze sowo bloku danych
%R0312 DANE8 sme sowo bloku danych
%R0325 LICZNIK Warto licznika
%M0801 RESET Reset licznika
%T0201 START Zaczenie timera
%T0202 KOM_1SK Nawizanie komunikacji w 1 skanie programu
%T0203 BLAD Bd komunikacji
%T0204 KOMUNIK Nawizanie komunikacji
%T0205 ZM_POM Zmienna pomocnicza
%T0206 PO_AW Nawizanie komunikacji po awarii

Proponowane do wykorzystania bloki funkcyjne:

1. Blok przemieszczenia liczb cakowitych:


Opis w zadaniu 9
2. Przekanik czasowy bez pamici:
Opis w przykadzie 2
3. Relacja matematyczna rwnoci:
Opis w zadaniu 4
4. Blok przemieszczenia siedmiu staych wartoci:
Opis w przykadzie 18
5. Licznik zliczajcy w gr:
Opis w zadaniu 2.1
6. Relacja matematyczna wikszoci

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 43


E enable: zezwolenie na wykonanie
operacji
I1 parametr wejciowy pierwszy
I2 parametr wejciowy drugi
Q sygna wyjciowy, pojawiajcy si,
gdy I1 i I2 speniaj relacj

1. Funkcja umoliwiajca nawizanie komunikacji

E enable: zezwolenie na wykonanie


operacji
IN adres pierwszego sowa bloku danych
SYS numer kasety i numer gniazda, w
ktrym jest zainstalowany modu, z
ktrym ma zosta nawizana
komunikacja
TAS numer portu: 19 (0013H)-port pierwszy
20 (0014H)-port drugi
FT sygna wyjciowy, pojawiajcy si, gdy
nawizanie komunikacji si nie
powiedzie

Opis parametrw bloku danych BLKMOV dla funkcji COMREQ


Attach: 07200 (1C20)

Sowo Definicja Warto


adres startowy Dugo bloku danych 7
adres startowy+1 Flaga WAIT/NOWAIT 0=NOWAIT
adres startowy+2 Typ zmiennej* sowa statusowego np. 8=%R
adres startowy+3 Adres sowa statusowego np. 99
minus 1
adres startowy+4 nie uywane 0
adres startowy+5 nie uywane 0
adres startowy+6 Numer komendy 7200
adres startowy+7 1 i 2 bajt ID slvea warto hex
adres startowy+8 3 i 4 bajt ID slavea warto hex
adres startowy+9 5 i 6 bajt ID slavea warto hex
adres startowy+10 7 i 8 bajt ID slavea 0
adres startowy+11 Typ zmiennej, w ktrej przechowywane s informacje zwrotne np. 8=%R
od urzdzenia slave
adres startowy+12 Adres, pod ktrym przechowywane s informacje od urzdzenia np. 170
slave w pamici urzdzenia master

44 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Read System Memory: 07202 (1C22)

Sowo Definicja Warto


adres startowy Dugo bloku danych 6
adres startowy+1 Flaga WAIT/NOWAIT 0=NOWAIT
adres startowy+2 Typ zmiennej* sowa statusowego np. 8=%R
adres startowy+3 Adres sowa statusowego np. 300
minus 1
adres startowy+4 nie uywane 0
adres startowy+5 nie uywane 0
adres startowy+6 Numer komendy 7202
adres startowy+7 Typ zmiennej* odczytywanej z urzdzenia slave np. 70=%I
adres startowy+8 Adres zmiennej odczytywanej z urzdzenia slave np. 1
adres startowy+9 Ilo zmiennych odczytywanych z urzdzenia slave np. 8
adres startowy+10 Typ zmiennej*, pod jakim ma by umieszczona odczytana np. 70=%I
zmienna z urzdzenia slave
adres startowy+11 Adres, pod jakim ma by umieszczona zmienna odczytana z np. 17
urzdzenia slave

Write System Memory: 07203 (1C23)

Sowo Definicja Warto


adres startowy Dugo bloku danych 6
adres startowy+1 Flaga WAIT/NOWAIT 0=NOWAIT
adres startowy+2 Typ zmiennej* sowa statusowego np. 8=%R
adres startowy+3 Adres sowa statusowego np. 300
minus 1
adres startowy+4 nie uywane 0
adres startowy+5 nie uywane 0
adres startowy+6 Numer komendy 7203
adres startowy+7 Typ zmiennej*, pod jakim ma by umieszczona zmienna w np. 72=%Q
urzdzeniu slave
adres startowy+8 Adres, pod jakim ma by umieszczona zmienna w urzdzeniu np. 1
slave
adres startowy+9 Ilo zmiennych zapisywanych do urzdzenia slave np. 6
adres startowy+10 Typ zmiennej* zapisywanej do urzdzenia slave np. 72=%Q
adres startowy+11 Adres zmiennej zapisywanej do urzdzenia slave np. 100

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 45


*Oznaczenie typw zmiennych:

Warto Opis
70 %I
72 %Q
74 %T
76 %M
8 %R
10 %AI
12 %AQ

Szczegowe informacje na temat komunikacji, przy uyciu protokou SNP mona znale w ksice Series 90
PLC Serial Communications (GFK-0582).

Zadanie 13 Komunikacja w protokole SNP-X


w programie naley wykorzysta funkcj COMREQ
w celu odczytania rejestrw naley uy komendy X-Read
program naley napisa w ten sposb aby odczyt i zapis nastpoway cyklicznie po sobie. Warunkiem
rozpoczcia kolejnego cyklu jest pojawienie si wartoci 1 w rejestrze statusowym komunikacji
sterowniki podrzdne posiadaj numery identyfikacyjne: 111111 (12593H) i 222222 (12850H)
modu komunikacyjny sterownika nadrzdnego umieszczony jest w 3 slocie kasety podstawowej

Proponowana tablica zmiennych:

Ref Address Name Description

%R0001 STATUS Status komunikacji


%R0002 OPOZN Opnienie komunikacji
%R0005 DANE1 Pierwsze sowo bloku danych
%R0012 DANE8 sme sowo bloku danych
%R0019 DANE15 Pitnaste sowo bloku danych
%R0026 DANE22 Dwudzieste drugie sowo bloku danych
%R0050 LICZNIK Warto licznika
%M0001 RESET Reset licznika
%T0001 START Zaczenie timera
%T0002 KOM_1SK Nawizanie komunikacji w 1 skanie programu
%T0003 BLAD Bd komunikacji
%T0004 KOMUNIK Nawizanie komunikacji
%T0005 ZM_POM1 Zmienna pomocnicza 1
%T0006 ZM_POM2 Zmienna pomocnicza 2

46 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Proponowane do zadania bloki funkcyjne:
1. Blok przemieszczenia liczb cakowitych:
Opis w zadaniu 9
2. Przekanik czasowy bez pamici:
Opis w przykadzie 2
3. Relacja matematyczna rwnoci:
Opis w zadaniu 4
4. Blok przemieszczenia siedmiu staych wartoci:
Opis w przykadzie 18
5. Licznik zliczajcy w gr:
Opis w zadaniu 2.1
6. Funkcja umoliwiajca nawizanie komunikacji
Opis w zadaniu 12

Opis parametrw komendy X-Read 07101 (1BBD)

Sowo Definicja Warto


adres startowy Dugo bloku danych 17
adres startowy+1 Flaga WAIT/NOWAIT 0=NOWAIT
adres startowy+2 Typ zmiennej* sowa statusowego np. 8=%R
adres startowy+3 Adres sowa statusowego minus 1 np. 0
adres startowy+4 nie uywane 0
adres startowy+5 nie uywane 0
adres startowy+6 Numer komendy 7101
adres startowy+7 1 i 2 bajt ID slvea 12593 / 12850
adres startowy+8 3 i 4 bajt ID slavea 12593 / 12850
adres startowy+9 5 i 6 bajt ID slavea 12593 / 12850
adres startowy+10 7 i 8 bajt ID slavea 0
adres startowy+11 Typ komunikacji 0=single-session,
1=multi-session
adres startowy+12 Typ zmiennej* odczytywanej z urzdzenia slave np. 8=%R
adres startowy+13 Adres zmiennej odczytywanej z urzdzenia slave (w programie - 1)
adres startowy+14 Ilo zmiennych odczytywanych z urzdzenia slave (w programie -1)
adres startowy+15 Typ zmiennej*, pod jakim ma by umieszczona zmienna np. 8=%R
odczytana z urzdzenia slave
adres startowy+16 Adres, pod jakim ma by umieszczona zmienna odczytana z (w programie - 100 i
urzdzenia slave 120 - odpowiednio dla
1 i 2 slavea)
adres startowy+17 Typ zmiennej*, pod jakim ma by umieszczone w urzdzeniu np. 8=%R
master sowo statusowe z urzdzenia slave
adres startowy+18 Adres, pod jakim sowo statusowe z urzdzenia slave ma by ( w programie - 0)
umieszczone w rzdzeniu master
adres startowy+19 Response Timeout 0
adres startowy+20 Broadcast Delay 0
adres startowy+21 Modem Turnaround Time 0
adres startowy+22 Transmission Delay 0

* Typy zmiennych i parametry funkcji COMREQ patrz: zadanie 12.

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 47


Przykadowa konfiguracja urzdzenia Master i Slave

Szczegowe informacje na temat komunikacji, przy uyciu protokou SNP-X mona znale w ksice Series 90 PLC
Serial Communications (GFK-0582).

Zadanie 14 Przesyanie danych przez port szeregowy


W zadaniu naley skorzysta z bloku funkcyjnego COMREQ. Blok ten naley odpowiednio skonfigurowa (por.
np z dokumentacj gfk-1645), podajc m.in. kody heksadecymalne wysyanych znakw:
A 41H
B 42H
C 43H
D 44H

Oglnie schemat blokowy wysyania/czytania znakw ASCII poprzez port szeregowy wyglda nastpujco:

48 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 49
Dla realizacji niniejszego zadania schemat ten jednak zosta nieco uproszczony (pomijamy fazy czyszczenia znakw z
portu szeregowego):

Sterownik realizuje nastpujce zadania:


opnienie 2 sekundowe, zalecane po zaczeniu zasilania sterownika,
inicjalizacja portu za pomoc funkcji COMREQ,
sprawdzenie statusu realizacji zadania przez blok COMREQ,
sprawdzenie statusu portu szeregowego za pomoc funkcji COMREQ,
sprawdzenie statusu realizacji zadania przez blok COMREQ,
odmierzanie czasu 1 minuty, po ktrym nastpi ponowne wysanie cigu znakw ASCII.

Jak wida ze schematu blokowego, kadorazowe wywoanie bloku COMREQ pociga za sob konieczno sprawdzania
statusu realizacji zadania przez blok COMREQ.

Blok funkcyjny CPMREQ jest blokiem uniwersalnym, realizuje on tak funkcj (definiowan przez numer
komendy), jaka zostanie podana w bloku rejestrw przyporzdkowanych do wywoywanego bloku COMREQ. Poniej
znajduje si skrtowy opis wybranych funkcji dla bloku COMREQ, dokadniejszy opis znajduje si w dokumentacji np.
GFK-1645, GFK-1503, GFK-0582D.

50 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Funkcja do inicjalizowania portu (4300)
Funkcja ta powoduje wysanie komendy zerowania do okrelonego portu. Powoduje ona rwnie przerwanie
wszystkich wykonywanych w danym momencie funkcji COMREQ oraz zeruje wewntrzny bufor wejciowy.
Przykad bloku danych funkcji do inicjalizowania portu.

Warto Warto Znaczenie


(dziesitna) (heksadecymalna)
Adres 0001 0001 Dugo bloku danych
adres + 1 0000 0000 Tryb NOWAIT
adres + 2 0008 0008 Typ pamici sowa statusu (%R)
adres + 3 0000 0000 Adres sowa statusu minus 1
(%R0001)
adres + 4 0000 0000 Nie wykorzystywane
adres + 5 0000 0000 Nie wykorzystywane
adres + 6 4300 10CC Polecenie inicjalizacji portu

Uwaga:Sowa statusowe polece COMREQ przerwanych na skutek wykonania tego polecenia nie s aktualizowane.
Ostrzeenie: Jeeli polecenie to zostanie wysane w czasie, gdy polecenie COMREQ do zapisu bajtw (4401) wysya
cig przez port szeregowy, transmisja jest wstrzymywana. Miejsce, w ktrym nastpio przerwanie
wysyania cigu znakw jest nieokrelone. Dodatkowo, ostatni znak odbierany przez urzdzenie
komunikujce si z jednostk centraln jest rwnie nieokrelony

Funkcja do odczytu statusu portu (4303)


Funkcja ta zwraca biecy status portu. Wykrywane s nastpujce zdarzenia:
1. Poprzednio zainicjowano danie odczytu, dana liczba znakw zostaa odczytana lub upyn maksymalny
czas oczekiwania.
2. Poprzednio zainicjowano danie zapisu i przesano odpowiedni liczb znakw lub nastpio
przeterminowanie.
Status zwrcony przez funkcj informuje o zaistniaym zdarzeniu (lub zdarzeniach). Jednoczenie moe zaistnie wicej
ni jedno zdarzenie, jeeli poprzednio zainicjowano zarwno polecenie do odczytu, jak i do zapisu.
Przykad bloku danych funkcji do odczytu statusu portu

Warto Warto Znaczenie


(dziesitna) (heksadecymalna)
adres 0003 0003 Dugo bloku danych
adres + 1 0000 0000 Tryb NOWAIT
adres + 2 0008 0008 Typ pamici sowa statusu (%R)
adres + 3 0000 0000 Adres sowa statusu minus 1
(%R0001)
adres + 4 0000 0000 Nie wykorzystywane
adres + 5 0000 0000 Nie wykorzystywane
adres + 6 4303 10CF Funkcja do odczytu statusu portu
adres + 7 0076 004C Typ pamici statusu portu (%M)
adres + 8 0101 0065 Przesunicie w pamici statusu portu
(%M101)

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 51


Status portu
Status portu skada si ze sowa statusu oraz liczby znakw w buforze wejciowym, ktre nie zostay odczytane
przez program sterujcy (znaki odebrane, ktre mona odczyta).

sowo 1 Sowo statusu portu (opis zamieszczono


poniej)
sowo 2 Znaki umieszczone w buforze wejciowym

Dostpne s nastpujce sowa statusu portu:

Bit Nazw Definicja Znaczenie


a
15 RI Trwanie odczytu 1 Dotyczy odczytu bajtw lub odczytu
cigu znakw
0 Przeterminowanie poprzedniego
polecenia odczytu bajtw lub odczytu
cigw, anulowanie lub zakoczenie
14 RS Pomylne zakoczenie 1 Pomylne zakoczenie odczytu bajtw
odczytu lub odczytu cigw
0 Dotyczy odczytu nowych bajtw lub
odczytu cigw znakw
13 RT Przeterminowanie 1 Wystpienie przeterminowania w
czasie odczytu bajtw lub odczytu
cigw
0 Dotyczy odczytu nowych bajtw lub
odczytu cigw znakw
12 WI Trwanie zapisu 1 Dotyczy zapisu nowych bajtw
0 Poprzednie wywoywane polecenie
zapisu bajtw przeterminowane,
anulowane lub zakoczone
11 WS Pomylne zakoczenie 1 Zakoczenie poprzednio wywoanego
operacji zapisu polecenia zapisu bajtw.
0 Dotyczy zapisu nowych bajtw
10 WT Przeterminowanie operacji 1 Wystpienie przeterminowania w
zapisu czasie zapisu bajtw.
0 Dotyczy zapisu nowych bajtw
9 CA Dostpne znaki 1 Znaki nieodczytane z bufora.
0 Brak w buforze nieodczytanych
znakw.
8 OF Bd przepenienia 1 Wystpienie przepenienia
wewntrznego bufora lub portu
szeregowego.
0 Dotyczy odczytu statusu portu
7 FE Bd ramki 1 Wystpienie bdu ramki w porcie
szeregowym
0 Dotyczy odczytu statusu portu
6 PE Bd parzystoci 1 Wystpienie bdu parzystoci w
porcie szeregowym
0 Dotyczy odczytu statusu portu
5 CT Aktywny sygna CTS 1 Aktywna linia CTS portu szeregowego
lub port szeregowy nie posiada linii
CTS
0 Linia CTS portu szeregowego nie
aktywna
4-0 U nie wykorzystywany,
powinien by rwny 0

52 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Funkcja do zapisu bajtw (4401)

Funkcja ta umoliwia przesanie jednego lub wicej bajtw do urzdzenia zewntrznego za pomoc okrelonego
portu szeregowego. Znak (znaki) do przesania musz znajdowa si w pamici sw (obszar typu %R). Nie powinny one
by zmieniane do momentu zakoczenia wykonywania funkcji.
Pojedyncze wywoanie tej funkcji pozwala na przesanie do 250 znakw. Operacja ta jest koczona dopiero w
momencie wysania wszystkich znakw lub w przypadku wystpienia przeterminowania (przykadowo, w przypadku
sprztowego sterowania przepywem, jeeli urzdzenie zewntrzne w ogle nie zezwala na transmisj).
Przykad bloku danych funkcji do zapisu bajtw

Warto Warto Znaczenie


(dziesitna) (heksadecymalna)
adres 0006 0006 Dugo bloku danych (wraz z
wysyanymi znakami)
adres + 1 0000 0000 Tryb NOWAIT
adres + 2 0008 0008 Typ pamici sowa statusu (%R)
adres + 3 0000 0000 Adres sowa statusu minus 1 (%R0001)
adres + 4 0000 0000 Nie wykorzystywane
adres + 5 0000 0000 Nie wykorzystywane
adres + 6 4401 1131 Funkcja do zapisu bajtw
adres + 7 0030 001E Przeterminowanie transmisji (30 sekund).
Porwna z uwag zamieszczon
poniej.
adres + 8 0005 0005 Liczba bajtw do zapisu
adres + 9 25960 6568 h (68h), e (65h)
adres + 10 27756 6C6C l (6Ch), l (6Ch)
adres + 11 0111 006F o (6Fh)

Pomimo wykorzystywania w niniejszym przykadzie drukowalnych znakw ASCII, nie ma adnych ogranicze,
jeeli chodzi o znaki, ktre mona przesya.
Uwaga: W przypadku wprowadzenia przeterminowania o wartoci rwnej zero, przeterminowanie bdzie rwne czasowi
potrzebnemu na wysanie danych plus 4 sekundy.
Ostrzeenie: Jeeli w czasie wysyania cigu bajtw przez t funkcj wywoana zostanie funkcja COMREQ do
inicjalizowania portu (4300) albo funkcja przerywania aktywnego polecenia (4399) wszystkich polece lub
polece zapisu, spowoduje to przerwanie transmisji. Miejsce, w ktrym nastpio przerwanie wysyania
cigu jest nieokrelone. Dodatkowo, ostatni znak odbierany przez urzdzenie komunikujce si z
jednostk centraln jest rwnie nieokrelony.
W niniejszym przykadzie skonfigurowano 2 sowa (4 bajty = 4 znaki) danych do wysania, adres pocztku grupy rejestrw
w ktrych podajemy kody heksadecymalne znakw do wysania: %R152.

Naley pamita o skonfigurowaniu odpowiedniego portu do pracy w protokole Serial I/O ( w sterownikach
VersaMax Micro 14-pt jest to port 1, w sterownikach 23- i 28-pt jest to port 2, w sterownikach serii VersaMax oraz w
CPU363 moe to by zarwno port 1 jak i port 2).

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 53


Przykady rozwiza
(Uwaga: komentarze odnosz si do szczebli bezporednio po nich nastpujcych.)

Zadanie 1.1 Transkoder

54 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 1.2 Transkoder strobowany

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 55


Zadanie 2.1 Licznik modulo 3

56 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 2.2 Dodawanie i mnoenie

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 57


Zadanie 2.3 Relacje pomidzy liczbami

58 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 3 Generator fali prostoktnej

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 59


Zadanie 4 Liczniki kaskadowe

60 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 61
Zadanie 5 Sterownie drzwiami w tramwaju

62 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 63
64 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Zadanie 6.1 Sterowanie wind dwu poziomow

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 65


Zadanie 6.2 Sterowanie wind dwu poziomow z czujnikami

66 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 67
Zadanie 7 Linia napeniania kartonw z zabezpieczeniami

68 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 69
70 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Zadanie 8 Sygnalizacja wietlna

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 71


72 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 73
74 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 75
76 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 77
78 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Zadanie 9 Regulator PID

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 79


Proponowane parametry regulatora PID:

Proportional 1 % / %
Derivative 0 sec
Integral 0 rep/sec
Sample period 0 sec
Dead band + 0
Dead band - 0
Bias 0
Min slew time 10 sec
Upper clamp + 32000
Lower clamp - 0

80 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Zadanie 10 Odczyt daty i czasu z zegara kalendarzowego w sterowniku

Zadanie 11 Sterowanie silnikami krokowymi

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 81


Zadanie 12 Komunikacja w protokole SNP

82 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 83
84 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 85
Zadanie 13 Komunikacja w protokole SNP

86 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 87
88 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc
Zadanie 14 Przesyanie danych przez port szeregowy
W podprogramie IINICJAL, w ostatnim szczeblu mona port w sterowniku (19hex = port1, 20hex=port2).
Aby sprawdzi dziaanie programu mona podczy do sterownika komputer z dowolnym oprogramowaniem
typu terminal (np. HyperTerminal, Norton Terminal, SATERM, itp.).

Program gwny:

\
Podprogram INICJAL:

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 89


Podprogram KOMUNIK:

Podprogram NASTEMP:

90 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc


Konfiguracja portu szeregowego

Tablica deklaracji zmiennych

Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc 91


Efekt dziaania programu obserwowany na terminalu SATERM (odebrano 3 paczki znakw ASCII):

92 Astor Sp. z o.o. Autoryzowany Dystrybutor GE Fanuc

You might also like