步驟1:基本組件
該項(xiàng)目由5個(gè)基本組件組成
wifi電表傳感器
wifi Raspberry Pi
XML風(fēng)能供稿形成網(wǎng)格管理器
瀏覽器
偉大的電灌洗機(jī)
工作原理:
電表傳感器是紅外傳感器,聚焦在電表的旋轉(zhuǎn)輪上。每次紅線通過時(shí),發(fā)出的紅外光都會(huì)被吸收,并且反射的光要比正常情況少。傳感器設(shè)置在此閾值并更改I/O。
來自傳感器的I/O連接到ESP8266的GPIO引腳0。當(dāng)該引腳從I變?yōu)镺時(shí),將其編程為“費(fèi)用”,當(dāng)它從O變回I時(shí),它會(huì)通過wifi向Raspberry Pi上的MySql數(shù)據(jù)庫(kù)“發(fā)射”一條短消息。
每5分鐘Raspberry Pi從Grid Manager的網(wǎng)站上下載最新的風(fēng)能預(yù)測(cè)XML。將XML轉(zhuǎn)換為SQL命令,并將數(shù)據(jù)存儲(chǔ)在Raspberry Pi上的mySQL表中。
瀏覽器的第一頁(yè)是實(shí)際用電量。在下一頁(yè)上,您可以查看每小時(shí)的每日使用量。第三頁(yè)顯示了在Google圖表中顯示的風(fēng)能預(yù)測(cè)和實(shí)際生產(chǎn)。
最后,魔術(shù)發(fā)生了:我在瀏覽器上查看了人工耗電量。如果我們當(dāng)時(shí)不使用過多,我會(huì)檢查一下風(fēng)預(yù)測(cè)。當(dāng)有足夠的風(fēng)時(shí),我用右手食指打開洗碗機(jī)。
我要在下一個(gè)物聯(lián)網(wǎng)項(xiàng)目中自動(dòng)化的右手食指部分。
步驟2:監(jiān)視器傳感器
傳感器實(shí)際上非常簡(jiǎn)單。發(fā)射器發(fā)出紅外信號(hào)。信號(hào)反映在電表的金屬輪上。當(dāng)紅線通過時(shí),紅外光比正常情況吸收更多。紅外傳感器被設(shè)置為檢測(cè)亮度的變化,并從開到關(guān)進(jìn)行切換。 ESP8266運(yùn)行著一個(gè)簡(jiǎn)單的程序,以“充電”和“發(fā)射”消息到數(shù)據(jù)庫(kù)。
傳感器的需求:
紅外收發(fā)器。我使用了Keyence PZ-51。這是工作中一臺(tái)廢棄機(jī)器的殘余物,非常敏感。電表內(nèi)置在一個(gè)有機(jī)密封的盒子中,窗戶和輪子之間有5厘米的間隙。該傳感器非常適合這種不便的位置。
降壓穩(wěn)壓器。 ESP8266需要3.3V電壓。在控制這只野馬的陡峭學(xué)習(xí)曲線中,我燒掉了其中的4只!小心點(diǎn) !
LM317穩(wěn)壓器
400 ohm電容器
240 ohm電容器
1μF極化電容器
0.1μF極化電容器
光敏電阻+電阻器(構(gòu)成電壓調(diào)節(jié)器)。從發(fā)射機(jī)到傳感器的反射信號(hào)很臟,因此沒有給出O/I信號(hào)。但是,傳感器頂部有綠色和紅色的指示燈。通常,如果信號(hào)為O,則紅燈亮,否則綠燈亮。但是在發(fā)出“骯臟”信號(hào)時(shí),只有敏銳的信號(hào)轉(zhuǎn)過身來。光電電阻監(jiān)視綠燈。電壓分配器向ESP8266上的GPIO提供信號(hào)。簡(jiǎn)單有效。
ESP8266 wifi控制器,已安裝NodeNCU。如果您不熟悉ESP8266,請(qǐng)開始挖掘Internet ;-)
一個(gè)Arduino。用于將Lua腳本上傳到ESP8266。 Arduino實(shí)際上不是最終設(shè)置的一部分。
10V直流電源(傳感器額定電壓高達(dá)24V)
Ductape:每個(gè)好的項(xiàng)目都需要Ductape!我必須使用它來將傳感器安裝到電表箱。
焊接材料,連接器,一些電線,配電盤等。..
如何制作:
用面包板測(cè)試電子電路。找到適合我的電表的正確傳感器是一個(gè)冒險(xiǎn)。
對(duì)ESP8266進(jìn)行編程(請(qǐng)參見下面的文件init.lua,用記事本打開)
將組件焊接到插線板
將傳感器連接到電表。
注意:傳感器可以工作并發(fā)送數(shù)據(jù),但是您當(dāng)然需要一個(gè)數(shù)據(jù)庫(kù)來存儲(chǔ)數(shù)據(jù)(請(qǐng)參閱后續(xù)步驟)
步驟3 :Raspberry Pi + Apache + MySql
我已經(jīng)在筆記本電腦上運(yùn)行Apache和MySql以進(jìn)行Web開發(fā)。但是讓我的筆記本電腦全天候運(yùn)行以進(jìn)行節(jié)能項(xiàng)目并不是很明智。 Raspberry Pi是一***立的微型計(jì)算機(jī)。它不需要屏幕,最大消耗功率約為7W。 Pi的尺寸可能較小,與我的第一臺(tái)計(jì)算機(jī)相比,它的性能要好10 ^ 12倍。性能和可能性給我留下了深刻的印象,我的孩子為我的生日買了一個(gè)(也許我向正確的方向推了他們一個(gè)。)
無論如何,請(qǐng)使用Wifi設(shè)置Pi,加載Apache和MySql ,創(chuàng)建數(shù)據(jù)庫(kù)并開始記錄。
互聯(lián)網(wǎng)上有很多教程,介紹如何使用Apache網(wǎng)絡(luò)服務(wù)器和MySql設(shè)置Raspberry Pi。
它的作用:
MySql Datebase將日期存儲(chǔ)在2個(gè)非常簡(jiǎn)單的表中。 1張表用于電表數(shù)據(jù),另一張表用于風(fēng)能預(yù)測(cè)。
電表:每轉(zhuǎn)一圈,電表:
ESP8266將電表插入電表后,會(huì)連接到服務(wù)器并調(diào)用頁(yè)面 electriciteitsmeter.php 。
php程序?qū)?shù)據(jù)上傳到SensiHome數(shù)據(jù)庫(kù)中的ElectMeterMeter表中
簡(jiǎn)單如下:-)
XML來自Elia服務(wù)器(比利時(shí)國(guó)家電網(wǎng)管理器):
Pi每5分鐘調(diào)用一次cronjob頁(yè)面 WindForcastXML.php
XML和Elia服務(wù)器非常適合我需要的數(shù)據(jù)。在您當(dāng)?shù)氐腉rid Managers網(wǎng)站上查看所需的數(shù)據(jù)(例如有關(guān)太陽(yáng)能發(fā)電的預(yù)報(bào))
步驟4:在瀏覽器中
在瀏覽器中,可以連接到4頁(yè):
實(shí)際用電量
選擇頁(yè)面,您希望在該日期獲得更詳細(xì)的信息
每小時(shí)的每小時(shí)消費(fèi)
windforcast
實(shí)際消耗量( meter.php + meterstand.php)
meterstand.php程序在Raspberry Pi上SenisHome數(shù)據(jù)庫(kù)的ElectMeterMeter表中調(diào)用2條SQL命令。
表中的最新條目,即實(shí)際消耗量
車輪的總轉(zhuǎn)數(shù)乘以375(375轉(zhuǎn)= 1 kWh)
meter.php巧妙地運(yùn)行ajax命令進(jìn)行刷新。這種方法的主要優(yōu)點(diǎn)是您不必真正刷新頁(yè)面,而只刷新數(shù)據(jù)。因此meter.php頁(yè)面從meterstand.php獲取數(shù)據(jù)并每5秒更新一次。
注意:數(shù)據(jù)每5秒更新一次,但這并不意味著有新數(shù)據(jù)!在我的情況下,1 kWh = 375轉(zhuǎn)。傳感器完全轉(zhuǎn)動(dòng)后才向數(shù)據(jù)庫(kù)發(fā)送消息。因此,在高消耗情況下,不到5秒便有新數(shù)據(jù),而在低消耗情況下,更新可能需要幾分鐘。
使用底部的2按鈕,您可以進(jìn)入windforcast頁(yè)面或每日消費(fèi)
選擇頁(yè)面+每日消費(fèi) (datepicker.php + dagverbruik.php)
首先您將獲得選擇頁(yè)面,您可以在其中選擇要查看的更詳細(xì)信息的日期。
從那里您將被重定向到Google圖表,其中包含每小時(shí)的消耗量。
Windforcast (WindFor.php):
這是windforcast +實(shí)際產(chǎn)品。在簡(jiǎn)單的Google圖表中,為期3天的預(yù)測(cè)。淡藍(lán)色線是預(yù)測(cè)的產(chǎn)量,深藍(lán)色線是實(shí)際/歷史產(chǎn)量。
責(zé)任編輯:wv
-
監(jiān)控器
+關(guān)注
關(guān)注
1文章
270瀏覽量
26601
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論