步驟1:材料
必備條件:您必須已完成上一個(gè)項(xiàng)目中的步驟2。必須遵循上一個(gè)項(xiàng)目的選件2.1(即安裝LabVIEW)。
硬件
模擬發(fā)現(xiàn)
軟件
WaveForms 2.6.2或更高版本
LabVIEW(到目前為止,已經(jīng)測(cè)試了2013和2014版本可以正常工作)
步驟2:前言
為正確理解該項(xiàng)目的功能,了解Waveforms SDK非常重要。通常,模擬發(fā)現(xiàn)是通過免費(fèi)軟件包Waveforms控制的。 WaveForms還附帶了一個(gè)開源開發(fā)工具包。通過該SDK,您可以訪問C/C ++ API庫(kù),任何人都可以為Analog Discovery編寫自己的軟件接口。在WaveForms參考手冊(cè)中可以找到API中所有可用功能的概述。
該LabVIEW項(xiàng)目的核心是簡(jiǎn)單地調(diào)用C/C ++ API函數(shù)。專用VI用于LabVIEW中的每個(gè)單獨(dú)的Waveforms API函數(shù)。通過單擊項(xiàng)目窗口中的digilent.lvllib,可以查看可用API函數(shù)的列表。該列表中的每個(gè)VI都有對(duì)應(yīng)的C/C ++ API函數(shù)。有關(guān)每個(gè)功能如何工作的更多信息,請(qǐng)參考WaveForms參考手冊(cè),如上圖所示。
如果想了解有關(guān)如何在LabVIEW中調(diào)用C函數(shù)的更多信息,請(qǐng)查看以下鏈接。
https://decibel.ni.com/content/docs/DOC- 9076
https://decibel.ni.com/content/docs/DOC-9079
步驟3:主GUI代碼概述
在GUI Main中,該代碼是GUI Main的簡(jiǎn)化派生,繼承自先前的LabForms項(xiàng)目。為了簡(jiǎn)潔起見,許多Waveforms API調(diào)用已組合到了子VI中。在新的GUI Main中,有兩個(gè)主要部分需要關(guān)注,即 Device Selection Loop 和 Run Device Functions 部分。
設(shè)備選擇循環(huán)
設(shè)備選擇循環(huán)有兩個(gè)主要功能。首先,它使用“查找已連接的設(shè)備.vi”搜索要連接的兼容設(shè)備。添加了刷新按鈕選項(xiàng),因此您可以在啟動(dòng)GUI Main.vi之后連接設(shè)備。 “查找連接的設(shè)備.vi”檢查以確保沒有其他應(yīng)用程序正在使用您要打開的設(shè)備。如果設(shè)備已經(jīng)在使用中,則對(duì)前面板控件進(jìn)行配置,以便使“確定”按鈕呈灰色。這樣可以防止您打開已在使用的設(shè)備。如果不使用設(shè)備,則可以單擊“確定”以繼續(xù)進(jìn)行打開過程。一旦打開過程結(jié)束,設(shè)備選擇循環(huán)將終止,并啟動(dòng)運(yùn)行設(shè)備功能部分。
運(yùn)行設(shè)備功能
本節(jié)的第一部分將打開所選設(shè)備。該過程是自我解釋的,不需要詳細(xì)解釋。有關(guān)更多信息,請(qǐng)參考代碼中帶編號(hào)的注釋。打開設(shè)備后,您設(shè)計(jì)的任何自定義VI都將開始運(yùn)行。在此項(xiàng)目中,運(yùn)行“ GUI自定義波形Gen.vi”。如果要調(diào)整自定義信號(hào)輸出的范圍,可以在選擇設(shè)備之前單擊“啟用范圍”按鈕。這將從LabForms中打開標(biāo)準(zhǔn)示波器窗口。
步驟4:來自生成代碼概述的自定義Wave
自定義波形發(fā)生器可以完成一些操作。首次調(diào)用時(shí),兩個(gè)波形通道W1和W2都被啟用(請(qǐng)參見循環(huán)左上方的代碼)。接下來,進(jìn)行一些計(jì)算以將光標(biāo)在2d框中的位置轉(zhuǎn)換為波形的幅度和頻率。有關(guān)詳細(xì)信息,請(qǐng)參考代碼中的注釋。
從/事件結(jié)構(gòu)生成波形
該項(xiàng)目的核心是生成模擬信號(hào)。這是使用“ Generate Waveform.vi ”在事件結(jié)構(gòu)中完成的。該子VI僅調(diào)用了少數(shù)控制模擬發(fā)現(xiàn)的WaveForms API函數(shù)。上面包含了 Generate Waveform。 vi代碼的圖片。它描述了哪些API函數(shù)用于控制Analog Discovery的信號(hào)發(fā)生器。有關(guān)這些API函數(shù)如何工作的更多信息,請(qǐng)參閱WaveForms SDK參考手冊(cè)。
為使波形生成正常工作,請(qǐng)務(wù)必注意調(diào)用 Generate Waveform.vi 的上下文。該VI應(yīng)在事件結(jié)構(gòu)中調(diào)用,因此僅在發(fā)生某些事件時(shí)才可激活。每次循環(huán)調(diào)用 G
賦能Waveform.vi 都會(huì)導(dǎo)致性能問題和輸出波形中的
不連續(xù)。此事件結(jié)構(gòu)包含兩種不同的情況。
事件結(jié)構(gòu)案例[0] :
第一拳是一個(gè)超時(shí)案例。重要的是,通過將一個(gè)值連接到事件結(jié)構(gòu)左上方的小沙漏來提供超時(shí)持續(xù)時(shí)間。否則,可能會(huì)導(dǎo)致整個(gè)項(xiàng)目?jī)鼋Y(jié)。
事件結(jié)構(gòu)案例[1] :
此事件案例是調(diào)用
Generate Waveform的事件案例。 vi 設(shè)置為在圖片邊界內(nèi)單擊鼠標(biāo),在圖片邊界內(nèi)移動(dòng)或退出圖片邊界時(shí)觸發(fā)。如果需要,可以通過右鍵單擊事件結(jié)構(gòu)并單擊相應(yīng)的選項(xiàng)卡來編輯案例處理的事件。
在2d圖片上繪制光標(biāo)
如果您對(duì)如何在2d圖片上繪制光標(biāo)感到好奇,請(qǐng)查看上面的subVI代碼。代碼中的注釋說明了如何繪制光標(biāo)。
第5步:運(yùn)行項(xiàng)目
要使事情運(yùn)行,請(qǐng)打開LabVIEW項(xiàng)目。打開項(xiàng)目窗口后,雙擊“ GUI Main.vi ”。打開該VI的前面板后,執(zhí)行此gif所示的操作以使波形發(fā)生器運(yùn)行。
WaveGen/示波器的物理接線
如果要在示波器面板中查看正在生成的波形,必須將波形連接到模擬輸出,然后模擬輸入引腳(請(qǐng)參見上圖)。有關(guān)引腳的詳細(xì)信息,請(qǐng)參見Analog Discovery引腳。
正確停止項(xiàng)目
要使整個(gè)項(xiàng)目停止,您必須按下停止按鈕所有彈出的窗口。 GUI主窗口沒有停止按鈕,并且在您正確關(guān)閉其他窗口后將自動(dòng)停止。
責(zé)任編輯:wv
-
LabVIEW
+關(guān)注
關(guān)注
1975文章
3656瀏覽量
324569 -
波形發(fā)生器
+關(guān)注
關(guān)注
3文章
293瀏覽量
31404 -
Analog
+關(guān)注
關(guān)注
11文章
9316瀏覽量
58188
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論