基于AVR系統(tǒng)的新型智能感知機械花_第1頁
基于AVR系統(tǒng)的新型智能感知機械花_第2頁
基于AVR系統(tǒng)的新型智能感知機械花_第3頁
基于AVR系統(tǒng)的新型智能感知機械花_第4頁
基于AVR系統(tǒng)的新型智能感知機械花_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

基于AVR系統(tǒng)的新型智能感知機械花摘要:以ATmega16單片機為核心設計新型智能感知機械花,根據(jù)光強控制花的開合程度,根據(jù)溫度控制花的顏色變化,根據(jù)濕度控制花的亮度。關鍵詞:AVR單片機溫濕度光強機械花步進電機3基色LED燈正文:一、系統(tǒng)設計目的,用途,功能現(xiàn)在市面上有一種叫做flip-flap的太陽花玩具,因其可愛的造型而大受人們喜愛,在許多汽車中都可以見到。由此可以看到,在現(xiàn)在這樣一個快節(jié)奏的社會環(huán)境下,人們通過接觸自然而獲得身心放松的時間越來越少,由此產(chǎn)生了人們對能夠模仿動植物行為的室內(nèi)裝飾品的巨大市場需求。而我們的新型智能感知機械花就是為了迎合這種需求而設計的。我們知道睡蓮在白天開放,晚上閉合。我們通過對光強的探測來控制機械花的開閉來模仿睡蓮,并給人們提供光強和時間的信息。在花中還普遍存在花青素,它會隨著環(huán)境的溫、濕度來改變花的顏色。我們通過溫度傳感器來控制機械花的顏色,當溫度適宜時顯示綠色,溫度較低時顯示藍色,溫度較高時顯示紅色,這符合人們的一般認識。我們通過濕度傳感器控制燈亮得盞數(shù),濕度較高時,植物可以從水中獲得更多活力,顏色較亮,因此燈亮三盞,濕度一般時亮兩盞,濕度較低時亮一盞,以此來控制花的色澤。我們的設計全面突破了原有機械花的設計,給人以對自然環(huán)境的全面感受,使人通過感官更充分得獲得環(huán)境信息,調(diào)整身體機能,并產(chǎn)生認同感、舒適感和愉悅感。我們的作品可以作為一個不可多得的多功能居家室內(nèi)裝飾品、玩具和禮品。二、硬件設計思想和電路原理圖通過傳感器等敏感元件對環(huán)境參數(shù)的檢測,并將數(shù)據(jù)傳輸給ATmaga16L單片機來控制各模塊的狀態(tài),最終實現(xiàn)機械花的智能感知。我們的硬件設計是按系統(tǒng)來劃分的,兩個系統(tǒng)相互獨立且相互聯(lián)系,第一個系統(tǒng)是通過光敏電阻感知環(huán)境光強來控制步進電機的轉動,以此來控制機械花的開閉程度。這個系統(tǒng)要通過計時器中斷觸發(fā)單片機的AD轉換將光敏電阻上的模擬信號——電壓轉化為數(shù)字信號,根據(jù)電壓值大小來確定步進電機工作狀態(tài)(轉動方向、步進量、轉速),然后通過單片機將指令輸送到步進電機驅(qū)動芯片UNL2003上,由步進電機驅(qū)動芯片來控制步進電機的轉動。第二個系統(tǒng)是通過DHT11溫濕度傳感器將溫濕度信號直接以數(shù)字信號的方式通過串口通信傳送到單片機,再通過環(huán)境溫度狀況決定三盞RGB(三基色)LED燈亮的顏色,并通過濕度狀況決定三盞RGB(三基色)LED燈亮盞數(shù)。下圖為硬件連接框架圖ATmega16ATmega16芯片步進電機光敏電阻LED溫濕度傳感器電原理PCB圖三、硬件單元的使用1、主控模塊:我們使用的是Atmel公司的AVR高速8位微控制器ATmega16。ATmega16芯片為40個引腳,內(nèi)部集成了1K字節(jié)的RAM、512字節(jié)的EEPROM、16K字節(jié)的Flash以及2個UART串行接口等。由于采用了高性能的MCU,省掉了大量的外圍器件,如外擴RAM、ROM存儲器等,使硬件結構大大簡化,提高了系統(tǒng)的可靠性。ATmega16芯片具有先進的RISC結構,內(nèi)部集成兩個具有獨立預分頻器和比較器功能的8位定時器/計數(shù)器和一個具有預分頻器、比較功能和捕捉功能的16位定時器/計數(shù)器。可通過JTAG對MCU進行程序燒寫及仿真。內(nèi)置晶振,使用方便。

ATmega16芯片的引腳圖如下:其中的PD0即為RXD引腳(RXD是USART的數(shù)據(jù)接收引腳),PD1即為TXD引腳(TXD是USART的數(shù)據(jù)發(fā)送引腳),引腳11即為GND接地。

2、監(jiān)測模塊(1)溫濕度:用數(shù)字式溫濕度傳感器DHT11(單線雙向)下圖為DHT11溫濕度傳感器外觀驅(qū)動電路圖(2)光強:使用光敏電阻GL3516。光敏電阻外觀GL3516光敏電阻參數(shù):規(guī)格型號最大電壓

(VDC)最大功耗

(mW)環(huán)境溫度

(℃)光譜峰值

(nm)亮電阻

(10Lux)

(KΩ)暗電阻

(MΩ)100γ10響應時間

mS照度電阻特性上升下降Φ3系列GL351610050-30~+705405-100.60.530302光敏電阻電路圖3、電機驅(qū)動模塊利用驅(qū)動芯片將AVR單片機PB0到PB3口輸出信號驅(qū)動兩相步進電機轉動一定角度及轉動方向,使步進電機改變一定轉角,并通過與花瓣相連的傳動裝置改變花的開放程度。(步進電機采用UNL2003芯片驅(qū)動,2相6線步進電機,電壓5V)。4、顯示模塊RGBLED參數(shù):5MM圓頭RGB四腳全彩R:波長630-640nm亮度1000-1200MCD電壓1.8-2.0VG:波長515-525nm亮度3000-5000MCD電壓3.2-3.4VB:波長465-475nm亮度2000-3000MCD電壓3.2-3.4V2*5*5RGB四腳全彩R:波長630-640nm亮度300-500MCD電壓1.8-2.0VG:波長515-525nm亮度1200-1500MCD電壓3.2-3.4VB:波長465-475nm亮度600-800MCD電壓3.2-3.4V因考慮紅色光強相對其他兩種顏色較弱,所以在電路設計中提高了藍色和綠色串聯(lián)的電阻,降低這兩種顏色的光強,實現(xiàn)個顏色的相對平衡。RGB三基色LED四、軟件設計思想及軟件流程本系統(tǒng)編程部分工作采用C語言完成,采用模塊化的設計方法,利用各子程序?qū)崿F(xiàn)各部分功能和過程的入口,完成光和溫濕度變化識別,電機驅(qū)動、LED燈發(fā)光等功能。1、關于驅(qū)動步進電機,我們的思路是利用光敏電阻感知光強強弱并且改變其電阻,經(jīng)過電路部分將電阻的變化變?yōu)殡妷旱淖兓?,使每個特定的光強對應一定的電壓值,電壓信號經(jīng)ad轉換變?yōu)閿?shù)字信號,表示電壓大小。Ad轉換由計時器2ms中斷觸發(fā),根據(jù)電壓值大小確定步進電機應該處于的狀態(tài),然后將該狀態(tài)與接收信號之前的狀態(tài)比較,然后確定步進電機的工作方式(轉向及步進量的大?。?,然后用步進電機驅(qū)動機械花的開合,使其達到特定的狀態(tài).2、關于驅(qū)動led燈的顯示,我們的思路是利用溫濕度傳感器測得外界溫度與濕度,并且實現(xiàn)通信后由主機讀取,由溫度高低來驅(qū)動led的顏色顯示,由濕度高低來確定led燈所亮的盞數(shù)。開始光敏電阻轉化光信號成電壓值計時器中斷觸發(fā)開始光敏電阻轉化光信號成電壓值計時器中斷觸發(fā)ADC將電壓模擬量轉化成數(shù)字量(以電壓值表征光強)判斷電壓值是否大幅度增加達到一個更高閾值單片機控制步進電機正轉一定角度是否判斷電壓值是否大幅度減小達到一個更小的閾值返回是單片機控制步進電機反轉一定角度否溫濕傳感器感知環(huán)境溫度與濕度通過串口通信將溫濕度傳給單片機單片機根據(jù)溫濕度判斷并改變LED的顏色和亮數(shù)目五、軟件功能與調(diào)試:一、關于驅(qū)動步進電機正常工作的程序是全部程序的一個主要組成部分,之前寫的程序主要有邏輯混亂和時序混亂兩大方面的錯誤,另外還有一些語法上的小錯誤.關于邏輯方面,即我們的設計思路,見論文第四部分。關于時序方面,最主要的一點是步進電機八個節(jié)拍順序的排列,我們查閱了多處參考資料,發(fā)現(xiàn)多有出入,后來仔細研究了步進電機硬件的接線與結構,逐步確定了節(jié)拍順序,并且為了保證其正常工作,將驅(qū)動部分的程序?qū)懺谠赼d轉換中斷里,防止在執(zhí)行過程中被中斷。步進電機正轉8個節(jié)拍:0x01,0x09,0x08,0x0a,0x02,0x06,0x04,0x05(PB0到PB3對應A,B,A’,B’)反轉八個節(jié)拍:0x04,0x06,0x02,0x0a,0x08,0x09,0x01,0x05(PB0到PB3對應A,B,A’,B’)最后我們還發(fā)現(xiàn)一個能導致大問題的小錯誤,就是在定義步進電機狀態(tài)時用的是字符型數(shù)據(jù),但是最后它們相加減賦給整形數(shù)據(jù)i,這樣導致了i只能為正數(shù)而不能為負數(shù),使電機只能向一個方向轉,最后在多次仿真后發(fā)現(xiàn)此問題并改正。二、關于感知溫濕度并驅(qū)動3基色led燈顯示不能顏色與盞數(shù)。這部分程序的大框架已經(jīng)完成后,還是有一些小的邏輯錯誤和嚴重的時序上的問題。小的邏輯問題包括一些無意中造成的死循環(huán)等,經(jīng)過幾次檢查就已經(jīng)全部排除。邏輯思路見論文第四部分。但是,這個程序依然不能如愿運行,其根本原因是dht11型號的溫濕度傳感器屬于串口通信,輸出的數(shù)字信號(通過高低電平表示),如圖所示:通訊過程:其中的高低電平的時間都是幾十us而已(也就幾十個時鐘周期),我們在這么短的時間內(nèi)測得并且運用,一定得非常注意延時的長短,并且由于時序上的偏差容易累積,單純的使用延時總會使測得前幾位準確后幾位就不準確了。幸好cvavr自帶的延時函數(shù)延時非常準確,外加經(jīng)過查閱大量參考資料和請教學長,我們終于摸到了檢測的訣竅,寫出了運行比較穩(wěn)定的程序。經(jīng)過這個程序的編寫,我掌握了一般串口通信傳感器程序編寫的方法,能夠熟練地編寫與應用led燈驅(qū)動函數(shù)與延時函數(shù),并且我還掌握了一些很經(jīng)典的檢測語句的寫法,例如:while(DHT11_DATA_READ);//等待高電平結束等,還有經(jīng)典的檢錯語句的寫法,例如:u8flag=2;while(DHT11_DATA_READ&&u8flag++);if(u8flag==1)break;六、系統(tǒng)測試過程及測試數(shù)據(jù)

七、分析相應的指標參數(shù):1、電壓(表示光強)花瓣狀態(tài)小于2v閉合;大于2v小于2.5v半開;大于2.5v全開。2、相對濕度LED盞數(shù)小于30DB1;30DB到70DB之間2;大于70DB3;3、溫度范圍花的顏色小于11度藍色;大于11度小于19度藍綠色;大于19度小于25度綠色;大于25度小于35度藍紅色;大于35度紅色。八、設計所需的全部資源:ATmaga16L單片機/1,實驗板/1,5V電源/1,8.5V電源/1,步進電機/1,步進電機驅(qū)動板/1,DHT11溫濕度傳感器/1,光敏電阻/1,圓RBGLED/1,方RBGLED/2,電阻若干,導線若干。總花費60元左右。九、成員分工和工作情況:曹乘榕主要硬件設計,整體調(diào)試,及相關部件采購(占整體30%);黃晨主要整體軟件設計調(diào)試(占整體30%);胡騰部分軟件的設計,及其主體思路分析(占整體20%);陳仲乾主要論文負責,部分軟件思路設計(占整體20%)。十

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論