Kazalo:

8 -kanalni programabilni časovnik: 13 korakov
8 -kanalni programabilni časovnik: 13 korakov

Video: 8 -kanalni programabilni časovnik: 13 korakov

Video: 8 -kanalni programabilni časovnik: 13 korakov
Video: Звезда (FullHD, драма, реж. Николай Лебедев, 2002 г.) 2024, Julij
Anonim
8 -kanalni programabilni časovnik
8 -kanalni programabilni časovnik
8 -kanalni programabilni časovnik
8 -kanalni programabilni časovnik
8 -kanalni programabilni časovnik
8 -kanalni programabilni časovnik

Uvod

Za svoje projekte že od leta 1993 uporabljam Microchip -jevo paleto mikrokontrolerjev PIC in vse svoje programiranje izvajam v asemblerskem jeziku z uporabo Microchip MPLab IDE. Moji projekti so segali od preprostih semaforjev in utripajočih LED, do vmesnikov USB krmilne palice za modele R/C in analizatorjev stikalnih naprav, ki se uporabljajo v industriji. Razvoj je trajal veliko dni, včasih pa tudi tisoče vrstic asemblerske kode.

Po prejemu Matrix Multimedia Flowcode 4 Professional sem bil precej skeptičen do programske opreme. Zdelo se je preveč enostavno verjeti. Odločil sem se, da poskusim in preizkusil vse različne makrone komponent, vse z velikim uspehom. Najboljši del uporabe Flowcode je bil, da je mogoče preproste projekte kodirati v eni noči. Po igranju z uro I²C in uro realnega časa DS1307 sem se odločil za oblikovanje 8 -kanalnega časovnika s pomočjo kode toka. Ker nisem bil majhen in enostaven projekt, sem verjel, da bi bil to odličen projekt, da se naučim Flowcode.

Izbira mikroprocesorja in drugih komponent

Zaradi potrebnega števila V/I zatičev je bilo jasno, da bo potrebna 40 -polna naprava. PIC 18F4520 je bil izbran predvsem zaradi 32K programskega pomnilnika in 1536 bajtov podatkovnega pomnilnika. Vse uporabljene komponente so standardne naprave z luknjami, ki po potrebi omogočajo izdelavo vezja na plošči Vero. To je pomagalo tudi pri razvoju na podlagi.

1. korak: Cilji projekta

Cilji projekta
Cilji projekta

Cilji

- Natančno merjenje časa z rezervno baterijo.

- Vse programe in podatke je treba hraniti tudi po izpadu napajanja.

- Enostaven uporabniški vmesnik.

- Prožnost programiranja.

Hranjenje časa

Če živite na območju, ki je nagnjeno k izpadom električne energije, standardnih 50/60 Hz daljnovodov ne bo zadostoval za natančno merjenje časa. Ura v realnem času je bila bistvena in po preizkusu več čipov RTC sem se odločil za DS1307 zaradi njegove preproste konfiguracije oscilatorja in rezervne baterije. Precej natančen čas je bil dosežen z uporabo samo kristala 32,768 kHz, priključenega na DS1307. Natančnost je bila v 2 sekundah v 2 -mesečnem poskusnem obdobju z uporabo 4 različnih kristalov.

Hramba podatkov

Ohraniti je treba vse podatke časovnega programa tudi med izpadom napajanja. Z do 100 različnimi programi in različnimi konfiguracijskimi podatki je postalo jasno, da 256 bajtov vgrajenega EEPROM-a PIC ne bo dovolj veliko. 24LC256 I²C EEPROM se uporablja za shranjevanje vseh programskih informacij.

Enostaven uporabniški vmesnik

Uporabniški vmesnik je sestavljen samo iz 2 elementov, 16 -palčnega LCD zaslona z osvetlitvijo LED in tipkovnice 4 x 3. Vse programiranje je mogoče izvesti s pritiskom na le nekaj gumbov. Dodatki k vmesniku so zvočni piezo brenčalec in vizualno utripajoča osvetlitev LCD -zaslona.

2. korak: Prožnost programiranja

Prilagodljivost programiranja
Prilagodljivost programiranja

Za zagotovitev zadostne prilagodljivosti programa ima časovnik 100 programov, ki jih lahko nastavite posamično. Za vsak program lahko nastavite čas vklopa, čas izklopa, izhodne kanale in dan v tednu. Vsak program ima tri načine:

- Samodejno: nastavljen je čas vklopa, čas izklopa, izhodni kanal in dan v tednu.

- Izklopljeno: Posamezni program lahko onemogočite, ne da bi izbrisali nastavitve. Če želite znova omogočiti program, preprosto izberite drug način.

- Dan/noč: nastavljen je čas vklopa, čas izklopa, izhodni kanal in dan v tednu. Deluje enako kot samodejni način, vendar bo

izhode vklopite le med časom vklopa in izklopa, ko je temno. To omogoča tudi popoln nadzor dan/noč

kot dodatna prilagodljivost za vklop luči ob sončnem zahodu in izklop ob sončnem vzhodu.

Primer 1: Lučka se prižge po 20.00 in ugasne ob sončnem vzhodu.:

Ob: 20:00, Izklopljeno: 12:00, Primer 2: Luč se prižge ob sončnem zahodu in ugasne ob 23:00.

Ob: 12:00

Izklopljeno: 23:00

Primer 3: Luč se prižge ob sončnem zahodu in ugasne ob sončnem vzhodu.

Ob: 12:01

Izklopljeno: 12:00

Na voljo so dodatne možnosti, vse delujejo neodvisno od 100 programov za vklop/izklop.

Programski kanali aktivni: Namesto da izklopite več programov, lahko posamezne izhodne kanale onemogočite brez potrebe po spreminjanju programov.

Pomožni vhodi: Na voljo sta dva digitalna vhoda, ki omogočata vklop določenih izhodnih kanalov za določen čas. Uporabite ga lahko na primer za prižig določenih luči, ko se pozno ponoči vračate domov, ko pritisnete gumb na daljinskem upravljalniku, ali za vklop drugačne luči, ko se sproži hišni alarm.

Pomožni izhodi: Na voljo sta dva dodatna izhoda (razen 8 izhodnih kanalov). Lahko se programirajo za vklop z določenimi izhodnimi kanali ali z digitalnimi vhodi. V svoji namestitvi imam izhode 6-8, ki nadzorujejo moje namakanje, ki deluje na 24V. Uporabljam kanale 6-8 za vklop enega od pomožnih izhodov, za vklop napajanja 24V za namakalni sistem.

Ročno vklopljeno: Na glavnem zaslonu lahko z gumbi 1-8 ročno vklopite ali izklopite kanale.

3. korak: Strojna oprema

Strojna oprema
Strojna oprema

Napajanje: Napajanje je sestavljeno iz usmernika, glajenja kondenzatorja in varovalke 1 Amp za zaščito pred preobremenitvijo. To oskrbo nato regulira regulator 7812 in 7805. 12V napajanje se uporablja za pogon izhodnih relejev, vsa druga vezja pa se napajajo iz 5V napajanja. Ker je regulator 7805 priključen na izhod regulatorja 7812, mora biti skupni tok omejen na 1 amper skozi regulator 7812. Te regulatorje je priporočljivo namestiti na ustrezen hladilnik.

I²C vodilo: Čeprav Flowcode omogoča strojno krmiljenje I²C, sem se odločil za uporabo programske konfiguracije I²C. To omogoča večjo prilagodljivost dodelitve pin. Čeprav je počasnejši (50 kHz), se v primerjavi s strojnim vodilom I²C še vedno odlično obnese. Tako DS1307 kot 24LC256 sta povezana s tem vodilom I²C.

Ura v realnem času (DS1307): Med zagonom se odčitata registra RTC 0 in 7, da se ugotovi, ali vsebuje veljaven čas in konfiguracijske podatke. Ko je nastavitev pravilna, se odčita čas RTC in čas naloži v PIC. To je edini čas, ko se čas bere z RTC. Po zagonu bo na zatiču 7 RTC prisoten 1Hz impulz. Ta signal 1Hz je priključen na RB0/INT0 in prek storitvene rutine prekinitev se čas PIC posodobi vsako sekundo.

Zunanji EEPROM: Vsi podatki programa in možnosti so shranjeni na zunanjem EEPROM -u. Podatki EEPROM se naložijo ob zagonu, kopija podatkov pa se shrani v pomnilnik PIC. Podatki EEPROM se posodobijo le, ko se spremenijo nastavitve programa.

Senzor dan/noč: Kot senzor dan/noč se uporablja standardni svetlobno odvisen upor (LDR). Ker so LDR v različnih oblikah in sortah, vse z različnimi vrednostmi upora pri enakih svetlobnih pogojih, sem za branje ravni svetlobe uporabil analogni vhodni kanal. Dnevne in nočne ravni so nastavljive in omogočajo določeno prilagodljivost za različne senzorje. Za nastavitev histereze lahko nastavite posamezne vrednosti za dan in noč. Stanje se bo spremenilo le, če bo raven svetlobe pod dnevom ali nad nastavljenimi točkami za noč za več kot 60 sekund.

LCD zaslon: Uporablja se 4 vrstni, 16 znakovni zaslon, saj vseh podatkov ni bilo mogoče prikazati na 2-vrstnem zaslonu. Projekt vključuje nekaj znakov po meri, ki so opredeljeni v makrou LCD_Custom_Char.

Pomožni vhodi: Oba vhoda sta medpomnjena s tranzistorjem NPN. +12v in 0V sta na voljo tudi na priključku, kar omogoča prilagodljivejše povezave z zunanjimi povezavami. Na primer, na napajanje je mogoče priključiti sprejemnik za daljinsko upravljanje.

Izhodi: Vsi izhodi so električno izolirani od tokokroga s pomočjo 12V releja. Uporabljeni releji so ocenjeni za 250V AC pri 10 amperih. Običajno odprti in normalno zaprti kontakti se izvlečejo na sponke.

Tipkovnica: Uporabljena tipkovnica je matrična tipkovnica 3 x 4 in je povezana PORTB: 2..7.

4. korak: Prekinitev tipkovnice

Prekinitev tipkovnice
Prekinitev tipkovnice
Prekinitev tipkovnice
Prekinitev tipkovnice
Prekinitev tipkovnice
Prekinitev tipkovnice

Želel sem uporabiti prekinitev PORTB Prekinitev ob spremembi pri katerem koli pritisku tipke. V ta namen je bilo treba v kodi toka ustvariti prekinitev po meri, da bi zagotovili pravilno nastavitev smeri in podatkov PORTB pred in po vsakem prekinitvi tipkovnice. Prekinitev se ustvari vsakič, ko pritisnete ali spustite gumb. Prekinitvena rutina se odzove le, ko pritisnete tipko.

PRIHODNI PREKINITEV

Omogoči kodo

portb = 0b00001110; trisb = 0b11110001;

intcon. RBIE = 1;

intcon2. RBIP = 1;

intcon2. RBPU = 1;

rcon. IPEN = 0;

Koda upravljavca

if (intcon & (1 << RBIF))

{FCM_%n ();

portb = 0b00001110;

trisb = 0b11110001;

wreg = portb;

clear_bit (intcon, RBIF);

}

Najdene težave

Med prekinitvijo mora rutinska storitev prekinitve pod pogoji NO poklicati kateri koli drug makro, ki bi ga lahko uporabili nekje v preostalem delu programa. To bo sčasoma povzročilo težave s prelivom skladov, saj se lahko prekinitev pojavi hkrati, ko je glavni program tudi v isti podprogramu. To je označeno tudi kot RESNA NAPAKA s kodo pretoka, ko je koda sestavljena.

V kodi po meri tipkovnice pod GetKeyPadNumber obstaja tak klic makra Delay_us, ki bo povzročil preliv sklada. Da bi to premagal, sem umaknil ukaz Delay_us (10) in ga nadomestil s 25 vrsticami »wreg = porta;« ukaze. Ta ukaz bere PORTA in vnese svojo vrednost v register W, samo da pride do nekaj zamude. Ta ukaz bo sestavljen v eno samo navodilo, podobno asemblerju movf porta, 0. Za takto 10MHz, ki se uporablja v projektu, bo vsako navodilo 400ns, za zamudo 10us pa sem potreboval 25 teh navodil.

Upoštevajte v drugi vrstici slike 3: Koda po meri GetKeypadNumber, da je bil prvotni ukaz delay_us (10) onemogočen z “//”. Pod to sem dodal svojih 25 "wreg = porta;" ukaze za novo zamudo 10us. Brez klicev nobenega makra v kodi po meri Keypad_ReadKeypadNumber se lahko makro tipkovnice zdaj uporablja znotraj rutine prekinitve storitev.

Treba je opozoriti, da komponente tipkovnice Flowcode in eBlocks ne uporabljajo standardnih uporovnih uporov na vhodnih linijah. Namesto tega uporablja 100K izvlečne upore. Zaradi nekaterih motenj na tipkovnici med razvojem so bili vsi 100K upori zamenjani z 10K, vsi 10K upori pa z 1K5. Tipkovnica je bila preizkušena za pravilno delovanje z vodili 200 mm.

5. korak: Uporaba časovnika

Uporaba časovnika
Uporaba časovnika
Uporaba časovnika
Uporaba časovnika
Uporaba časovnika
Uporaba časovnika

Vsi zasloni so nastavljeni tako, da prikazujejo vse potrebne informacije, da lahko uporabnik hitro spremeni nastavitve. 4. vrstica se uporablja za pomoč pri navigaciji po menijih in možnostih programa. Med normalnim delovanjem je na voljo skupno 22 zaslonov.

LINIJA 1: Čas in stanje

Prikazuje trenutni dan in uro, nato pa ikone stanja:

A - Označuje, da je bil sprožen pomožni vhod A in da deluje časomer pomožnega vhoda A.

B - Označuje, da je bil sprožen pomožni vhod B in da je časovnik pomožnega vhoda B vklopljen.

C - Označuje, da je vhod Aux C vklopljen.

D - Označuje, da je vhod Aux D vklopljen.

} - Stanje senzorja dan/noč. Če je prisoten, pomeni, da je noč.

LINIJA 2: Izhodi programa

Prikazuje kanale, ki so jih vklopili različni programi. Kanali so prikazani v svojih izhodnih številkah in "-" označuje, da določen izhod ni vklopljen. Kanali, ki so bili onemogočeni v razdelku »Programski izhodi aktivni«, bodo še vedno prikazani tukaj, dejanski izhodi pa ne bodo nastavljeni.

LINIJA 3: Realni izhodi

Prikaže, katere kanale vklopijo različni programi, pomožni vhodi A in B ali ročni izhodi, ki jih nastavi uporabnik. S pritiskom na 0 se izklopijo vsi ročno aktivirani izhodi in ponastavijo časovniki A & B izhoda Aux.

LINIJA 4: Možnosti menija in tipk (v vseh menijih)

Označuje delovanje tipk "*" in "#".

Sredinski del označuje, katere številske tipke (0-9) so aktivne za izbrani zaslon.

Stanje vhoda Aux vhoda A & B je prikazano tudi s pomočjo ikone stikala Open (Odprto) ali Closed (Zaprto).

Izhode lahko ročno vklopite/izklopite s pritiskom na ustrezno tipko na tipkovnici.

V menijih se za krmarjenje po različnih možnostih programa uporabljata tipki Star in Hash. Za nastavitev možnosti se uporabljajo tipke 0-9. Če je na enem zaslonu ali v meniju za programiranje na voljo več možnosti, se s tipko Hash pomikate po različnih možnostih. Trenutno izbrana možnost bo vedno označena z znakom »>« na levi strani zaslona.

0-9 Vnesite časovne vrednosti

1-8 Spremenite izbiro kanala

14 36 Koraki skozi programe, 1 korak nazaj, 4 koraki nazaj 10 programov, 3 koraki naprej, 6 korakov naprej 10

programi

1-7 Nastavite dneve v tednu. 1 = nedelja, 2 = ponedeljek, 3 = torek, 4 = sreda, 5 = četrtek, 6 = petek, 7 = sobota

0 Na glavnem zaslonu počistite vse ročne preglasitve in časovnike za vnos A in vhod B. V drugih menijih se spremembe

izbrane možnosti

# Na glavnem zaslonu bo onemogočil vse ročne preglasitve, časovnike vhoda A in vhoda B ter programske izhode, dokler

naslednji dogodek.

* in 1 Znova zaženite časovnik

* in 2 Počistite vse programe in možnosti, obnovite nastavitve na privzete.

* in 3 Preklopite časovnik v stanje pripravljenosti. Za ponovni vklop časovnika pritisnite katero koli tipko.

Med napačnimi vnosi katere koli časovne osvetlitve bo osvetlitev LCD -ja 5 -krat utripala, kar označuje napako. Hkrati se oglasi zvočni signal. Ukazi Exit in Next bodo delovali le, če je trenutni vnos pravilen.

LCD osvetlitev ozadja

Ob prvem zagonu se bo osvetlitev LCD vklopila za 3 minute, razen če:

- Napaka strojne opreme (EEPROM ali RTC ni bil najden)

- Čas ni nastavljen v RTC

Osvetlitev LCD -zaslona se bo ponovno vklopila za 3 minute pri katerem koli uporabniškem vnosu na tipkovnici. Če je osvetlitev zaslona LCD izklopljena, bo kateri koli ukaz tipkovnice najprej vklopil osvetlitev zaslona LCD in prezrl pritisnjeno tipko. To zagotavlja, da bo uporabnik pred uporabo tipkovnice lahko prebral LCD zaslon. Osvetlitev LCD -zaslona se bo vklopila tudi za 5 sekund, če je vklopljen pomožni vhod A ali pomožni vhod B.

6. korak: Posnetki zaslona menija

Posnetki zaslona menija
Posnetki zaslona menija
Posnetki zaslona menija
Posnetki zaslona menija
Posnetki zaslona menija
Posnetki zaslona menija

S tipkovnico lahko preprosto programirate vsako od možnosti. Slike dajejo nekaj informacij o tem, kaj počne vsak zaslon.

7. korak: Oblikovanje sistema

Oblikovanje sistema
Oblikovanje sistema

Ves razvoj in testiranje sta bila izvedena na podlagi. Če pogledam vse odseke sistema, sem sistem razčlenil na tri module. Ta odločitev je bila predvsem posledica omejitev velikosti PCB (80 x 100 mm) brezplačne različice Eagle.

Modul 1 - Napajanje

Modul 2 - CPU plošča

Modul 3 - Relejna plošča

Odločil sem se, da morajo biti vse komponente enostavno dostopne in da ne želim uporabljati komponent za površinsko montažo.

Pojdimo skozi vsakega od njih.

8. korak: Napajanje

Napajanje
Napajanje
Napajanje
Napajanje
Napajanje
Napajanje
Napajanje
Napajanje

Napajanje je neposredno in napaja procesorske in relejske plošče z 12V in 5V.

Regulatorje napetosti sem namestil na dostojne hladilnike, za napajanje pa sem uporabil tudi precenjene kondenzatorje.

9. korak: CPU plošča

CPU plošča
CPU plošča
CPU plošča
CPU plošča
CPU plošča
CPU plošča
CPU plošča
CPU plošča

Vse komponente, razen LCD zaslona, tipkovnice in relejev, so nameščene na plošči procesorja.

Dodani so bili priključni bloki za poenostavitev povezav med napajanjem, dvema digitalnima vhodoma in svetlobnim senzorjem.

Zatiči/vtičnice za glave omogočajo enostavno povezavo z LCD zaslonom in tipkovnico.

Za izhode relejev sem uporabil ULN2803. Vsebuje že vse potrebne pogonske upore in povratne diode. To je zagotovilo, da je ploščo procesorja še vedno mogoče izdelati z brezplačno različico Eagle. Releji so povezani z dvema ULN2803. Spodnji ULN2803 se uporablja za 8 izhodov, zgornji ULN2803 pa za dva pomožna izhoda. Vsak pomožni izhod ima štiri tranzistorje. Priključki na releje potekajo tudi preko zatičev/vtičnic.

PIC 18F4520 je bil opremljen s programsko vtičnico, ki omogoča enostavno programiranje prek programatorja PicKit 3.

OPOMBA:

Opazili boste, da plošča vsebuje dodatni 8 -polni IC. Zgornji IC je PIC 12F675 in je priključen na digitalni vhod. To je bilo dodano med načrtovanjem tiskanega vezja. To olajša predhodno obdelavo digitalnega vhoda. V moji aplikaciji je eden od digitalnih vhodov priključen na moj alarmni sistem. Če se oglasi alarm, se v moji hiši prižgejo določene luči. Aktiviranje in razorožitev mojega alarmnega sistema daje različne zvočne signale na sireni. Z uporabo PIC 12F675 lahko zdaj ločim med roko/razorožitvijo in pravim alarmom. 12F675 je opremljen tudi s programsko vtičnico.

Poskrbel sem tudi za vrata I2C prek zatiča/vtičnice glave. To bo pozneje prišlo še z relejnimi ploščami.

Plošča vsebuje nekaj mostičkov, ki jih je treba spajkati, preden namestite vtičnice IC.

10. korak: Zaključek kode toka

Sklep o protokolu
Sklep o protokolu
Sklep o protokolu
Sklep o protokolu
Sklep o protokolu
Sklep o protokolu

Ker sem vajen delati na ravni registra pri sestavljanju, je bilo včasih težko in moteče uporabljati makre komponent. To je bilo predvsem posledica mojega nepoznavanja programske strukture Flowcode. Edini kraj, kjer sem uporabil bloke C ali ASM, je bil vklop izhodov znotraj rutine prekinitev in v rutini Do_KeyPressed onemogočanje/omogočanje prekinitve tipkovnice. PIC se vstavi tudi v SLEEP z uporabo bloka ASM, kadar EEPROM ali RTC ni najden.

Pomoč pri uporabi različnih ukazov I²C je bila pridobljena v datotekah pomoči za kodo Flowflow. Preden lahko ukaze uspešno uporabite, morate natančno vedeti, kako delujejo različne naprave I²C. Oblikovanje vezja od oblikovalca zahteva, da ima na voljo vse ustrezne podatkovne liste. To ni pomanjkljivost protokola.

Flowcode je resnično zdržal preizkus in je zelo priporočljiv za osebe, ki želijo začeti delati z mikroprocesorji Microchip.

Programiranje kode toka in konfiguracija za PIC sta bila nastavljena po slikah

11. korak: Izbirna relejna plošča I2C

Izbirna relejna plošča I2C
Izbirna relejna plošča I2C
Izbirna relejna plošča I2C
Izbirna relejna plošča I2C
Izbirna relejna plošča I2C
Izbirna relejna plošča I2C

Plošča CPE že ima priključke glave za 16 relejev. Ti izhodi so odprtokolektorski tranzistorji preko dveh čipov ULN2803, ki se lahko uporabljajo za neposredno napajanje relejev.

Po prvih preskusih sistema mi niso bile všeč vse žice med ploščo procesorja in releji. Ker sem na ploščo CPE vključil vrata I2C, sem se odločil, da bom relejsko ploščo oblikoval za povezavo z vrati I2C. Z uporabo 16 -kanalnega čipa za razširitev vhodno -izhodnih vrat MCP23017 in tranzistorskega niza ULN2803 sem zmanjšal povezave med procesorjem in releji na 4 žice.

Ker nisem mogel namestiti 16 relejev na tiskano vezje 80 x 100 mm, sem se odločil za izdelavo dveh plošč. Vsak MCP23017 uporablja le 8 od svojih 16 vrat. Plošča 1 upravlja 8 izhodov, plošča 2 pa dva pomožna izhoda. Edina razlika na ploščah je naslov vsake plošče. To enostavno nastavite z mini skakačem. Vsaka plošča ima priključke za napajanje in podatke I2C na drugo ploščo.

OPOMBA:

Po potrebi programska oprema predvideva samo eno ploščo, ki lahko uporablja vseh 16 vrat. Vsi podatki o izhodnem releju so na voljo na prvi plošči.

Ker je vezje neobvezno in zelo preprosto, nisem ustvaril sheme. Če je povpraševanje dovolj, ga lahko dodam pozneje.

Korak: Izbirna RF povezava

Izbirna RF povezava
Izbirna RF povezava
Izbirna RF povezava
Izbirna RF povezava
Izbirna RF povezava
Izbirna RF povezava

Po zaključku projekta sem kmalu spoznal, da moram na časovnike potegniti veliko napetosti 220V AC. Razvil sem RF povezavo s standardnimi moduli 315MHz, ki so omogočali, da se časovnik postavi v omaro, relejne plošče pa v strehi, blizu vseh ožičenja 220V.

Povezava uporablja AtMega328P, ki deluje pri 16MHz. Programska oprema za oddajnik in sprejemnik je enaka, način pa izbere mini skakalec.

Oddajnik

Oddajnik je preprosto priključen na vrata CPU I2C. Dodatne nastavitve niso potrebne, saj AtMega328P posluša iste podatke kot relejne plošče I2C.

Podatki se na vratih I2C posodabljajo enkrat na sekundo, oddajnik pa te informacije pošlje po RF povezavi. Če oddajnik približno 30 sekund ne sprejema podatkov I2C, bo oddajnik neprestano prenašal podatke, da izklopi vse releje na sprejemno enoto.

Napajanje oddajnega modula je mogoče izbrati med 12V in 5V z mini mostičkom na tiskani plošči. Oddajnik napajam z 12V.

Sprejemnik

Sprejemnik posluša kodirane podatke oddajnika in jih postavi na vrata I2C. Relejna plošča se preprosto priključi na ta vrata in deluje enako, kot je bila priključena na ploščo CPE.

Če sprejemnik 30 sekund ne prejme veljavnih podatkov, bo sprejemnik neprestano pošiljal podatke na vrata I2C, da izklopi vse releje na relejnih ploščah.

Sheme

Nekega dne, če bo povpraševanje po njem. Skica Arduino vsebuje vse potrebne informacije za izdelavo vezja brez vezja.

Domet

V moji namestitvi sta oddajnik in sprejemnik oddaljena približno 10 metrov. Časovnik je v omari, relejna enota pa na vrhu stropa.

13. korak: Končni izdelek

Končni izdelek
Končni izdelek
Končni izdelek
Končni izdelek
Končni izdelek
Končni izdelek

Glavna enota je bila vgrajena v staro projektno škatlo. Vsebuje naslednje:

- 220V/12V transformator

- Napajalna plošča

- plošča procesorja

- LCD zaslon

- Tipkovnica

- Oddajnik RF povezave

- Dodatna enota za daljinski sprejemnik za dom, ki mi omogoča vklop/izklop luči prek daljinskega upravljalnika

Relejna enota je sestavljena iz naslednjega:

- 220V/12V transformator

- Napajalna plošča

- sprejemnik RF povezave

- 2 x relejne plošče I2C

Vse plošče so bile oblikovane z enako dimenzijo, kar olajša njihovo zlaganje eno na drugo s 3 -milimetrskimi distančniki.

Priporočena: