Sisukord:
- Tarvikud
- Samm: ostke mõned nutikad pistikud
- Samm: seadme vilkumine
- Samm: esmakordne püsivaraga ühenduse loomine
- 4. samm: pistiku seadistamine
- Samm: kalibreerige pinge
- 6. samm: tarkvara installimine PI -le
- Samm: Grafana installimine
- 8. samm: InfluxDB installimine
- Samm: Telegrafi installimine
- Samm: installige Mosquitto
- 11. samm: andmete saatmine nutipistikust Mosquitto
- 12. samm: kasutage Telegrafi, et edastada andmed Mosquitto'st sissevoolu
- Samm 13: Lõpuks looge Grafanas graafikud
- 14. samm: veel mõned näpunäited
Video: Kodumasina vaarika PI -põhine võimsusmonitor: 14 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
See oli väike projekt, mida tegin, et jälgida maja ümber asuvate üksikute seadmete energiatarbimist ja kuvada graafikuid nende energiatarbimise kohta aja jooksul. See on tegelikult üks lihtsamaid Raspberry PI -põhiseid projekte, mida ma teinud olen, ei vaja jootmist ega avatud toodete häkkimist. See ei pea olema Raspberry PI projekt, seda saab hõlpsasti teha Linuxi kasti või võib -olla Windowsiga.
Toitlusmonitori/nutipistikute komplekti hind on 50 dollarit ja Vaarika PI hind. See võib töötada Pi Zero või originaalse PI -ga, kuigi leidsin, et see oli natuke aeglane. Ainus teine PI, mis mul on, on PI 3 ja mulle tundus see väga nõtke, nii et ma soovitaksin seda. Pange tähele, et kui soovite seda käivitada vanema PI -ga, saate andmete kogumise sagedust vähendada (ma kasutasin 10 sekundit).
Sellel projektil on ka lisakasu või nutipistiku vabastamine tootjate püsivarast, nii et te ei pea kasutama nende konkreetseid rakendusi ja pilveteenuseid. Nii et neid saab kasutada koos koduabiga või lihtsalt oma pythoni skriptidega.
Pange tähele, ma eeldan, et teate, kuidas OS -i PI -le installida, sellega ühenduse luua ja käivitada mõned põhilised Linuxi käsud. Samuti eeldan, et teate, kuidas leida oma nutipistiku IP -aadress, kui see on ühendatud teie WiFi -ga.
Tarvikud
2 pakki või 4 pakki nutikaid pistikuid siit:
www.kogan.com/au/buy/kogan-smarterhome-sma…
1 Vaarika PI
Oskused:
Võimalus seadistada vaarika PI
Põhiline Linuxi käsurida
Tekstiredaktor nagu vi või nano (nano on kasutajasõbralikum, vi on kiirem, kui sellega tuttavaks saate)
Võimalus leida võrgus olevate seadmete IP.
Samm: ostke mõned nutikad pistikud
Nutikas pistik, mida ma kasutasin, oli siit:
www.kogan.com/au/buy/kogan-smarterhome-sma…
Pange tähele, et ühilduvaid nutipistikuid on terve rida, enamik (kõik?) On ESP8266 (WEMOS) -põhised seadmed ja neid on väga lihtne välgutada. Hankige kindlasti midagi, millel on võimsuse jälgimine, nagu paljudel pole. Sellel lehel kuvatakse suur ühilduvate seadmete loend:
templates.blakadder.com/plug.html
Samm: seadme vilkumine
See osa oli üllatavalt lihtne. Põhimõtteliselt laadite tarkvara lihtsalt alla, käivitate selle ja see juhendab teid.
Selleks vajate WiFi -ga Raspberry PI või Linuxi kasti. Peate olema selle seadmega esmane ühendus, EI OLE WiFi. Minu PI3 jaoks oli see lihtne, kuna olin ühendatud Etherneti kaudu. Kui teil on PI Zero, peate ühendama vanamoodsa viisi klaviatuuri ja monitoriga.
Ma eeldan, et teate, kuidas PI seadistada ja sellega SSH või klaviatuuri abil ühenduse luua, nii et ma ei hakka seda läbi tegema. Kui te pole kindel, on veebis palju õpetusi.
Enne alustamist vaid pisut tausta seadmetest. Hiinas on ettevõte Tuya, mis pumpab erinevate klientide jaoks välja nutikad pistikud. Need kohandavad erinevaid kliente ja pakuvad vaikimisi püsivara ning võimaldavad ettevõtetel ise muudatusi teha. Probleem on selles, et kui teil on hunnik tooteid erinevatelt müüjatelt, peate lõpuks käivitama hulga rakendusi, millest mõned töötavad paremini kui teised. Avatud lähtekoodiga püsivara vilkumisega vabastate end sellest kõigest. Nii et see sobib hästi üldiseks koduautomaatikaks.
Niisiis…. ilma pikema jututa siin on juhised:
1) Käivitage need käsud PI -l, see installib vajaliku tarkvara.
# git kloon https://github.com/ct-Open-Source/tuya-convert# cd tuya-convert#./install_prereq.sh
2) Ühendage nutikas pistik vooluvõrku
3) Lülitage see nupuga sisse
4) Hoidke toitenuppu all, kuni sinine tuli hakkab vilkuma
5) Oodake 10 sekundit. See pole hädavajalik, kuid leidsin, et see toimiks paremini, kui te seda teeksite.
6) Käivitage see käsk
./start_flash.sh
Siit järgite lihtsalt juhiseid, välja arvatud lõpus valige "2. Tasmota". Teise püsivara jaoks on võimalus, kuid ma pole seda proovinud, nii et ma pole kindel, milline see on.
Pange tähele, et pidin seda tegema rohkem kui üks kord, algul arvasin, et olen seadme telliskivist kinni pannud, mul ei ole tulesid, relee klõpsu ega elumärke. Aga ma lülitasin selle välja ja käivitasin viimase käsu uuesti ja see töötas. Pidin seda tegema 3 -st neljast välgutatud seadmest, ainult üks läks otse läbi, ma arvan, et 5. sammu tõttu.
Täielikud juhised siin:
github.com/ct-Open-Source/tuya-convert
Samm: esmakordne püsivaraga ühenduse loomine
Kui olete tasmota seadmele vilkunud, ei näita see palju elumärke. Selle põhjuseks on see, et see tuleb konfigureerida. Seda on üsna lihtne teha, leidsin, et kõige parem on seda teha oma telefoniga. Sammud on järgmised:
1) Otsige WiFi pääsupunkte
2) Looge ühendus sildiga tasmota_xxxx (kus x on numbrid)
3) Telefon peaks suunama teid vaikelehele, kui mitte, minge aadressile 192.168.4.1
Pange tähele, et mõnes telefonis võidakse teile saata sõnum „Internetiühendus puudub, kas soovite ühendust hoida”, valige jah.
4) Sisestatud lehel sisestage oma WiFi -võrgu nimi ja parool 2 esimesse kasti. Klõpsake suvandit parooli kuvamiseks ja kolmekordset kontrolli, kas olete sisestanud õige parooli. Kui sisestasite vale parooli, usun, et sellele konfiguratsiooniekraanile naasmine võib olla keeruline. Pange tähele, et saate ka WiFi -võrke otsida, kuigi ilmselgelt peate parooli sisestama.
5) Pistik peaks nüüd olema ühendatud teie WiFi -võrguga. Peate minema ruuteri konfiguratsioonilehele ja leidma oma seadme IP -aadressi.
6) Avage oma arvutis veebibrauser ja minge aadressile https:// [device_ip] Te peaksite nägema Tasmota konfiguratsiooniekraani.
Palju õnne, olete pistiku edukalt välgutanud.
4. samm: pistiku seadistamine
Neid seadmeid valmistav ettevõte teeb ilmselt 10 000 seadet, millel on palju erinevaid konfiguratsioone. Oleme äsja käivitanud uue püsivara ja püsivara ei tea, millistele seadmetele see on välgutatud. Nii et enne kui midagi töötab, peame selle konfigureerima. Selleks peame leidma veebist oma seadme üksikasjad ja laadima selle konkreetse konfiguratsiooni.
Selleks otsige oma seadet sellelt lehelt:
templates.blakadder.com/plug.html
Minu kasutatava seadme konfiguratsioon on siin:
templates.blakadder.com/kogan-KASPEMHUSBA….
Konfiguratsiooni määramiseks kopeerime lihtsalt malli all oleva teksti. Sel juhul on see:
Siis
1) Minge oma seadme konfiguratsioonilehele https:// [nutipistiku IP]
2) Klõpsake nuppu Konfigureeri, seadista muud
3) Kleepige endale malli string
4) Märkige ruut "Luba MQTT"
5) Klõpsake nuppu Aktiveeri ja Salvesta.
Selle toimimise kontrollimiseks klõpsake avalehele naasmiseks nuppu "Peamenüü" ja nüüd peaksite nägema energiatarbimise näitajaid. Nad kõik on null, isegi pinge, kuid see on hea märk. Klõpsake lülitusnuppu ja peaksite kuulma relee klõpsatust ning nägema pinge tõusu.
Samm: kalibreerige pinge
Leidsin, et pinge näit oli üsna kõrge. Kui teil on majas mõni muu pingeallika allikas (nt äkki tark arvesti ??), saate pistikut väga lihtsalt kalibreerida. Selle tegemiseks
1) Hankige õige pinge näit
2) Lülitage relee nutipistikus sisse
3) Klõpsake seadme avalehel nuppu Konsool
4) Sisestage käsk "VoltageSet 228" ja vajutage sisestusklahvi (asendage 228 oma pingega)
Pinge peaks nüüd õigesti näitama.
6. samm: tarkvara installimine PI -le
PI -le tuleb installida mõned paketid. Neid on lihtne paigaldada ja neid saab teha, järgides erinevate pakettide juhiseid. Annan juhised siin, kuid pange tähele, et need võivad aja jooksul muutuda, nii et minu juhised kuupäevaks muutuvad. Paketid on:
Grafana (graafikute kuvamiseks)
Influxdb (aegridade andmebaas, mis salvestab meie andmed)
Telegraf (kasutatakse andmete sisestamiseks Influxdb -sse)
Mosquitto (sõnumibuss, mida kasutatakse andmete edastamiseks, nutikas pistik lükkab andmed siia)
Andmevoo ahel on järgmine:
Nutikas pistik -> Mosquitto -> Telegraf -> InfluxDB -> Grafana
Kui te küsite, miks me ei saa Mosquitto ja Telegrafi vahele jätta, on see hea küsimus. Teoreetiliselt võib nutikas pistik Influxi tekitada. Probleem on selles, et see peaks olema konfigureeritav 100 erineva lõpp -punkti jaoks ja see lukustaks meid mõnest valikust. Enamik koduautomaatika asju kasutab sõnumite edastamiseks Mosquitto. Näitena võime pistiku sisse ja välja lülitada, saates sõnumid Mosquittole ja nutikas pistik võtab need vastu ning vastab.
Samm: Grafana installimine
Saatja:
grafana.com/grafana/download?platform=arm
Või palju muid võimalusi siin:
grafana.com/grafana/download
Pi 1 ja Pi Zero jaoks (ARMv6)
sudo apt-get install -y adduser libfontconfig1#otsige uusimat versiooni lehe ülaosast https://dl.grafana.com/oss/release/grafana-rpi_7….sudo dpkg -i grafana-rpi_7.0.1_armhf. debsudo /bin /systemctl deemon-reloadsudo /bin /systemctl lubage grafana-serveridudo /bin /systemctl käivitage grafana-server
Uuemate PI -de jaoks (ARMv7)
sudo apt -get install -y adduser libfontconfig1#otsige lehe ülaosas uusim versioon https://dl.grafana.com/oss/release/grafana_7.0.1_…sudo dpkg -i grafana_7.0.1_armhf.debsudo/ bin/systemctl deemon-reloadsudo/bin/systemctl lubage grafana-serveridudo/bin/systemctl käivitage grafana-server
Testimiseks:
Minge aadressile https:// [PI IP]: 3000
kasutajanimi/parool on admin/admin, see palub teil seda muuta, saate praegu vahele jätta
Kui saate graafilise kasutajaliidese, on kõik korras, liikuge järgmise sammu juurde
8. samm: InfluxDB installimine
Käivitage need käsud PI -l:
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 tall" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie tall" | 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 tall" | sudo tee /etc/apt/sources.list.d/influxdb.listsudo apt-get updatesudo apt-get install influenxdbsudo systemctl lubab sissevoolu
Testige, sisestades "sissevool". See peaks teid sisestama käsureale influenxdb. Tippige "näita andmebaase", seal pole veel andmebaase, kuid kui saate tühja loendi ilma vigadeta, on kõik korras.
Samm: Telegrafi installimine
See on tõesti lihtne, sest lisasime juurdevoolu, mida saame lihtsalt sisestada:
sudo apt-get install telegrafsudo systemctl lubab telegrafsudo systemctl käivitada telegraf
Siinkohal logib Telegraf juba süsteemimõõdikuid sissevoolu juurde. Neid näete, sisestades need käsud:
sissevoolu näitamise andmebaasid Kasutage telegrafshow seeriat Valitud * FROM cpu LIMIT 10;
Samm: installige Mosquitto
See osa on lihtne, kuna me lihtsalt installime vaikeversiooni, mis on pakitud raspianiga:
sudo apt -get -y install mosquittosudo apt -get -y install mosquitto -customerssudo systemctl lubage mosquittosudo systemctl käivitage mosquitto# looge mosquittosudo jaoks parool mosquitto_passwd -c/etc/mosquitto/tasmota tasmota# sisestage parool. Kirjutage see parool alla, kuna peame selle andma nutikale pistikule
Testimiseks:
käivitage see ühe SSH -seansi jooksul:
mosquitto_sub -testi
Käivitage see teises
mosquitto_pub -testi -m mymessage
Te peaksite oma sõnumit nägema esimesel SSH -seansil
11. samm: andmete saatmine nutipistikust Mosquitto
Nüüd, kui sääsk töötab, peame konfigureerima nutika pistiku, et need sääskudele saata. Seda on üsna lihtne teha. Vajame eelmises etapis sääskede jaoks sisestatud parooli.
1) Logige sisse oma nutipistikute veebisaidile
2) Klõpsake Configuration, seejärel Configure Logging
3) Määrake telemeetria perioodiks 10 ja klõpsake nuppu Salvesta.
4) Klõpsake Configure MQTT
5) Hosti jaoks sisestage oma PI IP -aadress
6) Kasutajanime jaoks sisestage tasmota
7) Parooli sisestamiseks sisestage eelmise sammu parool
8) Teema jaoks sisestage tasmota1
9) Klõpsake nuppu Salvesta
Testimiseks:
Tippige PI -s järgmine käsk. 10 sekundi jooksul peaksite nägema andmeid.
mosquitto_sub -t tele/tasmota1/SENSOR
Andmed peaksid välja nägema sellised:
12. samm: kasutage Telegrafi, et edastada andmed Mosquitto'st sissevoolu
Seadistame nüüd Telegrafi, et see loeks sääskede andmeid ja liiguks sissevoolu juurde. PI kohta:
1) sudo mv /etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf.bak
2) sudo vi /etc/telegraf/telegraf.conf
Märkus vi ei ole uutele kasutajatele eriti sõbralik, kui eelistate menüüpõhist tekstiredaktorit, kasutage selle asemel nano:
sudo nano /etc/telegraf/telegraf.conf
3) Kleebi lisatud failist konfiguratsioon
4) sudo systemctl taaskäivitage telegraf
Selle tüübi testimiseks PI -l tehke järgmist.
sissevool
näita andmebaase
peaksite nägema testide andmebaasi. Kui teile nime test ei meeldi, saate failis telegraf.conf muuta aadressi dest_db.
Samm 13: Lõpuks looge Grafanas graafikud
Lõpuks näeme mõningaid andmeid:-):-)
Esiteks peame looma ühenduse andmebaasiga. Minge grafana veebisaidile http: [ip of PI]: 3000
1) Logige sisse administraatori/administraatoriga
2) Klõpsake vasakpoolses veerus hammasrattaikooni ja andmeallikaid
3) Klõpsake nuppu Lisa andmeallikas
4) Klõpsake sissevoolu
5) URL -i jaoks sisestage https:// localhost: 8086
6) Andmebaasi jaoks sisestage test
7) HTTP jaoks sisestage GET
8) Minimaalse ajavahemiku jaoks sisestage 10 s
9) Klõpsake nuppu Salvesta ja testi, see peaks ütlema "Andmeallikas töötab"
OK, nüüd on meil ühendus andmebaasiga, mille abil saame luua graafiku … lõpuks.
1) Klõpsake vasakpoolses veerus nuppu + ja seejärel Dashboard ja Add New Panel
2) Andmebaasi jaoks klõpsake InfluxDB
3) Klõpsake mõõtmist ja valige Kogan
4) Valige väljale Energy_Power.
5) Varjunime jaoks andke oma seeriale nimi (nt nõudepesumasin)
6) Paneeli pealkirja paremal küljel anna sellele nimi, nt toide.
7) See on kõik, peaksite andmeid nägema. Redigeerimisest väljumiseks klõpsake vasakpoolset noole nuppu ja seejärel nuppu Salvesta, andke armatuurlauale nimi.
Kui olete nii kaugele jõudnud, siis suurepärane töö, tõsiselt.
14. samm: veel mõned näpunäited
Minu esitatud vaikimisi Telegrafi konfiguratsioon oli natuke hooldusmahukas, kuna igale seadmele tuleb lisada uus jaotis ja Telegraf tuleb taaskäivitada. Allpool tehtud muudatustega muudab see asja palju dünaamilisemaks, kuna Tasmota konfiguratsioonis saab seadmeid lisada või ümber nimetada ilma Telegrafi muutmata.
Esimene muudatus on lisada teema nimetusse +, see on põhimõtteliselt metamärk. Sellest iseenesest piisaks, välja arvatud juhul, kui teete Grafanas graafikuid, tulevad seadmed välja selliste asjadega nagu "tele/WashMachine/SENSOR". Telegrafi konfiguratsiooni teine osa on regex -protsessor. See tõmbab teksti "WashMachine" keskelt välja ja muudab selle uueks märgendiks, mis lükatakse InfluxDB -sse.
Märkus: seadistage Tasmota konfiguratsioonis iga seadme jaoks kindlasti erinev teema nimi
[sisendid.mqtt_consumer.tags] dest_db = "test"
Kui see on tehtud, on väga lihtne seadistada Grafana näitama ühel graafikul mitut seadet. Sellele sammule lisatud pilt näitab, mida tuleb teha. Lihtsalt klõpsake rida -rida + -märgil ja valige silt (seade). Sisestage alias all varjunimega Sisestage $ tag_device. Nüüd peaksite ühel graafikul nägema mitut seeriat. Sisse- ja väljalülitamiseks saate klõpsata iga üksuse teksti (ctrl -klahvi abil saab valida mitu)
Soovitan:
Vaarika Pi tulemustabel: 4 sammu
Vaarika Pi tulemustabel: Täna selgitan, kuidas ma tegin selle tulemustabeli, mida juhib vaarika pi ja mida toidab 5 V toiteallikas. See kasutab valgustite kombinatsiooni ws2811 ja ws2812b ning konstruktsioon on valmistatud vineerist ja punasest tammest. Kirjelduse jaoks
Vaarika Pi väljalülitumise indikaator: 6 sammu
Vaarika Pi väljalülitumise indikaator: see on väga lihtne vooluring vaarika pi (edaspidi RPI) oleku näitamiseks. Võib-olla on see kasulik, kui käivitate RPI peata (ilma monitorita). Mõnikord olen mures, millal on õige aeg täielikuks väljalülitamiseks pärast RPI sulgemist
Vaarika Pi trummimasin: 5 sammu
Vaarika Pi trummimasin: Proovijärjestus Raspberry Pi + Pythoni kaudu. Sekvenseerijal on 4 polüfooniat ja see võimaldab kasutajal salvestada ja luua 6 erinevat järjestust, mida nad saavad reaalajas vaheldumisi vahetada, ning toetab võimalust erinevate proovide vahel vahetada . Ma w
Vaarika Pi NOAA ja Meteor-M 2 vastuvõtja: 6 sammu
Raspberry Pi NOAA ja Meteor-M 2 vastuvõtja: see juhend aitab teil luua vastuvõtujaama mitte ainult NOAA-15, 18 ja 19 APT jaoks, vaid ka Meteor-M 2 jaoks. See on tõesti vaid väike jätkuprojekt haslettj suurepärane " Raspberry Pi NOAA ilmastiku satelliidi vastuvõtja " projekti
Mega RasPi - Vaarika Pi Sega Mega Drive'is / Genesis: 13 sammu (piltidega)
Mega RasPi - Raspberry Pi Sega Mega Drive'is / Genesis: see juhend juhendab teid vana Sega Mega Drive'i teisendamisel retro -mängukonsooliks, kasutades selleks Raspberry Pi. Olen veetnud lugematuid tunde oma lapsepõlvest videomänge mängides minu Sega Mega Drive. Enamikul mu sõpradel oli ka üks, nii et me tahaksime