Sadržaj:

Opći otmičar prekidača: 3 koraka
Opći otmičar prekidača: 3 koraka

Video: Opći otmičar prekidača: 3 koraka

Video: Opći otmičar prekidača: 3 koraka
Video: КАКИМ БУДЕТ PORTAL 3 2024, Studeni
Anonim
Generički otmičar prekidača
Generički otmičar prekidača

Ovaj članak opisuje kako izgraditi čvrsti mikrokontrolerski uređaj koji kontrolira fizičke prekidače. Izrada je vrlo jeftina (oko 4 USD), pod pretpostavkom da imate programer za mikrokontroler. Sam krug je trivijalne složenosti.

Ovaj je projekt vrlo jednostavan i ne uključuje zapanjujuće nove tehnike. To bi poslužilo kao dobar prvi projekt mikrokontrolera. Izvorni kod sklopa bit će vam dan u ovom članku. Imam jako cool šefa na poslu. Ponekad se volimo međusobno šaliti. Na njegovu žalost, ja sam znanstvenik. Moja je svrha ovdje učiniti da se razni uređaji na radnom mjestu tajanstveno uključuju na kraće vrijeme. Radio, bučni pisači, čak i one dosadne glazbene rođendanske čestitke skrivene u nekom uobičajenom predmetu. Osim toga, projekt je primjer kako kontrolirate veća opterećenja pomoću AVR -a nego što se izlazni pinovi mogu sami nositi. Ovo je veliki izbor stvari, budući da vam izlazni pinovi daju samo mali napon i vrlo ograničenu struju. Ovaj bi se krug mogao proširiti relejem za kontrolu doista vrlo velikih opterećenja.

Korak 1: Dizajn i sklop

Dizajn i sklop
Dizajn i sklop

Za ovaj projekt možete koristiti gotovo bilo koji mikrokontroler, regulator napona od 5 V i NPN tranzistor. Koristio sam:

1x ATtiny26L-8PU (~ 2 $) 1x TL780 5v regulator napona (~ 0.7 $) 1x N2222 tranzistor (~ 0.07 $) 1x 9v baterija, ili 12v baterija za daljinsko upravljanje radi uštede prostora … i naravno moj pouzdani STK500, sada sa ZIF-om utičnice dodane! Osnovni dizajn je sljedeći: Mikrokontroler prolazi kroz dvije vremenske petlje. Duga petlja za određivanje vremena uključivanja uređaja i kratka petlja za određivanje koliko dugo treba držati uređaj uključenim. Kad dođe vrijeme za izazivanje problema, mikrokontroler šalje logički visoki izlaz 14 (Najmanji bit PORTA). Time se aktivira tranzistor. Ako ste spojili stezaljke na vodiče na prekidaču, otpor na prekidaču naglo će pasti s vrlo visokog na manje od 1 ohma, što je većini uređaja dovoljno da razmotre uključivanje. Imajte na umu da su tranzistori također diode, pa ako ne radi … polaritet stezaljki je vjerojatno pogrešan, zamijenite ih! Također, ovaj uređaj zahtijeva pristojnu bateriju od 9 V, recimo s preostalim potencijalom od 8 V … osim toga, ne troši mnogo energije. Postoji mnogo neiskorištenih pinova, pa biste ih, naravno, mogli koristiti za upravljanje više prekidača za veći kaos, ali to je bilo dovoljno za moje potrebe. Sljedeći korak je izvorni kod koji sam napisao kako bih pokrenuo ovu stvar. Zadane duljine za stanja "uključeno" i "isključeno" su približno 10 sekundi odnosno 13 minuta. U kodu postoje komentari kako promijeniti te vrijednosti. Na kraju, oprostite zbog opsežne uporabe funkcije "nop" (troši procesorski ciklus ne radeći ništa) za podešavanje mjerača vremena. Neelegantno je jer može slomiti funkciju rjmp ako ne pazite koliko ih koristite!

Korak 2: Izvorni kod

POČETAK:

. INCLUDE "tn26def.inc"; Datoteka definicije. Potražite Google ako vam treba kopija. clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 izlaz DDRA, r27 izlaz PORTA, r28 TIMER: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0q113 TIMER nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc r25 cpi r25, 0b11111111; smanjite ovaj broj da biste smanjili vrijeme "isključeno" breq FUNC rjmp TIMER FUNC: nop nop cpi r28, 0x00 breq FUNC2 dec r28 clr r30 clr r29 clr r25 izlaz PORTA, r28 rjmp TIMER FUNC2: nop nop inc r28 out PORTA, r28 clr r25 clr r30 clr r29 rjmp TIMER4 TIMER4: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; Povećajte ovaj broj da biste povećali vrijeme "uključenosti" breq FUNC rjmp TIMER4

Korak 3: Završna napomena

Zabavite se, ali zapamtite da tranzistor ima ograničenja u smislu količine snage koju možete pumpati kroz njega. To znači da nema mrežnog napona! Osim što bi vrlo brzo preopteretio tranzistor, ovaj uređaj neće dobro kontrolirati izmjenične signale … osim ako ne primijenite dolje opisanu izmjenu * i * dodate relej: Ako vas zabrinjava polaritet stezaljki, samo povežite drugi tranzistor s osnovna ploča spojena na isti izvor kao i prvi tranzistor, ali s kolektorom i odašiljačem u suprotnoj konfiguraciji. Na taj način, bez obzira na to kako ste pričvrstili stezaljke, logičko visoko iz mikrokontrolera uvijek će "uključiti" prekidač. Imajte na umu da bi struja curenja u ovom sustavu mogla biti dovoljna za aktiviranje nekih osjetljivih prekidača poput matrica tipkovnice. Možda ćete za ovu aplikaciju morati dodati niz otpornika. Upamtite da možete ispirati snagu iz ciljnog uređaja umjesto pomoću baterije. Konačno … Instalirao sam uređaj unutar drevnog računovodstvenog kalkulatora, tipa koji ima funkcije ispisa. Promijenio sam matricu tipkovnice pomoću spajalice kako bih utvrdio koje bi igle IC-a pri povezivanju uzrokovale uvlačenje papira i spojio ispravne igle zajedno s uređajem. Zatim sam onemogućio prekidač koji vam omogućuje isključivanje funkcije ispisa. Smatram da je stroj pravilno podriven. Uključuje prilično bučno ulaganje papira svakih 10 minuta, na 10 sekundi, kad god je uređaj uključen. Također je dobro funkcionirao s krugom s jedne od onih hiper-odvratnih glazbenih rođendanskih čestitki. Moje je radno mjesto sada bizarnije!

Preporučeni: