




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于51系列單片機的自動噴水系統項目摘要摘要本系統由主要由四大部分組成:數據輸入部分,數據顯示部分,數據輸出部分,數據處理部分。數據輸入部分的功能是把要采集的數據轉化成數字信號傳入數據處理部分。數據顯示部分的功能是把采集的數據顯示出來。數據輸出部分的功能是控制電磁閥來進行外部溫濕度的調節。數據處理部分的功能是把采集進來的數據進行分析,輸出要輸出的信號控制數據的輸出。本系統的功能是采集溫濕度并顯示,從而控制電磁閥的輸出,進而控制外面的溫濕度使得外面的溫濕度適合植物的生長。關鍵詞:單片機,自動灌溉,溫濕度,LEDEnglishAbstractABSTRACTThissystemmainlycons
2、istsoffourparts:datainput,datadisplay,dataoutput,dataprocessing.Thedatainputportionofthefunctionistocollectdataintodigitalsignalintothedataprocessingsection.Datadisplayfunctionistocollectdatadisplay.Dataoutputportionofthefunctionistocontroltheelectromagneticvalvetoexternaltemperatureandhumidityregul
3、ator.Thedataprocessingpartofthefunctionistocollectinthedataanalysis,theoutputtooutputsignalstocontroltheoutputofthedata.Thefunctionofthissystemisthecollectionoftemperatureandhumidityanddisplay,soastocontroltheelectromagneticvalvetocontroltheoutput,theoutsidetemperatureandhumiditymakestheoutsidetempe
4、ratureandhumiditysuitableforthegrowthofplants.KEYWORDS:Microcontroller,Automaticirrigation,Temperatureandhumidity項目實現構思自動噴水系統的設計和功能介紹自動化控制噴水系統(灌溉)是利用溫濕傳感器來監測土壤信息、作物生長信息,并將監測數據傳到控制系統,在CPU的分析下,對終端設備發出相應的指令,以實現無人自動維護作物生長環境以及土壤性質的功能。我們的自動噴水系統的工作原理和功能實現如下:通過土壤、氣象、作物等類傳感器及監測設備將土壤、作物、氣象狀況等監測數據通過數據總線傳到單片機,經
5、過單片機系統內已編好的程序來匯集數值并進行分析處理來確定是否應該灌溉或停止灌水,然后將開啟或關閉閥門的信號通過單片機傳輸到灌水模塊,由閥門控制系統實施閥門的開關,從而實現農作物灌水的自動化控制。在系統的設計過程中,我們分為以下幾個子系統:控制子系統,其中主要包括了電磁閥等相關電路,用來控制水的灌溉;數據采集子系統,其中包括AM2301等相關電路;分析子系統,其中包括AT89S52單片機等相關電路;顯示子系統,其中包括LED數碼管顯示等相關電路;報警子系統,其中包括蜂鳴器等相關電路;操作子系統,其中包括按鈕等相關電路。挖色創新部分1 .本次系統設計中我們加入了報警電路模塊,當溫度達到我們的設定值
6、時,蜂鳴器便會開始報警,而當溫度降到設定值以下時,蜂鳴器將會停止報警。2 .在考慮溫濕度傳感器的選擇時,我們決定使用同時集成了溫濕度采集及數字輸出的AM2301,相比溫度傳感器DS18B20和濕度傳感器AM1001,它更加方便使用,而且采集輸出精度更高。3 .在設定溫濕度的值時,我們采用4個按鍵來控制,其中S1和S2鍵用作減和加,用來定時和設定溫濕度的初始值,S2鍵進行倒計時和時間設定的切換,S4鍵用來切換定時噴水、根據溫度噴水、根據濕度噴水這三種指定模式。能夠自由設定溫濕度和定時時間,顯得更為人性化,更加具有實用功能。4 .保護電路,使用繼電器,通過弱電控制強電,減少了電磁閥對控制系統的干擾
7、。定程度上保護了主要電路,延長了使用壽命。項目實現方案:方案的比較1 .單片機的選擇單片機具有體積小,價格低廉,功能強大,穩定可靠,運算速度快,功耗低,擴展容易,抗干擾能力強,系列齊全,使用方便靈活等優點,廣泛應用于工業過程控制、自動監測、智能儀器儀表、家用電器等領域。常用開發單片機有AT89S51和AT89S52,二者各有優缺點。方案一:使用AT89S51控制系統。AT89S5建一個低功耗,高性能CMOS位單片機,片內含4kBytesISP(In-systemprogrammable)的可反復擦寫100畋的Flash只讀程序存儲器,器件采用ATME公司的高密度、非易失性存儲技術制造,兼容標準
8、MCS-5指令系統及80C5你腳結構,芯片內集成了通用8位中央處理器和ISPFlash存儲單元,功能強大的微型計算機的AT89S5何為許多嵌入式控制應用系統提供高性價比的解決方案。方案二:使用AT89S5桂制系統。相比51,功能基本相同,它的價格雖然略高一點,但是性能更好一點。總結:綜合考慮,采用方案二,本次設計選用市場上比較普遍的單片機AT89S5來實現系統設計,其內部帶有8KB勺程序存儲器,256字節的數據存儲器,足以滿足系統要求。并且他們的引腳相同,而52單片機能發揮出更大的能效,且由于我們正在學習單片機,手上正好有52單片機,我們對它也比較熟悉,所以就決定采用52單片機來實現。2 .傳
9、感器的選擇對于傳感器的選擇,我們有兩種方案,一種是溫度采集使用DS18B20,而濕度采用AM1001,另一種則是采用已將溫濕度采集集成在同一片傳感器上,且以校準數字信號輸出的復合傳感器AM23010綜合二者,我們選用AM2301(又名DHT21)溫濕度傳感器,選用它有以下幾個理由:(1)考慮DS18B20采集比較麻煩,因此我們決定直接使用AM2301這塊集成溫濕度并且數字輸出的傳感器。(2)超小的體積、極低的功耗,信號傳輸距離可達20米以上,使其成為溫濕度測量的最佳選擇。(3)因為AM2301,有已經編譯好的驅動程序,只需編寫將感應到的數據傳送到單片機,再發送到用口顯示,省去了編程的麻煩,且只
10、需要一個單片機I/O口來傳送數據,節省了硬件資源。3 .顯示器的選擇顯示器可采用LED數碼管和LCD顯示屏,將二者進行比較,LED結構簡單,它實際上是由七個發光二極管組成8字形構成的,加上小數點就是8個。這些段分別由字母a,b,c,d,e,f,g,dp來表示。當數碼管特定的段加上電壓后,這些特定的段就會發亮,以形成我們眼睛看到的2個8數碼管字樣了。它的原理簡單,容易理解和操作,對于一些簡單的顯示系統是非常理想的器件。LCD雖然功能強大,但是操作復雜,并且LED在本系統中就足以發揮作用,加上成本低廉,所以在本次設計中選用LED顯示數據。系統架構圖在控制系統方面,通過我們學過的自動控制原理的知識,
11、我們確定本系統采用有單片機的傳統的閉環控制系統,系統控制原理圖如下圖所示:閉環控制邏輯原理框圖其中,植被溫濕度是由AM2301傳感器組成的數據采集子系統,數據顯示是由6片LED數碼管構成的顯示子系統,AT89S52處理數據是由52單片機構成的主控制子系統,其中還包括了定時以及對電磁閥的控制,電磁閥開關則是實現噴水動作功能的子性統。k計與論證卜自動噴水系統共分為七個模塊:主控制模塊、電磁閥控制模塊、報警模塊、顯示模k定時模塊、溫度采集模塊、抗干擾模塊1 .主輸入輸出控制電路。自動控制系統通過AM2301傳感器對受控對象的有關參數信息數據的實時采集及數字變化,進入單片機CPU進行必要的處理,而后輸
12、出以驅動執行器件或機構產生相應的動作,直接推動被控對象來調整被測參量,最終目的以使受控參量始終處于卜求值或范圍內。在單片機完成控制處理后總是以數字信號通過I/O口線或數據總線輸出至受控對象的。對受控設備的驅動常采用模擬量或數字量輸出驅動兩種方式。而在實際的單片機測控系統中,數字量輸出控制已越來越廣泛地被應用,尤其是其中的開關量輸出驅動和控制。目前單片機I/0口線的驅動能力和與CPU直接接口的一般TTL電路或CMOS電路的驅動能力很有限的,不足以驅動那些功率開關(如繼電器、電機、電磁開關等)和強電設備、大功率負載,且由于工作現場環境惡劣、輸出通道接近控制對象及周圍的電磁等干擾嚴重,所以輸出控制電
13、路設計主要是解決輸出隔離即干擾防治卜功率驅動問題。2 .電磁閥控制電路電磁閥控制電路主要由NPN共集-共射復合管及繼電器組成,當單片機P0.7給出高電平,復合管導通,繼電器接通,將開關吸合,電磁閥接通開始放水。因為單片機的帶負載能力比較小,不足以驅動繼電器和電磁閥,所以采用功率放大驅動電路,使得電底閥能夠工作。輸出通道控制圖如圖所示:電磁閥控制電路3 .報警電路設計報警電路設計作為一個獨立的模塊,采用市面上比較普遍的蜂鳴器電路,結構比較簡單,使用AT89S52上的一根口線驅動蜂鳴器發聲。蜂鳴器電路4 .顯示模塊電路顯示模塊可采用兩種方式,一種是采用動態顯示方式驅動6個數碼管工作,左邊四位顯示溫
14、濕度值,精確到小數點后一位,右邊兩位為溫濕度的單位顯示。其中通過S4鍵切換溫濕度,數碼管通過位段掃描實現顯示功能。5 .定時模塊定時模塊其中分為定時部分和調時部分,同樣通過S1和S冽來控制時間的減和加,S31來確定定時和切換設置時間。溫濕度程序代碼與定時類似,下面僅列出定時程序代碼。定時程序代碼:voidtime_display(inta,intb,intc)/調試部分、P2J位選,P0為段選,顯示格式為時-分-秒uchars,g;s=a/10;g=a%10;clk=0;P2=wei5;P0=duans;clk=1;delay2(1);clk=0;P2=0;clk=1;delay2(1);cl
15、k=0;P2=wei4;P0=duang0x80;clk=1;delay2(1);clk=0;P2=0;clk=1;delay2(1);10s=b/10;g=b%10;clk=0;P2=wei3;P0=duans;clk=1;delay2(1);clk=0;P2=0;clk=1;delay2(1);clk=0;P2=wei2;P0=duang0x80;clk=1;delay2(1);clk=0;P2=0;clk=1;delay2(1);s=c/10;g=c%10;clk=0;P2=wei1;P0=duans;clk=1;delay2(1);clk=0;P2=0;11clk=1;delay2(1
16、);clk=0;P2=wei0;P0=duang;clk=1;delay2(1);clk=0;P2=0;clk=1;delay2(1);6 .溫濕度采集電路設計AM2301是一塊集成了溫濕度采集及數字輸出的傳感器,因此,我們只需要將AM2301的VCC端接5V電壓,將SDA端接52單片機I/O進行數據的輸入輸出,同時將GND端接地,便可實現溫濕度的采集。12VCCT5溫濕度采集電路設計7 .硬件的抗干擾設計在自動澆灌控制系統中,系統可靠性的保證是非常重要的,單片機硬件系統的可靠性決定了整個系統的可靠性。硬件抗干擾技術主要體現在過程通道抗干擾設計、供電系統抗干擾設計和印刷電路板抗干擾設計三個方面
17、。單片機硬件系統的抗干擾能力與元器件質量、裝配質量等因素都有關系,但主要取決于設計的可制造性(DEM),本系統采取如下相應的抗干擾措施。1 .采用抗干擾穩壓電源采用具有抗干擾能力的穩壓電源,絕大部分干擾都可以克服。提高穩壓電源抗干擾能力,通常采用的措施:采用電源濾波;通過低通濾波器接入電網。2 .采用良好的接地系統。3 .強電與弱電之間采用繼電器隔離。四.關鍵模塊的分析1 .地表溫濕度傳感器首先是對AM2301的介紹。AM2301濕敏電容數字溫濕度模塊是一款含有己校準13數字信號輸出的溫濕度復合傳感器。它應用專用的數字模塊采集技術和溫濕度傳感技術,確保產品具有極高的可靠性與卓越的長期穩定性。傳
18、感器包括一個電容式感濕元件和一個高精度測溫元件,并與一個高性能8位單片機相連接。因此該產品具有品質。越、超快響應、抗干擾能力強、性價比極高等優點。每個傳感器都在極為精確的濕度校驗室中進行校準。校準系數以程序的形式儲存在單片機中,傳感器內部在檢測信號的處理過程中要調用這些校準系數。標準單總線接口,使系統集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達20米以上,使其成為各類應用甚至最為苛刻的應用場合的最佳選擇。產品為3引線(單總線接口)連接方便。特殊封裝形卜可根據用戶需求而提供。|VDPSOA仁£|川匚AM2301引腳圖及其分配弓胭1顏P色名稱描述1紅色VDD電源(3.5-5
19、.5v)2黃色SDA串行數據,雙向3里八、色GND地144NC空腳AM2301弓I腳分配AM2301的數據總線SDA輸出40位數據后,繼續輸出低電平50微秒后轉為輸入狀態,由于上拉電阻隨之變為高電平。同時AM2301內部重測環境溫濕數據,并記錄數據,測試記錄結束,單片機自動進入休眠狀態。單片機只有收到主機的起始信號后,才重新喚醒傳感器,進入工作狀態。AM2301傳感器讀L總線的流程圖如圖所示15傳感情上電初始化讀取設備發送起始信號AM2301傳感器讀單總線的流程圖溫濕度檢測程序代碼:#include<reg52.h>#include<intrins.h>/*define
20、dforunsigned8-bitsintegervariabletypedefunsignedcharU8;typedefunsignedintU16;無符號8位整型變量*/*definedforunsigned16-bitsintegervariable16無符號16位整型變量*/#defineucharunsignedchar#defineuintunsignedint/-/-IO口定義區/-/sbitbeep=P3A2;sbits0=P3A3;sbits1=P3A4;sbits2=P3A5;sbits3=P3A6;sbitHR=P3A7;sbitclk=P2A7;/-/-定義區/-/U
21、8U8FLAG,q,w,e;U8U8temp;U8U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;U8U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8datatab6,tabs6;U8U8comdata;U8outdata6;/定義發送的字節數U8count;U8str6;U16U16temp1,U16temp2;ucharshi,fen,miao,nam;17ucharcodewei=0x01,0x02,
22、0x04,0x08,0x10,0x20;/八位位選碼表ucharcodeduan=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/數碼管顯示編碼(1-F)voidSendData(U8*a)outdata0=a0;outdata1=a1;outdata2=a2;outdata3=a3;outdata4=a4;outdata5=a5;count=1;SBUF=outdata0;voiddelay1(U16t)U16i,j;for(i=t;i>0;i-)for(j=25;j>0;j-);voiddelay2(U8z)uinti,j;
23、for(i=z;i>0;i-)for(j=110;j>0;j-);voidDelay(U16j)U8i;for(;j>0;j-)for(i=0;i<27;i+);18voidDelay_10us(void)U8i;i-;i-;i-;i-;i-;i-;voidCOM(void)U8i;for(i=0;i<8;i+)U8FLAG=2;while(!HR)&&U8FLAG+);Delay_10us();Delay_10us();Delay_10us();U8temp=0;if(HR)U8temp=1;U8FLAG=2;while(HR)&&
24、;U8FLAG+);超時則跳出for循環if(U8FLAG=1)break;判斷數據位是0還是1/如果高電平高過預定0高電平值則數據位為1U8comdata<<=1;U8comdata|=U8temp;/0/rof19/-/-濕度讀取子程序/-/以下變量均為全局變量/-溫度高8位=U8T_data_H/-溫度低8位=U8T_data_L/-濕度高8位=U8RH_data_H-/-濕度低8位=U8RH_data_L-/-校驗8位=U8checkdata/-調用相關子程序如下/-Delay();,Delay_10us();,COM();/-voidRH(void)/主機拉低18msHR
25、=0;Delay(180);HR=1;總線由上拉電阻拉高主機延時20usDelay_10us();Delay_10us();Delay_10us();Delay_10us();主機設為輸入判斷從機響應信號HR=1;判斷從機是否有低電平響應信號如不響應則跳出,響應則向下運行if(!HR)/T!U8FLAG=2;判斷從機是否發出80us的低電平響應信號是否結束while(!HR)&&U8FLAG+);20U8FLAG=2;判斷從機是否發出80us的高電平,如發出則進入數據接收狀態while(HR)&&U8FLAG+);數據接收狀態COM();U8RH_data_H_
26、temp=U8comdata;COM();U8RH_data_L_temp=U8comdata;COM();U8T_data_H_temp=U8comdata;COM();U8T_data_L_temp=U8comdata;COM();U8checkdata_temp=U8comdata;HR=1;數據校驗U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);if(U8temp=U8checkdata_temp)U8RH_data_H=U8RH_data_H_temp;U8RH_data_L=U8R
27、H_data_L_temp;U16temp1=U8RH_data_H;U16temp1<<=8;U16temp1|=U8RH_data_L;/獲得完整的濕度tab0=U16temp1/100;濕度百位tab1=U16temp1%100/10;/濕度十位tab2=U16temp1%10;/濕度個位U8T_data_H=U8T_data_H_temp;U8TdataL=U8TdataLtemp;21U16temp2=U8T_data_H;U16temp2<<=8;U16temp2|=U8T_data_L;/獲得完整的溫度tab3=U16temp2/100;/溫度百位tab4
28、=U16temp2%100/10;/溫度十位tab5=U16temp2%10;/溫度個位U8checkdata=U8checkdata_temp;/校驗位2 .主控制器模塊系統中我們選擇主控制器芯片的時候需要考慮整個系統的功耗要低,并且有非易失性的程序和數據存儲器方便數據的掉電存儲,要集成內部基準電壓源并采用at89s51單片機。AT89S52是一個低功耗,高性能CMOS8位單片機,片內含8kBytesISP(In-systemprogrammable)的可反復擦寫100畋的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統及80C51
29、弓唧結構,芯片內集成了通用8位中央處理器和ISPFlash存儲單元,AT89S52在眾多嵌入式控制應用系統中得到廣泛應用。主機和傳感器之間可通過三個步驟完成數據讀取步驟一:AM2301上電后(AM2301上電后要等待2s以越過不穩定狀態,在此期間讀取設備不能發送任何指令),測試環境溫濕度數據,并記錄數據,此后傳感器自動轉入休眠狀態。AM2301的SDA數據線由上拉電阻拉高一直保持高電平,此時AM2301的SDA引腳處于輸入狀態,時刻檢測外部信號。步驟二:微處理器的I/O設置為輸出,同時輸出低電平,且低電平保持時間不能小于800us,典型值是拉低1MS,然后微處理器的I/O設置為輸入狀態,釋放總線,由于上拉電阻,微處理器的I/O即AM2301的SDA數據線也隨之變高,等主機釋放總線后,AM2301發送響應信號,即輸出80微秒的低電平作為應答信號,緊接著輸出80微22秒的高電平通知外設準備接收數據。步驟三:AM2301發送完響應后,隨后由數據總線SDA連續串行輸出40位數據,微處理器根據I/O電平的變化接收40位數據。位數據“0”的格式為:50微秒的低電平加26-28微秒的高電平;位數據“1”的格式為:50微秒的低電平加70微秒的高電平。主程序程序代碼:voidmain()init();SendData(str);發送到串口Delay(1);/延時100US(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權】 IEC 60092-376:2025 EN Electrical installations in ships - Part 376: Cables for control and instrumentation circuits 150/250 V (300 V)
- 2025年消防員職業資格考試試卷及答案
- 2025年休閑體育管理考試試題及答案
- 2025年創意寫作與批評考試題及答案
- 2025年疾病控制與預防專業考試試題及答案的模擬題
- 2025年金融市場分析考試試卷及答案
- 三個愿望測試題及答案
- 一造考試真題及答案
- 一級數學試題及答案
- 甘肅省蘭州市第四片區2024-2025學年高一下學期期中考試數學試卷(解析)
- 《子宮脫垂》課件
- 2024年10月自考15040習概試題及答案含評分參考
- 小學足球基本技術動作教案
- TSGD7002-2023-壓力管道元件型式試驗規則
- 交通運輸測繪成果及檔案管理制度
- 2025年會計專業考試高級會計實務試卷與參考答案
- DB11T 1236-2015 軌道交通接駁設施設計技術指南
- GB/T 44294-2024電主軸電動機通用技術規范
- 高中音樂鑒賞《中國傳統音樂》說課課件
- 公司面試官選拔認證實施方案
- 食品配方保密協議
評論
0/150
提交評論