孫媛
摘要:針對我國樓宇的特點,提出了與之適宜的樓宇煤氣監(jiān)控系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)。使用Visual Basic 開發(fā)了樓宇煤氣監(jiān)控系統(tǒng),重點討論了監(jiān)控系統(tǒng)上位機的數(shù)據(jù)管理方法。該煤氣監(jiān)控系統(tǒng)實現(xiàn)了遠程抄表、報警監(jiān)控,是一種經(jīng)濟實用的監(jiān)控系統(tǒng)管理方案,對于其他監(jiān)控系統(tǒng)也有一定的借鑒作用。
關(guān)鍵詞:監(jiān)控網(wǎng)絡(luò);數(shù)據(jù)管理;上位機; VB
中圖分類號:TP311 文獻標(biāo)識碼:B
Design and implementation of data management system of
upper computer of the gas monitoring based on VB
SUN Yuan
( Beijing Wuzi University (BWU), Beijing 101149, China.)
Abstract: A network configuration of monitoring and control system of buildings is represented based on the characteristic of buildings in china. Using Visual Basic, the paper develops a monitor system of buildings. Data management methods of the upper computer are mainly discussed. The system achieves remote meter writing and automatic alarming. Based on the aboved, a more economical solution. It can be used as reference for other monitoring system.
Keywords: monitoring network ; data management ; upper computer; VB
1系統(tǒng)網(wǎng)絡(luò)組成
安裝在樓宇公寓中的煤氣表(或天燃氣表),除了可以滿足用于常規(guī)的顯示等基本需求之外,還都重點配備了脈沖輸出單元,煤氣控制器就是通過實時采樣計數(shù)脈沖獲得表的消耗量。各煤氣控制器能夠完成煤氣的采集、存儲、調(diào)整、顯示、上傳和接收數(shù)據(jù)等以及煤氣報警等功能。[1]
將各煤氣控制器作為監(jiān)控網(wǎng)絡(luò)的節(jié)點,與上位機PC主機組成基于RS485網(wǎng)絡(luò)。標(biāo)準RS-485作為一種多點、差分數(shù)據(jù)傳輸?shù)碾姎庖?guī)范現(xiàn)已成為業(yè)界應(yīng)用最為廣泛的標(biāo)準通信接口之一[2]。這種通信接口允許在簡單的一對雙絞線上進行多點、雙向通信,同時其自身所具備的噪聲抑制能力、數(shù)據(jù)傳輸速率、電纜長度及可靠性則是其他標(biāo)準無法比擬的。但是計算機本身并未設(shè)置專用的RS-485通信口。而且,由于RS-485與RS-232的工作電平有所不同,工作方式與控制機理也有差別,若利用現(xiàn)成的串口來實現(xiàn)RS-485通信時,就需要在硬件與軟件展開進一步設(shè)計。在串口采用了RS-232/RS-485轉(zhuǎn)換卡,在煤氣控制器中將MAX487與89C52單片機串行接口的TXD(發(fā)送)與RXD(接收)相連,可將TTL電壓轉(zhuǎn)換成RS485差分電壓與上位機PC機MAX485接應(yīng),如此即完成了硬件的電平轉(zhuǎn)換功能。綜上可見,接口轉(zhuǎn)換器在單片機和上位機PC之間發(fā)揮了聯(lián)結(jié)作用,在硬件上正是研發(fā)通信的關(guān)鍵所在,系統(tǒng)結(jié)構(gòu)如圖1所示。[3]
圖1系統(tǒng)結(jié)構(gòu)組成
Fig.1 system structure
2系統(tǒng)需求分析
煤氣監(jiān)控系統(tǒng)上位機通過抄表和巡檢將樓宇抄表系統(tǒng)和報警系統(tǒng)相結(jié)合,實現(xiàn)煤氣表遠程抄收、自動計費、費用拖欠分析;報表統(tǒng)計打??;重要數(shù)據(jù)備份,數(shù)據(jù)加密;自動查詢樓宇內(nèi)所有煤氣控制器的報警狀態(tài),及時對各種報警信號做出響應(yīng),向監(jiān)控中心工作人員提供報警業(yè)主有關(guān)地址、電話等詳細信息,同時在樓宇電子地圖上顯示報警用戶區(qū)域位置以便安防人員準確及時處警。上位機系統(tǒng)管理程序由Visual Basic 6.0編制,VB6.0具有功能強大、簡便、實用、開發(fā)周期短等特點,利用VB6.0編制的人機界面直觀,操作方便。[4]
2.1數(shù)據(jù)庫需求分析
煤氣監(jiān)控系統(tǒng)所涉及到的實體是樓宇用戶中煤氣表、煤氣警的探頭;聯(lián)系用戶與控制中心的樞紐煤氣控制器;負責(zé)管理煤氣表消耗量和警情記錄的控制中心的上位機計算機。煤氣控制器的主要任務(wù)負責(zé)采集脈沖來記錄煤氣表的數(shù)據(jù)和報警記錄,并將這些數(shù)據(jù)遠傳到中央控制中心的上位機,上位機則根據(jù)傳來的信息負責(zé)打印報表和實時警情記錄。在創(chuàng)建數(shù)據(jù)庫系統(tǒng)之前,應(yīng)先將管理工作覆蓋范圍的數(shù)據(jù)信息的主要內(nèi)容引入分析、歸類處理環(huán)節(jié)以免在庫結(jié)構(gòu)建成后,因需要增加內(nèi)容而二次調(diào)整修改相應(yīng)結(jié)構(gòu),因此,在建庫之前必須明確各類數(shù)據(jù)信息的整體流向,再根據(jù)具體情況,建立包含有主要數(shù)據(jù)需求格式的數(shù)據(jù)庫。
其中,每個功能模塊都預(yù)設(shè)定制有其下隸屬的數(shù)據(jù)表記錄以及與此相關(guān)的記錄,因為在進行煤氣表消耗量和報警信息現(xiàn)場采集時主要的實體執(zhí)行者是設(shè)在各個單元中的煤氣控制器,而控制器可由其端口號和地址唯一同步表示,又每一單元也只有一個控制器,為此在采集到煤氣表消耗量和報警情況時除記錄這些基礎(chǔ)數(shù)據(jù)信息外,仍然用用戶名、以及控制器的端口和地址為主題而呈現(xiàn)結(jié)果記錄,這樣煤氣表消耗和警情就可以精確到每一單元、每一個探頭、甚至表。
2.2數(shù)據(jù)庫中數(shù)據(jù)表的分類
在建立煤氣監(jiān)控系統(tǒng)數(shù)據(jù)庫時,用到很多表來存儲數(shù)據(jù)。為了便于管理,將數(shù)據(jù)表分為以下3類。
1)一類:基本信息表。操作員根據(jù)樓宇的實際情況錄入“用戶信息表”、“控制器信息表” 、“登錄表”等。這些表是數(shù)據(jù)管理的基礎(chǔ)模式表,其他表均依據(jù)基本信息表的提供內(nèi)容而演繹生成。
2)二類:數(shù)據(jù)管理程序在運行時產(chǎn)生的臨時表。上位機的數(shù)據(jù)管理中煤氣表、報警的實時數(shù)據(jù)是經(jīng)由通信控件對煤氣控制器的巡檢而得,但是巡檢結(jié)果是原始數(shù)據(jù),因而需要提交
PC機進行判斷、處理。在判斷、處理過程中,就會生成一些臨時的表,例如內(nèi)部實時信息表等,待此次巡檢、抄表完畢將會刪除這些表。
3)三類:其他信息表。用來存儲煤氣表,報警初始化的信息;巡檢、抄表的原始數(shù)據(jù);經(jīng)過判斷、處理之后的數(shù)據(jù),用于查看、統(tǒng)計的表。
數(shù)據(jù)結(jié)構(gòu)主要由20余個表以及相關(guān)的存儲過程組成,這里僅重點給出如下表格概述。
1)用戶信息表。用于記錄用戶名、地址、電話號碼、單元電子地圖的相對位置。
2)控制器信息表。用于呈現(xiàn)控制器的名稱、端口、地址、型號、狀態(tài)。
3)登錄表。用于控制登陸的訪問權(quán)限。
4)內(nèi)部實時信息表。巡檢過程中的報警情況臨時表,在每次巡檢結(jié)束后,就把本表中的數(shù)據(jù)導(dǎo)入查看用表。
5)煤氣表初始化表。用于存儲煤氣表初始化數(shù)值。
6)控制器查詢表。 用于查詢控制器報警情況及煤氣表的讀數(shù)。
7)記錄煤氣表數(shù)據(jù)及報警情況的表。該表為查看及統(tǒng)計時的依據(jù),相應(yīng)的信息由查詢表中導(dǎo)入。[5]
2.3數(shù)據(jù)庫中典型的數(shù)據(jù)表的字段列表
編輯模塊中的用戶信息表(UseTab)字段列表如表1所示。
3窗體介紹
上位機系統(tǒng)主窗體的模塊分別由數(shù)據(jù)庫編輯、運行、查看、報表管理、系統(tǒng)管理等部分組成。其中,數(shù)據(jù)庫“編輯”模塊主要完成數(shù)據(jù)的錄入,“運行”模塊完成與用戶控制器的通信,“查看”是瀏覽在運行中得到的數(shù)據(jù),“報表管理”將煤氣等數(shù)據(jù)以報表的形式進行管理,“系統(tǒng)管理”用于管理系統(tǒng)等,主窗體MDIForm對應(yīng)的主菜單如圖2所示。
4結(jié)束語
本系統(tǒng)對數(shù)據(jù)庫的操作手段比較豐富,處理速度較快,而且具有較好的實用性。軟件結(jié)構(gòu)設(shè)計較合理、可重用性好、易于修改和調(diào)試。本系統(tǒng)在VB6.0下已經(jīng)完成了實現(xiàn),并在某些樓宇中啟動了試運行,取得了良好的效果,為同類型監(jiān)控系統(tǒng)的開發(fā)提供方法、經(jīng)驗和理論依據(jù),具有廣闊的前景前景和市場潛力。
參考文獻:
[1] 趙建領(lǐng). 51單片機開發(fā)與應(yīng)用技術(shù)詳解[M]. 北京:電子工業(yè)出版社,2009.
[2] 李朝青. 單片機原理及串行外設(shè)接口技術(shù)[M]. 北京:北京航空航天大學(xué)出版社,2008.
[3] Behrouz Forouzan. 數(shù)據(jù)通信與網(wǎng)絡(luò)[M]. 潘億,朱丹宇,譯. 北京: 機械工業(yè)出版,2001.
[4] 李罡,丁莉. Visual Basic 6.0中文版編程實例詳解[M]. 北京:電子工業(yè)出版社,2000.
[5] Curtis Smith. VB6.0數(shù)據(jù)庫編程[M]. 陳海標(biāo),譯. 北京:清華大學(xué)與西蒙出版公司,2000.