国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ABC-BP模型的丹江水源地水質監(jiān)測系統設計

2021-12-22 13:18何建強韓美林
計算機測量與控制 2021年12期
關鍵詞:丹江神經網絡水質

何建強,韓美林,陳 垚

(商洛學院 電子信息與電氣工程學院,陜西 商洛 726000)

0 引言

秦嶺不僅是中國南北氣候的分界線,也是重要的生態(tài)安全屏障。它具有調節(jié)氣候、涵養(yǎng)水源、涵養(yǎng)水土、維護生物多樣性等多種功能,是中國地理和中國文明的精神和自然象征。黨中央、國務院、省委、省政府高度重視秦嶺生態(tài)環(huán)境保護。習近平總書記強調:“誰也不能破壞秦嶺的自然生態(tài)美”。保護好秦嶺生態(tài)環(huán)境不僅是落實新發(fā)展觀、建設生態(tài)文明、維護國家生態(tài)安全的必然要求,也是推進秦嶺“五新”戰(zhàn)略、促進人與自然和諧發(fā)展的重大舉措,具有重要的社會、經濟、生態(tài)、文化價值,功在當代,利在千秋[1]。

丹江發(fā)源于陜西省商洛地區(qū)西北部的秦嶺南麓,流經陜西、河南和湖北三省,流入湖北省丹江口市丹江口水庫,在此與漢江交匯[2]。丹江總長390千米,流域面積1.73萬平方千米,占漢江流域總面積的10%,是漢江最長的支流[3]。丹江不僅是“南水北調”中線工程的重要水源地,也是商洛地區(qū)經濟文化發(fā)展的核心區(qū)域,近年來,商洛市全面實施循環(huán)發(fā)展戰(zhàn)略,大力推進秦嶺地區(qū)生態(tài)環(huán)境保護,保護水源地,建設生態(tài)商洛,確?!耙唤逅┚┙颉?。但雖隨著移民搬遷工程的推進,及經濟社會的發(fā)展,越來越多的生活污水排放至丹江,直接影響丹江流域水質。目前丹江流域的水質監(jiān)測每年耗費巨大的人力、財力,并且不具備實時、智能的特點。因此,針對目前丹江流域水質監(jiān)測方面存在的問題,本文設計了一種基于ABC-BP模型的丹江水源地水質監(jiān)測系統,該系統可通過ZigBee無線傳感器網絡和4G網絡完成水質參數的采集和傳輸,通過ABC-BP預測模型,實現水質參數pH值、DO(溶解氧)值、導電率、水溫等的實時顯示和預測功能[4]。該系統的研究與設計對丹江流域水污染的治理和防控能力有一定的提高,對秦嶺地區(qū)生態(tài)環(huán)境保護以及政府的水環(huán)境監(jiān)測與治理提供有效的基礎信息和有力的技術支撐,促進了商洛市智慧城市建設。

1 系統總體方案設計

該系統主要由ZigBee終端監(jiān)測模塊、4G網絡模塊和監(jiān)測中心上位機軟件部分組成,系統總體結構如圖1所示。

圖1 丹江流域水質監(jiān)測系統總體結構圖

ZigBee終端監(jiān)測模塊主要實現pH值、DO值、導電率和水溫等水質參數的采集,該模塊主要由PH傳感器、DO傳感器、導電率傳感器、溫度傳感器、CC2530處理器、電源模塊及相應的信號調理電路構成。采集節(jié)點通過ZigBee無線傳感器網絡將采集到的水質參數傳至處理器上,再通過高速率的4G移動網絡傳輸到遠程監(jiān)測中心。為了簡化終端模塊電路,降低節(jié)點消耗的能量,采用光伏板和備用電池相結合的方式對系統供電[5]。遠程監(jiān)測中心主要對數據進行分析、存儲、處理并建立水質預測模型,實現對水質參數的預測。

2 系統關鍵技術設計及實現

2.1 數據采集節(jié)點硬件設計

終端節(jié)點主要由傳感器、信號調整電路、處理器模塊、無線通信模塊和電源模塊組成[6]。數據采集節(jié)點如圖2所示。傳感器主要實現pH值、DO、導電率、水溫等水質參數的采集,信號經op07及LM21等構成的信號調整電路處理后,與AD芯片(ADS8364)相連,實現模數轉換。 ADS8364的6個地址引腳D0~D5與CC2530的P1.0~P1.5相連,ADS8364的REST與CC2530的REST相連,由外部REST信號完成操作,保證CC2530和ADS8364時鐘的同步。利用ZigBee低功耗的優(yōu)勢,本設計采用光伏板和備用電池相結合的供電方式,通常兩節(jié)5號電池可為ZigBee模塊提供長達6個月的能量,避免斷電事故的發(fā)生。為了給CC2530提供5 V和+3.3 V電壓,通過CW7805C輸出+5 V電壓,通過ASM1117-3.3輸出+3.3 V電壓。

圖2 數據采集節(jié)點框圖

2.1.1 ZigBee模塊電路設計

CC2530芯片具有低功耗和低成本的特點,且其各方面性能優(yōu)于CC2430芯片[6],為構建功能強大的無線傳感網絡,本設計ZigBee模塊的核心芯片采用CC2530芯片。該芯片的基本電路如圖3所示,其中L1電感和C1-C8電容構成去耦電路,保證CC2530芯片具有穩(wěn)定的工作電源。

圖3 CC2530的基本電路

2.1.2 無線通信模塊設計

無線通信模塊主要是實現ZigBee模塊相互之間的控制信息交換、數據收發(fā)等無線通信,常見的無線通信天線有柱形天線和環(huán)形天線,根據不同種類的特點,本設計選擇以 PCB 板銅箔制成的環(huán)形天線,硬件電路如圖4所示,其中黑粗線為環(huán)形天線,兩端分別與CC2530芯片的RF_P和RF_N引腳相連接。

圖4 無線通信模塊硬件電路圖

2.2 網關節(jié)點硬件設計

網關節(jié)點是整個ZigBee無線網絡的核心。接收終端數據采集節(jié)點發(fā)送的pH值、DO值、導電率、水溫等數據,經處理器處理后,通過4G無線網絡傳輸至監(jiān)測中心[6]。由于整個監(jiān)測網絡中數據處理量大,網關節(jié)點數量比較少,還要執(zhí)行來自遠程監(jiān)控中心的命令信息。因此,采用基于ARM11內核的S3C6410芯片作為本設計的網關節(jié)點處理器[7],圖5為網關節(jié)點系統框圖。

圖5 網關節(jié)點系統框圖

由于S3C6410處理器內存較小,在程序運行過程中容易出現內存不足現象,因此,本系統的程序代碼采用AM29LV160D型號芯片存儲,采用HY57V641620 HG型號芯片作為擴展存儲器[6]。為了降低程序讀寫過程中的延遲時間,將程序存入擴展存儲器中執(zhí)行。擴展電路如圖6所示。圖中nSCS0是片選網絡標號,nOE是讀允許網絡標號,nSWE是寫允許網絡標號,DATA0~DATA15是輸入與輸出的數據網絡標號[6]。它們分別與S3C6410的XM1CSN0[PINL23]、XM0OEN[PINL4]、XM1WEN[PINM19]、XM0DATA0~XM0DATA15相連接[6]。

圖6 存儲器擴展電路圖

HY57V641620HG中的BA1和BA0分別與S3C6410的XM1ADDR0[PINH24]和XM1ADDR1[PINJ24]引腳相連接。行地址選通信號線nSRAS、列地址選通信號線nSCS0、寫允許信號nSWE和讀允許信號線nOE分別與S3C6410的XM1RASN[PINL44]、XM1CASN[PINL24]、XM1WEN[PINM19]和XM0OEN[PINL42]引腳相連接[6]。

3 軟件設計

3.1 數據采集節(jié)點軟件設計

數據采集節(jié)點上電開始工作后,硬件設備初始化并加入網絡。入網成功后,采集pH值、DO、導電率、水溫等數據并將數據傳輸至下個節(jié)點。此后程序開始循環(huán)調用sendDATA()函數,并進入發(fā)送信息狀態(tài)。傳輸完一次數據后,判斷是否繼續(xù)有采集任務,無采集命令時,處于休眠工作模式[8],直至下次采集任務到來時進入工作狀態(tài)。程序流程如圖7所示。

圖7 ZigBee終端信息采集節(jié)點程序流程圖

3.2 網關節(jié)點軟件設計

網關節(jié)點上電后,硬件設備和協議棧分別初始化并建立WSN網絡,在接收到終端節(jié)點發(fā)送的加入網絡信標后,判斷是否允許該節(jié)點加入網絡[9-11]。如果允許加入網絡,則為其分配網絡地址,接收傳輸的pH值、含氧量、導電率、水溫等水質參數數據,向4G模塊發(fā)送數據。若沒有收到入網信標,則調用aplFormNetwork()來建立網絡,并判定地址空間是否已滿,如果有空閑地址則自動為子節(jié)點分配16位地址,并允許其加入網絡。網關節(jié)點程序流程如圖8所示[12-14]。

圖8 網關節(jié)點程序流程圖

3.3 監(jiān)測中心軟件設計

監(jiān)測中心上位機軟件系統是在C/S模式架構下,采用JAVA語言進行編寫,選用關系型數據庫MySQL 5.7作為數據庫管理系統。系統整體架構分為3層,每一層之間是相互獨立且具有一定的聯系,從最底層到最高層分別是基礎數據層、功能服務層和用戶層。水質監(jiān)測軟件系統架構如圖9所示,可實現水質參數的實時顯示、歷史數據查詢、數據導出,數據分析和參數預警等功能[15]。

圖9 水質監(jiān)測系統架構圖

基礎數據層包括三部分。第一部分是實時數據的采集與整理;第二部分是數據存儲,將整理完畢的實時數據,存儲于MySQL 5.7數據庫中,可以永久性的使用,并定期維護;第三部分建立數據訪問接口,該接口通常稱為DAO(Date Access Object)層,即數據訪問對象。該層是必不可少的,為上一層提供操作數據的通道。

功能服務層主要有基礎數據更新模塊、實時數據展現模塊、數據清洗模塊、數據預測模塊、預測誤差分析模塊、用戶管理模塊、系統設置模塊、輔助模塊等。

用戶層是與用戶直接相關的部分。用戶層是用戶與系統進行交互的接口。用戶可以輸入相關數據或者點擊相關操作,實現需要的功能。

4 水質預測算法及優(yōu)化

4.1 BP神經網絡預測模型及實現

由于水源地水質參數復雜多樣,神經網絡具有模糊信息處理的優(yōu)點,可通過水質參數之間的模糊關系建立輸出和輸入之間的非線性模型,預測容氧量值,圖10為利用神經網絡預測水質參數的建模流程[9]。

圖10 BP神經網絡水質參數預測模型

根據實際的水質數據把溫度、PH值、DO、導電率這4個參數作為神經網絡的輸入,將DO值作為輸出。通過建模、訓練,實現對DO值的預測,并進行誤差分析。

為了提高預測數據的準確性,利用式(1)對數據進行歸一化處理,將數據轉換到[-1,1]范圍:

(1)

式(1)中,x表示采集的水質數據,y表示經過歸一化變換的之后的數據,可減小結果與實際值之間的偏差。

4.1.1 BP神經網絡建模

1)網絡結構的確定。在BP網絡模型中,確定了神經網絡的輸入和輸出之后,為使仿真誤差和網絡性能都達到最佳,隱含層神經元個數通過經驗公式(2)來確定[10],常用的公式為:

(2)

式中,n、i、o分別表示隱層神經元個數、輸入神經元個數和輸出神經元個數,m的值一般在1~10中隨機選取。

2)參數設置。根據選取的輸入參數和輸出參數值,隱含層神經元個數由公式(2)計算出為8。結果通過Sigmoid函數公式(3)映射到(0,1)之間輸入下一層。

(3)

得到如圖11所示的3層結構。

圖11 神經網絡3層結構

4.1.2 仿真分析

以DO值數據為樣本,利用丹江流域商洛市商州區(qū)段2019年11月水質實測DO值數據100組,前80組作為訓練樣本,其余為檢驗樣本。

設定BP神經網絡學習最大迭代次數為1 500次,精度為0.001。通過Matlab程序隨機產生初始的權值和閾值,logsig作為隱含層傳輸函數,purelin作為輸出層傳輸函數,采用trainglm作為訓練函數,BP神經網絡預測模型學習數據預處理[11-12]:

[p11,minp1,maxp1,t11,mint1,maxt1]=premnmx(p1,t1);

完成訓練后結果如下:

輸入層到隱層權值和閾值:

隱層到輸入層權值和閾值:

B2=[1.4794]

BP神經網絡仿真預測輸出與實際值的比較如圖12所示,由圖中可看出預測值和實際值走勢基本一致,可用來對輸出進行預測。但還存在一定的誤差,計算得最大誤差為0.05,最小誤差為0,總誤差值為0.49,平均誤差為0.025。

圖12 BP神經網絡預測值與實際值比較

4.2 ABC-BP預測模型及實現

4.2.1 ABC-BP預測模型建立

ABC-BP預測模型主要是采用ABC算法對BP神經網絡中各層的權值和閾值進行優(yōu)化,將通過ABC算法求得最優(yōu)解轉換為BP神經網絡各層的權值和閾值,提升BP神經網絡預測的精確度,使其預測輸出速度更快、更準確[13]。ABC-BP的基本流程如圖13所示。

圖13 ABC-BP 算法流程

具體步驟如下:

1)創(chuàng)建一個 BP 神經網絡;

2)對種群及算法中最大循環(huán)搜索次數MCN、limit和初始種群Ns進行初始化,Ns中所有解都為一個D維向量,該向量Xi(i=1,…,Ns)表示連接權值和閥值,維數D滿足公式(4):

D=i×n+n+n×o+o

(4)

式中,n、i和o分別表示隱層神經元、輸入神經元和輸出神經元的數量。

3)雇傭蜂按照公式(5)搜索新解,按照公式(6)求解各個解的適應度值,采用貪婪法選擇新解;

Vij=Xij+rand(-1,1)(Xij-Xkj)

(5)

(6)

式中,i和fi分別表示第i個食物源和當前目標函數值,k∈{1,2,…,Ns}和j∈{1,2,…,D}是隨機值,且k≠i。

4)跟隨蜂依據公式(7)計算收益率,按照收益率搜索新解并選擇新解,式中f(x)為適應度值。

(7)

5)對解的更新失敗次數和limit值進行比較,若limit的值小于更新失敗次數,通過公式(3)產生新解進行替換,并保存最優(yōu)解;

6)判斷循環(huán)次數(MCN)是否達到最大,若達到最大值則結束,否則返回步驟3);

7)將所得最優(yōu)解轉換為BP神經網絡各層的權值和閾值,然后對BP神經網絡進行訓練。

4.2.2 仿真分析

同樣利用丹江流域商洛市商州區(qū)段2019年11月水質實測DO值數據100組為樣本,前80組作為訓練樣本,其余數據作為檢驗樣本。

ABC-BP算法參數設置:為兼顧最優(yōu)解和算法搜索時間本文選取蜂群的數量為200,Ns=Ne=No=100。解的維數D通過公式(4)計算可得D=49,limit設定為100,最大循環(huán)次數MCN為110[14]。

得到輸入層到隱層權值閾值:

W1=

隱層到輸入層權值閾值:

B2=[3.9467e-06]

圖14是ABC-BP算法和BP算法的仿真結果,從圖中可以明顯地看出ABC-BP算法得到的仿真結果更加精確,誤差更小。計算可得,最大誤差值為0.05,誤差最小值為0,平均誤差0.013,總誤差量值為0.279。與BP神經網絡算法相比誤差減少了45.8%。圖15是ABC-BP算法和BP神經網絡算法輸出的誤差百分比,從圖中可以看出優(yōu)化后的算法大大降低了預測誤差。

圖14 ABC-BP算法和BP算法的仿真結果對比

圖15 ABC-BP算法和BP算法輸出的誤差百分比比較

5 系統測試

為驗證基于ABC-BP模型的丹江水源地水質監(jiān)測系統的可靠性,本文對丹江流域流經商洛市商州區(qū)的某段進行了數據采集、傳輸、顯示和預測等方面的測試,監(jiān)測時間為15天,數據采集和傳輸頻率為1次/小時。

測試中,CC2530的波特率設置為57 600 bps,系統測試數據監(jiān)測軟件界面如圖16所示,上位機軟件系統可以獲取數據并顯示,可進行數據可視化顯示,表明上位機軟件系統滿足設計要求。通過對測試時間段測試數據和ABC-BP算法的預測數據與有線設備人工測試的數據進行對比,數據采集、傳輸和預測誤差均在合理范圍內,由于水質參數變化相對較慢,因此對數據采集的速率的要求不高,能夠滿足在線監(jiān)測的要求。因此,基于ABC-BP模型的丹江水源地水質監(jiān)測系統軟硬件設計可行,能夠正常工作。

圖16 系統測試數據監(jiān)測界面

6 結束語

本文基于無線傳感器網絡實現了丹江流域水源地水質的在線監(jiān)測。利用ZigBee無線傳感網絡對各個水源地水質數據進行采集,通過4G移動網絡進行數據傳輸,監(jiān)測中心系統軟件實現對數據的顯示、分析、處理和預測。在完成各部分的軟硬件設計后,以丹江流域源頭商洛市商州區(qū)段作為測試點,進行了測試,該系統能夠準確地完成數據的傳輸、處理、分析、顯示和預測,并且系統運行穩(wěn)定可靠。因此,該監(jiān)測系統的設計與實現,對促進智慧商洛、生態(tài)商洛的發(fā)展,保護丹江水源地,確?!耙唤逅途┙颉本哂惺种匾膬r值。

猜你喜歡
丹江神經網絡水質
丹江藍里望故鄉(xiāng)
基于神經網絡的船舶電力系統故障診斷方法
丹江源探幽
MIV-PSO-BP神經網絡用戶熱負荷預測
基于改進Hopfield神經網絡的對地攻擊型無人機自主能力評價
商州之戀
丹江河畔那群人
三次樣條和二次刪除相輔助的WASD神經網絡與日本人口預測
水質的年輪——讀《時光的年輪》
觀水色,辨水質
岗巴县| 宁海县| 吉水县| 永顺县| 邵东县| 靖江市| 潼关县| 仪陇县| 吉林省| 青神县| 吉木萨尔县| 岗巴县| 鞍山市| 濮阳市| 江口县| 固原市| 长乐市| 五莲县| 灵山县| 武山县| 乌恰县| 乐平市| 固始县| 双牌县| 杭州市| 平泉县| 郴州市| 宝应县| 临夏县| 正阳县| 长丰县| 乌鲁木齐县| 临澧县| 焉耆| 盐边县| 慈利县| 四子王旗| 左贡县| 那曲县| 万盛区| 郁南县|