{"id":559,"date":"2020-12-31T17:41:36","date_gmt":"2020-12-31T15:41:36","guid":{"rendered":"https:\/\/www.maxx.net.ua\/?p=559"},"modified":"2021-01-01T14:55:26","modified_gmt":"2021-01-01T12:55:26","slug":"%d1%81%d0%b2%d1%96%d1%82%d0%bb%d0%be-%d0%b4%d0%bb%d1%8f-%d0%bb%d1%96%d0%b6%d0%ba%d0%b0","status":"publish","type":"post","link":"https:\/\/www.maxx.net.ua\/?p=559","title":{"rendered":"\u0421\u0432\u0456\u0442\u043b\u043e \u0434\u043b\u044f \u043b\u0456\u0436\u043a\u0430"},"content":{"rendered":"<p>\u0412\u0436\u0435 \u0434\u0430\u0432\u043d\u043e \u043c\u0435\u043d\u0456 \u043d\u0435 \u043f\u043e\u0434\u043e\u0431\u0430\u043b\u0430\u0441\u044c \u043d\u0430\u044f\u0432\u043d\u0456\u0441\u0442\u044c \u0442\u0456\u043b\u044c\u043a\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0434\u0436\u0435\u0440\u0435\u043b\u0430 \u0441\u0432\u0456\u0442\u043b\u0430 \u0443 \u043a\u0456\u043c\u043d\u0430\u0442\u0456. \u0427\u0435\u0440\u0435\u0437 \u0446\u0435 \u0442\u0440\u0435\u0431\u0430 \u0431\u0443\u043b\u043e \u043f\u043e\u0441\u0442\u0456\u0439\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u0430\u0442\u0438 \u0437 \u043b\u0456\u0436\u043a\u0430 \u0449\u043e\u0431 \u0439\u043e\u0433\u043e \u0432\u0438\u043c\u043a\u043d\u0443\u0442\u0438 \u0447\u0438 \u0443\u0432\u0456\u043c\u043a\u043d\u0443\u0442\u0438, \u0442\u0430 \u0439 \u0443 \u0431\u0456\u043b\u044c\u0448\u043e\u0441\u0442\u0456 \u0432\u0438\u043f\u0430\u0434\u043a\u0456\u0432 \u0442\u0440\u0435\u0431\u0430 \u0431\u0443\u043b\u043e \u0441\u0432\u0456\u0442\u043b\u043e \u043d\u0435 \u0443 \u043a\u0456\u043c\u043d\u0430\u0442\u0456, \u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0435 \u0441\u0432\u0456\u0442\u043b\u043e \u0431\u0456\u043b\u044f \u043b\u0456\u0436\u043a\u0430. \u041f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u0438\u0434\u0431\u0430\u0442\u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u0441\u0432\u0456\u0442\u0438\u043b\u044c\u043d\u0438\u043a \u0446\u0435 \u0434\u0443\u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0442\u0430 \u0439 \u0437\u0430\u0439\u043c\u0430\u0454 \u0432\u0456\u043d \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u0435 \u043c\u0456\u0441\u0446\u0435. \u041e\u043a\u0440\u0456\u043c \u0446\u044c\u043e\u0433\u043e \u0432\u0436\u0435 \u0431\u0430\u0433\u0430\u0442\u043e \u0440\u043e\u043a\u0456\u0432 \u043f\u0456\u0441\u043b\u044f \u0440\u0435\u043c\u043e\u043d\u0442\u0443 \u043b\u0456\u0436\u043a\u043e \u0447\u0435\u043a\u0430\u043b\u043e \u0432\u0438\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0443\u0437\u0433\u043e\u043b\u0456\u0432&#8217;\u044f. \u0427\u0430\u0441 \u043f\u0440\u0438\u0439\u0448\u043e\u0432, \u0431\u0443\u043b\u043e \u0432\u0438\u0440\u0456\u0448\u0435\u043d\u043e \u0437\u0440\u043e\u0431\u0438\u0442\u0438 \u0443\u0437\u0433\u043e\u043b\u0456\u0432&#8217;\u044f \u0442\u0430 \u0432\u043c\u043e\u043d\u0442\u0443\u0432\u0430\u0442\u0438 \u0441\u0432\u0456\u0442\u043b\u043e \u0443 \u043d\u044c\u043e\u0433\u043e. \u041e\u0441\u043d\u043e\u0432\u043d\u0456 \u0432\u0438\u043c\u043e\u0433\u0438 \u0434\u043e \u0441\u0432\u0456\u0442\u043b\u0430:<\/p>\n<ul>\n<li>\u043f\u043b\u0430\u0432\u043d\u0435 \u0432\u043c\u0438\u043a\u0430\u043d\u043d\u044f\/\u0432\u0438\u043c\u0438\u043a\u0430\u043d\u043d\u044f<\/li>\n<li>\u043d\u0430\u044f\u0432\u043d\u0456\u0441\u0442\u044c \u043d\u0456\u0447\u043d\u0438\u043a\u0430<\/li>\n<li>\u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438 \u0437 \u0431\u0443\u0434\u044c-\u044f\u043a\u043e\u0457 \u0441\u0442\u043e\u0440\u043e\u043d\u0438 \u043b\u0456\u0436\u043a\u0430<\/li>\n<\/ul>\n<p>\u0421\u0445\u0435\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0446\u0435 \u043f\u043e\u0432\u0438\u043d\u043d\u043e \u0432\u0438\u0433\u043b\u044f\u0434\u0430\u0442\u0438 \u0442\u0430\u043a<\/p>\n<p><img loading=\"lazy\" class=\"size-medium wp-image-560 aligncenter\" src=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/block-diagram-300x111.png\" alt=\"\" width=\"300\" height=\"111\" srcset=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/block-diagram-300x111.png 300w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/block-diagram-1024x377.png 1024w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/block-diagram-768x283.png 768w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/block-diagram.png 1140w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u043a\u0440\u0435\u0441\u043b\u0435\u043d\u043d\u044f \u0443\u0437\u0433\u043e\u043b\u0456\u0432&#8217;\u044f, \u0442\u0430 \u0432\u0456\u0434\u0434\u0430\u0454\u043c\u043e \u0443 \u043c\u0435\u0431\u043b\u0435\u0432\u0443 \u043c\u0430\u0439\u0441\u0442\u0435\u0440\u043d\u044e \u043d\u0430 \u0432\u0438\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044f, \u0430 \u0442\u0438\u043c \u0447\u0430\u0441\u043e\u043c \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043e \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0456\u043a\u0438 \u0442\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f.<\/p>\n<h2>\u0410\u043f\u0430\u0440\u0430\u0442\u043d\u0430 \u0447\u0430\u0441\u0442\u0438\u043d\u0430<\/h2>\n<p>\u0423 \u044f\u043a\u043e\u0441\u0442\u0456 \u043f\u043b\u0430\u0442\u0438 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u0431\u0435\u0440\u0435\u043c\u043e <a href=\"https:\/\/www.maxx.net.ua\/?p=484\">\u0441\u0430\u043c\u043e\u0440\u043e\u0431\u043d\u0443 \u043f\u043b\u0430\u0442\u0443 \u043d\u0430 ESP32<\/a> \u043a\u043e\u0442\u0440\u0430 \u043c\u0430\u0454 \u0436\u0438\u0432\u043b\u0435\u043d\u043d\u044f \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u0440\u0435\u0436\u0443 Ethernet \u0442\u0430 \u043f\u0435\u0440\u0435\u0442\u0432\u043e\u0440\u044e\u0432\u0430\u0447 \u043d\u0430 12\u0412 \u043f\u043e\u0442\u0443\u0436\u043d\u0456\u0441\u0442\u044e 13 \u0412\u0442.<br \/>\n<!--more--><br \/>\n\u0421\u0445\u043e\u0436\u0443 \u043f\u043b\u0430\u0442\u0443 \u0437\u0430 $20 \u043c\u043e\u0436\u043d\u0430 \u0437\u043d\u0430\u0439\u0442\u0438 \u0443 \u043a\u0438\u0442\u0430\u0439\u0446\u0456\u0432 &#8211;\u00a0<a href=\"https:\/\/www.aliexpress.com\/item\/4001122992446.html\">LILYGO\u00ae TTGO T Internet POE ESP32 WROOM LAN8720A Chip Ethernet Adapter And Downloader Expansion Board Programmable Hardware|Circuits| &#8211; AliExpress<\/a>\u00a0 \u0420\u0456\u0437\u043d\u0438\u0446\u044f \u043c\u0456\u0436 \u043a\u0438\u0442\u0430\u0439\u0441\u044c\u043a\u043e\u044e \u0442\u0430 \u043c\u043e\u0454\u044e \u043f\u043b\u0430\u0442\u043e\u044e \u043f\u043e\u043b\u044f\u0433\u0430\u0454 \u0443 \u0442\u043e\u043c\u0443, \u0449\u043e \u043c\u043e\u044f \u043f\u043b\u0430\u0442\u0430 \u043c\u0430\u0454 2 \u043d\u0430\u043f\u0440\u0443\u0433\u0438 &#8211; 3.3\u0412 \u0434\u043b\u044f \u0436\u0438\u0432\u043b\u0435\u043d\u043d\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440\u0430 \u043f\u043b\u0430\u0442\u0438 \u0442\u0430 12\u0412 \u0434\u043b\u044f \u0436\u0438\u0432\u043b\u0435\u043d\u043d\u044f \u0443 \u0434\u0430\u043d\u043e\u043c\u0443 \u0432\u0438\u043f\u0430\u0434\u043a\u0443 \u0434\u0436\u0435\u0440\u0435\u043b\u0430 \u0441\u0432\u0456\u0442\u043b\u0430.<\/p>\n<p>\u041f\u043b\u0430\u0442\u0430 \u0440\u043e\u0437\u0440\u0430\u0445\u043e\u0432\u0430\u043d\u0430 \u0434\u043b\u044f \u0440\u043e\u0437\u043c\u0456\u0449\u0435\u043d\u043d\u044f \u0443 \u043a\u043e\u0440\u043f\u0443\u0441\u0456 D3MG \u0442\u0430 \u043c\u0430\u0454 \u0442\u0456\u043b\u044c\u043a\u0438 2 \u0432\u0445\u043e\u0434\u0438 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0456\u0432, \u0430\u043b\u0435 \u043b\u0456\u0436\u043a\u043e \u043c\u0430\u0454 5 \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0456\u0432. \u0422\u043e\u043c\u0443 \u0434\u043e\u0432\u0435\u043b\u043e\u0441\u044c \u0434\u043e\u0434\u0430\u0442\u0438 \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u0443 \u043f\u043b\u0430\u0442\u0443 \u0437\u0430\u0445\u0438\u0441\u0442\u0443. \u0422\u0430\u043a\u043e\u0436 \u0446\u044f \u043f\u043b\u0430\u0442\u0430 \u043d\u0435 \u043c\u0430\u0454 \u043c\u0456\u0441\u0446\u044f \u0434\u043b\u044f PWM \u043d\u0430 12 \u0412. \u0414\u043e\u0432\u0435\u043b\u043e\u0441\u044c \u0446\u0435 \u0437\u0440\u043e\u0431\u0438\u0442\u0438 \u043d\u0430\u043f\u0456\u0432\u043d\u0430\u0432\u0456\u0441\u043d\u0438\u043c \u043c\u043e\u043d\u0442\u0430\u0436\u0435\u043c \u043d\u0430 \u043c\u0456\u0441\u0446\u0456 \u0434\u0435 \u043f\u043e\u0432\u0438\u043d\u043d\u0456 \u0431\u0443\u0442\u0438 \u0440\u043e\u0437\u0442\u0430\u0448\u043e\u0432\u0430\u043d\u0456 MOC3063 \u0442\u0430 \u0441\u0456\u043c\u0456\u0441\u0442\u043e\u0440\u0438. \u042f\u043a \u043d\u0430\u0441\u043b\u0456\u0434\u043e\u043a \u0432\u0438\u0439\u0448\u043e\u0432 \u0442\u0430\u043a\u0438\u0439 \u0431\u0443\u0442\u0435\u0440\u0431\u0440\u043e\u0434:<\/p>\n<p><img loading=\"lazy\" class=\"size-medium wp-image-562 aligncenter\" src=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/DSC_8132-300x241.jpg\" alt=\"\" width=\"300\" height=\"241\" srcset=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/DSC_8132-300x241.jpg 300w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/DSC_8132-1024x824.jpg 1024w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/DSC_8132-768x618.jpg 768w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/DSC_8132.jpg 1438w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>\u0423 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0456 \u043c\u0430\u0454\u043c\u043e:<\/p>\n<ul>\n<li>2 PWM \u0432\u0438\u0445\u043e\u0434\u0438 \u043d\u0430 12\u0412 \u0449\u043e \u0434\u0430\u044e\u0442\u044c \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043f\u043b\u0430\u0432\u043d\u043e \u0440\u0435\u0433\u0443\u043b\u044e\u0432\u0430\u0442\u0438 \u0441\u0432\u0456\u0442\u043b\u043e<\/li>\n<li>6 \u0432\u0445\u043e\u0434\u0456\u0432 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0456\u0432 \u0437 \u0437\u0430\u0445\u0438\u0441\u0442\u043e\u043c \u043f\u043e\u0440\u0442\u0456\u0432 \u043c\u0456\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440\u0430<\/li>\n<li>\u0436\u0438\u0432\u043b\u0435\u043d\u043d\u044f \u043f\u043b\u0430\u0442\u0438 \u0442\u0430 \u0441\u0432\u0456\u0442\u043b\u0430 \u0432\u0456\u0434 \u043c\u0435\u0440\u0435\u0436\u0456 Ethernet \u0442\u0430 \u0432\u0456\u0434\u0441\u0443\u0442\u043d\u0456\u0441\u0442\u044c \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u0438\u0445 \u0431\u043b\u043e\u043a\u0456\u0432 \u0436\u0438\u0432\u043b\u0435\u043d\u043d\u044f<\/li>\n<li>\u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043e\u0442\u0440\u0438\u043c\u0430\u043d\u043d\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0442\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0441\u0442\u0430\u0442\u0443\u0441\u0443 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443 MQTT<\/li>\n<\/ul>\n<p>\u042f\u043a \u0431\u043e\u043d\u0443\u0441 &#8211; \u043c\u0430\u0454\u043c\u043e \u0441\u0432\u0456\u0442\u043b\u043e \u043a\u043e\u0442\u0440\u0435 \u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0443\u0454 \u043f\u0440\u0430\u0446\u044e\u0432\u0430\u0442\u0438, \u044f\u043a\u0449\u043e \u043d\u0435\u043c\u0430\u0454 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u0435\u043d\u0435\u0440\u0433\u0456\u0457, \u044f\u043a\u0449\u043e \u043c\u0435\u0440\u0435\u0436\u0435\u0432\u0438\u0439 \u043a\u043e\u043c\u0443\u0442\u0430\u0442\u043e\u0440 \u043c\u0430\u0454 \u0431\u043b\u043e\u043a \u0431\u0435\u0437\u043f\u0435\u0440\u0435\u0431\u0456\u0439\u043d\u043e\u0433\u043e \u0436\u0438\u0432\u043b\u0435\u043d\u043d\u044f.<\/p>\n<h2>\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043d\u0435 \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f<\/h2>\n<p>\u0414\u043b\u044f \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0442\u0432\u043e\u0440\u0438\u043c\u043e \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e \u0434\u043b\u044f \u0432\u0436\u0435 \u0456\u0441\u043d\u0443\u044e\u0447\u043e\u0457 \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043d\u0430 \u0431\u0430\u0437\u0456 OpeHAB (\u043a\u0456\u043b\u044c\u043a\u0430 \u0434\u043d\u0456\u0432 \u0442\u043e\u043c\u0443 \u0432\u0438\u0439\u0448\u043b\u0430 3-\u0442\u044f \u0432\u0435\u0440\u0441\u0456\u044f, \u0430\u043b\u0435 \u0441\u0442\u043e\u0457\u0442\u044c \u043f\u043e\u043a\u0438 2.5)<\/p>\n<h3>\u0421\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f items<\/h3>\n<p>\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u0444\u0430\u0439\u043b room.items<\/p>\n<p>\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u0433\u0440\u0443\u043f\u0438<\/p>\n<pre><code class=\"language-bash\">Group ROOM \"Room\"\r\nGroup:Switch RM_BED_IOT1 \"IOT2 Switches\"\r\nGroup:String RM_BED_IOT1_SW_STATUS \"IOT2 Switch status\"\r\nGroup:Number RM_BED_IOT1_DIM_STATUS \"IOT2 Dimmer status\"<\/code><\/pre>\n<p>\u0413\u043e\u043b\u043e\u0432\u043d\u0438\u043c \u0447\u0438\u043d\u043e\u043c \u0433\u0440\u0443\u043f\u0438 \u0442\u0440\u0435\u0431\u0430 \u0434\u043b\u044f \u0437\u043c\u0435\u043d\u0448\u0435\u043d\u043d\u044f \u043a\u0456\u043b\u044c\u043a\u043e\u0441\u0442\u0456 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u0440\u0438 \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0456 \u0441\u0442\u0430\u0442\u0443\u0441\u0443 \u0447\u0438 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043a\u043e\u043b\u0438 \u043e\u0434\u0438\u043d \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447 \u043a\u0435\u0440\u0443\u0454 \u0442\u0456\u043b\u044c\u043a\u0438 \u043e\u0434\u043d\u0438\u043c \u0432\u0438\u0445\u043e\u0434\u043e\u043c.<\/p>\n<p>\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0456:<\/p>\n<pre><code class=\"language-bash\">Switch RM_BED_IOT1_SW_35 \"SW 35\" (ROOM) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/gpio\/state\/35:state:MAP(onoff.map)]\"}\r\nString RM_BED_IOT1_SW_35_STATUS \"SW 35 STATUS\" (ROOM, RM_BED_IOT1_SW_STATUS) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin35)].pin35.state)]\"}\r\nSwitch RM_BED_IOT1_SW_34 \"SW 34\" (ROOM) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/gpio\/state\/34:state:MAP(onoff.map)]\"}\r\nString RM_BED_IOT1_SW_34_STATUS \"SW 34 STATUS\" (ROOM, RM_BED_IOT1_SW_STATUS) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin34)].pin34.state)]\"}\r\nSwitch RM_BED_IOT1_SW_36 \"SW 36\" (ROOM) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/gpio\/state\/36:state:MAP(onoff.map)]\"}\r\nString RM_BED_IOT1_SW_36_STATUS \"SW 36 STATUS\" (ROOM) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin36)].pin36.state)]\"}\r\nSwitch RM_BED_IOT1_SW_39 \"SW 39\" (ROOM) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/gpio\/state\/39:state:MAP(onoff.map)]\"}\r\nString RM_BED_IOT1_SW_39_STATUS \"SW 39 STATUS\" (ROOM, RM_BED_IOT1_SW_STATUS) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin39)].pin39.state)]\"}\r\n<\/code><\/pre>\n<p>\u0423 \u0434\u0430\u043d\u043e\u043c\u0443 \u0432\u0438\u043f\u0430\u0434\u043a\u0443 \u043a\u043e\u0436\u0435\u043d \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447 \u043c\u0430\u0454 \u043e\u043a\u0440\u0435\u043c\u043e \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e \u0434\u043b\u044f \u043e\u0431\u0440\u043e\u0431\u043a\u0438 \u0437\u043c\u0456\u043d\u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0430 \u0442\u0430 \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0441\u0442\u0430\u043d\u0443 \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0430 \u043a\u043e\u043b\u0438 \u0431\u043b\u043e\u043a \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043d\u0430\u0434\u0441\u0438\u043b\u0430\u0454 \u0441\u0432\u0456\u0439 \u0441\u0442\u0430\u043d.<\/p>\n<p>{ mqtt=&#8221;&lt;[broker:\/room-iot-bad-1\/gpio\/state\/35:state:MAP(onoff.map)]&#8221;} &#8211; \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0454 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f 1 \u0447\u0438 0 \u0443 ON \u0447\u0438 OFF<\/p>\n<p>{ mqtt=&#8221;&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin35)].pin35.state)]&#8221;} &#8211; \u043e\u0431\u0440\u043e\u0431\u043b\u044e\u0454 json \u0437\u0456 \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u043c. JSON \u043c\u0430\u0454 \u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0438\u0439 \u0444\u043e\u0440\u043c\u0430\u0442:<\/p>\n<pre><code class=\"language-json\">{\r\n  \"status\": 207816,\r\n  \"gpio\": [\r\n    {\r\n      \"pin23\": {\r\n        \"state\": 1023,\r\n        \"mode\": 4\r\n      }\r\n    },\r\n    {\r\n      \"pin32\": {\r\n        \"state\": 1023,\r\n        \"mode\": 4\r\n      }\r\n    },\r\n    {\r\n      \"pin34\": {\r\n        \"state\": 0,\r\n        \"mode\": 1\r\n      }\r\n    },\r\n    {\r\n      \"pin35\": {\r\n        \"state\": 0,\r\n        \"mode\": 1\r\n      }\r\n    },\r\n    {\r\n      \"pin36\": {\r\n        \"state\": 0,\r\n        \"mode\": 1\r\n      }\r\n    },\r\n    {\r\n      \"pin39\": {\r\n        \"state\": 0,\r\n        \"mode\": 1\r\n      }\r\n    }\r\n  ]\r\n}<\/code><\/pre>\n<p>\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e \u0434\u043b\u044f \u0441\u0432\u0456\u0442\u043b\u0430:<\/p>\n<pre><code class=\"language-bash\">Dimmer RM_BED_IOT1_PWM_23 \"\u041b\u0456\u0436\u043a\u043e, \u0441\u0432\u0456\u0442\u043b\u043e [%d %%]\" (ROOM)\r\nNumber RM_BED_IOT1_PWM_23_RAW_STATE \"PWM 23 STATE[%s]\" (ROOM,RM_BED_IOT1_DIM_STATUS) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin23)].pin23.state)]\"}\r\nDimmer RM_BED_IOT1_PWM_32 \"\u041d\u0456\u0447\u043d\u0438\u043a [%d %%]\" (ROOM)\r\nNumber RM_BED_IOT1_PWM_32_RAW_STATE \"PWM 32 STATE[%s]\" (ROOM,RM_BED_IOT1_DIM_STATUS) { mqtt=\"&lt;[broker:\/room-iot-bad-1\/module\/state:state:JSONPATH($.gpio[?(@.pin32)].pin32.state)]\"}<\/code><\/pre>\n<p>\u0422\u0443\u0442 \u0443\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e &#8211; Dimmer \u0442\u0440\u0435\u0431\u0430 \u0449\u043e\u0431 \u043c\u0430\u0442\u0438 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438 \u0437 UI, \u0441\u0442\u0430\u0442\u0443\u0441 &#8211; \u0449\u043e\u0431 \u043e\u043d\u043e\u0432\u043b\u044e\u0432\u0430\u0442\u0438 \u0441\u0442\u0430\u0442\u0443\u0441 \u043d\u0430 UI \u044f\u043a\u0449\u043e \u043f\u043e\u0442\u043e\u0447\u043d\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f \u043d\u0435 \u0432\u0456\u0434\u043f\u043e\u0432\u0456\u0434\u0430\u0454 \u0442\u043e\u043c\u0443 \u0449\u043e \u0443 \u0431\u043b\u043e\u0446\u0456 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f (\u043d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434 \u043f\u0456\u0441\u043b\u044f \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0443 \u0431\u043b\u043e\u043a\u0443 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f).<\/p>\n<p>\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e \u0434\u043b\u044f \u043d\u0430\u0434\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0431\u043b\u043e\u043a\u0443 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f<\/p>\n<pre><code class=\"language-bash\">String RM_BED_IOT1_CMD \"IOT ROOM CMD\" (ROOM) {mqtt=\"&gt;[broker:\/room-iot-bad-1\/gpio\/command:command:*:default]\"}\r\n<\/code><\/pre>\n<p>\u041d\u0435\u0437\u0430\u043b\u0435\u0436\u043d\u043e \u0432\u0456\u0434 \u0442\u043e\u0433\u043e \u0449\u043e \u043c\u0438 \u0431\u0430\u0436\u0430\u0454\u043c\u043e \u0437\u0440\u043e\u0431\u0438\u0442\u0438, \u0446\u0435\u0439 \u0431\u043b\u043e\u043a \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043e\u0447\u0456\u043a\u0443\u0454 \u0443\u0441\u0456 \u043a\u043e\u043c\u0430\u043d\u0434\u0438 \u0443 \u0454\u0434\u0438\u043d\u043e\u043c\u0443 \u0442\u043e\u043f\u0456\u043a\u0443.<\/p>\n<h3>\u0421\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u043f\u0440\u0430\u0432\u0438\u043b (rules)<\/h3>\n<p>\u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0441\u0442\u0430\u0442\u0443\u0441\u0443<\/p>\n<pre><code class=\"language-cpp\">import org.eclipse.smarthome.model.script.ScriptServiceUtil\r\nrule \"IOT Switch state updated\"\r\nwhen\r\n    Member of RM_BED_IOT1_SW_STATUS received update\r\nthen\r\n    val swName = triggeringItem.name.split(\"_\").get(4)\r\n    val swItem = ScriptServiceUtil.getItemRegistry.getItem(\"RM_BED_IOT1_SW_\" + swName)\r\n    swItem.postUpdate(transform(\"MAP\", \"onoff.map\", triggeringItem.state.toString))\r\nend\r\n\r\nrule \"IOT Dimmer state updated\"\r\nwhen\r\n    Member of RM_BED_IOT1_DIM_STATUS received update\r\nthen\r\n    val dimName = triggeringItem.name.split(\"_\").get(4)\r\n    val dimItem = ScriptServiceUtil.getItemRegistry.getItem(\"RM_BED_IOT1_PWM_\" + dimName)\r\n    val rawVal = triggeringItem.state as Number\r\n    var newState = (1023-rawVal)\/1024*100\r\n    dimItem.postUpdate(newState)\r\nend\r\n<\/code><\/pre>\n<p>\u041f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u0441\u0432\u0456\u0442\u043b\u043e\u043c<\/p>\n<pre><code class=\"language-cpp\">rule \"Room bad LED strip light brightness\"\r\nwhen\r\n    Item RM_BED_IOT1_PWM_23 changed\r\nthen\r\n    var jsonString = \"{\\\"pin\\\":23,\\\"state\\\":\" + (1023 - (triggeringItem.state as DecimalType).floatValue() \/100 * 1023) + \"}\"\r\n    RM_BED_IOT1_CMD.sendCommand(jsonString)\r\nend\r\n\r\nrule \"Room bad LED strip light brightness\"\r\nwhen\r\n    Item RM_BED_IOT1_PWM_32 changed\r\nthen\r\n    var jsonString = \"{\\\"pin\\\":32,\\\"state\\\":\" + (1023 - (triggeringItem.state as DecimalType).floatValue() \/100 * 1023) + \"}\"\r\n    RM_BED_IOT1_CMD.sendCommand(jsonString)\r\nend<\/code><\/pre>\n<p>Dimmer \u043c\u0430\u0454 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f 0-100%, \u0431\u043b\u043e\u043a \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f 0-1023, \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u043f\u0435\u0440\u0435\u0442\u0432\u043e\u0440\u044e\u0454 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0438 \u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f \u0442\u0430 \u0456\u043d\u0432\u0435\u0440\u0442\u0443\u0454 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f.<\/p>\n<p>\u041f\u0440\u0438\u043a\u043b\u0430\u0434 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u0441\u0432\u0456\u0442\u043b\u043e\u043c \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u0447\u0430<\/p>\n<pre><code class=\"language-cpp\">\r\nrule \"LED Light 800\"\r\nwhen\r\n    Item RM_BED_IOT1_SW_34 changed to ON\r\nthen\r\n    {\r\n      var jsonString = \"{\\\"pin\\\":23,\\\"state\\\":800}\"\r\n      RM_BED_IOT1_CMD.sendCommand(jsonString)\r\n    }\r\nend<\/code><\/pre>\n<p>\u041a\u0456\u043b\u044c\u043a\u0430 \u043f\u0440\u0430\u0432\u0438\u043b \u0434\u043b\u044f \u0432\u043c\u0438\u043a\u0430\u043d\u043d\u044f \u0432\u0438\u043c\u0438\u043a\u0430\u043d\u043d\u044f \u043d\u0456\u0447\u043d\u0438\u043a\u0430 \u043f\u0440\u0438 \u0441\u0445\u043e\u0434\u0456 \u0437\u0430 \u0437\u0430\u0445\u043e\u0434\u0456 \u0441\u043e\u043d\u0446\u044f:<\/p>\n<pre><code class=\"language-cpp\">rule \"Light off on sunrise\"\r\nwhen\r\n    Channel \"astro:sun:home:rise#event\" triggered START\r\nthen\r\n    var jsonString = \"{\\\"pin\\\":32,\\\"state\\\":1023}\"\r\n    RM_BED_IOT1_CMD.sendCommand(jsonString)\r\nend\r\n\r\nrule \"Light on on sunset\"\r\nwhen\r\n    Channel \"astro:sun:home:civilDusk#event\" triggered END\r\nthen\r\n   var jsonString = \"{\\\"pin\\\":32,\\\"state\\\":0}\"\r\n   RM_BED_IOT1_CMD.sendCommand(jsonString)\r\nend\r\n\r\nrule \"Light on on nights start\"\r\nwhen\r\n    Time cron \"0 0 22 * * ? *\"\r\nthen\r\n   var jsonString = \"{\\\"pin\\\":32,\\\"state\\\":787}\"\r\n   RM_BED_IOT1_CMD.sendCommand(jsonString)\r\nend<\/code><\/pre>\n<p>\u0414\u043b\u044f \u0440\u043e\u0431\u043e\u0442\u0438 \u0446\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u043e \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438 \u0442\u0430\u043a\u0438 \u043f\u043b\u0430\u0433\u0456\u043d\u0438:<\/p>\n<ul>\n<li>JsonPath Transformation<\/li>\n<li>Map Transformation<\/li>\n<li>Astro Binding<\/li>\n<\/ul>\n<p>\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043d\u0435 \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0430 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043c\u043e\u0436\u043d\u0430 \u0437\u043d\u0430\u0439\u0442\u0438 \u0437\u0430 <a href=\"https:\/\/github.com\/maxx-ukoo\/esp32-modbus-tcp2rtu\">\u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f\u043c<\/a><\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u0438\u0433\u043b\u044f\u0434\u0430\u0454 \u0442\u0430\u043a:<\/p>\n<p><img loading=\"lazy\" class=\"size-large wp-image-565 aligncenter\" src=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/IMG_20201231_164112-1024x399.jpg\" alt=\"\" width=\"640\" height=\"249\" srcset=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/IMG_20201231_164112-1024x399.jpg 1024w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/IMG_20201231_164112-300x117.jpg 300w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/IMG_20201231_164112-768x300.jpg 768w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/IMG_20201231_164112-1536x599.jpg 1536w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2020\/12\/IMG_20201231_164112-2048x799.jpg 2048w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0412\u0436\u0435 \u0434\u0430\u0432\u043d\u043e \u043c\u0435\u043d\u0456 \u043d\u0435 \u043f\u043e\u0434\u043e\u0431\u0430\u043b\u0430\u0441\u044c \u043d\u0430\u044f\u0432\u043d\u0456\u0441\u0442\u044c \u0442\u0456\u043b\u044c\u043a\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0434\u0436\u0435\u0440\u0435\u043b\u0430 \u0441\u0432\u0456\u0442\u043b\u0430 \u0443 \u043a\u0456\u043c\u043d\u0430\u0442\u0456. \u0427\u0435\u0440\u0435\u0437 \u0446\u0435 \u0442\u0440\u0435\u0431\u0430 \u0431\u0443\u043b\u043e \u043f\u043e\u0441\u0442\u0456\u0439\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u0430\u0442\u0438 \u0437 \u043b\u0456\u0436\u043a\u0430 \u0449\u043e\u0431 \u0439\u043e\u0433\u043e \u0432\u0438\u043c\u043a\u043d\u0443\u0442\u0438 \u0447\u0438 \u0443\u0432\u0456\u043c\u043a\u043d\u0443\u0442\u0438, \u0442\u0430 \u0439 \u0443 \u0431\u0456\u043b\u044c\u0448\u043e\u0441\u0442\u0456 \u0432\u0438\u043f\u0430\u0434\u043a\u0456\u0432 \u0442\u0440\u0435\u0431\u0430 \u0431\u0443\u043b\u043e \u0441\u0432\u0456\u0442\u043b\u043e \u043d\u0435 \u0443 \u043a\u0456\u043c\u043d\u0430\u0442\u0456, \u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0435 \u0441\u0432\u0456\u0442\u043b\u043e \u0431\u0456\u043b\u044f \u043b\u0456\u0436\u043a\u0430. \u041f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u0438\u0434\u0431\u0430\u0442\u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u0441\u0432\u0456\u0442\u0438\u043b\u044c\u043d\u0438\u043a \u0446\u0435 \u0434\u0443\u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0442\u0430 \u0439 \u0437\u0430\u0439\u043c\u0430\u0454 \u0432\u0456\u043d \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u0435 \u043c\u0456\u0441\u0446\u0435. \u041e\u043a\u0440\u0456\u043c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,15],"tags":[],"_links":{"self":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts\/559"}],"collection":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=559"}],"version-history":[{"count":6,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts\/559\/revisions"}],"predecessor-version":[{"id":581,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts\/559\/revisions\/581"}],"wp:attachment":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=559"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=559"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=559"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}