前言:想要寫出一篇引人入勝的文章?我們特意為您整理了施工企業(yè)成本數(shù)據(jù)庫建設(shè)研究范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:為了實(shí)現(xiàn)對功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)中校準(zhǔn)數(shù)據(jù)的存儲(chǔ)、查詢等功能,設(shè)計(jì)并實(shí)現(xiàn)了一套嵌入在功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)中的數(shù)據(jù)庫管理系統(tǒng)。本系統(tǒng)采用模塊化設(shè)計(jì)思想,具有占用系統(tǒng)資源少、運(yùn)行速度快等優(yōu)點(diǎn)。經(jīng)過測試,所設(shè)計(jì)的數(shù)據(jù)庫管理系統(tǒng)能夠滿足功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)工作的需要。
關(guān)鍵詞:功率傳感器;自動(dòng)校準(zhǔn);數(shù)據(jù)庫;Access;模糊查詢
引言
功率是無線電計(jì)量中的一個(gè)重要參數(shù),功率傳感器作為微波功率測量的主要設(shè)備,在射頻、微波信號測量中廣泛采用。我院基于現(xiàn)有測量設(shè)備,研發(fā)了一套功率傳感器自動(dòng)校準(zhǔn)系統(tǒng),實(shí)現(xiàn)功率傳感器的自動(dòng)校準(zhǔn)、數(shù)據(jù)存儲(chǔ)、生成證書。該校準(zhǔn)系統(tǒng)中的數(shù)據(jù)存儲(chǔ)功能使用MicrosoftAccess作為數(shù)據(jù)存儲(chǔ)的底層數(shù)據(jù)庫,以VisualStudio2010為開發(fā)平臺(tái),形成集數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)查詢等管理功能為一體的軟件系統(tǒng),[1]本文主要介紹校準(zhǔn)系統(tǒng)數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)。
1數(shù)據(jù)庫的設(shè)計(jì)
1.1功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)
功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)通過GPIB總線控制信號發(fā)生器(SMF100A)、功率傳遞標(biāo)準(zhǔn)(NRPC18)和功率計(jì)(NRP2、N1911A等)等設(shè)備,實(shí)現(xiàn)對功率傳感器的自動(dòng)校準(zhǔn)。該系統(tǒng)具有自動(dòng)化測試、數(shù)據(jù)存儲(chǔ)、計(jì)算分析和生成記錄文件等功能。
1.2數(shù)據(jù)庫需求分析和功能設(shè)計(jì)
功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)對數(shù)據(jù)庫的需求主要分為兩個(gè)方面:一是管理功率傳感器校準(zhǔn)信息和校準(zhǔn)數(shù)據(jù);二是管理功率傳感器的型號信息。功率傳感器校準(zhǔn)信息數(shù)據(jù)庫,主要分為目錄表和數(shù)據(jù)表兩種表格。目錄表中每一條信息對應(yīng)一個(gè)數(shù)據(jù)表,包含所有被檢功率傳感器的送檢單位、型號、出廠編號、生產(chǎn)廠家等基本信息,以及校準(zhǔn)環(huán)境、校準(zhǔn)時(shí)間、校準(zhǔn)證書號等校準(zhǔn)信息,是進(jìn)行數(shù)據(jù)查詢的基礎(chǔ)。數(shù)據(jù)表以被檢儀器證書號命名,每一次校準(zhǔn)操作對應(yīng)一個(gè)數(shù)據(jù)表,主要用來保存校準(zhǔn)數(shù)據(jù)和和操作記錄。功率傳感器的型號信息,主要是為自動(dòng)校準(zhǔn)系統(tǒng)提供功率傳感器的頻率測量范圍。在系統(tǒng)設(shè)計(jì)中選擇數(shù)據(jù)庫進(jìn)行信息管理,相較于將型號信息直接加到程序中,可以有效避免占用較大內(nèi)存,拖慢系統(tǒng)運(yùn)行速度的問題。作為單獨(dú)的數(shù)據(jù)庫進(jìn)行界面操作,根據(jù)需要完成查詢、添加功能,而不需要重新進(jìn)行編譯。在進(jìn)行自動(dòng)校準(zhǔn)時(shí),系統(tǒng)根據(jù)自動(dòng)讀取的被檢功率傳感器型號,從數(shù)據(jù)庫中檢索該型號的測量范圍,為頻率校準(zhǔn)點(diǎn)的設(shè)置提供依據(jù),避免出現(xiàn)校準(zhǔn)頻率點(diǎn)超出被校功率傳感器測量范圍的情況。檢測中出現(xiàn)新型號時(shí),通過操作界面的添加功能,將型號信息保存到數(shù)據(jù)庫中,完善型號庫。
2數(shù)據(jù)庫的功能與實(shí)現(xiàn)
2.1開發(fā)平臺(tái)
功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)采用VisualC++2010作為開發(fā)工具,數(shù)據(jù)庫功能的開發(fā)也使用該開發(fā)工具,與整個(gè)系統(tǒng)保持良好的兼容性。
2.1.1數(shù)據(jù)庫的選擇與設(shè)計(jì)功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)的數(shù)據(jù)庫管理,主要實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和訪問。Oracle數(shù)據(jù)庫在數(shù)據(jù)庫開發(fā)領(lǐng)域一直處于領(lǐng)先地位,系統(tǒng)可移植性好,效率高,適用于大型數(shù)據(jù)庫系統(tǒng)的開發(fā),成本較高。綜合考慮數(shù)據(jù)庫的成本和兼容性,本系統(tǒng)選擇微軟公司的Access數(shù)據(jù)庫。Access是關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),相比微軟的另一款關(guān)系數(shù)據(jù)庫管理系統(tǒng)SQLServer,Access具有強(qiáng)大的數(shù)據(jù)處理和統(tǒng)計(jì)分析能力,同時(shí)結(jié)合了數(shù)據(jù)庫引擎和圖形用戶界面的特點(diǎn),部署簡單方便、成本低,適用于小型數(shù)據(jù)庫管理系統(tǒng)的開發(fā)和使用。[2]根據(jù)數(shù)據(jù)管理需求,本系統(tǒng)建立兩個(gè)數(shù)據(jù)庫:型號信息數(shù)據(jù)庫與校準(zhǔn)信息數(shù)據(jù)庫。其中,型號信息數(shù)據(jù)庫主要功能是為自動(dòng)校準(zhǔn)工作提供被檢儀器的測量范圍,對其要求能夠?qū)崿F(xiàn)查詢、修改以及新型號信息的添加。校準(zhǔn)信息數(shù)據(jù)庫主要用于存儲(chǔ)被檢儀器的校準(zhǔn)信息,對其管理只需實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)與查詢顯示即可。
2.1.2主要功能模塊(1)數(shù)據(jù)庫訪問自動(dòng)校準(zhǔn)系統(tǒng)使用ADO(ActiveXDataObject)作為Access數(shù)據(jù)庫應(yīng)用程序開發(fā)的接口,在數(shù)據(jù)庫操作和VC程序間架起一座橋梁,同時(shí)與結(jié)構(gòu)化查詢語言SQL結(jié)合使用,實(shí)現(xiàn)用戶對數(shù)據(jù)庫的各種操作。使用ADO作為接口對數(shù)據(jù)庫的訪問主要是通過四步實(shí)現(xiàn):①初始化COM庫,引入ADO庫文件,為數(shù)據(jù)庫連接建立初始化環(huán)境;②使用Connection對象與數(shù)據(jù)庫建立連接,利用指針通過Connection對象的Open方法打開數(shù)據(jù)庫;③使用Recordset對象指針,結(jié)合SQL的SELECT語句,打開相應(yīng)數(shù)據(jù)表格,實(shí)現(xiàn)對表格的訪問;④訪問結(jié)束后,通過Close函數(shù)關(guān)閉兩個(gè)指針,退出連接,釋放資源。(2)數(shù)據(jù)存儲(chǔ)模塊數(shù)據(jù)存儲(chǔ)是自動(dòng)校準(zhǔn)系統(tǒng)數(shù)據(jù)庫的主要功能,實(shí)現(xiàn)對被校儀器基本信息和校準(zhǔn)結(jié)果的存儲(chǔ)。完成自動(dòng)校準(zhǔn)后,點(diǎn)擊工作界面菜單“保存數(shù)據(jù)”命令,數(shù)據(jù)庫中目錄表自動(dòng)添加一行,保存儀器基本信息;并創(chuàng)建一個(gè)以證書編號命名的數(shù)據(jù)表,用于存儲(chǔ)校準(zhǔn)數(shù)據(jù)。數(shù)據(jù)的存儲(chǔ)流程如圖2所示。數(shù)據(jù)存儲(chǔ)功能通過ADO對象的AddNew、Put-Collect函數(shù),結(jié)合SQL命令實(shí)現(xiàn)。AddNew函數(shù)具有添加功能,在數(shù)據(jù)表中添加空白行;PutCollect函數(shù)根據(jù)語句中的主鍵信息,將數(shù)據(jù)寫入到空白行中,實(shí)現(xiàn)一組校準(zhǔn)數(shù)據(jù)的寫入。系統(tǒng)通過循環(huán)寫入實(shí)現(xiàn)對所有校準(zhǔn)結(jié)果的保存。(3)數(shù)據(jù)查詢模塊數(shù)據(jù)查詢主模塊要完成對數(shù)據(jù)庫的訪問,根據(jù)需求查詢符合一個(gè)或者多個(gè)條件的某個(gè)或某些儀器的信息,并顯示校準(zhǔn)結(jié)果。查詢模塊主要包括兩個(gè)界面:①操作界面,用于輸入查詢條件,根據(jù)查詢條件在數(shù)據(jù)庫中檢索目標(biāo)信息;②顯示界面,用于將查詢到的結(jié)果顯示到工作界面,通過MFC列表控件實(shí)現(xiàn)。查詢功能的工作界面如圖3所示。在操作界面未輸入查詢信息時(shí),顯示目錄表中所有信息,選中某條信息,則在下方列表控件中顯示對應(yīng)數(shù)據(jù)表中的校準(zhǔn)結(jié)果。
使用條件查詢時(shí),在數(shù)據(jù)庫中檢索所有符合條件的結(jié)果并顯示儀器基本信息,選中目標(biāo)儀器則顯示校準(zhǔn)結(jié)果。設(shè)計(jì)流程如圖4所示。為使查詢功能更便捷有效,數(shù)據(jù)查詢模塊要求能夠通過輸入關(guān)鍵字實(shí)現(xiàn)模糊查詢。SQL語言常用的模糊查詢語句:like語句和instr函數(shù)。[3-4]like關(guān)鍵字查詢?yōu)橥ㄅ浞樵兎椒?,使用?”和“_”等通配符結(jié)合關(guān)鍵字實(shí)現(xiàn)查詢;instr函數(shù)是一個(gè)字符串處理函數(shù),它在Oracle/PLSQL中是返回子字符串在源字符串中的位置。通常情況下,兩種方式查詢的結(jié)果相同。但由于檢索條件通過對話框輸入,需要進(jìn)行變量傳遞,like語句查詢以‘%’開頭,在語句拼接時(shí)就會(huì)出現(xiàn)檢索條件無效的問題;而instr是一個(gè)函數(shù),可以建立函數(shù)索引,且在數(shù)據(jù)量較大時(shí),通過函數(shù)檢索效率較高。[5]因此,在本系統(tǒng)設(shè)計(jì)時(shí)選擇使用instr函數(shù)實(shí)現(xiàn)模糊查詢。(4)數(shù)據(jù)添加與修改模塊數(shù)據(jù)添加與修改功能適用于型號信息數(shù)據(jù)庫,在出現(xiàn)新型號或者型號信息需要修改時(shí),使用該功能對數(shù)據(jù)庫進(jìn)行修改,以便完善型號信息數(shù)據(jù)庫。操作界面如圖5所示,在相應(yīng)編輯框輸入型號、起始頻率和結(jié)束頻率,選擇修改或者添加按鈕,實(shí)現(xiàn)對數(shù)據(jù)庫的更改。通過“添加”按鈕增加型號信息時(shí),系統(tǒng)首先通過SELECT語句根據(jù)型號查詢數(shù)據(jù)庫中是否含有該型號信息,若已存在,則彈出對話框提醒,避免重復(fù)添加;若不存在則通過AddNew、PutCollect函數(shù)組合將型號信息添加到數(shù)據(jù)庫中。在修改型號信息時(shí),同樣根據(jù)型號查詢數(shù)據(jù)庫中是否存在該條信息,若已存在直接通過PutCollect函數(shù)將新的信息覆蓋數(shù)據(jù)庫中已有信息,實(shí)現(xiàn)修改功能。
3結(jié)束
功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)的開發(fā)實(shí)現(xiàn)了儀器的自動(dòng)化測量,提高了工作效率。MicrosoftAccess數(shù)據(jù)庫的設(shè)計(jì),作為系統(tǒng)的主要數(shù)據(jù)存儲(chǔ)模塊,操作簡單,為原始數(shù)據(jù)的長期保存提供了方便。通過實(shí)驗(yàn)室試用,本系統(tǒng)具有良好的穩(wěn)定性,能夠滿足自動(dòng)校準(zhǔn)系統(tǒng)對數(shù)據(jù)管理功能的要求。
參考文獻(xiàn)
[1]高博,胡曉林,李濤.基于LabVIEW的電學(xué)測量設(shè)備核查系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)計(jì)量,2017,27(06):27~28+42.
[2]張運(yùn)詩,仲兆準(zhǔn),鐘勝奎,謝光偉.基于VisualStudio2010的員工信息數(shù)據(jù)庫設(shè)計(jì)和實(shí)現(xiàn)[J].電腦知識與技術(shù),2013,(28):6246~6249+6252.
[3]段紅英.SQL模糊查詢的運(yùn)用分析[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2014,(14):142+144.
[4]張穎超,葉小嶺,吳士芬,陳逸菲.基于SQL的模糊查詢技術(shù)研究與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2005,22(01):113~117.
[5]李桂鳳.Access2010數(shù)據(jù)庫選擇與參數(shù)查詢功能對比及應(yīng)用[J].計(jì)算機(jī)產(chǎn)品與流通,2019,(01).
作者:鄭喜艷 張燕 趙熙 鄭開放 石佳 單位:河南省計(jì)量科學(xué)研究院