輕工業鐘表研究所時控部 李 斌
多通道采樣系統的LabView實現方案
輕工業鐘表研究所時控部 李 斌
本文針對某型號多通道壓力信息監測系統的上位機監控模塊軟硬件設計展開討論。該系統上位機模塊以NI的可視化編程語言LabView為基礎進行開發,同時采用了市面上技術成熟的數據采集卡集成到工控機主機箱,有效降低了開發周期和維護成本。從開發過程和測試結果來看,使用該軟件技術既可以滿足多通道信號采樣結果的直觀顯示要求,又能很好的達到靈活調節顯示方式和顯示內容的效果。
多通道;LabView;數據采集卡
隨著檢測技術開發的發展進步,開發工具趨于多元化、人性化、智能化。這些技術進步使工程師的精力更多放在了開發對象的功能實現上,而不是去挖空心思研究代碼報錯的細枝末節。除了開發效率顯著提高,在眾多工程開發過程中,UI(User Interface,用戶界面)成為功能需求之后最受客戶關注的性能之一。好的操作界面是提高用戶體驗的重要因素,同時也是企業產品拉攏消費者的重要手段。
本文主要討論LabView軟件在某多通道信號監測系統中的應用。通過該技術手段可以實現上位機對信號的采集、處理、顯示等各類功能,并且開發效率極高。
該系統主要結構的原理框圖如圖1所示。

圖1 多通道壓力信息監測系統構成
圖1 所示中上位機是本論文所討論LabView的工作主戰場,這里集中了人機交互界面、數據采集卡、通訊卡等模塊,最終顯示給用戶的信息處理基本上要在上位機主機完成。主控單元是利用基于ARM7內核的LPC2194芯片研發的工控設備,用來接收、處理傳感器信號,直接驅動執行機構動作,上報相關信息給上位機。在該單元通信部分充分利用了其內嵌的CAN控制模塊,提高了研發效率[1]。信號采集單元包含了多種先進的傳感器,并且包含了自主研發的信號調理板卡,與選購的數據采集卡兼容。各模塊之間通過CAN通訊卡交互,可以很好地滿足當前普遍存在的分布控制需求[2]。
本系統為大幅縮短研發周期,選用了研華CAN通訊卡PCI-1680U。這是一款專用于CAN網絡,可與PC主板通過PCI總線方式連接的通信卡。通過其內置的CAN控制器,利用一系列成熟的總線仲裁技術,極大的降低了失幀現象的發生。在實際控制中,兩個CAN控制器可分別獨立運行,還兼容3.3 V和5V的信號系統,擴展性很好。
同時,根據對系統各類信號的檢測要求,本論文選配了同樣支持PCI總線的研華數據采集卡PCI-1741。其采樣速率最快可達200KS/s、分辨率達16位,完全滿足本系統對模擬信號采樣的要求。它還提供16路單端或8路差分輸入的模擬信號通道,1路16位D/ A輸出通道,16路數字量輸出通道,以及1個10MHz的16位多功能計數器通道,在運動控制方面也有強大擴展性。
4.1 LabView簡介
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種由美國國家儀器(National Instrument,NI)公司研制開發的圖形化編程語言的開發環境,類似于C和BASIC開發環境。它廣泛地被工業界、學術界和研究實驗室所接受,視為一個標準的數據采集和儀器控制軟件。LabVIEW集成了與滿足 GPIB、VXI、RS-232和RS-485協議的硬件及數據采集卡通訊的全部功能。它還內置了便于應用TCP/IP、ActiveX 等軟件標準的庫函數。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動有趣。它可以增強構建個性化科學和工程系統的能力,提供了實現儀器編程和數據采集系統的便捷途徑。使用該軟件進行原理研究、設計、測試并實現儀器系統時,大大提高了工作效率。
LabVIEW是一個軟件開發平臺,同時也是一個功能強大且靈活的編程語言。LabVIEW作為一種用圖標代替文本行創建應用程序的圖形化編程語言,又稱為 “G” 語言。它既定義了數據類型、結構類型、語法規則等編程語言的基本要素,也提供了包括斷點設置、單步調試和數據探針在內的程序調試工具。傳統文本編程語言根據語句和指令的先后順序決定程序執行順序,而LabVIEW則采用數據流編程方式,程序框圖中節點之間的數據流向決定了VI及函數的執行順序。使用這種語言編程時,基本上不寫程序代碼,取而代之的是流程圖或框圖。它盡可能利用了技術人員、科學家、工程師所熟悉的術語、圖標和概念,因此,LabVIEW是一個面向最終用戶的工具。LabVIEW采用編譯方式運行32位應用程序,解決了其它按解釋方式工作的圖形化編程平臺運行速度慢的問題,其運行速度與編譯C語言的速度相當,在功 能上和應用上不遜于任何高級語言[3]。
4.2 數據處理模塊
本論文涉及大量信號的監測,因此特別設計了多通道采樣模塊,針對系統中需要對各種快、慢信號進行采樣的功能需求進行相應的信號采集與處理。如圖2和 圖3所示分別為該采樣模塊的快信 號采樣子程序和慢信號采樣子程序。

圖2 快信號采集與處理子程序

圖3 慢信號采集與處理子程序

圖4 多通道采樣主界面
對于采用了多核處理器的系統,我們也可以針對設計目標對實時性的不同需求,分別規劃各個定時循環模塊的CPU運行策略。例如實時性較高的快信號采樣處理,我們可以采用多核同時運行的方式,而實時性要求較低的模塊,手動選擇單個處理器內核運算,這樣既保證了快信號的實時性,又降低了系統負荷。
上位機通過CAN總線報文得到多通道實時信息,在本論文設計的系統主界面顯示結果如圖4所示:
從現場測試結果來看,無論是對采樣信號處理實時要求高的場景,還是并行采集信息量較大的場景,用Labview都可以完美解決。
在信號處理應用方面,Labview具有先天優勢,再加上市場上已經非常成熟的配套硬件也容易獲得,使得該軟件得到了廣泛應用。只是由于成本相對較高,對于價格敏感的工業產品需要慎重采用。
[1]周立功,等編著.ARM嵌入式系統基礎教程[M].北京:北京航空航天大學出版社,2005,1(1): 132-379.
[2]程武山.分布式控制技術及其應用[M].北京:科學出版社,2008:1-3.
[3]楊樂平,李海濤,等,LabVIEW高級程序設計[M].北京:清華大學出版社,2003:1-389.
李斌,男,碩士研究生,輕工業鐘表研究所時控部助理工程師。