Blok funkcyjny DRUM - Platforma Internetowa ASTOR.

Transkrypt

Blok funkcyjny DRUM - Platforma Internetowa ASTOR.
INFORMATOR TECHNICZNY GE FANUC
Informator Techniczny nr 20
-- wrzesień 2006 --
Blok funkcyjny DRUM
Opis działania bloku DRUM
Blok funkcyjny DRUM, stosowany przy programowaniu kontrolerów PACSystems, kopiuje na
swoje wyjście, oznaczone jako Q, wartości ze zdefiniowanego obszaru pamięci rejestrowej.
Kopiowanie uzależnione jest od bieżącego stanu licznika kopiowanych rejestrów, zwanego
również licznikiem stanów. Każdorazowa zmiana sygnału na wejściu S z 0 na 1 powoduje
przejście do następnego stanu, czyli inkrementowanie licznika kopiowanych rejestrów. Blok
posiada też wejście repetujące R, które służy do ustawienia stanu, przyjętego jako początkowy. Ilość stanów, czyli rejestrów, spośród których następuje kopiowanie, jest konfigurowalna.
Opcjonalnie można też korzystać z wejść i wyjść definiujących czasy trwania lub czasy timeout dla poszczególnych stanów oraz wyjścia tzw. kroczącej jedynki w obszarze bitowym,
która jest odzwierciedleniem numeru stanu.
Blok DRUM może być wykorzystywany jako narzędzie do tworzenia programu pracującego w
sposób sekwencyjny.
Opis wejść i wyjść bloku DRUM
Nazwa wejścia/wyjścia
bloku DRUM
????
Typ zmiennej,
przypisanej do
wejścia/wyjścia
Jednowymiarowa,
5-elementowa tablica typu WORD
? (długość
Length)
S
Liczba stała
R
Wejście ze styku
Dopuszczalne
typy pamięci
dla zmiennej
R, P, L, W,
zmienna symboliczna
Wejście ze styku
ASTOR Sp. z o.o.
Dział Systemów Sterowania
ul. Smoleńsk 29, 31-112 Kraków
Opis
Rejestry robocze bloku funkcyjnego DRUM. Podaje
się tu początkowy adres tablicy 5-elementowej.
Wartości pierwszych dwóch elementów należy zainicjalizować (muszą one mieć poprawną wartość w
kontekście np. zadeklarowanej w parametrze
Length ilości stanów). Aby stwierdzić, czy zostały
one poprawnie zainicjalizowane, można sprawdzić
stan wyjścia Ok bloku DRUM. W dalszej części
opisu zamieszczone jest wyjaśnienie, co znajduje
się w poszczególnych rejestrach roboczych bloku
DRUM.
Ilość stanów (zakres: 1 do 128).
Wejście używane do przejścia bloku DRUM do kolejnego stanu. Blok przechodzi do kolejnego stanu
w przypadku wykrycia zbocza narastającego sygnału doprowadzonego do tego wejścia.
Wejście resetujące, czyli powodujące przejście do
stanu określonego jako początkowy. Stan początkowy definiuje się w jednym z rejestrów roboczych,
których opis znajduje się w dalszej części opracowania. Wejście R ma wyższy priorytet niż wejście S.
tel.: 012 428-63-20
fax: 012 428-63-09
e-mail: [email protected]
http://www.astor.com.pl
Dopuszczalne
typy pamięci
dla zmiennej
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
Nazwa wejścia/wyjścia
bloku DRUM
PTN
Typ zmiennej,
przypisanej do
wejścia/wyjścia
Zmienna typu
WORD
DT
Zmienna typu
WORD
FTT
Zmienna typu
WORD
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
Q
Zmienna typu
WORD
DRC
Zmienna typu BOOL (zmienna przypisana wprost, bez
dołączania przekaźnika)
Zmienna typu BOOL (zmienna przypisana wprost, bez
dołączania przekaźnika)
Zmienna typu BOOL (zmienna przypisana wprost, bez
dołączania przekaźnika)
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
DTO
TFT
2
Opis
Adres początkowy tablicy, w której definiuje się
zawartość poszczególnych stanów, czyli zawartość
rejestrów, których wartości będą kopiowane na wyjście Q, w zależności od numeru stanu. Długość
tablicy jest taka jak parametr Length.
Parametr opcjonalny.
Zmienna tablicowa, w której dla poszczególnych
stanów podaje się czasy określane jako Dwell.
Dwell to czas przebywania bloku DRUM w danym
stanie. Po jego upłynięciu nie następuje automatyczne przejście do następnego stanu, lecz załączenie sygnału na wyjściu DTO i ten sygnał można
wykorzystać do automatycznego przejścia bloku
DRUM do następnego stanu (w takim przypadku
należy sygnał z wyjścia DTO wprowadzić na wejście DT). Jeżeli korzystamy z wejścia DT, to musimy też korzystać z wyjścia DTO. Czas podaje się w
jednostkach 0,1 sekundy.
Parametr opcjonalny.
Zmienna tablicowa, w której dla poszczególnych
stanów podaje się czasy określane jako Fault Timeout. Fault Timeout to czas, po upłynięciu którego
zostaje zgłoszony błąd informujący o za długim
przebywaniu bloku DRUM w danym stanie – poprzez załączenie sygnału na wyjściu TFT. Jeżeli
korzystamy z wejścia FTT, to musimy też korzystać
z wyjścia TFT. Czas podaje się w jednostkach 0,1
sekundy.
Główne wyjście bloku DRUM. Na to wyjście kopiowana jest wartość rejestru, odpowiadającego danemu stanowi.
Parametr opcjonalny.
Wyjście informujące, że bieżący stan nie jest zgodny ze stanem zadeklarowanym jako początkowy.
Parametr opcjonalny.
Wyjście informujące o upłynięciu czasu Dwell dla
danego stanu.
Parametr opcjonalny.
Wyjście informujące o upłynięciu czasu Fault Timeout dla danego stanu.
Nazwa wejścia/wyjścia
bloku DRUM
FF
Typ zmiennej,
przypisanej do
wejścia/wyjścia
Zmienna typu
BYTE
Dopuszczalne
typy pamięci
dla zmiennej
I, Q, M, T, G, R,
P, L, AI, AQ, W,
zmienna symboliczna,
zmienna I/O
Opis
Parametr opcjonalny.
Obszar pamięci o organizacji bajtowej, w którym
będzie następowało załączanie bitu odpowiadającego bieżącemu stanowi (w stanie 1 będzie załączony pierwszy bit z tego obszaru, w stanie 2 następny, itd.). wielkość obszaru, na jakim będzie
odbywało się załączanie bitów zależy od parametru
Length, z tym, że jest zaokrąglana do wielokrotności
bajtów.
Zawartość rejestrów roboczych bloku funkcyjnego DRUM
Adres rejestru
roboczego
+0
Nazwa rejestru
Active Step
+1
Preset Step
+2
Step Control
+3, +4
Timer Control
Opis
Rejestr, w którym przechowywany jest numer bieżącego stanu. Wartość w tym rejestrze powinna być z zakresu od 1 do wartości zadeklarowanej w Length. Stany numeruje się zaczynając od liczby 1.
Rejestr, w którym deklaruje się, który stan będzie stanem początkowym. Wartość w tym rejestrze powinna być z zakresu od 1 do wartości
zadeklarowanej w Length.
Słowo używane do wykrywania zmiany sygnału z 0 na 1 dla wejść S i
Enable. Nie należy zmieniać wartości w tym rejestrze.
Dwa słowa używane do odmierzania czasu przez blok DRUM. Nie należy zmieniać wartości w tych rejestrzach.
Przykład wywołania bloku DRUM
W przykładzie zadeklarowano pracę na 5 stanach. Zawartość poszczególnych stanów definiuje się w
rejestrach od %R11. W pierwszych soch rejestrach roboczych bloku DRUM, czyli w %R1 i %R2 należy
podać numer bieżącego stanu i numer stanu uznanego za początkowy. W czasie pracy bloku DRUM,
wartości z odpowiedniego rejestru z zakresu %R11 do %R15, zależnie od bieżącego numeru stanu,
3
będą kopiowane do rejestru %R41. zaleca się obserwowanie stanu wyjścia Ok. – w przykładzie jest to
zrealizowane stykiem o zmiennej %T17.
W przykładzie skorzystano z opcjonalnych wyjść:
• DRC – przekaźnik ze zmienną %T4 informuje, że bieżący stan jest innym stanem niż początkowy,
• DTO – przekaźnik skojarzony z %T2 informuje o upłynięciu czasu Dwell dla danego skanu,
• TFT – podłączony do niego przekaźnik ze zmienną %T19 ostrzega o przekroczeniu czasu Fault
Timeout,
• FF – w obszarze pamięci od %T9, na kolejnych pięciu bitach mamy odwzorowanie tego, który z
kolei w tym momencie jest stan.
Stan 1
Stan 2
Stan 3
Stan 4
Stan 5
%R11
%R12
%R13
%R14
%R15
%R41
Przebieg kopiowania wartości rejestrów, w zależności od bieżącego stanu.
Literatura
• GFK-2222G (lub nowsza wersja tej dokumentacji)
• Pliki „pomocy” oprogramowania Proficy ME.
4

Podobne dokumenty