Sterowanie pracą grzejników
Wstęp:
Zostało postawione przed nami zadanie zaprojektowania układu sterującego pracą grzejników. Jako dane wejściowe dostajemy temperaturę powietrza, uzyskiwaną dzięki trzem czujnikom zamontowanym na termometrze. Do sterowania mamy 2 grzejniki, które przy różnych wskazach czujników, są włączone, albo wyłączone.
Analiza problemu
3 czujniki na termometrze wskazują temperaturę niską, średnią lub wysoką. Można je potraktować jako 3 kolejne bity. Dzięki temu mamy do przeanalizowania 8 stanów. Do sterowania mamy 2 grzejniki. Każdy z nich zachowuje się inaczej. Dlatego potrzebujemy do każdego osobny układ sterujący. Utworzymy je za pomocą podstawowych bramek logicznych, oraz wiedzy z poprzednich zajęć. Dodatkowym zadaniem jest zbudować układ uwzględniający możliwość uszkodzenia jednego z czujników. Zgodnie z instrukcją, usterka czujnika jest rozpoznawana przez to, że czujnik wyższej temperatury wskazuje, że ta temp. Została osiągnięta, a czujnik niższej wskazuje że nie została osiągnięta niższa temp(uszkodzony jest czujnik niższej temp). Zgodnie z tym, nie jest możliwe sprawdzenie uszkodzenia czujnika najwyższej temperatury.
Przeprowadzenie ćwiczenia:
Tabela prawdy dla działania grzejnika G1 i G2.
X1 |
X2 |
X3 |
G1 |
G2 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
Układ nieoptymalny dla grzejnika G1 i G2
G1
Tabela prawdy dla danej funkcji
X1 |
X2 |
X3 |
Sum1 |
Sum2 |
Sum3 |
Sum4 |
Sum5 |
Sum6 |
Wynik |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
G2
Tabela prawdy dla danej funkcji
X1 |
X2 |
X3 |
Sum1 |
Sum2 |
Sum3 |
Sum4 |
Sum5 |
Wynik |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
Jak widzimy układy te nie dość że zawierają dużą ilość bramek, to połączenia między bramkami mieszają się, co czyni układ nie czytelnym.
Układ minimalny
G1
X3
|
0 |
1 |
0 0 |
1 |
1 |
0 1 |
0 |
0 |
1 1 |
0 |
0 |
1 0 |
0 |
0 |
Tabela prawdy dla danej funkcji
X1 |
X2 |
X3 |
Wynik |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
G2
X3
|
0 |
1 |
|
1 |
0 |
0 1 |
1 |
1 |
1 1 |
0 |
0 |
1 0 |
0 |
0 |
Tabela prawdy dla danej funkcji
X1 |
X2 |
X3 |
IL 1 |
IL 2 |
Wynik |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
Narysowane układy, dzięki zastosowaniu tabeli Karnaugh stały się bardziej przejrzyste.
Układ narysowany za pomocą jednej bramki.
Układ ten został zaprojektowany z użyciem bramki NAND. Dane wejściowe to odpowiednio od góry X1, X2 i X3, a wyjściowe diody to od góry G1 i G2.
Obsługa błędów.
Zgodnie z założeniami wypisanymi we wstępie tabela przedstawia pojawienie się usterki:
X1 |
X2 |
X3 |
Usterka |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
Zapis funkcji obsługującej błędy(Uzyskany dzięki zastosowaniu tabeli Karnaugh):
X3 X1 X2 |
0 |
1 |
|
0 |
0 |
0 1 |
|
0 |
1 1 |
1 |
0 |
1 0 |
1 |
1 |
Tabela prawdy dla danej funkcji
X1 |
X2 |
X3 |
Sum1 |
Sum 2 |
Wynik |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
Układ uwzględniający usterki czujników:
Wnioski
Schematy tworzone za pomocą bramek logicznych mogą być bardzo użyteczne, w życiu codziennym. Na prostym przykładzie zobaczyliśmy jedno z zastosowań bramek. Przy budowie układów, należy zwracać szczególną uwagę na to, aby nasza funkcja była jak najbardziej optymalna. Dzięki temu unikniemy dużych kosztów, oraz możliwych prostych błędów, jakie można popełnić tworząc układy(np. połączenia złych elementów ze sobą).