摘 要:本文首先提出了以太網(wǎng)功能的智能灌溉控制器的設(shè)想;然后提出了智能灌溉系統(tǒng)的總體方案設(shè)計(jì),論證了基于MC9S12NE64單片機(jī)的智能灌控制器的合理性和優(yōu)越性,并介紹了MC9S12NE64單片機(jī)及開(kāi)發(fā)平臺(tái);接著講述了智能灌溉控制器的硬件設(shè)計(jì),詳細(xì)講解了智能灌溉控制器的工作原理和主要模塊的電路設(shè)計(jì);最后講述了控制器的軟件設(shè)計(jì)。
關(guān)鍵詞:智能灌溉 單片機(jī) MC9S12NE64 模糊控制 以太網(wǎng)
一、課題背景及目的
近年來(lái),噴灌、微灌等一些新型節(jié)能環(huán)保灌溉技術(shù)在我國(guó)的廣泛應(yīng)用,已經(jīng)取得了良好的經(jīng)濟(jì)和社會(huì)效益。目前我國(guó)園林自動(dòng)化灌溉基本上是采用時(shí)序控制的開(kāi)環(huán)控制系統(tǒng),其根本原因是國(guó)內(nèi)外閉環(huán)控制系統(tǒng)的控制器設(shè)計(jì)成本和傳感器價(jià)格過(guò)高。本課題借鑒國(guó)內(nèi)外智能灌溉系統(tǒng)的開(kāi)發(fā)經(jīng)驗(yàn),以低成本和實(shí)用性為切入點(diǎn),設(shè)計(jì)出基于單芯片以太網(wǎng)MCU的應(yīng)智能灌溉網(wǎng)絡(luò)控制器。其優(yōu)點(diǎn)主要有:
引入模糊控制策略,實(shí)現(xiàn)具有氣候和地形的自適應(yīng)能力的精量灌溉;
硬件設(shè)計(jì)基于低成本、快速性和高可靠性的單芯片以太網(wǎng)MCU解決方案;
基于TCP/IP協(xié)議以太網(wǎng)接入,可以接入Internet構(gòu)建大型灌溉網(wǎng)絡(luò)系統(tǒng);
自動(dòng)控制、手動(dòng)控制、定時(shí)控制等多種灌溉模式可選。
二、總體方案設(shè)計(jì)
本智能灌溉控制系統(tǒng)利用成熟的以太網(wǎng)技術(shù)將智能灌溉控制器、監(jiān)控計(jì)算機(jī)連接起來(lái),監(jiān)控計(jì)算機(jī)則根據(jù)各個(gè)區(qū)域的灌溉要求制定不同的灌溉方案,實(shí)時(shí)監(jiān)控智能控制器進(jìn)行小區(qū)域智能灌溉,從而輕松地實(shí)現(xiàn)大區(qū)域的灌溉自動(dòng)化。
智能灌溉控制器根據(jù)植被的種類(lèi)不同對(duì)灌溉需求的不同以及地理環(huán)境的不同,結(jié)合上級(jí)監(jiān)視計(jì)算機(jī)所發(fā)送來(lái)的控制指令,調(diào)整模糊規(guī)則庫(kù)。智能灌溉的過(guò)程如下:?jiǎn)纹瑱C(jī)通過(guò)土壤濕度傳感器、空氣濕度傳感器、空氣溫度傳感器、降雨傳感器實(shí)時(shí)采集各種環(huán)境數(shù)據(jù),經(jīng)過(guò)A/D轉(zhuǎn)換、信號(hào)處理,在微處理器中進(jìn)行模糊化處理,然后根據(jù)模糊規(guī)則庫(kù)進(jìn)行模糊推理,最后反模糊化得出精確的控制輸出量,控制電磁閥打開(kāi)灌溉管道進(jìn)行一個(gè)小區(qū)域的精確灌溉、節(jié)約灌溉。因此,在天氣熱、空氣和土壤濕度小的情況下,灌溉的時(shí)間會(huì)相應(yīng)地增長(zhǎng);而在空氣溫度較低,空氣和土壤濕度大的情況下,灌溉時(shí)間會(huì)相對(duì)地縮短;出現(xiàn)降雨的特殊情況,控制器會(huì)不進(jìn)行灌溉或者縮短灌溉時(shí)間。
智能灌溉控制器在灌溉的同時(shí),還可以實(shí)行手動(dòng)操作。通過(guò)控制面板上提供的4個(gè)按鍵(功能鍵、“+”鍵、“-”鍵、確認(rèn)鍵)和4個(gè)LED,可以顯示時(shí)間和實(shí)時(shí)的空氣溫度、濕度以及土壤濕度,方便人工調(diào)試和日常檢修維護(hù)。同時(shí)智能灌溉控制器還會(huì)通過(guò)以太網(wǎng)把實(shí)時(shí)的環(huán)境數(shù)據(jù)和控制數(shù)據(jù)傳送到監(jiān)視計(jì)算機(jī),監(jiān)視計(jì)算機(jī)可以通過(guò)分析各個(gè)控制器傳送來(lái)的數(shù)據(jù),監(jiān)視各個(gè)控制器的工作過(guò)程,實(shí)現(xiàn)整個(gè)大區(qū)域的灌溉自動(dòng)化。
如上所述,智能灌溉控制器必須實(shí)現(xiàn)兩個(gè)大功能,分別是以太網(wǎng)的通信功能和智能控制功能。采用Motorola的MC9S12NE64單片機(jī)作為控制器是非常理想的,它擁有專(zhuān)門(mén)的模糊控制指令,大大簡(jiǎn)化了模糊控制的程序,提高了程序的執(zhí)行速度;同時(shí)它具有標(biāo)準(zhǔn)化的以太網(wǎng)接口模塊,輕而易舉地實(shí)現(xiàn)和上位機(jī)(總控制室)的網(wǎng)絡(luò)連接。
MC9S12NE64是Motorola公司旗下的Freescale子公司生產(chǎn)的MC9S12系列16位單片機(jī)。MC9S12NE64單片機(jī)帶10Mb/s/100Mb/s的符合IEEE802.3通訊協(xié)議標(biāo)準(zhǔn)的以太網(wǎng)接口和64KB的Flash內(nèi)存,封裝形式有80引腳和112引腳。該單片機(jī)廣泛使用于網(wǎng)絡(luò)接入設(shè)備、網(wǎng)絡(luò)電視、機(jī)頂盒、瘦服務(wù)器、家庭網(wǎng)關(guān)、工控設(shè)備等領(lǐng)域。MC9S12NE64單片機(jī)可以采用“BDM12開(kāi)發(fā)工具+ Codewarrior IDE軟件”的組合來(lái)進(jìn)行快速的開(kāi)發(fā)。
三、控制器硬件結(jié)構(gòu)設(shè)計(jì)
智能灌溉控制器通過(guò)RJ-45以太網(wǎng)接口跟上層監(jiān)控計(jì)算機(jī)進(jìn)行以太網(wǎng)連接,通過(guò)以太網(wǎng)把實(shí)時(shí)的環(huán)境數(shù)據(jù)和控制數(shù)據(jù)傳送到監(jiān)視計(jì)算機(jī),監(jiān)視計(jì)算機(jī)可以通過(guò)分析各個(gè)控制器傳送來(lái)的數(shù)據(jù),監(jiān)視各個(gè)控制器的工作過(guò)程。同時(shí),控制器還可以實(shí)行手動(dòng)操作。因此,控制器連接了四個(gè)按鍵和四個(gè)LED顯示管。通過(guò)控制面板上提供的4個(gè)按鍵和4個(gè)LED,可以顯示時(shí)間和實(shí)時(shí)的空氣溫度、濕度以及土壤濕度,方便人工調(diào)試和日常檢修維護(hù)??刂破饔布Y(jié)構(gòu)框圖如圖1所示。
1.時(shí)鐘顯示模塊
本課題采用了Maxim公司的DS1302作為智能灌溉控制器的實(shí)時(shí)時(shí)鐘芯片,DS1302是DALLAS公司推出的涓流充電時(shí)鐘芯片內(nèi)含有一個(gè)實(shí)時(shí)時(shí)鐘/日歷和31 字節(jié)靜態(tài)RAM,通過(guò)簡(jiǎn)單的串行接口與單片機(jī)進(jìn)行通信。實(shí)時(shí)時(shí)鐘/日歷電路提供秒、分、時(shí)、日、日期、月、年的信息,每月的天數(shù)和閏年的天數(shù)。
DS1302芯片采用同步串行的方式就能和單片機(jī)進(jìn)行通信,而且僅僅需用到三個(gè)口線:RES(復(fù)位)、I/O(數(shù)據(jù)線)、SCLK(串行時(shí)鐘)。DS1302芯片的I/O端口接到單片機(jī)的80端口,串行時(shí)鐘端口SCLK接到單片機(jī)的79端口,而復(fù)位端口RES則連接到單片機(jī)的1接口。DS1302芯片的2、3(X1、X2)引腳連接著25MHZ的晶振,引腳間的連線要盡可能的短。DS1302芯片的電源由一塊3.6V/6mA的紐扣電池提供。
2.空氣溫度檢測(cè)模塊
本課題采用了DALLAS公司生產(chǎn)的數(shù)字溫度傳感器DS18B20芯片,在檢測(cè)范圍和精度要求適用的情況下,選用該芯片可以達(dá)到高的性價(jià)比。DS18B20是新型單總線數(shù)字溫度傳感器,主要特點(diǎn)為:直接將數(shù)字信號(hào)傳給CPU,無(wú)需A/D轉(zhuǎn)換電路;溫度檢測(cè)范圍為-55~125℃,精度為±0.5℃,分辨力為9~12位;采用單線接口方式與單片機(jī)連接,即可實(shí)現(xiàn)同DS18B20的雙向通信;片內(nèi)自帶ROM和RAM,可方便地通過(guò)ROM和RAM操作指令實(shí)現(xiàn)對(duì)DS18B20的讀寫(xiě)。 DS18B20為單線式傳輸器件,和單片機(jī)的連接只需一根數(shù)據(jù)線,電路極其簡(jiǎn)單。本系統(tǒng)中,單片機(jī)與DS18B20的連接電路如圖2所示。其中,DS18B20采用外部電源供電方式,在單片機(jī)的64端口與VCC之間有一個(gè)上拉電阻,以保證數(shù)據(jù)采集的正常進(jìn)行,AT89C52通過(guò)64端口和DS18B20的數(shù)據(jù)線DQ相連。
3.土壤濕度檢測(cè)模塊
土壤濕度傳感器一般是采集土壤的水吸力大小信號(hào),也叫土壤水分傳感器。通過(guò)土壤濕度傳感器來(lái)測(cè)量土壤的濕度,我們可以知道真正的灌溉需求和土壤的保水能力。本系統(tǒng)選用Progres公司的專(zhuān)業(yè)土壤濕度傳感器,它把土壤水吸力的大小轉(zhuǎn)化為標(biāo)準(zhǔn)的4~20mA電流信號(hào)。
4.以太網(wǎng)通信模塊
MC9S12NE64單片機(jī)集成了以太網(wǎng)MAC層和物理層的驅(qū)動(dòng)模塊,與RJ-45以太網(wǎng)接口連接。具有所用外部元件少、系統(tǒng)開(kāi)銷(xiāo)小、穩(wěn)定性高、設(shè)計(jì)時(shí)間短等一系列優(yōu)點(diǎn)。同時(shí),TCP/IP協(xié)議采用直接基于某種控制器的協(xié)議OpenTCP。由于該協(xié)議針對(duì)MC9S12NE64進(jìn)行了優(yōu)化能更好地利用處理器的特性,有效提高了協(xié)議的處理效率, 在快速以太網(wǎng)上,ARP包的傳輸速率可達(dá)到87 Mb/s。
四、主程序流程圖
主程序首先完成初始化,設(shè)置了單片機(jī)的各種工作方式,設(shè)置顯示緩存和數(shù)據(jù)緩存地址,對(duì)REM和ROM寫(xiě)入各種數(shù)據(jù),方便程序的調(diào)用,比如向ROM寫(xiě)入模糊規(guī)則的控制字符串等;按鍵檢測(cè)把被按的按鍵讀入單片機(jī),經(jīng)按鍵設(shè)定模塊,判斷出按鍵的功能;在上圖沒(méi)有提及的是傳感器參數(shù)檢測(cè)模塊,此模塊利用定時(shí)中斷的運(yùn)行方式完成對(duì)各個(gè)傳感器的參數(shù)的檢測(cè),并進(jìn)行A/D轉(zhuǎn)換,將參數(shù)數(shù)據(jù)存儲(chǔ)在單片機(jī)中;控制算法和控制輸出模塊首先通過(guò)對(duì)空氣溫濕度傳感器、土壤濕度傳感器以及降雨傳感器所檢測(cè)到的參數(shù)數(shù)據(jù)進(jìn)行模糊化處理,把精確數(shù)據(jù)變成模糊輸入量,再經(jīng)模糊推理,把各個(gè)模糊輸入量通過(guò)實(shí)現(xiàn)規(guī)則庫(kù)確定灌溉的模糊輸出量,最后通過(guò)反模糊化,把模糊輸出量變換成精確的灌溉時(shí)間,實(shí)施智能灌溉;以太網(wǎng)通訊模塊主要完成與上位機(jī)的通訊,接收監(jiān)視計(jì)算機(jī)發(fā)送來(lái)的控制指令,并把實(shí)時(shí)的植被的成長(zhǎng)環(huán)境數(shù)據(jù)和相應(yīng)的灌溉信息發(fā)送到監(jiān)視計(jì)算機(jī)。主程序流程圖如圖3所示。
圖3 主程序流程圖
(作者單位:中山市技師學(xué)院)