摘 要: 開發(fā)了一種基于WSN(無線傳感器網(wǎng)絡(luò))的煤礦瓦斯監(jiān)測系統(tǒng)上位機(jī)軟件,。該軟件采用Visual C#和數(shù)據(jù)庫技術(shù)進(jìn)行軟件設(shè)計(jì),,具有實(shí)時(shí)接收和發(fā)送數(shù)據(jù)、保存數(shù)據(jù),、歷史數(shù)據(jù)查詢統(tǒng)計(jì),、預(yù)警曲線顯示、數(shù)據(jù)報(bào)表打印等功能,。測試結(jié)果表明,,該瓦斯監(jiān)控軟件具有界面友好、功能完善,、精度高,、成本低及操作簡單等優(yōu)點(diǎn),能夠?qū)崟r(shí)監(jiān)控煤礦井下瓦斯?jié)舛群蜏p少事故發(fā)生率,。
關(guān)鍵詞: WSN,;瓦斯監(jiān)測系統(tǒng);上位機(jī)監(jiān)控軟件
0 引言
煤礦井下環(huán)境惡劣,,突發(fā)性事故多,,因此煤礦安全生產(chǎn)一直備受國家和人民關(guān)注。傳統(tǒng)的瓦斯監(jiān)測系統(tǒng)以工業(yè)總線為基礎(chǔ),,通過光纖或電纜來連接傳感器節(jié)點(diǎn),,這種有線傳輸網(wǎng)絡(luò)有布線復(fù)雜、勞動(dòng)強(qiáng)度高,、維護(hù)困難,、容易出現(xiàn)盲點(diǎn)等缺點(diǎn),因此,,WSN應(yīng)用于煤礦瓦斯監(jiān)測系統(tǒng)就顯得尤為重要[1],。
本設(shè)計(jì)在前期工作的基礎(chǔ)上,設(shè)計(jì)瓦斯監(jiān)測系統(tǒng)上位機(jī)軟件,。在該軟件的驅(qū)動(dòng)下,,基于WSN的瓦斯監(jiān)測系統(tǒng)可以實(shí)時(shí)采集監(jiān)測區(qū)域的瓦斯?jié)舛鹊刃畔ⅲ⒉杉降男畔?shí)時(shí)發(fā)送至上位機(jī),,然后上位機(jī)再進(jìn)行處理,,可以實(shí)現(xiàn)存儲(chǔ)、報(bào)警,、顯示和打印等功能,。
1 瓦斯監(jiān)控系統(tǒng)
基于WSN的瓦斯監(jiān)控系統(tǒng)主要由路由節(jié)點(diǎn)、終端節(jié)點(diǎn),、協(xié)調(diào)器,、傳輸接口和監(jiān)控中心組成[2]。其中基于ZigBee技術(shù)的WSN可以實(shí)現(xiàn)瓦斯監(jiān)測數(shù)據(jù)無線傳輸,,通過RS-485電纜實(shí)時(shí)將井下瓦斯監(jiān)測數(shù)據(jù)上傳至上位機(jī),,進(jìn)而由上位機(jī)實(shí)現(xiàn)對(duì)數(shù)據(jù)的解析、處理,、存儲(chǔ),、查詢、統(tǒng)計(jì),、圖表繪制等功能,。路由節(jié)點(diǎn)和終端節(jié)點(diǎn)均由固定節(jié)點(diǎn)和移動(dòng)節(jié)點(diǎn)組成,而監(jiān)控分站作為協(xié)調(diào)器,。系統(tǒng)的結(jié)構(gòu)圖如圖1所示,。
2 上位機(jī)監(jiān)控軟件設(shè)計(jì)
2.1 功能需求
根據(jù)瓦斯監(jiān)測系統(tǒng)的特點(diǎn),上位機(jī)軟件需要對(duì)接收到的數(shù)據(jù)進(jìn)行處理,、保存并實(shí)時(shí)顯示,,在瓦斯?jié)舛瘸迺r(shí)報(bào)警,還要滿足用戶查詢數(shù)據(jù)及曲線,、打印,、向下位機(jī)發(fā)送指令的功能[3]。除此之外,,還需對(duì)軟件狀態(tài)及操作等進(jìn)行記錄和顯示,。
2.2 開發(fā)環(huán)境
上位機(jī)以Microsoft Visual Studio 2010集成開發(fā)環(huán)境為軟件開發(fā)環(huán)境,以C#作為開發(fā)語言,,采用SQL Server 2008作為軟件后臺(tái)數(shù)據(jù)庫,。
2.3 軟件結(jié)構(gòu)
該軟件是以數(shù)據(jù)上傳和發(fā)送控制命令為基礎(chǔ)實(shí)現(xiàn)各功能的。如圖2所示,,軟件具有登錄注冊(cè)界面,,而監(jiān)控軟件主界面上分為菜單欄和串口通信模塊,串口通信模塊可以實(shí)現(xiàn)與下位機(jī)的通信,。菜單欄的功能模塊主要分為四類,,分別是配置、數(shù)據(jù)存儲(chǔ),、顯示和打印,。
(1)配置功能主要包括初始化,、參數(shù)配置和控制命令,。其中參數(shù)設(shè)置是指對(duì)系統(tǒng)各類參數(shù)的設(shè)置與修改,。控制命令是指向下位機(jī)發(fā)送指令,。
?。?)顯示功能主要分為列表顯示與曲線顯示。列表顯示主要包括模擬量數(shù)據(jù),、開關(guān)量狀態(tài),。報(bào)警信息的顯示是指當(dāng)瓦斯監(jiān)測值超限或者出現(xiàn)各種故障狀態(tài)信息時(shí),煤礦瓦斯監(jiān)控系統(tǒng)會(huì)產(chǎn)生報(bào)警信號(hào),。曲線顯示分為歷史曲線和實(shí)時(shí)曲線,。曲線顯示就是將瓦斯?jié)舛劝凑諘r(shí)間變化用曲線直觀地顯示。
?。?)存儲(chǔ),。監(jiān)控軟件的存儲(chǔ)部分包含多種類型的記錄信息的存儲(chǔ),主要有實(shí)時(shí)數(shù)據(jù)的記錄,、統(tǒng)計(jì)值與處理值的記錄,、報(bào)警信息和故障信息的記錄[4]。
?。?)打印,。監(jiān)控軟件的打印部分主要包含三種功能:日?qǐng)?bào)表、統(tǒng)計(jì)值記錄查詢報(bào)表和定時(shí)打印,。日?qǐng)?bào)表主要包含瓦斯?jié)舛热請(qǐng)?bào)表,、瓦斯?jié)舛葓?bào)警日?qǐng)?bào)表和監(jiān)控設(shè)備故障日(班)報(bào)表。統(tǒng)計(jì)值記錄查詢報(bào)表是設(shè)置查詢條件生成的報(bào)表信息,。查詢條件主要包括查詢起止時(shí)間,、持續(xù)時(shí)間,主要統(tǒng)計(jì)起始時(shí)間,、最大值,、最大值時(shí)刻、平均值,、超限次數(shù)等數(shù)據(jù),。定時(shí)打印是指按照設(shè)定好的時(shí)間范圍對(duì)所選擇的報(bào)表信息進(jìn)行自動(dòng)打印。
2.4 界面設(shè)計(jì)
根據(jù)上位機(jī)需要實(shí)現(xiàn)的功能,,將界面分為主界面,、數(shù)據(jù)查詢和處理界面、瓦斯?jié)舛瘸揞A(yù)警界面,、曲線顯示界面,、報(bào)表打印界面和用戶管理界面等。主界面用于配置串口,、接收數(shù)據(jù),、存儲(chǔ)數(shù)據(jù)和發(fā)送數(shù)據(jù)等,;預(yù)警界面主要在瓦斯?jié)舛瘸^限定值時(shí)進(jìn)行報(bào)警,并顯示出預(yù)警曲線,;曲線顯示用于顯示歷史濃度曲線和實(shí)時(shí)濃度曲線,;報(bào)表打印即生成指定報(bào)表進(jìn)行打印,;用戶管理界面可以對(duì)用戶進(jìn)行添加、修改,、刪除,、權(quán)限設(shè)置操作。圖3所示為本軟件的主界面,。
2.5 上位機(jī)與下位機(jī)之間的數(shù)據(jù)通信
實(shí)現(xiàn)上位機(jī)與下位機(jī)之間的數(shù)據(jù)通信是此上位機(jī)軟件的基礎(chǔ),。本系統(tǒng)使用RS-485電纜將上位機(jī)與協(xié)調(diào)節(jié)點(diǎn)的串口相連,并采用Modbus RTU通信協(xié)議[5],。
相對(duì)于ASCII模式,,RTU模式表達(dá)相同的信息需要較少的位數(shù),且在相同通信速率下具有更大的數(shù)據(jù)流量,,信息傳輸為異步方式,,并以字節(jié)為單位。在上位機(jī)與下位機(jī)之間傳遞的通信報(bào)文的信息幀格式如表1所示,。
當(dāng)上位機(jī)沒有向下位機(jī)發(fā)送控制命令時(shí),,下位機(jī)需要實(shí)時(shí)向上位機(jī)發(fā)送數(shù)據(jù),即各地點(diǎn)的瓦斯?jié)舛萚6],,如表1所示,,地址位即為監(jiān)測系統(tǒng)的測點(diǎn)號(hào),數(shù)據(jù)內(nèi)容表示上傳的瓦斯?jié)舛鹊臅r(shí)間及濃度值,,經(jīng)過軟件處理接收到的數(shù)據(jù)分別保存測點(diǎn)號(hào),、時(shí)間和瓦斯?jié)舛戎怠?/p>
當(dāng)上位機(jī)有指令發(fā)送給下位機(jī)時(shí),發(fā)送的數(shù)據(jù)中,,地址位為要求下位機(jī)發(fā)送過來瓦斯?jié)舛鹊臏y點(diǎn)號(hào),,數(shù)據(jù)內(nèi)容表示要求發(fā)送的時(shí)間區(qū)間,如果CRC校驗(yàn)無誤,,則下位機(jī)中斷向上位機(jī)實(shí)時(shí)傳送數(shù)據(jù),,轉(zhuǎn)而執(zhí)行上位機(jī)的指令,把執(zhí)行結(jié)果返送給主機(jī),,待執(zhí)行完畢后,,再繼續(xù)之前的進(jìn)程。
3 測試結(jié)果
以串口通信為例,,如圖4所示,,軟件可以實(shí)時(shí)地接收數(shù)據(jù),,且對(duì)數(shù)據(jù)進(jìn)行處理,地址位為PANID,,數(shù)據(jù)位共4 B,,分別是日期、時(shí)間和數(shù)據(jù)(即瓦斯?jié)舛龋?;也可以向下位機(jī)發(fā)送控制命令,,來實(shí)現(xiàn)該軟件所需的功能。
4 結(jié)論
該上位機(jī)監(jiān)控軟件可以實(shí)現(xiàn)對(duì)井下瓦斯?jié)舛葦?shù)據(jù)的實(shí)時(shí)接收,、存儲(chǔ)和顯示,;并能根據(jù)需要向下位機(jī)發(fā)送控制命令,從而更好地處理問題,。采用Modbus RTU通信協(xié)議提高了串口通信的可靠性和穩(wěn)定性,,克服了抗干擾性差的的缺點(diǎn)。同時(shí)該軟件具有實(shí)時(shí)曲線顯示,、歷史曲線顯示,、實(shí)時(shí)和歷史數(shù)據(jù)查詢、預(yù)警曲線顯示,、報(bào)表打印等功能,。該監(jiān)控軟件可以及時(shí)發(fā)現(xiàn)并解決井下安全問題,為基于WSN的瓦斯監(jiān)測系統(tǒng)提供了可靠的技術(shù)方案,。
參考文獻(xiàn)
[1] Wang Jian,, Wang Peng. Based on wireless sensor network coal mine gas monitoring system[C]. 2012 International Conference on Industrial Control and Electronics Engineering (ICICEE), IEEE,, 2012.
[2] Wen Dongge,, Yue Xin, Ma Haifeng,, et al. Design of coal mine gas monitoring system based on ZigBee[C]. 2011 International Conference on Future Computer Science and Education(ICFCSE),, IEEE, 2011.
[3] 王清華,,王振翀,,張冰.基于無線傳感器網(wǎng)絡(luò)的煤礦瓦斯監(jiān)測系統(tǒng)軟件的研究[J].煤礦機(jī)械,2012(12):232-234.
[4] 魏寧,,尹洪勝,,劉秀榮,等.基于無線傳感器網(wǎng)絡(luò)的煤礦瓦斯監(jiān)測系統(tǒng)的設(shè)計(jì)[J].工礦自動(dòng)化,,2010(1):70-73.
[5] 郭永吉,,王興貴.Modbus RTU模式下工控機(jī)與智能儀表的通訊實(shí)現(xiàn)[J].甘肅科學(xué)學(xué)報(bào),2008,20(1):102-104.
[6] 李英奇,,吳桂初.Modbus-Modbus TCP/IP的網(wǎng)關(guān)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,,2013,32(10):48-50,,53.