Układ ten ma dwa cele. Pierwszy jest edukacyjny. Za pomocą tego urządzenia chciałbym zapoznać Czytelników EdW z zasadą działania klasycznej bramy automatycznej. Drugim celem jest pokazać podwaliny możliwości układów logiki programowalnej. Żeby układ sterował prawdziwą bramą, konieczne jest wprowadzenie paru udoskonaleń, takich jak na przykład układ sterowania silnikiem dużo większej mocy.
Gdy zabierałem się za projektowanie tego układu, postanowiłem zbudować go na elementach jak najprostszych takich jak bramki, przerzutniki i liczniki (takie też były wymogi projektu). I wtedy, gdy postanowiłem zaprojektować płytkę, przeraziła mnie ilość scalaków i połączeń między nimi, jaką trzeba było pociągnąć. Zacząłem się zastanawiać, czy nie da się prościej i... przyszedł mi do głowy pomysł z wykorzystaniem układu typu GAL (Generic Array Logic) firmy Latticc. Strukturę takiego układu można zobaczyć na rysunku 1. Układy te charakteryzują się tym, że posiadają programowalną tablicę iloczynów. Oznacza to nic innego jak to, że we wnętrzu takiego układu znajduje się siatka „drucików1, które podczas programowania są podłączane do odpowiednich wejść bramek AND (patrz rysunek 2). W strukturze tej umieszczone zostały bramki AND ze zróżnicowaną liczbą wejść od 12 do 16, a więc o wiele
więcej niż typowa bramka dostępna w sklepie. Do wyjścia każdej takiej bramki dołączony jest przerzutnik typu D, który może być wykorzystany do budowy układów synchronicznych, gdzie potrzebne jest pamiętanie star.u wyjść układu z taktu poprzedniego. Wszystkie wejścia zegarowe są połączone zc sobą i wyprowadzone na jednej (pin l) nóżce. Program, a właściwie opis struktury, jaka ma powstać we wnętrzu układa, został napisany w programie ABEL-4 (listing można ściągnąć z Elportalu EdW). Jest to darmowy i jeszcze DOS-owy program i można go za darmo pobrać z Internetu. Daną strukturę można opisać na parę sposobów m.in. za pomocą tabeli prawdy lub grafu stanów. Pisanie tabeli prawdy dla układu o pięciu wejściach, zakreślanie implikantów, redukcja i temu podobne konieczne czynności wydały mi niepotrzebne, a przy tym czasochłonne. Dlatego wybrałem drugą, moim zdaniem lepszą, metodę opisu, jaką jest graf stanu. Graf układu przedstawiłem na rysunku 3 (stan wyjść jest stabilny dla
Rys. 2 Wewnętrzne połączenia w układzie GAL
DIP(PLCC) Packa*, ftnouta
odpowiednio: SO - I2=I; SI - 11 =0, KL 1; S2
- CWB=1; S8 - 12=1;). Przejście do następnej „banieczki” grafu następuje, jeżeli spełniony zostanie warunek znajdujący się nad strzałką. Na wyjściu układu pojawi się stan następnej „banieczki” (ten pod numerem). Proste, prawda?
Rys. 1 Struktura układu GAL
*><•»
Prezentowany układ jest układem synchronicznym, dlatego w opisie struktury został zawarty opis powodujący zawracanie stanu wyjść z powrotem do wejść układu. Rolę zegara w układzie spełnia NE555. W układzie tym nic jest wymagana duża stałość częstotliwości, jak w przypadku układów mikroprocesorowych, dlatego układ ten jest wystarczający. Czujniki krańcowe zbudowane na kontaktronach oraz czujnik obiektu w bramie zostały podłączone do układu za pomocą bramek Schmitta. Było to podyktowane tym, że styki te podczas przełączenia w'ytwarząją drgania gasnące, przez które układ mógłby „wariować”. Czujnik podczerwieni natomiast mógłby przenosić chwilowe zakłócenia. Jednak to wszystko to tylko zabezpieczenia.
Głównym źródłem sterowania jest pilot. Schemat pilota można zobaczyć na rysunku 4. Jak widać, jest on bardzo prosty Dwa przyciski zostały podłączone
Rys. 3 Graf pracy układu
Elektronika dla Wszystkich Grudzień 2006 57