基于單片機的智能垃圾桶設計
《基于單片機的智能垃圾桶設計》由會員分享,可在線閱讀,更多相關《基于單片機的智能垃圾桶設計(33頁珍藏版)》請在裝配圖網上搜索。
1、龍巖學院畢業(yè)設計 題目: 基于單片機的智能垃圾桶設計 專業(yè): 電子信息工程 學號: 2014041808 作者: 陳志涵 指導教師(職稱): 曾瑋 副教授 二一六年五月二十三日基于單片機的智能垃圾桶設計【摘要】本文提出一種基于單片機STC89C51的智能垃圾桶的設計。系統(tǒng)主要由超聲波測量距離模塊、光電感應模塊、電機模塊和語音提示模塊等功能模塊組成,以單片機為控制器,通過超聲波傳感器、光電傳感器來獲取距離數(shù)據(jù),再通過數(shù)模轉換及單片機處理后發(fā)出相應的命令,外圍電路執(zhí)行相應的動作,假設當超聲波傳感器檢測到人距離垃圾桶的距離小于設定距離時,電機轉動垃圾桶蓋自動翻開;如果光電傳感器檢測到垃圾桶裝滿,系統(tǒng)
2、就會有語音進行提示;在規(guī)定時間對垃圾桶進行噴灑消毒劑消毒。本設計與傳統(tǒng)垃圾桶相比,不僅結構簡單、性能穩(wěn)定,且具有操作方便、低成本、智能化等優(yōu)點,能有效提高垃圾分類的效率,是減少環(huán)境污染的一個可行的措施?!娟P鍵詞】單片機 光電傳感器 超聲波傳感器 智能垃圾桶IDesignofIntelligentGarbageBinBasedonSingleChipMicrocomputer【Abstract】 This paper is a design of intelligent ashbin based on MCU STC89C51, which is composed of ultrasonic d
3、istance measuring module, photoelectric sensor module, motor module and the voice prompt module function module. With MCU as the controller, ultrasonic sensors and photoelectric sensors are used to obtain the distance data, and then issue the corresponding command through the digital to analog conve
4、rsion and single chip processing and peripheral circuits execute corresponding action, hypothesis when the ultrasonic sensor etects that the distance between the people and the garbage bin is smaller than the set distance, the motor rotates a trash can lid opens automatically, if full of photoelectr
5、ic sensor detection to the garbage can, the system will have the voice prompt and can be sprayed disinfectant for the garbage in the prescribed time . Compared with the traditional garbage can, the design has the advantages of simple structure, stable performance, convenient operation, low cost, int
6、elligent, etc., and can effectively improve the garbage classification and reduce the environmental pollution.【Key Words】 singlechip Photoelectric sensor ultrasonic sensor Intelligent garbage can I基于單片機的智能垃圾桶設計目錄第1章 緒 論11.1 選題意義11.2 發(fā)展現(xiàn)狀及趨勢11.3 課題的主要內容21.3.1 課題內容21.3.2 設計內容21.4 本章小結2第2章 系統(tǒng)硬件電路32.1 系
7、統(tǒng)總體框架32.2 單片機最小系統(tǒng)32.2.1 STC89C51RC單片機簡介32.2.2 復位電路42.3 光電傳感器模塊52.4 電機模塊62.5 超聲波測距模塊72.6 語音模塊82.7 噴灑消毒劑電路82.8 本章小結9第3章 系統(tǒng)軟件設計103.1 系統(tǒng)總體程序設計流程圖103.2 超聲波檢測程序設計113.3 語音模塊的程序設計123.4 自動消毒的程序設計133.5 本章小結13第4章 系統(tǒng)調試144.1 硬件調試144.2 軟件調試14第5章 成品模擬及設計總結165.1 成品模擬165.2 設計總結18致謝20參考文獻21附錄一22附錄二23第1章 緒 論1.1 選題意義現(xiàn)如
8、今,垃圾存在于我們生活各個方面,同樣也影響我們生活的各個方面,倘若不能及時有效地解決,將會帶來相當棘手的問題。對于如何處理垃圾問題的措施也是不勝枚舉,概括起來主要有兩大方向,一個從生產方面入手,比如鼓勵生產使用如遇潮濕可很快溶化的塑料袋或是容易降解的外包裝;另一個就是廢物回收處理,而將垃圾進行分類回收就是其中一種有效的辦法。而作為存放垃圾的垃圾桶,已然成為了我們生活中不可或缺的物品了,不僅在家里房間里需要它,在公共休閑娛樂場所更是不可或缺的。市面上的垃圾桶也是總類繁多,有的垃圾桶更是與裝飾品結合起來,既實用又美觀,普遍也都是有進行垃圾的分類。但就目前看來,收益甚微,不論是在垃圾分類還是垃圾的存
9、放,人們在投放垃圾的時候有可能會接觸到細菌微生物,大家在投放垃圾的時候都是近而遠之,丟放垃圾的方式經常是拋的,“投籃”技術不佳的就很容易導致沒扔進垃圾桶了,從而污染了環(huán)境;而且普遍人們對垃圾分類的意識淡薄,如果在人們丟放垃圾的時候給予語音提示,相對于文字或者是圖片提醒來說的話,效果會更好,所以需要研究和開發(fā)一種集多種優(yōu)點且更加智能的垃圾桶。1.2 發(fā)展現(xiàn)狀及趨勢普通的垃圾桶主要有敞口式,腳踩式還有翻蓋式的,現(xiàn)在市面上已經有成熟的智能垃圾桶的產品了,采用超聲波或紅外范圍感測技術,能夠在手或者物體接近時,自動打開蓋子。雖然產品已經不再需要人用手或者腳踩的方式去打開蓋子,但是功能還是比較單一,一般適
10、用于家庭和辦公環(huán)境居多,而這類環(huán)境大多數(shù)人會傾向于購買普通的垃圾桶,因為對于像家庭這種小環(huán)境內,簡單的普通垃圾桶已經很適合了。還有一類是利用太陽能來給垃圾桶供能1,配備有壓縮機,當垃圾快要放滿時,壓縮機會短時間內把垃圾的體積壓縮為原來的四分之一,這樣大大增加空間利用率,但是不具備垃圾分類的功能。因為是利用太陽能,所以此類垃圾桶大抵都是適用于戶外環(huán)境,這也同時成為它局限了,商業(yè)價值不是很高,沒有得到廣大商家的青睞,沒有得到廣泛使用。伴隨著社會的不斷發(fā)展以及人們環(huán)保意識的不斷增強,垃圾處理問題必將越來越受到關注,從而也會提高垃圾桶廠家對新型智能垃圾桶的興趣,并帶動其走向“智能化”和“多樣化”?,F(xiàn)如
11、今,不論是國內還是國外,都還沒有開發(fā)出來可以用直接自動的把垃圾自行分類的控制系統(tǒng),現(xiàn)在的垃圾處理也是僅僅停留在對垃圾的簡單分類,比如說之前提到的將垃圾體積壓縮,目前來說要實現(xiàn)垃圾分類最終還是需要人類自己將垃圾進行分類。垃圾桶自動垃圾分類的實現(xiàn)還有很一段路要走,垃圾桶也會朝著這一方向發(fā)展,變得更加方便智能,變得更加衛(wèi)生、干凈,更貼近我們的生活,智能垃圾桶也會普及到家家戶戶。1.3 課題的主要內容1.3.1 課題內容設計并制作基于單片機的智能垃圾桶控制系統(tǒng),以51單片機為控制芯片,并結合所學知識以及相應的傳感器電路,實現(xiàn)更加智能化、更加適用于人類的垃圾桶,可實現(xiàn)以下幾點功能:1.自動檢測物體接近;
12、2.垃圾桶裝滿提示;3.垃圾桶蓋的自動開啟和關閉;4.間隔一定時間自動消毒;1.3.2 設計內容1.傳感器檢測電路;2.語音提示電路;3.自動開啟蓋子電路;4.自動消毒電路;1.4 本章小結通過這一章對智能垃圾桶的發(fā)展現(xiàn)狀以及未來發(fā)展的趨勢行進了詳細的介紹,我們知道垃圾桶在人們的生活中扮演著重要的角色,也闡明了課題設計的意義。了解了現(xiàn)階段智能垃圾桶的發(fā)展狀況,在設計思路上也有了方向。28第2章 系統(tǒng)硬件電路2.1 系統(tǒng)總體框架本次基于單片機的智能垃圾桶的設計所要實現(xiàn)的功能有:自動檢測物體接近、垃圾桶蓋的自動開啟和關閉、垃圾裝滿自動語音提示、定時自動消毒等。本系統(tǒng)不僅可以讓扔垃圾變得更方便,還可
13、以提高人們對垃圾分類的習慣,使環(huán)境更加干凈整潔。本次智能垃圾桶選用STC89C51RC單片機來控制。圖2-1 為系統(tǒng)框圖。 單 片 機光電傳感器模塊器自動翻蓋語音提示超聲波模塊定時消毒圖2-1 系統(tǒng)框圖2.2 單片機最小系統(tǒng)2.2.1 STC89C51RC單片機簡介如圖2-2為STC89C51RC引腳圖。圖2-2 STC89C51RC引腳圖本次設計使用一個STC89C51RC單片機2,由于具有技術十分成熟且穩(wěn)定的優(yōu)點,所以廣泛運用在電子電路設計中,其特點:4K字節(jié)的Flash閃存,32個可編程I/O端口線,128字節(jié)的內部RAM;兩個16位定時器/計數(shù)器,兩級5向量中斷結構,一個全雙工串行通信
14、端口,以及芯片上的時鐘振蕩器電路。51單片機P0端口口是開漏輸出,而P1、P2以及P3端口是弱上拉輸出。如果P0作為普通的I/O來用時,必須外部接上上拉電阻。而P1、P2、P3的結構差異不大,輸出接在上拉電阻與mos管漏極之間。2.2.2 復位電路復位電路的作用就是使系統(tǒng)回到最開始時的狀態(tài),有點類似于計算器的C鍵。51單片機的復位可以通過外部的電路來實現(xiàn),簡單的復位電路可以是電阻加上電容即可組成了。通常使用按鈕復位和上電復位兩個方式。本設計選用的是上電復位電路,如圖2-3所示,上電自動復位是vcc給電容c1充電加到rst上的高電平,這個高電平會隨著c1的充電漸漸下降,電容c1的充電時間決定了r
15、st上的高電平,而后電容相當于開路,rst拉低。圖2-3復位電路圖2.3 光電傳感器模塊光電傳感器模塊是通過反射型光電傳感器在檢測距離內檢測有沒有物體存在,通過比較器候輸出給單片機系統(tǒng),然后又后者程序執(zhí)行相應動作。該傳感器模塊采用2并行RPR220傳感器電路3,光電傳感器模塊電路圖如圖2-5所示。本次垃圾桶分為兩個小桶,所以由兩個反射型光電探測器RPR220和四電壓比較器LM3934組成。RPR220傳感器實際上是由兩部分組成,分別是紅外發(fā)射二極管和接收管,顧名思義,一個用于接收而另一個用于發(fā)射;LM3934是4電壓比較器,里面集成4個比較器,引腳圖如圖2-4所示。圖2-4 LM3934引腳圖
16、圖2-5光電感應模塊電路如圖2-5所示,就U4管來說,當沒有物體接近時,光電傳感器的發(fā)射管所發(fā)射的紅外光沒有發(fā)射回來,即接收管未接收到,接收管截止,3,4不通,則對于比較器的5腳就有一個電壓。比較器U5的4腳接華東變阻器,可滑動直至4腳電壓為2v上下,作為基準電壓;當光電傳感器接收管為接收到反射光,5腳有電壓,且比4腳的基準電壓大時,即正端大于負端,LM393的2腳輸出高電平給單片機;相反的,當有物體靠近,并且形成反射時,則LM393的2腳輸出低電平給單片機,執(zhí)行相應動作。2.4 電機模塊本次垃圾桶系統(tǒng)內部有兩個類別的小垃圾桶,配有一個大蓋子,即開蓋則兩個類別的小垃圾桶同時開啟,關閉也是。電機
17、模塊用于開啟和關閉垃圾桶的蓋子,需要較為精準的定位控制,所以相對于直流電機而言,步進電機在定位控制中較為出色。步進電機是開環(huán)控制元件4,它將電脈沖信號轉換為角位移或者是線位移。通常的狀況下脈沖個數(shù)和頻率直接決定著步進電機的轉速大小,給多少個脈沖即轉過多少角度,可控性和穩(wěn)定度上面很優(yōu)秀。脈沖序列的更變可以很輕松地變動轉向。把步進電機看成一個發(fā)動機的話,那么驅動信號就是讓步進電機運行的汽油,沒有汽油的話,發(fā)動機則無法工作,本次設計采用的電機驅動是ULN2003芯片5,驅動電路如圖2-6所示。圖2-6電機驅動電路圖ULN2003電流增壓大,可以帶高負載電流運行,可以用在各種有較大功率驅動的系統(tǒng).將U
18、LN2003的4到7引腳分別一次接入單片機的P2口,10到13引腳分別與步進電機的1至4接口相連接,控制步進電機的轉動。ULN2003的GND腳接地,9腳vcc和P1的5腳相連接,如圖2-7所示。單片機的P2.0口對應ULN2003的A,單片機的P2.1口對應ULN2003的B相,單片機的P2.2口對應ULN2003的C相,單片機的P2.0口對應ULN2003的D相。2.5 超聲波測距模塊超聲波測距模塊一共有4個引腳6,7,引腳1接電源,引腳4接地,觸發(fā)信號的輸入端接到單片機的P3.4端口,信號輸出端3腳接到P3.5端口。由單片機的I/O端口產生一10us以上高電平,單片機同時開始計時,當超聲
19、波被物體反彈回來并接收時,超聲波模塊會產生一個高低電平的跳變并輸出給單片機,單片機記錄發(fā)出方波到跳變的時間。通過公式:距離等于時間與聲速的乘積的一半,最終得出距離,本次設計沒有加入顯示模塊,沒有很精確的獨處距離并顯示,而是單單用于檢測物體靠近,而相較于光電檢測物體,超聲波的準確度和精度都比較高,而且穩(wěn)定性也比較好,不容易受環(huán)境因素干擾。具體模塊電路圖如圖2-7所示。圖2-7超聲波測距模塊電路圖2.6 語音模塊WT588D語音模塊是可重復擦除燒寫的的單片機語音芯片8,模塊的上位機軟件操作簡單容易上手,可以對任意語音進行組合。而且模塊與單片機可直接交互,可以通過發(fā)送地址碼來觸發(fā)播放指定的語音,模塊
20、可存儲220段的語音。本次設計采用三線串口的控制模式來控制語音輸出。語音模塊電路如圖2-8所示。圖2-8語音模塊電路圖圖2-9語音模塊引腳圖2.7 噴灑消毒劑電路由于本次設計主要側重于垃圾桶的控制系統(tǒng)的設計,所以用led指示燈來模擬消毒劑噴灑。當系統(tǒng)定時時間60ms到,單片機P3.3口變?yōu)榈碗娖?,led燈亮,即垃圾桶正在噴灑消毒劑進行消毒,led燈滅即停止,每60s循環(huán)一下,可有效的抑止細菌的滋生還有垃圾腐爛發(fā)臭。噴灑消毒劑電路如圖2-10所示。圖2-10噴灑消毒劑電路圖2.8 本章小結這一章對智能垃圾桶系統(tǒng)的幾個重要模塊的硬件進行了詳細的說明,在這一設計過程中,通過查閱書籍和網上資料,并結合
21、在學校學到的知識,一步步從整體的框架到具體的每個模塊的設計,最后得出最終的原理圖。每一個模塊的準確性和穩(wěn)定性都決定著最終整個系統(tǒng)的成敗。硬件部分的確定,也就為整個系統(tǒng)打下基石。第3章 系統(tǒng)軟件設計3.1 系統(tǒng)總體程序設計流程圖系統(tǒng)程序分為三個大塊,分別是超聲波檢測程序、自動消毒程序和語音提示程序。系統(tǒng)從外部接入5V電源,通電后,先把各個模塊初始化,然后系統(tǒng)開始計時,計時到達60s后,啟動自動消毒功能;在此期間,如果超聲波系統(tǒng)檢測到物體接近10cm后,啟動步進電機控制程序和語音提示功能,語音模塊提示將垃圾分類,并且步進電機同步正向轉動開啟垃圾桶蓋,3秒后反向轉動關閉;如果光電傳感器檢測到垃圾已滿
22、的話,也將啟動語音提示功能,語音提示“一號垃圾箱滿”或者“二號垃圾箱滿”,視情況而定,兩個類別的垃圾桶都裝滿則提示“一、二號垃圾箱已滿”。系統(tǒng)總體程序流程圖如圖3-1所示。開始模塊初始化超聲波測量距離判斷1號和2號垃圾桶滿的情況N到達消毒時間?N開門狀態(tài)?物體接近10cm?N垃圾已滿?NYYYY噴灑消毒劑電機正轉開門,語音播報:垃圾放置請分類延時3s關門語音播報相關信息“1號垃圾箱已滿”“2號垃圾箱已滿”圖3-1系統(tǒng)總體程序設計流程圖3.2 超聲波檢測程序設計超聲波主要運用在測量距離上面,通過單片機產生一段連續(xù)的高電平給超聲波,單片機同時開始計時,當超聲波被物體反彈回來并接收時,超聲波模塊會產
23、生一個高低電平的跳變并輸出給單片機,單片機統(tǒng)計處發(fā)出方波到跳變的時間。通過公式:距離等于時間與聲速的乘積的一半,最終得出距離。而本次設計最主要的是用來超聲波來檢測物體靠近與否。下圖為超聲波檢測程序流程圖。開始單片機發(fā)送脈沖給超聲波,開啟模塊定時器清零Nc_recive為高?Y開啟定時器c_recive為低?NY讀取時間,計算出距離返回圖3-2超聲波檢測程序流程圖3.3 語音模塊的程序設計本設計采用三線串口控制模式,不僅可以控制語音播放和停止,還能夠控制音量的高低。可以發(fā)送0219的地址位,每個地址對應相應語音段,最多220段語音段。復位信號在發(fā)碼前拉低5ms之后保持高電平,片選信號拉低5ms。
24、控制時序圖如圖3-3圖3-3超聲波測距子程序流程圖語音模塊控制時序圖框圖如圖3-4所示。初始化主循環(huán)N按鍵動作?Y地址累加發(fā)送串口程序圖3-4語音模塊控制時序框圖3.4 自動消毒的程序設計噴灑消毒劑部分設計由led模擬,時間到達60s開啟噴灑消毒劑,噴灑時間持續(xù)為1s,然后重新開始計時并循環(huán)。具體程序流程圖如下:開始開始計時N計時200ms?Yxiaodu累加NXiaodu大于等于300?Y消毒1秒,消毒置零重新計時返回圖3-5自動消毒程序流程圖3.5 本章小結程序就是一個系統(tǒng)的大腦,所有的命令都由它來發(fā)出,而程序流程圖就是來表示程序的框架,有利于增加程序的條理性,也有助于讀程序。從整體程序流
25、程圖細化到每個模塊子程序,它決定系統(tǒng)的實現(xiàn)的穩(wěn)定度和性能。第4章 系統(tǒng)調試硬件電路搭建和程序編寫完之后,就是對系統(tǒng)的調試了。調試過程中存在著很多不確定因素,在硬件設計和軟件設計若存在著缺陷或是錯誤,在調試階段就會被放大。4.1 硬件調試本次設計由于制作工序的關系選用普通的萬能板而沒有用pcb板來制作。然后對照著原理圖和元器件將器件的位置確定下來后,進行焊接。由于是萬能版,所以很多走線需要用到跳線來完成,這也影響到了這個設計的美觀。焊接前應先將各個模塊進行模擬,測試一下電路設計是否存在問題,把模塊電路先在面包板上搭建起來,然后可以通過led燈來觀察輸出是否正常,有的則需要借助示波器來進行觀察。在
26、調試過程中,發(fā)現(xiàn)了有錯焊的地方,如圖4-2所示,元器件焊點很近而且多,一不注意的話就可能就搭在一起了。這個故障也是花費大量的時間來排查,先通過程序運行的狀況將問題點大致范圍確定下來,然后再細致的排查故障點。圖4-1焊接完的萬能版4.2 軟件調試除了程序編寫的問題,軟件的調試是建立在硬件調試的基礎上來進行的。程序編寫最常見的故障就是編譯失敗了,本次使用的是c語言來編寫程序9,有幾次由于輸入法的問題一直導致編譯不成功,后面就比較注意這個問題并少犯錯;編寫完之后配合著硬件調試的同步進行,在確定了硬件沒問題后,調試起來就比較有針對性,效率也會大大增大,主要是參數(shù)的修改和程序的優(yōu)化,程序的優(yōu)化可以提高系
27、統(tǒng)的穩(wěn)定度,減少程序運行錯亂的發(fā)生。第5章 成品模擬及設計總結5.1 成品模擬經過反復實驗和不斷的調試,最終達到了預想的結果。當人或物體接近至距離超聲波傳感器小于10cm時,用白色紙板來模擬人體,如圖5-1所示。然后系統(tǒng)語音提示“垃圾放置請分類”,同時垃圾桶蓋子自動開啟,如圖5-2為垃圾桶蓋子關閉狀態(tài),然后步進電機慢慢左轉開啟,垃圾桶翻蓋狀態(tài)如圖5-3所示。圖5-1人接近垃圾桶模擬圖圖5-2垃圾桶蓋子關閉狀態(tài)圖5-3垃圾桶翻蓋狀態(tài)翻蓋動作完成后延時3s,讓人扔放垃圾,然后步進電機反向轉動重新關閉蓋子。本次設計的垃圾桶又分有兩個垃圾桶,用于垃圾的分類,有一號垃圾桶和二號垃圾桶,所以配有兩個用于檢
28、測垃圾是否裝滿的光電傳感器,當一號垃圾桶裝滿時(用手指模擬垃圾裝滿),語音提示“一號垃圾桶裝滿”如圖5-4,二號垃圾桶裝滿如圖5-5所示。圖5-4一號垃圾桶裝滿模擬圖圖5-5二號垃圾桶裝滿模擬圖當兩個垃圾桶同時裝滿時,也會對應的兩個指示燈都亮起,并且語音提示“一、二號垃圾桶已滿”。本次系統(tǒng)還有自動消毒功能,每過60秒,系統(tǒng)就會自動對垃圾桶進行消毒,由圖5-6自動消毒模擬圖中的紅燈來模擬,每次消毒的持續(xù)時間設為1秒。圖5-6自動消毒模擬圖5.2 設計總結本次基于單片機的垃圾桶的設計,具有自動開蓋,語音提示以及自動消毒等功能,主要的設計目的是為了提高人們的垃圾分類意識,將垃圾分類逐漸形成一種習慣,
29、提高垃圾回收利用率,從而減少人類對環(huán)境的污染。時代在進步,科技在進步,人類的環(huán)保意識也要也必將越來越強,智能垃圾桶也會在不久的將來走進我們的生活。本次設計通過對網上的現(xiàn)有產品的參考與借鑒,取其精華取其糟粕,舍棄了一些相對雞肋的功能,確定了較為合理的設計方案。當然,本次設計相比正真的智能垃圾桶還是很粗糙的10,也還有很多細節(jié)需要進行優(yōu)化的,這在后面會慢慢完善;還有就是一些功能的欠缺,如電源部分可以使用太陽能來供能,就更加環(huán)保了;還有可以加入對金屬的檢測分類,甚至是對垃圾自動進行分類11,這些在未來可能會實現(xiàn)的,由于本身學識的欠缺,還有各方面能力的不足,這次設計存在很多需要改進的地方,爭取在后面的
30、學習工作中,不斷改進。致謝經過這一段時間的忙碌,設計終于完成了,感謝我的指導老師曾瑋老師,在課題設計的時,我還是毫無頭緒也沒有方向,多虧了來時的指導踩最終確定下來,并給予我專業(yè)知識的指導,我才能如期完成我的畢業(yè)設計。老師平時課程繁多,還耐心的對我的論文進行審查批注,做事一絲不茍,細致入微,每次修改都是耐心的跟我講解修改的重點。除了感謝我的指導老師,也感謝任課老師們以及班上同學的幫助,有了老師們的認真教學才可以完成這次的設計。參考文獻1李偉國.網記看兩會:太陽能垃圾桶蓋子可自動開關http:/ 2張毅剛,彭喜元.單片機原理與應用設計M.電子工業(yè)出版社,2008.3國勝,陸明,常天慶.基于光電傳感
31、器電路的迷宮機器人設計J. 單片機與嵌入式系統(tǒng)應用,2011(01):65-674Mohanty Kant Nalin;Muthu Ranganath.Microcontroller based PWM controlled four switch three phase I nverter fed induction motor driveJ. Serbian Journal of Electrical Engineering 2010(02):195-204.5鄭振杰,江衍煊,游德智. 單片機結合ULN2003驅動步進電機J.電機技術,2010(06):44-466孔明,侯蕊,趙軍.基于F
32、PGA的超聲波測距系統(tǒng)J.儀表技術與傳感器,2013(06):78-83.7鄭暉,林樹青.超聲檢測M.中國勞動社會保障出版社,2008.8王春武,劉春玲,秦政坤,王廣德,王立忠. 基于WT588D模塊的語音播報系統(tǒng)設計J.電子技術應用,2012(01)21-121.9唐國明,王智群.C語言程序設計M.清華大學出版社,2009.10徐強民,陳學平,唐洪興,張華.農戶庭院衛(wèi)生垃圾箱制作及利廢技術J.農村能源,1996(01):24-25.11朱杜.垃圾分類管理到位J. 鄉(xiāng)鎮(zhèn)企業(yè)導報,2008(08):171-171.附錄一附錄二#include #define uchar unsigned cha
33、r #define uint unsigned int #include sbit led = P33; /xiaodusbit c_send = P34;/chaoshengjiesbit c_recive = P35;/chaoshengshouuchar flag_hc_value; bit flag_200ms ;sbit hongwai_1 = P15; /hongwai1sbit hongwai_2 = P16; /hongwai2uchar hw1_value ;uchar hw2_value ;uchar hw12_value ;uchar flag_k_g ; uint xi
34、aodu; long distance; uint set_d; bit flag_csb_juli; uint flag_time0; uchar menu_1; uchar a_a;sbit VRST = P14; sbit VBUSY= P13;sbit VSDA = P12; sbit VCS = P11; sbit VSCL = P10;uchar yujing3;uchar flag_z_f; unsigned char code zheng4=0 x08,0 x04,0 x02,0 x01;/zhengunsigned char code fan4=0 x01,0 x02,0 x
35、04,0 x08;/fanuint bjdj_value; uchar i;uchar flag_lj_value; uchar flag_guan;void delay_uint(uint q)while(q-);void bujindj() if(flag_z_f != 0)if(flag_z_f = 1) /kaibjdj_value +;if(bjdj_value = 127)flag_z_f = 0;P2 = P2 & 0 xf0;if(flag_z_f = 2) /guanif(bjdj_value = 1)flag_z_f = 0;bjdj_value = 1;P2 = P2 &
36、 0 xf0; bjdj_value -;for(i=0;i4;i+) if(flag_z_f = 2) /guanP2=zhengi; /else if(flag_z_f = 1)/kaiP2=fani; delay_uint(900); void delay_1ms(uint q)uint i,j;for(i=0;iq;i+)for(j=0;j120;j+);void delay_us (unsigned int us)while(us-)_nop_();void Send_threelines(unsigned char addr) unsigned char i;if(VBUSY =
37、1)VRST=0;delay_1ms(5);VRST=1;delay_1ms(20);VCS=0;delay_1ms(5); for(i=0;i=1;delay_us(150); VSCL=0;delay_us(150); VCS=1;void delay()_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); void send_wave()c_send = 1; delay();c_send = 0; TH0 = 0; TL0 = 0;TR0 = 0; while(
38、!c_recive); TR0=1;while(c_recive) flag_time0 = TH0 * 256 + TL0;if(flag_time0 40000) TR0 = 0;flag_csb_juli = 2;distance = 888;break ;else flag_csb_juli = 1;if(flag_csb_juli = 1)TR0=0; distance =flag_time0; distance *= 0.017; if(distance 500) distance = 888; void time_init() EA = 1; TMOD = 0X11; ET0 =
39、 1; TR0 = 1; ET1 = 1; TR1 = 1; void main()static uchar value;led = 0; delay_1ms(200);P0 = P1 = P2 = P3 = 0 xff;send_wave();time_init();while(1)bujindj(); if(flag_200ms = 1)flag_200ms = 0;xiaodu +;if(xiaodu = 300) /60sled = 0;if(xiaodu = 305) xiaodu = 0;led = 1;send_wave();if(distance = 2)if(flag_z_f
40、 = 0) Send_threelines(0 x1d); /fenleivalue = 0;flag_z_f = 1; /kaiflag_k_g = 1; flag_guan = 0;else value = 0;if(flag_z_f = 0)flag_guan+;if(flag_guan = 15) /3sflag_guan = 0;if(flag_k_g = 1)flag_k_g = 2;flag_z_f = 2; /guanif(hongwai_1 = 0) & (hongwai_2 = 0)/doumanhw12_value +;if(hw12_value 5)hw12_value
41、 = 0;Send_threelines(0 x1c); else hw12_value = 0;if(hongwai_1 = 0) /1hw1_value +;if(hw1_value 5)hw1_value = 0;Send_threelines(0 x1a); else/hw1_value = 0;if(hongwai_2 = 0) /2hw2_value +;if(hw2_value 5)hw2_value = 0;Send_threelines(0 x1b); else/hw2_value = 0;void time0_int() interrupt 1 flag_hc_value +; void time1_int() interrupt 3static uchar value;TH1 = 0 xf8;TL1 = 0 x30; /2msvalue+;if(value = 100)value = 0;flag_200ms = 1;
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。