Na donjoj slici dana je shema stepenastog automata sa PIC16F84 mikrokontrolerom.
Za njegovu realizaciju potrebne su sljedeće komponente:
Rb. | Komponenta | Količina |
1. | IC1 - mikrokontroler PIC16F84-04/P | 1 kom |
2. | IC2 - 4N33 optokapler | 1 kom |
3. | Naponski regulator 7805 - pakovanje TO220 | 1 kom |
4. | T1 - tranzistor 2N2222 | 1 kom |
5. | Led1 - led dioda fi 10mm žuta | 1 kom |
6. | D1 - dioda 1N1418 | 1 kom |
7. | DIL - 6 podnožje (profesional) | 1 kom |
8. | DIL - 18 podnožje (profesional) | 1 kom |
9. | Re1 - relej Finder serija F3022, 5 Volti za PCB motažu | 1 kom |
10. | Q1 - keramički rezonator 3 pina 4 Mhz | 1 kom |
11. | R3,R7 - 330 W(1/4W) | 2 kom |
12. | R4 - 1k (1/4W) | 1 kom |
13. | R1, R2, R5, R6 - 10k(1/4W) | 4 kom |
14. | C1, C2 - 1mF elektrolitski subminijatur. stojeći | 2 kom |
15. | Konektor sa neke stare kartice za džamperisanje | 1 kom |
16. | Taster data crveni za print montažu sa kapicom | 1 kom |
17. | Taster data žuti za print montažu sa kapicom | 1 kom |
18. | Vitroplast jednostrani(100 x 160 mm) | 1 kom |
19. | Dvopolna redna stezaljka za štampu(plava) | 2 kom |
20. | Konektor za povezivanje 9V baterija | 1 kom |
Pritiskom na Taster bit će na PORTA.2 dovedena logička nula, što u programu prouzrokuje da se na pinu PORTA.3 izda logička jedinica koja će preko optokaplera biti dovedena na bazu tranzitora T1 što uzrokuje njegovo provođenje a time i uključenje releja Re1. Njegovim uključenjem zasvijetlit će Led1 dioda preko jednog para kontakata dok će drugi par kontakata proslijediti napon od 220 Volti. Tasterom Reset vrši se resetiranje mikrokontrolera. odnosno pokretanje programa od početka. Stabilizator LM7805 je dodan kako bi se uređaj mogao napajati sa baterijom od 9 volti. Ako imate napajanje od 5 volti stabilizator i kondenzatori C1 i C2 mogu se izbaciti. Zavisno od položaja đampera JP1 i JP2 određuje se i vrijeme trajanja uključenja automata prema donjoj tablici:
JP1 | JP2 | Vreme ukjuč. |
Off | Off | 5 min |
On | Off | 4 min |
Off | On | 3 min |
On | On | 2 min |
Izgled PCP ovog automata dan je na donjoj slici:
Progam za rad stepenastog automata je sljedeći(stepauto):
'**************************************************************** '* Naziv : STEPAUTO.BAS * '* Autor : Milanovic V. * '* Datum : 17/06/2004 * '* Verzija : 1.0 * '* Napomena: Program kontrole stepenisnog automata * '**************************************************************** symbol Taster = PORTA.2 ' Taster je na pinu RA2 symbol Sijalica = PORTA.3 ' Izlaz za optokapler na RA3 B1 var byte ' Pomocna promenljiva za naredbu BUTTON i var byte ' Promenljiva u FOR ... NEXT ciklusu vruk var word ' Vrijeme trajanja ukljucenja TRISA = 000111 ' Pinovi RA0,1,2 su ulazni Pocetak: ' Pocetak programa If (PORTA.1=1) and (PORTA.2=1) Then vruk = 5000 ' Vreme ukljuc. 5 min If (PORTA.1=0) and (PORTA.2=1) Then vruk = 4000 ' Vreme ukljuc. 4 min If (PORTA.1=1) and (PORTA.2=0) Then vruk = 3000 ' Vreme ukljuc. 3 min If (PORTA.1=0) and (PORTA.2=0) Then vruk = 2000 ' Vreme ukljuc. 2 min B1 = 0 button Taster,0,255,0,B1,1,Svetlo ' Ako je Taster pritisnut upali sijalicu pause 50 ' Pauza 50ms goto Pocetak ' Vrati se na pocetak programa Svetlo: high Sijalica ' Upali sijalicu pause vruk ' Zaustavi program do vremena trajanja ukljucenja low Sijalica ' Ugasi sijalicu goto Pocetak ' Vrati se na pocetka programa End ' Kraj programa |
Na početku programa dali smo simbolička imena Taster pinu PORTA.2 na koji je priključen taster za uključenje svijetla, kao i logičko ime Sijalica pinuPORTA.3 preko koga se uključuje ili isključuje sijalica. Pomoću If instrukcija određujemo dužinu vremena trajanja uključenja(vruk) u zavisnosti od položaja prekidača JP1 i JP2. U slučaju ako je prekidač isključen na pin će biti dovedena logička jedinica inače će biti spojen na masu tj. bit će dovedena logička nula. Instrukcijom button kontroliramo da li je Taster pritisnut i ako je program skaće na labelu Svijetlo. Naredbom high Sijalica izda se logička jedinica naPORTA.3 koja uzrokuje uključenje releja. Nakon toga se zaustavi izvršenje programa instrukcijom pause vruk tj. za vreme koje je definirano položajima prekidača. Nakon završetka pauze instrukcijom low Sijalica dovede se logička nula na pin PORTA.3 što uzrokuje isključenje releja i program se ponovo vraća na početak. U slučaju ako taster nije pritisnut program se stalno vraća na početak poslije instrukcije pause 50.
Iz ovog primijera vidi se jednostavnost PICBasic-a u primijeni na relativno složenijem uređaju.
Nema komentara:
Objavi komentar