盡管模塊化數字化儀或者數字化儀板卡本身就可以被認為是計算機硬件,但是為了將其集成到主機計算機系統中,還需要合適的固件和軟件。數字化儀內部使用嵌入式固件,并需要主機的設備驅動程序、維護軟件和操作應用程序來控制、查看和傳輸數模轉換器的數據。軟件可以由我們提供,也可以根據客戶需要自行定制開發,今天德思特為您介紹模塊化數字化儀的軟件支持。
一、設備驅動
圖1:數字化儀設備驅動程序支持常見的操作系統,并提供一個通用接口供各種編程語言和第三方分析和控制軟件使用
設備驅動程序往往是最基本的軟件支持需求,這通常由數字化儀的設備制造商提供。設備驅動程序允許主機與硬件設備交互,成為操作系統和軟件應用程序之間溝通的橋梁。驅動程序實現了通信建立、命令收發和數據傳輸的接口。現在已經沒有現代操作系統會讓你在缺少專用底層內核驅動程序的情況下直接訪問硬件了。對于Windows 64位操作系統,這甚至需要由授權公司簽名的專用內核驅動程序。圖1顯示了德思特提供的用于支持其所有數字化儀的設備驅動程序的概念框圖。
驅動程序提供了一個通用且快速的應用程序接口(API),用于使用數字化儀的全部硬件功能。德思特提供的驅動程序API對于所有受支持的操作系統都是相同的,包括32位或64位版本的Windows和Linux。基于這個驅動程序,用戶可以使用常用編程語言編寫自己的程序。此外,同樣是這個驅動程序還支持德思特提供的SBench 6操作軟件,以及其他常用的第三方分析和控制程序,比如LabVIEW和MATLAB。
我們的同一核心驅動程序可用于多種類型的數字化儀,并且支持多種操作系統、編程語言和第三方應用程序。這將會是您選擇數字化儀的理想目標,因為它提供了測量操作的巨大靈活性。
二、操作軟件
圖2:一個操作軟件的例子(SBench 6),可以實時控制數字化儀、查看和分析數據
大部分成熟的數字化儀供應商都提供某種形式的操作軟件來控制數字化儀并允許查看和傳輸數據。德思特也不例外,我們提供了SBench 6,這是一個包含數據采集、控制和分析于一體的程序。其界面示例如圖2所示。它使您可以控制數字化儀的絕大部分功能,例如采集并顯示數據,對獲取的數據進行測量,并管理數據傳輸參數。在該圖中,我們捕獲到了一個超音波脈沖信號,在右側對其進行了快速傅立葉變換(FFT),左側有振幅、脈沖持續時間和頻率的測量結果。
德思特提供軟件的分析功能包括FFT、平均值、濾波和直方圖,可以使用游標或內置測量參數進行測量。在此示例中,游標用于測量脈沖爆發持續時間,而自動測量參數用于測量頻率、最大值、最小值和峰峰值幅度。在顯示方面,該軟件支持多種顯示形式,可以單獨顯示數據,也可以在同一個坐標軸上繪制相關波形,還可以使用X-Y圖形式進行交叉繪圖。
像這種的操作軟件使檢查數字化儀是否正常工作變得非常容易。它同時也能驗證各種功能包括獲取模式的設置是否正常。一旦驗證通過,就可以將其轉移到所需的編程開發環境中。還有非常重要的一點就是,該軟件可以作為回放控制臺查看以前獲取到的數據的控制臺,用于驗證數據、對比、和進行額外測量或進一步分析。
三、控制與維護軟件
德思特的Spectrum控制中心是一個強大的軟件工具,會隨數字化儀硬件一起提供,并將所有的硬件維護功能集到了一起。它可以作為獨立的應用程序在Windows或Linux下運行,軟件中提供了以下功能:
硬件配置 - 控制中心顯示關于我們數字化儀硬件的詳細信息,包括板卡類型、序列號、生產日期和校準日期、固件版本以及硬件的所有特性。
安裝模擬演示卡 - 控制中心可以安裝模擬演示卡,這些演示卡包括了模擬數據的生成,并允許測試所有軟件,包括SBench軟件、用戶應用程序以及LabVIEW等第三方產品的驅動和測試程序。
調試日志 – 數字化儀板卡、驅動程序和固件版本、所有命令序列和其他信息都可以記錄到ASCII文件中,以便更好地診斷問題所在,并提供產品技術支持。
可選軟件許可證管理 - 可以在現場安裝SBench 6升級以及M2i/M3i/M4i系列數字化儀的可選固件功能(不需要修改硬件)的許可證。
固件升級 - 使用增強功能和錯誤修復補丁更新數字化儀的嵌入式固件。
校準 - 控制中心還提供了訪問德思特數字化儀板卡自校準流程的簡便方法。
內存測試 - 使用隨機數據對德思特數字化儀板卡的板載內存進行測試,以確保其正常工作。任何讀取或寫入錯誤都會被記錄下來。
傳輸速度測試 - 測量當前系統中已安裝的數字化儀板卡的總線傳輸速度。這為您提供了一個性能指標,并顯示出不同緩沖設置下可以達到的持續數據速率。
連續內存 - 連續內存通過在系統啟動時預留一個連續的內存緩沖區來提高傳輸速率(最多可提高30%)。
發現功能 - 發現功能可以幫助您在局域網上找到可適用于您計算機的德思特LXI儀器設備,比如digitizerNETBox系列數字化儀。它還將查找局域網上任何安裝了Spectrum遠程服務器以及德思特數字化儀板卡產品的機器。
圖:3:Spectrum控制中心的用戶界面,該界面可訪問各種硬件維護功能
四、第三方軟件支持
部分數字化儀用戶更喜歡使用第三方提供的分析和控制程序以及相關工具軟件。這可能是由于用戶對該工具有更好的個人了解,或者是因為它提供了一些特殊的功能。大多數數字化儀制造商會以各種不同的方式支持這些程序。其中,德思特為最常見的第三方程序提供了廣泛的支持,這些第三方程序包括LabVIEW、LabWIndows/CVI和MATLAB。
LabVIEW
NI公司的LabVIEW是最常見的圖形化編程語言之一,常用于測量應用領域,該軟件通過我們提供的專用的LabVIEW驅動程序得到很好的支持。這個驅動程序將不同的數字化儀功能組合成功能塊,并在LabVIEW中提供它們。LabVIEW驅動程序包中還包含多個不同的庫和一些公開的示例虛擬儀器(Vi),以便展示驅動程序的正確使用方法。除了這些庫之外,所有的通用驅動程序函數也可以直接調用。
圖4:將數字化儀的模擬采集通道用作四通道示波器的LabVIEW示例的虛擬前面板
圖4就是其中一個例子,它展示了將數字化儀板卡的模擬通道用作簡單的示波器的可能性。圖中是這個虛擬示波器的前面板界面,在該界面上,用戶可以執行單次采集或在多達四個通道上進行多段數據采集。
用戶可以在界面中設置和更改所有時鐘設置、觸發模式及觸發源相關參數,也可以調整各個輸入通道的相關設置參數。此示例適用于所有具有4個通道的數字化儀板卡,無論其模擬分辨率和最大采樣率是多少。所有的這些示例都帶有可編輯的代碼圖,允許程序員將其用作自己編程的基礎,或者作為理解LabVIEW驅動程序工作原理的一個示例。我們提供的這一系列示例用戶界面都是為了方便用戶快速開始使用基本功能而創建,并為那些首次使用數字化儀的LabVIEW用戶提供有用的參考。
LabWindows/CVI
CVI是C for Virtual Instrumentation的縮寫,這項標準也是由NI公司開發的,它提供了一種用于測試測量的C語言編程環境。LabWindows/CVI使用與他們的知名產品LabVIEW相同的庫和數據采集模塊,并且與之高度兼容。
MATLAB
MathWorks的數學分析應用MATLAB可在Windows和Linux系統下得到支持。可以訪問硬件的所有特性。MATLAB驅動程序提供了對控制庫的訪問,并且提供了許多兼容MATLAB基礎版本的m語言示例。接口還提供了一種簡單的方法,允許用戶在MathWorks Simulink仿真工具中使用德思特的數字化儀板卡。
除了這些常見軟件應用外,我們還提供了一個IVI驅動,用于支持IVI類驅動程序、IVI數字化儀和IVI示波器。IVI驅動允許用戶使用一種功能類別的儀器的通用軟件界面,而不受硬件制造商的影響。這樣,基于IVI設備驅動程序的應用軟件就能和市場上的許多不同的數字化儀或示波器配合使用。
上述每個第三方軟件驅動程序都會附帶大量的示例,用戶可以在其手冊中找到詳細的描述。
五、用戶程序支持
數字化儀板卡的驅動程序也會支持常用編程語言。正如1所描述的那樣,C、C++、C#、J#、Visual Basic、Python和Delphi等基于文本的編程語言都得到了數字化儀板卡驅動程序的支持。
圖5:德思特數字化儀板卡的編程完全基于軟件寄存器。所有的軟件寄存器都是以圖中所示的形式描述的。
數字化儀板卡的用戶手冊中提供了控制板卡并將其數據取回給計算機所需的所有必要命令,及其詳細說明。這些命令是基于軟件寄存器的,就像圖5中舉例的那樣。并且我們針對每種語言都提供了多個示例,以降低經驗不足的數字化儀板卡用戶的上手難度。
自定義編程為操作數字化儀提供了最大的靈活性,特別是在涉及多種儀器和信號源的集成系統環境中。
針對特定編程語言的代碼示例將為您提供一個良好的開端。一個簡單易學、易于集成但功能強大的API,再配合工程師少量額外的工作,將允許用戶使用其他編程語言輕松訪問硬件。此外,您還可以向您的購買源尋求技術支持。他們會有專業的軟件工程師可以為您的首選編程語言創建一個起始示例。
END
模塊化數字化儀需要有軟件支持才能發揮作用,并且與用戶的操作系統和應用軟件相匹配的驅動是必須的。德思特提供了所有的這些所需要的驅動軟件和工具來方便用戶使用。其中,配套的SBench 6軟件包括了基本的操作和控制功能,以便用戶快速驗證他們的操作是否正確。同時我們為用戶選擇第三方或自定義編程應用程序提供了驅動支持。