999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LABVIEW的無(wú)線數(shù)據(jù)采集系統(tǒng)上位機(jī)

2018-08-10 06:07:24林奕林蔡文祥
電子設(shè)計(jì)工程 2018年15期
關(guān)鍵詞:指令

林奕林,蔡文祥

(南京理工大學(xué)機(jī)械工程學(xué)院,江蘇南京210094)

LABVIEW是美國(guó)國(guó)家儀器(NI)公司開(kāi)發(fā)的一款圖形化編程語(yǔ)言(G語(yǔ)言),該語(yǔ)言采樣數(shù)據(jù)流和可視化編程方式編程,同時(shí)封裝了基礎(chǔ)功能[1-5]。LABVIEW把編程人員從繁重的代碼編輯中解放出來(lái),專(zhuān)注于編程方法和編程結(jié)構(gòu)的設(shè)計(jì)。利用LABVIEW DAQmax測(cè)試人員不需要太多的學(xué)習(xí),很快便能寫(xiě)出一個(gè)簡(jiǎn)易的采集軟件用于簡(jiǎn)易測(cè)試。通過(guò)深入學(xué)習(xí)和理解LABVIEW編程思維,工程測(cè)試人員便能編輯出適用于工程測(cè)試的性能良好的采集軟件[6-9]。

近些年,國(guó)內(nèi)外有很多文獻(xiàn)研究,都使用LABVIEW用于各種測(cè)試、控制和嵌入式等領(lǐng)域[10-13]。

1 總體框架設(shè)計(jì)

無(wú)線數(shù)據(jù)采集系統(tǒng)上位機(jī)設(shè)計(jì)框架如圖1所示。

“生產(chǎn)者消-費(fèi)者循環(huán)”是LABVIEW中的一種高效的編程模式,在While循環(huán)中加入事件結(jié)構(gòu),用于接收和發(fā)送用戶(hù)事件,組成生產(chǎn)者循環(huán);在While循環(huán)中加入條件結(jié)構(gòu),用于處理用戶(hù)命令,組成消費(fèi)者循環(huán)。生產(chǎn)者和消費(fèi)者之間,使用隊(duì)列傳輸數(shù)據(jù)。上位機(jī)設(shè)計(jì)框架使用自定義數(shù)據(jù)類(lèi)型作為隊(duì)列的傳輸數(shù)據(jù)類(lèi)型,該自定義類(lèi)型使用簇,包裝枚舉命令、枚舉的控制模塊和變體數(shù)據(jù)。使用自定義類(lèi)型,可以大大減少后期修改程序的困難,只需對(duì)自定義類(lèi)型做出修改,而不必對(duì)所有使用到該自定義的地方都做出修改。枚舉的命令,能夠使得消費(fèi)者循環(huán)的條件選擇結(jié)構(gòu)的分支具有固定的數(shù)量,使不確定錯(cuò)誤發(fā)生的幾率大大減少。枚舉的控制模塊,能夠使得程序能控制多個(gè)下位機(jī)模塊的同時(shí),大大簡(jiǎn)化分支。

該上位機(jī)設(shè)計(jì)模式,不僅在經(jīng)典的“生產(chǎn)者-消費(fèi)者”循環(huán)上,使用自定義類(lèi)型作為數(shù)據(jù)傳輸類(lèi)型。還添加了用戶(hù)事件,當(dāng)用戶(hù)通過(guò)彈出框選擇退出程序的時(shí)候,消費(fèi)者循環(huán)里便會(huì)將“用戶(hù)退出”送人隊(duì)列,使消費(fèi)者循環(huán)進(jìn)入“用戶(hù)退出”分支。“用戶(hù)退出”分支產(chǎn)生用戶(hù)事件并退出消費(fèi)者循環(huán),用戶(hù)事件會(huì)觸發(fā)事件結(jié)構(gòu),退出生產(chǎn)者循環(huán)。用戶(hù)事件的加入,使得該上位機(jī)的“生產(chǎn)者-消費(fèi)者“循環(huán)的退出更加穩(wěn)定。該模式的用戶(hù)事件,使用了枚舉變量,作為生產(chǎn)者循環(huán)的數(shù)據(jù)類(lèi)型,同時(shí)也是生產(chǎn)者循環(huán)的一個(gè)移位寄存器數(shù)據(jù)類(lèi)型。移位寄存器能夠保存上一次或者幾次循環(huán)的數(shù)據(jù),使用它能夠確定采集系統(tǒng)處于何種工作狀態(tài),并能根據(jù)工作狀態(tài),選擇性的過(guò)濾一些無(wú)法在忙碌時(shí)候處理的事件,這使得該結(jié)構(gòu)更加的完善和合理。

圖1 上位機(jī)設(shè)計(jì)框架

2 通訊命令格式

無(wú)線數(shù)據(jù)采集系統(tǒng),具有上位機(jī)和多個(gè)下位機(jī),其通訊使用TTL-32-1W串口無(wú)線通信單元組建通訊網(wǎng)絡(luò),上位機(jī)使用LABVIEW儀器IO中的串口模塊編寫(xiě)接收和處理下位機(jī)信號(hào)的模塊[14-16]。下位機(jī)傳來(lái)的是一連串的字符,上位機(jī)想要從字符中解析出有意義的信息,這就需要兩者都要按照一定的標(biāo)準(zhǔn)去發(fā)送和解析數(shù)據(jù)。具體通訊格式如下所示:

1)無(wú)線通訊測(cè)試

格式:指令代碼(0000)+測(cè)試用數(shù)據(jù)(500 Byte)+截止符( )

回復(fù):指令代碼(0000)+接收到的數(shù)據(jù)(500Byte)+截止符( )

2)模塊在線查詢(xún)

格式:指令代碼(0001)+截止符( )

回復(fù):指令代碼(0001)+模塊號(hào)(XX)+截止符( )

3)無(wú)線模塊開(kāi)關(guān)

格式:指令代碼(0010)+指令(00關(guān)/01開(kāi))+截止符( )

回復(fù):指令代碼(0010)+指令(00/01)+截止符( )

4)新建文件

格式:指令代碼(0011)+指令(新建文件編號(hào):XX)+截止符( )

回復(fù):指令代碼(0011)+指令(新建文件編號(hào):XX)+截止符( )

5)刪除文件

格式:指令代碼(0100)+指令(刪除文件編號(hào):XX)+截止符( )

回復(fù):指令代碼(0100)+指令(刪除文件編號(hào):XX)+截止符( )

6)參數(shù)設(shè)置

格式:指令代碼(0101)+指令(采樣頻率(5Byte)+采樣點(diǎn)數(shù)(6Byte)+通道選擇(8Byte)+觸發(fā)方式(1Byte))+截止符( )

7)模塊自檢

格式:指令代碼(0110)+指令(0000)+截止符( )

8)軟件開(kāi)始

格式:指令代碼(1000)+指令(0000)+截止符( )

9)無(wú)線模塊參數(shù)設(shè)置

格式:指令代碼(1001)+指令(6Byte指令)+截止符( )

10)無(wú)線數(shù)據(jù)讀取

格式:指令代碼(1010)+指令(通道號(hào))+截止符( )

11)模塊重啟

格式:指令代碼(1011)+指令(0000)+截止符( )

3 無(wú)線數(shù)據(jù)采集系統(tǒng)上位機(jī)設(shè)計(jì)

3.1 界面設(shè)計(jì)

具體無(wú)線數(shù)據(jù)采集系統(tǒng)的需求可以控制8個(gè)無(wú)線數(shù)據(jù)采集模塊,每個(gè)無(wú)線數(shù)據(jù)采集模塊具有8個(gè)采樣通道。每個(gè)模塊需要單獨(dú)控制新建文件、刪除文件、數(shù)據(jù)傳輸、通訊檢測(cè)、低功耗待機(jī)和模塊重啟等功能;還需要單獨(dú)的采集設(shè)置、零點(diǎn)設(shè)置和電量檢測(cè)及顯示等功能;對(duì)于模塊的通用設(shè)置在界面的右側(cè),模塊指示燈可以指示模塊使用與否狀態(tài),通訊指示燈用于指示上位機(jī)和模塊之間的通訊狀態(tài)。具體上位機(jī)界面如圖2所示。

圖2 上位機(jī)界面

3.2 多通道事件的精簡(jiǎn)

對(duì)于本文所研究的是8模塊8通道的數(shù)據(jù)采集模塊,若是每一個(gè)模塊、每一個(gè)事件都要對(duì)應(yīng)一個(gè)事件結(jié)構(gòu)分支和一個(gè)命令處理分支,那么所需要的事件結(jié)構(gòu)和命令處理分支太多、程序也太過(guò)于臃腫。因此將采集設(shè)置打包成簇,只響應(yīng)簇的值變化事件,并通過(guò)比較簇原值和新值的變化,確定簇中何值變化,并做出相應(yīng)控制,如果是“參數(shù)設(shè)置”按鈕按下事件,便會(huì)將參數(shù)設(shè)置(包括模塊選擇)命令發(fā)到消費(fèi)者循環(huán)。而消費(fèi)者循環(huán)中也只需一個(gè)條件結(jié)構(gòu)分支便可以分別處理各模塊中的相同操作。

3.3 上位機(jī)流程圖及編寫(xiě)

具體的上位機(jī),按圖4所示的流程圖編寫(xiě),由于已經(jīng)具有了總體框架,只需對(duì)流程圖中的流程,分別編寫(xiě)“生產(chǎn)者”循環(huán)的事件結(jié)構(gòu)命令和“消費(fèi)者”循環(huán)中的條件分支處理 命令,并注意按照上一節(jié)中的方式簡(jiǎn)化,便可以高效的編寫(xiě)完成無(wú)線數(shù)據(jù)采集系統(tǒng)的上位機(jī)。

下位機(jī)傳輸過(guò)來(lái)的數(shù)據(jù)是一連串的具有固定格式數(shù)據(jù),上位機(jī)將按照約定好的數(shù)據(jù)格式,解析并轉(zhuǎn)換成TDMS格式的波形數(shù)據(jù),自動(dòng)保存。在程序運(yùn)行完成之后,使用LABVIEW中的文件I/O中的XML模塊,將采集參數(shù)設(shè)置和模塊選擇等參數(shù)使用xml格式保存,在下一次開(kāi)機(jī)時(shí)候,使用該數(shù)據(jù)初始化上位機(jī)程序。

圖3 消費(fèi)者循環(huán)中命令處理分支的簡(jiǎn)化

圖4 上位機(jī)流程圖

4 實(shí)驗(yàn)驗(yàn)證

上位機(jī)和下位機(jī)在獨(dú)立編寫(xiě)完成之后,對(duì)其進(jìn)行實(shí)地通訊調(diào)試。實(shí)驗(yàn)表明上位機(jī)能夠和下位機(jī)能夠穩(wěn)定通訊、上位機(jī)能夠穩(wěn)定工作,上位機(jī)能夠穩(wěn)定快速控制下位機(jī)無(wú)線采集模塊,上位機(jī)能穩(wěn)定的讀取、存儲(chǔ)下位機(jī)傳回的實(shí)驗(yàn)采集數(shù)據(jù)。如圖5所示,是無(wú)線數(shù)據(jù)采集系統(tǒng)以5 kHZ采樣頻率,采集并獲得的實(shí)驗(yàn)曲線。實(shí)驗(yàn)表明,上位機(jī)和下位機(jī)能穩(wěn)定通訊,并能正確接收及解析數(shù)據(jù)。

圖5 落錘試驗(yàn)曲線

5 結(jié)束語(yǔ)

本文介紹了一種無(wú)線一種基于LABVIEW的上位機(jī)高效開(kāi)發(fā)方案。并實(shí)際應(yīng)用于一種多模塊多通道的無(wú)線數(shù)據(jù)采集系統(tǒng)的上位機(jī)的編寫(xiě)中。基于無(wú)線數(shù)據(jù)采集系統(tǒng),定義了一種固定的通訊格式,使得上位機(jī)和下位機(jī)的編寫(xiě)能夠分別獨(dú)立的進(jìn)行,且能夠在上位機(jī)和下位機(jī)完成編寫(xiě)后,快速調(diào)試和整合,大大減少了系統(tǒng)開(kāi)發(fā)時(shí)間。在上位機(jī)的編寫(xiě)過(guò)程中,使用簇打包,簡(jiǎn)化了“生產(chǎn)者循環(huán)”事件分支和“消費(fèi)者循環(huán)”條件結(jié)構(gòu)選擇分支,大大減少了上位機(jī)編寫(xiě)時(shí)間。通過(guò)試驗(yàn)驗(yàn)證總體框架,在無(wú)線數(shù)據(jù)采集系統(tǒng)開(kāi)發(fā)過(guò)程中達(dá)到了預(yù)期要求,具有較好運(yùn)用價(jià)值。

猜你喜歡
指令
聽(tīng)我指令:大催眠術(shù)
ARINC661顯控指令快速驗(yàn)證方法
LED照明產(chǎn)品歐盟ErP指令要求解讀
殺毒軟件中指令虛擬機(jī)的脆弱性分析
巧用G10指令實(shí)現(xiàn)橢圓輪廓零件倒圓角
中斷與跳轉(zhuǎn)操作對(duì)指令串的影響
科技傳播(2015年20期)2015-03-25 08:20:30
基于匯編指令分布的惡意代碼檢測(cè)算法研究
一種基于滑窗的余度指令判別算法
歐盟修訂電氣及電子設(shè)備等產(chǎn)品安全規(guī)定
家電科技(2014年5期)2014-04-16 03:11:28
MAC指令推動(dòng)制冷劑行業(yè)發(fā)展
主站蜘蛛池模板: 国产91视频观看| 成人字幕网视频在线观看| 国产成人凹凸视频在线| 日本免费一区视频| 亚洲视频免| 波多野结衣视频网站| 免费国产小视频在线观看| 日韩精品成人网页视频在线| 熟女日韩精品2区| 高清不卡毛片| a亚洲天堂| 91精品国产一区自在线拍| 国产亚洲精久久久久久无码AV| www欧美在线观看| 免费观看成人久久网免费观看| 99热这里只有成人精品国产| 欧美亚洲日韩不卡在线在线观看| 久久久久久久久18禁秘| 蜜桃臀无码内射一区二区三区| 亚洲成人手机在线| 99久久精品国产综合婷婷| 久久国产精品波多野结衣| 国产97区一区二区三区无码| 久草网视频在线| 真实国产精品vr专区| 国产香蕉97碰碰视频VA碰碰看| 美女内射视频WWW网站午夜| 欧美日一级片| 亚洲无码一区在线观看| 野花国产精品入口| 亚洲精品另类| 幺女国产一级毛片| 国产免费一级精品视频| 毛片卡一卡二| 久久久久88色偷偷| 欧美国产视频| 91精品视频播放| 国产成人精品高清不卡在线| 亚洲天堂网在线观看视频| 久久精品无码国产一区二区三区| 欧美日韩精品一区二区视频| 毛片在线区| 麻豆AV网站免费进入| 国产精品一区二区不卡的视频| 中文字幕无码中文字幕有码在线 | 久久精品国产在热久久2019| 亚洲天堂区| 亚洲欧美极品| 美臀人妻中出中文字幕在线| 免费一极毛片| 国产在线八区| 尤物在线观看乱码| 国产精品一线天| 亚洲欧美不卡中文字幕| 国产精品国产主播在线观看| 国产在线自乱拍播放| 亚洲人成色在线观看| 爆乳熟妇一区二区三区| 欧美日韩亚洲国产主播第一区| JIZZ亚洲国产| 国产美女91呻吟求| 免费无码AV片在线观看国产| 国产福利一区视频| 无码中文字幕加勒比高清| 欧美亚洲中文精品三区| 天天躁夜夜躁狠狠躁躁88| 无码一区中文字幕| 性色生活片在线观看| 国内精自线i品一区202| 全部毛片免费看| 中文字幕亚洲第一| 国产福利免费观看| 欧美精品影院| 欧洲成人免费视频| 久久久久亚洲AV成人人电影软件| 老司机午夜精品视频你懂的| 99热在线只有精品| 国产免费黄| a在线亚洲男人的天堂试看| 99精品热视频这里只有精品7 | 亚洲欧美激情小说另类| 国产白浆在线|