徐淑萍,陳 飛,孫昌會
(1.西安工業(yè)大學(xué)計算機學(xué)院 陜西 西安 710032;2.鄭州市電子信息工程學(xué)校 河南 鄭州 450007)
網(wǎng)絡(luò)控制系統(tǒng)(NCSs)已經(jīng)成為學(xué)術(shù)和工業(yè)領(lǐng)域的主要研究中心之一,隨著日益增加的研究趨勢和研究需要,能夠成功應(yīng)用最新的知識和信息則顯得格外的重要。隨著社會發(fā)展的需求,人們對溫箱的應(yīng)用和需求越來越廣泛,在工業(yè)生產(chǎn)和日常生活或科學(xué)實驗中,我們隨處都可以看到溫箱的應(yīng)用。本文是將嵌入式技術(shù)和網(wǎng)絡(luò)控制技術(shù)結(jié)合起來實現(xiàn)了基于網(wǎng)絡(luò)控制系統(tǒng)的嵌入式溫箱控制系統(tǒng)的設(shè)計。網(wǎng)絡(luò)控制系統(tǒng)就是通過控制系統(tǒng)元件(傳感器、控制器、執(zhí)行器等),使用共享的網(wǎng)絡(luò)而實現(xiàn)信息(標準輸入和輸出、控制輸入等)的交換。通過TCP協(xié)議將嵌入式系統(tǒng)采集到的溫度信息發(fā)送到網(wǎng)絡(luò)化控制與協(xié)調(diào)系統(tǒng)和網(wǎng)絡(luò)監(jiān)測系統(tǒng)并進行計算和判斷后控制和協(xié)調(diào)單片機的行為。網(wǎng)絡(luò)化檢測系統(tǒng)通過以太網(wǎng)發(fā)布對單片機的控制信號,來實現(xiàn)對溫箱的溫度控制,該系統(tǒng)可應(yīng)用于遠程操作和控制等領(lǐng)域。
文中基于網(wǎng)絡(luò)控制系統(tǒng)的設(shè)計思想開發(fā)了遠程溫箱控制系統(tǒng),整個系統(tǒng)采用B/S結(jié)構(gòu),即Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu),就是只安裝維護一個服務(wù)器(Server),而客戶端采用瀏覽器(Browse)運行軟件。該系統(tǒng)主要由客戶端模塊,互聯(lián)網(wǎng)Internet模塊,單片機控制器及被控對象模塊構(gòu)成。位于客戶端的用戶使用瀏覽器訪問單片機控制器及被控對象模塊,在瀏覽器中登錄成功后,通過HTTP協(xié)議將數(shù)據(jù)自動封裝為TCP或UDP然后在網(wǎng)絡(luò)上傳輸,然后通過網(wǎng)絡(luò)接口CS8900A將所有從客戶端傳送來的信息進行自動拆封出數(shù)據(jù)并傳輸?shù)絾纹瑱C控制器及被控對象溫箱模塊進行溫度控制,同理溫箱的溫度狀況也可以傳遞到客戶端模塊,從而實現(xiàn)客戶端與單片機之間通信,互聯(lián)網(wǎng)Internet模塊是整個控制系統(tǒng)的核心,實現(xiàn)遠程客戶端與溫箱間的信息交互。單片機它主要接收遠程客戶端的命令,完成對溫箱的控制,并將溫箱的溫度信息反饋給遠程客戶端。
本溫控系統(tǒng)的主要芯片是單片機MSP430F149芯片MCU。主要的器件有:數(shù)模轉(zhuǎn)換器 DAC5571,鉑金電阻芯片,壓縮機,加熱絲,以太網(wǎng)控制器CS8900A網(wǎng)絡(luò)接口芯片RTL8019AS等。
硬件體系上單片機MSP430F149是系統(tǒng)的控制中心,它監(jiān)控各個功能模塊的啟動和運行,如圖溫度的測量部分,控制數(shù)據(jù)發(fā)送,并通過與網(wǎng)絡(luò)接口芯片RTL8019AS的連接實現(xiàn)與PC機的以太網(wǎng)通信[1]。
系統(tǒng)主要由遠程控制端,Internet,CS8900A,MSP430F149單片機。位于遠程控制端的用戶通過客戶機上的與INTERNER相連接的標準IE瀏覽器通過CS8900A以太網(wǎng)控制器與單片機之間通過通信從而實現(xiàn)對現(xiàn)場設(shè)備的控制,達到溫度的控制[2]。系統(tǒng)體系結(jié)構(gòu)如圖1所示:
圖1 系統(tǒng)總體結(jié)構(gòu)圖Fig.1 Structure diagram of the power control unit test system
本系統(tǒng)需要使用+5 V和+3.3 V的直流穩(wěn)壓電源,其中MSP430F149及部分外圍電器需要+3.3 V電源,另外部分需要+5 V電源,在本系統(tǒng)中,以+5 V直流電壓為輸入電壓,+3.3 V由+5 V直接線性降壓。電源電路原理如圖2所示。
圖2 電源電路原理圖Fig.2 Power supply circuit principle diagram
DS18B20是一款小巧的溫度傳感器,它通過單總線協(xié)議與MCU進行通信,。MCU與 DS18B20的硬件連接關(guān)系示意圖如圖所示,可知MCU的P2.4端口與DS18B20的DQ端連接,通過在MCU的IO端口模擬1-Wire協(xié)議的時序就能實現(xiàn)對 DS18B20的讀寫了[3]。溫度傳感器采集電路如圖3所示。
圖3 溫度傳感器采集電路原理圖Fig.3 Temperature sensor acquisition circuit principle diagram
本設(shè)計的軟件部分主要包括實現(xiàn)溫度的采集和控制模塊,數(shù)據(jù)傳輸?shù)膶崿F(xiàn),客戶端的遠程控制3大部分。
這個模塊的主要作用在于控制硬件設(shè)備,完成溫箱的溫度采集、顯示、控制功能。溫度的采集和控制模塊流程圖如圖4所示。
圖4 溫度的采集和控制模塊流程圖Fig.4 Temperature collection and control module flow chart
當將要采集溫度數(shù)據(jù)時,MSP430F149將通過 溫度傳感器采集溫度,所用到得函數(shù)有:函數(shù)名稱:ReadTemp,功能:從DS18B20的ScratchPad讀取溫度轉(zhuǎn)換結(jié)果,返回值:讀取的溫度數(shù)值。函數(shù)名稱:uint Do1Convert(void),功 能:控制DS18B20完成一次溫度轉(zhuǎn)換,返回值 :測量的溫度數(shù)值。
然后進行A/D裝換將根據(jù)采集到的溫度數(shù)據(jù)設(shè)置寄存器的值,處理器讀取溫度數(shù)據(jù)到網(wǎng)絡(luò)控制器CS8900A中的發(fā)送控制寄存器TXCMD(0004H),如果寫入數(shù)據(jù),那么網(wǎng)卡芯片在全部數(shù)據(jù)寫入后開始發(fā)送數(shù)據(jù),CPU通過發(fā)送數(shù)據(jù)寄存器PORT0(0000H)發(fā)送數(shù)據(jù),最后通過網(wǎng)絡(luò)發(fā)送到客戶端上??蛻舳送ㄟ^網(wǎng)絡(luò)將命令發(fā)送到網(wǎng)絡(luò)控制器CS8900A中的發(fā)送數(shù)據(jù)長度寄存器TXLENG(0006H),首先寫入發(fā)送數(shù)據(jù)長度,然后將數(shù)據(jù)通過PORT0寫入芯片進行接收,執(zhí)行相應(yīng)的控制操作。
在通過網(wǎng)絡(luò)來實現(xiàn)數(shù)據(jù)的傳輸?shù)臅r候主要應(yīng)用的是TCP協(xié)議來實現(xiàn)收發(fā)數(shù)據(jù),設(shè)計針對數(shù)據(jù)收發(fā)過程當中所要用到的函數(shù)。因為RTL8019AS里是帶緩存的,所以在CS8900A也需要通過對緩沖區(qū)的操作進行數(shù)據(jù)的發(fā)送和接受[4]。
在數(shù)據(jù)包收發(fā)的過程當中,不同的任務(wù)需要不同的處理時間,這個時間可以使用MSP430F149的定時器Timer_A來提供。
系統(tǒng)中遠程控制端的用戶在建立HTTP服務(wù)器之后登陸與Internet相連接的瀏覽器中的控制頁面向 MSP430F149發(fā)送控制指令,這一過程需要進行一系列的操作[5],首先控制器端將通過因特網(wǎng)TCP/IP協(xié)議與串口協(xié)議之間的轉(zhuǎn)換傳輸過來,提取設(shè)備信息,通過和標準溫度比較,如果當所測得的溫度高于標準溫度的時候,則輸出設(shè)備信息發(fā)出降溫標示的信號,單片機通過CS8900A網(wǎng)卡接口接受因特網(wǎng)發(fā)送過來的降溫指示,然后通過控制壓縮機進行降溫,如果當所測得的溫度低于標準溫度的時候,則輸出設(shè)備信息發(fā)出加熱標示的信號,單片機通過CS8900A網(wǎng)卡接口接受因特網(wǎng)發(fā)送過來的降溫指示,然后通過控制加熱絲進行加熱。其中HTML(超文本鏈接標示語言)網(wǎng)頁數(shù)據(jù)可以保存在MSP430F149的片內(nèi)FLASH存儲器中。網(wǎng)頁能夠完成接收數(shù)據(jù)、發(fā)送網(wǎng)頁數(shù)據(jù)、關(guān)閉連接和等待其它應(yīng)用進行連接等[6]??蛻舳说倪h程控制模塊流程圖如圖5所示。
圖5 客戶端控制流程圖Fig.5 Client control flow chart
溫箱的體積大小設(shè)定為1 m3;工作環(huán)境的維度為25℃;工作電壓:220 V,50 Hz。
為了能夠準確的測試系統(tǒng)的控制精度,在測試的同時在溫箱安置一只標準的溫度計用來測實際溫度。通過設(shè)定不同的目標溫度值,對溫箱進行溫度控制,當系統(tǒng)顯示的溫度趨于穩(wěn)定的時候,查看標準溫度計所顯示的實際溫度的溫度值,將實際溫度和數(shù)碼管顯示溫度進行比較,查看溫度誤差。具體的實驗數(shù)據(jù)記錄如表1所示。
表1 實際溫度值和數(shù)碼管溫度值誤差比較Tab.1 Actual temperature value and digital tube temperature value error comparison
為了測試系統(tǒng)的控制性能,文中采取控制變量的方法進行控制性能的測試,主要包含3種情況:降溫到預(yù)設(shè)溫度、加熱到預(yù)設(shè)溫度、不同初始溫度達到預(yù)設(shè)溫度。通過仿真測試得到溫度變化曲線[7]如圖6~8所示。
圖6 降溫到預(yù)設(shè)溫度Fig.6 Cooling to the default temperature
圖7 加熱到預(yù)設(shè)溫度Fig.7 Heating to preset temperature
圖8 不同初始溫度達到預(yù)設(shè)溫度Fig.8 Different initial temperature reaches the preset temperature
從以上各圖中可以看出,所設(shè)計的溫箱控制系統(tǒng)可以實現(xiàn)溫度的實時控制,達到預(yù)設(shè)的溫度值,并可以使溫度保持在一個穩(wěn)定的范圍內(nèi),且溫度的穩(wěn)定誤差保持在0.5℃,達到了預(yù)期的控制效果,具有一定的應(yīng)用價值。
基于單片機的網(wǎng)絡(luò)控制實現(xiàn)溫控系統(tǒng)是以單片機為核心的軟硬件平臺的嵌入式系統(tǒng)。通過使用MSP430微處理器、溫度采集電路、溫度控制電路搭建硬件平臺,使用網(wǎng)絡(luò)控制平臺,設(shè)計出了一個基于嵌入式技術(shù)的遠程網(wǎng)絡(luò)控制溫控系統(tǒng)。該系統(tǒng)體積小巧,電路連接簡單,有效利用英特網(wǎng)的特性,用戶可以方便地進行操作,增加用戶所需功能。從而提高了設(shè)備的智能程度,具有較高的工程實用價值。
[1]謝楷,趙建.MSP430系列單片機系統(tǒng)工程設(shè)計與實踐[M].北京:機械工業(yè)出版社,2009.
[2]Watson K S.Network calculus in star and line networks with centralizedcommunication[R].Karlsruhe:FraunhoferIITB,2002.
[3]閆勝利.基于DS18B20溫度控制系統(tǒng)的設(shè)計 [J].長春工程學(xué)院學(xué)報,2002,3(4):55.
YAN Sheng-li.Design of temperature control system based on DS18B20[J].Journal of Changchun Institute of Technology,2002,3(4):55.
[4]王學(xué)偉,王彥碩.基于以太網(wǎng)的數(shù)據(jù)采集及監(jiān)控系統(tǒng)的數(shù)據(jù)通信研究[J].北京化工大學(xué)學(xué)報,2006,33(1):109-111.
WANG Xue-wei,WANG Yan-shuo.Datacommunication based on Ethernet data acquisition and monitoring system[J].Journal of Beijing University of Chemical Technology,2006,33(1):109-111.
[5]王俊,郭書君.嵌入式Web服務(wù)器的實現(xiàn)及其CGI應(yīng)用[J].電子設(shè)計工程,2011,19(21):152-154.
WANG Jun,GUO Shu-jun.Implementation of embedded Web server and its application of CGI[J].Electronic Design Enginneering,2011,19(21):152-154.
[6]Georges J P,Divoux T,Rondeau E.Comparison of switched Ethernet architectures models [C]//9th IEEEInt Conf on Emerging Technologies and Factory Automation.Portuga,l 2003:375-382.
[7]賈秋玲,袁冬莉.基于MATLAB7.X/Simulink/Stateflow系統(tǒng)仿真.分析及設(shè)計[M].西安:西北工業(yè)大學(xué)出版社,2006.