[發明專利]一種基于RS485網絡的多組分氣體檢測裝置及方法有效
| 申請號: | 201910039660.3 | 申請日: | 2019-01-16 |
| 公開(公告)號: | CN109596684B | 公開(公告)日: | 2021-02-05 |
| 發明(設計)人: | 馬賀平;李會軍;周怡;白燁 | 申請(專利權)人: | 蘇州天地衡遙感科技有限公司 |
| 主分類號: | G01N27/26 | 分類號: | G01N27/26;G08C17/02;H04L1/00;H04L12/40;G06N3/04 |
| 代理公司: | 北京淮海知識產權代理事務所(普通合伙) 32205 | 代理人: | 張旭 |
| 地址: | 215000 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 rs485 網絡 組分 氣體 檢測 裝置 方法 | ||
1.一種基于RS485網絡的多組分氣體檢測方法,其特征在于,采用的多組分氣體檢測裝置包括8個氣體傳感器、MAX485接口模塊、MCU控制器、YL-500IL無線數傳模塊,MCU控制器的USART1接口與MAX485接口模塊連接,MCU控制器的USART2接口與YL-500IL無線數傳模塊連接,MAX485接口模塊與RS485總線連接,8個氣體傳感器并行掛載在RS485總線上;所述MAX485接口模塊中的電路采用自動收發電路,用于實現信息流的雙向傳輸;具體步驟為:
A、基于RS485搭建氣體傳感器網絡;
B、設定8個氣體傳感器的分辨率、地址及校驗碼;地面站控制系統將修改地址指令無線發送給YL-500IL無線數傳模塊,并傳遞給MCU控制器,MCU控制器接收到指令后,根據指令內容按照順序依次給各個氣體傳感器發送解鎖指令與修改數據指令,完成各個氣體傳感器的地址修改;
地面站控制系統將修改分辨率指令無線發送給YL-500IL無線數傳模塊,并傳遞給MCU控制器,MCU控制器接收到指令后,根據指令內容按照順序依次給各個氣體傳感器發送解鎖指令與修改數據指令,完成各個氣體傳感器的分辨率修改;上述各個指令的數據幀均帶有兩個字節的CRC16校驗碼;
C、進行多組分氣體檢測時,MCU控制器根據修改后的8個氣體傳感器地址,等時間間隔向MAX485模塊發送讀取數據指令,MAX485模塊采用Modbus-RTU通訊協議對8個氣體傳感器通過串口空閑中斷接收各個氣體傳感器返回的數據幀,并將數據幀傳遞給MCU控制器;最后MCU控制器將未經處理的數據通過YL-500IL無線數傳模塊發送給地面站控制系統;
D、地面站控制系統接收到數據后根據不同應用場景所選擇的不同氣體傳感器進行數據建模,然后根據所建數據模型計算得出各個傳感器測得的氣體濃度值;
E、通過卡爾曼濾波算法對步驟D中得出的數據進行濾波處理,最終得出濾波后的真實氣體濃度值。
2.根據權利要求1所述的基于RS485網絡的多組分氣體檢測方法,其特征在于,所述步驟D中選擇火災現場氣體檢測應用場景,具體的過程為:所采用的8個氣體傳感器分別為:甲烷、氨氣、一氧化碳、氯氣、苯、硫化氫、氯化氫、氟化氫;
通過線性神經網絡對各組分的氣體濃度進行建模;
設線性神經網絡算法共有3層,分別為輸入層、中間層和輸出層;輸入層分別為甲烷、氨氣、一氧化碳、氯氣、苯、硫化氫、氯化氫、氟化氫,共8個氣體傳感器的測量值,輸出層分別為甲烷、氨氣、一氧化碳、氯氣、苯、硫化氫、氯化氫、氟化氫,共8種氣體的濃度值,中間層為輸入層的調整層,該層為多維回歸線性輸入,中間層設置公式如下:
式(1)中:I滿足0≤x1+x2+L+x8≤2;x1、x2、L、x8分別為整數0的組合個數;
將上述8種氣體傳感器用變量X1,X2,L,X8代替,根據式(1),多組分氣體傳感器數據融合算法中間層設置一維矩陣:
X45×1為45×1的矩陣,分別表示甲烷、氨氣、L、氟化氫,共8種氣體的濃度測量值,中間層到輸出層之間的權值矩陣為W8×45,確定中間層與輸出層之間的權值W后,實時測量的傳感器采樣值利用線性神經網絡計算步驟得到濃度輸出;
每種氣體的標定數據分別取7組,即到78組數據,根據式(2)、(3)將標定氣體濃度、測量氣體濃度歸一化;
式中為第m個樣本神經網絡輸出、輸入歸一化值;Xim、Pm為第m個樣本第i個傳感器的輸入、輸出標定值;Xmax、Xmin,Pmax、Pmin為傳感器輸入最大、最小值,輸出最大、最小標定值;
神經網絡輸入輸出標準樣本庫:
根據8個氣體傳感器數據融合算法結構,將線性神經網絡整理成如下公式:
C8×1=W8×45X45×1 (4)
式(4)中xi(i=1,2,L,45)由上述表格中的數據根據一維矩陣X45×1計算可得;wi,j(i=1,2;j=1,2,L,45)為線性神經網絡權值;ci(i=1,2,L,8)為神經網絡對8種氣體濃度的估計值;
估計誤差為:
estim(k)=Pim-Cim(k) (5)
權值調更新:
式中:Cim(k)為第k步神經網絡第m個樣本的輸出估計值;Pim為標定點第m個樣本輸入值,也是神經網絡第i個輸出的期望輸出值;estim(k)為估計誤差,第k步神經網絡輸出估計值與期望輸出值之差;wij(k)為第k步時,第j個連接權值;ηij為學習因子;
神經網絡的學習步驟是:采用所設計的線性神經網絡,將標準樣本庫中的L、作為網絡的輸入,L、作為網絡的輸出期望值,根據式(5)、(6)訓練wi,j(i=1,2;j=1,2,L,45),權值的初始值選取(-1,1)之間的隨機數;將標準樣本庫中的輸入輸出數據循序地帶入神經網絡中,經過多次迭代更新權值,直到神經網絡輸出值的估計值誤差均方值低于設定值,此時學習過程結束;權值即為神經網絡讀數據融合系數,在學習過程中,學習因子ηij(i=1,2;j=1,2,L,45)取為變數,從0.95變到0.4;進而得到氣體濃度測量模型,其中權值矩陣已知W8×45,輸入X45×1為待測量矩陣,模型表達式如式(4);
最后,根據式(3)反歸一化,即得到真實的氣體濃度。
3.根據權利要求1所述的基于RS485網絡的多組分氣體檢測方法,其特征在于,所述步驟E的具體濾波過程為:
由于一氧化碳濃度隨時間的變化規律近似于正態分布,因此對步驟D得出的數據進行正態分布擬合:
用二階多項式對上述數據進行擬合,得出線性表達式;
SCO=at2+bt+c (8)
式中:a、b、c為根據不同應用場景得出的已知數;
根據卡爾曼濾波算法,首先需要確定線性系統的狀態差分方程和其映射出的測量方程;
Xt=AXt-1+BUt-1+Wt-1 (9)
Zt=HXt+Vt (10)
X:系統的狀態向量;
A:轉換矩陣;
U:系統輸入;
B:將輸入轉換為狀態的矩陣;
W:系統噪聲;
Z:測量值;
H:狀態變量到測量值的轉換矩陣;
V:測量噪聲
根據式(8)、(9)、(10)定義出狀態向量Xt、A、B、U:
U=[-0.0010096]
對于氣體傳感器測量值即氣體的濃度,故得到Z、H:
Z=[zk]
H=[10]
對于狀態方程中的系統噪聲W和測量噪聲V,假設服從如下多元高斯分布,并且W、V是相互獨立的;其中Q、R為噪聲變量的協方差矩陣,Q、R可以根據測量樣本統計分析得出;
p(w)~N(0,Q)
p(v)~N(0,R)
將上述模型進行卡爾曼濾波的步驟如下:
其中P是估計值與真實值xk的協方差矩陣;循環迭代多次,即獲得卡爾曼濾波后的氣體濃度值。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州天地衡遙感科技有限公司,未經蘇州天地衡遙感科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910039660.3/1.html,轉載請聲明來源鉆瓜專利網。





