久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 8007|回復(fù): 1
收起左側(cè)

基于單片機(jī)的養(yǎng)雞場(chǎng)室內(nèi)溫度遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)

[復(fù)制鏈接]
ID:318280 發(fā)表于 2018-4-28 10:37 | 顯示全部樓層 |閱讀模式
電子信息工程《專業(yè)綜合設(shè)計(jì)》研究報(bào)告

養(yǎng)雞場(chǎng)室內(nèi)溫度遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)


學(xué)生姓名:
學(xué)生學(xué)號(hào):
指導(dǎo)教師:
所在學(xué)院:
專業(yè)班級(jí):



電氣與信息學(xué)院
課程設(shè)計(jì)任務(wù)書(shū)
                                                                       
  電氣與信息學(xué)  電子信息  專業(yè) 2014 級(jí),學(xué)號(hào) 20144070209 姓名  車帥     
一、課程設(shè)計(jì)課題:
養(yǎng)雞場(chǎng)室內(nèi)溫度遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)
二、課程設(shè)計(jì)工作日自
三、課程設(shè)計(jì)進(jìn)行地點(diǎn):  信息館                             
四、程設(shè)計(jì)任務(wù)要求: (詳細(xì)內(nèi)容見(jiàn)課程設(shè)計(jì)文檔)
1.課題來(lái)源:
老師下發(fā)。
2.目的意義:
(1)學(xué)習(xí)硬件電路的設(shè)計(jì)還是軟件部分的編寫(xiě)。
(2)提高自己的分析問(wèn)題和解決問(wèn)題的能力。
3.基本要求:
(1)查閱有關(guān)養(yǎng)雞場(chǎng)的資料和雞舍的溫度要求簡(jiǎn)述當(dāng)前溫度控制的方法,效果。
(2)要求遠(yuǎn)程計(jì)算機(jī)可監(jiān)控雞場(chǎng)內(nèi)溫度及視頻。
(3)寫(xiě)出設(shè)計(jì)方案和所實(shí)現(xiàn)的技術(shù)指標(biāo)。
(4)畫(huà)出養(yǎng)雞場(chǎng)的加熱、測(cè)溫和攝像頭設(shè)備布置圖。
(5)設(shè)計(jì)下位機(jī)測(cè)控系統(tǒng),同時(shí)要求設(shè)計(jì)計(jì)算機(jī)上位機(jī)界面。
(6)詳述選擇器件的型號(hào)、功能、指標(biāo)和原因。
(7)其他見(jiàn)目錄。
課程設(shè)計(jì)評(píng)審表
指導(dǎo)教師評(píng)語(yǔ):

成績(jī):                           簽字:日期:

目錄

1 設(shè)計(jì)任務(wù)要求 ……………………………………………………….…3

2 系統(tǒng)設(shè)計(jì)總體方案 ………………………………………….…………3

3系統(tǒng)硬件設(shè)計(jì) …………………………………………………….……4

4軟件設(shè)計(jì) ………………………………….……………………………11

5總結(jié)體會(huì)………………………….…………………….………………14

6參考文獻(xiàn) ………………………………………………………………15

附錄1…………………………………………….…………….…………16

附錄2…………………………………………………………………. …17

附錄3 ……………………………………………………………….……18




1 設(shè)計(jì)任務(wù)要求
要求:
(1)查閱有關(guān)養(yǎng)雞場(chǎng)的資料和雞舍的溫度要求,簡(jiǎn)述當(dāng)前溫度控制的方法,效果。
(2)要求遠(yuǎn)程計(jì)算機(jī)可監(jiān)控雞場(chǎng)內(nèi)溫度及視頻。
(3)寫(xiě)出設(shè)計(jì)方案和所實(shí)現(xiàn)的技術(shù)指標(biāo)。
(4)畫(huà)出養(yǎng)雞場(chǎng)的加熱、測(cè)溫和攝像頭設(shè)備布置圖。
(5)設(shè)計(jì)下位機(jī)測(cè)控系統(tǒng),同時(shí)要求設(shè)計(jì)計(jì)算機(jī)上位機(jī)界面。
(6)詳述選擇器件的型號(hào)、功能、指標(biāo)和原因。
(7)其他見(jiàn)目錄。
規(guī)定:
(1)設(shè)計(jì)硬件線路,用protel畫(huà)圖。
(2)按單元電路詳細(xì)說(shuō)明硬件線路設(shè)計(jì)思路,元件參數(shù),選取根據(jù)。附詳細(xì)的元件清單。
(3)軟件設(shè)計(jì)。設(shè)計(jì)傳感器采集,轉(zhuǎn)換和LED顯示部分程序。
(4)有完整的程序流程圖,包括總流程圖和模塊流程圖。對(duì)程序設(shè)計(jì)思想做詳細(xì)說(shuō)明。
(5)有完整的程序清單,并加注釋。
(6)總結(jié)設(shè)計(jì)過(guò)程和設(shè)計(jì)體會(huì)。
(7)完成時(shí)間2周。
2養(yǎng)雞場(chǎng)室內(nèi)溫度遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)總體方案
溫度是養(yǎng)雞場(chǎng)的成敗的關(guān)鍵因素。如果溫度過(guò)低,雞容易受涼而引起拉稀或產(chǎn)生呼吸道疾病等;小雞為了取暖容易造成扎堆,影響采食和活動(dòng),造成傷殘,嚴(yán)重時(shí)會(huì)造成大量死亡。因此,養(yǎng)雞場(chǎng)一定要注意溫度的控制。
   小雞生長(zhǎng)適宜溫度隨日齡的增長(zhǎng)而下降,1日齡至2日齡孵化器溫度35℃至34℃,養(yǎng)雞場(chǎng)溫度25℃~24℃;3日齡~7日齡孵化器溫度34℃~31℃,養(yǎng)雞場(chǎng)溫度24℃~22℃;第2周孵化器溫度31℃~29℃,養(yǎng)雞場(chǎng)溫度22℃~21℃;第3周孵化器溫度29℃~27℃,養(yǎng)雞場(chǎng)溫度21℃~19℃;第4周孵化器溫度27℃~25℃,養(yǎng)雞場(chǎng)溫度19℃~18℃。養(yǎng)雞場(chǎng)溫度要比孵化器的低,使舍內(nèi)有一定溫差,孵化就可隨意選擇所需的適宜溫度,有利于小雞的生長(zhǎng);小雞生長(zhǎng)溫度必須保持平穩(wěn),不能忽高忽低,否則飼料再好也不能養(yǎng)好小雞。綜上述控制好溫度對(duì)于養(yǎng)雞是非常之關(guān)鍵因素。
舍內(nèi)常用的控溫設(shè)備是風(fēng)機(jī)。風(fēng)機(jī)降溫系統(tǒng):濕墊風(fēng)機(jī)降溫系統(tǒng)的主要作用是,夏季空氣通過(guò)濕墊進(jìn)入雞舍,可以降低進(jìn)入雞舍空氣的溫度,起到降溫的效果;熱風(fēng)爐供暖系統(tǒng):熱風(fēng)爐供暖系統(tǒng)主要由熱風(fēng)爐、鼓風(fēng)機(jī)、有孔通氣道和調(diào)節(jié)風(fēng)門等設(shè)備組成。它是以空氣為介質(zhì),煤為燃料,為空間提供無(wú)污染的潔凈熱空氣,用于雞舍的加溫。
養(yǎng)雞場(chǎng)遠(yuǎn)程監(jiān)控系統(tǒng)由單片機(jī)、上位機(jī)、無(wú)線收發(fā)模塊、網(wǎng)絡(luò)攝像頭、傳感器、顯示屏、繼電器、報(bào)警器八大主要部分組成。其工作原理是以STC12C5A60S2單片機(jī)為核心,溫度傳感器、測(cè)得數(shù)據(jù)傳入60S2單片機(jī),控制繼電器開(kāi)關(guān),進(jìn)而控制風(fēng)機(jī)控溫系統(tǒng)達(dá)到控制溫度的效果。無(wú)線收發(fā)模塊將單片機(jī)數(shù)據(jù)傳送到上位機(jī)從而起到監(jiān)控作。框圖如圖1所示。

圖1 養(yǎng)雞場(chǎng)遠(yuǎn)程監(jiān)控系統(tǒng)總體框圖

3系統(tǒng)硬件設(shè)計(jì)
3.1單片機(jī)
STC12C5A60S2/AD/PWM系列單片機(jī)是宏晶科技生產(chǎn)的單時(shí)鐘/機(jī)器周期(1T)的單片機(jī),是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成MAX810專用復(fù)位電路,2路PWM,8路高速10位A/D轉(zhuǎn)換(250K/S),針對(duì)電機(jī)控制,強(qiáng)干擾場(chǎng)合。
STC12C5A60S2是8051系列單片機(jī),與普通51單片機(jī)相比有以下特點(diǎn):
1、同樣晶振的情況下,速度是普通51的8~12倍
2、有8路10位AD
3、多了兩個(gè)定時(shí)器,帶PWM功能
4、有SPI接口
5、有EEPROM
6、有1K內(nèi)部擴(kuò)展RAM
7、有WATCH_DOG
8、多一個(gè)串口
9、IO口可以定義,有四種狀態(tài)
10、中斷優(yōu)先級(jí)有四種狀態(tài)可定義

圖2 STC12C5A60S2引腳圖

P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每個(gè)管腳可吸收8TTL門電流。當(dāng)P1口的管腳寫(xiě)“1”時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時(shí),P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部電位必須被拉高;
P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫(xiě)入“1”后,電位被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收;
P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳電位被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入時(shí),P2口的管腳電位被外部拉低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉的優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào);
P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時(shí),由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口:
 P3.0 RXD(串行輸入口)
P3.1 TXD(串行輸出口)
P3.2 INT0(外部中斷0)
P3.3 INT1(外部中斷1)
P3.4 T0(記時(shí)器0外部輸入)
P3.5 T1(記時(shí)器1外部輸入)
P3.6 WR (外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)
P3.7 RD (外部數(shù)據(jù)存儲(chǔ)器讀選通)
同時(shí)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào);
RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高平時(shí)間;
ALE / PROG :當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令時(shí)ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效;
PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取址期間,每個(gè)機(jī)器周期PSEN兩次有效。但在訪問(wèn)內(nèi)部部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將不出現(xiàn);
EA/VPP:當(dāng)EA保持低電平時(shí),訪問(wèn)外部ROM;注意加密方式1時(shí),EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時(shí),訪問(wèn)內(nèi)部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP);
XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入;
XTAL2:來(lái)自反向振蕩器的輸出。

圖3最小單片機(jī)系統(tǒng)
3.2溫度傳感器
DS18B20芯片是一家美國(guó)Dallas子公司研發(fā)的一款單一總線的數(shù)字式傳感器,具有簡(jiǎn)單的構(gòu)造、體積小、測(cè)量精度高、操作靈活、使用方便等特點(diǎn),其擁有多樣的封裝形式,這種微型化的芯片大都利用在空間比較狹小的電子設(shè)備中,實(shí)現(xiàn)對(duì)電子設(shè)備很好的監(jiān)控,確保設(shè)備的正常運(yùn)行。DS18B20具有以下特點(diǎn)。
(1)1-wire接口,單片機(jī)只憑借一個(gè)I/O端口與該器件相連進(jìn)行正常的通信。能夠輕松的實(shí)現(xiàn)多點(diǎn)測(cè)溫。
(2)無(wú)需外部元件,只需采用數(shù)據(jù)線作為芯片的供電,電源電壓的范圍是3.0-5.5V之間。
(3)對(duì)于每個(gè)芯片都用具有獨(dú)一無(wú)二64位光刻ROM編碼,對(duì)應(yīng)的家族碼是28H.
(4)溫度測(cè)量范圍為-55至125℃,在-10至85℃之間,精度可以達(dá)到±0.5℃.
(6)每款溫度傳感器的分辨率可編程的部分在9至12位之間,其中里面有1位是符號(hào)位。
(7)DS18B20的轉(zhuǎn)換時(shí)間的大小離不開(kāi)分辨率的設(shè)定,一般是設(shè)定的分辨率越大,轉(zhuǎn)換的時(shí)間越長(zhǎng)。
(8)溫度的數(shù)據(jù)主要由兩個(gè)字節(jié)組成,分別為L(zhǎng)SB和MSB,DS18B20在使用11位數(shù)據(jù)時(shí),對(duì)應(yīng)的分辨率為0.125℃.
(9)DS18B20數(shù)字式溫度傳感器內(nèi)部有EEPROM的存在,用戶先前設(shè)定的溫度報(bào)警上限或下限值以及設(shè)定的分辨率倍數(shù),即使中途斷電,數(shù)據(jù)也不會(huì)丟失。
DS18B20引腳定義封裝形式如圖4:GND為電源地。DQ為數(shù)據(jù)信號(hào)輸入/輸出端。VDD用來(lái)作為電源供給端,一般為+5V直流電壓(如果選擇寄生電源接線形式,該引腳需要接地)。

圖4  DS18B20的封裝形式

DS18B20數(shù)字式溫度傳感器的內(nèi)部框架結(jié)構(gòu)圖如圖5所示,主要分別由64位ROM、溫度傳感器、高溫觸發(fā)器、低溫觸發(fā)器、暫存寄存器和八位的CRC發(fā)生器和高速暫存RAM組成。其中64位ROM主要用于存儲(chǔ)各自單一序列號(hào)(在出廠前已寫(xiě)入片內(nèi)ROM),高溫觸發(fā)器和低溫觸發(fā)器主要由用戶通過(guò)軟件寫(xiě)入報(bào)警的上、下限值,高速RAM由9個(gè)字節(jié)組成。

圖5  DS18B20內(nèi)部框架結(jié)構(gòu)

3.3繼電器控制電路

光耦隔離電路使被隔離的兩部分電路之間沒(méi)有電的直接連接,主要是防止因有電的連接而引起的干擾,特別是低壓的控制電路與外部高壓電路之間。
溫度的控制由繼電器控制電路、溫度傳感器電路和冷熱風(fēng)機(jī)組成。傳感器檢測(cè)的溫度與單片機(jī)設(shè)定的溫度進(jìn)行比較,控制繼電器斷開(kāi)與閉合,溫度過(guò)高冷風(fēng)機(jī)開(kāi)啟,反之熱風(fēng)機(jī)開(kāi)啟。控制電路如圖6所示。

圖6繼電器控制電路
3.4LCD顯示屏
LCD1602是一款能夠顯示2行32個(gè)字符的液晶顯示器,每個(gè)字符由5×7的點(diǎn)陣形成,每一行能夠顯示16個(gè)字符。目前現(xiàn)實(shí)生活中我們所見(jiàn)到的的LCD字符液晶主要是由HD44780液晶芯片制作而成,它們具體工作方法與控制原理都是一模一樣,這樣對(duì)于程序編寫(xiě)在很大程度上帶來(lái)了方便。這樣基于HD44780寫(xiě)的控制程序能夠很好的用于市面上多數(shù)的字符型液晶,LCD1602顯示器擁有微型化、功耗低、色彩鮮艷、輕薄等諸多優(yōu)點(diǎn)。其具體的參數(shù)如下表1。

表1 LCD1602 液晶顯示器大致的技術(shù)參數(shù)表

顯示容量

16x2個(gè)字符

芯片工作電壓

4.5-5.5V

正常工作電流

2 mA (5.0V直流電壓源)

模塊最佳工作電壓

5.0V

字符塊大小

2.95mm ×4.35mm (寬×乘×高)


LCD1602液晶一共16 個(gè)引腳,每個(gè)引腳的功能各有所不同,如圖7所示。

圖7 LCD1602顯示電路
VSS:供電電源地。
VDD:供電電源輸入端(接+5V)。
VEE:LCD顯示器對(duì)比度端口,通過(guò)調(diào)節(jié)端口電流大小可以調(diào)節(jié)屏幕的顯示度。當(dāng)接正+5v直流電壓源時(shí),對(duì)比度最低,屏幕顯得的較暗;當(dāng)將該端口接地時(shí),對(duì)比度最強(qiáng)。我們可以通過(guò)給予端口連接一個(gè)電位器(滑動(dòng)變阻器)來(lái)調(diào)整其對(duì)比度的大小。
RS:寄存器選擇輸入端.RS=0:表示我們選擇指令寄存器,能夠完成寫(xiě)指令、讀取LCD忙標(biāo)志位和地址計(jì)數(shù)器。RS=1:選擇數(shù)據(jù)寄存器,可以寫(xiě)或讀數(shù)據(jù)。
R/W:讀/寫(xiě)控制信號(hào)。當(dāng)R/W=1,都操作。當(dāng)R/W=0,寫(xiě)操作。R/W與RS配合使用,可寫(xiě)指令、讀LCD忙標(biāo)志、寫(xiě)數(shù)據(jù)等操作。
E:命令使能端口。只有該端口由高電平信號(hào)轉(zhuǎn)化為低電平信號(hào),LCD模塊才能正常執(zhí)行命令,否則lCD處于關(guān)閉狀態(tài),不能正常顯示。
D0~D7:8位雙向數(shù)據(jù)線。  

3.5無(wú)線收發(fā)模塊

USB轉(zhuǎn)nRF24L01無(wú)線收發(fā)模塊無(wú)線串口通信2.4G 大功率,長(zhǎng)距離,穩(wěn)定可靠 透明數(shù)據(jù)傳輸,設(shè)置協(xié)議簡(jiǎn)單,支持AT指令。其實(shí)物圖如圖8所示。
RFX2401C射頻前段放大芯片可以將無(wú)線信號(hào)放大到最大22dbm,有效增加信號(hào)通信距離,實(shí)測(cè)空曠通信距離可達(dá)500米。
圖8   nRF24L01無(wú)線收發(fā)模塊

CH341是一個(gè)USB總線的轉(zhuǎn)接芯片,CH341 芯片支持 5V與 3.3V 供電,轉(zhuǎn)換的接口為 TTL 電平,輸出高電平與供電電壓保持一致。

  

圖9   USB驅(qū)動(dòng)電路
5V 供電時(shí)芯片 V3 引腳需要接一個(gè) 104 電容到地,3.3V  供電時(shí)需要注意以下幾點(diǎn):
與 USB 芯片相連接的所有電路的電源電壓都必須不高于 3.3V;  USB 芯片的 VCC 引腳與 V3 引腳必須短接,必須同時(shí)輸入 3.3V 電源電壓;如果使用 ESD 保護(hù)器件或瞬變電壓抑制器件,那么其正電壓應(yīng)該是 3.3V。
3.6網(wǎng)絡(luò)攝像頭
悅安高清POE網(wǎng)絡(luò)數(shù)字監(jiān)控?cái)z像頭YA-3064實(shí)物圖如圖10所示。本網(wǎng)絡(luò)攝像機(jī)產(chǎn)品特點(diǎn):
●超強(qiáng)夜視高清型,200萬(wàn)像素清晰度;
●支持雙碼流;本地錄像,遠(yuǎn)程監(jiān)看互不影響;
●內(nèi)置雙濾光片切換,支持日夜轉(zhuǎn)換;
●強(qiáng)大的網(wǎng)絡(luò)自適應(yīng)功能,根據(jù)網(wǎng)絡(luò)帶寬自動(dòng)調(diào)整碼流大小和編碼幀率;
●先進(jìn)的H.264壓縮算法,方便在窄帶上實(shí)現(xiàn)高清的圖像傳輸;
●安裝簡(jiǎn)單,使用方便,只需一根網(wǎng)線和一個(gè)軟件就可以搞定一切;
●多樣化的網(wǎng)絡(luò)服務(wù)功能支持手機(jī)、電腦同時(shí)監(jiān)控;
●采用高性能的陣列紅外燈,配合超強(qiáng)夜視,紅外夜視可達(dá)50米。

圖10攝像頭連接方式

4軟件設(shè)計(jì)
養(yǎng)雞場(chǎng)室內(nèi)溫度遠(yuǎn)程監(jiān)控系統(tǒng)軟件設(shè)計(jì)包括DS18B20溫度采集,繼電器控制,LCD顯示以及上位機(jī)等四大主要部分。溫度預(yù)警值一般設(shè)置在雞的適宜范圍之內(nèi),在即將越界之前進(jìn)行控溫處理,以保證養(yǎng)雞場(chǎng)溫度始終保持在適宜溫度。

程序流程總圖如圖11所示。

圖11程序流程總圖

4.1溫度采集

根據(jù)DS18B20數(shù)字傳感器與單片機(jī)之間的通訊協(xié)議,單片機(jī)對(duì)DS18B20數(shù)字式傳感器的數(shù)據(jù)處理過(guò)程大致的分為三個(gè)步驟:首先在處理信息之前,先對(duì)單總線進(jìn)行復(fù)位的操作,進(jìn)行初始化,初始化之后通過(guò)單總線發(fā)送ROM 指令,緊接著在發(fā)送一條RAM指令,這個(gè)過(guò)程我們已經(jīng)完成了對(duì)DS18B20 數(shù)字式溫度傳感器的預(yù)定設(shè)置。當(dāng)啟動(dòng)復(fù)位時(shí),通過(guò)CPU 將DQ數(shù)據(jù)線接口主動(dòng)下拉大致為500us的等待延時(shí)時(shí)間,等待時(shí)間過(guò)后,緊接著CPU將釋放DQ總線,當(dāng)DS18B20數(shù)字傳感器DQ端收到數(shù)據(jù)后,延遲時(shí)間約為16-60us,然后發(fā)送60-240us低脈沖信號(hào),該CPU接收低脈沖信號(hào)后復(fù)位成功。

表2 ROM的操作指令

指令功能
指令代碼
指令含義
Search ROM
Read ROM
Match ROM

Skip ROM
Alarm ROM
0FOH
33H
55H

CCH
ECH
檢測(cè)總線上存在的DS18B20數(shù)字式傳感器
讀取系列代碼、序列號(hào)及CRC校驗(yàn)碼
允許總線控制器在多點(diǎn)總線上定位一只特定的DS18B20
跳過(guò)對(duì)ROM編碼的搜索
搜索有報(bào)警的DS18B20

4.2LCD顯示

LCD1602字符型顯示器模塊內(nèi)部存在2種寄存器,它們分別是指令寄存器和數(shù)據(jù)寄存器。LCD1602在應(yīng)用時(shí),首先對(duì)LCD進(jìn)行初始化操作(單片機(jī)向指令寄存器寫(xiě)入不同的指令數(shù)據(jù)),然后確定顯示字符的地址,最后把需要顯示的字符寫(xiě)入LCD的數(shù)據(jù)寄存器,來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的顯示功能,流程圖如圖12所示。

圖12  流程圖

對(duì)LCD1602顯示字符的控制,通過(guò)訪問(wèn)1602內(nèi)部RAM地址實(shí)現(xiàn),LCD1602內(nèi)部RAM地址實(shí)現(xiàn),LCD1602內(nèi)部控制器具有80字節(jié)RAM,RAM地址與字符位置關(guān)系如表3所示。

表 3 DDRAM的地址與字符顯示位置具體的對(duì)應(yīng)聯(lián)系

列行

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1

00

01

02

03

04

05

06

07

08

09

0A

0B

0C

0D

0E

0F

2

40

41

42

43

44

45

46

47

48

49

4A

4B

4C

4D

4E

4F

4.3上位機(jī)

該系統(tǒng)上位機(jī)界面如圖13所示,養(yǎng)雞場(chǎng)理想溫度以及預(yù)警溫度最大值、最小值可自由設(shè)置,可監(jiān)控實(shí)時(shí)養(yǎng)雞場(chǎng)內(nèi)視頻以及溫度,同時(shí)可繪測(cè)出溫度曲線。

5總結(jié)與體會(huì)

通過(guò)了兩個(gè)星期的努力,也掌握了許多知識(shí),例如溫度傳感器及LCD顯示的工作原理等。同時(shí)提高了硬件電路的設(shè)計(jì)、調(diào)試,查閱資料、解決問(wèn)題的能力也得到了一定的提高。在設(shè)計(jì)電路過(guò)程中,理論知識(shí)很重要。理論知識(shí)決定了設(shè)計(jì)電路的成敗。需要足夠的耐心、細(xì)心去研究問(wèn)題,解決問(wèn)題。還必須有實(shí)事求是地分析問(wèn)題,了解理論與實(shí)際是有一些差別的。總之,通過(guò)本次綜合設(shè)計(jì)鞏固了以前所學(xué)的知識(shí),同時(shí)也學(xué)到了新的知識(shí)點(diǎn),提高了自己的分析問(wèn)題和解決問(wèn)題的能力。

該設(shè)計(jì)的成功完成離不開(kāi)老師的幫助,從資料的準(zhǔn)備、課題的研究,最后到論文的修改、答辯等各個(gè)環(huán)節(jié),都得到了我們席老師的悉心指導(dǎo)。


感謝席老師的及時(shí)溝通,給予合理的建議,讓我從中學(xué)到了很多,豐富了我單片機(jī)的知識(shí),無(wú)論是硬件電路的設(shè)計(jì)還是軟件部分的編寫(xiě)都得到了很大的提升,對(duì)電子產(chǎn)品的開(kāi)發(fā)有了更深的理解。使我更加喜愛(ài)電子產(chǎn)品的研發(fā)。

參考文獻(xiàn)
[1] 曹天漢.單片機(jī)原理與接口技術(shù).電子工業(yè)出版社.2007
[2] 關(guān)鍵.電子CAD 技術(shù).電子工業(yè)出版社.2006
[3] 宋嘉玉.EDA 實(shí)用技術(shù).人民郵電出版社.2007
[4] 張大明.單片機(jī)控制實(shí)訓(xùn)指導(dǎo)及綜合應(yīng)用實(shí)例.機(jī)械工業(yè)出版社.2008
[5] 陳曉文.電子線路課程設(shè)計(jì).電子工業(yè)出版社2007
[6] 劉偉.傳感器實(shí)訓(xùn)教程.東南大學(xué)出版設(shè).2003

附錄1


單片機(jī)源程序如下:

  1. #include < reg51.h >
  2. #include < intrins.h >
  3. #define uchar unsigned char
  4. #define uint   unsigned int
  5. #define lcddata P2
  6. sbit LCDRS=P1^7;              //液晶數(shù)據(jù)選擇命令端
  7. sbit LCDRW=P1^6;             //液晶讀寫(xiě)命令端
  8. sbit LCDEN=P1^5;            //液晶使能端
  9. //sbit LCDRS = P2^6 ;     // 命令/數(shù)據(jù)選擇端  0為寫(xiě)命令 1為寫(xiě)據(jù)      
  10. //sbit LCDRW = P2^5 ;                // lcd讀寫(xiě)端
  11. //sbit LCDEN = P2^7 ;                //lcd使能端
  12. void write_com(uchar com);
  13. void zdyzfxs();
  14. unsigned char code   mytab[8] = {0x0C,0x12,0x12,0x0C,0x00,0x00,0x00,0x00} ;//lcd自定義字符
  15. //sbit DQ = P3^7 ;   //定義DS18B20端口DQ  
  16. sbit DQ = P1^0;   //定義DS18B20端口DQ
  17. bit presence;           //ds18b20 DQ被拉低 信號(hào)0允許,1禁止
  18. uint cc,cc2;       //變量cc中保存讀出的溫度值
  19. float cc1;
  20. uchar flag;       //flag為溫度值正負(fù)標(biāo)志位,“1”表示溫度為復(fù)制,“0”表示為正值//flag為溫度值正負(fù)標(biāo)志位,“1”表示溫度為復(fù)制,“0”表示為正值
  21. void write_com(uchar com);
  22. uchar code cdis0[ ] = "CHECKING...";
  23. uchar code cdis1[ ] = "   DS18B20 OK   " ;
  24. uchar code cdis5[ ] = "Temp: ";
  25. uchar  cdis2[ ] = "+00.00";
  26. uchar code cdis3[ ] = " DS18B20   ERR0R " ;
  27. uchar code cdis4[ ] = "   PLEASE CHECK  " ;
  28. unsigned char data   temp_data[2] = {0x00,0x00} ;  //存儲(chǔ)16位溫度
  29. /*********************lcd1602******************************/
  30. void delaylcd(uint z)
  31. {uchar x,y;
  32. for(x=z;x>0;x--)
  33.   {for(y=110;y>0;y--);
  34.   }
  35. }
  36. /*lcd1602初始化        */
  37. void lcd_init(void)
  38. {
  39. LCDRW=0;                 //低電平為寫(xiě)
  40. LCDEN=0;
  41. write_com(0x38);         //使用8位數(shù)據(jù)開(kāi)關(guān),顯示兩行,使用5*7字形
  42. write_com(0x0c);         //顯示器開(kāi),光標(biāo)關(guān),字符爍      0x0e 光標(biāo)開(kāi)
  43. write_com(0x06);           //字符不動(dòng),光標(biāo)自動(dòng)右移動(dòng)一位
  44. write_com(0x01);          //清屏
  45. }

  46. /*設(shè)定顯示位置             */
  47. /********************************/
  48. void lcd_pos(uchar pos)
  49. {                 //第一行第幾列直接寫(xiě)pos為幾,第二行pos從0x40開(kāi)始
  50.    write_com(pos | 0x80) ;   //數(shù)據(jù)指針=80+地址變量
  51. }
  52. //------------------------------------
  53. /*溫度顯示                       */
  54. void temperature_display()
  55. {
  56.   uchar m;
  57.   flag=0;
  58.   while(1)
  59.   {
  60.     ddelay(2);
  61. EA=0;      //DS18B20讀寫(xiě)數(shù)據(jù)按照嚴(yán)格的時(shí)序,最好不要被打斷,
  62. 故把所有中斷關(guān)閉
  63.         start_convert();                          //啟動(dòng)溫度轉(zhuǎn)換
  64.     ddelay(250);
  65.         read_tempreture();                          //讀取溫度
  66.     EA=1;
  67.         cc=temp_data[1]*256.0+temp_data[0];
  68.         if(temp_data[1]>0xF8) {flag=1;cc=~cc+1;} else flag=0;
  69.         cc1=cc*0.0625;
  70.         cc2=cc1*100;
  71.         cdis2[1]=cc2/1000+0x30;
  72.         if(cdis2[1]==0x30)
  73.          {cdis2[1]=0x20;}
  74.         cdis2[2]=cc2/100%10+0x30;
  75.         cdis2[4]=cc2%100/10+0x30;
  76.     cdis2[5]=cc2%10+0x30;
  77.         if(flag==1)
  78.            cdis2[0]='-';
  79.         else
  80.            cdis2[0]='+';
  81.             lcd_pos(6) ;                 //設(shè)置顯示位置為第一行的第6個(gè)字符
  82.      m=0;
  83.      while(cdis2[m]!='\0')
  84.       {                          //顯示字符
  85.         write_data(cdis2[m]) ;
  86.                 m++;
  87.           }                                                                  
  88.    }
  89. }




  90. //---------------------------------
  91. /*主函數(shù)             */
  92. void main()
  93. {
  94.   lcd_display();
  95.   ddelay(1000);
  96.   ow_reset();
  97.   if(presence==0)
  98.     {
  99.          Ok_Menu ();
  100.          ddelay(1000);
  101.          temp_c();zdyzfxs();
  102.          temperature_display();  
  103.     }
  104. ……………………

  105. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

完整的Word格式文檔51黑下載地址:

養(yǎng)雞場(chǎng)監(jiān)控系統(tǒng).doc (1.7 MB, 下載次數(shù): 59)



評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:673181 發(fā)表于 2019-12-25 14:45 | 顯示全部樓層
少了一張圖,圖1的系統(tǒng)總體框圖沒(méi)有上傳
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品18久久久久久白浆动漫 | 国产资源在线视频 | 免费在线播放黄色 | 99免费精品 | 日韩国产一区二区三区 | 羞羞的视频免费在线观看 | 噜啊噜在线 | 精品亚洲一区二区三区 | 精品国产精品三级精品av网址 | 精品国产高清一区二区三区 | 视频在线一区二区 | 日韩成年人视频在线 | 99re6热在线精品视频播放 | 久久99精品久久久 | 青草青草久热精品视频在线观看 | 欧美福利 | www日本高清| 国产一区二区三区在线 | 久久机热 | 夜久久| 国产精品爱久久久久久久 | 国产精品日韩欧美一区二区 | 免费欧美 | 免费在线精品视频 | 伊人伊人伊人 | 91精品在线播放 | 龙珠z在线观看 | 国产精品视频yy9299一区 | 精品国产不卡一区二区三区 | 国产精品中文字幕一区二区三区 | 日韩av视屏 | 亚洲精品自在在线观看 | 中文字幕av在线播放 | 五十女人一级毛片 | 久久久美女 | 韩日有码 | 久久免费香蕉视频 | 成人精品鲁一区一区二区 | 国产午夜精品一区二区三区 | 极品销魂美女一区二区 | 亚洲精品国产电影 |