夏娟
摘 要 現在電網的運行大部分采取智能故障檢測系統實時反映運行狀態。針對于文章采用C#語言編寫、并把.NET 3層結構的設計方式融入其中,數據庫采用的是SQL Server 2005進行存儲數據進行的設計。首先對系統進行分析,然后依次對系統、數據庫、及界面進行設計,最后實現了基于.NET三層架構的智能故障檢測系統。
【關鍵詞】故障檢測 SQL Server 2005 NET三層架構
1 引言
隨著電力系統的發展傳感器的廣泛應用,輸電線路在線監測系統慢慢發展起來。管理人員依據線路中的傳輸電能運行參數,并把采集的數據進行綜合分析,從而確定設備故障的產生位置和時間,方便工作人員及時維護,這樣可以最大化降低設備損壞率提高電網的工作效率,提高管理人員的工作效率。
2 應用理論基礎
2.1 C/S和B/S運行模式的對比
C/S(Client/Server)即客戶端/服務器模式。此種模式是目前常用的雙層運行模式體系方式,它主要有前端和后端組成。其中前端主要是客戶組成,它起到前臺運行功能;后端主要是由服務器組成,起到后臺運行功能。為了滿足各客戶的要求,服務器的硬件必須具有足夠的處理能力。這是一種傳統的開放模式,對系統的開發具有一定的針對性,在使用過正中需要安裝客戶端同時需要特定軟件的支持。
B/S(Browser/Server)結構即瀏覽器/服務器模式,它是在TCP/IP協議的支持下,利用HTTP傳輸協議進行運行,客戶端利用詢問服務器以及與它連接的后端數據庫進行工作。此種運行模式主要把瀏覽器、服務器和數據庫服務器連接成一個整體,利用瀏覽器向服務器發出請求,通過服務器對數據庫管理,把處理的結果逐級傳輸到客戶端。在上面結構系統運行方式中,使用人員利用瀏覽器向各個網絡中服務器提出要求并進行分析解決,并把使用人員的需要的資料反饋給瀏覽器,所以不要從新加載客戶端。由于數據庫的詢問和應用程序運行都是在服務器上工作的,所以服務器承受了巨大的工作任務。
2.2 系統軟件的開發環境
通過比較本系統選擇的是B/S(瀏覽器/服務器)結構。以微軟開發的VisualStudio 2013為開發平臺。.NET 3層結構分別是表示層、業務邏輯層、數據訪問層,因為每一層的關系是低耦合和里面的高聚合,所以對電網故障的發現和快速解決提供有利的保障。C#語言是微軟(Microsoft)公司開發,特定用來為.NET平臺的面向對象的編程語言環境,ADO.NET在.NETFrame-work網絡中主要管理數據分析與處理,利用ADO.NET可以詢問數據庫而且可以展現對XML文件和其它數據庫的打開和詢問,是由.NET保障了ADO.NET數據庫詢問方式將用于連接SQL Server 2005數據庫。
3 系統設計
3.1 數據庫需求分析
線路傳輸故障監測系統用于檢測輸電線路上電流的數據信息、故障信息和顯示故障指示器的位置等內容。管理人員需要驗證后才能進行對系統進行工作。本系統使用SQL Server 2005數據庫存放數據。
3.2 數據庫設計
線路傳輸故障智能監測系統是信息處理系統的子系統,它的主要功能是解決數據庫相關問題的,利用SQL Server 2005的SQL Server Management Studio數據庫工具,是利用數據庫管理員sa訪問,建立系統工作的數據庫,數據庫名稱為Datasource包括5張表:數據查詢表(DataQuery)、故障指示器信息表(IndicatorManag)、SIM卡管理表(SIManag)、告警信息表(WarningMange)、登錄用戶表(Login_Table)。這幾張表所包含的數據信息在客戶端都可以查看到的。
3.3 系統的界面設計
本文研究的系統有六個界面組成:用戶登錄界面(LoginForm)為管理人員和工作人員提供互動界面,只需驗證用戶名密碼,就可以訪問本系統;主界面(MainForm)呈現的是導進系統的百度地圖,地圖中可以顯示故障指示器安裝位置,點擊可以查看線路的屬性。用戶可以按需求點擊左邊的導航條進入相應的功能模塊。另外四個界面:數據查詢(DataQuery)、故障指示器安裝信息界面(IndicatorManag)、SIM卡管理界面(SIMManage)、告警信息界面(WarningManger)用到了菜單欄、工具欄、DataGridView控件、分組框(GroupBox)、分組面板(Panel)等控件,主要實現對數據庫信息的新增、修改、刪除等功能。
4 系統三層架構的實現
4.1 實體類Model的實現
本系統中,數據庫Datasource的5張表分別轉換為DataQuery、IndicatorManag、SIManag、WarningMange、Login_Table 5個實體類。下面僅以Login_Table實體類的實現作為說明:
public class Login_Table
{ private int _Id;
public int Id
{get { return _Id; }set { _Id = value; }}
private string _User_name;
public string User_name {
get { return _User_name; }
set { _User_name = value; }
private string _Pass_world;
public string Pass_world{
get { return _Pass_world; }
set { _Pass_world = value; }}
4.2 邏輯層BLL的實現
為了提高代碼的可調用性,創建數據庫通用操作類(DBHelper.cs)完成數據庫的通用操作。主要方法有執行有參數、無參數的SQL語句等,定義了連接數據庫的字符串,創建數據庫連接,代碼如下:
string connString= @"Data Source= .;Initial Cata-log= HotelManager;uid= sa;pwd= qixi";//定義數據庫關鍵信息
在定義數據庫關鍵參數關系時也要定義用戶管理每個層的數據訪問類。
4.3 數據層DALL層的實現
本系統在業務邏輯層創建了5個數據邏輯類:數據查詢類、故障指示器安裝信息類、SIM卡管理類、告警信息類。DALL層負責數據的傳遞,實現步驟如下:
(1)DALL層在類中引用BLL層、實體層的命名空間;
(2)實例化實體對象;
(3)調用數據訪問功能;
(4)實現業務邏輯。
4.4 界面層的實現
本文研究的系統界面層必須直接調用DALL層,不是間接打開數據訪問層。每個層是利用實際數據進行傳輸,在編程時必須要考慮利用命名空間Model類、BLL層和DALL層,同時訪問相關的結構邏輯層類的方式來設計界面內容,其實就是表示層的數據綁定,與數據庫能夠確切地發生互動。展示出數據綁定后,已實現整個系統的功能。
5 結論
本文主要描述了.NET 3層結構、ADO.NET技術,重點基于B/S模式的輸電線路在線監測后臺查詢軟件的制作是將網頁技術,數據庫技術以及相應的特定應用融合在一起,利用了目前流行的的體系框架和目前的網絡信息,降低了軟件的研發成本與故障檢測成本,提高了應用范圍,由于此種技術不斷成熟,該系統一定會有很大的利用前景和發展前途。
參考文獻
[1]何天,候宗浩.基于Pet shop與Duwamish的多層架構設計與實現[J].計算機應用,2007(12).
[2]葉裴雷,宋述波.一種基于UML的軟件體系的設計與研究[J].微計算機信息,2009(25).
作者單位
安徽大學現代教育技術中心 安徽省合肥市 230601