布光系統(tǒng)是廣泛應(yīng)用于電視演播廳,、電影攝影柵,、體育場(chǎng)館以及舞廳的一種機(jī)械化照明燈具有其控制系統(tǒng),是為增強(qiáng)舞臺(tái)藝術(shù)效果的一種燈光控制設(shè)備,。目前,,布光系統(tǒng)存在的問(wèn)題是:人機(jī)界面差,操作復(fù)雜,;不能實(shí)時(shí)檢測(cè)故障部位及原因,,系統(tǒng)故障率大,難以維護(hù),;不能實(shí)現(xiàn)對(duì)被控對(duì)象的全部控制,,只實(shí)現(xiàn)了單一、局部控制,;缺乏形象的吊桿,、燈具動(dòng)作顯示。
本文介紹的布光監(jiān)控系統(tǒng)采用數(shù)字化分布嵌入式控制系統(tǒng)實(shí)現(xiàn)布光任務(wù),。在布光系統(tǒng)中采用其于Windows CE的嵌入式網(wǎng)絡(luò)監(jiān)控系統(tǒng),。該系統(tǒng)實(shí)時(shí)性好,可靠性高,;速度快,,大容量的特性可以適應(yīng)不斷增長(zhǎng)的系統(tǒng)數(shù)據(jù)處理需求;體積小,結(jié)構(gòu)設(shè)計(jì)方便靈活,,設(shè)備和軟件成本大幅下降,;基于Windows的嵌入式開發(fā)技術(shù)相對(duì)普及,人才成本下降,。
1 系統(tǒng)概述
應(yīng)用于布光系統(tǒng)的嵌入式網(wǎng)絡(luò)監(jiān)控系統(tǒng)為數(shù)字雙向串行通訊控制系統(tǒng),。整個(gè)系統(tǒng)由控制臺(tái)、網(wǎng)絡(luò)控制器,、提升設(shè)備,、燈具控制器四部分組成。其中控制臺(tái)由專用控制臺(tái),、備份控制臺(tái)和無(wú)線遙控三部分構(gòu)成,;網(wǎng)絡(luò)控制器負(fù)責(zé)網(wǎng)絡(luò)數(shù)據(jù)的傳輸,包括控制臺(tái)向下傳輸命令和下位機(jī)傳感器信號(hào)的返回,,同時(shí)負(fù)責(zé)各控制臺(tái)之間的切換,;提升設(shè)備由提升機(jī)控制器、提
升機(jī)和吊桿構(gòu)成,;燈具控制器控制燈具實(shí)現(xiàn)不同的動(dòng)作,。
主控臺(tái)是系統(tǒng)的主要控制平臺(tái),硬件由PC/104和液晶顯示器組成,,同時(shí)使用Microsoft的Windows CE操作系統(tǒng),。備份控制臺(tái)由普通PC機(jī)實(shí)現(xiàn),刪減主控制臺(tái)功能,,保留部分必要的功能,,起到備份數(shù)據(jù)和輔助控制的作用。遙控器是手掛式輔助控制器,,在100m內(nèi)可以可靠有效地控制系統(tǒng),。無(wú)線遙控模塊采用單片無(wú)線收發(fā)一體芯片nRF401。該芯片具有低發(fā)射功率和高接收靈敏度的特點(diǎn),。
網(wǎng)絡(luò)控制器負(fù)責(zé)主控臺(tái),、備份臺(tái)、遙控器三個(gè)控制臺(tái)直接控制權(quán)力的分配,,同時(shí)負(fù)責(zé)由上而下控制命令的傳輸以及傳感器信息由下而上的傳遞,。網(wǎng)絡(luò)控制器與主控臺(tái)和備份臺(tái)之間的通信分別采用RS-232串口和CAN總線實(shí)現(xiàn)。CAN總線具有抗干擾能力強(qiáng)和可靠性高的特點(diǎn),。
被控節(jié)點(diǎn)有兩種:一種是提升機(jī)控制器,,采用變頻調(diào)速控制;另一種是燈具控制器,。網(wǎng)絡(luò)控制器與被控節(jié)點(diǎn)之間通過(guò)CAN總線進(jìn)行通信,。系統(tǒng)可控路數(shù)需達(dá)到1000路,。因此,為了擴(kuò)展CAN網(wǎng)的節(jié)點(diǎn),,6個(gè)CAN總線中轉(zhuǎn)器與網(wǎng)絡(luò)控制器相連,,每個(gè)中轉(zhuǎn)器下接6個(gè)CAN子網(wǎng),共有36個(gè)CAN總線子網(wǎng),。
2 Windows CE簡(jiǎn)介及其特點(diǎn)
主控制臺(tái)的操作系統(tǒng)采用微軟公司的嵌入式Windows CE 3.0,。Windows CE是一種緊湊、高效,、可伸縮的操作系統(tǒng)。主要面向各種嵌入式系統(tǒng)和產(chǎn)品,。它具有多線程,、多任務(wù)、完全搶點(diǎn)式的特點(diǎn),,是專門為各種有很嚴(yán)格資源限制的硬件系統(tǒng)設(shè)計(jì)的,。它的模塊化設(shè)計(jì)使嵌入式系統(tǒng)和應(yīng)用應(yīng)用開發(fā)者能夠方便地定制以適應(yīng)一系列不同的產(chǎn)品。Windows CE操作系統(tǒng)包括以下主要模塊:
?。?) 內(nèi)核模塊,,支持進(jìn)程和線程處理及內(nèi)存管理等基本服務(wù);
?。?) 內(nèi)核系統(tǒng)接口模塊,,允許應(yīng)用軟件訪問(wèn)操作系統(tǒng);
?。?) 文件系統(tǒng)模塊,,支持持久穩(wěn)固的信息存儲(chǔ);
?。?) 圖形窗口和事件子系統(tǒng)模塊,,控制圖形和Windows相關(guān)的圖形用戶界面;
?。?) 通信模塊,,允許同其他設(shè)備進(jìn)行信息交換。
Windows CE支持多種外設(shè)和網(wǎng)絡(luò)系統(tǒng),,包括鍵盤,、鼠標(biāo)、觸摸屏,、串行口,、以太網(wǎng)卡、調(diào)制解調(diào)器,、USB設(shè)備,、單頻設(shè)備,、并行口、打印機(jī)和存儲(chǔ)設(shè)備,。Windows CE支持超過(guò)1000個(gè)常用的Microsoft Win32 API和一些附加的編程接口,,可用于開發(fā)應(yīng)用程序。這些接口包括COM,、MFC,、ATL等。此外,,Windows CE支持用于管理時(shí)間關(guān)鍵任務(wù)響應(yīng)的實(shí)時(shí)處理,;各種串行通信和網(wǎng)絡(luò)通信技術(shù),包括支持USB,;為Windows CE用戶提供Web服務(wù)的移動(dòng)頻道,;用于進(jìn)程間通信的Automation和其他方法;還支持管理可安裝設(shè)備等可選組件,。
對(duì)于Windows CE而言,,原始設(shè)備制造商(OEM)能開發(fā)硬件適配層OAL(OEM Adaptation Layer),其他開發(fā)者可以開發(fā)內(nèi)部驅(qū)動(dòng)程序,、可安裝驅(qū)動(dòng)程序及運(yùn)行在嵌入式設(shè)備上的應(yīng)用程序,。獨(dú)立軟件提供商ISV(Independent S
oftware Vendor)能獨(dú)立于硬件平臺(tái)開發(fā)應(yīng)用軟件:
(1) 32位多線程,、多任務(wù),、完全抑占式的操作系統(tǒng);
?。?) 強(qiáng)大的圖像顯示功能支持,,用戶能定制完全自己風(fēng)格的操作界面;
?。?) 支持大部分Win32 API,,使得基于其他Windows的應(yīng)用程序地 方便地移值到Windows CE上;
?。?) 體積小,,并能夠從ROM直接啟動(dòng),無(wú)需硬盤,,不存在系統(tǒng)崩潰和病毒感染問(wèn)題,。
Windows CE是為便攜式電腦設(shè)計(jì)的新型平臺(tái)。它提供Windows操作系統(tǒng)的堅(jiān)實(shí)子集,。同時(shí),,微軟公司為Windows CE的開發(fā)提供了一套完整且功能強(qiáng)大的系列工具,從硬件調(diào)試到軟件開發(fā)都為用戶提供了方便,。
3 系統(tǒng)組成及結(jié)構(gòu)
3.1 主控臺(tái)
主控臺(tái)是整個(gè)系統(tǒng)的核心,,主要由PC/104系統(tǒng),、控制臺(tái)面板(鍵盤)和液晶顯示器組成,需要接入互聯(lián)網(wǎng),。其結(jié)構(gòu)如圖2所示,。
3.2 網(wǎng)絡(luò)控制器
網(wǎng)絡(luò)控制器硬件如圖3所示。
處理器采用美國(guó)德州儀器有限公司(TI)的MSP430,與主控臺(tái)通過(guò)RS-232通信,,下層接CAN總線中轉(zhuǎn)器,,同時(shí)通過(guò)無(wú)線收發(fā)模塊與遙
控器進(jìn)行無(wú)線連接。網(wǎng)絡(luò)控制器負(fù)責(zé)主控臺(tái)各部分權(quán)限的分配,,并可以減少用于與控制臺(tái)通信的CAN卡的數(shù)量,。
3.3 提升機(jī)控制器
提升機(jī)控制器硬件如圖4所示。
處理器采用Philips公司的89C51RD+單片機(jī),,用計(jì)數(shù)器讀碼盤轉(zhuǎn)過(guò)的角位移,,向上位機(jī)發(fā)送時(shí)折算成線位移。同時(shí)采用霍爾傳感器采集三路電流值,,對(duì)電機(jī)實(shí)現(xiàn)過(guò)流保護(hù)。
交流變頻電機(jī)控制部分采用光電式碼盤測(cè)量電機(jī)轉(zhuǎn)角,,實(shí)現(xiàn)閉環(huán)控制,,如圖5。
3.4 燈具控制器
每個(gè)燈配一個(gè)控制器,。處理器選擇Philips公司帶A/D的80C552EFA單片機(jī),,其硬件結(jié)構(gòu)如圖6所示。
燈具控制器接收解釋上位機(jī)發(fā)來(lái)的命令,,然后執(zhí)行命令,。若上位機(jī)需要返回值,則執(zhí)行后向上位機(jī)發(fā)返回幀,。采用中斷方式接收命令,。主要功能有:
(1) AD采樣各個(gè)自由度的角位移量,;
?。?) 根據(jù)設(shè)定位置值,通過(guò)算法反自由度調(diào)到相應(yīng)位置,;
?。?) 實(shí)現(xiàn)各自由度的限位功能;
?。?) 出現(xiàn)異常給上位機(jī)發(fā)異常命令,。
4 網(wǎng)絡(luò)監(jiān)控系統(tǒng)的實(shí)現(xiàn)
4.1 系統(tǒng)硬件特點(diǎn)
嵌入式網(wǎng)絡(luò)監(jiān)控系統(tǒng)是可移動(dòng)的小型化控制系統(tǒng)。硬件是研華公司的PCM-3350 PC/104及LCD顯示器,。與一般的臺(tái)式PC系統(tǒng)相比,,PC/104嵌入式系統(tǒng)體積小,,結(jié)構(gòu)緊溱,系統(tǒng)模塊化,;與單片機(jī)系統(tǒng)相比,,PC/104資源豐富,運(yùn)算速度快,,產(chǎn)品系列化,,可靠性高,可以充分利用豐富的軟件資源和成熟高效的應(yīng)用開發(fā)平臺(tái),,有利于提高開發(fā)效率和系統(tǒng)的可靠性,,適合數(shù)據(jù)量大、數(shù)據(jù)類型多的數(shù)據(jù)采集和處理系統(tǒng),。
4.2 系統(tǒng)功能
主控臺(tái)負(fù)責(zé)用戶命令向下的傳遞并顯示下層向上反饋的信息,。因此,監(jiān)控系統(tǒng)與底層設(shè)備有大量的數(shù)據(jù)交換,,需要處理大量的實(shí)時(shí)信息,,對(duì)實(shí)時(shí)性的要求比較高。而采用嵌入式操作系統(tǒng)Windows CE 3.0可以滿足系統(tǒng)對(duì)實(shí)時(shí)性的要求,。
同時(shí),,網(wǎng)絡(luò)監(jiān)控系統(tǒng)需要接入互聯(lián)網(wǎng),以便實(shí)現(xiàn)遠(yuǎn)程網(wǎng)絡(luò)通信功能,,進(jìn)行遠(yuǎn)程診斷,。遠(yuǎn)程診斷的目的就是能將現(xiàn)場(chǎng)設(shè)備的狀況及時(shí)傳到維修中心的計(jì)算機(jī)網(wǎng)絡(luò)上,維修中心能夠?qū)υO(shè)備進(jìn)行監(jiān)控,。及時(shí)了解設(shè)備出現(xiàn)的故障,,指導(dǎo)現(xiàn)場(chǎng)人員對(duì)設(shè)備進(jìn)行維修。因此,,系統(tǒng)需要通過(guò)網(wǎng)絡(luò)把現(xiàn)場(chǎng)系統(tǒng)的一些特殊工作狀態(tài)信息傳遞到現(xiàn)場(chǎng)控制室和遠(yuǎn)端的維修中心,。此外,本地系統(tǒng)工作時(shí)也需要實(shí)時(shí)監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài),。給出各個(gè)提升機(jī)和燈具有狀態(tài)信息,,有錯(cuò)誤及時(shí)報(bào) 警,并報(bào)靠故障位置和故障類型,,使系統(tǒng)易于維護(hù)和檢修,。
4.3 圖形用戶界面設(shè)計(jì)
操作人員通過(guò)監(jiān)控系統(tǒng)實(shí)現(xiàn)對(duì)整個(gè)數(shù)字布光系統(tǒng)的控制。為了克服以往系統(tǒng)不易操作,,吊桿,、燈具運(yùn)行狀態(tài)顯示不形象的缺點(diǎn),本文所實(shí)現(xiàn)的網(wǎng)絡(luò)監(jiān)控系統(tǒng)在其人機(jī)交互界面中以三維動(dòng)畫方式顯示吊桿和燈具有動(dòng)態(tài)運(yùn)行過(guò)程,,同時(shí)在界面中顯示描述吊桿及燈具運(yùn)動(dòng)位置和運(yùn)行速度的具體參數(shù),。系統(tǒng)的操作也相對(duì)簡(jiǎn)單,。
4.4 串口通信程序
主控制臺(tái)與下層網(wǎng)絡(luò)控制器的通信通過(guò)PC/104的RS-232串口實(shí)現(xiàn)。
基于Windows CE的設(shè)備采用RS-232-C標(biāo)準(zhǔn)與串行設(shè)備和其他計(jì)算機(jī)通過(guò)串行連接交換數(shù)據(jù),。Windows CE支持基于Windows的臺(tái)式機(jī)上用于串行通信的標(biāo)準(zhǔn)函數(shù),。主要有CreateFile()、CloseHandle(),、GetCommState(),、SetCommState()、SetupComm(),、PurgeComm(),、SetCommMask()、WatiCommEvent(),、ClearCommError(),、ReadFile()、WriteFile()等函數(shù),。這些函數(shù)可以用于打開,、關(guān)閉和操作串行口,傳送和接收數(shù)據(jù)以及管理連接,。
在具體的串行通信程序開發(fā)中,,采用事件驅(qū)動(dòng)方式。為了實(shí)時(shí)響應(yīng)事件,,創(chuàng)建專門的監(jiān)視輔助線程,有數(shù)據(jù)到達(dá)時(shí)依靠事件驅(qū)動(dòng),,讀入數(shù)據(jù)并運(yùn)行相應(yīng)的接收數(shù)據(jù)處理程序,,以完成相應(yīng)的工作。
4.5 網(wǎng)絡(luò)功能
當(dāng)現(xiàn)場(chǎng)工作系統(tǒng)出現(xiàn)難以解決的故障時(shí),,現(xiàn)場(chǎng)工作人員可以通過(guò)Internet將故障信息發(fā)送到維修中心,。首先由現(xiàn)場(chǎng)用戶輸入服務(wù)器的IP地址和端口號(hào),然后啟動(dòng)網(wǎng)絡(luò)通信模塊,,創(chuàng)建Winsock套接字
,,綁定IP地址和端口號(hào),與維修中心的服務(wù)器正處于偵聽狀態(tài)的套接字連接,,從而將故障信息從現(xiàn)場(chǎng)傳遞到維修中心的服務(wù)器,,讓維修人員及時(shí)地了解系統(tǒng)的運(yùn)行狀態(tài)并診斷故障原因。
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,,網(wǎng)絡(luò)在工控領(lǐng)域中的影響越來(lái)越大,。本文介紹的數(shù)字布光監(jiān)控系統(tǒng)將網(wǎng)絡(luò)技術(shù)與嵌入式系統(tǒng)相結(jié)合,使得系統(tǒng)在操作,、安裝,、維護(hù)等各方面都變得相當(dāng)簡(jiǎn)單,。同時(shí),系統(tǒng)在安全性,,可靠性等方面也有了很大的提高,。