劉旭寧,顧 輝
(海軍航空訓(xùn)練基地航材四站,山東青島 266108)
數(shù)據(jù)庫是存儲(chǔ)數(shù)據(jù)及數(shù)據(jù)間邏輯關(guān)系的集合體,通過數(shù)據(jù)庫管理系統(tǒng)可以對(duì)數(shù)據(jù)進(jìn)行建立、存取和維護(hù),并為用戶提供有效的服務(wù)[1]。數(shù)字化高速電主軸實(shí)驗(yàn)數(shù)據(jù)庫需要實(shí)時(shí)存儲(chǔ)各種實(shí)驗(yàn)信息,數(shù)據(jù)總量大,故對(duì)數(shù)據(jù)庫的選擇和管理非常重要。SQL Server 2005性能卓越、操作簡(jiǎn)單、功能強(qiáng)大且具有安全性高和性能穩(wěn)定等特點(diǎn),完全能滿足數(shù)字化高速電主軸實(shí)驗(yàn)數(shù)據(jù)庫的設(shè)計(jì)要求。
由于高速電主軸的壽命與可靠性直接決定了機(jī)床的壽命、可靠性與精度,故需對(duì)高速電主軸進(jìn)行大量的實(shí)驗(yàn)。根據(jù)實(shí)驗(yàn)種類的不同,可將電主軸的信息抽象為六類:主軸類別、主軸型號(hào)、主要技術(shù)參數(shù)、實(shí)驗(yàn)類別、試驗(yàn)時(shí)間、實(shí)驗(yàn)時(shí)長(zhǎng)。
根據(jù)上述不同分類,在SQL Server 2005數(shù)據(jù)庫管理軟件中建立各種數(shù)據(jù)表并建立他們之間的關(guān)系圖,創(chuàng)建存儲(chǔ)過程和觸發(fā)器,這樣服務(wù)器端軟件基本建立,其主要功能是錄入各種實(shí)驗(yàn)數(shù)據(jù)。數(shù)據(jù)分析軟件采用Visual C#2005建立,是整個(gè)系統(tǒng)信息管理部分,用戶可通過軟件界面,輕松查看各種實(shí)驗(yàn)數(shù)據(jù),還可分析變化趨勢(shì),生成報(bào)表等功能??傊?,數(shù)字化高速電主軸實(shí)驗(yàn)數(shù)據(jù)庫系統(tǒng)的構(gòu)建需要以下三個(gè)步驟:①電主軸實(shí)驗(yàn)數(shù)據(jù)庫的建立;②電主軸管理界面的建立;③鏈接數(shù)據(jù)源。
任何一個(gè)信息管理系統(tǒng)都必須有后臺(tái)數(shù)據(jù)庫作支持。數(shù)據(jù)庫設(shè)計(jì)的好壞不僅影響管理系統(tǒng)實(shí)現(xiàn)的難易程度,而且影響系統(tǒng)運(yùn)行期間的效率,甚至影響管理系統(tǒng)的功能能否實(shí)現(xiàn)[2]。因此,數(shù)據(jù)庫的設(shè)計(jì)是管理系統(tǒng)開發(fā)過程中的關(guān)鍵環(huán)節(jié)。
數(shù)字化高速電主軸實(shí)驗(yàn)數(shù)據(jù)庫使用SQL Server 2005來建立,經(jīng)數(shù)據(jù)庫需求分析,該系統(tǒng)應(yīng)該具有以下數(shù)據(jù)庫信息。
(1)管理員信息。包括管理員的基本信息,如用戶名、密碼等;
(2)電主軸信息。包括電主軸類別、主軸型號(hào)、主要技術(shù)參數(shù)等;
(3)實(shí)驗(yàn)類別信息。也即要進(jìn)行何種的試驗(yàn)。
(4)試驗(yàn)結(jié)果。包括試驗(yàn)時(shí)間、實(shí)驗(yàn)時(shí)長(zhǎng)等信息。
將上述信息內(nèi)容如表1所示。
表1 數(shù)據(jù)庫詳細(xì)信息表
在SQL Server 2005數(shù)據(jù)庫軟件中建立數(shù)據(jù)庫名為DatabaseInfor數(shù)據(jù)庫表,其中建立的數(shù)據(jù)庫關(guān)系圖如圖1所示。
圖1 數(shù)據(jù)庫關(guān)系圖
VC#具有友好的圖形用戶界面、面向過程的程序開發(fā)、完善而豐富的庫函數(shù)以及Internet網(wǎng)絡(luò)應(yīng)用等諸多功能,同時(shí)用VC#開發(fā)的系統(tǒng)具有容易維護(hù)和升級(jí)等特點(diǎn),所以數(shù)據(jù)庫管理軟件將采用VC#作為軟件開發(fā)平臺(tái)[3]。
數(shù)據(jù)庫管理軟件是整個(gè)系統(tǒng)的信息管理部分。用戶可通過軟件界面,輕松查看各種實(shí)驗(yàn)數(shù)據(jù)、添加數(shù)據(jù)、修改數(shù)據(jù)、刪除數(shù)據(jù),還可分析變化趨勢(shì),生成報(bào)表等功能。為了保證數(shù)據(jù)庫的安全,在管理軟件中應(yīng)添加用戶設(shè)置模塊,其主要功能是添加用戶,設(shè)置訪問權(quán)限,在用戶每次登陸時(shí)都要經(jīng)過用戶名和密碼驗(yàn)證[4]。數(shù)字化高速電主軸實(shí)驗(yàn)數(shù)據(jù)庫管理軟件框架如圖2所示。
圖2 數(shù)據(jù)庫管理軟件框架圖
在數(shù)據(jù)庫與數(shù)據(jù)庫管理軟件分別建立后,利用ADO.NET所提供的內(nèi)置對(duì)象,只需要編寫少量的代碼,就可以建立數(shù)據(jù)庫管理軟件與SQL Server 2005數(shù)據(jù)庫的數(shù)據(jù)連接并進(jìn)行數(shù)據(jù)的獲?。?-6]。
ADO.NET數(shù)據(jù)庫訪問的一般流程如下:
(1)建立Connection對(duì)象,創(chuàng)建一個(gè)數(shù)據(jù)庫連接;
(2)在建立連接的基礎(chǔ)上可以使用Command對(duì)象對(duì)數(shù)據(jù)庫發(fā)送查詢、新增、修改和刪除等命令;
(3)創(chuàng)建DataAdapter對(duì)象,從數(shù)據(jù)庫中取得數(shù)據(jù);
(4)創(chuàng)建DataSet對(duì)象,將DataAdapter對(duì)象填充到DataSet對(duì)象(數(shù)據(jù)集)中;
(5)如果需要,可以重復(fù)操作,一個(gè)DataSet對(duì)象可以容納多個(gè)數(shù)據(jù)集合;
(6)關(guān)閉數(shù)據(jù)庫;
(7)在DataSet上進(jìn)行所需要的操作。數(shù)據(jù)集的數(shù)據(jù)要輸出到窗體中,需要設(shè)定數(shù)據(jù)顯示控件的數(shù)據(jù)源為數(shù)據(jù)集。
根據(jù)上述理論,以VC#2005為開發(fā)平臺(tái),采用ADO.NET所提供的內(nèi)置對(duì)象建立管理軟件與數(shù)據(jù)庫的聯(lián)系,系統(tǒng)一共包括四個(gè)功能模塊:系統(tǒng)操作、用戶設(shè)置、參數(shù)設(shè)置、歷史數(shù)據(jù),管理軟件的主界面如圖3所示。
圖3 管理軟件的主界面視圖
(1)系統(tǒng)操作:為便于對(duì)系統(tǒng)進(jìn)行維護(hù),提高系統(tǒng)的安全性,系統(tǒng)操作主要完成數(shù)據(jù)備份和數(shù)據(jù)庫恢復(fù),以保證數(shù)據(jù)不會(huì)因系統(tǒng)出現(xiàn)意外而丟失數(shù)據(jù)。
(2)用戶設(shè)置:該功能模塊用于管理使用該系統(tǒng)的用戶,主要完成用戶定義、角色定義、權(quán)限定義、角色權(quán)限配置、修改密碼、修改用戶基本信息等子功能,結(jié)合SQL Server的安全機(jī)制,為軟件提供更加全面的安全。
(3)參數(shù)設(shè)置:主要完成系統(tǒng)配置,如連接數(shù)據(jù)庫服務(wù)器設(shè)置,對(duì)電主軸進(jìn)行編號(hào)等功能。
(4)歷史數(shù)據(jù):在該功能模塊下,用戶可以瀏覽所有試驗(yàn)數(shù)據(jù),并能按要求生成曲線圖,打印出或?qū)С鲈囼?yàn)數(shù)據(jù)的Word和Excel格式文檔。數(shù)據(jù)查詢界面如圖4所示。
圖4 數(shù)據(jù)查詢界圖
大型復(fù)雜昂貴的加工中心,一般要求有很高的精度,而電主軸又是加工中心的核心部件。在設(shè)備研制的過程中必須對(duì)試驗(yàn)樣品電主軸進(jìn)行振動(dòng)、溫升、壽命等可靠性分析,但實(shí)驗(yàn)數(shù)據(jù)異常龐大,采用人工記錄容易出錯(cuò)且效率低下。通過建立電主軸實(shí)驗(yàn)數(shù)據(jù)庫系統(tǒng),不僅能克服上述弊端,且能縮短設(shè)備研制周期,該系統(tǒng)的成功應(yīng)用,可以方便、及時(shí)、準(zhǔn)確地對(duì)數(shù)據(jù)庫進(jìn)行輸入、存儲(chǔ)、分析和管理,實(shí)現(xiàn)對(duì)實(shí)驗(yàn)數(shù)據(jù)的科學(xué)化管理。
[1]任工昌,劉麗,苗新強(qiáng).GPRS遠(yuǎn)程抄表系統(tǒng)數(shù)據(jù)庫的設(shè)計(jì)與研究[J].機(jī)械設(shè)計(jì)與制造,2010(4):66-68.
[2]劉燕,劉志.基于SQL server數(shù)據(jù)庫的工業(yè)點(diǎn)焊機(jī)控制系統(tǒng)設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2009(10):155-156.
[3]郝春強(qiáng),池同柱.Visual C#2005基礎(chǔ)與實(shí)例教程[M].北京:中國(guó)電力出版社,2007.
[4]馬慧娟,李嶺,張英梅.煤礦井下水情綜合監(jiān)控系統(tǒng)管理軟件的開發(fā)與設(shè)計(jì)[J].煤礦機(jī)械,2010(1):227-230.
[5]陳哲銜,王清陽,裴海龍.開放式數(shù)控系統(tǒng)任務(wù)管理的研究與設(shè)計(jì)[J].組合機(jī)床與自動(dòng)化加工技術(shù),2010(1):93-96.
[6]王建.基于CAN總線的礦燈管理系統(tǒng)[J].煤礦機(jī)械,2010(6):85-86.