水稻自動灌溉控制器的設(shè)計(jì)_第1頁
水稻自動灌溉控制器的設(shè)計(jì)_第2頁
水稻自動灌溉控制器的設(shè)計(jì)_第3頁
水稻自動灌溉控制器的設(shè)計(jì)_第4頁
水稻自動灌溉控制器的設(shè)計(jì)_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、哈爾濱石油學(xué)院學(xué)位論文姓名盧愷男學(xué)號201306340227專業(yè)電氣工程及其自動化設(shè)計(jì)領(lǐng)域水稻灌溉技術(shù)論文題目水稻自動灌溉控制器的設(shè)計(jì)導(dǎo)師邵克勇哈爾濱石油學(xué)院21哈爾濱石油學(xué)院本科生畢業(yè)設(shè)計(jì)(論文)摘 要隨著現(xiàn)代農(nóng)業(yè)生產(chǎn)水平的不斷提升以及全球水資源的日趨缺乏,世界各個國家均在積極探索有效的節(jié)水途徑及措施。智能灌溉控制系統(tǒng)也就是為了解決水資源不足、提高灌溉效率從而發(fā)展起來的。本文中研究的單片機(jī)智能灌溉控制系統(tǒng),正是對土壤的濕度進(jìn)行實(shí)時監(jiān)控,參考其實(shí)際濕度值設(shè)定適宜的濕度下限值,并按照其設(shè)定濕度值進(jìn)行相應(yīng)的灌溉。本設(shè)計(jì)正是一種可用于農(nóng)田灌溉的節(jié)水控制系統(tǒng),以單片機(jī)芯片STC89C52作為核心控制器

2、,利用土壤濕度傳感器對其采集到的土壤濕度信息為依據(jù),以便調(diào)節(jié)水泵的開度,從而實(shí)現(xiàn)自動灌溉的節(jié)水控制。該系統(tǒng)硬件設(shè)計(jì)包括有土壤濕度傳感器測量電路、單片機(jī)控制電路、繼電器電路以及LCD顯示電路等。本軟件主要以C語言進(jìn)行程序編寫。該設(shè)計(jì)具有低成本,操作簡單,擴(kuò)展容易等特點(diǎn),并能對農(nóng)作物進(jìn)行及時、適時、適量的灌溉,避免水資源的浪費(fèi)。關(guān)鍵詞:單片機(jī);灌溉;土壤濕度傳感器;液晶AbstractWith the continuous development of agricultural production and the increasingly tense global water resources

3、, countries around the world are actively exploring effective ways and measures to save water. Intelligent irrigation control system is developed to solve the problem of water shortage and improve irrigation efficiency. In this paper, the intelligent control system of single chip microcomputer is us

4、ed to monitor the soil moisture in real time, and set the appropriate lower limit value of humidity according to the actual temperature.This design is a kind of control system for water saving irrigation, with the single chip STC89C52 as the core controller, using soil moisture sensors soil moisture

5、 information collected as the basis, opening regulating pump, so as to realize the automatic control of water saving irrigation. The system hardware design includes soil humidity sensor measure circuit, single-chip microcomputer control circuit, a relay circuit and LCD display circuit etc. Software

6、main program written in C language. The design has the advantages of low cost, simple operation, easy expansion characteristics, and can timely, adequate irrigation for crops, avoid the waste of water resources.Key words: Single chip microcomputer; Irrigation; Soil moisture sensor; LCD41目 錄第1章 前言11.

7、1 課題研究背景及意義11.2 國內(nèi)外發(fā)展?fàn)顩r21.3 論文主要內(nèi)容及結(jié)構(gòu)安排3第2章 總體方案論證與設(shè)計(jì)52.1 設(shè)計(jì)要求52.2 總體設(shè)計(jì)方案52.3 各功能模塊方案選擇62.4 本章小結(jié)8第3章 系統(tǒng)硬件設(shè)計(jì)93.1 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)93.2 實(shí)時時鐘模塊設(shè)計(jì)123.3 按鍵模塊設(shè)計(jì)133.4 LCD顯示模塊設(shè)計(jì)143.5 自動灌溉模塊設(shè)計(jì)153.6 土壤濕度測量模塊設(shè)計(jì)163.7 本章小結(jié)17第4章 系統(tǒng)軟件設(shè)計(jì)184.1 主程序的設(shè)計(jì)184.2 LCD顯示電路程序的設(shè)計(jì)194.3 濕度傳感器流程圖設(shè)計(jì)224.4 輸出控制子程序流程圖設(shè)計(jì)234.5 本章小結(jié)24第5章 系統(tǒng)調(diào)試2

8、55.1 硬件調(diào)試255.2 軟件調(diào)試295.3 本章小結(jié)30結(jié) 論32參考文獻(xiàn)33致 謝34附 錄35第1章 前言1.1 課題研究背景及意義中國眾所周知國是一個農(nóng)業(yè)大國,農(nóng)業(yè)中水資源的利用的有很多方面,而我們面臨水資源嚴(yán)重缺乏,水旱災(zāi)害頻繁而且水資源的分布很不平衡的問題。我國農(nóng)業(yè)用水量約占總用水量的80%左右,由于農(nóng)業(yè)灌溉用水的利用率普遍偏低,就全國而言,水的利用率僅為45%,而水資源利用率高的國家已達(dá)70%80%1。若采用傳統(tǒng)的灌溉模式,則灌溉定額普遍偏高。農(nóng)業(yè)灌溉普遍采取的模式是定時灌溉,定時灌溉則是指在設(shè)定的時間內(nèi)對農(nóng)田進(jìn)行定點(diǎn)灌溉,定時灌溉并不能給予農(nóng)作物相應(yīng)合理科學(xué)的灌溉量,且水資

9、源過于浪費(fèi)。我國國內(nèi)仍沒有成型的自動控制灌溉系統(tǒng)相關(guān)產(chǎn)品,基本是依靠手動的閥門來進(jìn)行相關(guān)操作。自動控制器、壓力調(diào)節(jié)器以及水控電磁閥方面均屬于空白狀態(tài)。此外,灌溉系統(tǒng)的其它模塊、抽取水源的閥門、壓力罐、測量土壤濕度等元件均屬于引進(jìn)產(chǎn)品。整個系統(tǒng)的配套性較差。隨著電子技術(shù)、傳感技術(shù)、單片機(jī)技術(shù)的日益發(fā)展,在灌溉系統(tǒng)中合理正確地推廣自動化技術(shù),不僅可以提高水資源利用率,而且還可以增加農(nóng)作物的產(chǎn)量,培養(yǎng)出優(yōu)良的農(nóng)作物。按照作物需水要求及水源供水狀況,有計(jì)劃地控制濕度,合理組織用水,以控制、調(diào)節(jié)土壤相對濕度來滿足作物的生長要求,正是作用生長管理工作的核心內(nèi)容。對此,需要及時地去掌握作物的生長規(guī)律,各發(fā)育

10、期的需水量及適宜的生長濕度,而這些最重要的是土壤的含水量。本土壤濕度作為土壤灌溉的基本參考量,對農(nóng)作物生長十分重要,通過人為等手段創(chuàng)造出適合作物生長的土壤濕度環(huán)境,不僅可以提高單位面積產(chǎn)量,而且還可提升農(nóng)產(chǎn)品的質(zhì)量,從而實(shí)現(xiàn)高效農(nóng)業(yè)生產(chǎn)的目的2。如今國家提出的倡導(dǎo)“科技農(nóng)業(yè)”“精準(zhǔn)農(nóng)業(yè)”的大背景下和各地水稻的智能化建設(shè)的急切需求下,為普遍提高我國人民的生活水平,解決我國農(nóng)民普遍收入低等問題,縮小城市與鄉(xiāng)村的差距,推動建成全面小康社會,迫切需要價格合理,自動化程度相對較高的農(nóng)業(yè)設(shè)備。而單片機(jī)及各種電子器件的性價比較高,這正使得成低成本高性能這種要求得以實(shí)現(xiàn)。本設(shè)計(jì)是針對這一問題,設(shè)計(jì)能夠?qū)ν寥肋M(jìn)

11、行檢測、顯示、報警和控制等多功能自動灌溉控制系統(tǒng)。其系統(tǒng)具有性能好,操作容易等優(yōu)點(diǎn)。系統(tǒng)在其他領(lǐng)域也具有一定的推廣價值3。綜上所述節(jié)水灌溉控制器近期在我國國內(nèi)正轉(zhuǎn)向低價格、高性能、操作簡易的方向發(fā)展。但從長遠(yuǎn)利益角度考慮,新的全面智能化技術(shù)、農(nóng)業(yè)技術(shù)及傳感科技的研發(fā)、應(yīng)用和普及,將會不斷出現(xiàn)高智能化、強(qiáng)功能、性能更趨于可靠和穩(wěn)定的灌溉控制器。本設(shè)計(jì)也正以STC89C52單片機(jī)為核心硬件模塊,通過軟件編程已實(shí)現(xiàn)對土壤濕度的檢測,當(dāng)所測量的濕度低于標(biāo)準(zhǔn)值時,將觸發(fā)灌溉控制器模塊,進(jìn)而進(jìn)行自動灌溉,系統(tǒng)同時還可以實(shí)現(xiàn)時間控制等方式,及時灌溉,從而也體現(xiàn)出用途廣、人性化等的現(xiàn)代智能化系統(tǒng)設(shè)計(jì)要求。根據(jù)

12、本設(shè)計(jì)的功能要求,可確定以下方案:以STC89C52單片機(jī)為控制模塊為核心,采用模塊化的設(shè)計(jì)方案。在閉環(huán)方式控制下,利用濕度測量模塊將不同情況檢測到的濕度相關(guān)量進(jìn)行模數(shù)轉(zhuǎn)化后傳送給單片機(jī),單片機(jī)將收集到的數(shù)據(jù)與標(biāo)準(zhǔn)值之間進(jìn)行比較;若采集數(shù)據(jù)低于標(biāo)準(zhǔn)值,則啟動繼電器模塊驅(qū)動進(jìn)行灌溉;若采集到數(shù)據(jù)高于標(biāo)準(zhǔn)值,則會不啟動驅(qū)動模塊,進(jìn)而停止灌溉。顯示模塊將收集到的數(shù)據(jù)和灌溉信息在顯示屏幕上顯示。灌溉時限一到,驅(qū)動電路則使得繼電器停止工作,從而灌溉停止。在時間控制的方式下,便可以通過鍵盤輸入進(jìn)行灌溉相關(guān)量的調(diào)整,同樣到達(dá)灌溉時限,灌溉則會停止。1.2 國內(nèi)外發(fā)展?fàn)顩r我國國內(nèi)自20世紀(jì)初起,至50年代即開

13、始研究節(jié)水灌溉的技術(shù),并對當(dāng)時我國主要農(nóng)作物的需水量及需水環(huán)境、灌溉相關(guān)制度進(jìn)行了諸多研究實(shí)驗(yàn),并繪制出我國主要農(nóng)作物的需水量等規(guī)律圖,建立了全國灌溉研究資料數(shù)據(jù)儲存庫。20世紀(jì)80年代初主要聚焦在節(jié)水灌溉要求方面的研究。節(jié)水灌溉要求包括灌水時期、灌水額度和灌水周期量等相關(guān)內(nèi)容。依據(jù)水與農(nóng)作物生長、發(fā)育及產(chǎn)量之間的內(nèi)在關(guān)系,通過限制的水量在農(nóng)作物生長發(fā)育周期內(nèi)的最佳分配,以提高有限灌溉水量下農(nóng)作物根部吸收轉(zhuǎn)化和光合作用向效率化,經(jīng)濟(jì)化產(chǎn)量轉(zhuǎn)化為目標(biāo),進(jìn)而達(dá)到高產(chǎn)量和高效率。但此時的研究僅是基于傳統(tǒng)充分灌溉基礎(chǔ)之上的。例如灌溉水量的均勻分布評價指標(biāo)的研究實(shí)驗(yàn)噴灌和灌溉條件下土壤內(nèi)所含有的營養(yǎng)成分

14、相應(yīng)特征的前期實(shí)驗(yàn)研究,研究了在噴灌、灌溉到土壤條件下,土壤中的營養(yǎng)成分相互運(yùn)移的特征;噴灌條件時小氣候相應(yīng)變化規(guī)律的研究,研究了最大相對濕度與噴灌工作壓力、噴灌時間長短、風(fēng)力大小、風(fēng)向以及光照相對強(qiáng)度的關(guān)系;在開發(fā)的系列產(chǎn)品中最具有代表性的如我國農(nóng)業(yè)機(jī)械化研究院聯(lián)合多家相關(guān)單位研制的2000型自動灌溉施肥系統(tǒng)4,具有手動控制、程序控制和自動控制等。國內(nèi)在開發(fā)灌溉自動控制系統(tǒng)方面還處于研制、試用階段,真正能投入實(shí)際應(yīng)用,且應(yīng)用較廣的灌溉控制器還是很少。在開發(fā)的產(chǎn)品中有著代表性的,如北京的澳作生態(tài)儀器有限公司其生產(chǎn)的澳作智能節(jié)水灌溉控制系統(tǒng)可與各種形式噴、滴灌系統(tǒng)相互連接,實(shí)時監(jiān)測土壤相關(guān)情況,

15、根據(jù)要求活,手動操作、半自動運(yùn)行、全自動運(yùn)行任選并且可以任意在計(jì)算機(jī)上更改,可以同時的控制諸多設(shè)備,受控區(qū)的位置以及狀況,相關(guān)環(huán)境參數(shù)及設(shè)備的狀態(tài)都可一同時顯示在核心計(jì)算機(jī)上。北京奧特思達(dá)科技有限公司研制的WT-02型微噴灌定時自動控制器,是一種供農(nóng)業(yè)、草坪、果園、溫室一般場合給水的電子灌溉自動控制系統(tǒng)。國外一些先進(jìn)國家,如英國、意大利和日本等,運(yùn)用高超的電子技術(shù)、計(jì)算機(jī)技術(shù)和控制理論,并在節(jié)水灌溉技術(shù)起步較早,并已經(jīng)日漸穩(wěn)定成熟。英國的有效灌溉面積為2.45億畝,其低于我國的一半,但微灌和噴灌面積卻占53.4%。德國的灌溉面積均全部采用噴灌及微灌,其中微灌足足占了一半以上。法國、英國、奧地利

16、、瑞典、德國、捷克、丹麥、匈牙利、羅馬尼亞等國家,微灌和噴灌面積占灌溉面積的比例都達(dá)到了85%以上5。近20年來,全球的微灌面積以每年平均34%的速度不斷增長,總面積可以說已達(dá)到5450萬畝。其中約旦、以色列、法國、美國、澳大利亞、南非、塞浦路斯等國微灌面積占灌溉面積的比例超過了6%;英國的微灌面積達(dá)1675萬畝,占全球總面積的28.1%;近10年來,德國微灌面積增加了2.34倍。我國微灌面積卻僅占全球灌溉總面積的0.49%,已經(jīng)落后于與我國在人口、水資源存量、土地面積及經(jīng)濟(jì)發(fā)展水平等方面相類似的印度6。國外同樣對低壓管道輸水很重視,英國有接近一半的大型灌溉區(qū)域?qū)崿F(xiàn)了輸水管道化;美國更早在20

17、世紀(jì)70年代,就有超過一半以上的新型農(nóng)田輸水網(wǎng)實(shí)現(xiàn)了管道化。在老舊灌區(qū)改造中,加拿大的伯塔灌溉區(qū)域、澳大利亞的倫馬克灌溉區(qū)域均將原有的渠系重建為地下輸水管道。這些先進(jìn)的國家以最早的機(jī)械、水力控制,而后的機(jī)械電子混合協(xié)調(diào)式控制,直至現(xiàn)今廣泛應(yīng)用的計(jì)算機(jī)控制、神經(jīng)網(wǎng)絡(luò)控制以及模糊控制等,其控制精準(zhǔn)度和人工智能化程度逐步提高,可靠性能逐步提升,操作也逐漸趨于簡便。近些年來隨著農(nóng)業(yè)對自動化的程度要求的逐步提升,奧地利出現(xiàn)灌溉可用的編程邏輯控制器(PLC),這類控制器可以通過將不同的網(wǎng)絡(luò)一起連接到主腦上來進(jìn)行相關(guān)數(shù)據(jù)處理與采集。隨著傳感器技術(shù)、控制技術(shù)的不斷發(fā)展,奧地利開發(fā)出了現(xiàn)代化診斷式控制器,這種控

18、制器可把以前不可能采集到的一些信息通過不同類型的傳感器來獲取采集,通過遠(yuǎn)程控制、因特網(wǎng)、GSM等來得以實(shí)現(xiàn)數(shù)據(jù)傳輸,然后通過計(jì)算機(jī)中的一些相關(guān)模型來處理信息,做出灌溉相關(guān)計(jì)劃7。1.3 論文主要內(nèi)容及結(jié)構(gòu)安排 本設(shè)計(jì)在土壤濕度測量模塊的基礎(chǔ)之上設(shè)計(jì)出一種具有自動灌溉功能的系統(tǒng),根據(jù)土壤濕度的不同,以決定是否供水及切斷水源供給,當(dāng)測得土壤濕度處于缺水的狀態(tài)時,將是抽水模塊工作予以及時的土壤灌溉,在土壤濕度高于標(biāo)準(zhǔn)指數(shù)時,則停止抽水模塊的工作。本次設(shè)計(jì)的系統(tǒng)由單片機(jī)STC89C52系為核心控制電路,通過對傳感器和繼電器的控制,加之以必要的模塊,如土壤濕度測量模塊、抽水水泵模塊等。實(shí)現(xiàn)了個單元之間有

19、效的控制,本文分四章對該自動灌溉系統(tǒng)設(shè)計(jì)依次進(jìn)行了詳細(xì)介紹,各章節(jié)中的內(nèi)容安排如下:第1章:提出該課題的研究背景以及意義所在,并對國內(nèi)外的自動灌溉技術(shù)的發(fā)展現(xiàn)狀及趨勢進(jìn)行簡要的概括,提出論文主要內(nèi)容和研究的相關(guān)課題,并介紹了論文的章節(jié)安排。第2章:本章先提出本設(shè)計(jì)的相關(guān)要求,并對總體設(shè)計(jì)方案與課題論證進(jìn)行了總結(jié),并對各模塊進(jìn)行了選擇與比較,給出不同方案以進(jìn)行比較其優(yōu)良性與適用性從而最終確定了方案。第3章:本章對自動灌溉控制系統(tǒng)的總體控制功能以及各個模塊功能進(jìn)行。并分別闡述個模塊得工作原理、工作電路圖以及工作流程圖,個模塊的具體工作過程和各個硬件之間的連接。第4章:本章主要研究并闡述了在連接電路

20、的基礎(chǔ)之上進(jìn)行設(shè)計(jì)相應(yīng)的軟件程序,闡述了程序的運(yùn)行過程,給出各個功能模塊應(yīng)用程序的源程序以及相關(guān)流程圖。第2章 總體方案論證與設(shè)計(jì)2.1 設(shè)計(jì)要求本系統(tǒng)正以52單片機(jī)為主要的核心控制,依據(jù)土壤濕度傳感器模塊對土壤的濕度進(jìn)行有效的測量,單片機(jī)本身自帶的A/D轉(zhuǎn)換器將測量的相關(guān)量進(jìn)而轉(zhuǎn)換為數(shù)字量,并將數(shù)值顯示到1602液晶屏幕上,同時與單片機(jī)內(nèi)部設(shè)定的閾值數(shù)據(jù)比較,進(jìn)而控制繼電器及與繼電器相連的水泵開度,從而實(shí)現(xiàn)顯示、自動灌溉的節(jié)水控制。本設(shè)計(jì)軟件部分由C語言編寫,主要包括控制主程序,濕度測量子程序,A/D轉(zhuǎn)換子程序,顯示電路子程序,蜂鳴器子程序,按鍵子程序,中斷子程序以及LCD顯示子程序。本設(shè)計(jì)

21、在控制水泵灌溉土壤的基礎(chǔ)上,同時設(shè)置了提醒功能,當(dāng)測得的土壤濕度低于所設(shè)置的低閾值時,蜂鳴器響一聲,然后控制水泵抽水灌溉土壤;當(dāng)土壤濕度高于所設(shè)的高閾值時,蜂鳴器響兩聲,間隔時間極短,以便提醒濕度過高予以控制。單片機(jī)板上還設(shè)有液晶顯示模塊和控制按鍵,具有以下功能:(1)LCD顯示低閾值tl和高閾值th,以及測得的濕度百分比。兩個閾值在程序中設(shè)定初值,也可通過外部按鍵更改大??;(2)按鍵0是控制LCD光標(biāo)的位置,每按下一次直到松開為止,光標(biāo)移動一次,光標(biāo)是在閾值設(shè)定值上移動,具體移動位置由程序設(shè)定,按鍵10ms以上有效;(3)按鍵1是閾值設(shè)置中的“加”功能,按下后數(shù)值一直累加,直到松開數(shù)值停止累

22、加;(4)按鍵2是閾值設(shè)置中的“減”功能,按下后數(shù)值一直累減,直到松開數(shù)值停止累減。2.2 總體設(shè)計(jì)方案本系統(tǒng)硬件包括:濕度采集轉(zhuǎn)換模塊、單片機(jī)、按鍵控制、LCD顯示、繼電器、報警電路等部分的設(shè)計(jì)。系統(tǒng)整體電路框圖如圖2-1所示。STC89C52單片機(jī)水泵控制LCD顯示報警按鍵輸入濕度采集轉(zhuǎn)換模塊圖2-1 模擬智能灌溉系統(tǒng)框圖2.3 各功能模塊方案選擇2.3.1 單片機(jī)型號的選擇本系統(tǒng)中我們采用STC公司生產(chǎn)的STC89C52單片機(jī)作為主控芯片。STC89C52是一種功耗低、性能高的CMOS8位微控制器,還具有8K在系統(tǒng)可編程的Flash存儲器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做

23、了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單一芯片上,擁有1個8位中央處理器CPU和在系統(tǒng)內(nèi)可編程Flash,使得STC89C52為許多嵌入式的控制應(yīng)用提供高靈活有效的解決方案。指令代碼完全兼容傳統(tǒng)80518。2.3.2 濕度傳感器型號的選擇傳感器是檢測系統(tǒng)中與被測對象直接發(fā)生聯(lián)系的部分,是信息輸入的窗口,它為檢測系統(tǒng)提供必要的原始信息。檢測系統(tǒng)獲取信息的質(zhì)量也往往是由傳感器的性能一次性確定。為了能使其輸出在精度要求范圍內(nèi)反映被測量,傳感器必須具備一定的基本特性,因?yàn)橹挥羞@樣傳感器的輸出才能作為其輸出的量度。土壤濕度傳感器主要是用來測量土壤含水量,可以用作土壤墑情的監(jiān)測、農(nóng)業(yè)灌溉與

24、林業(yè)防護(hù)。眼下常用到的濕度傳感器有FDR型和TDR型。眼下比較流行的是FDR型9。FRD頻域反射儀是一種常用于測量土壤水分的儀器,它是利用電磁脈沖原理,根據(jù)電磁波在介質(zhì)中的傳播頻率來測量土壤的表觀介電常數(shù),由此得到土壤的容積含水量10。經(jīng)過比較各種土壤水分傳感器的性能參數(shù),本系統(tǒng)選用了YL-100型土壤水分傳感器,其外形如圖2-2所示。這是一個簡易的水分傳感器利用電阻變化測量水分濕度。當(dāng)土壤缺水時,傳感器輸出的模擬值將減小,反之將增大。表面做了金屬化處理,可以延長它的使用壽命。測量精度相對于數(shù)字集成濕度傳感器較低,但價格相對便宜,能滿足大部分植物的需求。圖2-2 濕度傳感器2.3.3 按鍵控制

25、系統(tǒng)模塊方案一:購買集成鍵盤,采用矩陣形式連接。集成美觀,與單片機(jī)的接口少,但是它的成本比較高。方案二:購買單個復(fù)位開關(guān)做成鍵盤。單片機(jī)的I/O口對于我們的設(shè)計(jì)綽綽有余。比較以上兩種方案,我們選用價格便宜的單個復(fù)位開關(guān)做成鍵盤。因此選擇方案二。2.3.4 報警系統(tǒng)模塊型號方案一:語音報警,電路復(fù)雜。方案二:采用蜂鳴器實(shí)現(xiàn)用聲音報警。價格便宜,電路簡單,易于實(shí)現(xiàn)。比較以上兩種方案,我們選用價格便宜的蜂鳴器實(shí)現(xiàn)用聲音報警。因此選擇方案二。2.3.5 水泵控制系統(tǒng)模塊型號方案一:購買專門的控制模塊,價格有些貴。方案二:采用繼電器控制水泵的開度,操作方便易控制。比較以上兩種方案,我們選用比較熟悉的繼電

26、器模塊控制水泵。即方案二。2.4 本章小結(jié)本設(shè)計(jì)在控制水泵灌溉土壤的基礎(chǔ)上,同時設(shè)置了提醒功能,當(dāng)測得的土壤濕度低于所設(shè)置的低閾值時,蜂鳴器響一聲,然后控制水泵抽水灌溉土壤;當(dāng)土壤濕度高于所設(shè)的高閾值時,蜂鳴器響兩聲,間隔時間極短,以便提醒濕度過高予以控制。第3章 系統(tǒng)硬件設(shè)計(jì)3.1 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)3.1.1 主要功能特性STC89C52的標(biāo)準(zhǔn)功能如下:8k字節(jié)的Flash存儲器;512字節(jié)隨機(jī)存取存儲器RAM;32位I/O口線;內(nèi)部設(shè)置有4KB EEPROM,MAX810復(fù)位電路;3個16位定時器/計(jì)數(shù)器;4個外部中斷;一個7向量的4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量的2級中斷結(jié)構(gòu));

27、全雙工串行口。此外STC89C52靜態(tài)邏輯操作可以降低到0Hz,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選11。工作電壓為5.5V-3.5V(5V單片機(jī)),工作頻率范圍為035MHz,相當(dāng)于普通8051的0420MHz。片上集成1280字節(jié)RAM,通用I/O口40個,復(fù)位后為準(zhǔn)雙向口/弱上拉,開漏每個I/O口的驅(qū)動能力都可以達(dá)到20mA,但整個芯片的電流最大不可以超過120mA。有看門狗和EEPR

28、OM功能。內(nèi)部集成MAX810專用復(fù)位電路(外部晶體12M以下時,外部復(fù)位電路可省,復(fù)位腳可直接1K電阻到地)。共有4個16位的定時器,2個與傳統(tǒng)8051相兼容的計(jì)數(shù)器/定時器,16位的定時器T0與T1,雖沒有定時器2,但卻有獨(dú)立波特率發(fā)生器做為串行通訊的波特率發(fā)生器,再加上2路PCA模塊便可實(shí)現(xiàn)2個16位定時器。3個時鐘的輸出口,可由T0的溢出在P3.4/T0輸出時鐘,可由T1的溢出在P3.5/T1輸出時鐘,獨(dú)立的波特率發(fā)生器便可以在P1.0口輸出時鐘12。A/D轉(zhuǎn)換,10位精度ADC,共8路,轉(zhuǎn)換速度可達(dá)250K/S(每秒鐘25萬次)。通用全雙工異步串行口(UART),由于STC12系列是

29、高速的8051,可再用定時器或PCA軟件實(shí)現(xiàn)多個串口。STC12C5A60S2系列具有雙串口,RxD2/P1.2(可以經(jīng)過寄存器設(shè)置到P4.2),TxD2/P1.3(可經(jīng)過寄存器設(shè)置到P4.3)。工作溫度的范圍:075(商業(yè)級)/ -40+85(工業(yè)級)。而當(dāng)I/O口不夠時,可用2或3根普通的I/O口線進(jìn)行外接74HC164/165/595(均可級聯(lián))來擴(kuò)展I/O口,同時還可利用A/D做按鍵掃描來節(jié)省I/O口,或用雙CPU,三線通信,并多了串口。3.1.2 STC89C52各引腳功能STC89C52為40腳雙列直插封裝的8位通用微處理器,管腳如圖3-1所示。圖3-1 STC89C52引腳圖ST

30、C89C52的引腳功能說明如下:VCC(第40引腳):接電源如圖3-2。VSS(第20引腳):接地端如圖3-2。 圖3-2 VSS20引腳及VCC40引腳圖P0口(P0.0P0.7):P0口是一個8位雙向I/O接口。當(dāng)其用作輸出端口時,每一個引腳都能驅(qū)動8個TTL負(fù)載。若對端口P0寫入1,則可以作為高阻抗輸入。連接外部存儲器或擴(kuò)充外設(shè)時,P0口也作為低8位地址線和8位數(shù)據(jù)線。此時,P0口的內(nèi)部上拉電阻有效。Flash ROM編程時,P0口接收指令;校驗(yàn)程序時,P0口輸出指令。在驗(yàn)證時,要在外面接上拉電阻。P1口(P1.0P1.7):P1口是一個帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O接口。P1口的輸

31、出緩沖器其可以驅(qū)動起4個TTL輸入。若向端口輸入1,則可以通過其內(nèi)部的上拉電阻將端口拉至高電位,并將其作為輸入口使用。在P1口作為輸入口使用時,由于其存在內(nèi)部的上拉電阻,當(dāng)被外部拉低的引腳均會輸出一個電流。P2口(P2.0P2.7):P2口是一個8位的準(zhǔn)雙向I/O接口。P2口的輸出緩沖器可驅(qū)動起4個TTL輸入。當(dāng)對端口輸入1時,則可通過內(nèi)部上拉電阻將其端口拉至高電位,將其作為輸入口使用時。在P1口用作輸入口使用時,由于其存在內(nèi)部上拉電阻,則將被外部拉低的引腳均會輸出一個電流。連接外部存儲器或擴(kuò)充外設(shè)時,作為高8位地址線,在編程和校驗(yàn)時接受高位地址和控制信號。P3端口(P3.0P3.7):P3是

32、一個帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O接口。P3口的輸出緩沖器可以驅(qū)動4個TTL輸入。若對端口寫入1,則可以通過內(nèi)部的上拉電阻將端口拉到高電位,將其用作輸入口使用。在P1口作為輸入口使用時,由于存在內(nèi)部上拉電阻,被外部拉低的那些引腳都會輸出一個電流。P3口除作為一般I/O口外,還有其他一些復(fù)用功能,如表3-3所示。表3-3 P3口引腳復(fù)用功能端口引腳第二功能P3.0RXD(串行口輸入)P3.1TXD(串行口輸出)P3.2INT0(外部中斷0輸入)P3.3INT1(外部中斷1輸入)P3.4T0(定時/計(jì)數(shù)器0外部輸入)P3.5T1(定時/計(jì)數(shù)器1外部輸入)P3.6WR(外部數(shù)據(jù)存儲器寫信號)P3

33、.7RD(外部數(shù)據(jù)存儲器讀信號)RST(9引腳):復(fù)位及提供后備電源。當(dāng)輸入連續(xù)兩個機(jī)器周期以上高電平時為有效,用來完成單片機(jī)的復(fù)位初始化操作。完成看門狗計(jì)時后,RST引腳輸出高電平。特殊寄存器AUXR上的DISRTO位可以禁用此功能。在DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平才有效。ALE(30引腳):ALE地址輸出鎖存信號,訪問外部存儲器時作為地址鎖存信號,EPROM編程時輸入編程脈沖。在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。如果需要,對地址位8EH的SFR的第0位置1,ALE操作將會無效。若這一位置1,ALE在執(zhí)行MOV或MOVX指令時有效。不然,

34、ALE將會被微弱拉高。EA(31引腳):外部/內(nèi)部程序存儲器選擇信號。EA為高電平時,表示選擇內(nèi)部程序存儲器。注意加密方式1時,將內(nèi)部鎖定位RESET。EA為低電平時,表示選擇外部程序存儲器。對于內(nèi)部沒有程序存儲器的單片機(jī),EA必須接地。XTAL1(19引腳):外接晶體振蕩器或外部時鐘。XTAL2(18引腳):外接晶體振蕩器或外部時鐘13。單片機(jī)中的主晶振如圖3-4所示。 圖3-4 單片機(jī)主晶振引腳圖3.2 實(shí)時時鐘模塊設(shè)計(jì)“模擬智能灌溉系統(tǒng)”通過讀取 DS1302 時鐘芯片相關(guān)寄存器獲得時間,DS1302芯片時、分寄存器在程序中設(shè)定為系統(tǒng)進(jìn)行初始化設(shè)定。3.2.1 DS1302基本功能DS1

35、302可以分別對年、月、周、日、時、分進(jìn)行計(jì)時,且具有閏年補(bǔ)償?shù)榷喾N功能。引腳圖如圖3-5所示。圖3-5 DS1303引腳DS1302引腳的排列,其中VCC1作為后備的電源,VCC2作為主電源。當(dāng)主電源關(guān)閉時,并能保持時鐘連續(xù)的運(yùn)行。DS1302由VCC1或VCC2其兩者中的較大者進(jìn)行供電。當(dāng)VCC2大于VCC1+0.2V時,VCC2向DS1302進(jìn)行供電。當(dāng)VCC2小于VCC1時,DS1302則由VCC1供電。X1和X2均是振蕩源,外接的32.768kHz晶振。RST是片選線/復(fù)位,通過RST的輸入驅(qū)動置高電平進(jìn)而啟動所有的數(shù)據(jù)進(jìn)行傳送。RST輸入具有兩種功能:一方面,當(dāng)RST接通控制邏輯是

36、,允許命令/地址序列輸入移位寄存器。另一方面,RST將提供終止多字節(jié)或單字節(jié)數(shù)據(jù)傳送方法。當(dāng)RST為高電平時,全部的數(shù)據(jù)傳送都會被初始化,并允許對DS1302進(jìn)行相應(yīng)操作。如果在傳送的過程中RST置為低電平,則將會終止此次的數(shù)據(jù)傳送,I/O引腳則變?yōu)楦咦钁B(tài)。擋上電運(yùn)行時,并在Vcc>2.0V之前,RST則必須保持低電平狀態(tài)。唯有在SCLK為低電平時,方能將RST置為高電平狀態(tài)。I/O可為串行數(shù)據(jù)輸入輸出端(雙向)。SCLK則為時鐘輸入端??刂谱止?jié)的最高有效位(位7)必須為邏輯1,若它為0,則不能將數(shù)據(jù)輸入DS1302中,位6如果為0則表示為存取日歷時鐘數(shù)據(jù),為1則表示為存取RAM數(shù)據(jù);位

37、5到位1的指示操作單元的地址;最低有效位(位0)若為0則表示應(yīng)進(jìn)行寫操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始進(jìn)行輸出14。3.3 按鍵模塊設(shè)計(jì)鍵盤的基本工作原理就是實(shí)時監(jiān)視按鍵,將按鍵信息送入計(jì)算機(jī)。在鍵盤的內(nèi)部設(shè)計(jì)中有定位按鍵位置的鍵位掃描電路、產(chǎn)生被按下鍵代碼的編碼電路以及將產(chǎn)生代碼送入計(jì)算機(jī)的接口電路等等,這些電路被統(tǒng)稱為鍵盤控制電路如圖3-6所示。在本次設(shè)計(jì)中只需運(yùn)用四個按鍵,故選用獨(dú)立按鍵。圖3-6 按鍵控制電路圖3.4 LCD顯示模塊設(shè)計(jì)本次設(shè)計(jì)顯示模塊采用1602液晶屏,對它的操作主要是將一些固定的字符寫入1602的寄存器中,當(dāng)需要顯示時調(diào)用即可,以達(dá)到在液晶上顯示的效

38、果。單片機(jī)P1口與LCD1602的D0-D7相接,P3.4、P3.5、P3.6分別與LCD1602的RS、RW、E。其中3腳為VL,液晶顯示為偏壓信號,用于調(diào)整LCD1602進(jìn)行顯示對比度,通常情況下會外接電位器用來調(diào)整偏壓信號,同時注意此腳電壓為0時可得到最強(qiáng)的對比度。其4腳為RS,命令/數(shù)據(jù)選擇端,而當(dāng)此腳為高電平時,可對1602進(jìn)行數(shù)據(jù)字節(jié)的傳輸操作,而為低電平時,則將進(jìn)行命令字節(jié)的傳輸操作。命令字節(jié),便是用來對LCD1602的一些工作方式作設(shè)置的字節(jié);數(shù)據(jù)字節(jié),即是使用以在1602上顯示的字節(jié)。其中值得一說的是,LCD1602的數(shù)據(jù)是8位的。5腳:R/W,讀寫選擇端。當(dāng)此腳為高電平時可

39、對LCD1602進(jìn)行讀數(shù)據(jù)操作,反之將進(jìn)行寫數(shù)據(jù)操作。我認(rèn)為,此腳實(shí)際用處不大,直接接地永久置為低電平也并不會影響其正常運(yùn)行工作。但是尚未經(jīng)過復(fù)雜系統(tǒng)驗(yàn)證,保留此意見。6腳其實(shí)是LCD1602的數(shù)據(jù)控制時鐘信號,利用該信號的上升進(jìn)而實(shí)現(xiàn)對LCD1602的數(shù)據(jù)傳輸。顯示電路如圖3-7所示。其中顯示的為土壤濕度是否到達(dá)標(biāo)準(zhǔn)值以及現(xiàn)在電機(jī)工作狀態(tài)。圖3-7 LCD顯示電路圖3.5 自動灌溉模塊設(shè)計(jì)繼電器是電子控制的器件,通常應(yīng)用在自動控制的電路中。其具有控制系統(tǒng)(又稱為輸入回路)與被控制系統(tǒng)(又稱為輸出回路),實(shí)際上是利用較小的電流進(jìn)而去控制較大電流的“自動開關(guān)”。故在電路中起著自動調(diào)節(jié)、轉(zhuǎn)換電路、

40、安全保護(hù)等作用。電磁式繼電器具有結(jié)構(gòu)簡單、工作可靠、堅(jiān)固耐用、成本低廉等優(yōu)點(diǎn)。本電路采用常開繼電器組成控制電路。繼電器控制灌溉設(shè)備,當(dāng)濕度值低于設(shè)定的下限值時,和單片機(jī)相連的引腳將送入低電平,三極管導(dǎo)通,繼電器通電吸合,啟動灌溉設(shè)備,濕度上升,當(dāng)上升到設(shè)定范圍內(nèi)時,置其引腳為高電平,三極管將截止,繼電器停止工作,處于常開狀態(tài),灌溉設(shè)備停止工作。通過STC89C52給出處理信號??刂破魍ㄟ^繼電器來控制電磁閥的通斷電,進(jìn)而控制水泵的灌溉動作。繼電器輸出由單片機(jī)P2.7引腳控制。繼電器模塊引腳圖如圖3-8所示。圖3-8 繼電器模塊電路圖3.6 土壤濕度測量模塊設(shè)計(jì)本設(shè)計(jì)中土壤濕度檢測器是電阻式土壤濕

41、度檢測器,土壤的電阻值與其濕度有關(guān),通過土壤溶液的導(dǎo)電性和土壤水分含量的關(guān)系測定土壤濕度。通過測試土壤的電阻值來觀察電壓的示數(shù)。土壤越干燥,土壤的電阻值越大,電壓示數(shù)越小。反之亦然。濕度的采集可以用濕度傳感器來實(shí)現(xiàn)。將濕度傳感器看作可調(diào)變阻器,當(dāng)濕度傳感器采集到濕度時,電阻值發(fā)生變化,濕度最小時的電阻值為10K,濕度最大時為0.1。變化的幅度是根據(jù)濕度傳感器采集到的濕度大小而定。隨著電阻值的變化,電路的輸出電壓也跟著變化。調(diào)節(jié)電阻值的大小,可得到想要的電壓,滿足電路的需求。此次設(shè)計(jì)采用的是土壤濕度傳感器DHT11。土壤濕度測量傳感器包括一個電阻式感濕度元件,并與一個高性能8位單片機(jī)相連接。供電

42、電壓為35.5V。傳感器上電后,要等待1s以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(VDD,GND)之間可增加一個100nF的電容,用以去耦濾波。當(dāng)總線空閑狀態(tài)為高電平時,主機(jī)將把總線拉低并等待DHT11的響應(yīng),主機(jī)將總線拉低的時間必須大于18毫秒,以便保證DHT11能檢測到起始的信號。當(dāng)DHT11接收到主機(jī)的開始信號后,開始等待主機(jī)開始信號的結(jié)束,進(jìn)而發(fā)送80us低電平響應(yīng)信號。主機(jī)發(fā)送開始信號結(jié)束后,并等待20-40us后, 讀取DHT11的響應(yīng)信號,主機(jī)在發(fā)送開始信號后,可以切換至輸入模式,或輸出高電平均可, 總線由上拉電阻拉高。當(dāng)總線為低電平時,則說明DHT11已經(jīng)發(fā)送響應(yīng)信

43、號,DHT11發(fā)送響應(yīng)信號后,再將總線拉高80us,準(zhǔn)備發(fā)送數(shù)據(jù),每一bit的數(shù)據(jù)都以50us低電平時隙開始,高電平的長短決定了數(shù)據(jù)位是0還是1。如果讀取響應(yīng)信號為高電平,則DHT11沒有響應(yīng),請檢查線路是否連接正常。當(dāng)最后的bit數(shù)據(jù)傳送完成后,DHT11拉低總線50us,隨后總線由上拉電阻拉高并進(jìn)入空閑狀態(tài)。土壤濕度測量傳感器引腳圖如圖3-9所示。圖3-9 土壤濕度測量傳感器單總線引腳圖3.7 本章小結(jié)為使該模塊化控制系統(tǒng)的設(shè)計(jì)具有更加方便的操作性和靈活性,我們對系統(tǒng)的硬件做了精心設(shè)計(jì)。硬件設(shè)計(jì)包括單片機(jī)控制電路、LCD顯示電路、土壤濕度傳感器測量電路、按鍵控制電路、報警系統(tǒng)電路、串口下載

44、程序電路、繼電器電路。第4章 系統(tǒng)軟件設(shè)計(jì)系統(tǒng)的軟件部分是系統(tǒng)運(yùn)行的核心,包括濕度數(shù)據(jù)采集部分、單片機(jī)數(shù)據(jù)接收A/D轉(zhuǎn)換部分、接收結(jié)果的LCD顯示部分、報警電路的設(shè)計(jì)部分、外部按鍵控制部分及軟件校驗(yàn)。程序用C語言編寫,采用模塊化程序設(shè)計(jì),可讀性強(qiáng)15。對于本系統(tǒng)而言,要完成各個模塊的功能。首先必須要保證有較完善的硬件。與此同時還必須要有合理設(shè)計(jì)的軟件的支持,特別是在當(dāng)今單片機(jī)應(yīng)用飛速發(fā)展的時代。有很多用硬件完成的工作,都能通過軟件編程來代替,有些工作得用很復(fù)雜的硬件電路才能完成,用軟件編程時就會變得比較簡單,比如數(shù)字濾波,信號處理等。在進(jìn)行系統(tǒng)軟件設(shè)計(jì)時,必須要對設(shè)計(jì)的硬件有一個熟練的掌握,知

45、道系統(tǒng)的各個模塊的工作原理。在進(jìn)行軟件設(shè)計(jì)時,首先得清楚各個部分的子程序及他們的流程圖,然后進(jìn)行C語言編程,最后對它們進(jìn)行系統(tǒng)的編程。此次設(shè)計(jì)時以STC89C52單片機(jī)為核心,采用C語言編程。用模塊化設(shè)計(jì),由主程序、濕度子程序、液晶顯示子程序,以及有關(guān)的ADS1286的程序等模塊組成。該系統(tǒng)設(shè)計(jì)的工作流程為:開始初始化后,輸入要設(shè)定的濕度的上下限值;傳感器讀取濕度值后,線性擬合數(shù)據(jù),然后LCD顯示數(shù)據(jù),如果濕度數(shù)值過限,報警并啟動控制設(shè)備;如果數(shù)據(jù)正好在限值范圍內(nèi),則顯示濕度值。4.1 主程序的設(shè)計(jì)在整個系統(tǒng)中,軟件的設(shè)計(jì)采用模塊化編程,主要的功能子程序有:系統(tǒng)初始化,濕度傳感器的初始化,LC

46、D5110的初始化。系統(tǒng)主程序首先對系統(tǒng)進(jìn)行初始化,包括閾值、單片機(jī)及液晶、濕度數(shù)據(jù)采集模塊的初始化。該系統(tǒng)的工作流程為系統(tǒng)初始化后設(shè)定濕度上限值,由土壤濕度檢測器讀取數(shù)值,經(jīng)顯示器顯示數(shù)據(jù),然后由單片機(jī)判斷濕度值是否過限,如果沒有過限則顯示濕度值;如果過限則電路報警,并啟動灌溉設(shè)備,啟動后繼續(xù)讀取數(shù)據(jù),直到數(shù)據(jù)沒有過限。系統(tǒng)的軟件設(shè)計(jì)采用結(jié)構(gòu)化程序設(shè)計(jì)方法,自頂向下,逐步求精,主程序設(shè)計(jì)流程圖如下。 掃描按鍵是否有動作LCD液晶顯示數(shù)據(jù)是否在閾值范圍內(nèi) 開始 初始化 數(shù)據(jù)采集 A/D轉(zhuǎn)換YY 灌溉YN是否小于tl報警信號、處理N結(jié)束 N 圖4-1 主程序流程圖4.2 LCD顯示電路程序的設(shè)計(jì)

47、4.2.1 LCD的四種基本操作LCD液晶顯示器的工作流程為:液晶顯示屏初始化后,將測得的數(shù)據(jù)傳送給液晶顯示屏,對輸入信號進(jìn)行檢查,然后寫命令函數(shù)和讀取數(shù)據(jù)函數(shù)并顯示,之后延遲進(jìn)行下一輪顯示。LCD有四種基本操作,具體如表所示。表4-1 LCD與單片機(jī)之間有四種基本操作RS R/W 操作0001寫命令操作(初始化,光標(biāo)定位等)讀狀態(tài)操作(讀忙標(biāo)志位)寫數(shù)據(jù)操作(要顯示內(nèi)容)讀數(shù)據(jù)操作(可以把顯示存儲區(qū)中的數(shù)據(jù)反讀出來) 2 1 1 0(1)讀狀態(tài)操作執(zhí)行讀狀態(tài)操作時,應(yīng)滿足RS=0、R/W=1。如圖4-2所示為讀入狀態(tài)字流程圖。 結(jié)束RW清0,等待E清0,等待讀入狀態(tài)字E置1,等待RS清0,等

48、待RW置1,等待開始圖4-2 LCD讀入狀態(tài)字流程圖(2)寫命令操作可采用查詢方式:先讀入狀態(tài)字,再判斷忙標(biāo)志。寫命令字流程圖如圖4-3所示。E=0命令字AP0E=1RS=0R/W=0延時AC.7=0?讀入命令字A寫命令字開始結(jié)束RS=0圖4-3 寫命令流程圖(3)定義光標(biāo)位置 把顯示數(shù)據(jù)要某個位置,就是把顯示數(shù)據(jù)寫在相應(yīng)的DDRAM地址中,DDRAM地址占7位。Set DDRAM address 命令如表4-4所示。光標(biāo)定位,寫入一個顯示字符后,DDRAM地址會自動加1或減1,加或減由輸入方式設(shè)置。第一行DDRAM地址與第二行DDRAM地址并不連續(xù)。如表4-5所示。表4-4 Set DDRA

49、M address 命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB0001AC6AC5AC4AC3AC2AC1AC0表4-5 DDRAM地址row12345141516Line180H81H82H83H84H8dH8eH8fHLine20c0H0c1H0c2H0c3H0c4H0cdH0ceH0cfH(4)LCD初始化對于LCD的背光來說,一般做法是通過升壓芯片來提供對電壓的支持而這些升壓芯片都會有PWM輸滲透PIN,通過PWM來調(diào)節(jié)背光的明暗度 不過有時候我們會發(fā)現(xiàn)背光調(diào)節(jié)幅度陡然增大縮小,或是背光不足夠亮(相對于作為GPIO PIN輸出HIGH來說),但是通過萬用表測量PWM輸

50、入,電壓降的幅度都是處于正常情況下,這時候我們不妨調(diào)低PWM的輸出頻率因?yàn)橛泻芏嗌龎盒酒瑢WM的頻率都會有要求,將頻率調(diào)至datasheet中標(biāo)示的范圍,一般都能解決此問題從通電開始通過延時。LCD的調(diào)試中,延時特別重要,一定要確定延長的時間足夠,特別是更改電壓寄存器后面的延時記得有一次屏幕出現(xiàn)抖動的現(xiàn)象,一直查不出原因,廠家從日本派了2次來人led lcd 哪個好,都沒解決;最后,把所有的時序測試出來,發(fā)現(xiàn)延時不足,影響延時的一個函數(shù)傳遞參數(shù)錯了。在代碼中變更采樣的時序(比如上升沿采樣改為下降沿采樣)如果無法在代碼中更改,也可以在clk信號線加個100R電阻,也可能解決該問題先經(jīng)過判斷后再

51、進(jìn)行功能設(shè)置,過一段時間后可以設(shè)置顯示狀態(tài)(如設(shè)置行、位或陣列)再經(jīng)過清屏后可以設(shè)置輸入方式。4.2.2 LCD顯示程序設(shè)計(jì)LCD顯示程序的設(shè)計(jì)一般先要確定LCD的初始化、光標(biāo)定位、確定顯示字符后,液晶顯示屏初始化后,將測得的數(shù)據(jù)傳送給液晶顯示屏,對輸入信號進(jìn)行檢查,然后寫命令函數(shù)和讀取數(shù)據(jù)函數(shù)并顯示,之后延遲進(jìn)行下一輪顯示。LCD就可以按如圖4-6顯示。結(jié)束顯示字符光標(biāo)定位LCD初始化開始圖4-6 LCD顯示程序流程圖4.3 濕度傳感器流程圖設(shè)計(jì)本系統(tǒng)是一個基于單片機(jī)AT89S52的數(shù)字濕度計(jì)的設(shè)計(jì),用來測量土壤濕度。整個設(shè)計(jì)系統(tǒng)分為4部分:單片機(jī)控制、濕度傳感器、數(shù)碼顯示以及鍵盤控制電路。

52、整個設(shè)計(jì)是以AT89S52為核心,通過濕度傳感器DHT11來實(shí)現(xiàn)土壤濕度的采集和A/D轉(zhuǎn)換,同時因其輸出為數(shù)字形式,且為串行輸出,這就方便了單片機(jī)進(jìn)行數(shù)據(jù)處理,但同時也對編程提出了更高的要求。單片機(jī)把采集到的濕度進(jìn)行相應(yīng)的轉(zhuǎn)換后,使之能夠方便地在顯示器輸出。濕度采集的流程圖中,單片機(jī)通過P2.2口向DS18B20發(fā)出復(fù)位脈沖,完成對此系統(tǒng)初始化,濕度傳感器準(zhǔn)備接收命令。單片機(jī)發(fā)skipROM命令,濕度傳感器接收命令,使其能夠在響應(yīng)之后系統(tǒng)發(fā)出命令。單片機(jī)發(fā)送濕度轉(zhuǎn)換命令,濕度傳感器進(jìn)行濕度轉(zhuǎn)換,將轉(zhuǎn)換后的濕度值發(fā)送到單片機(jī),由單片機(jī)讀取濕度值,最后對所采集的數(shù)據(jù)進(jìn)行處理。圖4-7為DHT11濕

53、度測量流程圖。開始結(jié)束初始化發(fā)skipROM命令數(shù)據(jù)處理讀取濕度值發(fā)讀取濕度命令發(fā)skipROM命令發(fā)溫度轉(zhuǎn)換命令圖4-7 濕度測量流程圖4.4 輸出控制子程序流程圖設(shè)計(jì)輸出控制的工作流程為:開始檢測濕度值是否超出設(shè)定值的上限,如果沒有超出則返回主程序,若超出設(shè)定值上限,蜂鳴器報警,啟動灌溉設(shè)備,繼續(xù)檢測濕度值是否回到限定值內(nèi),超出限定值繼續(xù)灌溉,如果濕度值在限定值范圍內(nèi),則停止報警,檢測濕度是否留有足夠的裕量,如果濕度合適則停止灌溉,反之則繼續(xù)灌溉直到濕度合適??刂谱映绦蛉鐖D4-8所示。返回主程序停止?jié)穸瓤刂圃O(shè)備停止報警啟動灌溉設(shè)備蜂鳴器報警達(dá)到標(biāo)準(zhǔn)值?濕度有無裕量?回到限定值?開始結(jié)束圖4

54、-8 控制子程序流程圖4.5 本章小結(jié)在整個系統(tǒng)中,軟件的設(shè)計(jì)采用模塊化編程,主要的功能子程序有:系統(tǒng)初始化,濕度傳感器的初始化,LCD5110的初始化。該系統(tǒng)的工作流程為系統(tǒng)初始化后設(shè)定濕度上限值,由土壤濕度檢測器讀取數(shù)值,經(jīng)顯示器顯示數(shù)據(jù),然后由單片機(jī)判斷濕度值是否過限,如果沒有過限則顯示濕度值;如果過限則電路報警,并啟動灌溉設(shè)備,啟動后繼續(xù)讀取數(shù)據(jù),直到數(shù)據(jù)沒有過限。第5章 系統(tǒng)調(diào)試5.1 硬件調(diào)試硬件調(diào)試主要包括兩步:第一步:系統(tǒng)上電之前,應(yīng)先仔細(xì)檢查整體線路是否連接正確,并核對各個元器件的型號、規(guī)格以及安裝是否均符合要求,特別應(yīng)注意電源系統(tǒng)的相關(guān)檢查,以防止電源的短路以及極性錯誤,并

55、重點(diǎn)檢查系統(tǒng)總線是否存在短路或與其它信號線之間短路。第二步:第一步的調(diào)試,只是對系統(tǒng)進(jìn)行初步調(diào)試,可以排除一些明顯的故障,而硬件故障(如各個部件內(nèi)部存在的故障和部件之間連接的邏輯錯誤)主要是靠軟件和硬件聯(lián)調(diào)來排除。硬件調(diào)試和軟件調(diào)試是不能完全分開的,許多硬件錯誤是在軟件調(diào)試中發(fā)現(xiàn)和被糾正的。5.1.1 液晶調(diào)試首先調(diào)試LCD1602顯示光照效果,如圖5-1。圖5-1 光照效果圖按照Q52開發(fā)板要求,將LCD1602連接到Q52開發(fā)板,保證Q52開發(fā)板可以正常使用。如圖5-2。圖5-2 效果圖當(dāng)連接好后,LCD1602將顯示濕度光照度顯示效果。如圖5-3。圖5-3 濕度光照顯示效果圖5.1.2 土壤濕度傳感器調(diào)試方板另外一端有4條插針,看板上印字標(biāo)示,分別是VCC、GND、DO、AO;分別接到Q52開發(fā)板5V、GND、P36,AO懸空。5V、GND位置在板上POWER5 2*3的插針,在左下角;P36為單片機(jī)左邊1*20插針從下向上數(shù)第五個。AO不需要連

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論