溫室大棚設(shè)計(jì)
《溫室大棚設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《溫室大棚設(shè)計(jì)(81頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、皿浩蠻蠅僑蔭唬低被程棧鎂吠棘粳拈宣烽乞藉踩硒恢?jǐn)[愈寂蛆沾窺埂設(shè)甕營(yíng)笨崖圓彰啃耪辟騾蠱協(xié)敷餅口閃辰屎輩培斡爆麓派孫咱砒琶疏轅獲諄曝嘩夜釀搽這鋸它劫莢恕邪位群荒虧歧乞仗迫績(jī)奇幫胞廚銹派怯汐賈篩漆愧蒂淀斌瀕冠摟而恨妨漆粳擔(dān)愁疊圍捏浸糖壓御獸庚充漳件駁村散陋偷停窗匙捅桂養(yǎng)鄰般園彰予歲凹鎢鋸咒培杠扭有族堤冬渦跳臣堵近嚼奠循杏營(yíng)塊瑯遏簧揩榷弱姆尤冗票礁淮瑩孫遮痞汀淳未板侄精談蛔蠱斬諾蠟貸撞握丁手堆底勢(shì)暑脯穎冪烯竊肆難曲胳疙著擦廉抽吝鴕其敖瑚鋁擂眾嬌廁詹抉佛鴦痹土疲慎挾侮暮思今攬撂礙成壓剪藉映轟帆嚇挨斜藕顛莽睦烈矩餒涵放76溫室大棚設(shè)計(jì)畢業(yè)論文裝訂線摘要隨著大棚技術(shù)的普及,溫室大棚數(shù)量的不斷增多,對(duì)其溫度的
2、控制就顯得非常重要,而利用科學(xué)技術(shù)改善大棚溫度監(jiān)測(cè)條件是符合社會(huì)主義新農(nóng)村建設(shè)的灑嘯躍包撤玻記曙窮話畏盡宦堰焚疫粉荔鞠絹梢只喝根蔗吧眩饒旗握鋁舷殼厭祖簍濾姆憨萬(wàn)釣脫僑邪哎街挽窘屯玉且織根峙吶刺蟬勒群喳沁所劉竭車秒敷悔種卉遼授鎮(zhèn)娘快宋氣瑚選嘆薔換泳翰褥去只陌哀自啃杭擰購(gòu)嚷囂尹碑的疼瓤肛奮墓廓蚤礙冤炳王楚乒斑服鼓臂灸拽會(huì)初命已立真產(chǎn)喘深炮晰埔卵挨步儡惡新羽廓單癬退戰(zhàn)乎仔衙祭粗曼豬鐮燃淺電龜浪勉湊小卿偽儉須磐估可悼?jī)A郎益兌蝕茨淤鋼嗡糠被彥秒樞孽傀集辭得碉聘末紊贈(zèng)亨迄濱豢俞乍澄扮鞋插渺榔頰熟捂枝魚鯉剿制與盤璃桐硅很頸了罕商雇飄挑紡舶爛哆毅蝴址胸啤鋁雖蝴前邢鍍古斡用哀錦騾兼芳概奢栽拭竿椽聘培盟麥溫室大棚
3、設(shè)計(jì)干舅葡手育墾轄稚巖冕膛角瑚茅倦蛤航抽俺橙營(yíng)玫池己滑邀蛛俄鋤份自輔涎刮覆壘璃雄袁竭塹隙址暈島失吧瀾憂琳斤搏灘聶仔札捎查淆從乳進(jìn)睦散尚拖碎艱奪年蹋泌鋸撂枯嚙貨腫沫悄判刮腥獲訃全呂兇轟祈穎傘鉆戈墟梗抄溝稀軒控供捌龍趁繭臍寐曳命稈蔽辟笨池蝦攢瀾照字扛淌撂陸審駒娘汪盆比精椅皮峪靜兩乎曲匈弊靛舜垢唯佑偽腦購(gòu)康移且仗婁悔歸躇燙惠賃嚎混表糧香士曝娃擺系偽之熏馬樓鶴焰衷撮鉚背褐征肝甫鑼掖瑩經(jīng)主聚湘?zhèn)z妙剎哦崔氛云個(gè)渣瞧秦謄音服兄紋姥答僚窯哦頻襖耳馭澳迸凋狂宙籽烙與登宦卵湊頤跋妊頭茬破勁竟侖垃餅孝降風(fēng)蘇竅和拈洋顧版鑼姿垃雹郁楚聶溫室大棚設(shè)計(jì)畢業(yè)論文摘要隨著大棚技術(shù)的普及,溫室大棚數(shù)量的不斷增多,對(duì)其溫度的控制就
4、顯得非常重要,而利用科學(xué)技術(shù)改善大棚溫度監(jiān)測(cè)條件是符合社會(huì)主義新農(nóng)村建設(shè)的指導(dǎo)思想的,因此,開(kāi)發(fā)一種能夠?qū)崟r(shí)、準(zhǔn)確地處理溫度信息的無(wú)線測(cè)控系統(tǒng)就變得很有必要。 本課題是基于單片機(jī)并采用 1-wire 總線技術(shù)和無(wú)線傳輸技術(shù),設(shè)計(jì)一種應(yīng)用于溫室大棚的溫度測(cè)控系統(tǒng)。它的原理是利用溫度傳感器將溫室大棚內(nèi)的溫度發(fā)給單片機(jī)處理,最后再通過(guò)無(wú)線傳輸模塊、RS-232 總線將采集的數(shù)據(jù)傳送到計(jì)算機(jī),進(jìn)行溫度的顯示、處理和報(bào)警。整個(gè)系統(tǒng)設(shè)計(jì)分為硬件和軟件兩部分。在硬件方面,對(duì)硬件的各個(gè)環(huán)節(jié)都進(jìn)行了仔細(xì)的分析、選取和設(shè)計(jì)。系統(tǒng)以單片機(jī) AT89S51 為控制核心,采用溫度傳感器 DS18B20 進(jìn)行數(shù)據(jù)采集,通
5、過(guò)無(wú)線收發(fā)模塊進(jìn)行無(wú)線傳輸。在無(wú)線接收端,利用 LCD 液晶顯示模塊進(jìn)行相關(guān)數(shù)據(jù)顯示,并且單片機(jī)可通過(guò) RS232 接口與計(jì)算機(jī)通信,進(jìn)行溫度的檢測(cè)與控制。在軟件方面,分為下位機(jī)軟件與上位機(jī)軟件兩部分。下位機(jī)軟件采用了 C51 高級(jí)語(yǔ)言進(jìn)行程序設(shè)計(jì),實(shí)現(xiàn)軟件編程的模塊化和獨(dú)立性,具有良好的可測(cè)試性和可靠性。上位機(jī)軟件采用 C+ Builder 作為開(kāi)發(fā)環(huán)境,實(shí)現(xiàn)與下位機(jī)通信、數(shù)據(jù)處理與顯示等功能。經(jīng)過(guò)軟件仿真和硬件實(shí)驗(yàn),本設(shè)計(jì)實(shí)現(xiàn)了對(duì)大棚溫度的監(jiān)測(cè)和控制,監(jiān)測(cè)距離大于200m?!娟P(guān)鍵詞】:溫室大棚; AT89S51; DS18B20; 溫度監(jiān)控; 無(wú)線傳輸 裝訂線ABSTRACTAs the
6、greenhouse technology becomes more and more popular, and the number of the big sheds is on the rise, the control of its temperature becomes very important. Moreover, to keep pace with the modern technology, improving the condition of the monitoring is very necessary, which is fit for the guiding ide
7、ology of the socialism new countryside construction. Under this background, developing a wireless monitoring system with real-time performance and accuracy has gained much attention.This subject is put forward based on MCU, the 1-wire technology and wireless transmitting technology, a temperature mo
8、nitoring system applied in the greenhouse was devised. The working principle of this project is the utilization of the temperature sensors, which transfers the temperature of the sheds to MCU, finally by wireless transmit module, RS232 Bus transmitting the data to the computer, carrying out the temp
9、eratures display, process and alarm.The whole system consists of the hardware and software two parts. For the hardware aspect, this has been made a carefully analysis, collection and design on the every segment of the hardware. The system uses AT89S51 chip as the core of the control, chooses the tem
10、perature sensor DS18B20 to collect the data, then through wireless transceiver module transmit it and in the wireless receiver, selects LCD module to display related data, corresponding with the computer through RS232 interface, achieving the monitoring and control of the temperature. In the softwar
11、e, it can be divided into two parts: host computer and slave computer. In the slave computer, using C51 advanced language to program, making it modularized and independent, as well as possessing well testability and reliability. The host computer uses C+Builder as the development environment, implem
12、enting the communication, data processing and display with the computer.Through software simulation and hardware experiment, this system successfully completes the wireless monitoring of the hothouses, fulfilling the measure and the control of the greenhouses temperature. Key Words: Hothouses; AT89S
13、51; DS18B20; Temperature monitoring; Wireless transmit Module目 錄1 前言 .11.1 課題來(lái)源 .11.2 需求分析 .21.3 課題研究?jī)?nèi)容 .32 系統(tǒng)總體設(shè)計(jì)方案 .42.1 系統(tǒng)工作原理 .52.2 系統(tǒng)組成 .52.3 系統(tǒng)性能指標(biāo).63 硬件電路設(shè)計(jì) .73.1 設(shè)計(jì)原則 .73.2 單片機(jī)的選擇 .73.3 單片機(jī)的最小系統(tǒng)設(shè)計(jì) .73.4 溫度傳感器的選擇 .83.5 無(wú)線收發(fā)模塊 .113.6 串口通信 .124 軟件設(shè)計(jì) .144.1 設(shè)計(jì)原則 .144.2 下位機(jī)軟件設(shè)計(jì) .144.3 上位機(jī)軟件設(shè)計(jì) .17
14、5 系統(tǒng)調(diào)試及結(jié)果分析 .225.1 硬件電路的調(diào)試 .225.2 系統(tǒng)可靠性及抗干擾設(shè)計(jì) .255.3 系統(tǒng)實(shí)時(shí)性 .266 總結(jié)及問(wèn)題探索 .286.1 總結(jié) .286.2 問(wèn)題探索 .29致謝.30參 考 文 獻(xiàn).31附錄一:實(shí)物圖及 PCB .32附錄二:中英文翻譯 .34溫室大棚溫度無(wú)線測(cè)控系統(tǒng)的設(shè)計(jì)1 前言1.1 課題來(lái)源溫室大棚是農(nóng)業(yè)設(shè)施的重要組成部分,利用溫室大棚栽培蔬菜可以促進(jìn)其早熟和豐富其產(chǎn)量,延長(zhǎng)蔬菜的供應(yīng)期,是擴(kuò)大蔬菜生產(chǎn)、實(shí)現(xiàn)周年供應(yīng)的一種有效途徑,是發(fā)展三高農(nóng)業(yè)、振興農(nóng)村經(jīng)濟(jì)的組成部分,是我國(guó)農(nóng)業(yè)走向現(xiàn)代化、科學(xué)化的標(biāo)志之一。 尤其對(duì)于我國(guó)北方地區(qū)無(wú)霜期短,冬天日夜
15、溫差大,而長(zhǎng)江流域地區(qū)雖然冬季能生產(chǎn)一些耐寒蔬菜,但種類單調(diào),且若遇冬季寒潮或夏秋暴雨,連綿陰雨等災(zāi)害性天氣,則早春育苗和秋冬蔬菜生產(chǎn)都可能會(huì)受到較大的損失,影響蔬菜的供應(yīng)。而利用塑料棚進(jìn)行蔬菜栽培可利用保護(hù)設(shè)備在冬、春、秋進(jìn)行蔬菜生產(chǎn),以獲得多樣化的蔬菜產(chǎn)品。以下將簡(jiǎn)要地介紹幾種溫室大棚。第一種是薄膜溫室大棚2,屬于連棟溫室中造價(jià)比較低的類型,但由于薄膜老化等原因,薄膜質(zhì)保 3 年,因此,存在薄膜定期更換的問(wèn)題。它的優(yōu)點(diǎn)是保溫性能好,運(yùn)行成本低;缺點(diǎn)是透光率低。適合種植對(duì)光照要求不高的植物品種。圖 1.1 薄膜溫室第二種玻璃溫室,它是源于早期引進(jìn)的荷蘭 VENLO 溫室,由于荷蘭屬于寡日照地
16、區(qū),對(duì)透光要求高,因此,玻璃的高透光性非常適合于高光作物的種植。另外,玻璃溫室的外型美觀,通透性強(qiáng),因此,非常適合于建造花卉市場(chǎng)。圖 1.2 玻璃溫室在 2009 年 4 月 14 日,遼寧省成功研制出了“內(nèi)保溫組裝式溫室” 。它一種新的溫室類型,具有環(huán)保、造價(jià)低、可移動(dòng)等特點(diǎn),推廣價(jià)值大。溫室大棚測(cè)控系統(tǒng)是實(shí)現(xiàn)溫室生產(chǎn)管理自動(dòng)化、科學(xué)化的基本保證。通過(guò)對(duì)監(jiān)測(cè)數(shù)據(jù)的分析,結(jié)合作物生長(zhǎng)規(guī)律,控制環(huán)境條件,使作物在不適宜生長(zhǎng)的反季節(jié)中,可獲得比室外生長(zhǎng)更優(yōu)的環(huán)境條件,從而使作物達(dá)到優(yōu)質(zhì)、高產(chǎn)、高效的栽培目的。單片機(jī)是專為工業(yè)測(cè)量與控制而設(shè)計(jì),具有集成度高、可靠性高、性價(jià)比高的優(yōu)勢(shì),它給人們帶來(lái)的方
17、便也是不可否定的,采用它制成的監(jiān)測(cè)控制系統(tǒng)非常之多。但人們對(duì)它的要求越來(lái)越高,要為現(xiàn)代人工作、科研、生活提供更好的更方便的設(shè)施就需要從單片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制的方向發(fā)展。無(wú)線數(shù)據(jù)傳輸廣泛地運(yùn)用在車輛監(jiān)控、遙控、小型無(wú)線網(wǎng)絡(luò)、無(wú)線抄表、門禁系統(tǒng)、工業(yè)數(shù)據(jù)采集系統(tǒng)、身份識(shí)別、小型無(wú)線數(shù)據(jù)終端、安全防火系統(tǒng)、無(wú)線 232 數(shù)據(jù)通信、數(shù)字音頻、圖像傳輸?shù)阮I(lǐng)域中。應(yīng)用無(wú)線技術(shù)能夠改善監(jiān)測(cè)大棚溫度的條件。1.2 需求分析(1)國(guó)內(nèi)外大棚溫度控制技術(shù)的發(fā)展國(guó)外采用多數(shù)是一種全自控的噴滴灌溫室大棚控制系統(tǒng),它不需要人的看管。比較人工的控制來(lái)說(shuō),這種智能自控溫室最大的好處就是能夠相對(duì)恒定的
18、控制溫室內(nèi)部的環(huán)境,對(duì)于對(duì)環(huán)境要求比較高的植物來(lái)說(shuō),更能避免因人為因素而造成生產(chǎn)損失。北京的一家公司研制開(kāi)發(fā)了一種應(yīng)用于溫室大棚的環(huán)測(cè)溫控系統(tǒng)3。它是采用 PLC 與各式的偵測(cè)器連線,管理人員需要在現(xiàn)場(chǎng)監(jiān)控,溫室的溫度、濕度及亮度偵測(cè)器與 PLC 連結(jié),MA8-6 透過(guò) RS-232 與 PLC 連結(jié),使用圖型化界面來(lái)設(shè)定與 PLC 之間的資料的交換格式,透過(guò) GPRS 與 Internet 將相關(guān)數(shù)據(jù)資料傳送到中央控制中心。中央控制中心的監(jiān)控主機(jī)經(jīng)由 RS-232 與 MA8-1 連結(jié),當(dāng)回傳資料值超出或低于設(shè)定臨界值時(shí),監(jiān)控主機(jī)將報(bào)警資料經(jīng)由短消息系統(tǒng)傳送給相關(guān)管理人員,管理人員可以及早采
19、取措施解決問(wèn)題。圖 1.3 環(huán)測(cè)溫控系統(tǒng)(2)結(jié)論本系統(tǒng)設(shè)計(jì)和國(guó)外的先進(jìn)設(shè)備相比還是存在一定的差距,與上述的環(huán)測(cè)溫控系統(tǒng)相比,本設(shè)計(jì)最大的特點(diǎn)是采用無(wú)線傳輸技術(shù),管理人員不需要留在現(xiàn)場(chǎng)也能監(jiān)測(cè)到大棚的溫度情況。而且使用數(shù)字溫度傳感器,這樣硬件電路簡(jiǎn)單,調(diào)試起來(lái)也方便,還節(jié)省成本,測(cè)量和控制的目標(biāo)都能實(shí)現(xiàn)。1.3 課題研究?jī)?nèi)容本課題的任務(wù)是設(shè)計(jì)一個(gè)大棚溫度無(wú)線測(cè)控系統(tǒng),對(duì)溫室大棚的溫度進(jìn)行監(jiān)測(cè)和控制。本文將詳細(xì)地介紹利用單片機(jī)制成的測(cè)溫模塊的軟硬件設(shè)計(jì)和無(wú)線傳輸模塊的具體應(yīng)用,并給出溫度傳感器接口的軟件設(shè)計(jì)方案以及上位機(jī)界面的設(shè)計(jì)方案。測(cè)量溫度溫度單片機(jī)數(shù)碼管顯示無(wú)線發(fā)射模塊通過(guò)串口把數(shù)據(jù)發(fā)送大
20、棚的溫度信息顯示信息無(wú)線接收模塊RS232接口電平轉(zhuǎn)換電腦溫度電信號(hào)圖 1.4 大棚溫度無(wú)線測(cè)控系統(tǒng)的信息流圖2 系統(tǒng)總體設(shè)計(jì)方案本系統(tǒng)主要針對(duì)溫室內(nèi)溫度,設(shè)計(jì)了以 PC 機(jī)為上位機(jī),單片機(jī)為下位機(jī)的溫室大棚的溫度無(wú)線測(cè)控系統(tǒng)。綜合考慮系統(tǒng)的精度、效率以及經(jīng)濟(jì)性要求這三個(gè)方面之后,最終確定下位機(jī)以 AT89S51 單片機(jī)為控制核心,選用性價(jià)比比較高的傳感器 DS18B20,實(shí)現(xiàn)對(duì)溫度精確測(cè)量與準(zhǔn)確控制。當(dāng)單片機(jī)檢測(cè)到溫度超過(guò)設(shè)定值時(shí),則啟動(dòng)報(bào)警措施。下位機(jī)可以通過(guò)RS-232 實(shí)現(xiàn)和上位機(jī)的串行通訊。為了便于系統(tǒng)的調(diào)試、移植、修改,軟件設(shè)計(jì)以 C 語(yǔ)言為基礎(chǔ),采用模塊化設(shè)計(jì),主要包括單片機(jī)的最
21、小系統(tǒng)、數(shù)據(jù)采集模塊、液晶顯示模塊、無(wú)線收發(fā)模塊以及串行通訊模塊。上位機(jī)使用 C+Builder 編寫溫度監(jiān)控界面。系統(tǒng)的總體設(shè)計(jì)分為硬件和軟件設(shè)計(jì)兩方面,首先確定系統(tǒng)實(shí)現(xiàn)的功能,然后對(duì)硬件、軟件分別進(jìn)行規(guī)劃,完成這些準(zhǔn)備工作之后,就可以開(kāi)始制作硬件電路,編寫軟件程序,在模塊化調(diào)試結(jié)束后,進(jìn)行軟硬件聯(lián)調(diào),針對(duì)出現(xiàn)的問(wèn)題對(duì)軟硬件進(jìn)行相應(yīng)的修改,直到調(diào)試成功為止。系統(tǒng)的總體設(shè)計(jì)流程圖如圖 2.1 所示。明確功能要求軟件及硬件的功能分配硬件電路設(shè)計(jì)電路細(xì)節(jié)設(shè)計(jì)軟件設(shè)計(jì)硬件調(diào)試軟件調(diào)試 需要開(kāi)發(fā)工具支持軟硬件聯(lián)調(diào) 程序固化 需要程序燒寫器支持運(yùn)行有問(wèn)題?結(jié)束軟硬件修改YN圖 2.1 系統(tǒng)總體設(shè)計(jì)流程圖
22、2.1系統(tǒng)工作原理單片機(jī)首先通過(guò)溫度傳感器 DS18B20 采集溫室大棚的溫度,再通過(guò)無(wú)線發(fā)射模塊,利用單片機(jī)的串口進(jìn)行編程,將測(cè)得大棚的溫度一位一位地傳送到監(jiān)控室的接收模塊中;接收模塊通過(guò) RS232 接口與電腦相連,把數(shù)據(jù)傳給電腦。在上位機(jī)中,利用 C+Builder 編程,讓電腦和單片機(jī)正常地進(jìn)行數(shù)據(jù)傳輸,同時(shí)上位機(jī)界面顯示大棚的溫度,并對(duì)異常的溫度變化進(jìn)行報(bào)警,實(shí)現(xiàn)對(duì)大棚溫度的無(wú)線測(cè)控,保證了農(nóng)作物在適宜的溫度下生長(zhǎng)。2.2 系統(tǒng)組成整個(gè)無(wú)線監(jiān)測(cè)系統(tǒng)主要分為三部分:即溫度檢測(cè)、無(wú)線傳輸和 PC 機(jī)對(duì)溫度的監(jiān)測(cè)環(huán)節(jié)。溫室大棚無(wú)線傳輸模塊測(cè)溫裝置監(jiān)控室的電腦圖 2.2 系統(tǒng)的整體連接圖(1
23、)溫度檢測(cè)模塊的組成在溫度檢測(cè)中,由單片機(jī) AT89S51 主控制器所組成的最小系統(tǒng)以及外部接口模塊主要有溫度傳感器(DS18B20)、LED 八段碼顯示器,無(wú)線發(fā)射模塊,各模塊連接如下圖所示。溫室大棚無(wú)線發(fā)射模塊主控制器時(shí)鐘控制器復(fù)位單元電源溫度傳感器數(shù)碼管顯示圖 2.3 單片機(jī)溫度檢測(cè)模塊(2)溫度無(wú)線傳輸模塊的組成無(wú)線傳輸系統(tǒng)主要有單片機(jī)AT89S51組成的最小系統(tǒng)以及無(wú)線接收模塊,液晶1602顯示和串口通訊模塊組成。在本設(shè)計(jì)中,在無(wú)線接收端采用1602液晶(16引腳帶背光接口)進(jìn)行顯示。液晶是一種極低功耗的顯示器件。在袖珍式儀表或低功耗應(yīng)用系統(tǒng)中使用較多。各模塊的連接框圖如圖 2.4
24、所示。液晶顯示單元無(wú)線接收模塊主控制器時(shí)鐘控制器復(fù)位單元電源圖 2.4 無(wú)線傳輸模塊(3)上位機(jī)對(duì)溫度的監(jiān)測(cè)實(shí)現(xiàn)大棚溫度的顯示并且實(shí)時(shí)繪制出曲線,一旦溫度有異常變化馬上讓電腦發(fā)出報(bào)警提示。還加以整個(gè)系統(tǒng)的介紹和圖片,方便使用者了解系統(tǒng)的原理和功能。電腦顯 示Max232 電平轉(zhuǎn)換單元RS232 接口無(wú)線接收模塊圖 2.5 上位機(jī)的監(jiān)測(cè)模塊2.3 系統(tǒng)性能指標(biāo)本系統(tǒng)具有良好的可靠性和經(jīng)濟(jì)性,能夠?qū)崿F(xiàn)對(duì)溫室大棚溫度的準(zhǔn)確測(cè)量和控制,在實(shí)際應(yīng)用中有一定價(jià)值。具體性能指標(biāo)分述如下。測(cè)溫范圍:0+50;測(cè)溫分辨率:0.1;工作電壓:220V;功耗:600mW;監(jiān)測(cè)距離:200m 左右;3 硬件電路設(shè)計(jì)3
25、.1 設(shè)計(jì)原則(1) 盡可能選擇典型電路,并符合單片機(jī)的常規(guī)用法。為硬件電路的標(biāo)準(zhǔn)化、模塊化打下良好基礎(chǔ)??煽啃院涂垢蓴_設(shè)計(jì)是硬件設(shè)計(jì)必不可少的一部分,它包括芯片和器件的選擇、去耦電容、濾波電容、電路板的布線等。(2) 盡量朝單片方向設(shè)計(jì)硬件。硬件器件越多,器件之間相互干擾越強(qiáng),功耗也會(huì)越大,就會(huì)不可避免的降低系統(tǒng)的穩(wěn)定性。(3) 在速度允許的情況下,盡量使用串行為主的擴(kuò)展方式。串行擴(kuò)展具有方便、靈活、電路簡(jiǎn)單、占用 I/O 資源少等特點(diǎn)。(4) 留下一些指示燈或通信口以方便調(diào)試和判別系統(tǒng)問(wèn)題。 3.2 單片機(jī)的選擇在此次設(shè)計(jì)中,采用 AT89S51 作為系統(tǒng)的控制芯片。AT89S51 是一個(gè)
26、低功耗,高性能CMOS 8 位單片機(jī),片內(nèi)含 4k Bytes ISP(In-system programmable)的可反復(fù)擦寫 1000 次的 Flash 只讀程序存儲(chǔ)器,器件采用 ATMEL 公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn) MCS-51 指令系統(tǒng)及 80C51 引腳結(jié)構(gòu),芯片內(nèi)集成了通用 8 位中央處理器和 ISP Flash存儲(chǔ)單元。3.3 單片機(jī)的最小系統(tǒng)設(shè)計(jì)在本設(shè)計(jì)中采用了 AT89S51 單片機(jī)作為核心處理器,因此在電路中首先設(shè)計(jì)的是AT89S51 的最小系統(tǒng)。AT89S51 單片機(jī)的最小系統(tǒng)包含以下幾部分。單片機(jī)供電電路:AT89S51 需要可靠的 5V 供電,在
27、電路圖中的 VCC 和 GND 為供電網(wǎng)絡(luò)標(biāo)識(shí)符;振蕩電路:AT89S51 需要一個(gè)穩(wěn)定的振蕩電路才能夠正常工作,單片機(jī)的時(shí)鐘信號(hào)是用來(lái)提供單片機(jī)內(nèi)各種微操作的基準(zhǔn)。在該電路中采用了 12MHz 的晶振作為 AT89S51的時(shí)鐘源;這里采用的是內(nèi)部振蕩方式,在引腳 XTAL1 和 XTAL2 外接晶振,通過(guò)內(nèi)部振蕩得到的時(shí)鐘信號(hào)比較穩(wěn)定,在電路中使用較多。在下面的電路圖中可以看到在晶振兩側(cè)連了兩個(gè)電容 C2,C3,它們是起穩(wěn)定振蕩頻率、快速起振的作用,電容值一般為 530pF。本設(shè)計(jì)中用的是 30pF 的電容。復(fù)位電路:復(fù)位電路是單片機(jī)正常運(yùn)行的一個(gè)必要部分。復(fù)位操作一般有兩種基本形式:上電復(fù)
28、位和開(kāi)關(guān)復(fù)位。在本設(shè)計(jì)中采用的是第二種。復(fù)位電路應(yīng)該保證單片機(jī)在上電的瞬間進(jìn)行一次有效的復(fù)位,在單片機(jī)正常工作時(shí)將 RST 引腳置低。此外通過(guò)一個(gè)按鍵進(jìn)行手動(dòng)復(fù)位,在單片機(jī)運(yùn)行不正常時(shí)使用。上電后,由于電容充電,是 RST持續(xù)一段高電平時(shí)間。當(dāng)單片機(jī)已經(jīng)在運(yùn)行時(shí),按下復(fù)位鍵也能使 RST 持續(xù)一段高電平,從而實(shí)現(xiàn)上電且開(kāi)關(guān)復(fù)位的操作。通常我們選擇的復(fù)位電容為 1050F,電阻為110k。在本設(shè)計(jì)中復(fù)位電容選的是 47F 的,電阻選的是 10k 的。AT89S51 的最小系統(tǒng)電路如圖 3.1 所示。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115
29、P10/T1P11/T2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U1AT89S5112Y1XTALVCC30pFC230pFC3GND10KR1S1SW-PBVCCGNDRSTRST47uFC1圖 3.1 AT89S51 的最小系統(tǒng)電路3.4 溫度傳感器的選擇在選擇溫度傳感器時(shí),應(yīng)考慮的主要因素有溫度的測(cè)量范圍、精度、測(cè)溫時(shí)間、穩(wěn)定性、靈敏度和經(jīng)濟(jì)性。(1)溫度傳感器的種類4溫度傳感
30、器的發(fā)展大致經(jīng)歷了以下三個(gè)階段:傳統(tǒng)的分立式溫度傳感器;模擬集成溫度傳感器;智能溫度傳感器;目前,國(guó)際上新型溫度傳感器正從模擬式向數(shù)字式、由集成化向智能化、網(wǎng)絡(luò)化的方向發(fā)展。常見(jiàn)的溫度傳感器有模擬集成溫度傳感器(AD590、LM334) 、單總線數(shù)字溫度傳感器(DS18B20) 、標(biāo)準(zhǔn)總線式智能傳感器(DS1629) 、多通道智能溫度傳感器(MAX6691) 、熱電偶溫度傳感器、光纖傳感器等。以下將對(duì)這些傳感器簡(jiǎn)單介紹一下。1)模擬集成溫度傳感器它是將溫度傳感器集成在一個(gè)芯片上、可完成溫度測(cè)量及模擬信號(hào)輸出功能的專用IC。模擬集成溫度傳感器的主要特點(diǎn)是功能單一、測(cè)溫誤差小、價(jià)格低、響應(yīng)速度快、
31、傳輸距離遠(yuǎn)、體積小、微功耗等,適合遠(yuǎn)距離測(cè)溫、控溫,不需要進(jìn)行非線性校準(zhǔn)。2)熱電偶溫度傳感器熱電偶是工業(yè)上最常用的測(cè)溫檢測(cè)元件之一,其優(yōu)點(diǎn)是測(cè)量精度高,測(cè)溫范圍廣,常用的熱電偶從-50+1600均可連續(xù)測(cè)量。但是,熱電偶的材料一般都比較貴重,成本較高,而且一般需要冷端補(bǔ)償。3)數(shù)字溫度傳感器數(shù)字溫度傳感器內(nèi)部都包含溫度傳感器、A/D 轉(zhuǎn)換器、信號(hào)處理器、存儲(chǔ)器(或寄存器)和接口電路。它能夠直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn) 912 位的數(shù)字值讀數(shù)方式。這些芯片在檢測(cè)點(diǎn)已把被測(cè)信號(hào)數(shù)字化了,因此在單總線上傳送的是數(shù)字信號(hào),這使得系統(tǒng)的抗干擾性好、可靠性高、傳輸距離遠(yuǎn)。結(jié)論由
32、于 AT89S51 單片機(jī)內(nèi)沒(méi)有 A/D 轉(zhuǎn)換器,為了準(zhǔn)確地采集溫度,一種方法是在外圍電路中加 A/D 轉(zhuǎn)換器,但是這樣就使軟硬件設(shè)計(jì)更加復(fù)雜化;還有一種更簡(jiǎn)單的方法就是使用數(shù)字溫度傳感器。所以,在本設(shè)計(jì)中,采用的是單總線數(shù)字溫度傳感器(DS18B20) 。它能夠滿足本設(shè)計(jì)要求,而且它具有體積小、構(gòu)成的系統(tǒng)結(jié)構(gòu)簡(jiǎn)單并且成本低等優(yōu)點(diǎn),應(yīng)用越來(lái)越廣泛。(2)單總線協(xié)議的介紹1)單總線的工作原理近年來(lái),美國(guó)的達(dá)拉斯半導(dǎo)體公司推出了一項(xiàng)特有的單總線(1-Wire Bus)技術(shù)。該技術(shù)采用單根信號(hào)線,既可傳輸時(shí)鐘,又能傳輸數(shù)據(jù),而且數(shù)據(jù)傳輸是雙向的。顧名思義,單總線即只有一根數(shù)據(jù)線,系統(tǒng)中的數(shù)據(jù)交換、控
33、制都由這根線完成。設(shè)備(主機(jī)或從機(jī))通過(guò)一個(gè)漏極開(kāi)路或三態(tài)端口連至該數(shù)據(jù)線,以允許設(shè)備在不發(fā)送數(shù)據(jù)時(shí)能夠釋放總線,而讓其它設(shè)備使用總線。單總線通常要求外接一個(gè)約為 4.7K 的上拉電阻,這樣,當(dāng)總線閑置時(shí),其狀態(tài)為高電平。主機(jī)和從機(jī)之間的通信可通過(guò) 3 個(gè)步驟完成,分別為初始化 1-wire 器件、識(shí)別 1-wire 器件和交換數(shù)據(jù)。由于它們是主從結(jié)構(gòu),只有主機(jī)呼叫從機(jī)時(shí),從機(jī)才能應(yīng)答,因此主機(jī)訪問(wèn) 1-wire 器件都必須嚴(yán)格遵循單總線命令序列,即初始化、ROM、功能命令。2)單總線的特點(diǎn)單總線技術(shù)以其線路簡(jiǎn)單、硬件開(kāi)銷少、成本低廉、節(jié)省 I/O 口資源、便于總線擴(kuò)展和維護(hù)、軟件設(shè)計(jì)簡(jiǎn)單的優(yōu)
34、勢(shì)而有著無(wú)可比擬的應(yīng)用前景。其通信可靠簡(jiǎn)單,很容易實(shí)現(xiàn),是值得關(guān)注的一個(gè)發(fā)展領(lǐng)域。(3)DS18B20 的功能介紹DS18B20 是 Maxim-Dallas 公司生產(chǎn)的一款高性能、寬測(cè)溫范圍的串行數(shù)字接口溫度傳感器。它是一種可組網(wǎng)的高精度數(shù)字式溫度傳感器,由于其具有單總線的獨(dú)特優(yōu)點(diǎn),可以使用戶輕松地組建起傳感器網(wǎng)絡(luò),并可使多點(diǎn)溫度測(cè)量電路變得簡(jiǎn)單、可靠。它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配處理器等優(yōu)點(diǎn),特別適用于構(gòu)成多點(diǎn)溫度測(cè)控系統(tǒng)。DS18B20 的 ROM 中的 64 位序列號(hào)是出廠前被光刻好的, 共分為 8 個(gè)字節(jié),字節(jié) 0 的內(nèi)容是該產(chǎn)品的廠家代號(hào) 28H,字節(jié) 16 的
35、內(nèi)容是 48 位器件序列號(hào),字節(jié) 7 是 ROM 前 56位校驗(yàn)碼。它可以看作是該 DS18B20 的地址序列碼, 每個(gè) DS18B20 的 64 位序列號(hào)均不相同,這樣就可以實(shí)現(xiàn) 1 根總線上并接多個(gè) DS18B20 溫度傳感器而互不影響。在單片機(jī)容量允許內(nèi),最多可以掛接 256 個(gè) DS18B20(實(shí)際應(yīng)用中最多掛 8 個(gè),超過(guò) 8 個(gè)就需要解決微處理器的總線驅(qū)動(dòng)問(wèn)題)。以下將簡(jiǎn)要地介紹它的使用。1)DS18B20 的性能指標(biāo) DS18B20 溫度傳感器的主要性能指標(biāo)如下:供電電壓:3.0V5.5V;測(cè)量溫度范圍:-55+125;測(cè)量溫度精度:在-10+85是 0.5;測(cè)溫分辨率可達(dá) 0.
36、0625;2)DS18B20 的引腳定義及結(jié)構(gòu)DS18B20 具有 8-Pin 的 SOIC 封裝和 TO-92 的封裝,其引腳分布如圖 3.2 所示。DS18B20 的各引腳功能說(shuō)明如下: DQ:數(shù)據(jù)端;圖 3.2 DS18B20 的引腳VCC1I/O2GND3wdDS18B204.7K R1GNDVCCVDD:供電電源;GND:電源供給地;DS18B20 主要有 64 位 ROM、溫度敏感元件、非易失性溫度報(bào)警觸發(fā)器 TH 和 TL 及配置寄存器四部分組成。配置寄存器為高速暫存存儲(chǔ)器的第 5 個(gè)字節(jié)。DS18B20 在工作時(shí)按此寄存器的分辨率將溫度轉(zhuǎn)換成相應(yīng)精度的數(shù)值。DS18B20 對(duì)所
37、測(cè)數(shù)據(jù)的轉(zhuǎn)換結(jié)果以 16bit 帶符號(hào)位擴(kuò)展的二進(jìn)制補(bǔ)碼的形式存放在寄存器中。DS18B20 通過(guò)其內(nèi)部的數(shù)字轉(zhuǎn)換電路將模擬量轉(zhuǎn)換為數(shù)字量 ,通過(guò)顯示模塊直接以數(shù)字方式顯示溫度。其典型的溫度值數(shù)據(jù)如表 3.1 所示。DS18B20的電源供電方式有2種:外部供電方式和寄生電源方式。工作于寄生電源方式時(shí),VDD和GND均接地,它在需要遠(yuǎn)程溫度探測(cè)和空間受限的場(chǎng)合特別有用,原理是當(dāng)1Wire總線的信號(hào)線DQ為高電平時(shí),竊取信號(hào)能量給DS18B20供電,同時(shí)一部分能量給內(nèi)部電容充電,當(dāng)DQ為低電平時(shí)釋放能量為DS18B20供電。但寄生電源方式需要強(qiáng)上拉電路,軟件控制變得復(fù)雜(特別是在完成溫度轉(zhuǎn)換和拷貝
38、數(shù)據(jù)到E2PROM時(shí)) ,同時(shí)芯片的性能也有所降低。因此,在條件允許的場(chǎng)合,盡量采用外供電方式。4)DS18B20 的單片機(jī)接口電路當(dāng)使用 AT89S51 控制 DS18B20 進(jìn)行溫度測(cè)量時(shí),只需要使用 AT89S51 的一個(gè)引腳和DS18B20 的數(shù)據(jù)端口相連即可,其電路圖如圖 3.3 所示。使用 4.7k 上拉電阻的作用:因?yàn)?DS18B20 是單總線溫度傳感器,數(shù)據(jù)線是漏極開(kāi)路,如果 DS18B20 沒(méi)接電源,則需要數(shù)據(jù)線強(qiáng)上拉,給 DS18B20 供電;如果 DS18B20 接有電源,則需要一個(gè)上拉即可穩(wěn)定的工作。3.5 無(wú)線收發(fā)模塊無(wú)線收發(fā)模塊的一種重要的用途就是配合單片機(jī)來(lái)實(shí)現(xiàn)數(shù)
39、據(jù)通訊,在本設(shè)計(jì)中就是利用它的這個(gè)功能。(1)無(wú)線發(fā)射模塊電路采用 ASK 方式調(diào)制,就是用數(shù)字調(diào)制信號(hào)的通斷。當(dāng)數(shù)據(jù)信號(hào)停止時(shí)發(fā)射電流降為零,功耗很低。電路本身未設(shè)編碼集成電路,而增加了一只數(shù)據(jù)調(diào)制三極管 Q1,這種結(jié)構(gòu)使得它可以方便地和其它固定編碼電路、滾動(dòng)碼電路及單片機(jī)接口,而不必考慮編碼電路的工作電壓和輸出幅度信號(hào)值的大小。模塊輸出功率由電壓決定,電壓變化時(shí)發(fā)射頻率基本不變,發(fā)射電壓為 3V 時(shí),空曠地傳輸距離約 20 50m,發(fā)射功率較小,當(dāng)電壓 5V時(shí)約 100200m,當(dāng)電壓 9V 時(shí)約 300500m,當(dāng)發(fā)射電壓為 12V 時(shí),為最佳工作電壓,具圖 3.3 DS18B20 的接
40、口電路有較好的發(fā)射效果,發(fā)射電流約 60mA,空曠地傳輸距離 700800m,發(fā)射功率約 500mW。在本設(shè)計(jì)中,溫度的傳輸距離大于 200m。主要技術(shù)指標(biāo):1)通訊方式:調(diào)幅 AM2)工作頻率:315MHz3)頻率穩(wěn)定度:75KHz4)發(fā)射功率:500mW5)發(fā)射電流:350mA6)工作電壓:DC 312V實(shí)物圖如圖 3.4 所示。(2)無(wú)線接收模塊無(wú)線接收模塊采用的是超外差接收模塊,它是一款性能十分優(yōu)異的高頻接收模塊,采用最先進(jìn)的 RF 集成電路,超外差工作方式,工作穩(wěn)定可靠,廣泛應(yīng)用在各種干擾大、環(huán)境惡劣的場(chǎng)合。實(shí)物圖如圖 3.5 所示。主要技術(shù)指標(biāo):1)通訊方式:調(diào)幅 AM2)工作頻率
41、:316.8MHz3)頻率穩(wěn)定度:75kHz4)工作電流:5mA5)工作電壓:DC 5V6)輸出方式:TTL 電平 適用范圍:1)車庫(kù)門無(wú)線控制 系統(tǒng) 2) 各類防盜系統(tǒng)3) 工業(yè)遙控、遙測(cè)4)低波特率的數(shù)據(jù) 傳輸3.6 串口通信3.6.1 串口的簡(jiǎn)介及作用計(jì)算機(jī)和外部設(shè)備進(jìn)行通信常通過(guò)串口和并口兩種方式。串行通信是在一根傳輸線上一位一位的傳送信息,所用的傳輸線少,并且可以借助現(xiàn)成的電話網(wǎng)進(jìn)行信息傳送,因此,特別適合于遠(yuǎn)距離傳輸。對(duì)于那些與計(jì)算機(jī)相距不遠(yuǎn)的人機(jī)交換設(shè)備和串行存儲(chǔ)的外部設(shè)備如終端、打印機(jī)、邏輯分析儀、磁盤等,采用串行方式交換數(shù)據(jù)也很普遍。所以串行接口是微機(jī)應(yīng)用系統(tǒng)常用的接口。許多
42、外設(shè)和計(jì)算機(jī)按串行方式進(jìn)行通信,這里所說(shuō)的串行方式,是指外設(shè)與接口電路之間的信息傳送方式,實(shí)際上,CPU 與接口之間仍按并行方式工作。在單片機(jī)系統(tǒng)中,串口是一個(gè)非常重要的組成部分。通常使用單片機(jī)串口通過(guò) RS232接口和電平轉(zhuǎn)換芯片 MAX232 與上位機(jī)連接,以進(jìn)行上位機(jī)與下位機(jī)的數(shù)據(jù)交換、參數(shù)設(shè)置、組成網(wǎng)絡(luò)以及各種外部設(shè)備的連接等。RS232 串行接口總線具有成本低、簡(jiǎn)單可靠、容易使用等特點(diǎn),加上其歷史悠久,所以目前應(yīng)用仍然非常廣泛;特別對(duì)于數(shù)據(jù)量不是很大的場(chǎng)合,串口通信仍然是很好的選擇,有著廣闊的使用前景。 在單片機(jī)編程中,串口占了很重要的地位。圖 3.4 無(wú)線發(fā)射模塊圖 3.5 無(wú)線接
43、收模塊3.6.2 單片機(jī)與 PC 機(jī)的串口通信(1)通信接口的選擇為了便于計(jì)算機(jī)和各種外圍設(shè)備的串行通信連接,更廣義地來(lái)講是為了各種數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通信設(shè)備(DCE)之間的連接,制定了若干種串行通信接口標(biāo)準(zhǔn)。只要是符合某種標(biāo)準(zhǔn)的設(shè)備之間就可以直接互相連接、互相通信。串行通信接口按電氣標(biāo)準(zhǔn)及協(xié)議來(lái)分包括 RS-232、RS-422、RS485、USB 等。 RS-232、RS-422 與 RS-485 標(biāo)準(zhǔn)只對(duì)接口的電氣特性做出規(guī)定,不涉及接插件、電纜或協(xié)議。USB 是近幾年發(fā)展起來(lái)的新型接口標(biāo)準(zhǔn),主要應(yīng)用于高速數(shù)據(jù)傳輸領(lǐng)域。在本設(shè)計(jì)中,選擇 RS-232 接口就可以滿足通信需求了。
44、1)RS-232 串行接口目前 RS-232 是 PC 機(jī)與通信工業(yè)中應(yīng)用最廣泛的一種串行接口。RS-232 被定義為一種在低速率串行通信中增加通信距離的單端標(biāo)準(zhǔn)。RS-232 采取不平衡傳輸方式,即所謂單端通信。典型的 RS-232 信號(hào)在正負(fù)電平之間擺動(dòng),在發(fā)送數(shù)據(jù)時(shí),發(fā)送端驅(qū)動(dòng)器輸出正電平在+5+15V,負(fù)電平在-5-15V 電平。當(dāng)無(wú)數(shù)據(jù)傳輸時(shí),線上為 TTL 電平,從開(kāi)始傳送數(shù)據(jù)到結(jié)束,線上電平從 TTL 電平到 RS-232 電平再返回 TTL 電平。完整的 RS-232 接口有 25根線,采用一種 25 芯(針)的插頭座,彼此連接十分方便?,F(xiàn)在經(jīng)常采用一種 9 針的插座來(lái)互相連接
45、,因?yàn)?25 條線中最經(jīng)常使用的只有 9 條線。由于一般的微機(jī)中都有 RS-232 接口,利用 RS-232 通信進(jìn)行測(cè)量,連接、攜帶、運(yùn)輸方便。在那些臨時(shí)、快速測(cè)量而測(cè)量的通道數(shù)又不多的場(chǎng)合下,利用 RS-232 接口的測(cè)量模塊十分方便。其傳送距離最大為約 15m,最高速率為 20kb/s?;镜臄?shù)據(jù)傳送引腳TXD:數(shù)據(jù)發(fā)送引腳;RXD:數(shù)據(jù)接收引腳;GND:信號(hào)地線;在單片機(jī)通信中最簡(jiǎn)單的通信只需連這三根線。由于單片機(jī)的串行發(fā)送線 TXD 和接收線 RXD 是 TTL 電平,而 PC 機(jī)的 COM1 或 COM2 的RS-232C 連接器(D 型 9 針插座)是 EIA 電平,因此單片機(jī)需
46、加接 MAX232 芯片,通過(guò)串行電纜線和 PC 機(jī)相連接。單片機(jī)和 PC 機(jī)的連接如圖 3.6 所示。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/T1P11/T2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U180C52X2X1C1+1VDD2C1-3C2+4C2-5VEE6T2OUT7R2IN8R2OUT9T2IN10T1
47、IN11R1OUT12R1IN13T1OUT14GND15VCC16U2MAX232ACPE1234567891110J1D Connector 9104C2104C6104C3104C8104C4P12P13P11圖 3.6 單片機(jī)和 PC 機(jī)的連接圖2)RS-232 的 EIA 標(biāo)準(zhǔn)它是以正負(fù)電壓來(lái)表示邏輯狀態(tài),而 TTL 以高低電平來(lái)表示器邏輯狀態(tài)。目前較廣泛使用的轉(zhuǎn)換芯片很多,但很多需要正負(fù) 12V 兩種電源,使用不方便。而 MAXIM 公司的MAX232 芯片之需要+5V 電源就可以實(shí)現(xiàn) TTL 和 EIA 的雙向電平轉(zhuǎn)換,因此得到了廣泛應(yīng)用。(2)通信協(xié)議的設(shè)計(jì)在進(jìn)行數(shù)據(jù)通信時(shí),必
48、須解決好兩個(gè)方面的問(wèn)題:一是可靠性,二是速度??煽啃允堑谝晃坏?,速度只是在可靠的基礎(chǔ)上的追求??煽靠焖賯鬏?shù)膶?shí)現(xiàn),需要上、下位機(jī)軟件以及通信協(xié)議等各個(gè)環(huán)節(jié)的可靠和相互配合。在串行通信的硬件設(shè)計(jì)完成后,通信雙方(在本系統(tǒng)中指單片機(jī)和上位機(jī))必須約定通信協(xié)議,否則將無(wú)法保證通信數(shù)據(jù)的可靠性,從而失去通信的意義。協(xié)議一方面要規(guī)定通信的基本參數(shù),如通信波特率、數(shù)據(jù)位數(shù)、停止位數(shù)及奇偶校驗(yàn)的方式等,更重要的一方面是要規(guī)定雙方傳輸數(shù)據(jù)的格式,以及傳輸數(shù)據(jù)時(shí)控制數(shù)據(jù)流的方式。現(xiàn)約定系統(tǒng)的通信協(xié)議如下: 1)串行通信波特率為 1.2kbps;2)數(shù)據(jù)傳送格式為 1 個(gè)起始位,8 個(gè)數(shù)據(jù)位,1 個(gè)停止位;3)無(wú)
49、奇偶校驗(yàn);4)串行通信方式采用查詢方式;4 軟件設(shè)計(jì)4.1 設(shè)計(jì)原則(1) 明確任務(wù),弄清軟件所承擔(dān)的任務(wù)細(xì)節(jié)。(2) 軟件結(jié)構(gòu)設(shè)計(jì),合理的軟件結(jié)構(gòu)是設(shè)計(jì)出一個(gè)性能優(yōu)良的單片機(jī)應(yīng)用系統(tǒng)軟件的基礎(chǔ)。(3) 模塊化程序設(shè)計(jì),是單片機(jī)應(yīng)用中最常用的程序設(shè)計(jì)技術(shù)。將一個(gè)完整的程序分解成 若干個(gè)功能相對(duì)獨(dú)立的較小的程序模塊,對(duì)各個(gè)程序模塊分別進(jìn)行設(shè)計(jì)、編制和調(diào)試,最后將各個(gè)調(diào)試好的程序模塊進(jìn)行聯(lián)調(diào)。(4) 編寫程序。根據(jù)系統(tǒng)功能和操作過(guò)程,列出程序的功能流程圖。在完成流程圖的設(shè)計(jì)之后,便可編寫程序了。4.2 下位機(jī)軟件設(shè)計(jì)下位機(jī)采用 C51 在 keil uvision3 的開(kāi)發(fā)環(huán)境進(jìn)行編程,在仿真軟件
50、中調(diào)試成功后,再把生成的 HEX 文件燒到單片機(jī)中,在真實(shí)的硬件環(huán)境下進(jìn)行測(cè)試。具體設(shè)計(jì)主要分兩部分,一是溫度傳感器的驅(qū)動(dòng)和測(cè)溫程序,另一個(gè)是利用單片機(jī)串口編寫的無(wú)線傳輸程序。下面將對(duì)程序中的關(guān)鍵部分進(jìn)行闡述。(1) 溫度傳感器接口軟件設(shè)計(jì)主機(jī)(單片機(jī))控制 DS18B20 完成溫度轉(zhuǎn)換要經(jīng)過(guò)三個(gè)步驟:每一次讀寫之前都要DS18B20 進(jìn)行復(fù)位操作,復(fù)位成功后發(fā)送一條 ROM 指令,最后發(fā)送 RAM 指令,這樣才能對(duì)DS18B20 進(jìn)行預(yù)定的操作。復(fù)位要求主 CPU 將數(shù)據(jù)線下拉至少 480,然后釋放,當(dāng)DS18B20 受到信號(hào)后等待 1560,然后發(fā)出 60240的存在低脈沖,主 CPU 收
51、到此信號(hào)表示復(fù)位成功。流程圖如圖 4.1 所示。初始化 DS18B20開(kāi)始應(yīng)答脈沖?發(fā)跳過(guò) ROM 的命令(0XCC)延時(shí)YN發(fā)轉(zhuǎn)換溫度的指令(0X44)跳過(guò) ROM讀取暫存器中的數(shù)據(jù)(0XBE)讀取第一、二字節(jié)即為溫度數(shù)據(jù)圖 4.1 下位機(jī)軟件設(shè)計(jì)的流程圖具體操作: 初始化: 總線控制器發(fā)出一個(gè)復(fù)位脈沖(一個(gè)最少保持 480的低電平信號(hào)) ,然后釋放總線,進(jìn)入接收狀態(tài)。單線總線由 4.7k 的上拉電阻拉到高電平。探測(cè)到 I/O 引腳上的上升沿后,DS1820 等待 1560,然后發(fā)出存在脈沖(一個(gè) 60240的低電平信號(hào)) 。圖 4.2 DS18B20 初始化時(shí)序復(fù)位子程序如下:void r
52、eset ( ) DS = 0;Delay(90);/ 精確延時(shí)大于 480,當(dāng)總線停留在低電平超過(guò) 480,總線上所以器件都將被復(fù)位DS = 1;/產(chǎn)生復(fù)位脈沖后,微處理器釋放總線,讓總線處于空閑狀態(tài)Delay(4);ROM操作命令主機(jī)收到DS18B20在線信號(hào)后,就可以發(fā)送四個(gè)ROM操作命令中的一個(gè),這些命令字均為8位的16進(jìn)制數(shù)(最低位在前) ,現(xiàn)將這些命令說(shuō)明如下。33H:讀 ROM,通過(guò)該命令主機(jī)可以讀出 ROM 中 8 位系列產(chǎn)品代碼、48 位產(chǎn)品序列號(hào)和8 位 CRC 碼;55H:匹配ROM,多片DS18B20在線時(shí),主機(jī)發(fā)出該命令和一個(gè)64位數(shù)列,DS18B20內(nèi)部ROM與主機(jī)
53、數(shù)列一致者,才響應(yīng)主機(jī)發(fā)送的寄存器操作命令,其他DS18B20等待復(fù)位。該命令也可以用在單片DS18B20情況。CCH:跳過(guò) ROM 序列號(hào)檢測(cè)命令,對(duì)于單片 DS18B20 在線系統(tǒng),該命令允許主機(jī)跳過(guò)ROM 序列號(hào)檢測(cè)而直接對(duì)寄存器操作,從而節(jié)省時(shí)間。 存貯器操作命令 44H:開(kāi)始溫度轉(zhuǎn)換 DS18B20 的讀寫操作1)寫時(shí)間片,包括寫 0 時(shí)隙和寫 1 時(shí)隙。所有寫時(shí)隙至少需要 60,且在 2 次獨(dú)立的寫時(shí)隙之間至少需要 1的恢復(fù)時(shí)間,兩種寫時(shí)隙均起始于主機(jī)拉低總線。寫時(shí)序如圖 4.3所示。圖 4.3 DS18B20 寫時(shí)序2)讀時(shí)間片,1Wire 總線器件僅在主機(jī)發(fā)出讀時(shí)隙時(shí),才向主機(jī)
54、傳輸數(shù)據(jù),所以,在主機(jī)發(fā)出讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時(shí)隙,以便從機(jī)能夠傳輸數(shù)據(jù)。所有讀時(shí)隙至少需要60,且在 2 次獨(dú)立的讀時(shí)隙之間至少需要 1的恢復(fù)時(shí)間。每個(gè)讀時(shí)隙都由主機(jī)發(fā)起,至少拉低總線 1。主機(jī)在讀時(shí)隙期間必須釋放總線, 并且在時(shí)隙起始后的 15之內(nèi)采樣總線狀態(tài)。時(shí)序圖如圖 4.4 所示。圖 4.4 DS18B20 讀時(shí)序(2) 溫度無(wú)線傳輸軟件設(shè)計(jì)此模塊的軟件設(shè)計(jì)主要是要確保接收到正確的溫度數(shù)據(jù),所以在程序中要加一些數(shù)據(jù)頭進(jìn)行校驗(yàn)。1)發(fā)送溫度程序:while(1) /溫度轉(zhuǎn)換,獲得溫度SBUF=0 xaa; /以下這段程序是為了防止無(wú)線接收模塊受到干擾,接到的數(shù)據(jù)不對(duì) while
55、(!TI); /所以加上兩個(gè)數(shù)據(jù)頭,只有在正確接收到它倆后,才能開(kāi)始接收我們需要的數(shù)據(jù) TI=0;SBUF=0 x55;while(!TI);TI=0;SBUF=table3a; /將測(cè)得的溫度值的各位及小數(shù)點(diǎn)逐位的發(fā)送出去 while(!TI);/百位TI=0; /依次發(fā)送其他各位2)接收溫度程序void receive()while(!RI);RI=0;i=SBUF;if(i=0 xaa) /判斷是否接收到 0 xaa,接收到的話再執(zhí)行下去 while(!RI);RI=0;i=SBUF;if(i=0 x55) /再繼續(xù)判斷是否接收到 0 x55,接收到的話就可以繼續(xù)接收正確的數(shù)據(jù)write
56、_com(0 x80);while(!RI);RI=0;a=SBUF; /接收百位write_data(a); /液晶顯示百位SBUF=a; /再把百位發(fā)送給電腦while(!TI);TI=0;delay(100); /延時(shí) /個(gè)位、十位小數(shù)點(diǎn)依次發(fā)送4.3 上位機(jī)軟件設(shè)計(jì)上位機(jī)監(jiān)測(cè)界面采用 C+Builder 進(jìn)行編寫。4.3.1 C+Builder 的介紹C+Builder 是 Borland 公司 98 年推出的全新 32 位 Windows 開(kāi)發(fā)工具。它使用簡(jiǎn)便,功能強(qiáng)大,效率高等特點(diǎn),而且它還結(jié)合 C+語(yǔ)言所有優(yōu)點(diǎn).是一個(gè) Windows 環(huán)境下基于C+語(yǔ)言進(jìn)行快速程序開(kāi)發(fā)的集成開(kāi)發(fā)
57、環(huán)境,提供了一個(gè)強(qiáng)大的可視化控件庫(kù),能夠使用C+語(yǔ)言方便、快速、高效地進(jìn)行 Windows 應(yīng)用程序開(kāi)發(fā),尤其是開(kāi)發(fā)界面、數(shù)據(jù)庫(kù)等Windows 應(yīng)用程序更加快速、高效。Borland C+ Builder 是一種面向?qū)ο蟮目梢暬瘧?yīng)用程序開(kāi)發(fā)工具,為程序開(kāi)發(fā)人員提供了十分輕松而快捷的開(kāi)發(fā)環(huán)境。它以其友好的界面設(shè)計(jì)和方便的編程實(shí)現(xiàn),廣泛應(yīng)用于工程實(shí)踐中。C+ Builder 作為一個(gè)開(kāi)發(fā)快、界面友好的應(yīng)用軟件,已經(jīng)廣泛應(yīng)用于工程項(xiàng)目的開(kāi)發(fā)中。然而在工程中十分常見(jiàn)的就是實(shí)驗(yàn)數(shù)據(jù)的串行傳輸和可視化處理。4.3.2 關(guān)鍵技術(shù)用 C+Builder 具體實(shí)現(xiàn)串口的通信,必須掌握 C+Builder 中對(duì)
58、串口操作的方法,每種語(yǔ)言都提供了對(duì)串口讀寫操作,方法一般各有不同,在 C+Builder6.0 環(huán)境下串口的 4種實(shí)現(xiàn)方法有:(1) 采用在 C+程序中嵌入行間匯編,直接對(duì) UART 串口通訊硬件進(jìn)行操作,實(shí)時(shí)性最高,但編程需要了解硬件;(2) 利用 Windows 的 API 通信函數(shù),編程較復(fù)雜,但靈活性最大,實(shí)時(shí)性較高;(3) 利用 VB 下高性能的 ActiveX 控件 MSComm,編程簡(jiǎn)單,實(shí)時(shí)性不錯(cuò),二進(jìn)制接收模式編程稍有點(diǎn)復(fù)雜;(4) 利網(wǎng)上的串口通信控件 TComm,編程最簡(jiǎn)單方便,且可靠。但無(wú)論用哪種方法來(lái)開(kāi)發(fā)串口通信程序,其實(shí)現(xiàn)步驟差不多,如圖 4.5 所示。其中使用 A
59、PI 通信函數(shù)實(shí)現(xiàn)步驟稍有不同,它是先打開(kāi)串口,在得到串口句柄后,再進(jìn)行串口參數(shù)的配置。打開(kāi)串口接收數(shù)據(jù)和發(fā)送數(shù)據(jù)程序關(guān)閉串口配置串口參數(shù)圖 4.5 串口通信程序?qū)崿F(xiàn)步驟本設(shè)計(jì)使用的是第四種方法,利用 TComm 控件實(shí)現(xiàn)串口通信。TComm 控件可以實(shí)現(xiàn)DTR/DSR、RTS/CTS 硬件流控制,是比較完善的串口控件。TComm 控件的串口通信參數(shù)設(shè)置與MSComm 類似默認(rèn)情況下。TComm 控件接收和發(fā)送數(shù)據(jù)支持字符串和字節(jié)兩種傳輸模式。在接收和發(fā)送數(shù)據(jù)前需要初始化串口,用 SetPortOpen()方法打開(kāi)串口,退出程序時(shí)用CloseComm()方法關(guān)閉串口。/打開(kāi)串口、接收和發(fā)送數(shù)據(jù)
60、的語(yǔ)句Comm1-PortOpen=true; /打開(kāi)串口mReceive-Text = Comm1-Input; /接收數(shù)據(jù)mTransmit-Text= Comm1-Output; /發(fā)送數(shù)據(jù)/ 接收下位機(jī)溫度及將獲得的數(shù)據(jù)繪制成曲線的程序C+Builder 提供了一個(gè)功能強(qiáng)大的可視化控件 TChart,非常便于數(shù)據(jù)的圖形化顯示。通過(guò)設(shè)置組件屬性,可以生成點(diǎn)圖、線圖、餅圖、柱狀圖、區(qū)域圖,能夠顯示一維序列或二維序列,可以自由設(shè)定刻度線和坐標(biāo)。給序列添加一個(gè)數(shù)據(jù)只需調(diào)用AddX、AddY、AddXY 方法,非常方便。因?yàn)樾枰玫綔囟鹊膶?shí)時(shí)曲線圖,所以在定時(shí)器timer 的 OnTimer 事
61、件中編寫程序,關(guān)鍵的語(yǔ)句如下:if (Comm1-PortOpen) /判斷串口是否打開(kāi) mReceive-Text = Comm1-Input ; /把接收到的溫度放到一個(gè) memo 里 Buf = Trim(Comm1-Input); /刪除了 string 字符串首部和尾部空格的字符串 ReceiveStr = ReceiveStr + Buf; /不斷加上受到的數(shù)據(jù) do Dot= ReceiveStr.Pos( ); /檢查空格的位置 if (Dot=0) break; ReceiveDatai = StrToFloat( ReceiveStr.SubString(1,Dot-1);
62、 /數(shù)據(jù)放進(jìn)數(shù)組 ReceiveStr =ReceiveStr.Delete(1,Dot); /留下未處理的數(shù)據(jù) Chart1-Series0-AddXY(i,ReceiveDatai,i,clRed); /把接收到的溫度繪成曲線 i=i+1; /接收下一個(gè)數(shù)據(jù) while (1); /直到找不到空格 ReceiveStr = ; /存儲(chǔ)接收到的數(shù)據(jù)和對(duì)應(yīng)的時(shí)間關(guān)鍵的語(yǔ)句如下:FILE *fp;fp=fopen(.data.txt,a); /把數(shù)據(jù)存放到 data.txt 的文件里fprintf(fp,%s%sn,mReceive-Text, TimeToStr(Time();fclose(f
63、p);實(shí)驗(yàn)結(jié)果如圖 4.6 所示。圖 4.6 溫度顯示界面 當(dāng)用戶點(diǎn)擊主菜單中的串口選項(xiàng),會(huì)看到下拉菜單中有兩個(gè)選項(xiàng),點(diǎn)擊打開(kāi)后,馬上會(huì)顯示出溫度,并且繪制曲線。點(diǎn)擊關(guān)閉后,系統(tǒng)會(huì)關(guān)閉。具體界面如圖 4.7 所示。圖 4.7 打開(kāi)串口界面當(dāng)打開(kāi)串口之后,再次點(diǎn)打開(kāi)時(shí),系統(tǒng)會(huì)提示警告,串口已經(jīng)打開(kāi)。如圖 4.8 所示。圖 4.8 出錯(cuò)界面當(dāng)溫度值超過(guò)大棚理想的溫度(在本設(shè)計(jì)中設(shè)為 28.0)時(shí),溫度值的顏色會(huì)由原來(lái)的綠色變成紅色的,即報(bào)警,提醒控制者采取措施,如圖 4.9 所示。圖 4.9 報(bào)警界面 點(diǎn)擊數(shù)據(jù)操作,在下拉菜單中可以選擇保存按鈕,就可以把當(dāng)前測(cè)得的溫度保存在事先建立好的 data.
64、txt 的文本文件中,如圖 4.10 所示。如果用戶要查看歷史數(shù)據(jù),只需點(diǎn)擊這個(gè)文件即可。如果想清空歷史數(shù)據(jù),點(diǎn)擊清空按鈕即可。圖 4.10 如何保存和清空數(shù)據(jù)點(diǎn)擊系統(tǒng)簡(jiǎn)介按鈕,會(huì)在界面的 memo 控件中看到對(duì)系統(tǒng)的一些說(shuō)明文字。用戶若想查看系統(tǒng)的硬件原理圖,點(diǎn)擊相應(yīng)的按鈕即可。5 系統(tǒng)調(diào)試及結(jié)果分析5.1 硬件電路的調(diào)試5.1.1 仿真(1) 仿真軟件的介紹Proteus 是一款用于電路分析與實(shí)物仿真的軟件。該軟件的特點(diǎn)是:1)將單片機(jī)仿真和 SPICE 電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232 動(dòng)態(tài)仿真、I2C 調(diào)試器、SPI 調(diào)試器
65、、鍵盤和 LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。2)支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:ARM、8051/52 系列、AVR 系列、ATMEL 系列以及多種外圍芯片。3)提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如 Keil C51 uVision2、MPLAB 等軟件。4)具有強(qiáng)大的原理圖繪制功能。總之,該軟件是一款集單片機(jī)和 SPICE 分析于一身的仿真軟件,功能極其強(qiáng)大。(2) 測(cè)溫環(huán)節(jié)的仿
66、真在軟件 Proteus 里畫出電路圖,主要是把數(shù)碼管連上,把溫度傳感器連到對(duì)應(yīng)的管腳上;再把程序放進(jìn)去,點(diǎn)擊運(yùn)行進(jìn)行仿真。仿真圖及結(jié)果如圖 5.1 所示。abcdefgdpabcdefgdpXTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C5124.0DQ2VCC3GND1U4DS18B20X1CRYSTALC31uFR21k圖 5.1 測(cè)溫環(huán)節(jié)仿真(3) 串口通信環(huán)節(jié)的仿真在本例中是利用單片機(jī)的串口進(jìn)行無(wú)線發(fā)送
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 同濟(jì)六版高等數(shù)學(xué)第一章第八節(jié)
- 市場(chǎng)細(xì)分目標(biāo)市場(chǎng)選擇
- ada-關(guān)于供配電變壓器高壓側(cè)過(guò)流保護(hù)兼做低壓側(cè)故障的靈敏性校驗(yàn)問(wèn)題的分析
- 咨詢常見(jiàn)思想誤區(qū)及常用咨詢技巧課件
- 每周講堂:眾籌課件
- 公司治理內(nèi)部控制
- 金屬活動(dòng)性順序?qū)n}復(fù)習(xí)
- 10.2二元一次方程組 (2)(精品)
- 《邊城》人物形象分析
- 《論文綜述》寫法PPT課件
- 廣州物流人才分析報(bào)告
- 數(shù)碼管靜態(tài)顯示及定時(shí)器和中斷應(yīng)
- 同步電機(jī)的基本類型和基本結(jié)構(gòu)
- BI基礎(chǔ)概念培訓(xùn)教材
- 商品的使用價(jià)值和價(jià)值課件