www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 測試測量 > 測試測量
[導(dǎo)讀]LABVIEW是多線程的,在兩個線程交換數(shù)據(jù)有多種方法,進(jìn)程(PROCESS)和線程(THREAD)是兩個不同的概念,我們啟動一個執(zhí)行文件實(shí)際上就是啟動一個進(jìn)程,WINDOWS的進(jìn)程管理器可以觀察到當(dāng)前存在那些活動進(jìn)程,進(jìn)程間交換數(shù)據(jù)可

LABVIEW是多線程的,在兩個線程交換數(shù)據(jù)有多種方法,進(jìn)程(PROCESS)和線程(THREAD)是兩個不同的概念,我們啟動一個執(zhí)行文件實(shí)際上就是啟動一個進(jìn)程,WINDOWS的進(jìn)程管理器可以觀察到當(dāng)前存在那些活動進(jìn)程,進(jìn)程間交換數(shù)據(jù)可以簡單地理解成多個執(zhí)行文件間交換數(shù)據(jù).

進(jìn)程間交換數(shù)據(jù)有幾種方法:剪切板(CLIPBOARD),動態(tài)數(shù)據(jù)交換(DDE),內(nèi)存映射文件(MAP FILE)和一般文件,當(dāng)然也可以用TCP/IP ,SHARE VARIABLE,DATASOCKET,不過這些都屬于網(wǎng)絡(luò)數(shù)據(jù)交換,用于本機(jī)進(jìn)程間通訊并不合適.

過去的一篇文章中已經(jīng)介紹過如何利用剪切板進(jìn)行通訊,今天介紹一下動態(tài)數(shù)據(jù)交換(DDE)

DDE(Dynamic Data Exchange),即動態(tài)數(shù)據(jù)交換,是Windows平臺上的一個完整的通信協(xié)議,它使應(yīng)用程序能彼此交換數(shù)據(jù)和發(fā)送指令。DDE過程是兩個程序的對話過程,一方向另一方提出問題,然后等待回答。提出問題的一方即申請告知信息的應(yīng)用程序,稱為顧客(Client),回答的一方即提供信息的應(yīng)用程序,稱為服務(wù)器(Server)。一個應(yīng)用程序可以同時是顧客和服務(wù)器:當(dāng)它向其他程序請求數(shù)據(jù)時,它充當(dāng)?shù)氖穷櫩?;?dāng)有其它程序需要它提供數(shù)據(jù)時,它又成了服務(wù)器。但就某一確定的時刻而言,一個應(yīng)用程序只能充當(dāng)顧客或服務(wù)器。

DDE對話的內(nèi)容是通過3 個標(biāo)識進(jìn)行約定的:①服務(wù)器名(Service Name):DDE源的每個應(yīng)用程序有一個唯一的服務(wù)器名,通常為不帶后綴的可執(zhí)行文件;②話題(Topic):對源程序有意義的一些數(shù)據(jù)單元即對話的議題,許多應(yīng)用程序?qū)⑽臋n名作為DDE會話的話題;③項(xiàng)目(Item):DDE會話中,兩個應(yīng)用程序間真正傳遞的數(shù)據(jù)。建立DDE之前,客戶程序必須填寫服務(wù)程序的3個標(biāo)識名。

DDE鏈接有3種類型:①熱鏈接(hot link):服務(wù)器發(fā)送專門為DDE對話而設(shè)定項(xiàng)目中的數(shù)據(jù),當(dāng)這些數(shù)據(jù)發(fā)生變化時,鏈接將實(shí)時動作,自動更新數(shù)據(jù);②冷鏈接(cold link):當(dāng)數(shù)據(jù)發(fā)生變化時,客戶必須明確地提出更新要求,數(shù)據(jù)才會被更新;③暖鏈接(warm link):服務(wù)器在數(shù)據(jù)發(fā)生變化時,通知客戶,客戶根據(jù)自己的要求決定是否更新數(shù)據(jù)。

DDE本質(zhì)上是通過發(fā)送消息實(shí)現(xiàn)的,在VC和CVI中,可以注冊事件回調(diào)函數(shù),實(shí)現(xiàn)自動數(shù)據(jù)交換,但是遺憾的是LABVIEW并沒有對DDE提供事件驅(qū)動方式,正如它的串口操作一樣,都是通過輪詢(POLLING)方式進(jìn)行的,因此就涉及到兩個進(jìn)程DDE速度協(xié)調(diào)的問題。

DDE是WINDOWS早期進(jìn)程間通訊的重要方式,現(xiàn)在用的不多了,但是很多應(yīng)用程序,比如OFFICE,MATLAB等,包括各種流行的組態(tài)軟件,依然提供對DDE的支持,所以有必要了解一下。

7。1以后的LABVIEW在模板中是找不到DDE庫的,需要手動添加到USER LIB中。

C:Program FilesNational InstrumentsLabVIEW 8.5vi.libPlatformdde.llb

主要分成客戶機(jī)和服務(wù)器兩部分,客戶機(jī)和服務(wù)器VI。


DDE數(shù)據(jù)交換首先要啟動服務(wù)器,否則客戶機(jī)無法連接。

服務(wù)器操作過程是:
注冊服務(wù)器---》注冊ITEM----》設(shè)定ITEM值-----》取消ITEM注冊---》取消服務(wù)器注冊




相應(yīng)客戶端的讀數(shù)據(jù)框圖




注意到服務(wù)器的循環(huán)每500MS更新一次,客戶端每500MS更新一次,服務(wù)器和客戶端基本保持同步,如果客戶端速度高于服務(wù)器,將導(dǎo)致對服務(wù)器的同一數(shù)據(jù)讀多次,同理,如果服務(wù)端運(yùn)行速度快,客戶端運(yùn)行速度慢,將導(dǎo)致數(shù)據(jù)丟失,這正是沒有事件響應(yīng)的缺點(diǎn),很難保證發(fā)送和接受的同步。因此,上面的程序僅適用于對數(shù)據(jù)交換要求不高的情況,比如監(jiān)控等。

DDE是一個層次結(jié)構(gòu),SERVER--》TOPIC---》ITEM
一個SEVER可以包括多個TOPIC,(類似與組),每個TOPIC又可以包括多個ITEM(項(xiàng)目),我們可以通過循環(huán)注冊多個TOPIC和多個ITEM,實(shí)現(xiàn)批量數(shù)據(jù)交換。




上圖中,通過循環(huán)為TOPIC1同時注冊了10個ITEM,分別是ITEM0----》ITEM9,在主循環(huán)中分別向ITEM0--》ITEM9寫入數(shù)據(jù)。





同理,我們可以對我們有通訊的數(shù)據(jù)詳細(xì)分類成多個SERVER和多個TOPIC,進(jìn)行大量的數(shù)據(jù)交換。

后續(xù)文章中將進(jìn)一步介紹DDE的高級同步技術(shù)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

下面的項(xiàng)目包括一個機(jī)器人完成各種任務(wù)。這是通過在機(jī)器人上使用和實(shí)現(xiàn)各種傳感器來完成的。機(jī)器人能夠在一個封閉的區(qū)域內(nèi)移動,收集球,并在最后的一個點(diǎn)上放下球。機(jī)器人將繪制出它去過的位置和該區(qū)域內(nèi)的障礙物。

關(guān)鍵字: 傳感器 機(jī)器人 LabVIEW

在數(shù)字通信系統(tǒng)中,總線是連接多個設(shè)備以實(shí)現(xiàn)數(shù)據(jù)交換的關(guān)鍵組成部分。總線在空閑狀態(tài)下的行為,即無數(shù)據(jù)傳輸時的電氣狀態(tài),對于系統(tǒng)的穩(wěn)定性和可靠性至關(guān)重要。處理空閑總線條件的方法有多種,其中偏置電阻和總線終端器是兩種最為常見且...

關(guān)鍵字: 數(shù)字通信 數(shù)據(jù)交換 總線

NI提供的軟件包經(jīng)濟(jì)省時,不僅幫助開發(fā)人員節(jié)省時間,還為創(chuàng)客提供了新的機(jī)遇

關(guān)鍵字: LabVIEW 自動化測試系統(tǒng)

強(qiáng)大的圖形化編程工具使整個測試和測量過程的各個方面實(shí)現(xiàn)可視化

關(guān)鍵字: LabVIEW 圖形化編程工具

NFC技術(shù)是一種無線通訊技術(shù),可以在短距離內(nèi)進(jìn)行數(shù)據(jù)交換。NFC全稱為Near Field Communication,是一種基于RFID技術(shù)的短距離無線通訊技術(shù)。NFC技術(shù)基于13.56 MHz的高頻,其工作距離一般在...

關(guān)鍵字: NFC技術(shù) 通訊技術(shù) 數(shù)據(jù)交換

摘要:對于每一型新機(jī)試飛,或者是重大的研究性試飛和驗(yàn)證試飛,都必須實(shí)施遙測監(jiān)控。現(xiàn)基于TTS(TextToSpeech)語音合成技術(shù),結(jié)合飛行試驗(yàn)遙測監(jiān)控系統(tǒng)的不足,利用TTS引擎在LabVIEW開發(fā)環(huán)境下設(shè)計(jì)并實(shí)現(xiàn)了遙...

關(guān)鍵字: 飛行試驗(yàn)遙測監(jiān)控系統(tǒng) TTS LabVIEW

在科研以及應(yīng)用軟件領(lǐng)域,LabVIEW和MATLAB作為比較常用的2款工具,相信很多人都用過吧。簡單的概括一下,LabVIEW側(cè)重測試測量和數(shù)據(jù)采集,MATLAB側(cè)重科學(xué)計(jì)算和數(shù)據(jù)分析。

關(guān)鍵字: LabVIEW matlab 混合編程

摘要:利用單片機(jī)和虛擬儀器LabVIEW在PC端設(shè)計(jì)了溫濕度測量及控制系統(tǒng),用于溫濕度數(shù)據(jù)監(jiān)測。該系統(tǒng)上位機(jī)為PC端監(jiān)控界面,下位機(jī)為單片機(jī),單片機(jī)采集溫濕度數(shù)據(jù),并將采集到的數(shù)據(jù)通過串口發(fā)送給監(jiān)控界面進(jìn)行監(jiān)測和管理。該...

關(guān)鍵字: DHT11 LabVIEW 單片機(jī)

摘要:當(dāng)前閉環(huán)步進(jìn)電機(jī)在自動化設(shè)備中的應(yīng)用越來越廣泛,故為了進(jìn)一步滿足閉環(huán)步進(jìn)電機(jī)的應(yīng)用需求,采用LabVIEW上位機(jī)+運(yùn)動控制卡+驅(qū)動器模塊的控制方案進(jìn)行了多軸運(yùn)動系統(tǒng)的設(shè)計(jì),通過設(shè)計(jì)的上位機(jī)軟件實(shí)現(xiàn)閉環(huán)步進(jìn)電機(jī)的實(shí)時...

關(guān)鍵字: 閉環(huán)步進(jìn)電機(jī) 精度測試 LabVIEW

上海2022年12月29日 /美通社/ -- 2022年12月22日,庫卡中國實(shí)驗(yàn)室獲評首個“國家機(jī)器人檢測與評定中心(總部)”數(shù)據(jù)交換實(shí)驗(yàn)室,授牌儀式在庫卡中國上海松江園區(qū)舉辦。此次掛牌授權(quán)標(biāo)志著國評中心總部對于庫卡中...

關(guān)鍵字: 機(jī)器人 數(shù)字化 工業(yè)機(jī)器人 數(shù)據(jù)交換
關(guān)閉