![溫室大棚卷簾機(jī)控制系統(tǒng)總體方案設(shè)計(jì)_4842_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/5/276aada5-6529-4213-9ed7-fcc6fa5c863e/276aada5-6529-4213-9ed7-fcc6fa5c863e1.gif)
![溫室大棚卷簾機(jī)控制系統(tǒng)總體方案設(shè)計(jì)_4842_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/5/276aada5-6529-4213-9ed7-fcc6fa5c863e/276aada5-6529-4213-9ed7-fcc6fa5c863e2.gif)
![溫室大棚卷簾機(jī)控制系統(tǒng)總體方案設(shè)計(jì)_4842_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/5/276aada5-6529-4213-9ed7-fcc6fa5c863e/276aada5-6529-4213-9ed7-fcc6fa5c863e3.gif)
![溫室大棚卷簾機(jī)控制系統(tǒng)總體方案設(shè)計(jì)_4842_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/5/276aada5-6529-4213-9ed7-fcc6fa5c863e/276aada5-6529-4213-9ed7-fcc6fa5c863e4.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、專業(yè)資料目錄第一章緒論21.1背景介紹21.2相關(guān)技術(shù)的情況21.3設(shè)計(jì)的意義2第二章總體設(shè)計(jì)方案32.1結(jié)構(gòu)設(shè)計(jì)32.2本設(shè)計(jì)主要功能流程圖4第三章硬件設(shè)計(jì)模塊53.1單片機(jī)主控制模塊63.2GSM短信收發(fā)模塊 .73.3溫度顯示模塊93.4矩陣鍵盤模塊123.5步進(jìn)電機(jī)仿卷簾機(jī)模塊13第四章軟件設(shè)計(jì)154.1程序設(shè)計(jì)總流程圖154.2GSM短信模塊程序設(shè)計(jì)164.3DS18B20 程序設(shè)計(jì) .194.41602液晶程序設(shè)計(jì) .234.5矩陣鍵盤程序設(shè)計(jì)274.6步進(jìn)電機(jī)程序設(shè)計(jì)30第五章調(diào)試與總結(jié)33WORD 完美格式下載可編輯專業(yè)資料5.1調(diào)試 .335.2總結(jié) .34致謝 . .36參
2、考文獻(xiàn). .37附錄 . .39第一章緒 論1.1背景介紹2009 年 12 月 8 日傍晚,福興地某村一位中年婦女到自家大棚上放草簾,由于沒(méi)有及時(shí)停住卷簾機(jī),導(dǎo)致繩子在鐵桿上反纏,該婦女去拉繩子時(shí),不慎被繩子纏住圍巾,最終被勒住頸部,當(dāng)場(chǎng)死亡。1.2相關(guān)技術(shù)的情況目前使用的溫室大棚卷簾機(jī)是靠人工送電,以達(dá)到控制卷簾機(jī)升降的目的,存在著很大的安全隱患。卷簾機(jī)本是幫助人們干活的工具,可有時(shí)卻成了殺人工具,而且不管溫室中是否有勞動(dòng)任務(wù),管理人員必須親自到溫室按動(dòng)按鍵實(shí)現(xiàn)卷簾機(jī)的升降,浪費(fèi)了時(shí)間。1.3設(shè)計(jì)的意義本設(shè)計(jì)以發(fā)送短信的方式來(lái)控制卷簾機(jī)的升降,通過(guò)遠(yuǎn)程控制,就能實(shí)現(xiàn)卷簾機(jī)的自動(dòng)升降,一方面
3、可以有效的避免類似上述情況的發(fā)生,另一方面可減輕管理人員的勞動(dòng)強(qiáng)度,在溫室中沒(méi)有勞動(dòng)任務(wù)的時(shí)候不必親自到溫室,僅僅為實(shí)現(xiàn)大棚簾子的升降,節(jié)省了時(shí)間。同時(shí)本設(shè)計(jì)外加其他功能,一方面能檢測(cè)室內(nèi)WORD 完美格式下載可編輯專業(yè)資料溫度,將溫度以短信的形式發(fā)給管理人員,使管理人員能夠及時(shí)準(zhǔn)確的了解溫室內(nèi)的溫度情況,及時(shí)實(shí)現(xiàn)對(duì)溫室大棚的通風(fēng),使作物獲得適宜的生長(zhǎng)溫度,有利于作物的生長(zhǎng);另一功能就是當(dāng)室內(nèi)溫度過(guò)低時(shí),卷簾機(jī)能夠自動(dòng)放簾,以保證室內(nèi)基本恒溫,縮短蔬菜生長(zhǎng)周期,使蔬菜提前上市,提高經(jīng)濟(jì)效益。第二章總體設(shè)計(jì)方案溫室大棚卷簾機(jī)控制系統(tǒng)總體方案設(shè)計(jì)是根據(jù)其功能而設(shè)計(jì)的,從全局的角度,以系統(tǒng)的觀點(diǎn)而進(jìn)
4、行整體方面的設(shè)計(jì),主要由GSM短信收發(fā)模塊、溫度顯示模塊、矩陣鍵盤設(shè)置模塊,步進(jìn)電機(jī)模擬卷簾機(jī)模塊等組成。2.1結(jié)構(gòu)設(shè)計(jì)按鍵設(shè)置模塊AT89S52GSM 短信收發(fā)模塊溫度檢測(cè)模塊單片機(jī)卷簾機(jī)升降控1602 液晶顯示模塊WORD 完美格式下載可編輯專業(yè)資料(圖 2-1 總體框架結(jié)構(gòu)圖)其中 AT89S52單片機(jī)作為本系統(tǒng)的主控制模塊。按鍵設(shè)置模塊可設(shè)置最低報(bào)警溫度和管理人員手機(jī)號(hào)碼。GSM模塊中的短信內(nèi)容由單片機(jī)進(jìn)行判別,如讀到升起的指令,卷簾機(jī)往上卷,若為降指令,則往下卷。同時(shí)18B20溫度傳感器將檢測(cè)到的溫度傳輸?shù)絃CD顯示,溫度一旦低于設(shè)置的值,單片機(jī)發(fā)短信給GSM,提示管理人員降下簾子。
5、2.2本設(shè)計(jì)主要功能流程圖WORD 完美格式下載可編輯專業(yè)資料(圖 2-2功能流程圖)小節(jié): 本章對(duì)該設(shè)計(jì)的總體框架結(jié)構(gòu)體系設(shè)計(jì)進(jìn)行了論述,并對(duì)該設(shè)計(jì)的功能通過(guò)流程圖的形式進(jìn)行了介紹, 硬件及軟件模塊的設(shè)計(jì)分別在第三章、第四章給以介紹。第三章硬件設(shè)計(jì)模塊WORD 完美格式下載可編輯專業(yè)資料溫室大棚卷簾機(jī)控制系統(tǒng)硬件模塊主要由單片機(jī)主控制模塊、GSM短信收發(fā)模塊、溫度顯示模塊、按鍵模塊、步進(jìn)電機(jī)仿卷簾機(jī)五大模塊組成。下面分別對(duì)五大模塊進(jìn)行分析。3.1單片機(jī)主控制模塊本模塊主要由單片機(jī)最小系統(tǒng)搭建而成,主要包括復(fù)位電路與時(shí)鐘電路兩大部分,這里單片機(jī)主要進(jìn)行計(jì)算,判斷,進(jìn)制轉(zhuǎn)換等一系列工作,也是整個(gè)
6、系統(tǒng)中最關(guān)鍵的部分,下面具體介紹一下單片機(jī)主控制模塊的各個(gè)組成。功能簡(jiǎn)介AT89S52和 AT89S51(如圖)基本是一樣的,S52 比 S51 多一個(gè)定時(shí)器,由于S52 的定時(shí)器 2 不常用,故在此我們討論 S51,它是一個(gè)低功耗,高性能 CMOS8位單片機(jī),片內(nèi)含 4k Bytes ISP(In-system programmable)的可反復(fù)擦寫(xiě) 1000次的 Flash 只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn) MCS-51指令系統(tǒng)及 80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8 位中央處理器和 ISP Flash 存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的 AT
7、89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。AT89S51具有如下特點(diǎn): 40 個(gè)引腳,4k Bytes Flash片內(nèi)程序存儲(chǔ)器, 128WORD 完美格式下載可編輯專業(yè)資料bytes 的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器( RAM),32 個(gè)外部雙向輸入 / 輸出( I/O )口,5 個(gè)中斷優(yōu)先級(jí) 2 層中斷嵌套中斷,2 個(gè) 16 位可編程定時(shí)計(jì)數(shù)器 ,2 個(gè)全雙工串行通信口,看門狗( WDT)電路,片內(nèi)時(shí)鐘振蕩器。(圖 3-1-1 AT89S51 引腳圖 )復(fù)位電路為確保單片機(jī)系統(tǒng)中電路穩(wěn)定可靠工作,復(fù)位電路是必不可少的部分,復(fù)位電路有上電自動(dòng)復(fù)位和按鍵復(fù)位兩種,這里采用按鍵復(fù)位。其工作
8、電路圖( )。時(shí)鐘電路時(shí)鐘電路是單片機(jī)工作的心臟,它控制著單片機(jī)的工作節(jié)奏,單片機(jī)就是通過(guò)復(fù)雜的時(shí)序電路完成不同指令功能的。時(shí)鐘的工作電路圖如(3.1.3 )。( 圖 3-1-2復(fù)位電路)( 圖 3-1-3時(shí)鐘電路)3.2GSM短信收發(fā)模塊GSM短信收發(fā)的主要功能是收發(fā)短信,當(dāng)溫度低于設(shè)定的值時(shí)自動(dòng)給管理人員發(fā)送短信,給以報(bào)警提示,同時(shí)接受管理人員回復(fù)的短信,通過(guò)單片機(jī)判斷短WORD 完美格式下載可編輯專業(yè)資料信內(nèi)容,控制卷簾機(jī)的升降。模塊簡(jiǎn)介TC35 是 Siemens 公司推出的新一代無(wú)線通信 GSM模塊,可以快速安全可靠地實(shí)現(xiàn)系統(tǒng)方案中的數(shù)據(jù)、語(yǔ)音傳輸、短消息服務(wù) (Short Mess
9、ageService) 和傳真。模塊的工作電壓為3.35.5V ,可以工作在 900MHz和1800MHz兩個(gè)頻段,所在頻段功耗分別為2W(900M)和 1W( 1800M)。模塊有 AT命令集接口,支持文本和 PDU模式的短消息、第三組的二類傳真、以及 2.4k ,4.8k ,9.6k 的非透明模式。 此外,該模塊還具有電話簿功能、多方通話,漫游檢測(cè)功能,常用工作模式有省電模式、 IDLE、TALK等模式。通過(guò)獨(dú)特的 40 引腳的 ZIF 連接器,實(shí)現(xiàn)電源連接、指令、數(shù)據(jù)、語(yǔ)音信號(hào)、及控制信號(hào)的雙向傳輸。通過(guò)ZIF 連接器及 50 天線連接器,可分別連接SIM卡支架和天線。引腳極其用法簡(jiǎn)介T
10、C35有 40 個(gè)引腳, 114 引腳為電源部分,其中l(wèi) 5 引腳為電源電壓輸入端 VBATT+610 引腳為電源地 GND,ll 12 引腳為充電端, 13 引腳為對(duì)外輸出電壓 ( 供外部電路使用 ) ,2429 引腳為 SIM 卡連接端; 3340 引腳為語(yǔ)音接口用來(lái)接電話手柄。 15、30、31 和 32 引腳為控制部分, 15 引腳為啟動(dòng)線 IGT(Ignition)。當(dāng) TC35通電后必須給 IGT 一個(gè)大于 100 mV的低電平,模塊才能啟動(dòng)。30 引腳為RTC BACK up;31 引腳為掉電控制; 32 引腳為 SYNC,1623 引腳為數(shù)據(jù)輸入輸WORD 完美格式下載可編輯專
11、業(yè)資料出端。啟動(dòng)電路由漏極開(kāi)路三極管控制。在這里,著重介紹下SYNC引腳,因?yàn)樵撘_可以很好的反映TC35的工作狀態(tài)。SYNC引腳可以用來(lái)輸出一個(gè)同步信號(hào)(synchronization signal),也可以在應(yīng)用時(shí)來(lái)控制一個(gè)LED燈的輸出狀態(tài)。 SYNC端通過(guò)一個(gè)三極管或門電路來(lái)控制LED。一個(gè)簡(jiǎn)單的電路接法是:SYNC端通過(guò)一電阻接到NPN三極管(如 9013)的基極,射極直接接地,集電極通過(guò)一個(gè)接限流電阻接到LED的負(fù)端, LED的正端接 VCC。LED的工作模式完全類同于同步信號(hào),顯示的是TC35的工作狀態(tài):【1】LED燈滅,表示 TC35電源關(guān)閉,處于休眠、報(bào)警或單純的充電模式【2
12、】600 ms 亮 / 600ms 滅,表示未插入 SIM 卡,或者個(gè)人身份未登記 / 已注銷,或者網(wǎng)絡(luò)正在搜尋中,或者正在進(jìn)行管理人員身份鑒定,或者網(wǎng)絡(luò)注冊(cè)正在進(jìn)行中【3】75ms 亮 / 3s 滅,表示網(wǎng)絡(luò)注冊(cè)成功(控制通道和管理人員交換信息完成),無(wú)來(lái)電【4】LED燈亮,依據(jù)不同的呼叫類型:聲音呼叫,數(shù)據(jù)呼叫,在建立或者完畢時(shí)的狀態(tài)。3.3溫度顯示模塊本模塊主要通過(guò)DS18B20溫度傳感器采集室內(nèi)溫度,將實(shí)時(shí)溫度顯示在LCD液晶上,并且當(dāng)溫度低于設(shè)定溫度時(shí),將溫度值發(fā)送給管理人員,讓管理人員知道溫室內(nèi)溫度變化。溫度傳感器( 1)DS18B20溫度傳感器簡(jiǎn)介WORD 完美格式下載可編輯專業(yè)
13、資料DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)9 12 位的數(shù)字值讀數(shù)方式獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;多個(gè)DS18B20可以并聯(lián)在惟一的三線上, 實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能; 無(wú)須外部器件; 可通過(guò)數(shù)據(jù)線供電, 電壓范圍為 3.0 5.5V;零待機(jī)功耗。零待機(jī)功耗; 溫度以或位數(shù)字;管理人員可定義報(bào)警設(shè)置; 報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件;負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。(2) 溫度檢測(cè)電路
14、溫度檢測(cè)采用數(shù)字溫度計(jì)DS18B20。如圖()(圖 3-3-1 )字符型 LCD液晶屏( 1)LCD簡(jiǎn)介WORD 完美格式下載可編輯專業(yè)資料字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式 LCD,目前常用 16*1,16*2 ,20*2 和 40*2 行等的模塊。本次設(shè)計(jì)選用的是長(zhǎng)沙太陽(yáng)人電子有限公司的 1602 字符型液晶顯示器,下面介紹其用法。一般1602 字符型液晶顯示器實(shí)物如圖3-3-2-1 :(圖 3-3-2-1 )引腳功能說(shuō)明1602LCD采用標(biāo)準(zhǔn)的 14 腳(無(wú)背光)或 16 腳(帶背光)接口,各引腳接口說(shuō)明如下:第 1 腳: VSS為地電源。第 2 腳: VDD接
15、 5V 正電源。第 3 腳: VL 為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè) 10K 的電位器調(diào)整對(duì)比度。第 4 腳: RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第 5 腳:R/W為讀寫(xiě)信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。 當(dāng)RS和 R/W共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址, 當(dāng) RS為低電平 R/W為高電平時(shí)可以讀忙信號(hào),當(dāng) RS為高電平 R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。第 6 腳:E 端為使能端,當(dāng) E 端由高電平跳變成低電平時(shí), 液晶模塊執(zhí)行命令。第 7 14 腳: D0D7 為
16、 8 位雙向數(shù)據(jù)線。第 15 腳:背光源正極。WORD 完美格式下載可編輯專業(yè)資料第 16 腳:背光源負(fù)極。( 2) LCD 顯示電路本設(shè)計(jì)液晶顯示模塊的設(shè)計(jì)如下圖(3-3-2-2 )所示 , 該電路實(shí)現(xiàn)的功能是:通過(guò) AT89S52的 P00P07八個(gè)口輸出控制信號(hào),控制液晶的8 位雙向數(shù)據(jù)線,通過(guò)單片機(jī)的 P2.0 、P2.1 、P2.2 向液晶模塊發(fā)送命令,控制液晶執(zhí)行各種命令,其中 P2.2 控制液晶的使能端, 當(dāng) E 端由高電平跳變成低電平時(shí), 液晶模塊執(zhí)行命令,P2.1 控制液晶模塊的讀寫(xiě),高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)P2.0和 P2.1 共同為低電平時(shí)可以寫(xiě)入指令或
17、者顯示地址,當(dāng) P2.0 為低電平 P2.1 為高電平時(shí)可以讀忙信號(hào), 當(dāng) P2.0 為高電平 P2.1 為低電平時(shí)可以寫(xiě)入數(shù)據(jù),P2.0 控制寄存器的選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。(圖 3-3-2-2 )3.4矩陣鍵盤模塊矩陣鍵盤主要用來(lái)對(duì)最低溫度和管理人員手機(jī)號(hào)碼的設(shè)置,可以隨時(shí)改變數(shù)WORD 完美格式下載可編輯專業(yè)資料值,更符合實(shí)際生產(chǎn)的要求。4×4矩陣鍵盤的工作原理矩陣鍵盤又稱為行列式鍵盤, 它是用 4 條 I/O 線作為行線, 4 條 I/O 線作為列線組成的鍵盤。在行線和列線的每一個(gè)交叉點(diǎn)上,設(shè)置一個(gè)按鍵。這樣鍵盤中按鍵的個(gè)數(shù)是 4×4個(gè)
18、。這種行列式鍵盤結(jié)構(gòu)能夠有效地提高單片機(jī)系統(tǒng)中I/O 口的利用率。鍵盤電路設(shè)計(jì)矩陣鍵盤引腳接法及其電路圖3-4-2 :S0S1S2S3P2.0S4S5S6S7P2.1S8S9S10S11P2.2S12S13S14S15P2.3P2.4P2.5P2.6P2.7(圖 3-4-2 )3.5步進(jìn)電機(jī)仿卷簾機(jī)模塊現(xiàn)實(shí)生活中本模塊是卷簾機(jī)控制,卷簾機(jī)主要由直流電機(jī)和減速器組成。本設(shè)計(jì)用二相四線步進(jìn)電機(jī)模擬卷簾機(jī)的升降。步進(jìn)電機(jī)的工作原理步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度( 稱為“步距WORD 完美格式下載可編輯專業(yè)資
19、料角” ) ,它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^(guò)控制脈沖個(gè)數(shù)來(lái)控制角位移量,從而達(dá)到準(zhǔn)確定位的目的,同時(shí)可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。步進(jìn)電機(jī)可以作為一種控制用的特種電機(jī),利用其沒(méi)有積累誤差 ( 精度為 100%)的特點(diǎn),廣泛應(yīng)用于各種開(kāi)環(huán)控制。現(xiàn)在比較常用的步進(jìn)電機(jī)包括反應(yīng)式步進(jìn)電機(jī)(VR)、永磁式步進(jìn)電機(jī)( PM)、混合式步進(jìn)電機(jī)( HB)和單相式步進(jìn)電機(jī)等。步進(jìn)電機(jī)模擬卷簾機(jī)的設(shè)計(jì)本設(shè)計(jì)步進(jìn)電機(jī)及驅(qū)動(dòng)器模塊設(shè)計(jì)的電路如圖所示,VCC接 12V 電源, GND接地, A+、A- ,B+、 B-分別連接步進(jìn)電機(jī)的四根接線,CP+、 CP-、
20、CW+、CW分-別連接單片機(jī) P10P13口。該電路實(shí)現(xiàn)的功能是:通過(guò)AT89S51的 P10、P11、P12、P13四個(gè)口輸出四個(gè)信號(hào),其中 P10、P12口輸出控制水平方向和垂直方向脈沖的個(gè)數(shù),即兩個(gè)方向上的位移量; P11、P13 口控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)方向,即正反轉(zhuǎn)??刂七^(guò)程為:?jiǎn)纹瑱C(jī)接受鍵盤傳來(lái)的信號(hào),通過(guò)P1的四個(gè)口輸出控制信號(hào),通過(guò)硬件接線,發(fā)送到步進(jìn)電機(jī)的驅(qū)動(dòng)器,通過(guò)驅(qū)動(dòng)器控制步進(jìn)電機(jī)的轉(zhuǎn)向和轉(zhuǎn)角。當(dāng)然,其中還包括單片機(jī)的內(nèi)部振蕩電路,驅(qū)動(dòng)器匹配的電路等的設(shè)計(jì)。WORD 完美格式下載可編輯專業(yè)資料(圖 3-5-2 ) 步進(jìn)電機(jī)及驅(qū)動(dòng)器模塊設(shè)計(jì)電路圖引腳功能說(shuō)明P10、P12(1、
21、3 腳):接步進(jìn)驅(qū)動(dòng)器,傳遞脈沖個(gè)數(shù);P11、P13(2、4 腳):控制電機(jī)的轉(zhuǎn)動(dòng)方向;小節(jié): 本章節(jié)對(duì)單片機(jī)主控制模塊、GSM短信收發(fā)模塊、溫度顯示模塊、按鍵模塊、步進(jìn)電機(jī)仿卷簾機(jī)模塊分別進(jìn)行了介紹,里面對(duì)各模塊的重點(diǎn),難點(diǎn)及注意點(diǎn)進(jìn)行了很仔細(xì)的分析與講解。第四章軟件設(shè)計(jì)溫室大棚卷簾機(jī)控制系統(tǒng)軟件設(shè)計(jì)主要由GSM短信模塊程序設(shè)計(jì),DS18B20程序設(shè)計(jì), 1602 液晶程序設(shè)計(jì),矩陣鍵盤程序設(shè)計(jì)及步進(jìn)電機(jī)程序組成。每一模塊都是先單獨(dú)調(diào)試,最后整體調(diào)試的。下面分別介紹一下各模塊的程序設(shè)計(jì)過(guò)程及注意點(diǎn)。4.1程序設(shè)計(jì)總流程圖WORD 完美格式下載可編輯專業(yè)資料(圖 4-1功能流程圖)4.2GSM
22、 短信模塊程序設(shè)計(jì)GSM模塊與手機(jī)之間的通信協(xié)議是一些AT 指令集, AT 指令是以AT 作首,字符結(jié)束的字符串,AT 指令的響應(yīng)數(shù)據(jù)包在中。每個(gè)指令執(zhí)行成功與否都有相應(yīng)的返回。所以本模塊的程序設(shè)計(jì)主要以發(fā)送AT 指令為著手點(diǎn)。用 AT 命令設(shè)置 TC35的參數(shù)時(shí),必須先要將命令寫(xiě)入串口,然后通過(guò)讀取WORD 完美格式下載可編輯專業(yè)資料串口的應(yīng)答數(shù)據(jù)來(lái)判斷是否成功。一般AT 命令發(fā)送成功時(shí),會(huì)返回?cái)?shù)據(jù)“OK",表示 AT 命令執(zhí)行成功。在短消息模塊設(shè)計(jì)的過(guò)程中,對(duì)于TC35的相關(guān)參數(shù)要進(jìn)行設(shè)置。具體應(yīng)用到的AT指令如下:(1) 設(shè)置發(fā)送模式短消息收發(fā)時(shí),必須要用AT命令設(shè)置 TC35
23、的發(fā)送和接收模式。在收發(fā)短消息時(shí),必須按照設(shè)置的模式對(duì)發(fā)送和接收的數(shù)據(jù)進(jìn)行相應(yīng)編碼和解碼。其中,設(shè)置 PDU模式的命令為“ AT+CMGF=1回車“。(2) 設(shè)置服務(wù)中心號(hào)碼根據(jù)前面介紹短消息收發(fā)技術(shù)原理,短消息的傳輸總是由處于GSM外部的短消息服務(wù)中心進(jìn)行中繼。每個(gè)消息有自己的目的地或起源地,但只與用戶和SMSC有關(guān),因此要根據(jù)SIM 卡的營(yíng)運(yùn)商設(shè)置相應(yīng)的服務(wù)中心。如設(shè)置徐州聯(lián)通公司服務(wù)中心的命令是,“回車“。(3) 短消息發(fā)送在短消息發(fā)送時(shí),使用以下命令將短信發(fā)出去:at cmgf1 回車at csmp17, 167,0,0 回車at cscs gsm 回車at cmgs手機(jī)號(hào)碼回車輸入短
24、信內(nèi)容 text格式(注:“” ASCII值為 26,即 1AH )發(fā)送短信子程序如下:; =WORD 完美格式下載可編輯專業(yè)資料;發(fā)送短信程序; =MAIN:MOVSP,#53H;設(shè)置堆棧指針MOV78H,#20H;設(shè)置要發(fā)送的數(shù)據(jù)塊的首末地址MOV 77H,#00HMOV 76H,#20HMOV75H,#40HACALL TRANS;調(diào)用發(fā)送子程序SJMP$TRANS:MOV SBUF ,78H;發(fā)送地址高 8 位WAT1:JNBTI,WAT1CLR TIMOV SBUF ,77H;發(fā)送地址低 8 位WAT2:JNBTI,WAT2CLR TIMOV SBUF ,76H;發(fā)送地址高 8 位W
25、AT3:JNBTI,WAT3CLR TIMOV SBUF ,75H;發(fā)送地址低 8 位WAT4:JNBTI,WAT4CLR TIMOV IE,#90H;打開(kāi)中斷允許寄存器,采用中斷方式發(fā)送數(shù)據(jù)WORD 完美格式下載可編輯專業(yè)資料MOV DPH,78HMOV DPL,77HMOVX A,DPTRMOV SBUF,A;發(fā)送首個(gè)數(shù)據(jù)WAIT: JNB F0,WAITRETCOM_INT: CLR TI;關(guān)發(fā)送中斷標(biāo)志位 TIINCDPTR;數(shù)據(jù)指針加 1,準(zhǔn)備發(fā)送下一個(gè)數(shù)據(jù)MOV A,DPH;判斷當(dāng)前被發(fā)送的數(shù)據(jù)地址是不是末地址CJNE A,76H,END1;不是末地址則跳轉(zhuǎn)MOV A,DPLCJN
26、E A,75H,END1SETE FO;數(shù)據(jù)發(fā)送完畢,置 1 標(biāo)志位CLRES;關(guān)串行口中斷CLREA;關(guān)中斷RETI;中斷返回END1: MOVX A,DPTR;將要發(fā)送的數(shù)據(jù)送累加器,準(zhǔn)備發(fā)送MOV SBUF,A;發(fā)送數(shù)據(jù)RETI;中斷返回4.3DS18B20程序設(shè)計(jì)WORD 完美格式下載可編輯專業(yè)資料DS18B20溫度傳感器是 DALLAS公司生產(chǎn)的單總線器件,在一根線上進(jìn)行全部的信息傳輸,因?yàn)橛布?jiǎn)單,所以軟件設(shè)計(jì)相對(duì)麻煩,對(duì)時(shí)序掌控精度要求較高。寫(xiě) 18B20 程序設(shè)計(jì)主機(jī)要生存一個(gè)寫(xiě)時(shí)間隙,必須把數(shù)據(jù)線拉低到低電平然后釋放,寫(xiě)時(shí)間間隙開(kāi)始后的 15us 內(nèi)允許數(shù)據(jù)線拉倒高電平。主機(jī)
27、要生成一個(gè)寫(xiě)0 間隙,必須把數(shù)據(jù)線拉低電平并保持60us,如圖所示。(圖 4-3-1 DS18B20 寫(xiě)時(shí)序圖)寫(xiě) 18b20 子程序的匯編程序如下:;=; 寫(xiě) DS18B20的子程序 ( 有具體的時(shí)序要求 );=WRITE_1820:MOVR2,#8; 一共 8 位數(shù)據(jù)CLRCWR1:CLRDQMOVR3, #6WORD 完美格式下載可編輯專業(yè)資料DJNZR3, $RRCAMOVDQ, CMOVR3,#23DJNZR3,$SETBDQNOPDJNZR2,WR1SETBDQRET讀 18B20程序設(shè)計(jì)主機(jī)生成讀時(shí)間間隙,從ds18b20 輸出的數(shù)據(jù)在讀間隙的下降沿出現(xiàn)的15us內(nèi)有效,因此主機(jī)
28、停止I/O 口的操作,以讀取I/O 口的值,如圖所示。( 圖 4-3-2 DS18B20 讀時(shí)序圖 )WORD 完美格式下載可編輯專業(yè)資料讀 18b20 子程序的匯編程序如下:;=;讀 DS18B20的程序;=READ_18200:MOV R4,#2;將溫度高位和低位從DS18B20中讀出MOVR1,#TEMPER_L ;低位存入 TEMPER_L(TEMPER_L);高位存入 (TEMPER_H)RE00:MOV R2,#8;數(shù)據(jù)一共有 8 位RE01:CLR CSETBDQNOPNOPCLR DQNOPNOPNOPSETBDQMOV R3,#9RE10:DJNZ R3,RE10MOVC,D
29、QMOVR3,#23WORD 完美格式下載可編輯專業(yè)資料RE20:DJNZ R3,RE20RRCADJNZR2,RE01MOVR1,ADECR1DJNZR4,RE00RET單線總線的空閑狀態(tài)是高電平。無(wú)論任何理由需要暫停某一執(zhí)行過(guò)程時(shí),如果還想恢復(fù)執(zhí)行的話,總線必須停留在空閑狀態(tài)。在恢復(fù)期間,如果單線總線處于非活動(dòng)(高電平)狀態(tài),位與位間的回復(fù)時(shí)間可以無(wú)限長(zhǎng)。如果總線停留在低電平超過(guò) 480us,總線上所有的器件都將復(fù)位。執(zhí)行序列通過(guò)單線總線端口訪問(wèn)DS18B20的協(xié)議流程圖如下:(圖 4-3-2協(xié)議流程圖)4.41602液晶程序設(shè)計(jì)WORD 完美格式下載可編輯專業(yè)資料液晶顯示模塊是一個(gè)慢顯示
30、器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖4.4 是 1602 的內(nèi)部顯示地址。(圖 4-4 1602LCD 內(nèi)部顯示地址)例如第二行第一個(gè)字符的地址是40H,那么是否直接寫(xiě)入40H就可以將光標(biāo)定位在第二行第一個(gè)字符的位置呢?這樣不行,因?yàn)閷?xiě)入顯示地址時(shí)要求最高位D7恒定為高電平 1 所以實(shí)際寫(xiě)入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。初始化的程序設(shè)計(jì)在對(duì)液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時(shí)光標(biāo)是自動(dòng)右
31、移的,無(wú)需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。1602LCD的一般初始化(復(fù)位)過(guò)程延時(shí) 15mS寫(xiě)指令 38H(不檢測(cè)忙信號(hào))WORD 完美格式下載可編輯專業(yè)資料延時(shí) 5mS寫(xiě)指令 38H(不檢測(cè)忙信號(hào))延時(shí) 5mS寫(xiě)指令 38H(不檢測(cè)忙信號(hào))以后每次寫(xiě)指令、讀 / 寫(xiě)數(shù)據(jù)操作均需要檢測(cè)忙信號(hào)寫(xiě)指令 38H:顯示模式設(shè)置寫(xiě)指令 08H:顯示關(guān)閉寫(xiě)指令 01H:顯示清屏寫(xiě)指令 06H:顯示光標(biāo)移動(dòng)設(shè)置寫(xiě)指令 0CH:顯示開(kāi)及光標(biāo)設(shè)置液晶初始化程序:; =; 初始化; =INIT:MOVA,#38H;#38H->ALCALLWIR;調(diào)寫(xiě) IR 子程序MOVA,#0E
32、H;#0EH->A( 顯示開(kāi),光標(biāo)開(kāi),光標(biāo)閃爍)LCALLWIR;調(diào)寫(xiě) IR 子程序MOVA,#06H;#06H->ALCALLR;調(diào)寫(xiě) IR 子程序RET;返回寫(xiě)指令與數(shù)據(jù)的程序設(shè)計(jì)WORD 完美格式下載可編輯專業(yè)資料因?yàn)楸驹O(shè)計(jì)是顯示溫度值,所以不要讀數(shù)據(jù),只需寫(xiě)入指令與數(shù)據(jù)即可。下面著重介紹一下1602 寫(xiě)指令及數(shù)據(jù)的時(shí)序特點(diǎn);如圖 4-4-2是 1602 寫(xiě)操作時(shí)序(圖 4-4-2時(shí)序圖)按照?qǐng)D時(shí)序?qū)懼噶罴皵?shù)據(jù)程序如下:; =;寫(xiě)指令; =WIR: ACALL CKLCD;調(diào)查空閑子程序CLR E;E清 0CLR RS;RS清 0CLR RW;RW清 0SETB E;E置 1
33、WORD 完美格式下載可編輯專業(yè)資料MOV P0,A;A->P0CLRE;E清0RET;返回; =;寫(xiě)數(shù)據(jù); =WDR: ACALL CKLCD;調(diào)查空閑子程序CLR E;E清 0SETB RS;RS置 1CLR RW;RW清 0SETB E;E置 1MOV P0,A;A->P0CLR E;E清 0RET;返回4.5矩陣鍵盤程序設(shè)計(jì)矩陣鍵盤又稱為行列式鍵盤,它是用4 條 I/O 線作為行線, 4 條 I/O 線作為列線組成的鍵盤。本模塊設(shè)計(jì)是先讀取鍵盤的狀態(tài),然后得到按鍵的特征編碼,再而讓液晶顯示。下面介紹一下鍵盤掃描的過(guò)程。先從 P2 口的高四位輸出低電平,低四位輸出高電平,從P
34、2 口的低四位讀取鍵盤狀態(tài)。再?gòu)腜2 口的低四位輸出低電平,高四位輸出高電平,從P2 口的高四位讀取鍵盤狀態(tài)。將兩次讀取結(jié)果組合起來(lái)就可以得到當(dāng)前按鍵的特征編碼。使用上述方法我們得到16 個(gè)鍵的特征編碼。WORD 完美格式下載可編輯專業(yè)資料舉例說(shuō)明如何得到按鍵的特征編碼:假設(shè)“ 1”鍵被按下,找其按鍵的特征編碼。從 P2 口的高四位輸出低電平,即 P2.4 P2.7 為輸出口。低四位輸出高電平,即 P2.0 P2.3 為輸入口。讀 P2 口的低四位狀態(tài)為“ 1101 ”,其值為“ 0DH”。再?gòu)?P2 口的高四位輸出高電平,即 P2.4 P2.7 為輸入口。低四位輸出低電平,即 P2.0 P2
35、.3 為輸出口,讀 P2 口的高四位狀態(tài)為“ 1110”,其值為“ E0H”。將兩次讀出的P2 口狀態(tài)值進(jìn)行邏輯或運(yùn)算就得到其按鍵的特征編碼為“EDH”。用同樣的方法可以得到其它15 個(gè)按鍵的特征編碼。; =;按鍵掃描子程序; =KEY_SCAN:;識(shí)別鍵盤有無(wú)鍵按下子程序MOV P2,#0F0H;置列線為 0,行線為 1MOV A,P2;讀 P2口ANL A,#0F0H;取出高四位MOV B,A;暫存到 BMOV P2,#0FH;置列線為 1,行線為 0MOV A,P2;讀 P1口ANL A,#0FH;取出低四位ORL A,B;高四位與低四位邏輯或運(yùn)算重新組合CJNE A,#0FFH,KEY
36、_IN1;0FFH為無(wú)按鍵按下WORD 完美格式下載可編輯專業(yè)資料RETKEY_IN1:;識(shí)別具體按鍵值子程序MOV B,A;將按鍵的特征編碼暫存于BMOV DPTR,#KEYTABLEMOV R3,#0FFHKEY_IN2:INC R3;順序碼加 1MOV A,R3MOVC A,A+DPTR;查表CJNE A,B,KEY_IN3;比較,若相同則找到按鍵的特征編碼。MOV A,R3;找到特征編碼后,取順序碼MOV 30H,A;存入 30H單元RETKEY_IN3:CJNE A,#00H,KEY_IN2;末完,繼續(xù)查RET;00H為結(jié)束碼KEY_TABLE:DB 0EEH,0EDH,0EBH,0
37、E7H,0DEH;0,1,2,3,4,順序碼DB 0DDH,0DBH,0D7H,0BEH,0BDH;5,6,7,8,9,順序碼DB 0BBH,0B7H,07EH,07DH,07BH, 077H;A,B,C,D,E,F順序碼DB 00H;結(jié)束碼WORD 完美格式下載可編輯專業(yè)資料4.6步進(jìn)電機(jī)程序設(shè)計(jì)步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。通俗一點(diǎn)講:當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(及步進(jìn)角)。可以通過(guò)控制脈沖個(gè)數(shù)來(lái)控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)還可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。所以在軟件編寫(xiě)
38、時(shí)一定要注意步進(jìn)電機(jī)時(shí)序的變化,時(shí)序圖如圖(4-6 )13571357135713ABCD( 圖 4-6步進(jìn)電機(jī)時(shí)序圖 );=;步進(jìn)電機(jī)子程序;=MOTO:MOV SP,50HSTOP:MOV P1,#0FFH;步進(jìn)電機(jī)停轉(zhuǎn)LOOP:JNB K1,MZZ2;是否 K1按下,是則轉(zhuǎn)正轉(zhuǎn)模塊JNB K2,MFZ2;是否 K2按下,是則轉(zhuǎn)反轉(zhuǎn)模塊JNB K3,STOP1;是否 K3按下,是則轉(zhuǎn)步進(jìn)電機(jī)停轉(zhuǎn)WORD 完美格式下載可編輯專業(yè)資料JMP LOOP;循環(huán)STOP1: ACALL DELAY;按 K3鍵,消除抖動(dòng)JNB K3,$;K3放開(kāi)否?ACALL DELAY;放開(kāi)消除抖動(dòng)JMP STOP;步進(jìn)電機(jī)停轉(zhuǎn)MZZ2
溫馨提示
- 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 游戲軟件發(fā)布及授權(quán)使用合同
- 專業(yè)律師事務(wù)所有償法律咨詢合同
- 2025年錘紋漆合作協(xié)議書(shū)
- 房屋裝修半包合同樣本
- 借款抵押車輛合同
- 解決方案研討會(huì)邀請(qǐng)函
- 品牌租賃住宅合同
- 人才服務(wù)協(xié)議書(shū)
- 土地儲(chǔ)備與開(kāi)發(fā)合作協(xié)議
- Recycle 2(教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版英語(yǔ)五年級(jí)上冊(cè)
- 粒籽源永久性植入治療放射防護(hù)要求
- 新聞選題申報(bào)單
- 雙減政策之下老師如何打造高效課堂
- 新員工入職健康體檢表
- 醫(yī)學(xué)倫理審查申請(qǐng)表
- 養(yǎng)老院行業(yè)現(xiàn)狀分析-2023年中國(guó)養(yǎng)老院行業(yè)市場(chǎng)發(fā)展前景研究報(bào)告-智研咨詢
- 廣東省特種作業(yè)操作證核發(fā)申請(qǐng)表
- 胸腔穿刺知情同意書(shū)
- 學(xué)校物業(yè)管理機(jī)構(gòu)設(shè)置與運(yùn)作方案
- 農(nóng)村住房竣工驗(yàn)收記錄表
- 2020-2021學(xué)年人教版道德與法治八年級(jí)下冊(cè)全冊(cè)教材答案
評(píng)論
0/150
提交評(píng)論