Kazalo:

Pretvornik Omnik Off Cloudy and on My MQTT: 3 koraki (s slikami)
Pretvornik Omnik Off Cloudy and on My MQTT: 3 koraki (s slikami)

Video: Pretvornik Omnik Off Cloudy and on My MQTT: 3 koraki (s slikami)

Video: Pretvornik Omnik Off Cloudy and on My MQTT: 3 koraki (s slikami)
Video: Современное оборудование и электроника катера. Новинки 2019 2024, November
Anonim
Pretvornik Omnik Off It Cloud in na mojem MQTT
Pretvornik Omnik Off It Cloud in na mojem MQTT
Pretvornik Omnik Off It Cloud in na mojem MQTT
Pretvornik Omnik Off It Cloud in na mojem MQTT

Imam solarno energijo z uporabo Omnikovega pretvornika. Omnik je kitajski proizvajalec PV pretvornikov in izdeluje izjemno učinkovite naprave. Po želji lahko namestite modul WiFi, da bo "povezan". Z napravo sem zelo zadovoljen, z dvema pomembnima izjemama.

  1. "Telefonira domov" kitajski storitvi v oblaku in dokler je naprava povezana z internetom, tega ni mogoče izklopiti. To mi ni všeč.
  2. Pretvornik nima dostojnega dokumentiranega API -ja (niti storitev v oblaku). Ker avtomatizacija doma in naprave IoT težijo k sporočilom MQTT, sem želel, da pošilja sporočila MQTT.

Za ta projekt, ki rešuje obe vprašanji, se obrnemo na našega izbirčnega, a zanesljivega prijatelja ESP8266. Uporabil sem Wemos D1, vendar lahko uporabite katero koli inkarnacijo, ki vam je všeč. Načrt je:

  1. Modulu WiFi pretvornika ne dajte poverilnic za domače omrežje WiFi. To rešuje problem 1.
  2. Naj se Wemos občasno poveže z dostopno točko pretvornika, da pridobi želene podatke. Za to lahko uporabimo obratni inženiring, ki ni spletni protokol. To kodo sem uporabil kot izhodišče.
  3. Nato prekinite povezavo, se povežite z domačim omrežjem in objavite omenjene podatke kot sporočilo MQTT.

Naš material je zelo preprost:

  • En Wemos D1, ki ga lahko kupite na spletnem mestu Wemos ali na vaši najljubši dražbeni strani;
  • En napajalnik USB s kablom USB-mini.

Ožičenje sploh ni potrebno. Cena je pod 10 EUR.

Predvidevam, da že imate

  • pretvornik Omnik z nameščenim modulom WiFi;
  • infrastrukturo MQTT (posrednik, nadzorna plošča);
  • zadnja različica Arduino IDE s podporo za nameščen procesor ESP8266.
  • nekaj seznanjenosti z zgoraj navedenim.

O MQTT in uporabi Arduino IDE za procesor ESP8266 obstaja kar nekaj navodil, vendar vas prosimo, da vprašate v razdelku za komentarje.

1. korak: Omnik trajno odklopite iz interneta

Omnik trajno odklopite od interneta
Omnik trajno odklopite od interneta

Če ste tako kot jaz imeli pretvornik povezan z omrežjem WiFi, ga je presenetljivo težko odklopiti. Vse spremembe nastavitev WiFi se preverijo, preden se uporabijo. Namesto, da bi skočil skozi obroče, kot je sprememba gesla za šifriranje usmerjevalnika in pretvornika, nato pa zamenjal usmerjevalnik, sem se odločil za čistejši pristop in začeti od začetka.

Pojdite do pretvornika in izvedite naslednja dejanja:

  • pritiskajte gumb navzdol, dokler Set ne utripa, nato pritisnite Enter
  • Pritiskajte gumb navzdol, dokler ne začne utripati WiFi, nato pritisnite Enter
  • Pritisnite gumb gor, da utripa Da, nato pritisnite Enter

Priključite na pretvornik

Odprite računalnik in poiščite omrežje WiFi, imenovano AP_xxxxxxxx, x predstavljajo številke. Povežite se z njim. Odvisno od operacijskega sistema boste morda morali najprej pozabiti, da to omrežje "pozabi", če ste se nanj že povezovali, saj zdaj morda shranjenega gesla za WiFi ni več.

Zavarujte dostopno točko pretvornika

Ko ste povezani, odprite brskalnik, vnesite 10.10.100.254 in pritisnite Enter. Prikaže se pojavno okno za prijavo. Za prijavo vnesite admin v obe polji. NE sledite čarovniku in konfigurirajte dostopno točko. V levem meniju kliknite Napredno, nato podmeni Brezžična točka.

Naredite naslednje spremembe:

  • Način šifriranja v WPA2PSK
  • Vrsta šifriranja v TKIP
  • Vnesite geslo za WiFi. Zapišite geslo, ki ga boste morali kmalu povezati s pretvornikom.

Kliknite Shrani in modul WiFi se bo znova zagnal. Povezavo boste izgubili, saj zdaj zahteva geslo. Znova se povežite in vnesite geslo za WiFi. Ponovno boste morali računalnik najprej pozabiti na omrežje AP_xxxxxxxx. Zdaj bi morali biti znova povezani s pretvornikom prek varne povezave WiFi.

Zavarujte konfiguracijske strani pretvornika

Odprite brskalnik, vnesite 10.10.100.254 in znova pritisnite Enter. Prikaže se pojavno okno za prijavo. Za prijavo znova vnesite skrbnika. V levem meniju kliknite Račun. Spremenite uporabniško ime in geslo v dva edinstvena, nepomembna niza. Oba morate vnesti dvakrat. Zapišite jih. Kliknite Shrani in modul WiFi se bo znova zagnal. Počakajte nekaj sekund in znova naložite stran. Preverite, ali za odpiranje konfiguracijskih strani potrebujete novo uporabniško ime in geslo. Vaš pretvornik ima zdaj dodatno raven zaščite pred spremembami tujcev.

S tem se zaključijo vsa dela, ki jih je treba opraviti na pretvorniku. Zdaj je odklopljen od interneta, razumno zavarovan, vendar še vedno deluje kot dostopna točka WiFi, po kateri lahko poizvedujemo.

2. korak: Prenesite in konfigurirajte programsko opremo za Wemos D1

Prenesite in konfigurirajte programsko opremo za Wemos D1
Prenesite in konfigurirajte programsko opremo za Wemos D1

Prenesite programsko opremo za Wemos. Kodo najdete tukaj. Če ga želite konfigurirati za domače omrežje in pretvornik, morate narediti nekaj sprememb

  • homeSsid: ime vašega domačega omrežja WiFi
  • homePassword: geslo vašega domačega omrežja WiFi
  • omnikSsid: ime vašega Omnik WiFi omrežja. Izgledati mora kot AP_xxxxxxxxx
  • omnikPassword: geslo vašega Omnik WiFi omrežja, ki ste ga dodelili v prejšnjem koraku
  • omnikIP: naslov IP pretvornika. To je vedno {10, 10, 100, 254}
  • omnikCommand: niz bajtov, potreben za poizvedbo vašega pretvornika, glejte spodaj.
  • mqtt_server: ime gostitelja vašega posrednika MQTT
  • mqtt_port: številka vrat TCP, običajno 1883 za nezaščitene ali 8883 za varne (SSL) povezave
  • mqtt_username in mqtt_password: poverilnice za vašega posrednika MQTT
  • mqtt_clientID: tukaj vnesite nekaj naključnih številk
  • mqtt_outTopic: tema sporočil MQTT.

Niz bajtov omnikCommand je poseben za vaš individualni pretvornik. Objavil sem majhno orodje kot Googlovo preglednico za izračun niza. V celico B1 morate vnesti serijsko številko (okoli 10 decimalk) in v skici uporabiti niz, izračunan v celici B4.

Za uspešno sestavljanje kode potrebujete tudi knjižnico PubSubClient.h. Prepričajte se, da sta izbrana ustrezna plošča (Wemos D1) in vrata, nato pa skico naložite na ploščo. Majhno ploščo Wemos lahko za zaščito položite v majhno plastično posodo in jo priključite na napajalnik USB. Postavite ga nekam nedaleč od pretvornika in usmerjevalnika WiFi in pripravljeni ste!

Glavna zanka v programski opremi se poveže z razsmernikom WiFi, nato z njim vzpostavi povezavo TCP, prebere podatke, prekine povezavo, se poveže z domačim omrežjem WiFi, nato z posrednikom MQTT in tam objavi preoblikovane podatke. Za vse to povezovanje in odklapljanje traja nekaj manj kot 15 sekund. Po tem sledi zamuda 20 sekund, zato je treba podatke objaviti približno vsakih 35 sekund.

3. korak: Nekaj besed o sporočilih, posredniku in testiranju

Nekaj besed o sporočilih, posredniku in testiranju
Nekaj besed o sporočilih, posredniku in testiranju
Nekaj besed o sporočilih, posredniku in testiranju
Nekaj besed o sporočilih, posredniku in testiranju
Nekaj besed o sporočilih, posredniku in testiranju
Nekaj besed o sporočilih, posredniku in testiranju

Koda odda nekaj podatkov za odpravljanje napak, zato, če nekaj ne deluje, preprosto znova povežite WeMos z računalnikom, zaženite Arduino IDE in pritisnite CTRL+SHFT+M, da zaženete serijsko konzolo. Prepričajte se, da je hitrost nastavljena na 115200.

Uporabite lahko svojega posrednika ali storitev v oblaku. Vodim svoj, Mosquitto, nameščen na mojem Synology NAS. Če ste v redu s storitvijo v oblaku, lahko uporabite Adafruit ali Amazon AWS ali katero koli drugo.

Sporočila so nizi JSON, oblikovani tako:

Ob zagonu je objavljeno naslednje sporočilo:

To lahko uporabite za odkrivanje nepričakovanih ponovnih zagonov.

Običajna sporočila izgledajo tako:

Moč v vatih, napetosti v voltih, tokovi v amperih, frekvenca v hercih, energija v kilo vatih in temperatura v stopinjah Celzija.

Za preverjanje sporočil uporabljam mosquitto_sub.

mosquitto_sub -h ime gostitelja -t "Solar/Omnik" -u uporabnik -P geslo -p 1883 -v

Za rezultate si oglejte sliko zaslona. Vsa sporočila so objavljena z zastavico za shranjevanje nastavljeno na true.

V telefonu uporabljam aplikacijo z imenom MQTT Dash in vključil sem sitotisk in kaj vnesti, da se prikaže ta zeleni gumb za vklop.

Priporočena: