基于LabVIEW的信號輸出與數據采集系統
系統能夠實現同時輸出和采集模擬信號,它利用傳遞error信息的數據線安排并行的執行順序。其工作流程如下:首先通過AO Config VI設置好輸出參數,通過AI Config VI設置好輸入參數;然后將準備好的波形數據通過AO Write VI寫入輸出緩沖區;接著由AO Start VI啟動模擬輸出,AI Start VI啟動模擬輸入(要將number of scans to acquire的參數設為0,這樣才能連續采集);在While循環中,AI Read VI連續從輸入緩沖區讀取數據,輸出緩沖區中的數據經AO Write VI被送到DAC輸入端,經轉換后輸出,直到用戶按下了STOP按鈕或程序出錯才結束。最后由AO Clear VI清除任務所占用的全部資源。在本程序中,輸出和采集并不是同步的,首先AI Start和AO Start沒有受同一時鐘源的控制,采集卡的模擬輸入和模擬輸出各有獨立的時鐘;其次它們并不是被同時啟動的,AI Start要稍晚于AO Start,不過兩者的啟動時間相差非常小(時間差在幾微秒內),在要求不是特別嚴格的場合可以忽略不計。
參數設置:輸出通道指定從采集卡的那個模擬輸出通道輸出信號,輸入通道指定由采集卡的那個模擬輸入通道采集信號;輸出通道緩沖區的大小一般為更新速率的兩倍;輸入通道緩沖區的大小一般為掃描速率的兩倍,每次讀取的樣本數設置為一個小于輸入通道緩沖區大小的值,一般為輸入通道緩沖區大小的一半。圖形化程序如圖2所示(本程序輸出的是一個正弦波,可根據不同的場合替換成所需的信號)。
4 結束語
基于LabVIEW的信號輸出與數據采集系統方法簡單、可靠適用,能夠實現在仿真環境下驅動嵌入式計算機系統運行并采集它的輸出信號,為嵌入式軟件的測試奠定了基礎。同時利用虛擬儀器實現了軟件代替硬件,避免了大量專用測試設備的使用,節省了成本,提高了效率,達到了良好的效果。
本文作者創新點:用LabVIEW實現了信號輸出與數據采集的同時進行,可以在采集數據的同時由數據采集卡輸出信號,提高了效率。
評論