大學(xué)生電子設(shè)計競賽設(shè)計報告-智能帆板控制系統(tǒng)_第1頁
大學(xué)生電子設(shè)計競賽設(shè)計報告-智能帆板控制系統(tǒng)_第2頁
大學(xué)生電子設(shè)計競賽設(shè)計報告-智能帆板控制系統(tǒng)_第3頁
大學(xué)生電子設(shè)計競賽設(shè)計報告-智能帆板控制系統(tǒng)_第4頁
大學(xué)生電子設(shè)計競賽設(shè)計報告-智能帆板控制系統(tǒng)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、參賽隊號:遠(yuǎn)帆一隊2011年全國大學(xué)生電子設(shè)計競賽設(shè)計報告競賽題號:帆板控制系統(tǒng)(F題)智能帆板控制系統(tǒng)【摘要】: 本設(shè)計使用STC89C52RC型單片機作為帆板控制系統(tǒng)的主控制器,采用編碼器作為角度傳感器,配以后端辨向計數(shù)處理電路,將信號送往單片機進行數(shù)據(jù)處理并實時顯示,通過控制風(fēng)速使得角度能夠得到精確控制,設(shè)計的風(fēng)機由直流電機控制,采用脈寬調(diào)制控制技術(shù),通過改變信號的占空比調(diào)節(jié)風(fēng)速,在單片機接受到了外部輸入的角度信號的前提下,不斷調(diào)整控制占空比控制電機轉(zhuǎn)速,直到帆板達到控制的角度。同時采用超聲波進行實時測距,根據(jù)測得的風(fēng)機與小車的距離調(diào)整脈寬調(diào)整步距,使得電機能夠迅速準(zhǔn)確驅(qū)動帆板到達制定角

2、度。本系統(tǒng)能夠?qū)崿F(xiàn)從零度到60度的帆板角度勻速控制,并且能夠準(zhǔn)確控制帆板達到45度角,在此基礎(chǔ)上實現(xiàn)了帆板控制系統(tǒng)的數(shù)字輸入智能控制方式,能夠通過人為設(shè)置角度后通過智能控制程序是得帆板達到要求的角度。【關(guān)鍵詞】:帆板控制系統(tǒng);脈寬調(diào)制控制;聲光提示;旋轉(zhuǎn)編碼器辨向處理,防抖動處理電路 1. 引言智能帆板控制系統(tǒng)的主要任務(wù)為制作一個帆板控制系統(tǒng),通過對風(fēng)扇轉(zhuǎn)速的控制,調(diào)節(jié)風(fēng)力大小,改變帆板轉(zhuǎn)角。該任務(wù)既包含有測量角度的環(huán)節(jié),還包含有對風(fēng)機的速度控制,如何根據(jù)角度變化及時來控制風(fēng)機的轉(zhuǎn)速等問題。關(guān)鍵問題之一為角度信息的采集,通常情況下角度信號的采集有角度傳感器,編碼器,編碼盤等器件,其主要的原理為

3、把整個圓周分為多個等份,到每個等分刻度時,光電信號變化,檢測到光電信號后轉(zhuǎn)換成對應(yīng)的角度信號。關(guān)鍵問題之二為電機的控制,常用的小型動力電機有直流電機和步進電機,直流電機的控制相對步進電機來說比較簡單,只要通過控制電機電壓或者控制電機的通電時間的占空比即能實現(xiàn)調(diào)速,步進電機牽涉到相序和信號發(fā)送頻率等問題,處理相對復(fù)雜。關(guān)鍵問題之三為如何準(zhǔn)備的根據(jù)帆板的角度信號及時的控制電機風(fēng)速,使電機能夠穩(wěn)定在指定的角度位置。關(guān)鍵問題之四為信息的及時顯示,用來顯示的器件通常有7段數(shù)碼管和液晶顯示模塊可以用來作為顯示,液晶顯示模塊使用靈活,控制相對有一定難度,但是解決了關(guān)鍵問題后使用和修改比較便利。綜合上述的關(guān)鍵

4、問題后,我們根據(jù)自身的技術(shù)積累,采用相關(guān)的單片機控制技術(shù)、傳感器技術(shù)、電路處理技術(shù)等,設(shè)計了一套智能帆板控制系統(tǒng),完成了大賽題目所有的基本功能和附加要求。 1.控制系統(tǒng)總體方案設(shè)計圖 1 帆板控制系統(tǒng)示意圖本題目主要是任務(wù)是通過控制風(fēng)機的風(fēng)力吹動帆板,使其達到指定角度,并且把角度信息實時顯示。其中的關(guān)鍵問題是如何測定帆板的轉(zhuǎn)角和如何控制電機的轉(zhuǎn)速來控制風(fēng)機的風(fēng)力。為此,我們設(shè)計了一套系統(tǒng)總體控制方案,如圖2所示。圖.系統(tǒng)總體控制方案圖2所示為本系統(tǒng)采用的整體設(shè)計方案,帆板擺動時,光電編碼器隨著帆板擺動,產(chǎn)生兩路正交的方波信號,由辨向處理電路處理后分正反向兩路信號送給單片機的和兩路計數(shù)器進行計數(shù)

5、,兩路計數(shù)器的差值乘當(dāng)量值即為角度信信息,由單片機控制液晶顯示器實時顯示,光電傳感器為絕對零位設(shè)定使用,帆板在不動情況下光電傳感器的信號為高電平,此時,送到單片機的中斷口,單片機處理中斷時把兩路計數(shù)器里面的數(shù)字清零,此時角度信息為零。單片機主要為電機驅(qū)動使用,單片機采集到角度信號后,由當(dāng)前角度信號與實際輸入角度進行比對,由角度差值,選擇合適的檔位,通過P0口把信息送到單片機2的P0口,并通知單片機2控制電機轉(zhuǎn)動,由此循環(huán)執(zhí)行,直到達到指定的角度。2. 系統(tǒng)理論分析與計算2.1 風(fēng)扇控制系統(tǒng)由于直流電機非常簡單容易實現(xiàn)調(diào)速,本控制系統(tǒng)風(fēng)扇扇葉驅(qū)動動力源采用直流電機,直流電機的調(diào)速有下面幾種方案一

6、:采用電阻網(wǎng)絡(luò)或數(shù)字電位器調(diào)整電動機的分壓,從而達到調(diào)速的目的。但是電阻網(wǎng)絡(luò)只能實現(xiàn)有級調(diào)速,而數(shù)字電阻的元器件價格昂貴,且可能存在干擾。更主要的問題在于一般電動機的電阻很小,但電流很大,分壓不僅會降低效率,而且實現(xiàn)很困難。方案二:采用繼電器對電動機的開或關(guān)進行控制,通過開關(guān)的切換對小車的速度進行調(diào)整。這個方案的優(yōu)點是電路較為簡單,缺點是繼電器的響應(yīng)時間長、機械結(jié)構(gòu)易損壞、壽命較短、可靠性不高。方案三:采用集成芯片L298N構(gòu)成驅(qū)動電路。L298N是雙H橋高電壓大功率集成電路,可用來驅(qū)動直流電動機和步進電動機等電感性負(fù)載。此電路用單片機控制L298N芯片使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整

7、電動機轉(zhuǎn)速。L298N是三極管工藝的,所以導(dǎo)通的飽和壓降比較大,1A時大約2-3A的壓降,這種電路效率非常高;此電路內(nèi)部包含4通道邏輯驅(qū)動電路,信號特別易于處理,電路保證了可以簡單地實現(xiàn)方向的控制;電子開關(guān)速度很快,穩(wěn)定性也極強,是一種廣泛采用的技術(shù)。通過比較,使用L298N芯片充分發(fā)揮了它的功能,能穩(wěn)定地驅(qū)動電機,且價格不高,故選用方案三。整個風(fēng)扇控制系統(tǒng)采用脈寬調(diào)速技術(shù),通過控制脈沖寬度來控制風(fēng)扇的轉(zhuǎn)速從而控制帆板的角度。 圖3 電機控制信號占空比的不同決定了直流電機的通電時間,也決定了直流電機單位時間轉(zhuǎn)過的角度,及速度,所以通過占空比的控制可以準(zhǔn)確控制風(fēng)扇的風(fēng)速。2.2 角度測量處理系統(tǒng)

8、2.2.1角度測量處理系統(tǒng)設(shè)計 根據(jù)碼盤形式光電編碼器分為絕對式和增量式兩種。絕對式碼盤在任意位置都可給出與位置相對應(yīng)的數(shù)字轉(zhuǎn)角輸出量 ,故不存在四倍頻的問題。增量式碼盤是根據(jù)軸所轉(zhuǎn)過的角度 ,輸出一系列脈沖 ,并通過計數(shù)電路 ,對脈沖進行累計計數(shù).得到相對角位移量。由于單個絕對碼盤的角位移的測量范圍僅為 0 360 ,需多個碼盤才能測量大于 360的角位移 ,從而提高了系統(tǒng)的價格和復(fù)雜程度 ,而增量式碼盤轉(zhuǎn)角測量范圍只受計數(shù)電路的位數(shù)限制 ,結(jié)構(gòu)簡單 ,價格低廉 ,應(yīng)用廣泛,所以本系統(tǒng)角度測量采用編碼器,角度的測量采用 200線的歐姆龍旋轉(zhuǎn)編碼器,型號為,光電編碼器是高精度控制系統(tǒng)常用的位移

9、檢測傳感器。當(dāng)控制對象發(fā)生位置變化時 ,光電編碼器便會發(fā)出A、 B 兩路相位差90 的數(shù)字脈沖信號。正轉(zhuǎn)時A 超前B 為 90 ,反轉(zhuǎn)時B 超前A為90 。脈沖的個數(shù)與位移量成比例關(guān)系 ,因此 ,通過對脈沖計數(shù)就能計算出相應(yīng)的位移。 圖4 編碼器正反轉(zhuǎn)輸出波形整個角度測量的方案為: 圖 5 角度處理系統(tǒng)編碼器兩路方波信號通過信號辨向處理電路后分為正向和反向兩路送給單片機計數(shù)器,單片機計數(shù)器內(nèi)的數(shù)值差代表了角度位移的大小,乘與角度當(dāng)量后為角度信息,由單片機送往液晶顯示器顯示。2.2.2 編碼器抖動信號的處理A 專用倍頻細(xì)分處理芯片處理抖動。對于確定的碼盤,其脈沖周期T 對應(yīng)的碼盤角位移固定為,故

10、其量化誤差為 /2。如果能夠?qū) 或B 信號四倍頻,則計數(shù)脈沖的周期將減小到T/4 。量化誤差下降為 /8 ,從而使光電編碼器的角位移測量精度提高4 倍。在實際電路中,可以使用專用芯片將兩路正交的方波進行四倍頻后產(chǎn)生兩路加、減計數(shù)信號,送雙時鐘可逆計數(shù)器進行加、減計數(shù),也可直接送單片機進行數(shù)據(jù)處理,達到更集成化的效果。該類芯片包含相關(guān)時序模塊,可以處理由于抖動產(chǎn)生的高頻雜訊。 B 多級D 觸發(fā)器濾除抖動信號。多級 D 觸發(fā)器濾除法是利用電路對信號的延遲和門電路的邏輯運算能力來消除振動引起的高頻方波干擾脈沖, 防止誤計數(shù)。第一種方法需用專用的倍頻芯片,不容易獲得,成本也比較大,另外旋轉(zhuǎn)的速度要均

11、勻,且必須在一比較小的范圍內(nèi);第二種方法只有在觸發(fā)器級數(shù)大于3 的時候濾除的效果才比較明顯,而此時硬件資源開銷比較大,比較適合使用于以較高速率采集數(shù)據(jù)的環(huán)境中。本次設(shè)計由于時間緊張,無法采購到專用的倍頻處理芯片,所以只能采用方法二對抖動信號進行處理,對下面兩種方案進行了電路設(shè)計與驗證。方案一: 圖6 典型辨向處理電路當(dāng)光電編碼器順時針方向旋轉(zhuǎn)時 ,A相信號在相位上超前 B相信號 1 /4周期。經(jīng)過 D觸發(fā)器后 ,Q1為高電平 ,Q2為低電平 ,于是 , C1有計數(shù)脈沖 ,可接入雙向計數(shù)器的“+” 端 ,而 C2保持為低電平。反之 ,當(dāng)逆時針方向旋轉(zhuǎn)時, C1將保持低電平 , C2形成的計數(shù)脈沖

12、可作為雙向計數(shù)器“- ” 端的輸入信號,從而完成對光電編碼器輸出信號的計數(shù)。方案二: 圖7 防抖動的辨向處理電路信號經(jīng)過 D觸發(fā)器需要一定的時延 td,因此 ,相對于 t時刻的信號 A ( t)、 B ( t) ,第 i級的 D觸發(fā)器的輸出信號 Qi和 將在 t + i td時刻建立。因此 ,若電路有 n級 D觸發(fā)器組成 ,那么 ,將在 n td時間內(nèi) ,每隔 td產(chǎn)生一個信號 Qi和 ( i = 1, 2n) ,這些信號經(jīng)過“ 與 ” 運算后 ,得到用于順時針方向的計數(shù)信號 CW 和逆時針方向的計數(shù)信號CCW,見下式??紤]光電編碼器順時針方向旋轉(zhuǎn) ,當(dāng)在 ( t, t +n td)內(nèi)某一時刻

13、 ,信號 A、 B的相位差由于振動而被破壞并產(chǎn)生高頻干擾脈沖時 ,此干擾信號到達計數(shù)器的必要條件是 Q1 , Q2 Qn 全為“1” ,但是由于 D觸發(fā)器的延遲作用 ,而使 Q1 , Q2 Qn 全為“1” 的可能性得到扼制。若按等概率事件計算 ,高頻干擾信號經(jīng)過 n級 D觸發(fā)器到達計數(shù)器的概率為 1/2n 。方案三:采用高頻濾波消除抖動。可以通過低通濾波器實現(xiàn)高頻雜訊波的處理。本次設(shè)計三種方案都經(jīng)過了實驗驗證。具體實驗過程在測試章節(jié)詳細(xì)介紹。3.電路與程序設(shè)計1. 總體原理圖 圖8 總體電路原理圖 根據(jù)總體設(shè)計方案和大賽的任務(wù)細(xì)節(jié),我們設(shè)計了對應(yīng)的電路,主要有兩個單片機信號的通信處理通過P0

14、口交換信息,在達到45度時控制喇叭發(fā)聲的功放電路,還有就是對應(yīng)的光電閃爍,用于滿足基本要求中的第三項。 基本的單片機系統(tǒng)最小板我們在比賽中通過PCB板雕刻機自動雕刻,目前該最小系統(tǒng)運行良好。2.辨向處理電路圖。 圖9根據(jù)處理電路的需要,設(shè)計了編碼器辨向處理電路圖。采用的光電編碼器為集電極開路的編碼器,所以輸出端口需要接上一個上拉電阻到電源正極,信號出來后通過光耦隔離,兩路正交的編碼器信號通過辨向電路后分正反轉(zhuǎn)兩路信號送往單片機的計數(shù)端口。3.電源模塊設(shè)計 圖10方案一:所有器件采用單一電源12V(8節(jié)AA電池)。這樣供電比較簡單;但是由于電動機啟動瞬間電流很大,而且L298驅(qū)動的電動機電流有波

15、動,會造成電壓不穩(wěn)、有毛刺等干擾,嚴(yán)重時可能造成單片機系統(tǒng)掉點電,缺點十分明顯。 方案二:雙電源供電。將電動機驅(qū)動與單片機以及其周圍電路電源完全隔離。這樣做雖然不如單電源方便靈活,但可以將電動機驅(qū)動所造成的干擾徹底消除,提高了系統(tǒng)穩(wěn)定性。我們認(rèn)為本設(shè)計的穩(wěn)定可靠性更為重要,故擬采用方案二。 編碼器供電需要+12V電源,單片機、其它元件和編碼器輸出信號上拉電阻端需要+5V電源,還有就是風(fēng)扇電機的驅(qū)動需要有+15V的電源。我們采用方案二制作了電源模塊。供應(yīng)12V和5V的電源,由于風(fēng)機需要較大的電流,所以供電選用了開關(guān)電源+24V通過穩(wěn)壓塊7815穩(wěn)定到15V輸出。2程序設(shè)計思路 整個設(shè)計程序模塊中

16、,單片機1作為主控模塊使用,主要負(fù)責(zé)計數(shù) 顯示,后發(fā)送控制調(diào)節(jié)信號。單片機二主要是接受控制信號并控制電機速度。程序開發(fā)流程圖:單片機1程序流程圖:程序初始化讀取定時器信號實時顯示到液晶器功能模塊開始圖11 功能處理模塊中包括有定時器溢出處理,外部中斷1處理,鍵盤響應(yīng)處理模塊等。定時器不管正向還是反向都要計數(shù),一旦溢出,可以通過定時器中斷,用65536減去另外一個定時器的計數(shù),并且賦值給溢出的定時器。鍵盤輸入模塊處理中,一旦獲得了對應(yīng)需要控制的角度信息后,馬上讀取角度信息進行比對,然后根據(jù)比對信息調(diào)節(jié)占空比實現(xiàn)角度閉環(huán)控制,但是里面設(shè)置了控制次數(shù),一旦到達控制次數(shù),不再調(diào)節(jié),以防止死循環(huán)。單片機

17、2程序流程圖: 單片機2為輔助控制模塊,主要是為了減輕單片機1的控制負(fù)擔(dān),其功能相對較為簡單,主要是具體實現(xiàn)電機的脈寬調(diào)制控制,單片機總是查詢與單片機1交換信號窗口,一旦單片機發(fā)送需要控制電機的信息后,馬上通過設(shè)計端口P1.0獲取第一個單片機發(fā)來的脈寬調(diào)制信息,得到后控制電機達到對應(yīng)轉(zhuǎn)速。是否有脈寬信號開始控制電機無有圖124.測試方案與測試總結(jié)1.防抖動處理電路的測試帆板在穩(wěn)定位置時候的抖動信號無法進行處理,所以系統(tǒng)在動態(tài)時候會引起誤計數(shù),按照第二部分中的防抖動處理方案中的方案二,設(shè)計加工了相關(guān)電路板,但是在調(diào)試過程中,發(fā)現(xiàn)由于兩路輸入的與門在制作四路輸入的與門時,存在邏輯競爭冒險,而手頭又

18、沒有四路輸入與門,所以后面采用了方案三中的低通濾波處理,但是抖動信號的處理效果不是很明顯。 2.角度實時顯示測試 角度實時顯示測試,從角度0到角度60度由人任意移動角度,我們設(shè)計了液晶顯示計數(shù)和量角器計數(shù)的兩種方法,并且通過兩種方法進行比對,通過對060度范圍進行了30等分進行了測量,發(fā)現(xiàn)整個移動過程中,實時顯示的誤差為3度左右,完全滿足實際需求。3.鍵盤控制風(fēng)速在0-60范圍測試設(shè)置了兩個風(fēng)速控制按鈕,通過其中一個控制風(fēng)速度增加,另外一個減少,并顯示角度。通過多次檢測處發(fā)現(xiàn),角度完全在5度范圍內(nèi),滿足要求。4.帆板穩(wěn)定在45度的風(fēng)力測試。 帆板控制在45度范圍內(nèi),可以通過第三步中控制風(fēng)速增加

19、按鈕,一旦達到45度,蜂鳴器發(fā)出聲音,光電管發(fā)出彩色燈。5.鍵盤設(shè)定角度進行定位測試通過鍵盤控制輸入角度,系統(tǒng)自動辨識,該步驟我們也經(jīng)過測試,完全達到要求。 6風(fēng)機距離變化時鍵盤定位角度測試風(fēng)機距離變化時,通過鍵盤定位時候,我們通過一步定位法,先一步到達一定得風(fēng)速檔位,讀取實際角度,如果角度與讀入角度相比小或者大,及時朝不同方向改變占空比調(diào)節(jié)速度,實際結(jié)果稍微有所偏差,比規(guī)定角度偏大。5.結(jié)論 本次電子設(shè)計競賽帆板控制系統(tǒng)的制作經(jīng)過了多次摸索和實踐,終于實現(xiàn)了比賽的功能, 在編碼器抖動信號處理方面花費了大量的時間,通過本次比賽我們鍛煉了自己的設(shè)計應(yīng)用能力,在構(gòu)造嵌入式系統(tǒng)方面積累了經(jīng)驗.參考文

20、獻1. 單片機應(yīng)用系統(tǒng)設(shè)計何立民 編 航天航空大學(xué)出版社 2. 單片機基礎(chǔ)李廣弟 編 北京航空航天大學(xué)出版社 3. 新型實用電子電路400例何希才 編 電子工業(yè)出版社 4. 傳感器集成電路手冊,第一版趙負(fù)圖 編 化學(xué)工業(yè)出版社 5. 電力拖動自動控制系統(tǒng),第二版陳伯時 編 北京:機械工業(yè)出版社 6. 新編MCS-51單片機應(yīng)用設(shè)計,第一版張毅剛,彭喜元 編 哈爾濱工業(yè)大學(xué)出版社 7. 電子技術(shù)基礎(chǔ) 模擬部分(第五版)康華光 編 高等教育出版社8. 單片機原理及接口技術(shù) 余錫存 曹國華 編 西安電子科技大學(xué)9. 電子技術(shù)基礎(chǔ) 數(shù)字部分(第五版)康華光 編 高等教育出版社10. HCS12微控制器

21、原理及應(yīng)用,王威 編 北京航空航天大學(xué)出版社11. 常用電路模塊分析與設(shè)計指導(dǎo),王松武 編 清華大學(xué)出版社 12. 大學(xué)生電子設(shè)計與應(yīng)用,王彥朋 編 中國電力出版社 13. 模擬電子技術(shù)基礎(chǔ),黃麗亞、楊恒 編 機械工業(yè)出版社 程序附錄 /*- 名稱:PWM 調(diào)光 日期:2009.5 修改:無 內(nèi)容:1、學(xué)習(xí)目的:利用定時器產(chǎn)生PWM,了解原理和使用方法 2、硬件要求:LED燈 定時器 3、試驗現(xiàn)象:LED燈由亮到滅,由滅到亮逐步變化,也就是調(diào)光現(xiàn)象-*/#include /包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義#include#define Data P1 /數(shù)據(jù)端口#

22、define DataPwm P0sbit key4=P31;sbit key3=P36;sbit key1=P30;sbit key2=P37;sbit RS = P20;/27;sbit RW = P21;/31;sbit E = P22;/30;sbit Led = P23; /七彩閃光燈sbit Sound=P27;unsigned char PlusCounter,FlagAngle,SetAngle=2,flag=1,pwm_on=1;unsigned int num1,num2,Angle; /高電平時間、周期長度、角度、設(shè)定角度char data tab016=Set: ;ch

23、ar data tab116=Pwm: Angle: ;/ 微秒延時函數(shù) /*void DelayUs(unsigned char us)/delay us unsigned char uscnt; uscnt=us1; /*12MHz頻率*/ while(-uscnt);/ 毫秒函數(shù)聲明 /*void DelayMs(unsigned char ms) while(-ms) DelayUs(250); DelayUs(250); DelayUs(250); DelayUs(250); / 寫入命令函數(shù) /*void WriteCommand(unsigned char c) DelayMs(

24、5);/操作前短暫延時,保證信號穩(wěn)定 E=0; RS=0; RW=0; _nop_(); E=1; Data=c; E=0;/ 寫入數(shù)據(jù)函數(shù) /*void WriteData(unsigned char c) DelayMs(5); /操作前短暫延時,保證信號穩(wěn)定 E=0; RS=1; RW=0; _nop_(); E=1; Data=c; E=0; RS=0;/寫入顯示數(shù)組/*void WriteString(unsigned char s,char *ptr) unsigned char i; if(s=1) WriteCommand(0x80); else WriteCommand(0x

25、c0); for(i=0;i16;i+) WriteData(*(ptr+i); / 初始化 /*void InitLcd() DelayMs(15); WriteCommand(0x38); WriteCommand(0x38); WriteCommand(0x38); /設(shè)置顯示模式多發(fā)幾次 WriteCommand(0x06); /顯示光標(biāo)移動位置 WriteCommand(0x0c); /顯示開及光標(biāo)設(shè)置 WriteCommand(0x01); /顯示清屏/*/* 延時函數(shù) */*/void delay(unsigned int cnt) while(-cnt);/自動判斷是否達到設(shè)定

26、角度、/*void GoAngle(void) if(!key2) FlagAngle=1;/啟動設(shè)置的角度 if(FlagAngle)/緩慢平穩(wěn)的到達角度 switch(SetAngle) case 2:pwm_on=5;break;case 4:pwm_on=10;break;case 6:pwm_on=12;break;case 8:pwm_on=13;break;case 10:pwm_on=14;break;case 12:pwm_on=15;break;case 14:pwm_on=16;break;case 16:pwm_on=17;break;case 18:pwm_on=18

27、;break;case 20:pwm_on=19;break;case 22:pwm_on=20;break;case 24:pwm_on=21;break;case 26:pwm_on=22;break;case 28:pwm_on=23;break;case 30:pwm_on=25;break;case 32:pwm_on=26;break;case 34:pwm_on=27;break;case 36:pwm_on=29;break;case 38:pwm_on=30;break;case 40:pwm_on=33;break;case 42:pwm_on=34;break;case

28、44:pwm_on=37;break;case 46:pwm_on=39;break;case 48:pwm_on=41;break;case 50:pwm_on=44;break;case 52:pwm_on=46;break;case 54:pwm_on=48;break;case 56:pwm_on=49;break;case 58:pwm_on=53;break;case 60:pwm_on=55;break;default:break; DataPwm=pwm_on; FlagAngle=0; / 第三個要求的控制過程/*void yaoqiu3(void) tab04=L;tab0

29、5=e;tab06=t;tab07=g;tab08=o;WriteString(1,tab0); /顯示let go pwm_on=47;DataPwm=pwm_on; /先到達大概位置 if(Angle=45)/如果等于45度 Sound=1; /開啟聲音 Led=0; /開啟彩燈 if(Angle45) /如果大于45度 Sound=0; /關(guān)閉聲音 Led=1; /關(guān)閉彩燈pwm_on-;DelayMs(100);PlusCounter+; tab07=0xfe;tab08=0xfe;WriteString(1,tab0); /清除go /*/* 主函數(shù) */*/main() InitL

30、CD(); TMOD=0x55; TR0=1; /開啟T0 TR1=1; /開啟T1 ET0=1; /開啟T0中斷 ET1=1; /開啟T1中斷 EX0=1; /開啟外部中斷0 IT0=0; /電平觸發(fā) EA=1; /全局中斷開 DataPwm=pwm_on; /給單片機二一個初始化 tab115=0xdf;/度數(shù)的符號 WriteString(2,tab1); tab06=0xdf;/度數(shù)的符號 WriteString(1,tab0); Sound=0; /關(guān)閉聲音 Led=1; /關(guān)閉彩燈while(1) if(!key3&!key4) TH0=TL0=TH1=TL1=0; /按鍵計數(shù)器清

31、零 if(!key1) /轉(zhuǎn)換按鍵 flag+;if(flag3) flag=1; /標(biāo)志位是從1到3。 if(flag=1) tab14=pwm_on/10+0x30; tab15=pwm_on%10+0x30; WriteString(2,tab1); tab04=0xff; /把角度設(shè)置去掉 tab05=0xff; tab06=0xff; WriteString(1,tab0); if(flag=2) tab04=SetAngle/10+0x30; tab05=SetAngle%10+0x30; tab06=0xdf; WriteString(1,tab0); tab14=0xff; /

32、把度數(shù)設(shè)置去掉 tab15=0xff; WriteString(2,tab1); /第二和第三個基本要求:調(diào)風(fēng)速 ,在60度范圍內(nèi)變化,并能10秒達到45度 if(flag=1) /按鍵設(shè)置脈寬大小 while(!key3|!key4) if(!key3) pwm_on-;if(pwm_on99) pwm_on=99;DataPwm=pwm_on; delay(1000); tab14=pwm_on/10+0x30; tab15=pwm_on%10+0x30; WriteString(2,tab1); if(!key2) TH0=TL0=TH1=TL1=0;/將兩個計數(shù)器清零 if(flag=2) /按鍵設(shè)置角度大小 while(!key3|!

溫馨提示

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

評論

0/150

提交評論