FBs-PLC Lista Instrukcji
Transkrypt
FBs-PLC Lista Instrukcji
FBs-PLC Lista Instrukcji Opis podstawowych instrukcji Instrukcja Operator ORG ORG NOT ORG TU X,Y,M, S,T,C ORG TD ORG OPEN ORG SHORT LD LD NOT LD TU X,Y,M, S,T,C LD TD LD OPEN LD SHORT AND AND NOT AND TU X,Y,M, S,T,C AND TD AND OPEN AND SHORT OR OR NOT OR TU OR TD OR OPEN OR SHORT ANDLD X,Y,M, S,T,C Symbol Opis Funkcji Rozpoczyna sieć instrukcji normalnie otwarty (A) zestyk Rozpoczyna sieć instrukcji normalnie zamknięty (A) zestyk Rozpoczyna sieć instrukcji narastającym zboczem (TU) na zestyku Rozpoczyna sieć instrukcji opadającym zboczem (TU) na zestyku Rozpoczyna sieć instrukcji otwartym zestykiem Rozpoczyna sieć instrukcji zamkniętym zestykiem Zaczyna przekazywać prąd rozgałęzienia przy normalnie otwartym zestyku Zaczyna przekazywać prąd rozgałęzienia przy normalnie zamkniętym zestyku Zaczyna przekazywać prąd rozgałęzienia przy narastającym zboczu na zestyku Zaczyna przekazywać prąd rozgałęzienia przy opadającym zboczu na zestyku Zaczyna nowe rozgałęzienie od przerwy w obwodzie zestyku Zaczyna nowe rozgałęzienie od ciągłości w obwodzie zestyku Szeregowe połączenie z normalnie otwartym zestykiem Szeregowe połączenie z normalnie zamkniętym zestykiem Szeregowe połączenie z narastającym zboczem na zestyku Szeregowe połączenie z opadającym zboczem na zestyku Szeregowe połączenie z przerwą w obwodzie zestyku Szeregowe połączenie (ciągłość) w obwodzie zestyku Równoległe połączenie normalnie otwartego zestyku Równoległe połączenie normalnie zamkniętego zestyku Równoległe połączenie narastającego zbocza zestyku Równoległe połączenie opadającego zbocza zestyku Równoległe połączenie z przerwą w obwodzie zestyku Równoległe połączenie z ciągłością w obwodzie zestyku Czas Wykonania 0.33uS Rozpoczęcie 0.54uS 0.33uS 0.33uS Bloki rozgałęzień i 0.54uS 75 linii bocznych (Początku linii instrukcji) 0.33uS 0.33uS Instrukcje 0.54uS połaczenia szeregowego 0.33uS 0.33uS Instrukcje 0.54uS połączenia Równoległego 0.33uS Szeregowe połączenie dwóch obwodów Równoległe połączenie dwóch obwodów sieci Instrukcji 0.33uS ORLD Typ instrukcji Bloki łączące instrukcje Instrukcja Operator Symbol OUT Opis Funkcji Czas Wykonania Typ instrukcji 0.33uS Instrukcje Wyslij wynik do cewki Y,M,S OUT NOT Wyślij zanegowany wynik do cewki OUT L Wyślij wynik do zewnętrznej cewki L Y │ cewki 1.09uS wyjściowej wyjściowej i wyznacz jako trwałą Załaduj stan węzła do tymczasowego OUT przekaźnika TR 0.33uS LD Załaduj tymczasowy przekaźnik TU Zmień wartość węzła a logiczne “1” 0.33uS TD Zmień wartość węzła na logiczne “0” 0.33uS NOT Odwróć stan węzła 0.33uS Instrukcje operacji węzłów 0.33uS (S) SET │ Set - Ustaw wartość na cewce 1.09uS ( R) RST 0.33uS │ Reset - Resetuj wartość na cewce 1.09uS Ogólnie instrukcje funkcji Licznika/Timera FUN No. Wywołanie Instrukcji Nazwa Operand T nnn PV Instrukcje timera (“nnn” z zakresu 0-255) C nnn PV Instrukcje licznika (“nnn” z zakresu 0-255) UDCTR CV,PV 7 D Opis Funkcji 16- lub 32-Bitowy licznik przód./tył Pojedynczy Operand instrukcji funkcji 4 DIFU D Zmiana wartości na “1” podobnie do instrukcji ORG 5 DIFD D Zmiana wartości na “0” podobnie do instrukcji ORG NOT 10 TOGG D Zmiana statusu operatora D Setting/Resetting SET D DP Ustawia wszystkie bity w rejestrze logiczne „1” RST D DP Czyści wszystkie bity w rejestrze logiczne „0” Z-WR D P 114 Obszar ustawienia lub wyczyszczenia 76 Instrukcje SFC STP STPEND Snnn STEP deklaracja Koniec programu STEP TO Snnn Rozbieżna instrukcja STEP FROM Snnn Zbieżna instrukcja STEP Instrukcje operacji matematycznych FUN No. Nazwa Operand Wywołanie Instrukcji 11 (+) Sa,Sb,D DP Dokonuje dawania Sa ,Sb i zwraca wartość do D 12 (-) Sa,Sb,D DP Dokonuje odejmowania od Sa Sb i zwraca wartość do D 13 (*) Sa,Sb,D DP Dokonuje mnożenia Sa i Sb i zwraca wartość do D 14 (/) Sa,Sb,D DP Dokonuje dzielenia Sa przez Sb i zwraca wartość do D 15 (+1) D DP Dodaje 1 do wartości D (inkrementacja) 16 (-1) D DP Odejmuje 1 od wartości D (dekrementacja) 23 DIV48 Sa,Sb,D P 24 SUM S,N,D DP Sumuje N wartości począwszy od S i zwraca do D 25 MEAN S,N,D DP Zwraca średnia N wartości począwszy od S i zwraca wynik do D 26 SQRT S,D DP Zwraca pierwiastek kwadratowy z D 27 NEG D DP Funkcja realizująca uzupełnienie do 2 (przekształca do kodu U2) 28 ABS D DP Zwraca wartość bezwzględna D i zwraca powrotem 29 EXT D P 30 PID TS,SR,OR, PR,WR 31 CRC MD,S,N,D 32 ADCNV PL,S,N,D 200 I→F S,D DP Konwersja liczby typu integer do liczby zmienno przecinkowej 201 F→I S,D DP Konwersja liczby zmienno przecinkowej do liczby typu integer 202 FADD Sa,Sb,D D Dodawanie liczb zmienno przecinkowej 203 FSUB Sa,Sb,D D Odejmowanie liczb zmienno przecinkowej 204 FMUL Sa,Sb,D D Mnożenie liczb zmienno przecinkowej 205 FDIV Sa,Sb,D D Dzielenie liczb zmienno przecinkowej 206 FCMP Sa,Sb D Porównanie liczb zmienno przecinkowej 207 FZCP Sa,Sb D Obszar porównania liczb zmienno przecinkowej Opis Funkcji Dokonuje 48 bitowego dzielenia Sa i Sb i zwraca wynik do D Pobiera 16 bitową wartość i przekształca do wartości 32 bitowej (bez zmiany wartości) PID regulator P CRC16 kalkulator sumy kontrolnej Przesuniecie i pełna skala konwersji 77 208 FSQR S,D D Pierwiastek kwadratowy liczby zmienno przecinkowej 209 FSIN S,D D funkcja trygonometryczna sinus 210 FCOS S,D D funkcja trygonometryczna cosinus 211 FTAN S,D D funkcja trygonometryczna tangens 212 FNEG D P Zmień znak liczby zmienno przecinkowej 213 FABS D P Wartość bezwzględna liczby zmienno przecinkowej Instrukcje Logicznych operacji 18 AND Sa,Sb,D DP Tworzy logiczną funkcję AND z Sa i Sb i zwraca wynik do D 19 OR Sa,Sb,D DP Tworzy logiczną funkcję AND z Sa i Sb i zwraca wynik do D 35 XOR Sa,Sb,D DP Tworzy logiczną funkcję EX-OR pomiędzy Sa i Sb i zwraca wynik do D 36 XNR Sa,Sb,D DP Tworzy logiczną funkcję EX-NOR pomiędzy Sa i Sb i zwraca wynik do D Instrukcje porównania 17 37 CMP Sa,Sb DP Porównanie danych z Sa i Sb zwraca wynik to funkcji wyjściowej (FO) ZNCMP S,SU,SL DP Porównanie S z obszarem wyznaczonym przez górny limit Su i dolny limit SL, i zwraca wynik do FO0~FO2 Opis Funkcji Instrukcje przekazywania danych FUN No. Nazwa Operand Wywołanie Instrukcji 8 MOV S,D DP Przenieś W lub DW dane z S do D 9 MOV/ S,D DP Odwróć W DW dane z S, i prześlij do D 40 BITRD S,N DP Odczytaj stan bitów N określonych wewnątrz S, wyślij do FO0 41 BITWR D,N DP Zapisz INB stan wejścia bitów określonych przez N wewnątrz D 42 BITMV S,Ns,D,Nd DP Zapisz INB stan wejścia bitów określonych przez N wewnątrz S do bitów określonych przez N wewnątrz D 43 NBMV S,Ns,D,Nd DP Zapisz Ns (4 bity z rejestru) począwszy od S do Nd (4 bity rejestru) w rejestrze D 44 BYMV S,Ns,D,Nd DP Zapisanie określonych bajtów Ns wewnątrz S do Nd bajtów określonych wewnątrz D 45 XCHG Da,Db DP Wymiana wartości Da i Db 46 SWAP D P Wymiana “starszych” i młodszych rejestrów w D 78 FUN No. Nazwa Operand Wywołanie Instrukcji Opis Funkcji 47 UNIT S,N,D P Pobiera części 0 (NB0) N kolejnych zaczynając od S i połączone przechowuje w D 48 DIST S,N,D P Dekompozycja kolejnych słów N części zaczynając od 0 w S, wynik przechowuje w NB0 kolejnych N słowach zaczynając od D 49 BUNIT S,N,D P Najmłodsze bajty ze slowa są łączone 50 BDIST S,N,D P Podział słowa na wielo-bajtowe 160 RW-FR Sa,Sb,Pr,L DP Dostęp do rejestru plików Instrukcje przesuwania/odwracania FUN No. Nazwa Operand Wywołanie Instrukcji BSHF D DP Przesuwa w lewo lub w prawo o 1 bit dane w rejestrze D 51 SHFL D,N DP Zmienia w lewo N bitów rejestru D i przenosi ostatni odwrócony bit do OSB. Pusty bit zastąpi bit wejściowy INB 52 SHFR D,N DP Zmienia w prawo N bitów rejestru D i przenosi ostatni odwrócony bit do OSB. Pusty bit zastąpi bit wejściowy INB 53 ROTL D,N DP Odwraca w lewo N bitów rejestru D i przenosi ostatni odwrócony bit do OSB. 54 ROTR D,N DP Odwraca w prawo N bitów rejestru D i przenosi ostatni odwrócony bit do OSB. 6 Opis Funkcji Instrukcje konwersji kodów 20 →BCD S,D DP Konwertuje danie binarne z S w dane BCD, wynik przechowuje w D 21 →BIN S,D DP Konwerter dane BCD z S w dane binarne wynik przechowuje w D 55 B→G S,D DP Konwersja kodu binarnego w kod Grey-a 56 G→B S,D DP Konwersja kodu Grey-a w kod binarny 57 DECOD S,Ns,NL,D P Dekoduje dane binarne NL bitów zaczynająć od bitu Ns z S, i przechowuje wynik w rejesterze zaczynając od D 58 ENCOD S,Ns,NL,D P Enkoduje NL bitów zaczynając od bitu Ns wewnątrz S, i przechowuje wynik w D 59 →7SG S,N,D P Konwertuje N+1 numerycznych lub dane zawarte wewnątrz S, w 7 segmentowy kod, i przechowuje w D 60 →ASC S,D P Zapisuje string z S (max. 12 alfa-numeryczny lub symboli) do rejestru zaczynając od D 79 61 →SEC S,D P Konwertuje czas (godziny, minuty, sekundy) z trzech kolejnych rejestrów począwszy od S i przechowuje dane w D 62 →HMS S,D P Konwertuje czas w sekundach z S do danych czasu (godziny, minuty, sekundy) i przechowuje dane w kolejnych trzech rejestrach zaczynając od D 63 →HEX S,N,D P Konwertuje kolejno N danych w kodzie ASCII zaczynając od S kod heksadecymalny i przechowują w D 64 →ASCⅡ S,N,D P Konwertuje kolejno N danych heksadecymalnych zaczynając od S w kod ASCII i przechowują w D Instrukcje kontroli przepływu 0 MC N Początek nadrzędnej pętli 1 MCE N Koniec nadrzędnej pętli 2 SKP N Początek skoku pętli 3 SKPE N Koniec skoku petli END Koniec programu 65 LBL 1Ⅱ6 alphanumeric 66 JMP LBL P Skacze do programu o podanej etykiecie LBL i wykonuje ją 67 CALL LBL P Wywołuje podprogram nazwany etykietą LBL 68 RTS Wraca do programu głównego z podprogramu 69 RTI Powraca z podprogramu do programu main po przerwaniu 70 FOR 71 NEXT Definiuje etykietę jako 1~6 alfanumerycznych znaków N Definiuje początek pętli FOR i licznik N pętli Definiuje koniec pętli FOR I/O Function Instructions FUN No. Nazwa Operand Wywołanie Instrukcji 74 IMDIO D,N P Natychmiastowa aktualizacja sygnału I/O w jednostce głównej 76 TKEY IN,D,KL D Instrukcja 10 klawiszowego wejścia numerycznego 77 HKEY IN,OT,D,KL D Instrukcja 16 klawiszowego wejścia 78 DSW IN,OT,D D Instrukcja do cyfrowego przełącznika wejściowego 79 7SGDL S,OT,N D Instrukcja do multipleksowania sygnału 7-segmentowego wyświetlać. 80 MUXI IN,OT,N,D 81 PLSO MD, Fr, PC UY,DY,HO 82 PWM TO,TP,OT Opis Funkcji Instrukcja służąca do multipleksowania wejść D Pulsowa funkcja krokowego) wyjściowa (dla Modulator długości impulsów (PWM) 80 dwu-kierunkowego silnika FUN No. Nazwa Operand 83 SPD S,TI,D 84 TDSP S,Yn,Dn, PT,IT,WS 86 TPCTL Md,Yn,Sn,Zn, Sv,Os,PR IR,DR,OR,WR 139 HSPWM PW,OP,RS, PN,OR,WR Wywołanie Instrukcji Opis Funkcji Detektor prędkości funkcji 7/16-segmentowy kontroler wyświetlacza LED Kontroler Temperatury PID Sprzętowy PWM wyjście pulsowe Instrukcje funkcji kumulujących 87 T.01S CV,PV Kumulacyjny timer używający 0.01S jako podstawy czasowej 88 T.1S CV,PV Kumulacyjny timer używający 0.1S jako podstawy czasowej 89 T1S CV,PV Kumulacyjny timer używający 1S jako podstawy czasowej Instrukcje funkcji kontroli Watch Dog Timer 90 WDT 91 RSWDT N P Ustaw WDT na N mS P Resetuj WDT czas do 0 Instrukcje funkcji kontroli liczników szybkich 92 HSCTR CN P Czyta aktualną CV wartość ze sprzętowego HSCs, HSC0-HSC3, lub HST w ASIC i przesyła do odpowiedniego rejestru CV w PLC 93 HSCTW CN,D P Zapisuje CV lub PV rejestr z HSC0-HSC3 lub HST w PLC do CV lub PV odpowiedniego rejestru sprzętowego HSC lub HST w ASIC Insrrukcje funkcji raportowania 94 ASCWR Analizuje i generuje wiadomoąś raportową w kodzie ASCII formatuje łańcych danych z adresu S. Wiadomośc raportowa wysyłana jest na port1 MD,S,Pt Instrukcje funkcji załadunkowej FUN No. Nazwa Operand 95 RAMP Tn,PV,SL, SU,D Wywołanie Instrukcji Opis Funkcji Instrukcje konwersji wstępująco/zstępującej 81 Instrukcje funkcji komunikacji 150 M-Bus MD,S,Pt Komunikacja za pośrednictwem protokołu Modbus 151 CLINK MD,S,Pt Komunikacja za pośrednictwem protokołu Fatek/Generic Instrukcje funkcji tablicowych 100 R→T Rs,Td,L,Pr DP Przechowuje wartość Rs w położeniu o indeksie Pr w tablicy Td 101 T→R Ts,L,Pr,Rd DP Pobiera wartość z pola Pr tablicy Ts zapisuje do Rd 102 T→T Ts,Td,L,Pr DP Przepisz wartość z pola w tablicy o indeksie Pr tablicy Ts do innego pola Pr Tablicy Td 103 BT_M Ts,Td,L DP Kopiowanie zawartości Ts do Td 104 T_SWP Ta,Tb,L DP Zamiana całej zawartości Ta z Tb 105 R-T_S Rs,Ts,L,Pr DP Przeszukaj tablice Ts i znajdź położenie wartości różnej lub równej RS. Jeśli znajdzie przekazuje wartość położenia do Pr 106 T-T_C Ta,Tb,L,Pr DP Porównuje dwie tablice Ta i Tb i wyszukuje różnice lub te same wartości. Jeśli znajdzie przekazuje wartość położenia do Pr 107 T_FIL Rs,Td,L DP Zapełnia tablice Td wartościa Rs 108 T_SHF IW,Ts,Td, L,OW DP Store the result into Td after shift left or right one entry of table Ts. The shift out data is send to OW and the shift in data is from IW 109 T_ROT Ts,Td,L DP Zachowuje wynik w Td przesuwa w lewo lub w prawo tablicy Ts dopisując przesuniętą wartość odpowiednio na początek lub koniec 110 QUEUE IW,QU,L, Pr,OW DP Połóż IW w kolejce (QUEUE) lub pobierz dane z kolejki (QUEUE) do OW (FIFO) 111 STACK IW,ST,L, Pr,OW DP Połóż IW na stosie (STACK) lub pobierz dane ze stosu (Stach) do OW (LIFO) 112 BKCMP Rs,Ts,L,D DP Porównaj Rs wartość z górnym/dolnym ograniczeniem L, skonstruowanym w tablicy Ts, zachowaj wynik każdej pary w D (DRUM) 113 SORT S,D,L DP Sortuj rejestr zaczynając od S długości L i przekaz wynik do rejestru D Opis Funkcji Instrukcje macieżowe FUN No. Nazwa Operand Wywołanie Instrukcji 120 MAND Ma,Mb,Md,L P Przekaż wynik logicznej operacji AND na Ma i Mb do Md 121 MOR Ma,Mb,Md,L P Przekaż wynik logicznej operacji OR na Ma i Mb do Md 122 MXOR Ma,Mb,Md,L P Przekaż wynik logicznej operacji EX-OR na Ma i Mb do Md 123 MXNR Ma,Mb,Md,L P Przekaż wynik logicznej operacji EX-NOR na Ma i Mb do Md 124 MINV Ms,Md ,L P Odwróć Ms i zapisz do Md 125 MCMP Ma,Mb,L Pr P Porównaj Ma i Mb i znajdź położeni różnych wartości, przekaż położenie Pr 82 126 MBRD Ms,L,Pr P Czyta wartość z bitu Pr w Ms i zwraca OTB (output bit) 127 MBWR Md,L,Pr P Zapisuje INB (bit wejściowy) jako bit Pr w Ms 128 MBSHF Ms,Md,L P Przekaż wynik do Md po zmianie bitów Ms. Zmienione bity dostępne w INB(bity wejściowe). 129 MBROT Ms,Md,L P Przekaż wynik do Md po odwróceniu jednego bitu Ms. Odwrócone bity dostępne w OTB. 130 MBCNT Ms,L,D P Oblicz całkowitą liczbe bitów 0 lub 1 w Ms, wynik zapisz do D Instrukcje położenia NC 140 HSPSO Ps,SR,WR HSPSO instrukcja kontroli położenia NC 141 MPARA Ps,SR P Parametryczne ustawienie kontroli położenia NC 142 PSOFF Ps P Zatrzymaj impulsowe wyjście kontroli położenia NC 143 PSCNV Ps,D P Przekształć Ps pozycje NC na pozycje mm, cale (Inch) lub stopień (Deg) Konrtola przerwań peryferyjnych Disable/Enable 145 EN LBL P Enable HSC, HST, zewnętrzne przerwanie(INT) lub operacje peryferyjna 146 DIS LBL P Disable HSC, HST, zewnętrzne przerwanie (INT) lub operacje peryferyjną Wyjaśnienie Skrótów Rodzaje Operandów Skrót S D L N Pr Nazwa Źródło (Source) Cel (Destination) Długość (Length) Numer Pointer (wskaźnik) Opis Źródło danych (S) operator jedynie odczytuje dane, których używana funkcja nie zmienia. Jeśli istnieje więcej niż jedno źródło zróżnicowane w następujący sposób SA, Sb. Cel (D) operator używany do zwrócenia wyniku. Pierwotne dane mogą być zmienione po operacji. Jedynie rejestry i cewki, które nie mają zabronionej zmiany wartości mogą być celem. Wskazuje rozmiar danych lub tabeli, używany zwykle jako stała Stała często używana jako numer lub czas. Jeżeli jest więcej niż jedna stała, każda stała jest definiowana odpowiednim przypisem Na, Nb, Ns etc.. Używany do określenia specyficznego bloku danych lub specyficznego rejestru danych w tabeli. Przeważnie wartość Pr jest wielkością zmienną, dlatego nie może być stałą lub rejestrem wejściowym. (R3840~R3847) 83 Skrót CV PV Nazwa Opis Aktualna wartość Używana w instrukcjach T i C do przechowania aktualnej wartości timerów (Current value) Ustawiona wartoćś lubliczników Używana w instrukcjach T i C do odniesienia i porównania Kombinacja kolejnych wartości rejestru tworząca tablice. Podstawowa jednostką jest T Tablica słowo (word) i podwójne słowo (double word). Jeżeli jest więcej niż jedna tablica, każda tablica jest definiowana odpowiednim przypisem Ta, Tb, Ts etc Kombinacje kolejnych wartości rejestrów tworzące macierz. Podstawowa jednostką M Macierz jest bit. Jeżeli jest więcej niż jedna macierz, każda macierz jest definiowana odpowiednim przypisem Ma, Mb, Ms etc Wywołanie funkcji – opis opcji w blokach funkcyjnych Skrót Nazwa Opis Instrukcje są wykonywane, jeżeli wejście kontrolne zmienia się z „0” na „1” P Pulse D Double Word Instrukcja używa danych typu Double Word (rejestr 32- bitowy) Pulse Instrukcja używająca danych typu Double Word i wyzwalana narastającym zboczem Double Word na wejściu kontrolnym. PD (narastające zbocze) Przykład. 84 Przykładowa realizacja podstawowych funkcji 1. Realizacja obwodu podtrzymującego. X0: Y0: X1: załączenie obwodu, ustawienie w stan ON sygnał wyjściowy rozłączenie obwodu podtrzymującego (styk normalnie zwarty) 2. Wykorzystywanie przekaźników pomocniczych Utworzenie a następnie wykorzystanie pomocniczego przekaźnika M0 najpierw jako styku NO (normalnie otwarty) potem jako styku NC (normalnie zamknięty) 85 3. Podwójne wysterowanie cewki 4. Ustawienie / kasowanie • Ustawienie/kasowanie cewki SET 86 Ustawienie/kasowanie rejestru o 16 bitowego rejestru SET • B15 B0 ↓ D R0 ↓ 1 0 1 1 0 1 1 0 1 1 1 0 1 1 0 0 B15 X0=1 B0 ↓ D R0 ↓ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 o 32 bitowego rejestru SET B31 R1 R0 ↓ D R0 Ⅱ B0 ↓ 1 0 1 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 0 1 0 1 1 0 1 1 0 0 0 1 X0=1 D R0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Kasowania dokonuje się analogicznie jak do ustawiania, wszystkie bity w rejestrze zostają ustawione na 0 przy użyciu funkcji RST. 87 5. Znaczniki ustawiane impulsowo • Wyzwalanie zboczem narastającym DIFU na powyższym rysunku przedstawiono dwa przypadki realizacji t • - czas skanu Wyzwalane zboczem opadającym na powyższym rysunku przedstawiono dwa przypadki realizacji t - czas skanu 88 6. Realizowanie funkcji flip-flop (toggle switch) TOGG 7. Timer T0-T49 timer 0.01s, T50-T199 timer 0.1s, T200-T255 timer 1s (Standardowe ustawienia konfigurowalne w programie WinProladder) • przykład 1 T0 M1957=0 T1 M1957=1 89 M1957- rejestr specjalny ustawiający opcje Timera, gdy M1957 = ON timer po osiągnięciu zadanej wartości nie liczy dalej) • przykład 2 Timer realizuje opóźnienie załączenia cewki Y0 o czas odpowiadający wartości w rejestrze R0 użyty Timer T50 o wartości kroku 0.1s 8. Wykonanie przekaźnika realizującego kolejność załaczania 90 9. Przekaźnik realizujący warunek generacji 10. Zastosowanie liczników COUNTER C0-C199 16 bitowy, C200-C255 32 bitowy (możliwość przestawienia w programie WinnProladder liczników trwałych/nietrwałych). M1973 specjalny znacznik, funkcja podobna do znacznika M1957 • przykład 1 M1973=0 M1973=1 91 • przykład 2 11. Licznik rewersyjny UDCRT 92 11. Przesyłanie danych miedzy rejestrami MOVE S K 10 D X0= ↑ R0 10 93 12. Przesyłanie danych zanegowanych MOVE/ B15 S R0 B0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 5555H Y23 X0= ↑ ↓ D WY8 Y8 ↓ 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 AAAAH 13. Zwiększanie/ zmniejszanie wartości rejestru o 1 • zwiększanie (inkrementacja) • zmniejszanie (dekrementacja) 94 14. Porównywanie wartości rejestrów (compare) CMP Wejście u/s ustawienie komparatora bitowego na porównywanie wartości ze znakiem (sign) i bez znaku (unsign) (X1). Jeżeli wartość Sa=Sb to wyjście a=b przyjmuje wartość 1 (M0) Jeżeli wartość Sa>Sb to wyjście a>b przyjmuje wartość 1 (M1) Jeżeli wartość Sa<Sb to wyjście a<b przyjmuje wartość 1 (M2) Uzyskanie relacji >=, <= etc. uzyskuje się przez logiczną kombinacje powyższych podstawowych relacji. 15. Operacja logiczna AND na bitach rejestru Wynik logicznej funkcji AND pomiędzy bitami rejestru R0 iR1 przekazany do rejestru R2. Wyjście D=0 ustawia się w stan 1 jeśli wynik jest równy 0. 95 16. Operacja logiczna OR na bitach rejestru Wynik logicznej funkcji OR pomiędzy bitami rejestru R0 iR1 przekazany do rejestru R2. Wyjście D=0 ustawia się w stan 1 jeśli wynik jest równy 0. 17. Podstawowe operacje zmiennoprzecinkowe Sposób kodowanie liczby zmiennoprzecinkowej Znak liczby b22 1 bit • Exponenta b30~b23 8 bitów 32 bity Mantysa b22~b0 23 bity Konwersja zmiennej typu Integer do zmiennopozycyjnej I→F konwersja zmiennej typu zmiennopozycyjnej do Integer F→I 96 • Dodawanie/odejmowanie liczb zmiennopozycyjnych FADD/FSUB • M n o ż e n i e / dzielenie liczb zmiennopozycyjnych FMUL/FDIV • P o r ó w n a n i e 2 liczb zmiennoprzecinkowych Jeżeli wartość Sa=Sb to wyjście a=b przyjmuje wartość 1 (M0) Jeżeli wartość Sa>Sb to wyjście a>b przyjmuje wartość 1 (M1) Jeżeli wartość Sa<Sb to wyjście a<b przyjmuje wartość 1 (M2) Uzyskanie relacji >=, <= etc. uzyskuje się przez logiczną kombinacje powyższych podstawowych relacji. 18. Użycie instrukcji sekwencyjnych STP, FROM, TO, STPEND • przykład 1 Przejście do kroku inicjalizacji po każdym uruchomieniu (znacznik M1924) 97 • przykład 2 Za każdym razem, kiedy urządzenie startuje i przyciśnięty jest manualny przycisk lub urządzenie jest niesprawne, automatycznie przechodzi do S0. X0 M0 M1924 - Manualny przełącznik Znacznik awarii systemu Znacznik pierwszego skanu 98 • przykład 3 1. Kiedy włączamy uruchomiony zostaje krok inicjalizacji S0, jeżeli X0 jest włączone zostaje włączone Y0. 2. Kiedy S0 jest włączony i X1 jest włączony, wtedy równolegle zostają włączone kroki S20 i S21 i Y1, Y2 zostają załączone. 3. Kiedy S21 jest włączone, jeżeli załączone jest X2 wtedy krok S22 zostaje 99 uruchomiony, Y3 zostaje włączone i S21 i Y2 zostają wyłączone. 4. Kiedy S20 i S22 są włączone w tym samym czasie i X3 jest w stanie przeniesienia (włączone), wtedy krok S23 zostaje załączony (jeżeli X4 – ON wtedy Y4 – ON) i S20,S22 zostają automatycznie wyłączone i Y1,Y3 również. 5. Kiedy S23 jest włączone i X5 jest włączone, wtedy proces przeniesiony zostaje do bloku inicjalizacji i S23 i Y4 będzie wyłączony. 100