馬光偉,樊廣曉,王玉虎,卜翠翠,陳佳樂(lè),付廣春
(河南科技學(xué)院機(jī)電學(xué)院,河南新鄉(xiāng)453003)
如今電器種類龐雜,方便了我們的生活,但用電事故也在不斷發(fā)生.電器的功率參數(shù)參差不齊,使用時(shí)線路負(fù)荷過(guò)大會(huì)造成電氣火災(zāi)、觸電等事故.學(xué)校里用電事故主要是由于使用大功率電器造成的.許多高校宿舍建立時(shí)間較長(zhǎng),線路出現(xiàn)老化,在使用大功率電器時(shí)產(chǎn)生熱量較多,到一定程度就會(huì)發(fā)生火災(zāi).學(xué)生用電時(shí)不按照用電安全規(guī)定和管理要求,拖接各類違規(guī)電器設(shè)備,隨意拉線、接線,易發(fā)生觸電、火災(zāi)等安全事故[1].
宿舍用電智能監(jiān)控系統(tǒng)可以有效減少宿舍用電事故的發(fā)生.設(shè)計(jì)由STM32 芯片作為主控電路,從機(jī)采集電壓、電流多路數(shù)據(jù)量,再經(jīng)過(guò)計(jì)算得出每個(gè)宿舍的用電功率,并且每條線路均采用信號(hào)隔離技術(shù)使其獨(dú)立工作,得到的數(shù)據(jù)由LoRa 無(wú)線模塊傳輸?shù)街鳈C(jī),再利用4G 通信將數(shù)據(jù)上傳至網(wǎng)絡(luò)云端,實(shí)現(xiàn)用電功率的遠(yuǎn)程監(jiān)控,同時(shí)數(shù)據(jù)反饋給主機(jī),主機(jī)檢測(cè)是否超過(guò)管理者設(shè)定的功率,若超過(guò)發(fā)送消息到宿舍長(zhǎng)警告該宿舍,不進(jìn)行處理將會(huì)對(duì)該宿舍斷電,避免了危險(xiǎn)事故的發(fā)生.
宿舍用電智能監(jiān)控系統(tǒng)總體框圖見(jiàn)圖1.
圖1 系統(tǒng)總體框圖Fig. 1 System block diagram
系統(tǒng)整體設(shè)計(jì)分為主機(jī)和從機(jī)兩部分,主要由數(shù)據(jù)采集電路、處理電路、傳輸電路組成.數(shù)據(jù)采集電路基于BL0937 設(shè)計(jì),BL0937 的VP 引腳接入線路中采集電壓信號(hào),BL0937 的IP 和IN 引腳則采集電流信號(hào),由耦合隔離電路傳入從機(jī)的脈沖信號(hào)捕獲通道,捕獲到的脈沖信號(hào)的頻率經(jīng)過(guò)公式計(jì)算出功率,再經(jīng)LoRa 無(wú)線通信模塊使數(shù)據(jù)傳輸?shù)街鳈C(jī),主機(jī)根據(jù)計(jì)算出的功率,發(fā)出相應(yīng)的控制命令,管理宿舍用電,并將數(shù)據(jù)封裝處理后由4G 無(wú)線通信模塊上傳到網(wǎng)絡(luò)云端.
宿舍用電智能監(jiān)控系統(tǒng)硬件電路結(jié)構(gòu)主要包括電源轉(zhuǎn)換電路、STM32 主控制器、BL0937 采集電路和LoRa 無(wú)線通信電路、4G 無(wú)線通信電路.
為得到12 V 的直流電源為系統(tǒng)供電,采用AC-DC 的降壓模塊對(duì)220 V 的交流電源進(jìn)行轉(zhuǎn)換.隨后使用B1205-2W 的隔離型電源器件,將12 V 的直流電源進(jìn)一步轉(zhuǎn)換為所需要使用5 V 的直流電,使用隔離型電源器件B1205-2W 的好處在于保護(hù)STM32 主控芯片,以及一些其他的外部電路,確保使用的安全性以及設(shè)計(jì)的可行性.最后使用低壓線性穩(wěn)壓芯片AMS1117-3.3,AMS1117 輸入電壓最高可達(dá)12 V,輸出電壓可以為1.8、1.9、2.5、3.3 和5 V,輸出電流最高可達(dá)1 A,且片內(nèi)集成過(guò)熱保護(hù)和過(guò)流保護(hù)模塊,保證芯片和系統(tǒng)的安全[2],將5 V 的直流電源轉(zhuǎn)化成可以為STM32 主控芯片直接供電的3.3 V 電源.電源轉(zhuǎn)換電路圖見(jiàn)圖2.
圖2 電源轉(zhuǎn)換電路Fig. 2 Power conversion circuit
采集電路采用的是一款電能計(jì)量芯片BL0937,集成了參考電壓模塊、電源管理模塊和計(jì)算功率、電流、電壓的有效值等數(shù)字電路,可以輸出電流和電壓有效值脈沖信號(hào).BL0937 有兩種輸出模式,一種是輸出電流、電壓的脈沖信號(hào),另一種是輸出電能計(jì)量的脈沖信號(hào).BL0937 芯片的體積很小,內(nèi)置了晶振、參考電源和兩路ADC.通過(guò)精簡(jiǎn)的數(shù)字算法和高效的硬件結(jié)構(gòu),在滿足所要求的功能和性能前提下,硬件消耗和功耗都非常低,外圍結(jié)構(gòu)簡(jiǎn)單、成本低,非常適合插座表等智能產(chǎn)品中的簡(jiǎn)單電能計(jì)量,具有較高的性價(jià)比[6].
理想的p(t)只包括兩部分:直流部分和頻率為2ω 的交流部分.前者又稱為瞬時(shí)實(shí)功率信號(hào),瞬時(shí)實(shí)功率是電能表測(cè)量的首要對(duì)象[7].BL0937 的VP 引腳輸入電壓,IN 和IP 引腳輸入電流,通過(guò)信號(hào)處理求出兩個(gè)通道中采集數(shù)據(jù)的乘積,得到有功功率并以脈沖信號(hào)的形式從CF 輸出,對(duì)采集的輸入電壓和輸入電流有效值,也以脈沖信號(hào)的形式從CF1 輸出,通過(guò)計(jì)算他們的頻率就能算出有效值.
采集電路見(jiàn)圖3.采集對(duì)象是市電電壓,芯片正常工作采集的電壓信號(hào)應(yīng)通過(guò)分壓電路調(diào)整到200 mV以內(nèi),電路使用了6 個(gè)330 kΩ 電阻串聯(lián)的分壓方法,分壓后1 kΩ 電阻上有大約110 mV 的電壓信號(hào),市電在176~264 V 浮動(dòng)時(shí),此信號(hào)會(huì)在88~132 mV 之間,符合芯片要求.電流采樣電路電阻可以采用康銅電阻或者合金電阻,電阻值的選擇則需要根據(jù)采樣電流大小.芯片內(nèi)部集成了兩路ADC,需要在采樣端增加RC 濾波電路,達(dá)到濾除高頻干擾信號(hào)的效果.
圖3 采集電路Fig. 3 Acquisition circuit
數(shù)據(jù)傳輸部分采用了基于SX1278 的LoRa 無(wú)線模塊,遠(yuǎn)程調(diào)制解調(diào)增加了傳輸距離,功耗更低.專利調(diào)制技術(shù),使傳輸距離變得更遠(yuǎn),傳輸時(shí)的靈敏度達(dá)到了-148 dBm,功率輸出為+18 dBm,可靠性強(qiáng),抗干擾能力強(qiáng).對(duì)比傳統(tǒng)調(diào)制技術(shù),抗阻塞得到了提高.LoRa 成功實(shí)現(xiàn)了低功耗和遠(yuǎn)距離的統(tǒng)一,在同樣的功耗條件下比其他無(wú)線方式傳播的距離更遠(yuǎn),比傳統(tǒng)的無(wú)線射頻通信距離擴(kuò)大3~5 倍[8].以往設(shè)計(jì)中無(wú)法同時(shí)具備距離遠(yuǎn)、抗干擾強(qiáng)和功耗低的難題也得以解決,該模塊以其低功耗、成本低和遠(yuǎn)距離的優(yōu)勢(shì)應(yīng)用于各種物聯(lián)網(wǎng)項(xiàng)目中,實(shí)現(xiàn)可靠組網(wǎng)和無(wú)線通信,適用于遠(yuǎn)程抄表、實(shí)時(shí)數(shù)據(jù)傳輸?shù)?是物聯(lián)網(wǎng)產(chǎn)品的最佳選擇.
LoRa 無(wú)線通信電路見(jiàn)圖4.該芯片的供電是將5 V 電壓經(jīng)過(guò)AMS1117 芯片降到3.3 V,LoRa 模塊由SPI 總線驅(qū)動(dòng),一共需要8 個(gè)引腳,圖中P6 的前兩個(gè)引腳分別接地和3.3 V 供電,3 腳是SPI 時(shí)鐘輸入引腳,4、5 腳是數(shù)據(jù)的輸入輸出腳,分別接PA6 和PA7,6 腳是片選引腳,接PB7,在傳輸數(shù)據(jù)時(shí)拉低此引腳,傳輸完最后一個(gè)字節(jié)再拉高,7 腳接主控制器的PA2,用于讀取中斷標(biāo)志位,8 腳接PA4,為復(fù)位引腳.
圖4 LoRa 無(wú)線通信電路Fig. 4 LoRa wireless communication circuit
Air720H 是一款4G 無(wú)線通信模塊,下行速率、上行速率分別可達(dá)150 Mbps 和50 Mbps.可以向下兼容GSM 或GPRS 網(wǎng)絡(luò),保證在沒(méi)有3G、4G 網(wǎng)絡(luò)的地區(qū)也能使用,有多種網(wǎng)絡(luò)協(xié)議,具備工業(yè)標(biāo)準(zhǔn)接口,兼容多種驅(qū)動(dòng)和軟件應(yīng)用,有UART 接口,將它連接到MCU 或PC 設(shè)備上,可以實(shí)現(xiàn)供電、固件下載、AT 指令等功能.
系統(tǒng)數(shù)據(jù)的上傳是通過(guò)4G 無(wú)線通信模塊,基于HTTP 通信協(xié)議將數(shù)據(jù)上傳到云端服務(wù)器遠(yuǎn)程監(jiān)控[9].該設(shè)計(jì)是經(jīng)UART 口發(fā)送AT 指令控制4G 模塊進(jìn)行配置網(wǎng)絡(luò)、數(shù)據(jù)傳輸?shù)裙δ?4G 模塊有兩個(gè)UART口,UART1 是AT 調(diào)試串口,UART2 是普通串口,將UART1 的RXD、TXD 分別連接到主控制器的串口引腳,PA2 和PA3 用來(lái)傳輸AT 指令.
根據(jù)要求需要實(shí)現(xiàn)數(shù)據(jù)采集、數(shù)據(jù)傳輸、訪問(wèn)云端這些功能,定時(shí)捕獲脈沖信號(hào)的頻率并轉(zhuǎn)換成功率,利用主控制器的串口外設(shè)控制無(wú)線模塊,將采集的功率傳輸?shù)骄W(wǎng)絡(luò)云端,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控的功能.
系統(tǒng)主程序設(shè)計(jì)流程如圖5 所示.
圖5 主程序流程Fig. 5 Main program flow chart
程序中配置了SPI 總線、串口、PWM 捕獲通道這些外設(shè),SPI 總線驅(qū)動(dòng)LoRa 無(wú)線模塊,通過(guò)讀/ 寫寄存器的方式,控制LoRa 模塊接收、發(fā)送PWM 捕獲脈沖信號(hào)的數(shù)據(jù),再由串口發(fā)送AT 指令控制4G 模塊上傳數(shù)據(jù)到網(wǎng)絡(luò)云端[10],主控制器根據(jù)數(shù)據(jù)判斷是否發(fā)出控制命令.PWM 捕獲通道將脈沖信號(hào)的頻率計(jì)算出來(lái),通過(guò)程序內(nèi)編寫的公式把頻率轉(zhuǎn)換成功率
式(1)中:FCF為捕獲脈沖信號(hào)的頻率,Vref為基準(zhǔn)電壓1.28 V,V(V)和V(I)分別是兩個(gè)電壓、電流采集管腳的電壓有效值,相乘得出功率.
數(shù)據(jù)發(fā)送、接收流程如圖6 所示.
圖6 發(fā)送、接收流程Fig. 6 Flow chart of sending and receiving
該設(shè)計(jì)中,LoRa 無(wú)線通信電路用與數(shù)據(jù)的傳輸并保證穩(wěn)定和準(zhǔn)確.主控制器上電后初始化設(shè)備,數(shù)據(jù)的發(fā)送是通過(guò)SPI 總線將LoRa 配置為發(fā)送模式,讀取中斷引腳為高電平時(shí),在空閑狀態(tài)下寫入FIFO,數(shù)據(jù)填充完畢后進(jìn)入到發(fā)送狀態(tài).在LoRa 配置為連續(xù)接收模式時(shí),從機(jī)的接收端會(huì)一直掃描接收通道,判斷是否有數(shù)據(jù),接收到有效數(shù)據(jù)包之后,需要先進(jìn)行掃描,然后接收數(shù)據(jù)并進(jìn)行CRC 校驗(yàn).置FIFO 地址指針指到接收的基地址上,若模塊收到前導(dǎo)碼時(shí),先接收數(shù)據(jù)頭,再接收數(shù)據(jù)包,接收完后CRC 校驗(yàn)通過(guò)后讀取數(shù)據(jù)并保存[11].
采集數(shù)據(jù)見(jiàn)表1.
表1 測(cè)試數(shù)據(jù)Tab. 1 Coupling isolation technology comparison W
將多個(gè)用電器分別接在八個(gè)排插上模擬宿舍用電,把采集電路接入每個(gè)排插的電源線,采集多條用電線路的數(shù)據(jù).再通過(guò)LoRa 無(wú)線通信模塊將數(shù)據(jù)發(fā)送給主機(jī),主機(jī)接收到數(shù)據(jù)后,串口發(fā)送程序內(nèi)寫好的AT 指令配置4G 模塊,設(shè)置HTTP 網(wǎng)絡(luò)連接類型為GPRS(AT+SAPBR=3,1,"CONTYPE","GPRS"),然后初始化HTTP 協(xié)議棧(AT+HTTPINIT), 初始化成功后填寫域名(AT+HTTPPARA="URL","smart-ammeter.signaloflab.cn"),最后開(kāi)啟上報(bào)GET 數(shù)據(jù)(AT+HTTPACTION=0).數(shù)據(jù)將會(huì)上傳到自己制作的網(wǎng)頁(yè)實(shí)時(shí)顯示,讀下發(fā)命令(AT+HTTPREAD)實(shí)現(xiàn)手動(dòng)設(shè)置功率上限值.網(wǎng)頁(yè)登錄和注冊(cè)界面見(jiàn)圖7.
圖7 登錄、注冊(cè)界面Fig. 7 Login registration screen
每個(gè)賬號(hào)對(duì)應(yīng)一個(gè)宿舍,存儲(chǔ)于數(shù)據(jù)庫(kù)中,注冊(cè)并登錄成功后進(jìn)入數(shù)據(jù)顯示界面見(jiàn)圖8.圖中顯示的是其中一條線路的用電功率,登錄相應(yīng)的賬號(hào)查看相應(yīng)的線路的用電情況,功率超過(guò)設(shè)定的值時(shí),STM32主控制器將會(huì)發(fā)出控制命令控制電路管理宿舍用電,實(shí)現(xiàn)了所需要的功能.
圖8 數(shù)據(jù)顯示界面Fig. 8 According to data interface
本文監(jiān)控系統(tǒng)設(shè)計(jì)以STM32 主控芯片實(shí)現(xiàn)多路數(shù)據(jù)的采集,數(shù)據(jù)的傳輸方式是無(wú)線加有線,將數(shù)據(jù)上傳到云平臺(tái)實(shí)現(xiàn)實(shí)時(shí)遠(yuǎn)程監(jiān)控,主控制器對(duì)數(shù)據(jù)進(jìn)行判斷,從而控制宿舍的用電.經(jīng)過(guò)長(zhǎng)時(shí)間測(cè)試,有較高的可靠性和穩(wěn)定性,網(wǎng)絡(luò)云端顯示數(shù)據(jù)準(zhǔn)確,能夠?qū)崿F(xiàn)實(shí)時(shí)監(jiān)控以及用電控制功能,有效避免了大功率用電器的長(zhǎng)時(shí)間使用.該設(shè)計(jì)的人機(jī)交互方面還存在不足,下一步將著重于前端的完善.