Talaan ng mga Nilalaman:

Home Appliance Raspberry PI Batay sa Power Monitor: 14 Mga Hakbang
Home Appliance Raspberry PI Batay sa Power Monitor: 14 Mga Hakbang

Video: Home Appliance Raspberry PI Batay sa Power Monitor: 14 Mga Hakbang

Video: Home Appliance Raspberry PI Batay sa Power Monitor: 14 Mga Hakbang
Video: Raspberry Pi 400 Unboxing / Review - Ultra Cheap $70 Budget PC for School Students? 2024, Nobyembre
Anonim
Home Appliance Raspberry PI Batay sa Power Monitor
Home Appliance Raspberry PI Batay sa Power Monitor
Home Appliance Raspberry PI Batay sa Power Monitor
Home Appliance Raspberry PI Batay sa Power Monitor

Ito ay isang maliit na proyekto na ginawa ko upang masubaybayan ang paggamit ng kuryente ng mga indibidwal na kagamitan sa paligid ng bahay at ipakita ang mga grapiko ng kanilang paggamit ng kuryente sa paglipas ng panahon. Ito ay talagang isa sa mas madaling mga proyekto na nakabatay sa Raspberry PI na nagawa ko, walang kinakailangang paghihinang o pag-hack ng mga bukas na produkto. Hindi ito kailangang maging isang proyekto ng Raspberry PI, madali itong magagawa sa isang kahon sa Linux o marahil sa Windows.

Ang gastos ay $ 50 AUD para sa isang hanay ng 4 ng power monitor / smart plugs at ang gastos ng isang Raspberry PI. Maaari itong tumakbo sa isang Pi Zero o sa Orihinal na PI bagaman nalaman kong medyo mabagal ito. Ang nag-iisa pang PI na mayroon ako ay isang PI 3 at nakita kong napaka-snappy nito, kaya iyon ang inirerekumenda ko. Tandaan kung nais mong patakbuhin ito sa isang mas matandang PI maaari mong bawasan ang dalas ng koleksyon ng data (gumagamit ako ng 10 segundo).

Ang proyektong ito ay mayroon ding idinagdag na benepisyo o pinapalaya ang smart plug mula sa firmware ng mga tagagawa, kaya hindi mo na kailangang gamitin ang kanilang mga tukoy na app at cloud service. Kaya maaari silang magamit sa Home Tulong o sa iyong sariling mga script ng sawa.

Mangyaring tandaan na ipinapalagay kong alam mo kung paano i-install ang OS sa PI, kumonekta dito at magpatakbo ng ilang pangunahing mga utos ng linux. Ipinapalagay ko rin na alam mo kung paano hanapin ang IP address ng iyong smart plug sa sandaling kumonekta ito sa iyong WiFi.

Mga gamit

2 pack o 4 na pack ng mga smart plug mula dito:

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

1 Raspberry PI

Kasanayan:

Kakayahang mag-setup ng isang raspberry PI

Pangunahing linya ng utos ng linux

Ang editor ng teksto tulad ng vi o nano (ang nano ay mas madaling gamitin, mas mabilis ang vi sa sandaling makilala mo ito)

Kakayahang makahanap ng IP ng mga aparato sa iyong network.

Hakbang 1: Bumili ng Ilang Smart Plugs

Bumili ng Ilang Smart Plugs
Bumili ng Ilang Smart Plugs

Ang smart plug na ginamit ko ay nagmula rito:

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

Tandaan na mayroong isang buong saklaw ng mga smart plug na katugma, karamihan (lahat?) Ay mga aparato na nakabatay sa ESP8266 (WEMOS) at napakadaling mag-flash. Siguraduhing makakuha ng isang bagay na mayroong pagsubaybay sa kuryente na hindi ginagawa ng marami. Ipinapakita ng pahinang ito ang isang malaking listahan ng mga katugmang aparato:

templates.blakadder.com/plug.html

Hakbang 2: Flashing ang Device

Ang bahaging ito ay nakakagulat na madali. Karaniwang nai-download mo lamang ang software, patakbuhin ito at lalakasan ka nito.

Para sa mga ito kakailanganin mo ang isang Raspberry PI o Linux box na may WiFi. Kakailanganin mong magkaroon ng iyong pangunahing koneksyon sa aparatong ito HINDI pagiging WiFi. Para sa aking PI3 madali ito dahil nakakonekta ako sa pamamagitan ng Ethernet. Kung mayroon kang isang PI Zero pagkatapos ay kakailanganin mong ikonekta ang dating istilo, gamit ang isang keyboard at monitor.

Ipinapalagay kong alam mo kung paano mag-set up ng isang PI at kumonekta dito sa SSH o isang keyboard upang hindi ko ito daanan. Kung hindi ka sigurado maraming mga tutorial sa web.

Bago kami magsimula, kaunting background lamang sa mga aparato. Mayroong isang kumpanya sa Tsina na tinatawag na Tuya na nagpapalabas ng mga smart plug para sa iba't ibang mga customer. Ginagawa nila ang pagpapasadya para sa iba't ibang mga customer at nagbibigay ng isang default firmware at pinapayagan ang mga kumpanya na gumawa ng kanilang sariling mga pagbabago. Ang problema sa mga ito ay kung mayroon kang isang bungkos ng mga produkto mula sa iba't ibang mga vendor pagkatapos ay nagtapos ka sa pagkakaroon upang magpatakbo ng isang bungkos ng mga app, ang ilan sa mga ito ay mas mahusay na gumagana kaysa sa iba. Sa pamamagitan ng pag-flash ng isang bukas na firmware ng mapagkukunan ay napapalaya mo ang iyong sarili mula sa lahat ng iyon. Kaya't ito ay mabuti para sa pangkalahatang pag-aautomat sa bahay.

Kaya…. nang walang karagdagang pagtatalo, narito ang mga tagubilin:

1) Patakbuhin ang mga utos na ito sa PI, mai-install nito ang kinakailangang software.

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

2) I-plug ang smart plug sa lakas

3) Patayin ito gamit ang pindutan

4) Hawakan ang power button hanggang magsimulang mag-flash ang asul na ilaw

5) Maghintay ng 10 segundo. Hindi ito mahalaga ngunit nahanap kong gumana ito nang mas mahusay kung ginawa mo ito.

6) Patakbuhin ang utos na ito

./start_flash.sh

Mula dito sundin mo lang ang mga senyas maliban sa dulo piliin ang "2. Tasmota". Mayroong isang pagpipilian para sa isang iba't ibang mga firmware ngunit hindi ko ito nasubukan kaya't hindi ako sigurado kung ano ito.

Tandaan na kailangan kong gawin ito nang higit sa isang beses, sa una ay naisip ko na nilagyan ko ang aparato, wala akong ilaw, walang pag-click sa relay, walang mga palatandaan ng buhay. Ngunit pinatakbo ko ito pababa at muling pinatakbo ang huling utos at gumana ito. Kailangan kong gawin ito sa 3 sa 4 na mga aparato na na-flash ko, isa lamang ang dumaan, sa palagay ko dahil sa hakbang 5.

Buong tagubilin dito:

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

Hakbang 3: Pagkonekta sa Firmware sa Unang Oras

Kumokonekta sa Firmware sa Unang Oras
Kumokonekta sa Firmware sa Unang Oras
Kumokonekta sa Firmware sa Unang Oras
Kumokonekta sa Firmware sa Unang Oras
Kumokonekta sa Firmware sa Unang Oras
Kumokonekta sa Firmware sa Unang Oras

Kapag na-flash mo ang tasmota sa aparato hindi ito magpapakita ng maraming mga palatandaan ng buhay. Ang dahilan para dito ay kailangan itong mai-configure. Ang paggawa nito ay medyo madali, nahanap kong pinakamahusay na gawin ito sa aking telepono. Ang mga hakbang ay:

1) Maghanap para sa mga access point ng WiFi

2) Kumonekta sa isang may label na tasmota_xxxx (kung saan ang x ay mga numero)

3) Dapat idirekta ka ng telepono sa default na pahina, kung hindi pumunta sa 192.168.4.1

Tandaan sa ilang mga telepono maaari kang magbigay sa iyo ng isang mensahe na nagsasabing "walang access sa internet, nais mo bang manatiling konektado", piliin ang oo.

4) Sa pahina na pinagsasama nito ipasok ang pangalan ng iyong WiFi network at ang password sa unang 2 mga kahon. I-click ang pagpipilian upang ipakita ang password at triple check na inilagay mo ang tamang password. Kung naipasok mo ang maling password naniniwala akong mahirap maging bumalik sa config screen na ito. Tandaan na maaari mo ring i-scan para sa mga network ng WiFi, kahit na malinaw na kailangan mo pa ring ipasok ang password.

5) Ang plug ay dapat na konektado sa iyong WiFi network. Kakailanganin mong pumunta sa pahina ng config para sa iyong router at hanapin ang IP ng iyong aparato.

6) Magbukas ng isang web browser sa iyong PC at pumunta sa https:// [device_ip] Dapat mong makita ang config screen mula sa Tasmota.

Binabati kita, matagumpay mong na-flash ang plug.

Hakbang 4: Pag-configure ng Plug

Pag-configure ng Plug
Pag-configure ng Plug

Ang kumpanya na gumagawa ng mga aparatong ito ay tila gumagawa ng 10, 000 mga aparato na may maraming iba't ibang mga config. Ngayon lang kami nag-flash ng isang bagong firmware at hindi alam ng firmware kung anong mga aparato ang na-flash dito. Kaya bago ang anumang gumana kakailanganin naming i-configure ito. Upang magawa ito kailangan naming hanapin ang mga detalye ng aming aparato sa web at i-load ang partikular na config.

Para dito, hanapin ang iyong aparato sa pahinang ito:

templates.blakadder.com/plug.html

Para sa ginamit kong aparato, ang config ay narito:

templates.blakadder.com/kogan-KASPEMHUSBA….

Upang itakda ang config kopyahin lamang namin ang teksto sa ilalim ng Template. Sa kasong ito ito ay:

Tapos

1) Pumunta sa pahina ng config ng iyong aparato https:// [IP ng smart plug]

2) I-click ang i-configure, i-configure ang iba pa

3) I-paste sa iyo ang template string

4) Lagyan ng tsek ang "Paganahin ang MQTT"

5) I-click ang buhayin at I-save.

Upang masubukan itong gumana, i-click ang "Pangunahing menu" upang bumalik sa home page at dapat mo na ngayong makita ang mga numero ng paggamit ng kuryente. Lahat sila ay magiging zero, kahit na ang boltahe ngunit ito ay isang magandang tanda. I-click ang toggle button at dapat mong marinig ang relay click at makita ang boltahe na umakyat.

Hakbang 5: I-calibrate ang Boltahe

Calibrate Boltahe
Calibrate Boltahe

Natagpuan ko na ang pagbasa ng boltahe ay nagpapakita ng mataas. Kung mayroon kang ibang mapagkukunan ng pagbabasa ng boltahe sa bahay (hal. Matalinong metro siguro ??) Kung gayon madali mong mai-calibrate ang plug. Na gawin ito

1) Kunin ang wastong pagbabasa ng boltahe

2) I-on ang relay sa smart plug

3) I-click ang Console sa home page para sa aparato

4) Ipasok ang utos na "VoltageSet 228" at itulak ipasok (palitan ang 228 ng iyong boltahe)

Dapat na ipakita nang tama ang boltahe.

Hakbang 6: Pag-install ng Software sa PI

Mayroong ilang mga pakete na kailangang i-install sa PI. Madali itong mai-install at maaaring gawin kasunod sa mga tagubilin mula sa iba't ibang mga package. Ibibigay ko ang mga tagubilin dito ngunit tandaan na maaari silang magbago sa paglipas ng panahon upang mag-date ang aking mga tagubilin. Ang mga pakete ay:

Grafana (para sa pagpapakita ng mga grap)

Influxdb (time series database na mag-iimbak ng aming data)

Telegraf (ginamit upang itulak ang data sa Influxdb)

Mosquitto (message bus na ginamit upang pumasa sa data sa paligid, itinutulak ng smart plug ang data dito)

Ang kadena ng daloy ng data ay ganito:

Smart Plug -> Mosquitto -> Telegraf -> InfluxDB -> Grafana

Kung tinatanong mo kung bakit hindi namin laktawan ang Mosquitto at Telegraf, magandang tanong iyon. Sa teorya ang Smart Plug ay maaaring itulak sa Influx. Ang problema sa na ay na pagkatapos ay kailangang maging configigurable para sa 100s ng iba't ibang mga endpoint at ito ay i-lock sa amin ng ilang mga pagpipilian. Karamihan sa mga bagay sa awtomatiko sa bahay ay gumagamit ng Mosquitto upang ipasa ang mga mensahe sa paligid. Bilang isang halimbawa, maaari naming i-on at i-off ang plug sa pamamagitan ng pagpapadala ng mga mensahe sa Mosquitto at tatanggapin sila ng smart plug at tutugon.

Hakbang 7: Pag-install ng Grafana

Pag-install ng Grafana
Pag-install ng Grafana

Mula sa:

grafana.com/grafana/download?platform=arm

O maraming iba pang mga pagpipilian dito:

grafana.com/grafana/download

Para sa Pi 1 at Pi Zero (ARMv6)

sudo apt-get install -y adduser libfontconfig1 # hanapin ang pinakabagong bersyon mula sa pahina sa tuktok 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 paganahin ang grafana-serverudo / bin / systemctl simulan ang grafana-server

Para sa mas bagong PI (ARMv7)

sudo apt-get install -y adduser libfontconfig1 # hanapin ang pinakabagong bersyon mula sa pahina sa tuktok 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 paganahin ang grafana-serverudo / bin / systemctl simulan ang grafana-server

Upang Subukan:

Pumunta sa https:// [IP ng PI]: 3000

username / password ay admin / admin, hihilingin sa iyo na baguhin ito, maaari kang lumaktaw sa ngayon

Kung nakakuha ka ng isang GUI pagkatapos lahat ng mabuti, lumipat sa susunod na hakbang

Hakbang 8: Pag-install ng InfluxDB

Patakbuhin ang mga utos na ito sa 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 wheezy stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "10" && echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.listsudo apt-get updatesudo apt-get install influxdbsudo systemctl paganahin ang influxdbsudo systemctl start influxdb

Subukan sa pamamagitan ng pag-type ng "pagdagsa". Dapat ka nitong ilagay sa linya ng utos ng influxdb. I-type ang "ipakita ang mga database", wala pang mga database ngunit kung makakakuha ka ng isang walang laman na listahan na walang mga error kung gayon lahat ng mabuti.

Hakbang 9: Pag-install ng Telegraf

Ang isang ito ay talagang madali, dahil idinagdag namin ang mga influxdb repos na maaari lamang naming i-type:

sudo apt-get install telegrafsudo systemctl paganahin ang telegrafsudo systemctl simulan ang telegraf

Sa puntong ito ang Telegraf ay magiging mga sukatan ng system ng pag-log sa influxdb. Maaari mong makita ang mga ito sa pamamagitan ng pag-type ng mga utos na ito:

influxshow databasesuse telegrafshow seriesSELECT * MULA sa cpu LIMIT 10;

Hakbang 10: I-install ang Mosquitto

Madali ang bahaging ito habang nai-install lamang namin ang default na bersyon na nakabalot sa raspian:

sudo apt-get -y pag-install ng mosquittosudo apt-get -y pag-install ng mosquitto-clientsudo systemctl paganahin ang mosquittosudo systemctl simulan ang mosquitto # lumikha ng isang password para sa mosquittosudo mosquitto_passwd -c / etc / mosquitto / tasmota tasmota # maglagay ng isang password. Isulat ang password na ito dahil kakailanganin naming ibigay ito sa smart plug

Upang Subukan:

patakbuhin ito sa isang sesyon ng SSH:

mosquitto_sub -t test

Patakbuhin ito sa isa pa

mosquitto_pub -t test -m mymessage

Dapat mong makita ang mensahe mo sa unang sesyon ng SSH

Hakbang 11: Pagpapadala ng Data Mula sa Smart Plug sa Mosquitto

Pagpapadala ng Data Mula sa Smart Plug sa Mosquitto
Pagpapadala ng Data Mula sa Smart Plug sa Mosquitto

Ngayon mayroon kaming pagpapatakbo ng mosquitto kailangan namin upang i-configure ang smart plug upang magpadala ng data sa mosquitto. Ito ay medyo madaling gawin. Kakailanganin namin ang password na ipinasok para sa mosquitto mula sa nakaraang hakbang.

1) Mag-log in sa iyong smart plugs web page

2) I-click ang Configuration, pagkatapos ay I-configure ang Pag-log

3) Itakda ang panahon ng telemetry sa 10 at i-click ang i-save.

4) I-click ang I-configure ang MQTT

5) Para sa host ipasok ang IP address ng iyong PI

6) Para sa username ipasok ang tasmota

7) Para sa password ipasok ang password mula sa nakaraang hakbang

8) Para sa paksa ipasok ang tasmota1

9) I-click ang i-save

Upang subukan:

Sa PI, i-type ang utos sa ibaba. Sa loob ng 10 segundo dapat mong makita ang data na dumaan.

mosquitto_sub -t tele / tasmota1 / SENSOR

Dapat ganito ang hitsura ng data:

Hakbang 12: Gumamit ng Telegraf upang Itulak ang Data Mula sa Mosquitto hanggang sa Mag-implox

Ise-configure namin ngayon ang Telegraf upang mabasa ang data mula sa mosquitto at itulak sa influxdb. Sa PI:

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

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

Tandaan ang vi ay hindi masyadong magiliw para sa mga bagong gumagamit, kung gusto mo ng isang batay sa menu na editor ng teksto ay gumamit ng nano:

sudo nano /etc/telegraf/telegraf.conf

3) I-paste sa config mula sa nakalakip na file

4) sudo systemctl restart telegraf

Upang subukan itong i-type sa PI:

pagdagsa

ipakita ang mga database

dapat mong makita ang database ng pagsubok. Kung hindi mo gusto ang pagsubok ng pangalan maaari mong baguhin ang dest_db sa telegraf.conf file.

Hakbang 13: Panghuli, Lumikha ng Mga Grupo sa Grafana

Panghuli, Lumikha ng Mga Grupo sa Grafana
Panghuli, Lumikha ng Mga Grupo sa Grafana

Sa wakas nakakakita kami ng ilang data:-):-)

Una kailangan naming lumikha ng isang koneksyon sa database. Pumunta sa grafana web page http: [ip ng PI]: 3000

1) Mag-login kasama ang admin / admin

2) Sa kaliwang haligi i-click ang icon na gear at mga mapagkukunan ng data

3) I-click ang magdagdag ng mapagkukunan ng data

4) Mag-click sa influxdb

5) Para sa URL ipasok ang https:// localhost: 8086

6) Para sa database ipasok ang pagsubok

7) Para sa HTTP ipasok ang GET

8) Para sa min time interval ipasok ang 10s

9) I-click ang I-save at Subukan, dapat sabihin na "Gumagana ang Datasource"

OK, ngayon mayroon kaming isang koneksyon sa database maaari kaming lumikha ng isang graph … sa wakas.

1) Sa kaliwang haligi i-click ang + at pagkatapos Dashboard at Magdagdag ng Bagong Panel

2) Para sa database i-click ang InfluxDB

3) I-click ang pagsukat at piliin ang Kogan

4) Para sa patlang piliin ang Energy_Power.

5) Para sa alyas, bigyan ang iyong serye ng isang pangalan (hal. Makinang panghugas)

6) Sa kanang bahagi para sa Pamagat ng Panel bigyan ito ng isang pangalan, hal. Power.

7) Iyon lang, dapat mong makita ang data. I-click ang kaliwang arrow button upang mag-edit at pagkatapos ay i-click ang save, bigyan ang iyong dashboard ng isang pangalan.

Kung nakarating ka dito, mahusay na trabaho, sineseryoso.

Hakbang 14: Ilang Ilang Tip

Ilang Mga Tip pa
Ilang Mga Tip pa
Ilang Mga Tip pa
Ilang Mga Tip pa

Ang default na Telegraf config na ibinigay ko ay medyo masidhi sa pagpapanatili na ang isang bagong seksyon ay kailangang idagdag para sa bawat aparato at isang pag-restart ng Telegraf ay kailangang gawin. Gamit ang mga pagbabago sa ibaba Ginagawa nitong mas malakas ang mga bagay sa mga aparato na maaaring idagdag o mapangalanan muli sa Tasmota config nang hindi na kailangang baguhin ang Telegraf.

Ang unang pagbabago ay ilagay ang + sa pangalan ng paksa, ito ay karaniwang isang wildcard. Sa sarili nitong magiging sapat maliban kung gumagawa ka ng mga grap sa Grafana ang mga aparato ay nagmula na pinangalanan bilang mga bagay tulad ng "tele / washingMachine / SENSOR". Ang pangalawang bahagi ng config ng Telegraf sa ibaba ay ang regex processor. Hinihila nito ang teksto na "washingMachine" mula sa gitna at ginawang isang bagong tag na maitulak sa InfluxDB.

Tandaan: tiyaking mag-set up ng ibang pangalan ng paksa sa config ng Tasmota para sa bawat aparato

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

Kapag tapos na ito napakadaling i-configure ang Grafana upang maipakita ang maraming mga aparato sa isang grap. Ipinapakita ng pic na nakakabit sa hakbang na ito kung ano ang kailangang gawin. I-click lamang ang sign + sa pangkat ayon sa linya at piliin ang tag (aparato). Ang pababa sa ibaba sa Alias Sa pamamagitan ng ipasok ang $ tag_device. Dapat mo na ngayong makita ang maraming mga serye sa isang graph. Maaari mong i-click ang teksto ng bawat item upang i-on at i-off ang mga ito (gumagana ang pag-click sa ctrl upang pumili ng maraming)

Inirerekumendang: