基于Windows CE 的嵌入式工業(yè)監(jiān)控系統(tǒng)
摘 要:WindowsCE是面向32位處理器的模塊化搶先式多任務實時嵌入式操作系統(tǒng),以其緊湊、高效、可裁減等優(yōu)點適用于硬件資源受限的各種工業(yè)監(jiān)控系統(tǒng)中。本文首先分析了WindowsCE.NET的技術特點和在工控領域應用的優(yōu)點,最后介紹了在井下膠帶輸送機集中監(jiān)控系統(tǒng)中,基于WindowsCE嵌入式操作系統(tǒng)與 PC104模塊的智能監(jiān)控分站的軟硬件設計開發(fā)。
關鍵詞:嵌入式系統(tǒng),監(jiān)控系統(tǒng),windows CE,嵌入式操作系統(tǒng)
1. 引言
早期的嵌入式系統(tǒng)通常是以單個芯片為核心的系統(tǒng),大部分應用于一些工業(yè)控制系統(tǒng)中,功能簡單,成本低,通常沒有操作系統(tǒng)的支持。隨著微電子技術的進步,芯片的功能大大增強,16位和32位的嵌入式微處理器逐漸成為嵌入式系統(tǒng)設計的主流。但是,只有嵌入式微處理器是不夠的,還需要有一個運行于嵌入式微處理器上的系統(tǒng)平臺,嵌入式操作系統(tǒng)便應運而生。嵌入式操作系統(tǒng)要有良好的可移植性,能夠運行于不同的微處理器上;內(nèi)核開銷小、效率高、具有高度的模塊化和擴展性;可以提供多任務、多進程、多線程處理;有多種設備支持、網(wǎng)絡支持、圖形窗口以及用戶界面等功能;向用戶提供大量應用程序接口,應用軟件開發(fā)工作變得規(guī)范,可實現(xiàn)模塊化編程。另一方面,隨著應用對象的擴大和技術的進步,嵌入式操作系統(tǒng)傳統(tǒng)應用領域——工業(yè)控制領域?qū)I(yè)控制系統(tǒng)的功能和性能提出了許多新的要求。例如,適應惡劣的工作環(huán)境,熟悉和友好的用戶界面,統(tǒng)一的編程界面,強大的通信功能和多媒體功能等。很多軟件廠商迎合這種發(fā)展需要,推出了多種不同特點的嵌入式操作系統(tǒng)。
2. Windows CE 嵌入式操作系統(tǒng)
WindowsCE(簡稱WinCE)便是由微軟公司推出的一個面向嵌入式應用的通用操作系統(tǒng),由于它的3.0 及以前版本的實時性較差,在工業(yè)控制領域應用較少,主要應用在便攜式和信息家電領域。Windows CE.NET(簡稱WinCE.NET)是他的最新版本(也就是4.0),它的出現(xiàn)極大地改善了它的實時性能,和通訊能力,為Win CE進入工業(yè)控制領域奠定了基礎。
從系統(tǒng)的角度看,WinCE.NET 不僅僅是一個操作系統(tǒng),他還包括多種微處理器以及板卡設備的支持、系統(tǒng)開發(fā)工具、應用開發(fā)工具、集成的應用程序等[1],所有這些構成了WinCE.NET的體系機構,如圖1所示。
圖1 Windows CE.NET體系結構
從圖1中可以看出,一個基于WINCE的嵌入式系統(tǒng)可分為四個層次,從底層到上層分別是硬件層、硬件支持層、操作系統(tǒng)層和應用程序?qū)印S布邮窍到y(tǒng)的硬件,包括微處理器和各種周邊設備。硬件支持層也成為硬件抽象層(BSP),它提供了硬件和操作系統(tǒng)之間的接口,操作系統(tǒng)要訪問具體的硬件就可以通過BSP層提供的API進行訪問,而不必直接與硬件打交道。操作系統(tǒng)層中有WINCE的組件,用戶可以根據(jù)自己的需要進行定制,選擇需要的組件,去掉不必要的組件,這樣可以減小內(nèi)存需求,使系統(tǒng)性能達到最優(yōu)。應用程序?qū)邮怯脩魹樘囟ǖ那度胧较到y(tǒng)開發(fā)的應用程序。
Win.NET 的一個很明顯的特點就是可裁減、可配置,這就體現(xiàn)在操作系統(tǒng)層中:它有一個很小的內(nèi)核(NK.EXE),基本實現(xiàn)六類功能調(diào)度、內(nèi)存管理、異常處理、系統(tǒng)內(nèi)通信機制、核心API和系統(tǒng)調(diào)試功能。其余功能在單獨模塊中實現(xiàn),例如設備管理模塊(Device.exe)是設備管理的核心;數(shù)據(jù)存儲模塊(filesys.exe)提供基本的數(shù)據(jù)存儲能力,包括對象存儲和文件系統(tǒng),圖形用戶界面模塊(GWES.exe);另外還有通信模塊、驅(qū)動程序模塊、OAL/HAL模塊、Win32系統(tǒng)服務等等。在Windows CE操作系統(tǒng)的構造工具Platform Builder 中,每一個模塊可以稱之為一個特性(Feature),系統(tǒng)提供的特性之間可能是獨立的也有可能有一些依賴關系,Platform Builder可以管理這些特性,并且可以跟蹤這些關系,通過增加或者刪除這些特性來配置系統(tǒng),而背后的模塊組織、編譯、裝配等工作由PlatformBuilder 完成,最終生成一個結構緊湊的可實際運行的系統(tǒng)鏡像文件。
對系統(tǒng)設計者而言,需要自行開發(fā)的是應用程序和直接與硬件有關的部分,包括硬件系統(tǒng)本身、OAL、設備驅(qū)動程序[2]。
3. Win CE在嵌入式控制系統(tǒng)中的應用分析
WinCE.NET 適應了工業(yè)控制操作系統(tǒng)對嚴格的實時處理功能,高可靠性,良好的開放性,對人機界面、開發(fā)環(huán)境、可操作性、成本等方面的要求。這可以從以下幾個方面說明:
(1) 實時性
盡管windows CE 操作系統(tǒng)以前的版本提供一些RTOS性能,但是自Windows CE 3.0以來內(nèi)核的許多重大改變才使的Windows CE的實時性能得到重大改變。 Windows CE.NET 實時能力的設計目標參考了大量GMPTG的調(diào)查研究,它的設計目標可以適應大部分(95%)硬實時系統(tǒng)的需求:1ms定時周期的誤差約為100us,在200MHz的X86系統(tǒng)下可以期望達到50us。實時能力的另一個重要指標是中斷延時,在Window CE.NET 中 中斷延時和處理方式密切相關,ISR延時非常短,IST延時較長。
(2) 可靠性
Windows CE內(nèi)核具有內(nèi)存管理功能,可以檢查出應用造成的系統(tǒng)異常,抑制由于應用不正常直接破壞系統(tǒng)的危險性。所以Windows CE比一般的實時系統(tǒng)健壯。
(3) 人機界面
Window CE 不僅支持圖形和窗口,具有多媒體功能,而且還可以利用豐富靈活的控件庫在Windows CE環(huán)境下為嵌入式應用建立各種圖形用戶界面,完全可以滿足工業(yè)控制系統(tǒng)對人機界面的要求。
(4) 開放性
Windows CE具有良好的通信能力,廣泛支持各種通信硬件、局域網(wǎng)連接以及撥號連接,并提供與PC、內(nèi)部網(wǎng)以及Internet的連接,包括用于應用級數(shù)據(jù)傳輸?shù)脑O備至設備間的互連。可以內(nèi)嵌WEB和FPT服務器,使工業(yè)監(jiān)控設備具有IT功能[3]。
(5) 開發(fā)成本和開發(fā)環(huán)境
Windows CE的開發(fā)成本低,生成和調(diào)試工具方便易用。Windows CE Platform Builder 4.0提供了迅速創(chuàng)建Windows CE嵌入式系統(tǒng)需要的全部軟件工具。Platform Builder主要包括Windows CE Add-on Pack(插件包)、各種調(diào)試工具及Embedded Visual Tools(由面向嵌入式系統(tǒng)開發(fā)而進行優(yōu)化的Embedded Visual Basic和Embedded Visual C++組成)。
正是基于以上幾點,在輸送機監(jiān)控系統(tǒng)的智能監(jiān)控分站開發(fā)中,采用了強大的WinCE.NET作為系統(tǒng)開發(fā)平臺。
4. 礦井下嵌入式監(jiān)控器的設計與開發(fā)
井下膠帶輸送機監(jiān)控系統(tǒng),是一種適用于煤礦井下有甲烷和煤塵爆炸危險環(huán)境中的,采用本安設計的,通用型、高性能、高可靠性的工業(yè)自動化系統(tǒng),它采用模塊化的設計和快插技術,集檢測、控制、安全保障、通訊、管理與一體可實現(xiàn)礦井下皮帶運輸機,工作面刮板運輸機,破碎機、轉載機的集中控制、監(jiān)控的通訊等,以及全礦井集中控制。其系統(tǒng)結構簡圖如圖2所示。
圖2輸送機集中監(jiān)控系統(tǒng)結構示意圖
整個監(jiān)控系統(tǒng)分為三層結構,頂層是中央監(jiān)控管理層;中間層主要有監(jiān)控分站組成,稱為前置監(jiān)控層;底層有兩種總線:Linie 和 AST 總線,Linie總線用于上位機與礦井下控制器及控制器與控制器之間的連接。AST總線用于控制器與智能IO單元、非智能單元之間的連接。
可以看出,監(jiān)控智能分站是頂層和底層信息的樞紐,負責檢測和控制信號的上傳下達,系統(tǒng)的穩(wěn)定運行有賴于智能分站的穩(wěn)定運行。因此,在筆者開發(fā)的井下膠帶輸送機監(jiān)控分站,從硬件和軟件上考慮了他的穩(wěn)定性。主控計算機采用了研華PC/104總線結構的產(chǎn)品PCM-3350 嵌入式CPU模塊和PCM-3612 RS485/422串行通訊卡。PCM-335內(nèi)置美國國家半導體公司的GX1-233 MHz嵌入式處理器,自帶10/100Base-T 網(wǎng)卡,板載 LCD 控制器支持36位圖像,帶有2個串口和1個并口、1個軟驅(qū)接口、1個CF卡電子盤接口和1個IDE接口,主板功耗小于10W。具體設計中采用了一塊基板,在其上引出CPU模塊的PC104總線,把PC104模塊當作一塊普通的應用功能板插在基板上,在基板上再插上其它具體的功能板,如I/O模板、A/D模板等,就構成了一個完整的應用系統(tǒng)。系統(tǒng)硬件總體結構如圖3所示。
此方法的特點是:采用基板將嵌入式計算機和其它PC104模塊連接起來而代替以往將I/O擴展板直接插入到計算機中的辦法,它體現(xiàn)了嵌入式系統(tǒng)的設計方法。另外,根據(jù)煤礦行業(yè)電氣設備要求,在硬件方面,設計了達到本安要求信號量采集板和模擬量采集轉換板,用于采集系統(tǒng)各種狀態(tài)量;采用大尺寸彩色液晶顯示屏和不銹鋼小鍵盤作為人機接口。
PCM3350上運行WinCE操作系統(tǒng)。WINCE的開發(fā)平臺Plateform Builder 4.0主要用來進行相應的操作系統(tǒng)配置和編譯,由于微軟提供的標準串口驅(qū)動不支持多串口共享中斷,而系統(tǒng)又沒有足夠的中斷供多串口使用,所以必須根據(jù)設置好3612的中斷和基地址開發(fā)相應的可共享中斷的多串口驅(qū)動。有了串口驅(qū)動,將其加入到用戶組件庫中,然后再的加入相應的網(wǎng)卡,LCD顯示,CF卡,USB驅(qū)動,以及一些應用服務如:MFC類庫,硬盤驅(qū)動,另外加入Web Server用于遠程網(wǎng)絡訪問。這些都確定后,然后配置相應的內(nèi)存和上面各種功能的相應注冊表鍵值,然后編譯操作系統(tǒng)鏡像并下載,進行相應的操作系統(tǒng)功能測試就可以了。
該監(jiān)控系統(tǒng)應用軟件采用MCGS嵌入版組態(tài)軟件。它是基于Windows CE實時多任務操作系統(tǒng)的專門應用于嵌入式操作系統(tǒng)的應用組態(tài)軟件。運行時,監(jiān)控系統(tǒng)將通過串口按照串行協(xié)議從控制器周期讀取數(shù)據(jù)并存儲在組態(tài)軟件的實時數(shù)據(jù)庫中,并以圖形、文本、動畫等形式顯示在液晶屏上,然后通過工業(yè)以太網(wǎng)上位機查詢和數(shù)據(jù)同步[4]。
由于采用了Wince.NET 嵌入式操作系統(tǒng),使監(jiān)控系統(tǒng)的實時性和可靠性的到保障,而且MCGS嵌入版組態(tài)軟件使Wince.Net 用戶界面得到進一步加強。整個系統(tǒng)的軟件部分可以存儲在一片32M的CF卡中,具有體積小、防塵、抗震等優(yōu)點,可以在各種惡略環(huán)境下長期工作。
5. 總結
到目前為止,工業(yè)控制系統(tǒng)中的自動化設備仍然受專用硬件或工業(yè)化PC平臺的限制。專用硬件通常十分耐用,并能抗惡劣環(huán)境,但是只能用于單一的、特定的用途。雖然工業(yè)化PC比專用硬件更具有靈活性,但是由于振動、灰塵、潮濕、高溫以及其它環(huán)境問題的影響,工業(yè)化PC平臺經(jīng)常會出現(xiàn)故障和數(shù)據(jù)丟失。Windows CE操作系統(tǒng)是一個適合下一代互連工業(yè)自動化設備的理想小體積嵌入平臺。WinCE還具有很強的實時性能,支持確定性的響應時間控制。Windows CE能從閃存啟動,從而避免了暴露在灰塵、高溫和震動環(huán)境下,使它可以適應惡劣的生產(chǎn)環(huán)境。基于Windows CE的嵌入式控制系統(tǒng)提供統(tǒng)一的、可伸縮的解決方案,將專用硬件的耐用性與PC的靈活性結合在一起。因此Windows CE在工業(yè)控制領域有著很好的應用前景。
參考文獻
[1]陳向群,Windows CE.NET 系統(tǒng)分析及實驗教程[M]機械工業(yè)出版社
[2]胡虛懷 鄭若忠, WindowsCE的結構與特征分析[J] 計算機時代 2000年01期
[3]劉少情,吳慧中,王國中 基于WindowsCE 3.0的嵌入式系統(tǒng)開發(fā) [J]計算機與現(xiàn)代化 2002年 第2期(78)P31-P35
[4]基于Web及Windows CE的HMI 測控技術1999 18卷 第6期
評論