Politechnika Białostocka
Wydział Mechaniczny
Kinga Rycewicz Edukacja techniczno - informatyczna Semestr V Grupa 4
|
Programowanie systemów sterowania. |
Data: 05.12.2011
Ocena: |
Ćw nr 8
|
Temat: Realizacja operacji na bitach. |
Prowadzący: mgr inż. Mirosław Kondratiuk |
Cel ćwiczenia:
Celem ćwiczenia jest zapoznanie się z sposobem programowania funkcji do operacji na bitach sterownika VersaMax Micro w języku drabinkowym LD.
Zakres ćwiczenia:
1. Zapoznanie się ze sposobem programowania funkcji do operacji na bitach sterowników VersaMax Micro w języku drabinkowym LD (ang. Ladder Diagram).
2. Przeanalizowanie przykładowych zadań z określonymi układami sterowania.
3. Rozwiązanie zadań sprawdzających.
4. Sprawdzenie przez prowadzącego działania poszczególnych układów.
5. Wykonanie sprawozdania z ćwiczenia.
Zadania do zrealizowania:
Adres |
Nazwa |
Komentarz |
%I1 |
P1 |
Przycisk |
%R5 |
R00005 |
Rej. początku ciągu bitów |
%Q1 |
L1 |
Lampka |
10 |
BIT |
Ustawienie 10 bitów |
|
BIT_SET_WORD |
Ustawianie bitu |
Zadanie 1
Wciśnięcie przycisku P1 powoduje ustawienie 10 bitu na 1, w ciągu bitów, którego początek wskazywany jest przez adres %R00005.
Po wciśnięciu przycisku P1 10 bit jest ustawiany na 1. Wykonanie operacji jest sygnalizowane lampką L1.
Zadanie 2
Adres |
Nazwa |
Komentarz |
%I1 |
I00001 |
Przycisk |
%Q1 |
L1 |
Lampka |
%R1 |
R1 |
Słowo bitowe 1 |
%R2 |
R2 |
Wynik porównywania |
%R3 |
R3 |
Słowo bitowe 2 |
|
AND_WORD |
Porównywanie bitów |
Zrealizować operację AND na dwóch słowach bitowych. Wynik umieścić w rejestrze %R00002. Poprawne wykonanie operacji sygnalizowane jest zapaleniem lampki L1.
Po wciśnięciu przycisku realizowana jest operacja porównania bitów R1 i R3. Wynik jest zapisany w R2. Poprawne wykonanie operacji sygnalizowane jest zapaleniem lampki L1.
Zadanie 3
Adres |
Nazwa |
Komentarz |
%I1 |
I00001 |
Przycisk |
%Q1 |
L1 |
Lampka |
%R1 |
R1 |
Słowo negowane |
%R2 |
R2 |
Wynik negacji |
|
NOT_WORD |
Negacja logiczna |
Zrealizować operację negacji logicznej słowa bitowego o adresie %R00001.
Po wciśnięciu przycisku realizowana jest operacja negacji słowa bitowego R1. Wynik zapisany jest w R2. Poprawne wykonanie operacji sygnalizowane jest zapaleniem lampki L1.
Zadanie 4
Adres |
Nazwa |
Komentarz |
%I1 |
I00001 |
Przycisk |
%Q1 |
L1 |
Lampka |
%R1 |
R1 |
Słowo sprawdzane |
5 |
BIT |
Numer bitu do sprawdzenia |
|
BIT_TEST_WORD |
Sprawdzanie wartości bitu |
Sprawdź czy piąty bit słowa o adresie początkowym w %R00001 jest jedynką logiczną.
Po wciśnięciu przycisku realizowane jest sprawdzenie wartości piątego bitu w R1. Poprawne wykonanie operacji sygnalizowane jest zapaleniem lampki L1.
Zadanie 5
Adres |
Nazwa |
Komentarz |
%I1 |
I00001 |
Przycisk |
%Q1 |
L1 |
Lampka |
%R3 |
R3 |
Wynik XOR |
%R2 |
R2 |
Słowo sprawdzane |
21 |
BIT |
Numer bitu do sprawdzenia |
|
XOR_WORD |
Logiczne XOR |
Sprawdzić czy liczba w rejestrze %R00002 ma pięć najmniej znaczących bitów postaci10101 (21 w systemie dziesiętnym). Które bity odbiegają od tego wzorca.
Po wciśnięciu przycisku realizowane jest sprawdzenie wartości pięciu najmniej znaczących bitów. Poprawne wykonanie operacji sygnalizowane jest zapaleniem lampki L1.
Zadanie 6
Na wyjściach %Q00001 ÷ %Q00016 co sekundę mają pojawiać się stany: %Q00016 %Q00001
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Adres |
Nazwa |
Komentarz |
%S5 |
#T_SEC |
Generator sygnału |
%I1 |
I00001 |
Przycisk |
%M1 |
M1 |
Znacznik pomocniczy |
%L1 |
L1 |
Lampka |
|
ROR_WORD |
Przesunięcie w prawo |
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
.
0 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 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0
.
1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 dalej od początku czyli wydłużający się, a potem skracający wąż jedynek.
Po wciśnięciu przycisku kolejno zapalają się lampki co sekundę. Po zapaleniu wszystkich następuje wyłączenie ich w kolejności takiej samej jak przy włączaniu.
Wnioski:
Zapoznaliśmy się ze sposobem programowania funkcji do operacji na bitach sterowników VersaMax Micro w języku drabinkowym LD (ang. Ladder Diagram).
Logiczne XOR (XOR_WORD) - porównuje dwa ciągi bitowe IN1 i IN2, bit po bicie. Jeżeli obydwa, odpowiadające sobie bity w ciągach wejściowych mają różne wartości, odpowiedni bitu parametru wyjściowego Q jest ustawiany na 1; jeżeli natomiast bity te są takie same, odpowiedni bit w parametrze wyjściowym Q jest ustawiany na 0.
Przemieszczanie bitów w cyklu zamkniętym (ROR_WORD) - przesunięcie w prawo. Przesunięcia wszystkich bitów jednego słowa bitowego lub ciągu kilku słów bitowych, o wyszczególnioną liczbę miejsc w prawo, w obiegu zamkniętym.