基于 B/S 模式的數(shù)控機(jī)床網(wǎng)絡(luò)測控系統(tǒng)軟件設(shè)計(jì)
下位測控機(jī)的數(shù)據(jù)采集、顯示及存儲回放軟件設(shè)計(jì) 下位機(jī)測控服務(wù)器系統(tǒng)軟件包括接口儀器驅(qū)動(dòng)軟件和應(yīng)用軟件兩部分。其中,接口儀器驅(qū)動(dòng)程序是完成對某一特定儀器的控制與通信的軟件程序集合,是連接上層易用軟件和底層軟件的紐帶和橋梁。每個(gè)儀器模塊都有自己的軟件驅(qū)動(dòng)程序,儀器廠商將其以源碼的形式提供給用戶,用戶在應(yīng)用程序中調(diào)用儀器驅(qū)動(dòng)程序。應(yīng)用程序包含兩方面的程序:實(shí)現(xiàn)虛擬面板功能的前面板軟件程序和定義測試功能的流程圖軟件程序。它主要功能是給用戶提供操作儀器、顯示數(shù)據(jù)的人機(jī)接口;實(shí)現(xiàn)數(shù)據(jù)的采集、分析處理、顯示、存儲等;并將需要在客戶端顯示的數(shù)據(jù)發(fā)送到Web服務(wù)器,同時(shí)從Web服務(wù)器接收來自遠(yuǎn)程客戶端的控制命令。 1.1.1數(shù)控機(jī)床測控軟件的結(jié)構(gòu)化設(shè)計(jì) 本文中數(shù)控機(jī)床數(shù)據(jù)采集系統(tǒng)的軟件基本結(jié)構(gòu)包括數(shù)據(jù)采集、數(shù)據(jù)處理、存儲回放及用戶界面等幾部分。測控軟件設(shè)計(jì)時(shí)可以采用面向?qū)ο蟮脑O(shè)計(jì)分析方法,通過仔細(xì)地規(guī)劃和設(shè)計(jì),使程序結(jié)構(gòu)清晰,便于維護(hù)、修改、增加。軟件程序結(jié)構(gòu)圖如圖1所示。 結(jié)構(gòu)化的程序主要包含以下功能模塊(結(jié)構(gòu)圖見上圖1所示): ①A/D通道校準(zhǔn)模塊 采集之前對采集通道校準(zhǔn)以保證A/D通道的準(zhǔn)確度。 ②電流采集模塊 電流采集模塊采用AD轉(zhuǎn)換器的數(shù)據(jù)采集卡,試驗(yàn)中采集數(shù)控機(jī)床的消耗電流。 RRBDP軟件對采集到的數(shù)據(jù)進(jìn)行各種形式的濾波,曲線擬合、平滑等處理。 ③傳感器校準(zhǔn)模塊 對電流傳感器做標(biāo)定以確保傳感器輸出信號盡可能接近真實(shí)值。 ④激光干涉儀數(shù)據(jù)模塊 通過USB接口通訊,獲取干涉儀采集的長度并經(jīng)過分析后送往其它模塊。 ?、輸z像頭數(shù)據(jù)采集及顯示模塊 該模塊負(fù)責(zé)完成視頻采集顯示和分析數(shù)控機(jī)床運(yùn)動(dòng)情況。 ?、逌y試數(shù)據(jù)分析模塊 對測試數(shù)據(jù)進(jìn)行分析、匹配,建立數(shù)學(xué)模型并送往曲線顯示模塊。 ?、邔?shí)時(shí)曲線顯示模塊 實(shí)時(shí)顯示消耗電流、定位精度以及坐標(biāo)的關(guān)系曲線,采用具有很好的視覺效果的LabVIEW中的XY圖來繪制曲線控件驅(qū)動(dòng)。波形直觀、精細(xì)、易于觀察。 ⑧波形分析模塊 對關(guān)系曲線(即波形)依據(jù)需要研究的分項(xiàng)進(jìn)行分析,將分析結(jié)果及波形做為輸出數(shù)據(jù)以特定文件格式存儲起來。 ?、釡y試日志記錄配置模塊 記錄試驗(yàn)數(shù)控機(jī)床的信息、試驗(yàn)次數(shù)、試驗(yàn)日期、試驗(yàn)人員以及輸出數(shù)據(jù)文件目錄。 ⑩歷史曲線回放模塊及歷史數(shù)據(jù) 導(dǎo)出模塊載入以前試驗(yàn)后生成的數(shù)據(jù)和波形文件并回放出來,確保以前的試驗(yàn)結(jié)果可追溯。 1.1.2數(shù)據(jù)顯示與存儲回放程序的設(shè)計(jì) 本章數(shù)據(jù)顯示與存儲回放程序設(shè)計(jì)所需的基礎(chǔ)知識包括:數(shù)控編程、數(shù)控機(jī)床操作、電路基礎(chǔ)、VC++、C++、Web Service、LabVIEW和測試儀器等。基于以上程序開發(fā)結(jié)構(gòu)和基礎(chǔ),設(shè)計(jì)的各功能模塊顯示界面如下圖2所示: 圖1.2是LabVIEW數(shù)據(jù)實(shí)時(shí)采集顯示界面,軟件的操作過程說明如下: ?。?)AD通道校準(zhǔn)是指對采集板卡的計(jì)量校準(zhǔn),如果測得模擬量沒有在精度要求范圍內(nèi),軟件有自己校準(zhǔn)功能。 ?。?)參數(shù)設(shè)置界面是按照用戶的要求來配置一些參數(shù),比如說位移的起始點(diǎn)、終止點(diǎn)、步長等參數(shù)。 (3)測試界面如上圖1.2所示,也是軟件的主界面,但選擇好測試方式后,(硬件部分連接好的情況下)就開始了實(shí)時(shí)采集與顯示。對于采集的數(shù)據(jù),測試完畢后,點(diǎn)擊保存可以保存到Excel表中,也可以保存成特定格式的數(shù)據(jù),在將此數(shù)據(jù)倒到分析軟件中,進(jìn)行無償?shù)姆治?,從而可以進(jìn)行相應(yīng)的補(bǔ)償。但是對于工廠中大量的測試數(shù)據(jù)數(shù)據(jù)庫是首先存儲方式。可以利用LabSQL方式向數(shù)據(jù)庫數(shù)據(jù)表添加記錄,假設(shè)數(shù)據(jù)表為位移Displacement表。具體步驟如下: ?、俳⑴c數(shù)據(jù)庫的連接。首先通過ADO Connection Create.vi創(chuàng)建一個(gè)Connection對象,然后利用ADO Connection Open.vi建立與數(shù)據(jù)庫的連接。數(shù)據(jù)庫由ADO Connection Open.vi的ConnectionString指定,此參數(shù)由前面板的字符串控件提供,如下圖1.3所示。 ②生成SQL命令,執(zhí)行命令。在前面板table控件中輸入表名,Current和Error控件中輸入字段值。在程序框圖中使用Format Into String生成SQL命令,將它連接到ADO Connection Execute.vi即可執(zhí)行,同時(shí)可在前面板Command Text控件顯示此命令。 ?、蹟嚅_與數(shù)據(jù)庫之間的連接。利用ADO Connection Close.vi關(guān)閉Connection對象,并使用ADO Connection Destroy.vi刪除Connection對象。 (4)歷史數(shù)據(jù)回放界面,可以根據(jù)用戶需要,按照測試的日期時(shí)間打開所需要回放查詢的文件。數(shù)據(jù)回放界面繪制出的相應(yīng)歷史曲線如圖1.4所示。
評論