Turinys:

Buitinės technikos Raspberry PI maitinimo monitorius: 14 žingsnių
Buitinės technikos Raspberry PI maitinimo monitorius: 14 žingsnių

Video: Buitinės technikos Raspberry PI maitinimo monitorius: 14 žingsnių

Video: Buitinės technikos Raspberry PI maitinimo monitorius: 14 žingsnių
Video: UPS-Kaip apsaugoti elektros prietaisus netikėtai dingus įtampai/Trumpa apžvalga/Episode 22/BK Grupė 2024, Lapkritis
Anonim
Buitinės technikos Raspberry PI maitinimo monitorius
Buitinės technikos Raspberry PI maitinimo monitorius
Buitinės technikos Raspberry PI maitinimo monitorius
Buitinės technikos Raspberry PI maitinimo monitorius

Tai buvo nedidelis projektas, kurį aš padariau, norėdamas stebėti atskirų namų prietaisų energijos suvartojimą ir parodyti jų energijos vartojimo grafikus laikui bėgant. Tiesą sakant, tai yra vienas iš paprasčiausių mano atliktų Raspberry PI projektų, nereikalaujant jokių litavimo ar įsilaužimo į atvirus produktus. Tai nebūtinai turi būti „Raspberry PI“projektas, tai galima lengvai padaryti naudojant „Linux“dėžutę arba galbūt „Windows“.

Kaina yra 50 USD už 4 maitinimo monitoriaus/išmaniųjų kištukų rinkinį ir „Raspberry PI“kainą. Tai gali veikti „Pi Zero“arba „Original PI“, nors pastebėjau, kad tai buvo šiek tiek lėta. Vienintelis kitas PI, kurį turiu, yra PI 3, ir man jis pasirodė labai greitas, todėl aš tai rekomenduočiau. Atkreipkite dėmesį, jei norite paleisti jį su senesniu PI, galite sumažinti duomenų rinkimo dažnumą (naudojau 10 sekundžių).

Šis projektas taip pat turi papildomos naudos arba išlaisvina išmanųjį kištuką iš gamintojų programinės įrangos, todėl jums nereikia naudoti konkrečių jų programų ir debesies paslaugų. Taigi juos galima naudoti su „Home Assist“arba tiesiog su savo „python“scenarijais.

Atminkite, kad darau prielaidą, kad žinote, kaip įdiegti OS PI, prisijungti prie jo ir paleisti keletą pagrindinių „Linux“komandų. Taip pat darau prielaidą, kad žinote, kaip rasti savo išmaniojo kištuko IP adresą, kai jis prisijungia prie jūsų „WiFi“.

Prekės

2 pakuotės arba 4 pakuotės išmaniųjų kištukų iš čia:

www.kogan.com/au/buy/kogan-smarterhome-sma…

1 Aviečių PI

Įgūdžiai:

Galimybė nustatyti aviečių PI

Pagrindinė „Linux“komandų eilutė

Teksto redaktorius, pvz., Vi arba nano („nano“yra patogesnis vartotojui, vi yra greitesnis, kai jį pažįstate)

Galimybė rasti jūsų tinklo įrenginių IP.

1 žingsnis: nusipirkite išmaniuosius kištukus

Įsigykite keletą išmaniųjų kištukų
Įsigykite keletą išmaniųjų kištukų

Išmanusis kištukas, kurį naudoju, buvo iš čia:

www.kogan.com/au/buy/kogan-smarterhome-sma…

Atkreipkite dėmesį, kad yra daugybė suderinamų išmaniųjų kištukų, dauguma (visi?) Yra ESP8266 (WEMOS) pagrindu pagaminti įrenginiai ir juos labai lengva blykstelėti. Įsitikinkite, kad turite tai, kas turi galios stebėseną, kaip daugelis jų neturi. Šiame puslapyje rodomas didelis suderinamų įrenginių sąrašas:

templates.blakadder.com/plug.html

2 žingsnis: Įrenginio mirksėjimas

Ši dalis buvo stebėtinai lengva. Iš esmės tiesiog atsisiųskite programinę įrangą, paleiskite ją ir ji jums padės.

Tam jums reikės „Raspberry PI“arba „Linux“dėžutės su „WiFi“. Turėsite turėti pagrindinį ryšį su šiuo įrenginiu, o ne „WiFi“. Mano PI3 tai buvo lengva, nes buvau prijungtas per eternetą. Jei turite „PI Zero“, turėsite prijungti senamadišką būdą, naudodami klaviatūrą ir monitorių.

Aš darau prielaidą, kad jūs žinote, kaip nustatyti PI ir prisijungti prie jo naudojant SSH arba klaviatūrą, todėl to nepadarysiu. Jei nesate tikri, žiniatinklyje yra daug pamokų.

Prieš pradėdami, šiek tiek informacijos apie įrenginius. Kinijoje yra bendrovė „Tuya“, kuri siurbia išmaniuosius kištukus skirtingiems klientams. Jie pritaikomi skirtingiems klientams, pateikia numatytąją programinę -aparatinę įrangą ir leidžia įmonėms patiems atlikti pakeitimus. Problema yra ta, kad jei turite daugybę skirtingų tiekėjų produktų, tada turėsite paleisti daugybę programų, kai kurios iš jų veikia geriau nei kitos. Blykstelėdami atvirojo kodo programinę -aparatinę įrangą, jūs atsikratote viso to. Taigi tai tinka bendram namų automatizavimui.

Taigi…. be jokių papildomų veiksmų, čia yra instrukcijos:

1) Vykdykite šias komandas PI, kad įdiegtumėte reikiamą programinę įrangą.

# git klonas https://github.com/ct-Open-Source/tuya-convert# cd tuya-convert#./install_prereq.sh

2) Prijunkite išmanųjį kištuką prie maitinimo šaltinio

3) Įjunkite jį mygtuku

4) Laikykite nuspaudę maitinimo mygtuką, kol pradės mirksėti mėlyna lemputė

5) Palaukite 10 sekundžių. Tai nėra būtina, tačiau pastebėjau, kad tai veiktų geriau, jei tai padarytumėte.

6) Vykdykite šią komandą

./start_flash.sh

Iš čia jūs tiesiog vykdote nurodymus, išskyrus pabaigoje pasirinkite „2. Tasmota“. Yra galimybė pasirinkti kitą programinę -aparatinę įrangą, bet aš to nebandžiau, todėl nesu tikras, kaip tai atrodo.

Atkreipkite dėmesį, kad tai turėjau daryti ne vieną kartą, iš pradžių maniau, kad užmūrijau prietaisą, neturėjau šviesų, nespustelėjau relės ir nesimatė gyvybės ženklų. Bet aš jį išjungiau ir vėl paleidau paskutinę komandą ir ji veikė. Aš turėjau tai padaryti su 3 iš 4 įrenginių, kuriuos aš mirgėjau, tik vienas iš jų buvo atliktas tiesiai, manau, dėl 5 veiksmo.

Visas instrukcijas rasite čia:

github.com/ct-Open-Source/tuya-convert

3 veiksmas: pirmą kartą prisijunkite prie programinės aparatinės įrangos

Prisijungimas prie programinės aparatinės įrangos pirmą kartą
Prisijungimas prie programinės aparatinės įrangos pirmą kartą
Prisijungimas prie programinės aparatinės įrangos pirmą kartą
Prisijungimas prie programinės aparatinės įrangos pirmą kartą
Prisijungimas prie programinės aparatinės įrangos pirmą kartą
Prisijungimas prie programinės aparatinės įrangos pirmą kartą

Įjungę tasmota į prietaisą, ji neparodys daug gyvybės ženklų. Taip yra todėl, kad jį reikia sukonfigūruoti. Tai padaryti yra gana paprasta, man atrodė, kad geriausia tai padaryti telefonu. Žingsniai yra šie:

1) Ieškokite „WiFi“prieigos taškų

2) Prisijunkite prie vieno, pažymėto tasmota_xxxx (kur x yra skaičiai)

3) Telefonas turėtų nukreipti jus į numatytąjį puslapį, jei ne, eikite į 192.168.4.1

Atkreipkite dėmesį, kad kai kuriuose telefonuose gali būti pateiktas pranešimas „nėra interneto prieigos, ar norite palaikyti ryšį“, pasirinkite taip.

4) Atidarytame puslapyje įveskite „WiFi“tinklo pavadinimą ir slaptažodį į pirmuosius 2 laukelius. Spustelėkite parinktį rodyti slaptažodį ir tris kartus patikrinkite, ar įvedėte tinkamą slaptažodį. Jei įvedėte neteisingą slaptažodį, manau, kad gali būti sunku grįžti į šį konfigūracijos ekraną. Atminkite, kad taip pat galite nuskaityti „WiFi“tinklus, nors, žinoma, vis tiek turite įvesti slaptažodį.

5) Kištukas dabar turėtų būti prijungtas prie jūsų „WiFi“tinklo. Turėsite eiti į maršrutizatoriaus konfigūracijos puslapį ir rasti savo įrenginio IP.

6) Kompiuteryje atidarykite žiniatinklio naršyklę ir eikite į https:// [device_ip] Turėtumėte pamatyti „Tasmota“konfigūracijos ekraną.

Sveikiname, sėkmingai išjungėte kištuką.

4 žingsnis: kištuko konfigūravimas

Kištuko konfigūravimas
Kištuko konfigūravimas

Šiuos įrenginius gaminanti bendrovė, matyt, gamina 10 000 įrenginių su daugybe skirtingų konfigūracijų. Mes ką tik parodėme naują programinę -aparatinę įrangą, o programinė įranga nežino, į kokius įrenginius ji buvo paleista. Taigi, kad kas nors veiktų, turėsime jį sukonfigūruoti. Norėdami tai padaryti, žiniatinklyje turime rasti išsamią informaciją apie savo įrenginį ir įkelti tą konkrečią konfigūraciją.

Norėdami tai padaryti, suraskite savo įrenginį šiame puslapyje:

templates.blakadder.com/plug.html

Mano naudojamo įrenginio konfigūracija yra čia:

templates.blakadder.com/kogan-KASPEMHUSBA….

Norėdami nustatyti konfigūraciją, mes tiesiog nukopijuojame tekstą po šablonu. Šiuo atveju tai yra:

{„PAVADINIMAS“: „KoganPOW“, „GPIO“: [0, 0, 0, 17, 134, 132, 0, 0, 131, 56, 21, 0, 0], „FLAG“: 0, „BASE“: 52}

Tada

1) Eikite į savo įrenginio konfigūracijos puslapį https:// [išmaniojo kištuko IP]

2) Spustelėkite konfigūruoti, konfigūruokite kitą

3) Įklijuokite savo šablono eilutę

4) Pažymėkite „Įgalinti MQTT“

5) Spustelėkite „Įjungti“ir „Išsaugoti“.

Norėdami patikrinti, ar tai pavyko, spustelėkite „Pagrindinis meniu“, kad grįžtumėte į pagrindinį puslapį ir dabar turėtumėte pamatyti energijos suvartojimo duomenis. Jie visi bus nuliniai, net įtampa, tačiau tai yra geras ženklas. Spustelėkite perjungimo mygtuką ir turėtumėte išgirsti relės spragtelėjimą ir pamatyti, kaip kyla įtampa.

5 žingsnis: kalibruokite įtampą

Kalibruoti įtampą
Kalibruoti įtampą

Radau, kad įtampos rodmenys rodo gana aukštą. Jei namuose turite kitą įtampos rodmenų šaltinį (pvz., Galbūt išmanųjį skaitiklį ??), kištuką galite labai lengvai sukalibruoti. Padaryti tai

1) Gaukite teisingą įtampos rodmenį

2) Įjunkite relę išmaniajame kištuke

3) Įrenginio pagrindiniame puslapyje spustelėkite „Konsolė“

4) Įveskite komandą „VoltageSet 228“ir paspauskite „Enter“(pakeiskite 228 savo įtampa)

Dabar įtampa turėtų būti rodoma teisingai.

6 veiksmas: programinės įrangos diegimas PI

Yra keletas paketų, kuriuos reikia įdiegti PI. Juos lengva įdiegti ir juos galima atlikti laikantis įvairių paketų instrukcijų. Pateiksiu instrukcijas čia, tačiau atkreipkite dėmesį, kad laikui bėgant jos gali keistis, todėl mano nurodymai bus datuojami. Paketai yra:

„Grafana“(grafikams rodyti)

„Influxdb“(laiko eilučių duomenų bazė, kurioje bus saugomi mūsų duomenys)

„Telegraf“(naudojamas duomenims perkelti į „Influxdb“)

Mosquitto (pranešimų magistralė naudojama duomenims perduoti, išmanusis kištukas stumia duomenis čia)

Duomenų srauto grandinė yra tokia:

Išmanusis kištukas -> Mosquitto -> Telegraf -> InfluxDB -> Grafana

Jei klausiate, kodėl negalime praleisti „Mosquitto“ir „Telegraf“, tai yra geras klausimas. Teoriškai „Smart Plug“gali paskatinti „Influx“. Problema ta, kad tada ji turi būti sukonfigūruota 100 skirtingų galinių taškų ir tai neleis mums pasirinkti. Dauguma namų automatizavimo dalykų naudoja „Mosquitto“pranešimams perduoti. Pavyzdžiui, mes galime įjungti ir išjungti kištuką siųsdami pranešimus „Mosquitto“, o išmanusis kištukas juos gaus ir atsakys.

7 veiksmas: „Grafana“diegimas

„Grafana“diegimas
„Grafana“diegimas

Nuo:

grafana.com/grafana/download?platform=arm

Arba daug kitų variantų čia:

grafana.com/grafana/download

„Pi 1“ir „Pi Zero“(ARMv6)

sudo apt-get install -y adduser libfontconfig1#Raskite naujausią versiją iš puslapio viršuje https://dl.grafana.com/oss/release/grafana-rpi_7….sudo dpkg -i grafana-rpi_7.0.1_armhf. debsudo /bin /systemctl daemon-reloadsudo /bin /systemctl įgalinti grafana-serveriusudo /bin /systemctl paleisti grafana-server

Naujesniems PI (ARMv7)

sudo apt -get install -y adduser libfontconfig1#Raskite naujausią versiją iš puslapio viršuje https://dl.grafana.com/oss/release/grafana_7.0.1_…sudo dpkg -i grafana_7.0.1_armhf.debsudo/ bin/systemctl daemon-reloadsudo/bin/systemctl įgalinti grafana-serveriusudo/bin/systemctl paleisti grafana-server

Tikrinti:

Eikite į https:// [PI IP]: 3000

vartotojo vardas/slaptažodis yra admin/admin, jis paprašys jį pakeisti, dabar galite praleisti

Jei turite GUI, viskas gerai, pereikite prie kito veiksmo

8 veiksmas: „InfluxDB“diegimas

Vykdykite šias komandas PI:

curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -source/etc/os-releasetest $ VERSION_ID = "7" && echo "deb https://repos.influxdata.com/debian švokštantis stabilus" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie stabili" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch tall" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "10" && echo "deb https://repos.influxdata.com/debian buster stabili" | sudo tee /etc/apt/sources.list.d/influxdb.listsudo apt-get atnaujinimai

Patikrinkite įvesdami „antplūdis“. Tai turėtų jus nukreipti į komandų eilutę „influenxdb“. Įveskite „Rodyti duomenų bazes“, duomenų bazių dar nebus, bet jei gausite tuščią sąrašą be klaidų, viskas bus gerai.

9 veiksmas: „Telegraf“diegimas

Tai tikrai lengva, nes pridėjome prieplūdžio repos, kurias galime tiesiog įvesti:

sudo apt-get įdiegti telegrafsudo systemctl įgalinti telegrafsudo systemctl paleisti telegraf

Šiuo metu „Telegraf“jau registruos sistemos metriką į antplūdį. Juos galite pamatyti įvesdami šias komandas:

antplūdžio šou duomenų bazės naudoti telegrafshow seriją Pasirinktas * NUO procesoriaus LIMIT 10;

10 veiksmas: įdiekite „Mosquitto“

Ši dalis yra paprasta, nes mes tiesiog įdiegiame numatytąją versiją, supakuotą su raspian:

sudo apt -get -y įdiegti mosquittosudo apt -get -y įdiegti mosquitto -customerssudo systemctl įgalinti mosquittosudo systemctl paleisti mosquitto# sukurti slaptažodį mosquittosudo mosquitto_passwd -c/etc/mosquitto/tasmota tasmota# įveskite slaptažodį. Užsirašykite šį slaptažodį, nes turėsime jį suteikti išmaniajam kištukui

Tikrinti:

paleiskite tai per vieną SSH seansą:

mosquitto_sub -t testas

Vykdykite tai kitame

mosquitto_pub -t testas -m mano žinutė

Turėtumėte matyti pranešimą per pirmąją SSH sesiją

11 veiksmas: duomenų siuntimas iš išmaniojo kištuko į „Mosquitto“

Duomenų siuntimas iš išmaniojo kištuko į „Mosquitto“
Duomenų siuntimas iš išmaniojo kištuko į „Mosquitto“

Dabar, kai veikia uodai, turime sukonfigūruoti išmanųjį kištuką, kad jis galėtų siųsti duomenis į uodus. Tai padaryti gana lengva. Mums reikės slaptažodžio, kuris buvo įvestas uodams iš ankstesnio veiksmo.

1) Prisijunkite prie savo išmaniųjų kištukų tinklalapio

2) Spustelėkite Configuration, tada Configure Logging

3) Nustatykite telemetrijos laikotarpį į 10 ir spustelėkite išsaugoti.

4) Spustelėkite Configure MQTT

5) Pagrindinio kompiuterio atveju įveskite savo PI IP adresą

6) Norėdami įvesti vartotojo vardą, įveskite tasmota

7) Norėdami įvesti slaptažodį, įveskite ankstesnio veiksmo slaptažodį

8) Norėdami įvesti temą, įveskite tasmota1

9) Spustelėkite išsaugoti

Tikrinti:

PI įveskite žemiau esančią komandą. Per 10 sekundžių turėtumėte pamatyti gaunamus duomenis.

mosquitto_sub -t tele/tasmota1/JUTIKLIS

Duomenys turėtų atrodyti taip:

12 veiksmas: naudokite „Telegraf“, kad perkeltumėte duomenis nuo „Mosquitto“į „Influx“

Dabar sukonfigūruosime „Telegraf“skaityti duomenis iš uodų ir pereiti prie antplūdžio. Apie PI:

1) sudo mv /etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf.bak

2) sudo vi /etc/telegraf/telegraf.conf

Pastaba vi nėra labai draugiška naujiems vartotojams, jei jums labiau patinka meniu pagrįstas teksto redaktorius, naudokite nano:

sudo nano /etc/telegraf/telegraf.conf

3) Įklijuokite konfigūraciją iš pridėto failo

4) sudo systemctl iš naujo paleiskite telegraf

Norėdami išbandyti, įveskite tai PI:

antplūdis

rodyti duomenų bazes

turėtumėte pamatyti bandymų duomenų bazę. Jei jums nepatinka vardo testas, galite pakeisti failą telegraf.conf dest_db.

13 žingsnis: Galiausiai sukurkite grafikus „Grafana“

Galiausiai sukurkite grafikus „Grafana“
Galiausiai sukurkite grafikus „Grafana“

Pagaliau pamatysime kai kuriuos duomenis:-):-)

Pirmiausia turime sukurti ryšį su duomenų baze. Eikite į grafanos tinklalapį http: [ip of PI]: 3000

1) Prisijunkite naudodami admin/admin

2) Kairiajame stulpelyje spustelėkite krumpliaračio piktogramą ir duomenų šaltinius

3) Spustelėkite pridėti duomenų šaltinį

4) Spustelėkite antplūdį

5] Norėdami įvesti URL, įveskite https:// localhost: 8086

6) Norėdami įvesti duomenų bazę, įveskite testą

7) HTTP atveju įveskite GET

8) Minimaliam laiko tarpui įveskite 10 s

9) Spustelėkite Išsaugoti ir išbandyti, tai turėtų pasakyti „Duomenų šaltinis veikia“

Gerai, dabar mes turime ryšį su duomenų baze ir galime sukurti grafiką … pagaliau.

1) Kairiajame stulpelyje spustelėkite +, tada prietaisų skydelį ir Pridėti naują skydelį

2) Norėdami pamatyti duomenų bazę, spustelėkite „InfluxDB“

3) Spustelėkite matavimą ir pasirinkite Kogan

4) Lauke pasirinkite Energy_Power.

5) Jei naudojate slapyvardį, nurodykite savo serijos pavadinimą (pvz., Indaplovė)

6) Dešinėje skydelio pavadinimo pusėje nurodykite pavadinimą, pvz., „Power“.

7) Štai viskas, turėtumėte pamatyti duomenis. Spustelėkite rodyklės kairėn mygtuką, kad baigtumėte redaguoti, tada spustelėkite išsaugoti, suteikite informacijos suvestinei pavadinimą.

Jei pasiekėte taip toli, puikus darbas, rimtai.

14 žingsnis: dar keli patarimai

Dar keli patarimai
Dar keli patarimai
Dar keli patarimai
Dar keli patarimai

Numatytoji „Telegraf“konfigūracija, kurią pateikiau, buvo šiek tiek reikalaujanti priežiūros, nes kiekvienam įrenginiui reikia pridėti naują skyrių ir iš naujo paleisti „Telegraf“. Su toliau pateiktais pakeitimais viskas tampa daug dinamiškesnė, nes įrenginius galima pridėti arba pervardyti „Tasmota“konfigūracijoje, nereikia keisti „Telegraf“.

Pirmasis pakeitimas - temos pavadinime įrašyti +, tai iš esmės yra pakaitos simbolis. To pakaktų, išskyrus atvejus, kai kuriate grafikus „Grafana“, prietaisai pavadinami tokiais dalykais kaip „tele/WashMachine/SENSOR“. Antroji „Telegraf“konfigūracijos dalis yra „regex“procesorius. Tai ištraukia tekstą „WashMachine“iš centro ir paverčia jį nauja žyma, kuri perkeliama į „InfluxDB“.

Pastaba: „Tasmota“konfigūracijoje kiekvienam įrenginiui būtinai nustatykite skirtingą temos pavadinimą

[inputs.mqtt_consumer.tags] dest_db = "testas"

Kai tai bus padaryta, labai paprasta sukonfigūruoti „Grafana“, kad viename grafike būtų rodomi keli įrenginiai. Prie šio žingsnio pridėta nuotrauka rodo, ką reikia padaryti. Tiesiog spustelėkite + ženklą grupėje pagal eilutę ir pasirinkite žymą (įrenginį). Apačioje apačioje esantį slapyvardį įveskite $ tag_device. Dabar vienoje diagramoje turėtumėte pamatyti kelias serijas. Galite spustelėti kiekvieno elemento tekstą, kad juos įjungtumėte ir išjungtumėte (paspaudus „Ctrl“galima pasirinkti kelis)

Rekomenduojamas: