基于嵌入式的溫濕度模糊控制系統(tǒng)的實現(xiàn)
1 引言
大多數(shù)工業(yè)環(huán)境溫濕度控制系統(tǒng)都是基于有線網(wǎng)絡的,監(jiān)控程序運行于PC機上,監(jiān)控人員需要在固定的監(jiān)控室內(nèi)進行溫濕度等參數(shù)的監(jiān)控.這樣的應用模式存在如下問題,一是監(jiān)控節(jié)點位置固定,可移動性差;二是布線受環(huán)境限制,通信故障查找困難.這在一定程度上給溫濕度的實時監(jiān)控帶來了不小的麻煩.因此,有必要利用嵌入式技術在PDA上實現(xiàn)溫濕度模糊控制系統(tǒng),這樣就可以做到隨時隨地進行溫濕度參數(shù)的監(jiān)控了.另外,目前的工業(yè)環(huán)境溫濕度控制系統(tǒng)大都不支持帶有模糊控制條件的參數(shù)設置,如濕度“大約在50度左右”或“高溫狀態(tài)”.因此,PDA端的溫濕度模糊控制系統(tǒng)需要能接收和處理類似于這樣的模糊控制條件.文章對溫濕度模糊控制系統(tǒng)的系統(tǒng)構成、模糊控制條件規(guī)則轉換以及PDA端的嵌入式軟件開發(fā)技術進行了深入研究.
文章的組織結構如下,第2節(jié)介紹溫濕度模糊控制系統(tǒng)的系統(tǒng)結構和功能模塊;第3節(jié)研究模糊控制條件轉換規(guī)則;第4節(jié)介紹PDA端嵌入式軟件的關鍵實現(xiàn)技術;第5節(jié)總結全文.
2 系統(tǒng)硬件結構和功能
2.1 系統(tǒng)硬件結構
系統(tǒng)的整體架構分為兩個層次,上層是數(shù)據(jù)存儲與監(jiān)控系統(tǒng),由PDA、AP(無線接入點)、數(shù)據(jù)庫服務器構成,利用IEEE802.11b無線網(wǎng)絡技術和無線設備構成無線局域網(wǎng)絡.PDA通過AP和數(shù)據(jù)中轉服務系統(tǒng)與數(shù)據(jù)庫服務器進行實時數(shù)據(jù)交互,監(jiān)測和控制各監(jiān)測點的溫濕度參數(shù).上位機采用性能較高的PC機(必要時可采用集群技術保障數(shù)據(jù)的安全)、操作系統(tǒng)為Windows 2000Server,上位機和PDA利用所建立的模糊控制條件轉換規(guī)則對檢測點環(huán)境進行智能控制.下層是數(shù)據(jù)采集與控制系統(tǒng),由溫濕度采集器、數(shù)字化溫濕度傳感器,變頻器等組成.溫濕度傳感器和測量模塊用“1-wire Bus”方式進行連接,測量模塊與上位機采用RS-485總線實現(xiàn)遠程通訊.下位機選用智能模塊LTM8303, LTM8600等直接面向被控對象,通過傳感器DS1820/DS18B20等組成測溫電纜,對溫濕度等參數(shù)進行實時檢測.
系統(tǒng)采用兩級通訊網(wǎng)絡連接.一級由上位機通過SIMATIC S7-200隔離型RS-232/485轉換模塊組成RS 485分布式測控網(wǎng),LTM8903和LTM8600智能模塊作為子站;另一級為“1-wire Bus”網(wǎng),LTM8903智能模塊作為采集中心,測量線纜上的數(shù)字化溫濕度傳感器探頭作為子站,探頭選用Dallas半導體公司數(shù)字化溫度傳感器DS1820/DS18B20;LTM8600模塊為采集中心和控制中心,在保持與上位機通訊的同時采集溫度,濕度等參數(shù),并接收上位機的控制信號通過變頻器控制風機,空調(diào),水泵等執(zhí)行機構[1].系統(tǒng)的硬件總體結構如圖1所示.
圖1 系統(tǒng)硬件總體結構圖
2.2 功能模塊
PDA端嵌入式軟件:采用嵌入式和無線通信技術,與數(shù)據(jù)庫服務器進行實時數(shù)據(jù)交互,通過模糊控制條件轉換程序監(jiān)測和設置各監(jiān)測點的溫濕度參數(shù).當現(xiàn)場監(jiān)控點的溫濕度參數(shù)超標時,提供報警功能.
數(shù)據(jù)中轉模塊:發(fā)送/接收數(shù)據(jù).從數(shù)據(jù)庫中提取PDA端所需數(shù)據(jù),構造數(shù)據(jù)包,經(jīng)由WLAN發(fā)送給該終端;解析來自PDA端的溫濕度參數(shù)數(shù)據(jù)包,并寫入數(shù)據(jù)庫.同時,該模塊還提供日志功能,記錄何時哪臺PDA設置了那些參數(shù).
上位機控制系統(tǒng):與下位機和PDA進行數(shù)據(jù)交互,接收來自PDA端的溫濕度控制參數(shù),形成控制信號發(fā)送給下位機;同時,接收來自下位機所采集的溫濕度參數(shù),提交給數(shù)據(jù)庫和PDA;同時,也具有對各監(jiān)測點實行集中監(jiān)控,管理以及數(shù)據(jù)統(tǒng)計等功能.
參數(shù)采集控制模塊:采集溫度,濕度參數(shù),發(fā)送給上位機; 接收上位機的控制信號,對各風機,空調(diào),水泵等設備通過變頻器實施控制.
3 模糊控制系統(tǒng)設計
3.1模糊集基本理論
可見,一個模糊數(shù)的l-截集對應一個區(qū)間.如,令A為論域U上的模糊數(shù), 模糊數(shù)A的l-截集為 .
2.2輸入變量和輸出變量
工業(yè)環(huán)境中,溫濕度參數(shù)通常處于一個數(shù)值范圍之內(nèi),而不是一個精確值.
在控制現(xiàn)場溫濕度參數(shù)時,所需設定的溫濕度精確值和閾值作為輸入變量,經(jīng)過相應的隸屬函數(shù)進行處理,得到的溫度控制范圍和濕度控制范圍作為輸出變量.閾值作為對溫濕度變化范圍的允許程度,由監(jiān)控者根據(jù)實際需要進行設定,通過調(diào)整閾值,可以使現(xiàn)場的溫濕度控制在模糊控制和精確控制之間變換.當閾值為1時,為精確控制,即溫濕度參數(shù)是一個確定值;當閾值為0~1之間的數(shù)值時,溫濕度參數(shù)為一個數(shù)值區(qū)間,閾值越小,區(qū)間范圍越大.
在監(jiān)測現(xiàn)場溫濕度參數(shù)時,下位機采集到的現(xiàn)場溫濕度參數(shù)傳送到上位機和PDA,這時溫度參數(shù)和濕度參數(shù)作為輸入變量,通過模糊控制轉換模塊,利用隸屬函數(shù)分別計算現(xiàn)場采集的溫濕度參數(shù)隸屬度.若隸屬度超出所設定的閾值,則報警;否則,認為正常.
2.3模糊控制條件轉換
工業(yè)環(huán)境中,許多控制條件都是模糊的,如濕度“大約在50度左右”或溫度要求處于“高溫狀態(tài)”.而這些模糊控制條件在計算機進行處理時,需要轉換成確定值或確定的區(qū)間.下面主要探討溫濕度控制中經(jīng)常出現(xiàn)的幾個模糊控制條件的轉換規(guī)則,具體包括“接近于(大約為)某個值”,“不超過某個值”,“不低于某個值”.
在PDA上設置模糊控制條件,如溫度要求處于“高溫狀態(tài)”,模糊控制轉換器需要根據(jù)監(jiān)控者設置的閾值將該模糊控制條件轉換成一個確定的溫度數(shù)值控制區(qū)間.根據(jù)工業(yè)環(huán)境的領域知識,可以得到模糊數(shù)“高溫狀態(tài)”的隸屬函數(shù), 定義為:
(7)
假設l取值為0.9,監(jiān)測點溫度的值域為[0,1000],則“高溫狀態(tài)”的0.9截集運算結果為[600,1000],即在這個區(qū)間的溫度,都可視為高溫狀態(tài).模糊控制條件“高溫狀態(tài)”的0.9截集如圖3所示:
現(xiàn)在考慮模糊控制條件, 濕度“大約在Y度左右”,根據(jù)文獻[3],模糊數(shù)“接近(大約)Y”的隸屬函數(shù)在論域上的定義為:
假設模糊控制條件為“濕度大約在50度左右”,l取值為0.9,監(jiān)測點濕度的值域為[10,100],那么,“濕度大約在50度左右”的0.9截集運算結果為[47,53],即在這個區(qū)間的濕度,都可視為正常濕度.模糊控制條件“濕度大約在50度左右”的0.9截集如圖4所示
圖3 模糊控制條件“高溫狀態(tài)”的0.9截集圖
4 模糊控制條件“濕度大約在50度左右”的0.9截集
現(xiàn)在考慮模糊控制條件, 溫度或濕度“不超過Y”,它的隸屬函數(shù)在論域上的定義為:
假設模糊控制條件為“溫度不超過500度”,l取值為0.9,監(jiān)測點溫度的值域為[300,800],那么, “溫度不超過500度”的0.9截集運算結果為[300,530],即在這個區(qū)間的溫度,都可視為正常溫度.模糊控制條件“溫度不超過500度”的0.9截集如圖5所示.
現(xiàn)在考慮模糊控制條件, 溫度或濕度“不低于Y”,它的隸屬函數(shù)在論域上的定義為:
假設模糊控制條件為“濕度不低于40度”,l取值為0.9,監(jiān)測點濕度的值域為[10,100],那么, “濕度不低于40度”的0.9截集運算結果為[37,100],即在這個區(qū)間的濕度,都可視為正常濕度.模糊控制條件“濕度不低于40度”的0.9截集如圖6所示.
圖5 模糊控制條件“溫度不超過500度”的0.9截集
圖6 模糊控制條件“濕度不低于40度”的0.9截集
3 嵌入式軟件關鍵技術
本文利用嵌入式技術在PDA上實現(xiàn)了溫濕度模糊控制系統(tǒng),開發(fā)模式不同于傳統(tǒng)的應用軟件.下面就以本系統(tǒng)的PDA端嵌入式軟件開發(fā)為例,說明其開發(fā)模式和關鍵技術.
3.1嵌入式操作系統(tǒng)和圖形系統(tǒng)
對于嵌入式操作系統(tǒng),有Vxwork、VRTX、pSOS、
Palm OS、Neculeus和Windows CE.但這些專用操作系統(tǒng)都是商業(yè)化產(chǎn)品,其價格昂貴,不適合低端嵌入式產(chǎn)品開發(fā).而且,源代碼封閉性很大程度上限制了開發(fā)者的開發(fā).嵌入式Linux操作系統(tǒng)彌補了上述不足,Linux操作系統(tǒng)是遵循GPL公約,并且有運行穩(wěn)定、源碼開放的特點,被認為是未來嵌入式操作系統(tǒng)的最佳選擇.
MiniGUI是由原清華大學教授魏永明主持開發(fā)的輕量級圖形系統(tǒng),現(xiàn)遵循GPL公約.能跨多種操作系統(tǒng),主要運行于linux及一切具有POSIX線程支持的POSIX兼容系統(tǒng),包括普通嵌入式Linux、eCos、uC/OS-II、VxWorks 等系統(tǒng).MiniGUI的主要特點有:
遵循GPL條款的純自由軟件;提供了完備的多窗口機制;多字符集和多字體支持,目前支持ISO8859-1、GB2312及Big5 等字符集,并且支持各種光柵字體和 TrueType、Type 1 等矢量字體;全拼和五筆等漢字輸入法支持;BMP、GIF、JPEG及PCX 等常見圖像文件的支持;Windows的資源文件支持,如位圖、圖標、光標、插入符、定時器及加速鍵等;可移植性好.
3.2 MiniGUI的移植
本文MiniGUI移植目標系統(tǒng)為:XScale PXA255處理器,Linux2.4.18操作系統(tǒng).交叉編譯工具:arm-linux-gcc 2.95.3版,MiniGUI版本:1.3.0,主機系統(tǒng)為:Fedora Core 1 Linux.
MiniGUI的移植通過如下步驟:
1)安裝交叉編譯工具: arm-linux-gcc 2.95.3
2)建立掛裝目錄,實現(xiàn)主機與目標機的連接
3)安裝Minigui資源文件:Minigui-res-1.3.0.tar.gz
4)配置Minigui交叉編譯腳本
5)移植Minigui庫文件和實例程序
3.3嵌入式軟件實現(xiàn)
在開發(fā)基于MiniGUI的嵌入式軟件時,先將mde-1.3.0中的configure.in、autogen.sh以及腳本arm-complier拷貝到項目開發(fā)目錄中并修改confiugre.in在AC_INIT(<參數(shù)>),將<參數(shù)>改為項目主程序源文件名(如:main.c),將AC_OUTPUT(<參數(shù)>)中<參數(shù)>改為Makefile,編寫Makefile.am 即可.執(zhí)行./autogen.sh; ./arm-complier; make即可交叉編譯項目程序.
然后,更改MiniGUI的配置文件MiniGUI.cfg設置設備驅動程序,設置顯示區(qū)域及字體等內(nèi)容.
如觸摸屏驅動設置(在MiniGUI.cfg中設置):
# IAL engine
ial_engine=UCB1X00 //驅動引擎名稱
mdev=/dev/touchscreen/0raw //驅動程序所在位置
mtype=
3.4源程序的交叉編譯
當主機系統(tǒng)(開發(fā)應用程序的系統(tǒng))和目標主機(應用程序將在其上運行的系統(tǒng))不兼容時,需要在主機上通過交叉編譯工具編譯出目標系統(tǒng)可以運行的程序,這個過程叫做交叉編譯.GNU編譯器(GCC)是Linux系統(tǒng)中的一個強有力的編譯工具,交叉編譯后的軟件可直接下載到PDA的Flash Rom里[4].
4結論
該系統(tǒng)在首鋼東華集團試運行約半年左右, ,此間企業(yè)運作比較良好。除了能夠完成傳統(tǒng)控制系統(tǒng)的功能外,在模糊控制方面和系統(tǒng)的靈活性方面都顯示出良好的性能.在嵌入式軟件方面,由于Linux與MiniGUI都遵循GPL公約,同時MiniGUI能穩(wěn)定、可靠的運行于linux系統(tǒng)下,并且通過上述實踐證明其可以快速構建一個穩(wěn)定的可視化軟件系統(tǒng).
在經(jīng)濟效益方面,據(jù)粗略統(tǒng)計,在與沒有實施移動溫濕度監(jiān)測系統(tǒng)情況下相比,實施此系統(tǒng)之后使得現(xiàn)場監(jiān)測加靈活準確,在降低生產(chǎn)成本,提高工作效率,避免事故發(fā)生方面所形成的附加經(jīng)濟效益大約在30~50萬元左右,而由此給實施本系統(tǒng)的企業(yè)帶來的巨大經(jīng)濟效益更是無法估算。