Nastavite Raspberry Pi Home Automation

Set Up Raspberry Pi Home Automation



Ena najpomembnejših stvari pri avtomatizaciji doma je krmiljenje visokonapetostnega AC z nizkonapetostnim enosmernim tokom. Za nadzor visokonapetostnega izmeničnega toka iz Raspberry Pi potrebujete relejno stikalo 5V. Stikalo releja lahko nadzirate z zatiči GPIO v Raspberry Pi. Relejsko stikalo lahko nato prek Raspberry Pi upravlja krmilne gospodinjske aparate.

Ta članek vam bo pokazal, kako uporabite Raspberry Pi in stikalo releja 5V za vklop in izklop žarnice iz mobilne naprave. Članek vsebuje spletno aplikacijo, do katere lahko dostopate iz katere koli naprave v omrežju in brezžično upravljate vse gospodinjske aparate AC v vašem domu. Torej, začnimo z našim preprostim eksperimentom avtomatizacije doma Raspberry Pi.







Stvari, ki jih boste potrebovali

Če želite uporabljati Raspberry Pi brez glave (prek SSH ali VNC), boste potrebovali naslednje:



1) Raspberry Pi 3 ali Raspberry Pi 4.
2) Stikalo releja 5V.
3) Električne žice.
4) 3 povezovalne žice ženski na ženski.
5) AC žarnica.
6) Nosilec žarnice za izmenični tok.
7) Vtič za izmenični tok.
8) Orodje za striženje in odstranjevanje žice.
9) Izvijač CR-V 3.
10) Napajalnik Micro-USB (Raspberry Pi 3) ali USB Type-C (Raspberry Pi 4).
11) Utripala je kartica 16 GB ali 32 GB microSD z Raspberry Pi OS.
12) Omrežna povezljivost na Raspberry Pi.
13) Prenosni računalnik ali namizni računalnik za dostop do oddaljenega namizja VNC ali dostop SSH do Raspberry Pi.



Če ne želite dostopati do Raspberry Pi na daljavo prek SSH ali VNC, boste potrebovali tudi naslednje:





14) Monitor.
15) Kabel HDMI ali mikro-HDMI.
16) Tipkovnica.
17) miška.

Če potrebujete pomoč pri utripanju slike OS Raspberry Pi na kartico microSD, si oglejte članek Kako namestiti in uporabljati Raspberry Pi Imager.



Če ste začetnik Raspberry Pi in potrebujete pomoč pri namestitvi OS Raspberry Pi na Raspberry Pi, si oglejte članek Kako namestiti Raspberry Pi OS na Raspberry Pi 4.

Če potrebujete pomoč pri brezglavi nastavitvi Raspberry Pi, si oglejte članek Kako namestiti in konfigurirati Raspberry Pi OS na Raspberry Pi 4 brez zunanjega monitorja.

Spodaj so slike vseh potrebnih orodij.

Vklop Raspberry Pi

Nato priključite napajalni kabel na Raspberry Pi in vklopite Raspberry Pi.

Ko je Raspberry Pi vklopljen, se lahko povežete z Raspberry Pi prek VNC ali SSH. Lahko pa na Raspberry Pi priključite tipkovnico, miško in monitor, da do njih neposredno dostopate.

Odklopi releja 5V

Rele je v bistvu stikalo. Toda za razliko od tradicionalnega stikala lahko rele krmili majhna količina enosmerne napetosti.

Rele 5V je zelo enostaven za uporabo. Ima dve strani: ena stran se uporablja za krmiljenje releja prek nizkonapetostnega enosmernega toka (iz Raspberry Pi), druga stran pa za krmiljenje visokonapetostnega izmeničnega toka (tj. Žarnice), odvisno od stanja releja .


Na eni strani ima rele dve LED (eno rdečo in eno zeleno) in tri zatiče ( IN, GND, in VCC ). Ti trije zatiči se uporabljajo za krmiljenje releja iz Raspberry Pi.

Prva dva zatiča na drugi strani se uporabljata za upravljanje gospodinjske naprave AC.

Priključitev releja 5V na Raspberry Pi

Za priključitev releja 5V na Raspberry Pi boste potrebovali tri povezovalne žice med žensko in žensko.

Priključite eno stran povezovalnih žic na IN (rumena žica), GND (črna žica) in VCC (rdeča žica) zatiči v 5V releju, kot je prikazano spodaj.


Druga stran žic gre v zatiče glave GPIO Raspberry Pi, kot je prikazano na spodnji sliki.

Rdeča žica mora iti v PIN 2 (VCC) od Raspberry Pi.
Črna žica mora iti v PIN 6 (GND) od Raspberry Pi.
Rumena žica mora iti v PIN 7 (GPIO 4) od Raspberry Pi.


Ko je rele 5V priključen na Raspberry Pi, mora izgledati, kot je prikazano na spodnji sliki.

Dovoljenje dostopa GPIO uporabniku za prijavo

Če želite omogočiti dostop do zatičev GPIO, privzetega uporabnika za prijavo v sistemu Raspberry Pi OS pi je treba dodati v gpio skupina.

Dodate lahko pi uporabnik v gpio združite z naslednjim ukazom:

$sudousermod-aGgpio $(kdo sem jaz)


Če želite, da spremembe začnejo veljati, znova zaženite Raspberry Pi z naslednjim ukazom:

$sudoznova zaženite

Ustvarjanje imenika projektov

Prav tako je dobro organizirati vse projektne datoteke.

Če želite, da so datoteke projekta organizirane, ustvarite imenik projekta ~/www in zahtevane podimenike z naslednjim ukazom:

$mkdir -pv~/www/{predloge, statične}


Ko je imenik projekta ustvarjen, se pomaknite do imenika projekta na naslednji način:

$CD~/www

Preklop releja 5V iz Raspberry Pi

Zdaj, ko ste rele 5V priključili na Raspberry Pi, boste rele preklopili z Raspberry Pi s programskim jezikom Python.

OPOMBA: Preklop je izraz, ki se uporablja v elektroniki. Vklop pomeni nadzor (tj. Vklop/izklop) določene elektronske naprave.

Če želite poskusiti s preklopom releja s programskim jezikom Python, ustvarite nov skript Python test.py v imeniku projekta na naslednji način:

$nanotest.py


V skript Python test.py vnesite naslednje vrstice kod.

odgpiozerouvozLED
od čas uvozspi

medtem Prav:
rele=LED(4)
tiskanje('Rele: Vklopljeno')
spi(5)

rele.blizu()
tiskanje('Rele: izklopljen')
spi(5)

Ko končate, pritisnite + X sledi IN in da shranite test.py Python skript.


Tu je uvožena vrstica 1 LED Iz gpiozero knjižnico, druga vrstica pa uvozi spi funkcijo iz čas knjižnica.


Vrstice 6-14 so znotraj neskončne zanke.


Vrstica 6 inicializira LED v GPIO 4 Raspberry Pi, ki je povezan z IN pin releja.


Vrstica 8 vklopi rele z uporabo na () metoda.

9. vrstica natisne sporočilo v konzoli z uporabo print () funkcijo.

Vrstica 10 za pet sekund odloži izvajanje naslednje vrstice kode z uporabo spanje () funkcijo.


Vrstica 12 izklopi rele z uporabo zapri () metoda.

Na enak način vrstica 9 natisne sporočilo na konzoli z uporabo print () funkcija in vrstica 10 za 5 sekund odloži izvajanje naslednje vrstice kode z uporabo spanje () funkcijo.


Nato zaženite test.py Python skript:

$python3 test.py


The test.py Skript Python bi moral začeti preklapljati rele 5V. Vsakih pet sekund bi morali slišati klik. Ko rele preklopi (iz vklopa v izklop ali iz izklopa v vklop), sproži klik. To pomeni, da rele deluje pravilno.


Ko je rele v izklopljenem stanju (normalno delovanje-izmenična obremenitev je odklopljena), je le mreža LED mora zasvetiti, kot vidite na spodnji sliki.


Ko je rele v stanju vklopa (priključena je izmenična obremenitev), sta oba zelena LED in the mreža LED mora zasvetiti, kot vidite na spodnji sliki.


Ko je testiranje končano, pritisnite + C prekiniti test.py skript.

Priključitev žarnice za izmenični tok na rele 5V

Rele 5V bi moral zdaj pravilno delovati. Zdaj boste vaš domači aparat za izmenični tok (v tem primeru žarnico) priključili na rele 5V.

Najprej z sekačem žice prerežite črno električno žico, povezano z žarnico.


Ko je črna električna žica, povezana z žarnico, odrezana z sekačem žice, mora izgledati, kot je prikazano na spodnji sliki.


Nato odstranite zunanjo plast, da izpostavite približno ½ palca električne žice, kot je prikazano na spodnji sliki.


Nato prepognite izpostavljene žice, kot je prikazano na spodnji sliki.


Odvijte označene vijake releja z izvijačem CV-3.


V obe vijačni sponki vstavite izpostavljene žice, ki ste jih prej slekli in zložili, ter jih privijte z izvijačem CV-3.

Testiranje preklopa releja po priključitvi izmeničnega tovora

Ko je obremenitev izmeničnega toka priključena na rele 5V, priključite vtič žarnice v stensko vtičnico.


Zaženite test.py Python skript iz imenika projekta na naslednji način:

$python3 test.py


The test.py Python skript bi moral začeti preklapljati rele 5V, ki bo posledično preklapljal visokonapetostno AC žarnico v petsekundnih intervalih. Žarnica za izmenični tok mora ostati vklopljena pet sekund, nato naj ostane izključena pet sekund itd.

Žarnica je na spodnji sliki izklopljena.


Žarnica je vklopljena na spodnji sliki.


Kot lahko vidite, lahko preklopimo rele in nadzorujemo visokonapetostno AC žarnico s programskim jezikom Python. Torej, pritisnite + C prekiniti test.py skript.

Zdaj pa pojdimo na naslednji razdelek.

Pisanje spletne aplikacije Home Automation

V tem razdelku vam bom pokazal, kako s programskim jezikom Python napisati spletno aplikacijo, ki temelji na API-ju. S spletno aplikacijo lahko upravljate rele in gospodinjske (-e) gospodinjske (-e) naprave (-e) za izmenični tok ali električne naprave (-e), povezane z relejem iz spletnega brskalnika.

OPOMBA: Vse kode, prikazane v tem razdelku, so na voljo v mojem skladišču GitHub shovon8 / raspberry-pi-home-automation . Če želite, lahko klonirate moje skladišče GitHub in preskočite vse kode.

Ustvarite strežnik server.py Python v imeniku projekta na naslednji način:

$nanoserver.py


Vnesite naslednje vrstice kod v server.py Python skript.

odbučkouvozBučka,jsonify,url_for,render_template
odgpiozerouvozLED
oduuiduvozuuid4
sobe= {}
sobe['Soba 1'] = [{
'id': uuid4(),
'ime':'Luč 1',
'ikona':'fa fa-žarnica',
'stanje':Napačno,
'releyPin':4,
'releyInstance':Napačno
}, {
'id': uuid4(),
'ime':'Fan 1',
'ikona':'fa fa-fan',
'stanje':Napačno,
'releyPin':6,
'releyInstance':Napačno
}]
sobe['Kopalnica 1'] = [{
'id': uuid4(),
'ime':'Luč 1',
'ikona':'fa fa-žarnica',
'stanje':Napačno,
'releyPin':5,
'releyInstance':Napačno
}]
aplikacijo=Bučka(__ime__)
aplikacijo.config['SEND_FILE_MAX_AGE_DEFAULT'] = 0
@aplikacijo.pot('/')
defdoma():
vrnitevrender_template('./index.html',sobe=sobe)
deftoggle_appliance_status(id):
zasobavsobe:
zaaparatomvsobe[soba]:
če str(aparatom['id']) == id:
čeaparatom['releyInstance']:
aparatom['releyInstance'].blizu()
aparatom['relayInstance'] = Napačno
drugače:
aparatom['releyInstance'] =LED(aparatom['releyPin'])
aparatom['releyInstance'].naprej()
aparatom['stanje'] = neaparatom['stanje']
vrnitev Prav
vrnitev Napačno
@aplikacijo.pot('/naprava/preklop/')
defdevice_toggle(id):
vrnitevjsonify({'stanje': toggle_appliance_status(id)})

Ko končate, pritisnite + X sledi IN in da shranite server.py Python skript.


Tu vrstice 1-3 uvozijo vse potrebne komponente iz svojih knjižnic.


5. vrstica ustvari prazno sobe slovar. V tem slovarju bomo shranili vse podrobnosti o napravi AC, ki jih želimo nadzirati iz spletne aplikacije.


The sobe podrobnosti so shranjene v vrsticah 7-29.


Pogovorimo se o podatkovni strukturi ene od sob.

Tukaj bo ime sobe Soba 1. Torej, Soba 1 je ključ do sobe slovar.


The Soba 1 ključ vsebuje polje kot vrednost. Število elementov matrike je enako številu gospodinjskih aparatov za izmenični tok, ki jih imate v tej sobi in jih želite nadzirati tudi iz spletne aplikacije. V tem primeru imamo dva AC gospodinjska aparata, ki ju želimo nadzirati: Svetloba 1 in Ventilator 1 .


Vsaka definicija gospodinjskih aparatov ima id . The id je naključno ustvarjen UUID. To se uporablja za ugotavljanje, katero sobo želimo nadzirati z API -jem.

Domači aparat ima tudi vse naslednje:

  • ime (luč 1 v tem primeru)
  • ikono (Razred ikon Font Awesome, saj bomo za ikone uporabljali Font Awesome)
  • status (res če naprej in Napačno če izklopljeno )
  • relayPin (pin številka GPIO, ki se uporablja za krmiljenje releja, priključenega na gospodinjski aparat na izmenični tok)
  • relayInstance (inicializirano LED predmet gpiozero knjižnica, odgovorna za nadzor ustreznega zatiča GPIO - relayPin )


Vrstica 31 inicializira spletni strežnik Python iz bučke.

Vrstica 32 konfigurira spletni strežnik bučke.


Vrstice 34-36 pošljite index.html datoteko iz predloge/ imenik, ko obiščete spletno aplikacijo za domačo avtomatizacijo.

Uporaba steklenic Jinja2 predloga jezika za upodabljanje index.html mapa. Torej sem opravil sobe slovar v index.html mapa. Jinja2 bo upodobil domačo stran z uporabo sobe podatkov.


Funkcija toggle_appliance_status () v vrsticah 39-52 se uporablja za vklop gospodinjskega aparata, če je izklopljen, in za izklop gospodinjskega aparata, če je vklopljen z uporabo aparata id .

Vrne se Prav če je preklopna operacija uspešna. Če pride do napake, se bo vrnila Napačno .


Vrstice 55-57 se uporabljajo za preklapljanje gospodinjskih aparatov z uporabo /naprava/preklop/ Končna točka API -ja spletnega strežnika. Tukaj, id je ID gospodinjskega aparata.


Ustvarite datoteko index.html datoteko v predloge/ imenik vašega projekta, kot sledi:

$nanopredloge/index.html

Vnesite naslednje vrstice kod v index.html skript.


< html lang='vklopljeno'>
< glavo >
< meta charset='UTF-8'>
< meta ime='viewport' vsebino='width = širina naprave, začetno merilo = 1,0'>
< povezava rel='slog' href='{{url_for (' static ', filename =' fontawesome/css/all.min.css ')}}'>
< povezava rel='slog' href='{{url_for (' static ', filename =' style.css ')}}'>
< naslov >Domača avtomatizacija z Raspberry Pi</ naslov >
</ glavo >
< telo >
< div id='vsebina'>
< h1 >Domača avtomatizacija Raspberry Pi</ h1 >

{ % za sobo v sobah %}
< div razred='soba'>
< h2 >{{soba}}</ h2 >
< div razred='aparati'>
{ % za aparat v sobah [soba] %}
< div razred='aparat' id='{{aparat [' id ']}}'> ='aktivno'>
< jaz razred='{{aparat [' ikona ']}}'></ jaz >
< razpon >{{aparat ['ime']}}</ razpon >
</ div >
{ % endfor %}
</ div >
</ div >
{ % endfor %}

</ div >

< skript src='{{url_for (' static ', filename =' app.js ')}}' tip='besedilo/javascript'></ skript >
</ telo >
</ html >

Ko končate, pritisnite + X sledi IN in da shranite index.html mapa.


Ustvariti style.css datoteko v statično/ imenik vašega projekta, kot sledi:

$nanostatična/style.css


Vnesite naslednje vrstice kod v style.css mapa.

@uvoz url('https://fonts.googleapis.com/css2?family=BenchNine: [zaščiteno z e -pošto]; 400; 700 & display = swap');

* {
marža: 0;
oblazinjenje: 0;
družina pisav: 'BenchNine', brez serifa;
}

#vsebino >h1{
ozadje:linearni gradient(doprav, rgb(112, 24, 163), rgb(86, 127, 240));
barvo: #fff;
poravnajte besedilo: center;
oblazinjenje: .5em 0;
}

div.soba {
marža: .5em;
mejo: 2 slikovnih pik trden rgb(112, 24, 163);
meja-polmer: 5 slikovnih pik;
}

div.sobah2{
/* ozadje: rgb (9, 76, 121); */
ozadje:linearni gradient(doprav, rgb(112, 24, 163), rgb(86, 127, 240));
oblazinjenje: 0 0 0 .5em;
barvo: #fff;
}

div.aparati {
marža: .5em .5em 0 0;
zaslon:upognite;
flex-wrap:zaviti;
}

div.aparat {
mejo: 2 slikovnih pik trden rgb(112, 24, 163);
meja-polmer: 5 slikovnih pik;
premer: 110 slikovnih pik;
višina: 120 slikovnih pik;
poravnajte besedilo: center;
marža: 0 0 .5em .5em;
zaslon:upognite;
upogibna smer:stolpec;
}

div.aparatjaz.fa {
velikost pisave: 4em;
upogibajte se: 1;
oblazinjeni vrh: 0,3em;
barvo: rgb(204, petdeset, petdeset);
}

div.appliance[podatkovno aktiven='aktivno']jaz.fa {
barvo: rgb(32, 177, 51);
}

div.aparatrazpon{
zaslon: blok;
teža pisave: krepko;
ozadje: rgb(112, 24, 163);
barvo: #fff;
}

Ko končate, pritisnite + X sledi IN in da shranite style.css mapa.


Ustvarite app.js datoteko v statično/ imenik vašega projekta, kot sledi:

$nanostatična/app.js


Vnesite naslednje vrstice kod v app.js mapa.

okno.addEventListener('obremenitev',glavni);

funkcijoglavni() {
funkcijotoggleApplianceState(In) {
kjeid=In.pot[1].id;

kjehttp= novXMLHttpRequest();

http.onreadystatechange = funkcijo() {
če(to.readyState === 4 && to.stanje === 200) {
če(JSON.razčleniti(to.responseText).stanje === prav) {
če(In.pot[1].hasAttribute('podatkovno aktiven')) {
In.pot[1].removeAttribute('podatkovno aktiven')
} drugače {
In.pot[1].setAttribute('podatkovno aktiven', 'aktivno')
}
}
}
}

http.odprto('GET',''/aparatom/preklopiti/${id}'', prav);
http.pošlji();
}


kjeaparati=dokument.getElementsByClassName('aparat');
za(jaz=0;jaz<aparati.dolžino;jaz++) {
aparati[jaz].addEventListener('klik',toggleApplianceState);
}
}

Ko končate, pritisnite + X sledi IN in shraniti app.js mapa.


Tukaj vrstica 1 vodi main () funkcijo, ko se spletna stran naloži.

V index.html datoteko, vsak gospodinjski aparat je zaprt v aparatom razred. Vrstice 26-29 se uporabljajo za izbiro vsakega gospodinjskega aparata s spletne strani in pritrditev kliknite dogodek v napravi. Ko nekdo s spletne strani klikne gospodinjski aparat, se prikaže toggleApplianceState () funkcija se bo zagnala.


V vrsticah 4-23 je toggleApplianceState () funkcija se uporablja za zahtevanje /naprava/preklop/ končna točka spletnega strežnika za spreminjanje stanja kliknjene gospodinjske naprave. Zahteva je poslana v ozadju prek AJAX -a. Ko prejmete odgovor, se spletna stran ustrezno posodobi.


Pomaknite se do statično/ imenik v imeniku vašega projekta na naslednji način:

$CDstatična/


Prenesite Font Awesome z naslednjim ukazom:

$wgethttps://use.fontawesome.com/izdaje/v5.15.1/fontawesome-free-5.15.1-web.zip


Ko prenesete Font Awesome, bi morali poiskati novo datoteko zip fontawesome-free-5.15.1-web.zip v statično/ imenik.

$ls -hh


Razpakirajte fontawesome-free-5.15.1-web.zip datoteko z naslednjim ukazom:

$razpakirajfontawesome-free-5.15.1-web.zip


The fontawesome-free-5.15.1-web.zip datoteko bi bilo treba zdaj razpakirati.


Novi imenik fontawesome-free-5.15.1-web/ je treba ustvariti v imeniku static/, kot lahko vidite na spodnjem posnetku zaslona.

$ls -hh

Preimenujte imenik fontawesome-free-5.15.1-web/ do fontawesome/ z naslednjim ukazom:

$mv -vfontawesome-free-5.15.1-web fontawesome


Zdaj tega ne potrebujete več fontawesome-free-5.15.1-web.zip mapa. Torej, odstranite fontawesome-free-5.15.1-web.zip datoteko z naslednjim ukazom:

$rm -vfontawesome-free-5.15.1-web.zip


The statično/ imeniška struktura bi morala izgledati, kot je prikazano na spodnjem posnetku zaslona.

$ls -hh


Pomaknite se nazaj v imenik projekta ~/www kot sledi:

$CD..

Testiranje spletne aplikacije za domačo avtomatizacijo

Če želite preizkusiti spletno aplikacijo za domačo avtomatizacijo, v imeniku projekta zaženite naslednji ukaz:

$FLASK_APP= zagon bučke server.py


Spletna aplikacija bi morala biti na voljo na vratih 5000 vašega Raspberry Pi.


V spletnem brskalniku Chromium obiščite http: // localhost: 5000 . Spletna aplikacija za avtomatizacijo doma bi se morala naložiti.

Kliknite ikono žarnice, prikazano na spodnji sliki.


Žarnica za izmenični tok mora biti zdaj vklopljena. Barva ikone se mora spremeniti tudi v zeleno, kar pomeni, da je žarnica prižgana.


Torej, spletna aplikacija za avtomatizacijo doma deluje. Pritisnite + C za prekinitev spletnega strežnika.

Ustvarjanje storitve Systemd za spletno aplikacijo za domačo avtomatizacijo

V tem razdelku vam bom pokazal, kako ustvarite sistemsko datoteko storitve za spletno aplikacijo za avtomatizacijo doma, tako da se bo samodejno zagnala ob zagonu.

Najprej ustvarite datoteko raspi-home-automation.service datoteko v imeniku vašega projekta na naslednji način:

$nanoraspi-home-automation.service

Vnesite naslednje vrstice v datoteko raspi-home-automation.service.

[Enota]
Opis= Spletna storitev Raspberry Pi Home Automation
Po= network.target
[Storitev]
Delovni imenik=/doma/pi/www
Okolje=FLASK_APP= server.py
Okolje=FLASK_ENV= proizvodnja
ExecStart=/usr/sem/zagon bučke--host= 0,0,0,0
Standardni izhod= podeduje
Standardna napaka= podeduje
Ponovni zagon= vedno
Uporabnik= pi
[Namesti]
Zaželeno= cilj za več uporabnikov

Ko končate, pritisnite + X sledi IN in shraniti raspi-home-automation.service mapa.


Kopirajte datoteko raspi-home-automation.service datoteko v /etc/systemd/system/ imenik z naslednjim ukazom:

$sudo cp -vraspi-home-automation.service/itd/sistem/sistem/


Znova naložite sistemske demone, da bodo spremembe začele veljati na naslednji način:

$sudosystemctl daemon-reload


Dodajte datoteko raspi-home-automation storitev za zagon sistema Raspberry Pi OS z naslednjim ukazom:

$sudosystemctlomogočiraspi-home-automation.service


Znova zaženite Raspberry Pi z naslednjim ukazom:

$sudoznova zaženite


Ko se enkrat zažene Raspberry Pi, se raspi-home-automation storitev mora biti aktivna/teče, kot lahko vidite na spodnjem posnetku zaslona.

$sudosystemctl status raspi-home-automation.service

Dostop do spletne aplikacije Home Automation iz drugih naprav

Za dostop do spletne aplikacije za domačo avtomatizacijo iz drugih naprav v vašem domačem omrežju morate poznati naslov IP naprave Raspberry Pi.

Naslov IP naprave Raspberry Pi 4 najdete v vmesniku za spletno upravljanje vašega domačega usmerjevalnika. V mojem primeru je naslov IP 192.168.0.103. To bo pri vas drugače. Torej, od zdaj naprej zamenjajte moj IP s svojim.


Če imate dostop do konzole Raspberry Pi, lahko zaženete tudi naslednji ukaz, da poiščete naslov IP.

$ime gostitelja -JAZ


Ko poznate naslov IP naprave Raspberry Pi, lahko do njega dostopate iz katere koli naprave v domačem omrežju.

Kot lahko vidite na spodnjem posnetku zaslona, ​​sem s svojega pametnega telefona Android dostopila do spletne aplikacije za avtomatizacijo doma.


Vtič žarnice obvezno priključite v stensko vtičnico.


Žarnica mora biti privzeto izklopljena.


Če se v spletni aplikaciji za domačo avtomatizacijo dotaknete ikone žarnice, se mora barva ikone žarnice spremeniti v zeleno, kar pomeni, da je žarnica vklopljena.


Kot lahko vidite na spodnji sliki, je žarnica prižgana.

Zaključek

Ta članek vam je pokazal, kako z 5V relejem upravljati visokonapetostno električno napravo iz omrežja Raspberry Pi z uporabo programskega jezika Python. Članek vam je pokazal tudi, kako napisati spletno aplikacijo Python flask na osnovi API -ja za nadzor releja iz spletnega brskalnika. Ta članek vam bo pomagal začeti z avtomatizacijo doma z uporabo Raspberry Pi.