PAiRAII_Instr_2008_lab6a.pdf
(
168 KB
)
Pobierz
PAiRAII_Instr_2008_lab6a
6
Programowanie zaawansowane
Informacje wst
ę
pne:
BLOKIDZIAŁAŃNABITACH
W sterownikach GE Fanuc dostępne są następujące bloki do działań na bitach:
-
AND - koniunkcja słów bitowych,
-
OR - alternatywa słów bitowych,
-
XOR - róŜnica symetryczna słów bitowych,
-
NOT - negacja słowa bitowego,
-
SHIFTL - przesunięcie bitów o 1 pozycję w lewo,
-
SHIFTR - przesunięcie bitów o 1 pozycję w prawo,
-
ROL - przesunięcie bitów o 1 pozycję w lewo w obiegu zamkniętym,
-
ROR - przesunięcie bitów o 1 pozycję w prawo w obiegu zamkniętym,
-
BIT_TST - testowanie wartości bitu w określonym słowie,
-
BIT_SET - ustawianie bitu w określonym słowie,
-
BIT_CLR - zerowanie bitu w określonym słowie,
-
BIT_POS - testowanie na której pozycji bitowej w danym słowie występuje 1,
-
BIT_SEQ – krąŜąca jedynka,
-
MASK_COMP – porównanie z maskowaniem.
Blok funkcyjny Typ argumentów
Opis
IN1
: WORD
IN2
: WORD
Q
: WORD
Iloczyn logiczny
Q
:=
IN1
AND
IN2
IN1
: WORD
IN2
: WORD
Q:
WORD
Suma logiczna
Q
:=
IN1
OR
IN2
IN1
: WORD
IN2
: WORD
Q
: WORD
Alternatywa wyłączająca
Q
:=
IN1
XOR
IN2
Laboratorium Podstaw Automatyki i Regulacji Automatycznej II
1
Programowanie zaawansowane
Parametr Przepływ %I
%Q %M %T
%S %G %R %AI %AQ Stała Brak
enable
•
IN1
•
•
•
•
•
•
•
•
•
•
IN2
•
•
•
•
•
•
•
•
•
•
ok
•
•
Q
•
•
•
•
•!
•
•
•
•
• Dozwolony typ parametru.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać
ze zmiennych typu %S.
Blok funkcyjny Typ argumentów
Opis
IN
: WORD
Q
: WORD
Negacja
Q
:= NOT
IN
Parametr Przepływ %I
%Q %M
%T
%S
%G %R %AI %AQ Stała Brak
enable
•
IN1
•
•
•
•
•
•
•
•
•
•
ok
•
•
Q
•
•
•
•
•!
•
•
•
•
• Dozwolony typ parametru.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać ze
zmiennych typu %S.
Blok funkcyjny
Typ argumentów
Opis
IN
: WORD
N
: INT
Q
: WORD
length
: 1-256
Powoduje rotację o
N
bitów (ROL w lewo, ROR
w prawo) ciągu bitów, którego początek określa
IN
i składa się z tylu WORD, ile wynosi
length
. Wynik
po rotacji przechowywany jest w obszarze,
którego początek określa
Q
.
Parametr Przepływ %I
%Q %M
%T
%S
%G %R %AI %AQ Stała Brak
enable
•
IN
•
•
•
•
•
•
•
•
•
N
•
•
•
•
•
•
•
•
•
ok
•
•
Q
•
•
•
•
•!
•
•
•
•
• Dozwolony typ parametru.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać ze
zmiennych typu %S.
Blok funkcyjny
Typ argumentów
Opis
IN
: WORD
N
: INT
B1
: BOOL
B2
: BOOL
Q
: WORD
length
: 1-256
Powoduje przesunięcie o
N
bitów (SHIFTL w lewo,
SHIFTR w prawo) ciągu bitów, którego początek
określa
IN
i składa się z tylu WORD, ile wynosi
length
. Wynik po przesunięciu przechowywany jest
w obszarze, którego początek określa
Q
.
B1
– bit
wsuwany,
B2
– ostatnio wysunięty bit.
2
Laboratorium Podstaw Automatyki i Regulacji Automatycznej II
Programowanie zaawansowane
Parametr Przepływ %I
%Q %M
%T
%S
%G %R %AI %AQ Stała Brak
enable
•
IN
•
•
•
•
•
•
•
•
•
N
•
•
•
•
•
•
•
•
•
B1
•
B2
•
•
Q
•
•
•
•
•!
•
•
•
•
• Dozwolony typ parametru.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać ze
zmiennych typu %S.
Blok funkcyjny
Typ argumentów
Opis
IN
: WORD
BIT
: INT
length
: 1-256
BITSET ustawia, BITCLR zeruje dokładnie jeden bit
o numerze
BIT
w ciągu bitów, którego początek
określa
IN
i składa się z tylu WORD, ile wynosi
length
(bity są numerowane od 1).
Parametr Przepływ %I
%Q %M
%T
%S
%G %R %AI %AQ Stała Brak
enable
•
IN
•
•
•
•
!
•
•
•
•
BIT
•
•
•
•
•
•
•
•
•
ok
•
•
• Dozwolony typ parametru.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać ze
zmiennych typu %S.
Blok funkcyjny
Typ argumentów
Opis
IN
: WORD
BIT
: INT
Q
: BOOL
length
: 1-256
Testuje stan bitu o numerze
BIT
w ciągu bitów,
którego początek określa
IN
i składa się z tylu
WORD, ile wynosi
length
.
Stan testowanego bitu podawany jest na
Q
.
Parametr Przepływ %I
%Q %M
%T
%S
%G %R %AI %AQ Stała Brak
enable
•
IN
•
•
•
•
•
•
•
•
•
BIT
•
•
•
•
•
•
•
•
•
Q
•
•
• Dozwolony typ parametru.
Blok funkcyjny
Typ argumentów
Opis
IN
: WORD
POS
: INT
length
: 1-256
Przeszukuje ciąg bitów, którego początek
określa
IN
i składa się z tylu WORD, ile wynosi
length
, w celu znalezienia pierwszej jedynki.
Numer pierwszego niezerowego bitu
umieszcza w
POS
(bity są numerowane od 1).
Laboratorium Podstaw Automatyki i Regulacji Automatycznej II
3
Programowanie zaawansowane
Parametr Przepływ %I
%Q %M %T %S %G %R %AI %AQ Stała Brak
enable
•
IN
•
•
•
•
•
•
•
•
•
POS
•
•
•
•
•
•
•
•
ok
•
•
• Dozwolony typ parametru.
Blok funkcyjny
Typ argumentów
Opis
R
: BOOL
DIR
: BOOL
N
: INT
ST
: BYTE
length
: 1-256
address
: 3 WORD
Zbocze narastające na wejściu
Enable
powoduje przesunięcie jedynki w ciągu bitów,
którego początek określa
ST
i składa się z tylu
bitów, ile wynosi
length
.
DIR
- kierunek przesunięcia.
R
=1 zeruje obszar określony przez
ST
i
length
oraz ustawia jedynkę na bicie o
numerze określonym przez
N
. Dopóki
R
=1,
Enable
nie reaguje na zbocza
narastające.
Parametr Sygnał %I
%Q %M
%T
%S
%G %R %AI %AQ Stała Brak
address
•
enable
•
R
•
DIR
•
STEP
•
•
•
•
•
•
•
•
•
•
ST
•
•
•
•
•!
•
•
•
•
•
ok
•
•
•
Dozwolony typ parametru.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać ze zmiennych
typu %S.
Blok funkcyjny
Typ argumentów
Opis
IN1
: WORD lub DWORD
IN2
: WORD lub DWORD
M
: WORD lub DWORD
BIT
: INT
MC
: BOOL
Q
: WORD lub DWORD
BN
: INT
length
: 1-2048
Porównuje dwa ciągi bitów, których początek
określa
IN1
i
IN2
i składają się z tylu WORD
lub DWORD, ile wynosi
length
. Porównywanie
odbywa się z maską
M
, tzn. sprawdza tylko te
bity, które maska ma wyzerowane.
BIT
– nr bitu, od którego zaczyna porównywać
(bity są numerowane od 0).
MC
=1 – znalazł róŜnicę.
Q
– wynik porównania
BN
– nr bitu, na którym wystąpiła róŜnica (bity
są numerowane od 1)
4
Laboratorium Podstaw Automatyki i Regulacji Automatycznej II
Programowanie zaawansowane
Parametr Sygnał %I
%Q %M
%T
%S
%G
%R %AI %AQ Stała Brak
enable
•
IN1
○ ○ ○ ○ ○ ○
•
•
•
IN2
○ ○ ○ ○ ○ ○
•
•
•
M
○ ○ ○ ○ ○! ○
•
•
•
BIT
•
•
•
•
•
•
•
•
•
•
LEN
•‼
MC
•
•
Q
○ ○ ○ ○ ○! ○
•
•
•
BN
•
•
•
•
•
•
•
•
•
• Typ moŜe być wykorzystany jako dany parametr bloku funkcyjnego.
○ Dopuszczalne jest stosowanie wyłącznie danych typu WORD, nie moŜna stosować zmiennych typu
DWORD.
! MoŜna stosować wyłącznie zmienne systemowe typu %SA, %SB i %SC. Nie moŜna korzystać ze
zmiennych typu %S.
‼ Maksymalna wartość stałej moŜe wynosić 4095 dla danych typu WORD i 2047 dla danych typu DWORD.
Przykład 1.
Gdy marker %M00050=1 program sterujący ma zerować następujący obszar pamięci: %M00001÷%M00016,
%M00030÷%M00035 oraz ustawiać same jedynki w obszarze pamięci %M00020
÷
%M00026.
Rozwi
ą
zanie I
(z wykorzystaniem bloków z grupy Data Move)
Zmienne M00030 i M00020 naleŜy zadeklarować jako typu BOOL.
Rozwi
ą
zanie II
(z wykorzystaniem bloków z grupy Bit Operations)
Przykład 2.
Program ma sprawdzać ósmy i siódmy bit rejestru o nazwie STATUS. Jeśli oba są jedynkami, to ustawia
jedynkę na szesnastym bicie rejestru o nazwie PARAMETR, w przeciwnym przypadku 16-ty bit rejestru
PARAMETR zeruje. Pozostałe bity rejestru PARAMETR pozostają bez zmian.
Laboratorium Podstaw Automatyki i Regulacji Automatycznej II
5
Plik z chomika:
rszyjota
Inne pliki z tego folderu:
Wyklad_sekwencyjne_2008.pdf
(189 KB)
wyklad_Math_Relational_2008_copy.pdf
(92 KB)
wyklad_Math_Relational_2008.pdf
(92 KB)
Wyklad_konstrukcja_szczebla_2008.pdf
(140 KB)
Wyklad_kombinacyjne_2008.pdf
(301 KB)
Inne foldery tego chomika:
Zgłoś jeśli
naruszono regulamin