{"id":899,"date":"2016-02-28T14:32:05","date_gmt":"2016-02-28T13:32:05","guid":{"rendered":"http:\/\/www.xpablo.cz\/?p=899"},"modified":"2016-02-28T15:18:27","modified_gmt":"2016-02-28T14:18:27","slug":"mereni-spotreby-energie-s-esp8266-a-pzem-004t","status":"publish","type":"post","link":"http:\/\/www.xpablo.cz\/?p=899","title":{"rendered":"M\u011b\u0159en\u00ed spot\u0159eby energie s ESP8266 a PZEM-004T"},"content":{"rendered":"<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMTitleWeb.jpg\" rel=\"attachment wp-att-901\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-901 alignleft\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMTitleWeb-300x169.jpg\" alt=\"ESPPZEMTitleWeb\" width=\"300\" height=\"169\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMTitleWeb-300x169.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMTitleWeb-768x432.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMTitleWeb-1024x576.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMTitleWeb.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>Jeden ze \u010dten\u00e1\u0159\u016f t\u011bchto str\u00e1nek mi v\u011bnoval m\u011b\u0159i\u010d spot\u0159eby PZEM-004T, koupen\u00fd n\u011bkde z \u010c\u00edny s t\u00edm, \u017ee by cht\u011bl, abych ho p\u0159ipojil k ESP8266 a t\u00edm umo\u017enil na tomto z\u00e1klad\u011b stav\u011bt dal\u0161\u00ed konstrukce. Po pom\u011brn\u011b z\u00e1ke\u0159n\u00fdch peripeti\u00edch s nespolehlivost\u00ed komunikace se mi poda\u0159ilo vytvo\u0159it funk\u010dn\u00ed knihovnu a z\u00e1klad m\u011b\u0159en\u00ed, tak\u017ee p\u0159i\u0161el \u010das na nov\u00fd \u010dl\u00e1nek&#8230;<\/p>\n<p><!--more--><\/p>\n<p>M\u011b\u0159i\u010d p\u0159i\u0161el po\u0161tou s \u010c\u00ednsk\u00fdm a Anglicky psan\u00fdm manu\u00e1lem, bohu\u017eel k verz\u00edm PZEM-021 a PZEM-061, zat\u00edmco na plo\u0161n\u00e9m spoji je ozna\u010den\u00ed PZEM-004T.<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM004_web.jpg\" rel=\"attachment wp-att-904\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-904\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM004_web-300x225.jpg\" alt=\"PZEM004_web\" width=\"300\" height=\"225\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM004_web-300x225.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM004_web-768x576.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM004_web-1024x768.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM004_web.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Na\u0161t\u011bst\u00ed se na internetu dala naj\u00edt spr\u00e1vn\u00e1 dokumentace, tak\u017ee tento nedostatek \u0161el napravit snadno.<\/p>\n<p>Proto\u017ee zde jde o pr\u00e1ci se s\u00ed\u0165ov\u00fdm nap\u011bt\u00edm, tak jsem se rozhodl, \u017ee vyrob\u00edm testovac\u00ed desku, kde se budu sna\u017eit o co nejv\u011bt\u0161\u00ed (moji) bezpe\u010dnost.<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Dily_web.jpg\" rel=\"attachment wp-att-906\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-906 alignleft\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Dily_web-300x225.jpg\" alt=\"Dily_web\" width=\"300\" height=\"225\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Dily_web-300x225.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Dily_web-768x576.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Dily_web-1024x768.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Dily_web.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Sestava_Web.jpg\" rel=\"attachment wp-att-907\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-907\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Sestava_Web-300x225.jpg\" alt=\"Sestava_Web\" width=\"300\" height=\"225\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Sestava_Web-300x225.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Sestava_Web-768x576.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Sestava_Web-1024x768.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Sestava_Web.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Pro jistotu jsem si \u0159\u00e1dn\u011b ozna\u010dil, jak zapojit jednotliv\u00e9 vodi\u010de na m\u011b\u0159i\u010di.<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Vyvody_Web.jpg\" rel=\"attachment wp-att-908\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-908\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Vyvody_Web-300x225.jpg\" alt=\"Vyvody_Web\" width=\"300\" height=\"225\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Vyvody_Web-300x225.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Vyvody_Web-768x576.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Vyvody_Web-1024x768.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/Vyvody_Web.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Jako VDD jsem uva\u017eoval pou\u017e\u00edt 3.3V p\u0159\u00edmo, kter\u00e9 jsou spole\u010dn\u00e9 pro nap\u00e1jen\u00ed modulu ESP8266, ale osciloskop m\u011b vyvedl z omylu &#8211; pou\u017eit\u00e9 optrony vy\u017eaduj\u00ed skute\u010dn\u011b nap\u00e1jen\u00ed 5V. Znamenalo to tedy, \u017ee v\u00fdvody TX a RX nem\u016f\u017eu p\u0159ipojit p\u0159\u00edmo, ale minim\u00e1ln\u011b p\u0159es odporov\u00fd d\u011bli\u010d. No a tady vlastn\u011b za\u010daly ty prav\u00e9 probl\u00e9my &#8211; komunikace sice prob\u00edhala, ale byla velmi nespolehliv\u00e1 &#8211; prakticky neust\u00e1le doch\u00e1zelo k bitov\u00fdm chyb\u00e1m v protokolu a drtiv\u00e1 v\u011bt\u0161ina vy\u010dten\u00fdch hodnot ned\u00e1vala \u017e\u00e1dn\u00fd smysl.<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMVars_web.png\" rel=\"attachment wp-att-910\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-910\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMVars_web-300x112.png\" alt=\"ESPPZEMVars_web\" width=\"300\" height=\"112\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMVars_web-300x112.png 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMVars_web-768x287.png 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMVars_web-1024x382.png 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMVars_web.png 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>M\u011bl jsem podez\u0159en\u00ed na moje odporov\u00e9 p\u0159izp\u016fsoben\u00ed, tak jsem postupn\u011b vyzkou\u0161el zapojen\u00ed s p\u0159evodn\u00edkem \u00farovn\u00ed 3V3&lt;-&gt;5V a i s obvodem 74HC14 se Schmittov\u00fdmi klopn\u00fdmi obvody, ale v\u00fdsledky byly st\u00e1le stejn\u011b mizern\u00e9. A\u017e jsem &#8211; po aktualizaci Arduina na posledn\u00ed stabiln\u00ed verzi (2.1.0 v dob\u011b psan\u00ed \u010dl\u00e1nku) narazil na jednu zaj\u00edmavost. Zmizela toti\u017e komponenta SoftwareSerial, kterou jsem pou\u017e\u00edval pro s\u00e9riov\u00fd p\u0159enos. Proto\u017ee jsem m\u011bl v projektu aktivn\u00ed OTA (kv\u016fli obav\u00e1m z propojen\u00ed USB PC portu s PZEM modulem), tak jsem zkusil pro p\u0159enos pou\u017e\u00edt hardwareov\u00fd s\u00e9riov\u00fd port. V\u0161echny probl\u00e9my zmizely jako m\u00e1vnut\u00edm kouzeln\u00e9ho proutku a poskytovan\u00e9 hodnoty jsou stabiln\u00ed. Zde bych cht\u011bl ud\u011blat jednu odbo\u010dku &#8211; Arduino pro ESP8266 prod\u011bl\u00e1v\u00e1 skute\u010dn\u011b velmi rychl\u00fd v\u00fdvoj &#8211; co p\u0159ed m\u011bs\u00edcem p\u0159elo\u017eit \u0161lo, nyn\u00ed ji\u017e j\u00edt nemus\u00ed, co p\u0159ed m\u011bs\u00edcem nefungovalo, nyn\u00ed ji\u017e funguje. Abych p\u0159ede\u0161el probl\u00e9m\u016fm a nedorozum\u011bn\u00edm, budu se v\u017edy u projekt\u016f sna\u017eit uv\u00e9st pou\u017eitou verzi IDE a j\u00e1dra pro ESP, rovn\u011b\u017e jsem se rozhodl zm\u011bnit strukturu projekt\u016f. V jednom ZIP souboru bude ulo\u017eeno v\u0161e, co je nutn\u00e9 pro p\u0159eklad mimo knihoven, kter\u00e9 nejsou p\u0159\u00edmo z\u00e1visl\u00e9 na pou\u017eit\u00e9 platform\u011b. Zkomplikuji si t\u00edm sice nap\u0159\u00edklad to, \u017ee u ka\u017ed\u00e9ho projektu budu muset m\u00edt uvedenou knihovnu WiFiConfig, kterou pou\u017e\u00edv\u00e1m, ale na druhou stranu by projekt m\u011bl j\u00edt p\u0159elo\u017eit a b\u011b\u017eet spr\u00e1vn\u011b &#8211; jak to p\u0159esn\u011b mysl\u00edm pochop\u00edte, a\u017e si rozbal\u00edte na konci \u010dl\u00e1nku ulo\u017een\u00fd arch\u00edv s projektem.<\/p>\n<p>Pro vizualizaci jsem na\u0161el kr\u00e1sn\u00e9 javascriptov\u00e9 po\u010d\u00edtadlo od <a href=\"http:\/\/www.wilmslowastro.com\/odometer\/odometer.html\" target=\"_blank\">Marka Crossleyho<\/a>, kter\u00e9mu t\u00edmto d\u011bkuji za jeho zve\u0159ejn\u011bn\u00ed. Vizualizace pracuje tak, \u017ee vyu\u017e\u00edv\u00e1 principu, kter\u00fd jsem navrhl pro projekt <a href=\"https:\/\/www.xpablo.cz\/?p=881\" target=\"_blank\">KWS<\/a> &#8211; existuje webov\u00fd server, kter\u00fd dok\u00e1\u017ee generovat dynamick\u00fd obsah ze sady prom\u011bnn\u00fdch, kter\u00e9 jsou pln\u011bny daty, vy\u010dten\u00fdmi z m\u011b\u0159i\u010de spot\u0159eby. Webov\u00e1 str\u00e1nka s m\u011b\u0159idlem vypad\u00e1 takto:<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMMeter.png\" rel=\"attachment wp-att-914\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-914\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMMeter-300x164.png\" alt=\"ESPPZEMMeter\" width=\"300\" height=\"164\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMMeter-300x164.png 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMMeter-768x419.png 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/ESPPZEMMeter.png 991w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>je aktualizovan\u00e1 ka\u017ed\u00e9 dv\u011b sekundy pomoc\u00ed Ajax dotazu na aktu\u00e1ln\u00ed hodnotu spot\u0159eby energie. Pokusn\u011b je v projektu rovn\u011b\u017e aktivov\u00e1n jednoduch\u00fd FTP server, kter\u00fd jsem cht\u011bl pou\u017e\u00edt pro aktualizaci soubor\u016f webov\u00e9ho rozhran\u00ed, ale proto\u017ee OTA aktualizace u\u017e podporuj\u00ed i nahr\u00e1v\u00e1n\u00ed souborov\u00e9ho syst\u00e9mu, tak jsem ho nakonec nikdy nevyu\u017eil.<\/p>\n<p>A na z\u00e1v\u011br je\u0161t\u011b uvedu fotografii propojen\u00ed elektroniky t\u011bsn\u011b p\u0159edt\u00edm, ne\u017e jsem p\u0159esunul TXD a RXD na HW s\u00e9riov\u00fd port (to pro p\u0159\u00edpad toho, \u017ee by n\u011bkdo cht\u011bl p\u0159ij\u00edt na to, pro\u010d nefunguje SoftwareSerial).<\/p>\n<p><a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el_Web.jpg\" rel=\"attachment wp-att-915\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-915 alignleft\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el_Web-300x169.jpg\" alt=\"PZEM_el_Web\" width=\"300\" height=\"169\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el_Web-300x169.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el_Web-768x432.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el_Web-1024x576.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el_Web.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el2_Web.jpg\" rel=\"attachment wp-att-916\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-916\" src=\"https:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el2_Web-300x169.jpg\" alt=\"PZEM_el2_Web\" width=\"300\" height=\"169\" srcset=\"http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el2_Web-300x169.jpg 300w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el2_Web-768x432.jpg 768w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el2_Web-1024x576.jpg 1024w, http:\/\/www.xpablo.cz\/wp-content\/uploads\/2016\/02\/PZEM_el2_Web.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>No a na \u00fapln\u00fd z\u00e1v\u011br ji\u017e zb\u00fdv\u00e1 jen p\u0159ilo\u017eit sl\u00edben\u00fd arch\u00edv s projektem&#8230; (no a taky ty verze)<\/p>\n<p>Arduino IDE 1.6.7, Core 2.1.0 Stable<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jeden ze \u010dten\u00e1\u0159\u016f t\u011bchto str\u00e1nek mi v\u011bnoval m\u011b\u0159i\u010d spot\u0159eby PZEM-004T, koupen\u00fd n\u011bkde z \u010c\u00edny s t\u00edm, \u017ee by cht\u011bl, abych ho p\u0159ipojil k ESP8266 a t\u00edm umo\u017enil na tomto z\u00e1klad\u011b stav\u011bt dal\u0161\u00ed konstrukce. Po pom\u011brn\u011b z\u00e1ke\u0159n\u00fdch peripeti\u00edch s nespolehlivost\u00ed komunikace se mi poda\u0159ilo vytvo\u0159it funk\u010dn\u00ed knihovnu a z\u00e1klad m\u011b\u0159en\u00ed, tak\u017ee p\u0159i\u0161el \u010das na nov\u00fd \u010dl\u00e1nek&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[3,5,25],"tags":[18,50],"class_list":["post-899","post","type-post","status-publish","format-standard","hentry","category-arduino","category-elektronika","category-esp8266","tag-esp8266","tag-pzem-004t"],"_links":{"self":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts\/899","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=899"}],"version-history":[{"count":13,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts\/899\/revisions"}],"predecessor-version":[{"id":1343,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=\/wp\/v2\/posts\/899\/revisions\/1343"}],"wp:attachment":[{"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=899"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=899"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.xpablo.cz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=899"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}