黨存祿 ,李永強(qiáng)
(1.蘭州理工大學(xué)電氣工程與信息工程學(xué)院,甘肅 蘭州 730050;2.甘肅省先進(jìn)工業(yè)過程控制重點(diǎn)實(shí)驗(yàn)室,甘肅 蘭州 730050;3.蘭州理工大學(xué)國家級(jí)電氣與控制工程教學(xué)中心,甘肅 蘭州 730050)
集中供熱系統(tǒng)存在的問題是大部分系統(tǒng)處于半自動(dòng)化運(yùn)行或人工調(diào)節(jié)狀態(tài),熱源、供熱管網(wǎng)和換熱站的運(yùn)行數(shù)據(jù)依靠抄表和電話上報(bào),整個(gè)系統(tǒng)的自動(dòng)化程度和效率低下且往往伴隨著供熱中斷的現(xiàn)象,嚴(yán)重影響了居民的生活質(zhì)量。隨著物聯(lián)網(wǎng)技術(shù)以及無線技術(shù)的快速發(fā)展,人們提出智慧城市概念[3],城市的集中供熱監(jiān)控系統(tǒng)也朝著自動(dòng)化、科技化、智能化方向發(fā)展。為了解決傳統(tǒng)供熱系統(tǒng)存在的問題與不足,需要采用先進(jìn)的科學(xué)技術(shù)對(duì)集中供熱系統(tǒng)進(jìn)行改造和提升。勞拉(long rang,Lora)技術(shù)是一種基于線性Chirp擴(kuò)頻調(diào)制和前向糾錯(cuò)編碼技術(shù)的新興廣域網(wǎng)技術(shù)[1],具有功耗低、傳輸距離遠(yuǎn)的特點(diǎn),大大提升了接收端識(shí)別信號(hào)的靈敏度和信噪比(signal to noise ratio,SNR),保證了信號(hào)傳輸?shù)聂敯粜院涂垢蓴_性。Lora技術(shù)對(duì)建筑物也具有更強(qiáng)的穿透能力,解決了某些地下管網(wǎng)或者地下室因信號(hào)差難以傳輸數(shù)據(jù)的問題。
本文選用Lora低功耗廣域網(wǎng)技術(shù)和上位機(jī)軟件對(duì)集中供熱系統(tǒng)的熱源、換熱站、管網(wǎng)和熱用戶的主要運(yùn)行參數(shù)、管網(wǎng)信息、設(shè)備運(yùn)行狀況進(jìn)行動(dòng)態(tài)監(jiān)測(cè),從而優(yōu)化熱源的調(diào)度,保障供熱過程的安全、高效運(yùn)行。
城市供熱監(jiān)控系統(tǒng)總體由傳感器節(jié)點(diǎn)、網(wǎng)關(guān)、網(wǎng)絡(luò)服務(wù)器和PC軟件四部分構(gòu)成。Lora模塊與各類傳感器、執(zhí)行器相連,采集供熱一次網(wǎng)和二次網(wǎng)的壓力、流量、熱水溫度以及泵和閥門運(yùn)行狀態(tài)等數(shù)據(jù),經(jīng)微控制單元處理后經(jīng)無線收發(fā)器調(diào)制擴(kuò)頻發(fā)送給網(wǎng)關(guān)。網(wǎng)關(guān)對(duì)其匯總解調(diào),并將其上傳給網(wǎng)絡(luò)服務(wù)器和上位機(jī)。網(wǎng)關(guān)與終端之間遵循Lorawan協(xié)議。數(shù)據(jù)傳輸過程中,數(shù)據(jù)流通過網(wǎng)絡(luò)會(huì)話密鑰(NwkSkey)和應(yīng)用中斷密鑰(AppSkey)來保證數(shù)據(jù)完整性。NwkSkey在終端設(shè)備與網(wǎng)絡(luò)服務(wù)器之間共享,用于加密和解密應(yīng)用程序數(shù)據(jù)。
系統(tǒng)總體設(shè)計(jì)如圖1所示。
圖1 系統(tǒng)總體設(shè)計(jì)圖
傳感器節(jié)點(diǎn)模塊由溫度傳感器、壓力傳感器、流量傳感器以及Lora終端F8L10T組成。F8L10T內(nèi)置高性能工業(yè)級(jí)芯片和無線收發(fā)器,支持速率自適應(yīng)(adaptive ddate rate,ADR)算法、多級(jí)休眠和喚醒模式,最大限度降低功耗、延長電池壽命。模塊提供5路I/O口,將I/O口配置成模擬量輸入,可實(shí)現(xiàn)A/D采集功能。F8L10T作為一種嵌入式無線終端,內(nèi)部結(jié)構(gòu)按模塊可劃分為微處理器、電源管理模塊、射頻模塊、UART轉(zhuǎn)換模塊、內(nèi)存模塊及周邊電路。
2.1.1 電源管理模塊
Lora模塊由于使用較低的發(fā)射速率和定時(shí)喚醒模式,具有很低的功耗??紤]到本文供熱系統(tǒng)中的Lora設(shè)備要大多放在無法插座供電的供熱設(shè)備上,因而系統(tǒng)采用9 V的鋰電池對(duì)其供電。模塊芯片工作電壓為3.3 V。為確保電源供電穩(wěn)定、可靠且無噪聲,在電源的輸入端設(shè)計(jì)了一個(gè)線性穩(wěn)壓器。它采用AP2139AK-3.3TRG1貼片,具有輸出電壓穩(wěn)定、低輸出波紋、低噪聲的特點(diǎn)。降壓電路如圖2所示。
圖2 降壓電路
2.1.2 射頻模塊
射頻模塊采用CMT2380F32超低功耗射頻收發(fā)器,使用擴(kuò)頻調(diào)制和前向糾錯(cuò)技術(shù)。與傳統(tǒng)的頻移鍵控(frequency shift keying,FSK)、開關(guān)鍵控(on off keying,OOK)調(diào)制技術(shù)相比,Lora擴(kuò)大了無線通信鏈路的覆蓋范圍,實(shí)現(xiàn)了遠(yuǎn)距離無線傳輸,提高了鏈路的魯棒性。CMT2380F32支持高達(dá)+20 dBm的發(fā)射功率及-121 dBm的接收靈敏度,集成了豐富的外設(shè),支持標(biāo)準(zhǔn)的UART、I2C和SPI接口,并支持多種數(shù)據(jù)包格式和編解碼方式、至多64位 Tx/Rx FIFO及高精度RSSI和多通道輸入12位ADC等。射頻模塊如圖3所示。
圖3 射頻模塊
圖3中,AS179為射頻開關(guān)。當(dāng)管腳A使能高電平、管腳B使能低電平時(shí),RF2打開進(jìn)入接收模式,天線感應(yīng)進(jìn)來的射頻信號(hào)。經(jīng)π型電路處理以后,通過正交混頻電路變頻至中頻,由鏡像抑制濾波器濾波,限幅放大器進(jìn)一步放大后送入數(shù)字域作數(shù)字解調(diào)處理。當(dāng)電平B高A低時(shí),調(diào)制數(shù)據(jù)由一個(gè)高效的單端功率放大器通過RFO管腳發(fā)射。輸出功率可以通過寄存器讀寫。
2.1.3 硬件復(fù)位
MCU控制三極管復(fù)位電路如圖4所示。
圖4 MCU控制三極管復(fù)位電路
由于工作環(huán)境復(fù)雜、工作時(shí)間長,模塊存在死機(jī)、假連接等異常狀況。出現(xiàn)異常時(shí)如何自動(dòng)恢復(fù),在設(shè)計(jì)模塊時(shí)必須充分考慮。F8L10T默認(rèn)上電立即啟動(dòng),沒有開機(jī)和關(guān)機(jī)引腳,但是提供一個(gè)硬件復(fù)位管腳,數(shù)字輸入,低電平有效。由于模塊采用鋰電池供電,所以系統(tǒng)采用MCU控制RESET腳(復(fù)位)為低電平200 ms,使模塊硬復(fù)位,類似于處理器硬復(fù)位。
網(wǎng)關(guān)選用內(nèi)置32位CPU系統(tǒng)和Lora通信模塊的F8926-L物聯(lián)網(wǎng)無線通信路由器。該網(wǎng)關(guān)配置有以太網(wǎng)接口模塊、交換機(jī)模塊、WiFi模塊以及蜂窩無線模塊,具有強(qiáng)大的數(shù)據(jù)處理和協(xié)議轉(zhuǎn)換功能。F8926-L網(wǎng)關(guān)數(shù)據(jù)接收靈敏度可達(dá)到-140 dBm,無論發(fā)射端是否使用同一頻率發(fā)射數(shù)據(jù),只要不同的終端使用不同的擴(kuò)頻碼,網(wǎng)關(guān)便可輕易識(shí)別,從而保證數(shù)據(jù)接收不收影響。這使得F8926-L網(wǎng)關(guān)具有較大的網(wǎng)絡(luò)容量,滿足了供熱管網(wǎng)覆蓋面積廣、監(jiān)測(cè)點(diǎn)多的要求。
系統(tǒng)中節(jié)點(diǎn)坐標(biāo)要寫入數(shù)據(jù)庫中,因此要收集節(jié)點(diǎn)坐標(biāo)。本文先運(yùn)用接收信號(hào)強(qiáng)度指示(received signal strength indication,RSSI)測(cè)距原理測(cè)量建立信號(hào)衰減模型[2-7],進(jìn)而測(cè)量節(jié)點(diǎn)與上位機(jī)距離,再運(yùn)用三邊定位法對(duì)其坐標(biāo)進(jìn)行定位。RSSI算法是運(yùn)用傳輸損耗來進(jìn)行測(cè)距的,傳輸損耗的計(jì)算是通過對(duì)發(fā)送功率和接收功率進(jìn)行測(cè)量后進(jìn)行計(jì)算的。該算法的優(yōu)勢(shì)在于不需要安裝額外的設(shè)備,成本小且容易實(shí)現(xiàn)。另外,Lora技術(shù)抗干擾能力及物體穿透力較強(qiáng),信號(hào)傳播中受多徑反射的影響較小,測(cè)量的結(jié)果誤差相對(duì)較小,可實(shí)現(xiàn)精準(zhǔn)定位。RSSI信號(hào)衰減模型為:
RSSI=A-10ηlog(d)+v
(1)
式中:A為常數(shù);η為路徑損耗指數(shù);d為發(fā)送端與接收端的距離;v為環(huán)境噪聲,其通常為均值為0的高斯分布隨機(jī)變量。
RSSI值距離擬合曲線如圖5所示。
圖5 RSSI值距離擬合曲線
以蘭州理工大學(xué)為例,本文設(shè)定電信大樓C513為基點(diǎn),初始坐標(biāo)為(0,0,20),每隔20 m測(cè)量多個(gè)不同位置的RSSI值,通過求取其加權(quán)平均值抵消到環(huán)境噪聲的影響。RSSI值的測(cè)量要將F8L10T模塊轉(zhuǎn)換到AT模式并顯示其信號(hào)強(qiáng)度值,通過串口工具下發(fā)相同的數(shù)據(jù)包便可得其信號(hào)衰減值。上位機(jī)與終端距離在20 m之內(nèi)時(shí),RSSI值達(dá)到峰值117,隨后隨著距離的增大,RSSI值呈現(xiàn)對(duì)數(shù)函數(shù)型衰減。當(dāng)距離值超過700時(shí),RSSI值維持在50而不隨距離增大而改變。
通過RSSI測(cè)量值散點(diǎn)圖,運(yùn)用最小二乘法擬合信號(hào)衰減模型距離曲線作為校園環(huán)境信號(hào)衰減模型:
RSSI=115-2.261log(d)
(2)
運(yùn)用均值RSSI數(shù)值測(cè)量信號(hào)距離的公式為:
(3)
根據(jù)三邊定位法,待定位節(jié)點(diǎn)收到三個(gè)不同的已知坐標(biāo)的應(yīng)用節(jié)點(diǎn)發(fā)送相同數(shù)據(jù)包,測(cè)得其接收端RSSI值。根據(jù)信號(hào)衰減模型測(cè)出距離,接著運(yùn)用三邊定位法計(jì)算節(jié)點(diǎn)坐標(biāo)。待測(cè)節(jié)點(diǎn)與3個(gè)已知錨節(jié)點(diǎn)的未知關(guān)系如式(4)所示:
(4)
式中:(X,Y,Z)為待測(cè)節(jié)點(diǎn)坐標(biāo);(X1,Y2,Z3)、(X2,Y2,Z2)、(X3,Y3,Z3)分別為3個(gè)錨節(jié)點(diǎn)坐標(biāo)數(shù)據(jù)。
化簡后,轉(zhuǎn)換為矩陣形式:
QX=B
(5)
式中:Q為3×3維矩陣;X為坐標(biāo)向量;B為3維向量。
(6)
X=[XYZ]T
(7)
(8)
則待測(cè)節(jié)點(diǎn)坐標(biāo)X=Q-1B。
無線網(wǎng)絡(luò)應(yīng)用采用低功耗操作模式,即空中喚醒模式:即使節(jié)點(diǎn)處于休眠狀態(tài),當(dāng)節(jié)點(diǎn)需要工作時(shí),也可以通過無線方式直接喚醒該節(jié)點(diǎn)??罩袉拘训幕驹硎牵簡拘寻l(fā)起端在有效數(shù)據(jù)前頭加一段較長的前導(dǎo)碼,待喚醒端的無線節(jié)點(diǎn)進(jìn)行周期性喚醒,監(jiān)聽網(wǎng)絡(luò)。一旦捕捉到前導(dǎo)碼就進(jìn)入正常的接收流程,若沒有則立即休眠,等待下一次喚醒。定時(shí)激活模式如圖6所示。
圖6 定時(shí)激活模式
數(shù)據(jù)交互流程如圖7所示。
圖7 數(shù)據(jù)交互流程圖
由于終端和網(wǎng)關(guān)共享32個(gè)信道,且均遵循Lorawan協(xié)議,所以終端通信模塊與網(wǎng)關(guān)通信模塊設(shè)計(jì)近似。這就為定時(shí)手法收發(fā)提供了硬件基礎(chǔ)。網(wǎng)關(guān)周期性發(fā)送前導(dǎo)碼,終端周期性地打開接收窗口,監(jiān)聽到前導(dǎo)碼后,解析下行鏈路幀地址與終端設(shè)備地址是否匹配、有效信息是否完整,確定無誤后開始信道檢查、發(fā)送數(shù)據(jù)。網(wǎng)關(guān)承擔(dān)網(wǎng)絡(luò)中樞的功能,將終端發(fā)送的數(shù)據(jù)打包封裝傳輸給上位機(jī)監(jiān)控軟件反映終端管網(wǎng)系統(tǒng)參數(shù),并將其傳輸?shù)皆品?wù)器進(jìn)行數(shù)據(jù)備份。管理人員根據(jù)系統(tǒng)參數(shù)進(jìn)行反饋操作,下發(fā)的數(shù)據(jù)包由網(wǎng)關(guān)解析為感知層協(xié)議能夠識(shí)別的控制指令再下發(fā)給終端,完成一次完整的數(shù)據(jù)交互。
網(wǎng)關(guān)和主機(jī)通過RS-485相連,網(wǎng)關(guān)接收傳感器節(jié)點(diǎn)發(fā)送的采集數(shù)據(jù),并通過RS-485串行總線實(shí)時(shí)發(fā)給主控機(jī)。上位機(jī)程序收集供熱系統(tǒng)溫度、流量、壓力等信息,存儲(chǔ)于數(shù)據(jù)庫系統(tǒng)中。在監(jiān)控界面,可以實(shí)現(xiàn)歷史曲線、報(bào)表查詢、報(bào)警顯示等功能。一旦某項(xiàng)數(shù)據(jù)超出閾值,上位機(jī)程序會(huì)進(jìn)行蜂鳴器報(bào)警,并以短信等方式通知管理人員,以便管理人員實(shí)時(shí)作出決策,調(diào)度人力物力及時(shí)排除故障,防止意外事故的發(fā)生。
考慮到溫度、壓力、流量等采集信號(hào)均為低頻信號(hào)且Lora模塊模擬量采集口均接收0~5 V的電壓信號(hào),本文利用正弦波波表采用單片機(jī)控制程序來控制PCF8591芯片,使其輸出一個(gè)正弦波來模擬采集信號(hào)。PCF8591是一個(gè)單電源。低功耗的8位CMOS數(shù)據(jù)采集元件, AIN0~3為4路模擬量輸入,AOUT用于模擬量輸出,AO、A1、A2用于編程硬件地址,單片機(jī)通過I2C總線發(fā)送3個(gè)字節(jié)與PCF8591進(jìn)行通信。第一個(gè)字節(jié)與EEPROM類似為器件地址字節(jié),前七位代表地址,最后一位為讀/寫方向。第二個(gè)字節(jié)為控制字節(jié),用于控制PCF5891的功能,這一字節(jié)第6位為D/A使能位,設(shè)置為1以實(shí)現(xiàn)模擬電壓輸出功能,第4位和第5位可將PCF8591的4路模擬輸入配置為單端模式或差分模式。第三個(gè)字節(jié)為D/A數(shù)據(jù)寄存器字節(jié),表示模擬輸出的電壓值。由于信號(hào)為低頻信號(hào),程序源碼中選取了32個(gè)點(diǎn)建立了正弦波表,定時(shí)器計(jì)數(shù)頻率設(shè)定為1 Hz。核心控制程序如下:
Void main()
{EA=1; ConfigTimer0(1);
pWave=SinWave; SetWaveFreq=(0.03125) }
Void SetDACOut(unsigned char val)
{
I2C Start();
If(!I2C Write(0x48<<1))
{I2C Stop(); return();}
I2C Write(0x40);
I2C Write(val);
I2C Stop();
}
Vref為基準(zhǔn)源,用杜邦線將Vref與外圍J17雙排插針上的+5 V CC短接,可以產(chǎn)生一個(gè)+5 V的基準(zhǔn)電壓,再將AOUT端口和GND插針分別接在F8L10T的I/O口和GND口便可實(shí)現(xiàn)信號(hào)的采集。報(bào)警表示當(dāng)系統(tǒng)中某些量的值超過所規(guī)定的臨界值時(shí),系統(tǒng)自動(dòng)生成相應(yīng)的警告信息,表明數(shù)量值已超限值,提醒操作人員。由于溫度、壓力和流量均為同一種類型的信號(hào),測(cè)試過程中僅建立一個(gè)iotest的數(shù)據(jù)庫變量便可驗(yàn)證整個(gè)系統(tǒng)的運(yùn)行狀況。系統(tǒng)測(cè)試時(shí),運(yùn)用單片機(jī)供給采集終端連續(xù)變化的模擬電壓信號(hào),數(shù)據(jù)庫變量iotest的報(bào)警上限值設(shè)為4.2 V,下限值設(shè)為1 V。經(jīng)測(cè)試,上位機(jī)監(jiān)控界面運(yùn)行日志中能夠?qū)崟r(shí)顯示終端設(shè)備信息、系統(tǒng)工作模式及網(wǎng)絡(luò)連接狀況。當(dāng)終端采集值超出報(bào)警閾值區(qū)間時(shí),報(bào)警窗口事項(xiàng)閃爍顯示并且蜂鳴器發(fā)出警報(bào)。云端數(shù)據(jù)庫可有效調(diào)用歷史運(yùn)行數(shù)據(jù)及歷史曲線,運(yùn)用Android客戶端也可訪問網(wǎng)絡(luò)服務(wù)器監(jiān)測(cè)供熱官網(wǎng)運(yùn)行狀況。測(cè)試證明,該系統(tǒng)不僅可以有效地采集電壓信號(hào)并實(shí)現(xiàn)報(bào)警功能[8-10],而且能夠正常存儲(chǔ)和調(diào)離數(shù)據(jù)。
本文設(shè)計(jì)并開發(fā)了基于Lora技術(shù)的城市供熱監(jiān)控系統(tǒng),從系統(tǒng)總體設(shè)計(jì)、硬件選擇、軟件開發(fā)及系統(tǒng)運(yùn)行測(cè)試4個(gè)方面對(duì)系統(tǒng)進(jìn)行綜合闡述。該系統(tǒng)克服了傳統(tǒng)無線網(wǎng)絡(luò)滲透力差和丟包率較為嚴(yán)重的缺點(diǎn),實(shí)現(xiàn)了對(duì)供熱系統(tǒng)溫度、流量、壓力參數(shù)的實(shí)時(shí)監(jiān)控及報(bào)警功能。系統(tǒng)對(duì)于合理調(diào)度熱力資源、節(jié)能減排具有重要意義。