王 梅,陳希平,張 傳,張 巖
1 嵌入式系統與自動(dòng)化儀器儀表
1.1 嵌入式系統及其發(fā)展
嵌入式系統(Embedded System)是以計算機技術(shù)為基礎,適用于對功能、可靠性、成本、體積、功耗嚴格要求的專(zhuān)用計算機系統。它的最大特點(diǎn)在于能夠根據特定用戶(hù)的需求,對軟硬件進(jìn)行合理裁剪,具有功耗低、體積小、集成度高等特點(diǎn),有利于整個(gè)系統的小型化,提高系統的智能化和網(wǎng)絡(luò )化程度。
嵌入式計算機經(jīng)歷了基于芯片的嵌入式系統(以單片機技術(shù)的應用為代表)、標準總線(xiàn)的嵌入式計算機系統(如STD總線(xiàn)、VEM總線(xiàn)、Multibus總線(xiàn))、PC總線(xiàn)的嵌入式計算機系統、高性能嵌入式微處理器在嵌入式計算機系統中的應用幾個(gè)發(fā)展階段。
計算機軟硬件技術(shù)的飛速發(fā)展,使得高性能嵌入式微處理器應用成為當前的熱點(diǎn),而實(shí)時(shí)多任務(wù)操作系統正成為這一應用中的重要核心部分。它與當前智能控制、網(wǎng)絡(luò )等新技術(shù)的進(jìn)一步融合,對業(yè)界產(chǎn)生深遠的影響,也推動(dòng)了嵌入式系統飛速發(fā)展。
1.2 自動(dòng)化儀器儀表與嵌入式系統
高級嵌入式計算機系統和網(wǎng)絡(luò )技術(shù)的應用,使儀器儀表將傳感測量、補償計算、工程量處理與故障診斷等功能集于一身,并能充分利用網(wǎng)絡(luò )時(shí)代的優(yōu)勢,完成遠程維護、遠程控制、故障預報等以前無(wú)法實(shí)現的功能。在這其中,芯片、總線(xiàn)、接口技術(shù),成為儀器儀表的內核,嵌入式系統成為技術(shù)的代表,并由此形成了儀器儀表行業(yè)發(fā)展的趨勢。
2 儀器儀表中高級嵌入式計算機系統的方案設計
2.1 注意要點(diǎn)
? 實(shí)時(shí)性好 特定用戶(hù)通常對獲取結果的時(shí)間延遲有明確限制,設計時(shí)必須充分考慮這一因素。
? 可靠性高 作為核心部件,嵌入式系統的損壞常造成系統的癱瘓,帶來(lái)無(wú)法估量的損失,因此要求有較高的可靠性。
? 集成度高 出于開(kāi)發(fā)效率和占用空間方面的考慮,要求嵌入式系統要有較高的集成度。
? 功耗低 某些移動(dòng)設備、便攜式設備等需要電池供電,決定了系統應當有更低的功耗。
? 環(huán)境適應能力強 自動(dòng)化儀器儀表的工作環(huán)境往往是不可控的,特別是熱、沖擊、光、強電磁場(chǎng)等,因此應考慮到對于這些干擾的防護措施。
2.2 開(kāi)發(fā)過(guò)程
(1) 目標產(chǎn)品的功能分析及定義
① 嵌入式系統的主要目標是進(jìn)行數據采集還是進(jìn)行控制;② 是否需要顯示界面,需要顯示時(shí),是以圖形方式還是文本方式顯示;③ 是否需要與其他的設備進(jìn)行數據交換,如需要,選擇何種方式,何種協(xié)議;④ 儀器儀表的各項主要性能指標定義。
(2) 根據需要的功能來(lái)確定硬件設備和軟件
(3) 嵌入式系統的軟件開(kāi)發(fā)可以分為以下幾個(gè)層次:
① 對硬件設備進(jìn)行直接控制的軟件開(kāi)發(fā);② 沒(méi)有用戶(hù)圖形界面的應用程序開(kāi)發(fā);③ 基于圖形界面的通用應用軟件的開(kāi)發(fā);④ 在基礎應用軟件上的高層開(kāi)發(fā)。
很多開(kāi)發(fā)環(huán)境主要應用于第③、④層次,因此開(kāi)發(fā)可以不在目標機上進(jìn)行,而在PC機上或PC的模擬環(huán)境中進(jìn)行。
3 高級嵌入式計算機系統中硬件和軟件的設計與選型
3.1 硬件選型
在選擇高檔嵌入式微處理器時(shí),要綜合考慮其性能、功耗、價(jià)格、供貨保證、開(kāi)發(fā)工具的配備以及工程師過(guò)去對這種處理器的經(jīng)驗和軟件的支持等因素。同時(shí),兼顧產(chǎn)品的整體成本,而不要只看到某一部件。有時(shí),一個(gè)快速而廉價(jià)的CPU可能意味著(zhù)外設成本的成倍增加。
3.2 軟件開(kāi)發(fā)平臺的選擇
實(shí)時(shí)多任務(wù)操作系統(RTOS)采用微內核技術(shù),設計追求靈活性,可配置、可裁剪、可擴充、可移植;強實(shí)時(shí)和高可靠性,有適應各種主流CPU的版本,非常適合儀器儀表的高級嵌入式計算機系統應用。目前主要有Integrated System公司的PSOS、Microtec Research公司的VRTX、Wind River System公司的Vxworks、QNX Software Systems Ltd公司的QNX等。許多頗具實(shí)力的軟件公司也加入了這一行列,推出Windows CE、Hopen OS、嵌入Linux、OS-9等。
(1) 評價(jià)一個(gè)RTOS一般可以從任務(wù)調度機制、內存管理、任務(wù)通訊、最小內存開(kāi)銷(xiāo)、任務(wù)切換時(shí)間、最大中斷禁止時(shí)間等幾個(gè)方面來(lái)衡量。
(2) 在選擇軟件開(kāi)發(fā)平臺時(shí),結合開(kāi)發(fā)目標和系統功能,還應該注意以下幾個(gè)方面:
① 實(shí)時(shí)操作系統的開(kāi)發(fā)環(huán)境。所用編程語(yǔ)言的類(lèi)型(以C或C++等通用語(yǔ)言為佳);提供的開(kāi)發(fā)工具包是否完備等。② 實(shí)時(shí)操作系統對圖形功能的支持,提供的圖形用戶(hù)接口是否滿(mǎn)足需求。③ 實(shí)時(shí)操作系統對網(wǎng)絡(luò )功能、通信功能的支持。這對于實(shí)現儀器儀表網(wǎng)絡(luò )化目標十分重要。
4 應用實(shí)例
蘭州煉化公司自動(dòng)化研究院為了研制新型質(zhì)量?jì)x表和現有儀表的升級換代,綜合分析了油品質(zhì)量指標分析儀、光譜儀、工業(yè)色譜儀、近紅外分析儀,并充分考慮現實(shí)需求和采用專(zhuān)門(mén)設計的正壓防爆裝置對控制器的需求,提出了開(kāi)發(fā)高級通用控制系統。設計方案如下:
(1) 質(zhì)量?jì)x表通用控制器主要用于為分析器實(shí)現分析提供需要的電氣條件,并采集數據、記錄、輸出結果。主要功能有:① 測量 包括溫度、壓力、流量等的測量;② 控制 要求控制器能靈活實(shí)現各種控制功能以應用于特定儀表;③ 輸入與輸出 多功能、智能化在線(xiàn)質(zhì)量?jì)x表必須能夠接收控制中心發(fā)出的指令,以多種方式向控制中心輸出狀態(tài)信息及檢測結果,并即時(shí)顯示圖形。
綜合分析質(zhì)量?jì)x表主要性能指標的要求,提出通用控制器的技術(shù)指標,見(jiàn)表1。
表1
圖1 通用控制器硬件結構圖
(2) 通用控制系統主要由嵌入式計算機系統、IO板和所需的信號調理板、功率驅動(dòng)等信號功率板組成(見(jiàn)圖1)。由于開(kāi)發(fā)周期及開(kāi)發(fā)成本的限制,嵌入式計算機系統主板選用商業(yè)化嵌入式計算機。針對儀表的功能,自行設計部分信號調理板、功率驅動(dòng)等專(zhuān)用接口板。
根據技術(shù)指標的要求,嵌入式計算機主要配置如下:主板:研華PCA6145L;CPU:INTEL / AMD 486;內存:8M / 16M;機箱:研華MBPC-641;數采板:研華PCL812PG;DOC2000:16M或以上;顯示器:640 x 480 VGA液晶平板顯示器。經(jīng)過(guò)比較,控制系統軟件采用QNX實(shí)時(shí)嵌入式操作系統作為軟件開(kāi)發(fā)平臺,以充分利用其體積小,實(shí)時(shí)性好的特點(diǎn)提高系統可靠性。
圖2 通用控制器軟件結構框圖
如圖2所示,通用控制器軟件由4個(gè)部分組成。① 主程序是唯一運行在圖形界面的程序,用PHAB開(kāi)發(fā)完成,主要任務(wù)是顯示分析結果、儀表狀態(tài)及參數,輔助輸入儀表運行參數、顯示操作提示,并完成系統運行管理,是其它幾類(lèi)程序的調度程序和管理程序;② 儀表IO服務(wù)程序用以完成系統的低級IO操作的執行,后臺運行,直接接受主程序的管理和調度;③ 面板鍵盤(pán)服務(wù)程序以中斷方式管理儀表面板鍵盤(pán),地位和運行方式類(lèi)似IO服務(wù)器程序;④ 針對個(gè)別儀表的特殊功能,設計專(zhuān)用服務(wù)程序,以后臺方式運行,通過(guò)進(jìn)程間通訊直接接受主程序的管理和調度。由于通用控制器針對的是質(zhì)量?jì)x表系列,故界面的總體風(fēng)格應該保持一致;其界面和控制程序必須模塊化,且具有一定的組態(tài)功能。
(3) 設計完成的在線(xiàn)質(zhì)量?jì)x表通用控制系統具有智能化的優(yōu)點(diǎn),并且較靈活。采用通用控制系統開(kāi)發(fā)新型在線(xiàn)質(zhì)量?jì)x表時(shí),只需根據儀表的特殊硬件接口要求制作相應的信號接口板,在通用控制器軟件提供的接口函數中編制儀表的特殊運行邏輯,并設置顯示變量,即可完成一種儀表控制器的設計。
這類(lèi)新型儀表具有界面美觀(guān)、操作簡(jiǎn)便、功能多樣的特點(diǎn),并且可以適應現場(chǎng)控制系統對智能儀表的需求。