基于單片機(jī)的網(wǎng)絡(luò)控制實(shí)現(xiàn)溫控系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:文中將嵌入式控制技術(shù)與網(wǎng)絡(luò)控制技術(shù)相結(jié)合,實(shí)現(xiàn)了基于單片機(jī)通過因特網(wǎng)的控制實(shí)現(xiàn)溫控系統(tǒng)的設(shè)計(jì),文中所采用的是MSP430F1 49單片機(jī)作為控制核心,MSP430F149微控制器控制以太網(wǎng)控制器CS8900A實(shí)現(xiàn)本地局域網(wǎng)的功能,通過TCP協(xié)議提供與因特網(wǎng)進(jìn)行連接,可以實(shí)現(xiàn)對(duì)溫箱的溫度進(jìn)行實(shí)時(shí)有效地控制。系統(tǒng)體積小巧,具備溫度采集和遠(yuǎn)程控制功能和良好的可擴(kuò)展性。
關(guān)鍵詞:網(wǎng)絡(luò)控制;MSP430F149;CS8900A;溫控
網(wǎng)絡(luò)控制系統(tǒng)(NCSs)已經(jīng)成為學(xué)術(shù)和工業(yè)領(lǐng)域的主要研究中心之一,隨著日益增加的研究趨勢(shì)和研究需要,能夠成功應(yīng)用最新的知識(shí)和信息則顯得格外的重要。隨著社會(huì)發(fā)展的需求,人們對(duì)溫箱的應(yīng)用和需求越來越廣泛,在工業(yè)生產(chǎn)和日常生活或科學(xué)實(shí)驗(yàn)中,我們隨處都可以看到溫箱的應(yīng)用。本文是將嵌入式技術(shù)和網(wǎng)絡(luò)控制技術(shù)結(jié)合起來實(shí)現(xiàn)了基于網(wǎng)絡(luò)控制系統(tǒng)的嵌入式溫箱控制系統(tǒng)的設(shè)計(jì)。網(wǎng)絡(luò)控制系統(tǒng)就是通過控制系統(tǒng)元件(傳感器、控制器、執(zhí)行器等),使用共享的網(wǎng)絡(luò)而實(shí)現(xiàn)信息(標(biāo)準(zhǔn)輸入和輸出、控制輸入等)的交換。通過TCP協(xié)議將嵌入式系統(tǒng)采集到的溫度信息發(fā)送到網(wǎng)絡(luò)化控制與協(xié)調(diào)系統(tǒng)和網(wǎng)絡(luò)監(jiān)測(cè)系統(tǒng)并進(jìn)行計(jì)算和判斷后控制和協(xié)調(diào)單片機(jī)的行為。網(wǎng)絡(luò)化檢測(cè)系統(tǒng)通過以太網(wǎng)發(fā)布對(duì)單片機(jī)的控制信號(hào),來實(shí)現(xiàn)對(duì)溫箱的溫度控制,該系統(tǒng)可應(yīng)用于遠(yuǎn)程操作和控制等領(lǐng)域。
1 系統(tǒng)工作原理
文中基于網(wǎng)絡(luò)控制系統(tǒng)的設(shè)計(jì)思想開發(fā)了遠(yuǎn)程溫箱控制系統(tǒng),整個(gè)系統(tǒng)采用B/S結(jié)構(gòu),即Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu),就是只安裝維護(hù)一個(gè)服務(wù)器(Server),而客戶端采用瀏覽器(Browse)運(yùn)行軟件。該系統(tǒng)主要由客戶端模塊,互聯(lián)網(wǎng)Internet模塊,單片機(jī)控制器及被控對(duì)象模塊構(gòu)成。位于客戶端的用戶使用瀏覽器訪問單片機(jī)控制器及被控對(duì)象模塊,在瀏覽器中登錄成功后,通過HTTP協(xié)議將數(shù)據(jù)自動(dòng)封裝為TCP或UDP然后在網(wǎng)絡(luò)上傳輸,然后通過網(wǎng)絡(luò)接口CS8900A將所有從客戶端傳送來的信息進(jìn)行自動(dòng)拆封出數(shù)據(jù)并傳輸?shù)絾纹瑱C(jī)控制器及被控對(duì)象溫箱模塊進(jìn)行溫度控制,同理溫箱的溫度狀況也可以傳遞到客戶端模塊,從而實(shí)現(xiàn)客戶端與單片機(jī)之間通信,互聯(lián)網(wǎng)Internet模塊是整個(gè)控制系統(tǒng)的核心,實(shí)現(xiàn)遠(yuǎn)程客戶端與溫箱問的信息交互。單片機(jī)它主要接收遠(yuǎn)程客戶端的命令,完成對(duì)溫箱的控制,并將溫箱的溫度
信息反饋給遠(yuǎn)程客戶端。
2 系統(tǒng)硬件設(shè)計(jì)
本溫控系統(tǒng)的主要芯片是單片機(jī)MSP430F149芯片MCU。主要的器件有:數(shù)模轉(zhuǎn)換器DAC5571,鉑金電阻芯片,壓縮機(jī),加熱絲,以太網(wǎng)控制器CS8900A網(wǎng)絡(luò)接口芯片RTL8019AS等。
硬件體系上單片機(jī)MSP430F149是系統(tǒng)的控制中心,它監(jiān)控各個(gè)功能模塊的啟動(dòng)和運(yùn)行,如圖溫度的測(cè)量部分,控制數(shù)據(jù)發(fā)送,并通過與網(wǎng)絡(luò)接口芯片RTL8019AS的連接實(shí)現(xiàn)與PC機(jī)的以太網(wǎng)通信。
系統(tǒng)主要由遠(yuǎn)程控制端,Internet,CS8900A,MSP430F149單片機(jī)。位于遠(yuǎn)程控制端的用戶通過客戶機(jī)上的與INTERNER相連接的標(biāo)準(zhǔn)IE瀏覽器通過CS8900A以太網(wǎng)控制器與單片機(jī)之間通過通信從而實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)設(shè)備的控制,達(dá)到溫度的控制。系統(tǒng)體系結(jié)構(gòu)如圖1所示:
2.1 電源電路設(shè)計(jì)
本系統(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.2 溫度傳感器采集電路
DS18B20是一款小巧的溫度傳感器,它通過單總線協(xié)議與MCU進(jìn)行通信。MCU與DS18B20的硬件連接關(guān)系示意圖如圖所示,可知MCU的P2.4端口與DS18B20的DQ端連接,通過在MCU的IO端口模擬1-Wire協(xié)議的時(shí)序就能實(shí)現(xiàn)對(duì)DS18B20的讀寫了。溫度傳感器采集電路如圖3所示。
3 系統(tǒng)軟件設(shè)計(jì)
本設(shè)計(jì)的軟件部分主要包括實(shí)現(xiàn)溫度的采集和控制模塊,數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn),客戶端的遠(yuǎn)程控制3大部分。
3.1 溫度的采集和控制模塊
這個(gè)模塊的主要作用在于控制硬件設(shè)備,完成溫箱的溫度采集、顯示、控制功能。溫度的采集和控制模塊流程圖如圖4所示。
當(dāng)將要采集溫度數(shù)據(jù)時(shí),MSP430F149將通過溫度傳感器采集溫度,所用到得函數(shù)有:函數(shù)名稱:ReadTemp,功能:從DS18B20的Scratch Pad讀取溫度轉(zhuǎn)換結(jié)果,返回值:讀取的溫度數(shù)值。函數(shù)名稱:uint Do1Convert(void),功能:控制DS18B20完成一次溫度轉(zhuǎn)換,返回值:測(cè)量的溫度數(shù)值。
然后進(jìn)行A/D裝換將根據(jù)采集到的溫度數(shù)據(jù)設(shè)置寄存器的值,處理器讀取溫度數(shù)據(jù)到網(wǎng)絡(luò)控制器CS8900A中的發(fā)送控制寄存器TXCMD(000 4H),如果寫入數(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寫入芯片進(jìn)行接收,執(zhí)行相應(yīng)的控制操作。
3.2 數(shù)據(jù)傳輸?shù)能浖?shí)現(xiàn)
在通過網(wǎng)絡(luò)來實(shí)現(xiàn)數(shù)據(jù)的傳輸?shù)臅r(shí)候主要應(yīng)用的是TCP協(xié)議來實(shí)現(xiàn)收發(fā)數(shù)據(jù),設(shè)計(jì)針對(duì)數(shù)據(jù)收發(fā)過程當(dāng)中所要用到的函數(shù)。因?yàn)镽TL8019 AS里是帶緩存的,所以在CS8900A也需要通過對(duì)緩沖區(qū)的操作進(jìn)行數(shù)據(jù)的發(fā)送和接受。
在數(shù)據(jù)包收發(fā)的過程當(dāng)中,不同的任務(wù)需要不同的處理時(shí)間,這個(gè)時(shí)間可以使用MSP430F149的定時(shí)器Timer_A來提供。
3.3 客戶端的遠(yuǎn)程控制模塊
系統(tǒng)中遠(yuǎn)程控制端的用戶在建立HTTP服務(wù)器之后登陸與Internet相連接的瀏覽器中的控制頁面向MSP430F149發(fā)送控制指令,這一過程需要進(jìn)行一系列的操作,首先控制器端將通過因特網(wǎng)TCP/IP協(xié)議與串口協(xié)議之間的轉(zhuǎn)換傳輸過來,提取設(shè)備信息,通過和標(biāo)準(zhǔn)溫度比較,如果當(dāng)所測(cè)得的溫度高于標(biāo)準(zhǔn)溫度的時(shí)候,則輸出設(shè)備信息發(fā)出降溫標(biāo)示的信號(hào),單片機(jī)通過CS8900A網(wǎng)卡接口接受因特網(wǎng)發(fā)送過來的降溫指示,然后通過控制壓縮機(jī)進(jìn)行降溫,如果當(dāng)所測(cè)得的溫度低于標(biāo)準(zhǔn)溫度的時(shí)候,則輸出設(shè)備信息發(fā)出加熱標(biāo)示的信號(hào),單片機(jī)通過CS8900A網(wǎng)卡接口接受因特網(wǎng)發(fā)送過來的降溫指示,然后通過控制加熱絲進(jìn)行加熱。其中HTML(超文本鏈接標(biāo)示語言)網(wǎng)頁數(shù)據(jù)可以保存在MSP430F149的片內(nèi)
FLASH存儲(chǔ)器中。網(wǎng)頁能夠完成接收數(shù)據(jù)、發(fā)送網(wǎng)頁數(shù)據(jù)、關(guān)閉連接和等待其它應(yīng)用進(jìn)行連接等??蛻舳说倪h(yuǎn)程控制模塊流程圖如圖5所示。
4 仿真結(jié)果分析
4.1 實(shí)驗(yàn)條件
溫箱的體積大小設(shè)定為1 m3;工作環(huán)境的維度為25℃;工作電壓:220 V,50 Hz。
4.2 溫箱控制系統(tǒng)的控制精度分析
為了能夠準(zhǔn)確的測(cè)試系統(tǒng)的控制精度,在測(cè)試的同時(shí)在溫箱安置一只標(biāo)準(zhǔn)的溫度計(jì)用來測(cè)實(shí)際溫度。通過設(shè)定不同的目標(biāo)溫度值,對(duì)溫箱進(jìn)行溫度控制,當(dāng)系統(tǒng)顯示的溫度趨于穩(wěn)定的時(shí)候,查看標(biāo)準(zhǔn)溫度計(jì)所顯示的實(shí)際溫度的溫度值,將實(shí)際溫度和數(shù)碼管顯示溫度進(jìn)行比較,查看溫度誤差。具體的實(shí)驗(yàn)數(shù)據(jù)記錄如表1所示。
4.3 溫箱控制系統(tǒng)的控制性能分析
為了測(cè)試系統(tǒng)的控制性能,文中采取控制變量的方法進(jìn)行控制性能的測(cè)試,主要包含3種情況:降溫到預(yù)設(shè)溫度、加熱到預(yù)設(shè)溫度、不同初始溫度達(dá)到預(yù)設(shè)溫度。通過仿真測(cè)試得到溫度變化曲線如圖6~8所示。
從以上各圖中可以看出,所設(shè)計(jì)的溫箱控制系統(tǒng)可以實(shí)現(xiàn)溫度的實(shí)時(shí)控制,達(dá)到預(yù)設(shè)的溫度值,并可以使溫度保持在一個(gè)穩(wěn)定的范圍內(nèi),且溫度的穩(wěn)定誤差保持在0.5℃,達(dá)到了預(yù)期的控制效果,具有一定的應(yīng)用價(jià)值。
5 結(jié)論
基于單片機(jī)的網(wǎng)絡(luò)控制實(shí)現(xiàn)溫控系統(tǒng)是以單片機(jī)為核心的軟硬件平臺(tái)的嵌入式系統(tǒng)。通過使用MSP430微處理器、溫度采集電路、溫度控制電路搭建硬件平臺(tái),使用網(wǎng)絡(luò)控制平臺(tái),設(shè)計(jì)出了一個(gè)基于嵌入式技術(shù)的遠(yuǎn)程網(wǎng)絡(luò)控制溫控系統(tǒng)。該系統(tǒng)體積小巧,電路連接簡單,有效利用英特網(wǎng)的特性,用戶可以方便地進(jìn)行操作,增加用戶所需功能。從而提高了設(shè)備的智能程度,具有較高的工程實(shí)用價(jià)值。