摘 要: 從虛擬儀器的概念出發(fā),采用低成本自動化系統(tǒng)的研究方法,提出了一種在硬件上基于PC/104嵌入式工控模板、軟件上基于通用編程語言的多功能無紙記錄儀,并著重從硬件設計和軟件開發(fā)等方面進行了分析與論述。
關鍵詞: 虛擬儀器 嵌入式系統(tǒng) 無紙記錄儀
1 虛擬儀器技術的概念及其應用前景
自1986年美國國家儀器公司(NI)提出虛擬儀器(Virtual Instrument)的概念以來,這種集計算機技術、通訊技術和測量技術于一體的模塊化儀器便在世界范圍內得到了廣泛的認同與應用,逐步體現(xiàn)了儀器儀表技術發(fā)展的一種趨勢。由于微電子技術、計算機技術、網(wǎng)絡通訊技術和軟件技術的高度發(fā)展,以及它們與各種測量技術在儀器儀表上的應用,使新的測試理論、測試方法、測試領域以及儀器結構不斷涌現(xiàn)并發(fā)展成熟,在許多方面已經(jīng)沖破了傳統(tǒng)儀器的概念,儀器測量的功能和作用也發(fā)生了質的變化。虛擬儀器概念的產(chǎn)生正是基于這樣一種技術背景。
儀器儀表技術的發(fā)展大致經(jīng)歷了以下兩條發(fā)展主線:從測量的技術和方法上劃分,經(jīng)歷了從機械儀表、模擬電子儀表、數(shù)字化電子儀表到智能儀表的發(fā)展過程;從儀表結構上劃分,經(jīng)歷了單機儀表、疊架式儀器系統(tǒng)到虛擬儀器系統(tǒng)的發(fā)展過程。傳統(tǒng)儀器一般均為一個獨立的裝置,有機箱、操作面板、信號I/O端子、信號處理機構或電路等,檢測結果輸出方式有數(shù)字、指針或圖形窗口等,有的還有打印輸出口。傳統(tǒng)儀表的功能可概括描述為:信號采集與控制、信號分析與處理、結果的表達與輸出,這些功能均以硬件或固化軟件的形式存在。這種架構形式?jīng)Q定了傳統(tǒng)儀器只能由儀器的生產(chǎn)廠來定義制造,而用戶無法改變。傳統(tǒng)儀器基本上未能擺脫獨立使用、手動操作、功能相對固定、使用具有局限性的模式。計算機技術的發(fā)展,給傳統(tǒng)儀表技術注入了強大的活力,在微電子技術和LSIC技術推動下,有力地促進了數(shù)字化儀器、智能儀器的快速發(fā)展。
在虛擬儀器系統(tǒng)中,用計算機靈活強大的軟件代替?zhèn)鹘y(tǒng)儀器的某些部件,用人的智力資源代替許多物質資源,通過一組軟件和硬件,形成了既有普通儀器的基本功能、又有一般儀器所不具備的特殊功能的新型儀器。虛擬儀器本質上是利用PC機強大的運算能力、圖形環(huán)境和在線幫助功能,建立具有良好人機交互性能的虛擬儀器面板,完成對儀器的控制、數(shù)據(jù)分析與顯示,并通過一組軟件和硬件,實現(xiàn)完全由用戶自己定義、適合不同應用環(huán)境和對象的各種功能。在虛擬儀器系統(tǒng)中,硬件僅僅是解決信號的輸入/輸出問題的方法和軟件賴以生存、運行的物理環(huán)境,軟件才是整個儀器的核心構件,正如NI公司提出的口號“軟件就是儀器”,任何使用者只要通過調整或修改儀器的軟件,便可方便地改變和增減儀器的功能和規(guī)模,甚至儀器的性質。
虛擬儀器的構成:如果按照構成儀器的三大功能部件來分,所有控制系統(tǒng)、工業(yè)計測系統(tǒng)均可歸納至虛擬儀器的框架中來。目前較為常見的虛擬儀器是數(shù)據(jù)采集系統(tǒng)(SCADA),見圖1。可編程儀器的信號處理、定時控制、集成總線、高速緩存、DMA等技術的應用,使這樣的SCADA系統(tǒng)能達到儀器級的性能、精度與可靠性。
虛擬儀器的軟件開發(fā)平臺:虛擬儀器的軟件開發(fā)平臺目前主要有兩類:第一類是基于傳統(tǒng)語言的Turbo C、VB、VC++等,這類語言具有適應面廣、開發(fā)靈活的特點,但開發(fā)人員需有較多的編程經(jīng)驗和較強的調試能力;第二類是基于圖形組態(tài)和編程的圖形組態(tài)軟件,如HP公司的VEE、IOtech公司的Dasylab、NI公司的LabVIEW、Capital Equipment公司的Testpoint 2.0和HEM公司的Snap-Master等。這類組態(tài)軟件都通過建立和連接圖標來構成虛擬儀器工作程序并定義其功能,而不是用傳統(tǒng)的文本編輯形式。它們具有編程效率高、通用性強、交叉平臺互換性好的特點,適用于大批量多品種儀器的生產(chǎn)。該類軟件缺點是缺少程序流程控制,大都解釋執(zhí)行。
當今的儀器儀表開發(fā)技術正與計算機技術日益緊密地結合在一起,利用虛擬儀表技術開發(fā)基于PC機的多功能無紙記錄儀,可使其硬件結構簡單、可靠性高、兼容性好、功能大大增強、使用更為靈活,并且可通過更新軟件實現(xiàn)不同的記錄要求,真正達到一機多用的目的。
2 多功能無紙記錄儀的技術要求和系統(tǒng)功能
記錄儀是工業(yè)生產(chǎn)自動化系統(tǒng)中十分常見的二次儀表。傳統(tǒng)型模擬記錄儀結構簡單、功能單一,存在著卡紙、卡筆、斷線等易發(fā)故障和換筆、換紙、添墨等大量日常維護工作。此類記錄儀由于其結構與功能的局限性,無法滿足綜合生產(chǎn)管理、生產(chǎn)過程智能化、數(shù)據(jù)傳輸網(wǎng)絡化和在線數(shù)據(jù)分析處理的需要。90年代以來,隨著虛擬儀器技術的日益發(fā)展,采用低成本自動化技術,研制與開發(fā)各類多功能智能型記錄儀表呈迅猛發(fā)展之勢,并逐漸批量進入工業(yè)應用領域。特別是在石化、冶金等行業(yè)的基礎自動化與過程自動化系統(tǒng)中,已大量融入各種類型的虛擬嵌入式儀表,其卓越的性能、良好的數(shù)據(jù)在線處理能力和實時數(shù)據(jù)通訊能力以及友好的人機交互平臺,得到人們日益重視。
基于虛擬儀器的多功能無紙記錄儀在技術上不僅要具備傳統(tǒng)式儀表所應具有的電氣性能和環(huán)境適應能力,而且還應具備如下的通用技術指標和系統(tǒng)功能:
(1)信號采樣:設置模擬輸入通道1~16路,采樣周期可選0.25秒/0.5秒/1秒。記錄間隔可通過設置畫面設定為1秒/2秒/4秒/8秒/20秒/40秒/120秒等。開關量輸入24點,接收被測對象的狀態(tài)信號。模擬量輸入通道可允許0~10V、1~5V、4~20mA的標準信號和S、B、R、K、N、T、E、J熱電偶以及Pt100、Cu50熱電阻等多種信號輸入,且可提供隔離輸入。
(2)設置功能:系統(tǒng)應具有強大的設置功能,可對儀表的通道名稱、量程、報警上下限、信號類型、單位、記錄周期、流量累計、流量溫度壓力補償參數(shù)等進行設置。允許保存100組用戶自定義設置。
(3)存儲功能:配置硬盤,使存儲歷史數(shù)據(jù)量達GB級。根據(jù)采樣時間不同,16個通道數(shù)據(jù)可存儲三年以上,形成數(shù)據(jù)文件并能調出任意歷史時刻曲線、數(shù)據(jù)、報警、流量累計值;可通過軟盤轉存任意時間段的歷史數(shù)據(jù)或通過RS-232接口傳送給其他PC機,在其上進行回放和分析打印。
(4)顯示功能:全中文人機界面,顯示信息豐富直觀,操作簡單。主要顯示畫面應有:①單通道趨勢、棒圖、瞬時數(shù)字顯示(選顯/循顯)畫面;②單通道歷史趨勢追憶;③多通道棒圖、數(shù)字顯示畫面;④多通道歷史趨勢追憶;⑤多通道流量累計畫面;⑥參數(shù)設置畫面;⑦報警顯示畫面;⑧軟盤轉存畫面;⑨RS-232通訊畫面。
(5)連鎖與報警功能:配置24點開關量輸出通道,根據(jù)采樣信號,提供簡單的連鎖和狀態(tài)控制信號;并可任意設置各通道上限、上上限、下限、下下限報警,在各顯示畫面上實時顯示報警值,同時實現(xiàn)報警輸出。
(6)數(shù)據(jù)管理功能:①顯示各通道記錄信號平均值、瞬時峰值、谷值等;②顯示流量累積的班平均值、日平均值、月平均值;③顯示流量累積的班累積值、日累積值、月累積值、年累積值;④提供常用數(shù)理統(tǒng)計工具,方便調用分析。
(7)打印功能:可連接通用打印機,隨時打印任意時刻歷史數(shù)據(jù),打印單通道和多通道趨勢曲線、報警信息、流量累積值等。
(8)流量溫壓補償功能:包括對蒸汽、天然氣、液體等各類流體的溫壓補償。根據(jù)每種流體不同的測試方法,通過參數(shù)設置畫面,以實現(xiàn)合適的測量與補償功能。
(9)通訊功能:可選擇使用RS-232C、RS-485通道接口與計算機聯(lián)網(wǎng),進行遠距離通訊,可多臺儀表組網(wǎng)實現(xiàn)集中管理。
(10)主要技術參數(shù):
·顯示精度:工程量實時顯示精度為±0.3%FS(滿量程),曲線棒狀圖顯示及追憶精度為±0.5%FS;
·存儲時間:僅受硬盤容量限制,一般16路模擬信號值可保存三年以上;
·通訊接口:提供RS-232C/RS-485兩個串行通訊接口。
以上技術指標和系統(tǒng)功能定義是多功能無紙記錄儀軟、硬件配置與設計的基本依據(jù)。
3 多功能無紙記錄儀的硬件平臺與軟件開發(fā)
3.1硬件方案
目前無紙記錄儀的硬件平臺的架構大致分為兩類:第一類采用通用型單片機(MCS51系列、MCS96系列、MCS196系列等)或專用掩膜電路,并輔以外圍I/O通道、存儲電路等,具有成本低廉的特點,但開發(fā)周期長、存儲容量小、軟件通用性差;第二類是采用ALL-IN-ONE結構模板,構成嵌入式PC機系統(tǒng),具有結構緊湊、功能強大、可靠性高、兼容性好、應用靈活方便、支持自開發(fā)、開發(fā)周期短等特點。考慮到多功能無紙記錄儀不同于其他專用檢測儀,它必須具有良好的數(shù)據(jù)分析處理能力、較大的存儲空間和數(shù)據(jù)網(wǎng)絡傳輸能力,因此選用ALL-IN-ONE型PC/104嵌入式模板構成記錄儀的硬件平臺是合適的。
PC/104總線的嵌入式工控模板是針對工業(yè)應用環(huán)境的惡劣條件而設計的,與PC機完全兼容,硬件接口均符合PC機標準,可直接駁接硬盤、軟驅、顯示器、鍵盤、鼠標等外部設備,共享PC機的設備驅動程序和其它基于PC的成熟軟件。
本機采用了PC/104家族中的PCM-3335模板,其配置為386SX-40CPU、板載4MRAM、一個ATA硬盤接口、一個1.44MB軟驅接口、一個VGA接口、一個平板顯示器接口、一個打印機并口和RS-232串口。
除PCM-3335模板外,構成硬件平臺的其它部件有:
·一個1GB硬盤驅動器和1.44MB軟盤驅動器,用于記錄數(shù)據(jù)、歷史數(shù)據(jù)、組態(tài)文件的存儲和轉儲。
·一個分辨率為320×RGB×240的6″彩色液晶顯示器,自帶控制器和顯示緩沖區(qū)VRAM,用于圖形、圖表、數(shù)據(jù)的顯示,允許數(shù)據(jù)并行傳輸。
·2×3薄膜數(shù)字鍵盤,主要用于人工設定或功能切換等操作。
·16路12位A/D轉換模板,可編程信號增益為1~16,A/D轉換速率達30kHz,用于對模擬信號的采樣和轉換。
·熱電偶轉換卡可編程增益為0.5~500,板上自帶冷端補償電路;熱電阻轉換卡可接鉑、銅電阻,測量范圍為-200℃~+500℃;熱電偶、熱電阻轉換卡與A/D轉換模板配合可直接接收熱電偶或熱電阻的溫度信號。
·48路開關量輸入/輸出模板,24×2通道TTLDIO為8255方式0,可通過軟件設置來決定某一路的輸入或輸出狀態(tài)。
·RS-485轉換器,將PCM-3335上的RS-232C端口轉換為RS-485端口,可實現(xiàn)單主站、多從站類型的分布式系統(tǒng),其節(jié)點既可以是多臺多功能無紙記錄儀,也可以是其它控制設備如PC機、PLC或智能儀表等。
·開關電源,提供+5V/7A、-5V/1A、+12V/3A、-12V/1A四組電源供各模板使用,PC/104模板大多只需+5V單一電源,且具有先進的電源管理功能、功耗低,從而降低了系統(tǒng)對電源的要求。
上述部件通過標準插件聯(lián)接,實現(xiàn)了模塊化儀表結構設計,根據(jù)需要可更換部分模件,配以相應的軟件,即可方便地組成適用各種應用場合的記錄型智能儀表。
多功能無紙記錄儀硬件配置示意圖見圖2。本記錄儀開發(fā)無需專用開發(fā)環(huán)境,只需在本配置上外接VGA顯示器和一個標準鍵盤,即可實現(xiàn)系統(tǒng)開發(fā)。
3.2 軟件設計與功能實現(xiàn)
由于PC/104模板與PC機系統(tǒng)完全兼容,為軟件開發(fā)帶來了極大的方便,無需編寫專門的硬件驅動程序。
本機軟件采用通用編程語言TURBOC2.0編制,運行在DOS6.22操作系統(tǒng)平臺上,主要由采樣中斷服務程序、鍵盤掃描中斷服務程序和主控程序組成。
采樣中斷服務程序主要是對各路模擬輸入信號進行定時采集、數(shù)值濾波、工程量變換、信號補償、報警判斷、流量累計、數(shù)據(jù)存儲等,中斷周期為100~1000ms可調。
鍵盤掃描中斷服務程序的任務是對數(shù)字鍵盤進行定時掃描。每個按鍵在不同操作畫面下作用各不相同,根據(jù)判斷結果置相應的標志,以便主程序執(zhí)行相應的功能子程序。該定時程序邏輯1/3秒執(zhí)行一次。鍵盤中斷優(yōu)先級低于采樣中斷。
主控程序包括對各部分程序的初始化、設置參數(shù)的讀入、實時數(shù)據(jù)的動態(tài)刷新、畫面切換、實時趨勢顯示、歷史趨勢顯示、流量累計顯示、報警顯示及輸出、數(shù)據(jù)的軟盤轉存、RS232或RS485通訊及數(shù)據(jù)、趨勢、報警信息的打印等子程序模塊。
系統(tǒng)開機后首先進行系統(tǒng)參數(shù)初始化和模擬量板、開關量板、RS232口等硬件的初始化,然后開辟內存數(shù)據(jù)區(qū),設置實時中斷,進入畫面顯示狀態(tài)。系統(tǒng)共設置九類畫面,根據(jù)按鍵判斷調用不同的畫面功能子程序,以實現(xiàn)趨勢、棒圖、實時數(shù)據(jù)、歷史趨勢、數(shù)據(jù)轉存、RS232通訊、報警、打印等畫面的切換功能。
3.3軟件設計要點
3.3.1采樣數(shù)據(jù)的濾波
對采樣信號的數(shù)值處理是保證記錄儀記錄精度的重要環(huán)節(jié)。在軟件中針對各種信號相對于時間的變化率不同,采用了不同的數(shù)值濾波方法,如中值均值復合濾波法和卡爾曼濾波法,防止脈動和隨機干擾引起的誤差。例如對于中值均值復合濾波法采用每次對每個參數(shù)連續(xù)采樣6次,將所得的數(shù)據(jù)排序,去除最大值和最小值,將其余數(shù)據(jù)取算術平均值作為有效采集數(shù)據(jù)。
3.3.2 高端內存與硬盤緩沖區(qū)的使用
PCM-3335模板有4MB內存。為了在DOS下有效地使用擴展內存,合理利用有限的內存資源,采取以下步驟:(1)裝載擴展內存管理程序HIMEM.SYS;(2)安裝EMM386.EXE,利用擴展內存創(chuàng)建上位內存UMB;(3)將DOS程序、設備驅動程序和磁盤緩沖區(qū)裝入高端內存或UMB中。
另外為提高系統(tǒng)的實時性和可靠性,減少讀/寫硬盤的次數(shù),為系統(tǒng)安裝了SMARTDRV程序,在擴展內存中創(chuàng)建了一個2MB超高速緩沖區(qū),即當程序要從磁盤讀取信息時,SMARTDRV從磁盤讀入多倍于所需信息的信息,保存在超高速緩沖區(qū)中,下次應用程序還要從該文件中讀入信息時,SMARTDRV就直接從超高速緩沖區(qū)中提供信息,從而提高了程序執(zhí)行速度。而且SMARTDRV總是將新的或修改過的信息拷貝到硬盤,所以關機時不會丟失數(shù)據(jù)。
3.3.3 圖形制作與漢字顯示
在畫面程序設計時采用了如下方法:首先用繪圖軟件繪出畫面的靜態(tài)部分,制成壓縮的圖形數(shù)據(jù)文件,系統(tǒng)啟動時將各圖形數(shù)據(jù)文件自動調入內存虛擬盤上,需顯示某畫面時將該圖形數(shù)據(jù)文件直接寫入VRAM中,再從動態(tài)數(shù)據(jù)區(qū)取所需顯示數(shù)據(jù)。這樣大大加快了畫面及漢字的顯示與刷新速度,滿足了實時響應的要求。
本記錄儀采用全漢字界面,但動態(tài)提示信息中用到的漢字僅幾十個,為減少系統(tǒng)占用的存儲空間,有必要建立自己的漢字庫。利用公式:
區(qū)位碼=漢字機內碼-0xA0A0
字庫碼=(區(qū)碼-1)×94+(位碼-1)
從UCDOS的16×16的字庫中提取出所需漢字的字模信息,存入一文件構成小漢字庫。顯示時,從自建字庫中找到所需漢字的字模,在西文環(huán)境下利用PUTPIXEL函數(shù)以點圖方式顯示。由于所用漢字有限,所以小漢字庫占用空間不大。
4 多功能無紙記錄儀的特點與應用前景
(1)由于采用嵌入式設計,記錄儀外形尺寸可制成標準模擬儀表安裝尺寸,直接替換Ⅲ型儀表。經(jīng)使用0.01級標準表檢測,其實時顯示精度優(yōu)于±0.3%FS。
(2)無紙、墨水及一切機械傳動部件,硬件模塊采用工控設計,適應工業(yè)現(xiàn)場要求,可靠性高。
(3)硬件系統(tǒng)與PC機系統(tǒng)完全兼容,且采用模塊化儀表結構,組態(tài)靈活方便,系統(tǒng)開發(fā)周期短,通用性強。
(4)人機界面友好,全漢字畫面顯示,能以多種彩色畫面實時、動態(tài)地顯示現(xiàn)場的工藝參數(shù),信息量大,按鍵設置少,操作簡單、方便。
(5)大容量數(shù)據(jù)存儲,1~3年數(shù)據(jù)可隨時查看。
(6)配有軟驅、串行、并行輸出接口,能隨時調出數(shù)據(jù)或方便地與PC機通訊。
基于虛擬儀器概念設計的多功能無紙記錄儀充分體現(xiàn)了虛擬儀器功能強大、結構靈活、適應范圍廣的特點,特別是其軟、硬件均采用模塊化設計,更換部分插件或軟件即可方便地組成各種帶記錄功能的智能二次儀表。一塊多功能無紙記錄儀可代替多臺傳統(tǒng)式儀表,且所存數(shù)據(jù)極易查詢和實現(xiàn)統(tǒng)計分析。無紙記錄儀及其系列智能二次表的開發(fā)使用,將會大大減少儀表架上儀表的數(shù)量,節(jié)省大量的配件和維修開銷,降低維護人員工作量,使企業(yè)管理更趨數(shù)據(jù)化和網(wǎng)絡化。
參考文獻
1 阮德生. 自動測試技術與計算機儀器系統(tǒng)設計.西安:西安電子科技大學出版社,1997
2 王留群.虛擬儀器及其應用.世界儀表與自動化,1999(8)
3 LabVIEW Users Manual.National Instrument Corp, USA
4 陳萬春,朱良軍.ALL-IN-ONE型PC/104嵌入式工業(yè)控制計算機.電子技術應用,1996;22(7)