輕工業(yè)鐘表研究所時(shí)控部 李 斌
多通道采樣系統(tǒng)的LabView實(shí)現(xiàn)方案
輕工業(yè)鐘表研究所時(shí)控部 李 斌
本文針對(duì)某型號(hào)多通道壓力信息監(jiān)測(cè)系統(tǒng)的上位機(jī)監(jiān)控模塊軟硬件設(shè)計(jì)展開(kāi)討論。該系統(tǒng)上位機(jī)模塊以NI的可視化編程語(yǔ)言LabView為基礎(chǔ)進(jìn)行開(kāi)發(fā),同時(shí)采用了市面上技術(shù)成熟的數(shù)據(jù)采集卡集成到工控機(jī)主機(jī)箱,有效降低了開(kāi)發(fā)周期和維護(hù)成本。從開(kāi)發(fā)過(guò)程和測(cè)試結(jié)果來(lái)看,使用該軟件技術(shù)既可以滿足多通道信號(hào)采樣結(jié)果的直觀顯示要求,又能很好的達(dá)到靈活調(diào)節(jié)顯示方式和顯示內(nèi)容的效果。
多通道;LabView;數(shù)據(jù)采集卡
隨著檢測(cè)技術(shù)開(kāi)發(fā)的發(fā)展進(jìn)步,開(kāi)發(fā)工具趨于多元化、人性化、智能化。這些技術(shù)進(jìn)步使工程師的精力更多放在了開(kāi)發(fā)對(duì)象的功能實(shí)現(xiàn)上,而不是去挖空心思研究代碼報(bào)錯(cuò)的細(xì)枝末節(jié)。除了開(kāi)發(fā)效率顯著提高,在眾多工程開(kāi)發(fā)過(guò)程中,UI(User Interface,用戶界面)成為功能需求之后最受客戶關(guān)注的性能之一。好的操作界面是提高用戶體驗(yàn)的重要因素,同時(shí)也是企業(yè)產(chǎn)品拉攏消費(fèi)者的重要手段。
本文主要討論LabView軟件在某多通道信號(hào)監(jiān)測(cè)系統(tǒng)中的應(yīng)用。通過(guò)該技術(shù)手段可以實(shí)現(xiàn)上位機(jī)對(duì)信號(hào)的采集、處理、顯示等各類功能,并且開(kāi)發(fā)效率極高。
該系統(tǒng)主要結(jié)構(gòu)的原理框圖如圖1所示。
圖1 多通道壓力信息監(jiān)測(cè)系統(tǒng)構(gòu)成
圖1 所示中上位機(jī)是本論文所討論LabView的工作主戰(zhàn)場(chǎng),這里集中了人機(jī)交互界面、數(shù)據(jù)采集卡、通訊卡等模塊,最終顯示給用戶的信息處理基本上要在上位機(jī)主機(jī)完成。主控單元是利用基于ARM7內(nèi)核的LPC2194芯片研發(fā)的工控設(shè)備,用來(lái)接收、處理傳感器信號(hào),直接驅(qū)動(dòng)執(zhí)行機(jī)構(gòu)動(dòng)作,上報(bào)相關(guān)信息給上位機(jī)。在該單元通信部分充分利用了其內(nèi)嵌的CAN控制模塊,提高了研發(fā)效率[1]。信號(hào)采集單元包含了多種先進(jìn)的傳感器,并且包含了自主研發(fā)的信號(hào)調(diào)理板卡,與選購(gòu)的數(shù)據(jù)采集卡兼容。各模塊之間通過(guò)CAN通訊卡交互,可以很好地滿足當(dāng)前普遍存在的分布控制需求[2]。
本系統(tǒng)為大幅縮短研發(fā)周期,選用了研華CAN通訊卡PCI-1680U。這是一款專用于CAN網(wǎng)絡(luò),可與PC主板通過(guò)PCI總線方式連接的通信卡。通過(guò)其內(nèi)置的CAN控制器,利用一系列成熟的總線仲裁技術(shù),極大的降低了失幀現(xiàn)象的發(fā)生。在實(shí)際控制中,兩個(gè)CAN控制器可分別獨(dú)立運(yùn)行,還兼容3.3 V和5V的信號(hào)系統(tǒng),擴(kuò)展性很好。
同時(shí),根據(jù)對(duì)系統(tǒng)各類信號(hào)的檢測(cè)要求,本論文選配了同樣支持PCI總線的研華數(shù)據(jù)采集卡PCI-1741。其采樣速率最快可達(dá)200KS/s、分辨率達(dá)16位,完全滿足本系統(tǒng)對(duì)模擬信號(hào)采樣的要求。它還提供16路單端或8路差分輸入的模擬信號(hào)通道,1路16位D/ A輸出通道,16路數(shù)字量輸出通道,以及1個(gè)10MHz的16位多功能計(jì)數(shù)器通道,在運(yùn)動(dòng)控制方面也有強(qiáng)大擴(kuò)展性。
4.1 LabView簡(jiǎn)介
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種由美國(guó)國(guó)家儀器(National Instrument,NI)公司研制開(kāi)發(fā)的圖形化編程語(yǔ)言的開(kāi)發(fā)環(huán)境,類似于C和BASIC開(kāi)發(fā)環(huán)境。它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件。LabVIEW集成了與滿足 GPIB、VXI、RS-232和RS-485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能。它還內(nèi)置了便于應(yīng)用TCP/IP、ActiveX 等軟件標(biāo)準(zhǔn)的庫(kù)函數(shù)。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過(guò)程都生動(dòng)有趣。它可以增強(qiáng)構(gòu)建個(gè)性化科學(xué)和工程系統(tǒng)的能力,提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。使用該軟件進(jìn)行原理研究、設(shè)計(jì)、測(cè)試并實(shí)現(xiàn)儀器系統(tǒng)時(shí),大大提高了工作效率。
LabVIEW是一個(gè)軟件開(kāi)發(fā)平臺(tái),同時(shí)也是一個(gè)功能強(qiáng)大且靈活的編程語(yǔ)言。LabVIEW作為一種用圖標(biāo)代替文本行創(chuàng)建應(yīng)用程序的圖形化編程語(yǔ)言,又稱為 “G” 語(yǔ)言。它既定義了數(shù)據(jù)類型、結(jié)構(gòu)類型、語(yǔ)法規(guī)則等編程語(yǔ)言的基本要素,也提供了包括斷點(diǎn)設(shè)置、單步調(diào)試和數(shù)據(jù)探針在內(nèi)的程序調(diào)試工具。傳統(tǒng)文本編程語(yǔ)言根據(jù)語(yǔ)句和指令的先后順序決定程序執(zhí)行順序,而LabVIEW則采用數(shù)據(jù)流編程方式,程序框圖中節(jié)點(diǎn)之間的數(shù)據(jù)流向決定了VI及函數(shù)的執(zhí)行順序。使用這種語(yǔ)言編程時(shí),基本上不寫(xiě)程序代碼,取而代之的是流程圖或框圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語(yǔ)、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向最終用戶的工具。LabVIEW采用編譯方式運(yùn)行32位應(yīng)用程序,解決了其它按解釋方式工作的圖形化編程平臺(tái)運(yùn)行速度慢的問(wèn)題,其運(yùn)行速度與編譯C語(yǔ)言的速度相當(dāng),在功 能上和應(yīng)用上不遜于任何高級(jí)語(yǔ)言[3]。
4.2 數(shù)據(jù)處理模塊
本論文涉及大量信號(hào)的監(jiān)測(cè),因此特別設(shè)計(jì)了多通道采樣模塊,針對(duì)系統(tǒng)中需要對(duì)各種快、慢信號(hào)進(jìn)行采樣的功能需求進(jìn)行相應(yīng)的信號(hào)采集與處理。如圖2和 圖3所示分別為該采樣模塊的快信 號(hào)采樣子程序和慢信號(hào)采樣子程序。
圖2 快信號(hào)采集與處理子程序
圖3 慢信號(hào)采集與處理子程序
圖4 多通道采樣主界面
對(duì)于采用了多核處理器的系統(tǒng),我們也可以針對(duì)設(shè)計(jì)目標(biāo)對(duì)實(shí)時(shí)性的不同需求,分別規(guī)劃各個(gè)定時(shí)循環(huán)模塊的CPU運(yùn)行策略。例如實(shí)時(shí)性較高的快信號(hào)采樣處理,我們可以采用多核同時(shí)運(yùn)行的方式,而實(shí)時(shí)性要求較低的模塊,手動(dòng)選擇單個(gè)處理器內(nèi)核運(yùn)算,這樣既保證了快信號(hào)的實(shí)時(shí)性,又降低了系統(tǒng)負(fù)荷。
上位機(jī)通過(guò)CAN總線報(bào)文得到多通道實(shí)時(shí)信息,在本論文設(shè)計(jì)的系統(tǒng)主界面顯示結(jié)果如圖4所示:
從現(xiàn)場(chǎng)測(cè)試結(jié)果來(lái)看,無(wú)論是對(duì)采樣信號(hào)處理實(shí)時(shí)要求高的場(chǎng)景,還是并行采集信息量較大的場(chǎng)景,用Labview都可以完美解決。
在信號(hào)處理應(yīng)用方面,Labview具有先天優(yōu)勢(shì),再加上市場(chǎng)上已經(jīng)非常成熟的配套硬件也容易獲得,使得該軟件得到了廣泛應(yīng)用。只是由于成本相對(duì)較高,對(duì)于價(jià)格敏感的工業(yè)產(chǎn)品需要慎重采用。
[1]周立功,等編著.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京:北京航空航天大學(xué)出版社,2005,1(1): 132-379.
[2]程武山.分布式控制技術(shù)及其應(yīng)用[M].北京:科學(xué)出版社,2008:1-3.
[3]楊樂(lè)平,李海濤,等,LabVIEW高級(jí)程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2003:1-389.
李斌,男,碩士研究生,輕工業(yè)鐘表研究所時(shí)控部助理工程師。