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