新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于LabVIEW的四通道多參數(shù)測(cè)試系統(tǒng)軟件設(shè)計(jì)

        基于LabVIEW的四通道多參數(shù)測(cè)試系統(tǒng)軟件設(shè)計(jì)

        作者: 時(shí)間:2012-02-19 來源:網(wǎng)絡(luò) 收藏

        2.2 電路編程
        根據(jù)每次試驗(yàn)的不同情況,需要根據(jù)實(shí)驗(yàn)的環(huán)境和實(shí)驗(yàn)要求對(duì)硬件電路進(jìn)行重新設(shè)置,電路編程模塊通過USB讀數(shù)口可以方便快捷地對(duì)硬件電路進(jìn)行重新設(shè)置,電路編程模塊實(shí)現(xiàn)了設(shè)定電路的存儲(chǔ)器容量、延遲時(shí)間、環(huán)境控制和采樣策略選擇等。
        2.3 定標(biāo)讀值
        定標(biāo)讀值是指通過事先對(duì)電路和傳感器標(biāo)定的靈敏度將各的數(shù)字量轉(zhuǎn)換成其具有物理意義的信號(hào)量,使波形圖顯示的原始曲線轉(zhuǎn)換成相應(yīng)的加速度-時(shí)間等曲線。在定標(biāo)界面中可以對(duì)標(biāo)定了的數(shù)據(jù)進(jìn)行相應(yīng)的數(shù)據(jù)處理,例如數(shù)據(jù)轉(zhuǎn)換、打印等。
        2.4 導(dǎo)出波形
        通過導(dǎo)出波形模塊用戶可以將波形圖中顯現(xiàn)的曲線圖以圖片的形式保存在計(jì)算機(jī)中,方便用戶打印輸出、存檔保存以便日后查閱。該功能的實(shí)現(xiàn)通過波形圖的屬性節(jié)點(diǎn)調(diào)用實(shí)現(xiàn)。
        2.5 多顯示
        顯示模塊允許用戶通過對(duì)通道的選擇來顯示某一通道的數(shù)據(jù)曲線,也可以同時(shí)顯示四個(gè)通道的數(shù)據(jù)曲線并以不同的顏色來顯示各個(gè)通道的數(shù)據(jù)曲線,方便用戶對(duì)曲線進(jìn)行觀察和對(duì)比,在中通過復(fù)選框?qū)崿F(xiàn)各個(gè)通道的選擇。

        3 的關(guān)鍵問題
        3.1 通道數(shù)據(jù)分離和糾錯(cuò)
        在數(shù)據(jù)采集的過程中,四路信號(hào)是同時(shí)存儲(chǔ)的。當(dāng)在存儲(chǔ)數(shù)據(jù)和顯示數(shù)據(jù)曲線時(shí),需要對(duì)數(shù)據(jù)進(jìn)行處理,防止讀取或存儲(chǔ)的數(shù)據(jù)發(fā)生錯(cuò)位現(xiàn)象,同時(shí)便于對(duì)錯(cuò)誤進(jìn)行跟蹤查找,最終能使各通道數(shù)據(jù)能夠完整地整合到一起。因此采取了相應(yīng)的措施,在每個(gè)數(shù)據(jù)存儲(chǔ)的過程中給每個(gè)通道的信號(hào)加上通道信息。
        當(dāng)多路信號(hào)采集完一個(gè)周期后,存儲(chǔ)一些通道信息作為區(qū)分每包數(shù)據(jù)的信號(hào)。這樣即使某包數(shù)據(jù)出了問題,也可以很容易地確定各個(gè)通道信號(hào)的數(shù)據(jù),不會(huì)出現(xiàn)數(shù)據(jù)錯(cuò)位現(xiàn)象。通過判斷數(shù)據(jù)的通道號(hào)來確定數(shù)據(jù)是否正確,當(dāng)出現(xiàn)錯(cuò)誤時(shí)用相對(duì)應(yīng)的上一包的數(shù)據(jù)進(jìn)行替換,具體步驟如圖3所示。

        本文引用地址:http://www.104case.com/article/172058.htm

        c.jpg


        3.2 動(dòng)態(tài)鏈接庫(kù)的調(diào)用
        動(dòng)態(tài)鏈接庫(kù)(DLL)是存放在.dll文件中編譯過的小型庫(kù)文件,該文件封裝了一些功能和代碼及一組接口函數(shù)供調(diào)用,應(yīng)用程序可以在運(yùn)行時(shí)鏈接并使用它。在中提供了調(diào)用庫(kù)函數(shù)節(jié)點(diǎn),通過該節(jié)點(diǎn)進(jìn)行配置就可以調(diào)用DLL。
        動(dòng)態(tài)鏈接庫(kù)的工作原理如下:當(dāng)它收到應(yīng)用程序的數(shù)據(jù)傳輸請(qǐng)求后,會(huì)創(chuàng)建兩個(gè)線程:數(shù)據(jù)傳輸線程和記錄、顯示線程,其中數(shù)據(jù)傳輸線程負(fù)責(zé)將數(shù)據(jù)寫到應(yīng)用程序要提交的內(nèi)存;而記錄、顯示線程則負(fù)責(zé)給應(yīng)用程序發(fā)送記錄和顯示消息。當(dāng)應(yīng)用程序接收到此消息后,便從它提交的內(nèi)存中讀取數(shù)據(jù)并存。
        用戶應(yīng)用程序的主要功能是開啟或關(guān)閉USB設(shè)備、檢測(cè)USB設(shè)備、設(shè)置數(shù)據(jù)傳輸幀數(shù)、通過USB接口傳輸并顯示數(shù)據(jù),本系統(tǒng)調(diào)用DLL68013.dll庫(kù)文件對(duì)USB設(shè)備進(jìn)行控制。下面就本系統(tǒng)信號(hào)采集關(guān)鍵DLL函數(shù)進(jìn)行簡(jiǎn)單的說明,這些都在調(diào)用庫(kù)函數(shù)節(jié)點(diǎn)的配置中進(jìn)行設(shè)定,在配置過程中要注意調(diào)用規(guī)范,該系統(tǒng)采用stdcall(WINAPI)。
        ①TranVerCmmd(),該函數(shù)是向USB設(shè)備中發(fā)送控制命令,用于控制USB設(shè)備,該函數(shù)就一個(gè),向這個(gè)函數(shù)發(fā)送HB4初始化讀數(shù)口控制命令。
        ②BulkWrite(),該函數(shù)是控制向設(shè)備中發(fā)送數(shù)據(jù),包括三個(gè),第一個(gè)是要操作的管道號(hào),第二個(gè)參數(shù)是要寫入的數(shù)據(jù),第三個(gè)參數(shù)是數(shù)據(jù)的大小。
        ③BulkRead(),該函數(shù)是控制向設(shè)備中發(fā)送數(shù)據(jù),包括三個(gè)參數(shù),第一個(gè)參數(shù)是要操作的管道號(hào),第二個(gè)參數(shù)是要讀取的數(shù)據(jù),第三個(gè)參數(shù)是數(shù)據(jù)的大小。



        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 增城市| 高邑县| 石泉县| 方城县| 凌源市| 临西县| 宜州市| 伊春市| 英德市| 丹凤县| 琼结县| 吉木萨尔县| 佛坪县| 怀安县| 宝丰县| 珠海市| 沅江市| 嘉鱼县| 广东省| 义马市| 太湖县| 延寿县| 大庆市| 吉木乃县| 阳泉市| 望都县| 子长县| 利津县| 绥江县| 海阳市| 鲁甸县| 莱州市| 申扎县| 衡阳县| 河东区| 曲阜市| 杭锦旗| 菏泽市| 灵台县| 保德县| 汕头市|