Hvordan lage Arduino-basert hjemmeautomatiseringssystem ved hjelp av TV Remote?
Hjemmeautomatiseringssystem er det raskest voksende konseptet i den moderne verden. Smart hjemmeautomatisering er et konsept der en enkelt enhet brukes til å kontrollere forskjellige elektroniske parametere i et hus, for eksempel bytte av husholdningsapparater, overvåking av sikkerhetsalarmer, garasjeportautomatisering, etc.
I dette prosjektet vil vi bruke en enkel TV-fjernkontroll til å lage et enkelt hjemmeautomatiseringssystem. Denne TV-fjernkontrollen vil kontrollere alle apparater som er koblet til mikrokontrollerkortet.
Hvordan bruke en TV-fjernkontroll til å lage hjemmeautomatiseringssystem?
Hjemmeautomatiseringssystemer som allerede er tilgjengelige i markedet, er veldig kostbare. Vi kan bruke et Arduino-kort til å koble til forskjellige husholdningsapparater og kontrollere dem ved hjelp av en TV-fjernkontroll. Dette vil være veldig lavt og en effektiv måte å automatisere huset på. La oss nå gå et skritt videre og begynne å samle informasjon for å starte prosjektet.
Trinn 1: Samle komponentene
Den beste tilnærmingen for å starte et prosjekt er å lage en liste over komponenter og gå gjennom en kort studie av disse komponentene, fordi ingen vil holde seg midt i et prosjekt bare på grunn av en manglende komponent. En liste over komponenter som vi skal bruke i dette prosjektet er gitt nedenfor:
Trinn 2: Studere komponentene
Nå som vi vet hvilke komponenter vi skal bruke, la oss studere dem kort for å få en bedre forståelse av hvordan kretsen vår fungerer.
Arduino Nano er et mikrokontrollerkort som utfører forskjellige operasjoner i forskjellige kretser. Det krever en C-kode som forteller styret hvilke oppgaver som skal utføres og hvordan. Den har 13 digitale I / O-pinner som betyr at vi kan betjene 13 forskjellige enheter. Hvis du vil kontrollere mer enn 13 enheter, bruk Arduino Mega.
TSOP 1738 er en IR-modul for fjernkontroller. Den har en bærefrekvens på 38 kHz. Den består av en fotodetektor som oppdager signalet og demodulerer det deretter. Utgangen brukes direkte av Arduino eller et annet mikrokontrollerkort.
En relémodul er en bryterenhet. Det fungerer i to moduser, Normalt åpen (NO) og Normalt Stengt (NC). I NO-modus er kretsen alltid ødelagt med mindre du sender et HØYT signal til stafetten gjennom Arduino. NC-modus forverres omvendt. Kretsen er alltid komplett med mindre du slår på relémodulen. Forsikre deg om at du kobler den positive ledningen til det elektriske apparatet til relémodulen på den måten som er vist nedenfor.
En standard TV-fjernkontroll har en strømknapp og alle talltastene på den. Disse talltastene vil brukes til å bytte elektriske apparater.
Trinn 3: Å lage kretsen
Nå som vi vet hvordan alle komponentene fungerer, la oss gå videre og begynne å lage kretsen.
- Ta et brødbrett og sett inn Arduino Nano og TSOP 1738 i den.
- Slå på TSOP 1738-modulen og relémodulen gjennom Arduino. Koble til UTE pin av TSOP1738 til pin11 av Arduino og koble også til I stifter på relémodulen til Arduino. Jeg kontrollerer bare to elektriske apparater, så jeg bruker bare relémoduler her. Hvis du vil kontrollere flere apparater, kan du koble til flere relémoduler.
Trinn 4: Komme i gang med Arduino
Hvis du ikke har jobbet med Arduino IDE før, ikke bekymre deg fordi trinn for trinn for å konfigurere Arduino IDE vises nedenfor.
- Koble Arduino-kortet til PC-en og åpne Kontrollpanel. Klikk på Maskinvare og lyd.Nå åpen Enheter og skriver og finn porten som kortet ditt er koblet til. I mitt tilfelle er det COM14men det er forskjellig på forskjellige datamaskiner.
- Klikk på Verktøy-menyen og sett tavlen som Arduino Nano (AT Mega 328P).
- Klikk på Verktøy-menyen igjen og sett porten du observerte i kontrollpanelet før.
- I samme verktøymeny, sett prosessoren som ATmega328p (gammel bootloader).
- For å dekode dataene som sendes av fjernkontrollen, trenger vi et spesielt bibliotek for A-kode Arduino. Dette biblioteket er vedlagt sammen med koden i lenken nedenfor. For å legge til biblioteket Skisse> Inkluder bibliotek> Legg til ZIP-bibliotek. En rute vises. Finn ZIP-mappen på datamaskinen din, og klikk OK for å inkludere mappen.
- Last ned koden som er vedlagt nedenfor, og klikk på opplastingsknappen for å brenne koden i Arduino Nano-kortet.
Klikk på nedlastingsknappen for å få koden.
Trinn 5: Kode
Koden er veldig lett å forstå, men likevel er den kort beskrevet nedenfor.
1. ugyldig oppsett ()er en funksjon der vi initialiserer INPUT- eller OUTPUT-pinnene. Denne funksjonen angir også overføringshastigheten ved å bruke Serial.begin () kommando. Baud Rate er kommunikasjonshastigheten til mikrokontrolleren.
2. ugyldig sløyfe ()er en funksjon som går gjentatte ganger i en løkke. I denne sløyfen skriver vi en kode som forteller mikrokontrollerkortet hvilke oppgaver som skal utføres og hvordan.
3. Når vi sender data fra TV-fjernkontrollen, må Arduino dekode disse dataene. For dette har vi tatt med et spesialbibliotek #inkludere
#inkludereint RECV_PIN = 11; IRrecv irrecv (RECV_PIN); resultatene for dekode_resultater; ugyldig oppsett () {Serial.begin (9600); irrecv.enableIRIn (); } ugyldig sløyfe () {if (irrecv.decode (& resultater)) {Serial.println (results.value, HEX); irrecv.resume (); } forsinkelse (100); }
Ovennevnte kode leser verdiene som sendes fra fjernkontrollen og dekoder den til dens tilsvarende HEX-verdi. Denne koden er hentet fra eksemplene på IRremote-biblioteket i Arduino IDE. Denne koden er også vedlagt i nedlastingskoblingen med navnet test.ino gitt ovenfor. Når alle talltastene trykkes, vil utgangen av denne funksjonen være:
4. I code.ino vedlagt i nedlastningskoblingen ovenfor initialiseres pinner av Arduino som skal brukes. I ugyldig sløyfe () funksjon, når en knapp på fjernkontrollen trykkes, den første Falsk tilstand blir vendt til ekteog det respektive reléet er slått på. Hvis du trykker på den samme knappen igjen, vil den veksle mellom den boolske tilstanden og slå av reléet. Av / på-knappen vil slå alle reléene på eller av.
ugyldig sløyfe () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); forsinkelse (100); hvis (resultat.verdi == 0x40BD00FF) {i =! i; digitalWrite (IN1, i); } hvis (results.value == 0x40BD807F) {j =! j; digitalWrite (IN2, j); // forsinkelse (200); } hvis (resultat.verdi == 0x40BD28D7) {m =! m; digitalWrite (IN1, m); digitalWrite (IN2, m); digitalWrite (IN3, m); digitalWrite (IN4, m); // forsinkelse (200); } irrecv.resume (); // Motta neste verdi // forsinkelse (100); }}
Dette var hele prosedyren for å lage et enkelt hjemmeautomatiseringssystem styrt av en TV-fjernkontroll. Nå kan du koble relémoduler i henhold til antall apparater og nyte ditt eget Smart Home Automation System.