前言
一個(gè)典型的數(shù)據(jù)采集系統(tǒng)會(huì)通過(guò)各式各樣的傳感器搜集周圍環(huán)境或是各種待測(cè)物產(chǎn)生的信號(hào)。一般而言,這些信號(hào)會(huì)隨機(jī)地產(chǎn)生,所以數(shù)據(jù)采集系統(tǒng)必須不斷地進(jìn)行采樣,才能確保不漏掉任何重要的信號(hào)。這就產(chǎn)生了一個(gè)問(wèn)題,內(nèi)存或是硬盤的容量是有限的,一個(gè)數(shù)據(jù)采集系統(tǒng)不可能無(wú)限制地采集并儲(chǔ)存數(shù)據(jù)。如何從不斷產(chǎn)生的信號(hào)中采集出真正有意義的部分,便成為數(shù)據(jù)采集卡設(shè)計(jì)時(shí)的一個(gè)重要考慮。而觸發(fā) (trigger),便是達(dá)到這一目標(biāo)的重要手段。
何謂“觸發(fā)”?
在進(jìn)行數(shù)據(jù)采集時(shí),用戶可以設(shè)定某些信號(hào)的特定條件,例如一個(gè)數(shù)字信號(hào)的高電平 (logic high) 或低電平 (logic low),或是一個(gè)電壓信號(hào)的特定值,一旦滿足這些特定條件,數(shù)據(jù)采集卡才真正開(kāi)始采集并將其傳送到系統(tǒng)中,這便是觸發(fā)的基本原理。觸發(fā)的功能可以用在許多種形式的應(yīng)用中,像是電力傳輸系統(tǒng)的突波 (pulse) 檢測(cè) (直接設(shè)定突波電壓作為觸發(fā)條件)、多張數(shù)據(jù)采集卡的同步操作 (用一個(gè)共享的時(shí)鐘源產(chǎn)生觸發(fā)信號(hào))、結(jié)合運(yùn)動(dòng)控制的動(dòng)態(tài)系統(tǒng)的定點(diǎn)信號(hào)采樣 (機(jī)械結(jié)構(gòu)到達(dá)定位后發(fā)出觸發(fā)信號(hào)開(kāi)始進(jìn)行數(shù)據(jù)采集) 等等。擅用各種觸發(fā)功能可以讓用戶準(zhǔn)確地采集有用的數(shù)據(jù),大幅提升系統(tǒng)的性能以及量測(cè)的精度。

圖 1 觸發(fā)基本示意圖
接下來(lái)我們要介紹當(dāng)今市場(chǎng)上應(yīng)用于數(shù)據(jù)采集卡中的各種觸發(fā)技術(shù),以及如何將這些觸發(fā)技術(shù)運(yùn)用在您的系統(tǒng)中。
觸發(fā)信號(hào)類型
如前所述,觸發(fā)的基本原理是給出一個(gè)觸發(fā)信號(hào),用以“刺激”數(shù)據(jù)采集卡進(jìn)行采樣的動(dòng)作。觸發(fā)信號(hào)的類型,大致上可以分為以下幾種:
1. 數(shù)字量觸發(fā)
通過(guò)一個(gè)外部輸入的 TTL 信號(hào)觸發(fā)數(shù)據(jù)采集卡。用戶通??梢栽O(shè)定在TTL信號(hào)的上升沿 (raising edge) 或下降沿 (falling edge) 進(jìn)行觸發(fā)。數(shù)字觸發(fā)的動(dòng)作較為簡(jiǎn)單,通常通過(guò) CPLD 中的邏輯門便可以實(shí)現(xiàn),因此大部分的數(shù)據(jù)采集卡,像是凌華科技的 NuDAQ系列,都提供數(shù)字觸發(fā)的功能。

圖二 數(shù)位觸發(fā)示意圖
2. 模擬觸發(fā)
另一種觸發(fā)方式是給出一個(gè)電壓信號(hào)并設(shè)定某個(gè)特定的電壓值,當(dāng)電壓信號(hào)高于或是低于設(shè)定值時(shí)進(jìn)行觸發(fā)。模擬觸發(fā)可以用來(lái)偵測(cè)連續(xù)電壓信號(hào)中的瞬間變化,如在電力傳輸系統(tǒng)中,用戶可以指定輸入信號(hào)的觸發(fā)電壓值,一旦超過(guò)該電平便開(kāi)始進(jìn)行采樣,藉此可以偵測(cè)電力系統(tǒng)中的突波 (pulse)。模擬觸發(fā)需要較復(fù)雜的電路設(shè)計(jì),通常包含額外的 ADC件與比較器電路。因此通常在高端的數(shù)據(jù)采集卡,像是凌華科技的 DAQ-2000 系列或是 NI 的 E 系列或 M 系列上才會(huì)加入模擬觸發(fā)的功能。

圖三 模擬觸發(fā)示意圖
除了上述以超過(guò)或低于電壓值作為模擬觸發(fā)條件以外,新一代的數(shù)據(jù)采集卡提供了更復(fù)雜的模擬觸發(fā)條件。舉例來(lái)說(shuō),凌華科技 DAQ-2000 系列數(shù)據(jù)采集卡可以讓用戶設(shè)定兩組觸發(fā)電平門限 (High Thresold和 Low Threshold)。依據(jù)觸發(fā)信號(hào)跟觸發(fā)電平值的關(guān)系,用戶可設(shè)定多種的觸發(fā)條件,包含 Below-Low (觸發(fā)信號(hào)低于低位準(zhǔn)時(shí)觸發(fā))、Above-High (觸發(fā)信號(hào)高于高位準(zhǔn)時(shí)觸發(fā))、High-Hysteresis、Low-Hysteresis、Inside-Region 等等。以下我們用 High-Hysteresis 來(lái)說(shuō)明這些先進(jìn)觸發(fā)條件的妙用。

圖四 High-Hysteresis 觸發(fā)
High-Hysteresis 觸發(fā)。如圖四所示,當(dāng)觸發(fā)信號(hào)超過(guò)High_Thresold時(shí),觸發(fā)條件被滿足并開(kāi)始進(jìn)行采樣的動(dòng)作。但與傳統(tǒng)電壓位準(zhǔn)觸發(fā)不同的是,在觸發(fā)信號(hào)低于Low_Threshold 之前,不會(huì)發(fā)生其它觸發(fā)的動(dòng)作。這樣的觸發(fā)條件有什么作用呢?在現(xiàn)實(shí)世界中,觸發(fā)信號(hào)本身可能也帶有許多的噪聲,而使觸發(fā)信號(hào)不斷地超過(guò)或低于觸發(fā)電平,而造成許多非預(yù)期的觸發(fā)行為。在High-Hysteresis觸發(fā)條件中,直到觸發(fā)信號(hào)低于 Low_Threshold 時(shí)才會(huì)允許下次觸發(fā)的發(fā)生,如此一來(lái)用戶可以更加精確地控制想要的觸發(fā)條件。
觸發(fā)信號(hào)來(lái)源
不管是模擬或是數(shù)字觸發(fā)信號(hào),都必須輸入數(shù)據(jù)采集卡所定義的觸發(fā)信號(hào)來(lái)源才能發(fā)揮效用。一般而言,觸發(fā)信號(hào)來(lái)源可以是:
1. 專用的模擬觸發(fā)輸入
2. 專用的模擬數(shù)字觸發(fā)輸入
3. 特定的模擬輸入通道
4. 特定的數(shù)字輸入信道
舉個(gè)例子來(lái)說(shuō)明,下圖是凌華 DAQ-2010 的信號(hào)定義。腳位 5 為專用的 AI模擬觸發(fā)輸入,腳位 48 是專用的 AI 數(shù)字觸發(fā)輸入,腳位 47 是專用的 AO 數(shù)字觸發(fā)輸入。另外通道 1到通道 4 都可以作為模擬觸發(fā)的輸入。
[DividePage:NextPage]

觸發(fā)模式
當(dāng)某一個(gè)滿足觸發(fā)條件的信號(hào)進(jìn)入數(shù)據(jù)采集卡后,板上的邏輯電路 (FPGA 或 PLD) 便會(huì)驅(qū)動(dòng) ADC 開(kāi)始進(jìn)行采樣的工作。最直覺(jué)的想法是,一旦有觸發(fā)發(fā)生,立刻開(kāi)始采樣。但是由于 FPGA 與 PLD 的進(jìn)步,我們可以在這些邏輯組件中規(guī)劃更多種的觸發(fā)模式。以下我們將介紹目前在中高端數(shù)據(jù)采集卡常見(jiàn)的幾種觸發(fā)模式。
1. Post-trigger

Post-trigger 是最簡(jiǎn)單的觸發(fā)模式。當(dāng)用戶下達(dá)開(kāi)始采集的命令后,F(xiàn)PGA 或 PLD 會(huì)啟動(dòng) DMA 并等待觸發(fā)事件。當(dāng)觸發(fā)發(fā)生后立即開(kāi)始采樣,直到滿足用戶設(shè)定的采樣點(diǎn)數(shù)或用戶下達(dá)停止命令為止。諸如突波檢測(cè)、多張數(shù)據(jù)采集卡的同步都可以使用這種觸發(fā)模式。
2. Delay-trigger

有些時(shí)候,觸發(fā)事件的發(fā)生與我們所要采集的數(shù)據(jù)之間會(huì)有若干時(shí)間上的延遲。舉個(gè)例子來(lái)說(shuō),在 802.11 無(wú)線局域網(wǎng)絡(luò)的通訊中,每一個(gè)傳送的數(shù)據(jù)框架間會(huì)有一段時(shí)間的 guard period (你可以把它想成是信號(hào)電壓為 0 的一段時(shí)間)。同時(shí)在每一個(gè)數(shù)據(jù)框架的最前端會(huì)有一段固定格式的 preamble,然后伴隨著調(diào)變過(guò)后有意義的數(shù)據(jù)。如果要采集這些有意義的數(shù)據(jù),我們可以以 preamble 作為觸發(fā)條件,并在觸發(fā)發(fā)生之后延遲一段時(shí)間再進(jìn)行采樣。如此一來(lái)我們便可以略過(guò) guard period 與 preamble,取得真正有意義的數(shù)據(jù),這種模式便是 delay-trigger。如上圖所示,使用delay-trigger 時(shí),當(dāng)觸發(fā)事件發(fā)生,F(xiàn)PGA/PLD 會(huì)延遲一段時(shí)間后再驅(qū)動(dòng) A/D 電路進(jìn)行采樣。用戶可以用程序設(shè)定延遲的時(shí)間值以便精確地取得想要的數(shù)據(jù)。
3. Pre-trigger

某些應(yīng)用中,用戶想要的數(shù)據(jù)并不是在觸發(fā)發(fā)生之后,而是在觸發(fā)發(fā)生之前,此時(shí)便可以使用 pre-trigger 模式。在 pre-trigger 模式中,數(shù)據(jù)采集會(huì)在用戶下達(dá)開(kāi)始命令后立即啟動(dòng),并持續(xù)將數(shù)據(jù) DMA 至系統(tǒng)內(nèi)的buffer,一旦觸發(fā)事件發(fā)生,數(shù)據(jù)采集會(huì)停止,并將觸發(fā)之前采樣的數(shù)據(jù)傳回給用戶。如果采樣的數(shù)據(jù)超過(guò)預(yù)先設(shè)定的個(gè)數(shù)N,則只保留最后N個(gè)采樣點(diǎn)。在破壞性檢測(cè)中,研究者通常關(guān)心結(jié)構(gòu)體崩潰之前的變化,所以在這類應(yīng)用中,我們可以以結(jié)構(gòu)體崩潰作為觸發(fā)條件 (結(jié)構(gòu)體崩潰通常會(huì)產(chǎn)生較大的震動(dòng)/聲音等信號(hào)) 并搭配 pre-trigger模式,如此可以在實(shí)驗(yàn)過(guò)程中順利取得結(jié)構(gòu)崩潰前發(fā)出的信號(hào)。
4. Middle-trigger

Middle-trigger 是 pre-trigger 的延伸。在 middle-trigger 中,用戶可以同時(shí)取得觸發(fā)事件前后的數(shù)據(jù)。如上圖所示,用戶可以指定 M (觸發(fā)前) + N (觸發(fā)后) 筆數(shù)據(jù),用以觀察在觸發(fā)前后信號(hào)變化的情形。
結(jié)語(yǔ)
每一種數(shù)據(jù)采集系統(tǒng)所采集的信號(hào)均有不同的特性,在設(shè)計(jì)系統(tǒng)時(shí),選擇適當(dāng)?shù)挠|發(fā)條件與觸發(fā)模式可以讓用戶過(guò)濾無(wú)效的信號(hào),采集到有意義的數(shù)據(jù)。此外,隨著軟硬件技術(shù)的進(jìn)步,許多新設(shè)計(jì)的數(shù)據(jù)采集卡能夠提供各式各樣先進(jìn)的觸發(fā)功能,以滿足不同信號(hào)的需求。對(duì)于每一個(gè)數(shù)據(jù)采集或量測(cè)系統(tǒng)的設(shè)計(jì)而言,完整地分析信號(hào)特性、找出正確的觸發(fā)條件/模式,并選擇適當(dāng)?shù)臄?shù)據(jù)采集卡,才能建構(gòu)一個(gè)有效率的數(shù)據(jù)采集系統(tǒng),收到事半功倍之效。
(轉(zhuǎn)載)



