新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > DAQ中各種采樣方法的一點想法(最簡單的采樣方式)

        DAQ中各種采樣方法的一點想法(最簡單的采樣方式)

        作者: 時間:2017-01-09 來源:網絡 收藏
        在簡單的采樣中,我們常用的是單點掃描讀取數據,就是說完全根據程序的框架(如while循環的延遲時間)來決定采樣的間隔。

        這時我們最簡單的程序如下圖:

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

        這樣我們就能每隔while的延遲時間來進行采樣。

        但是有的時候我們想進行多點的采樣,就是說每次采樣獲取N個的數據。而用上面的程序的其他多態VI子程序,雖然可以規定采樣的數量,但是無法規定程序的采樣頻率。程序總是在最快的時間內采夠所需的數據并顯示出來。

        在這種情況下我們就要用到這個函數。DAQmx Timing。即

        在這里設置采樣的個數和采樣速率。

        相應的信號采集的程序如下圖:

        我們在Timing中規定了采樣的模式——有限采樣,采樣的個數——10個,采樣的頻率——一秒鐘1個。這樣的設置下,程序的執行規則就是,執行到read函數的時候等待,等待采樣結束后將數據發送到波形圖表中,就是說,程序在read的時候等待大量的時間,而不是一瞬間完成的,這就解釋了為什么圖標中的新增數據是個一段時間才出現一次的。完全能夠講的通了。

        現在,我們再測試一次將采樣模式換為連續采樣的模式。

        設置為連續采樣的時候,原來的設置采樣數量接口(10)將表示緩存區的大小。

        如果是這樣的話,循環就連續執行,并不像有限采樣那樣,等到采夠了所需的點數再進行讀取顯示,而是不停地讀取顯示。這就是與有限采樣的不同。因此需要在while循環中,增加延時函數,在延遲結束時讀取緩存區內的數據。

        這樣所讀取的采樣點數為延遲時間內所采到的數據。若延遲時間過大,那么緩沖區存滿之后,緩存區將重新刷新,那樣在讀取數據的時候將會損失掉一部分數據。


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 虞城县| 剑河县| 额济纳旗| 延寿县| 远安县| 水城县| 神池县| 榕江县| 南投市| 渭南市| 林口县| 齐齐哈尔市| 水富县| 永登县| 庄河市| 泗洪县| 哈巴河县| 禹城市| 肥西县| 鄱阳县| 乌拉特前旗| 鄂伦春自治旗| 呼玛县| 华坪县| 嘉善县| 瓮安县| 厦门市| 邢台县| 永州市| 桐庐县| 内黄县| 水富县| 滦平县| 奉化市| 青州市| 大渡口区| 印江| 呼伦贝尔市| 阳新县| 钟山县| 广水市|