自動控制升降旗系統(tǒng)的設(shè)計_第1頁
自動控制升降旗系統(tǒng)的設(shè)計_第2頁
自動控制升降旗系統(tǒng)的設(shè)計_第3頁
自動控制升降旗系統(tǒng)的設(shè)計_第4頁
自動控制升降旗系統(tǒng)的設(shè)計_第5頁
已閱讀5頁,還剩66頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、自動控制升降旗系統(tǒng)的設(shè)計教 學(xué) 部工學(xué)一部專 業(yè)自動化班 級b641301學(xué) 號b64130106姓 名袁菲指導(dǎo)教師王艷輝負責(zé)教師王艷輝沈陽航空航天大學(xué)北方科技學(xué)院2010年6月沈陽航空航天大學(xué)北方科技學(xué)院畢業(yè)設(shè)計(論文)摘 要本文設(shè)計了一個升降旗自動控制系統(tǒng),可自動完成升降旗過程,能避免人為升降國旗與國歌演奏時間不協(xié)調(diào)的問題。系統(tǒng)有上升鍵和下降鍵,在按下上升鍵時,國旗勻速上升,同時自動演奏國歌,當上升到最高端時自動停止,國歌停奏;按下下降鍵時,國旗勻速下降,降到最低端時自動停止,下降過程中不演奏國歌。系統(tǒng)采用凌陽公司的61板作為主控單元,以spgt62c19b電機模組作為運動驅(qū)動電路,控制電

2、機轉(zhuǎn)動,再通過滑輪的傳動完成升旗和降旗。在升降旗的過程中l(wèi)ed顯示器實時顯示出國旗所在的高度及所用時長。該系統(tǒng)簡單實用,可擴展性較強,稍有改動即可實現(xiàn)半旗和不同國家升旗的功能。關(guān)鍵詞:61板;自動控制;升降旗abstractthis paper illustrates the design of a automatic ascend or fall nation flag system, it can ascend or fall nation flag of the automatic system, while it can avoid the coordinate of human at

3、tempt or effort nation flag and play nation anthem. the system has the keys of ascend and fall. to press the key of ascend, flag ascends with well-distributed and play nation anthem. when nation flag go up the highest, the step motor will stop turn. to press the key of fall, flag falls with well-dis

4、tributed . when nation flag fall down the lowest, the step motor will stop turn. in the process of fall down, wont play nation anthem.this system uses spce061a(abbreviation“61board” )of sunplus single-chip as the main control unit. and use spgt62c19b dual full-bridge motor drive as the driving circu

5、it,which control turn of step motor and use the pulley to drive the national flag to rise or lower . in the process, the led shows the time and the height of the national flag. the system is simple and practical, the extend markup very robust , it can accomplish half-mast and rise flag of different

6、country if this system will little change.key words: 61board;automatical;raise and up the flag目 錄第1章 緒論11.1立題的意義11.2課題研究任務(wù)及目標21.3課題主要內(nèi)容2第2章 自動控制升降旗系統(tǒng)的方案論證42.1單片機的選擇及論證42.2電機的選擇及論證42.2顯示的選擇及論證5第3章 自動控制升降旗系統(tǒng)的硬件設(shè)計63.1凌陽spce061a單片機簡介63.2步進電機驅(qū)動的設(shè)計103.2.1電機模組spgt62c19b簡介103.2.2步進電機驅(qū)動電路的設(shè)計143.2.3步進電機驅(qū)動的脈沖數(shù)

7、的計算163.3顯示電路的設(shè)計183.4按鍵電路的設(shè)計18第4章 自動控制升降旗系統(tǒng)的軟件設(shè)計204.1自動控制升降旗系統(tǒng)的軟件設(shè)計方案204.2計時子程序的設(shè)計214.4顯示子程序的設(shè)計224.5語音子程序的設(shè)計23第5章 系統(tǒng)調(diào)試與結(jié)果分析255.1系統(tǒng)的硬件調(diào)試255.2系統(tǒng)的軟件調(diào)試255.3調(diào)試結(jié)果及分析27結(jié)論與創(chuàng)新29致 謝30參考文獻31附錄 自動控制升降旗系統(tǒng)程序清單32附錄 自動控制升降旗系統(tǒng)元器件清單65iv沈陽航空工業(yè)學(xué)院畢業(yè)設(shè)計(論文)-i-沈陽航空航天大學(xué)北方科技學(xué)院畢業(yè)設(shè)計(論文)第1章 緒論1.1立題的意義自動升、降旗系統(tǒng)適應(yīng)領(lǐng)域廣泛,在許多政府部門、學(xué)校、廣場

8、和大型企業(yè)隨處可見到國旗的飄揚,隨著信息時代的飛速發(fā)展,人們物質(zhì)生活逐步提高,特別是伴隨著自動控制和單片機測控技術(shù)發(fā)展,可以使用自動控制系統(tǒng)來完成國旗的升、降控制、使升、降旗速度與國歌演奏時間準確配合,從而避免了人為升,降國旗與國歌演奏時間不協(xié)調(diào)而出現(xiàn)的尷尬場面發(fā)生,保證了國旗升、降儀式的嚴肅性。凌陽科技 (sunplus technology co., ltd.)是全球知名的芯片設(shè)計公司,致力于開發(fā)高品質(zhì)的集成電路芯片。凌陽科技運用多媒體影音、單片微處理器、數(shù)字信號處理器(dsp)等核心技術(shù),發(fā)展出多樣化的產(chǎn)品線,包括液晶ic、微控器ic、多媒體ic、語音、音樂ic及各式asic,并逐年擴增

9、中。 凌陽科技的 16位單片機的cpu內(nèi)核采用凌陽自主知識產(chǎn)權(quán)的nsp(microcontroller and signal processor)16位微處理器(以下簡稱nsp)。而圍繞nsp所形成的16位nsp系列單片機采用的是模塊化集成結(jié)構(gòu),以nsp內(nèi)核為中心,集成不同規(guī)模的rom、ram和功能豐富的各種外設(shè)接口部件,將單片機應(yīng)用引領(lǐng)到soc(system on chip)領(lǐng)域。 凌陽科技的nsp系列 16 位單片機主要產(chǎn)品有:帶語音功能的 spce 通用單片機系列,工業(yè)控制級控制型的spmc通用單片機系列,應(yīng)用于視頻游戲類產(chǎn)品的 spg系列單片機,帶有l(wèi)cd顯示驅(qū)動的spl16系列單片機

10、、專用于通訊產(chǎn)品的spt系列單片機,應(yīng)用于高檔電子樂器、和弦發(fā)聲的spf系列單片機等等。凌陽科技新近又推出了以nsp為內(nèi)核的spmc75f系列單片機,用于變頻馬達驅(qū)動控制,廣泛應(yīng)用于變頻家電、工業(yè)變頻器、工業(yè)控制等領(lǐng)域。 單片機的應(yīng)用領(lǐng)域越來越廣泛,無論是在生活、生產(chǎn)上,單片機無處不在。凌陽spce061a單片機作為一款語音功能卓越16位單片機受到越來越多業(yè)內(nèi)人士的青睞,因此順應(yīng)單片機發(fā)展的要求,學(xué)習(xí)凌陽單片機的軟件設(shè)計是我們學(xué)習(xí)的需求,也是適應(yīng)社會智能化、自動化的趨勢。1.2課題研究任務(wù)及目標本系統(tǒng)采用凌陽公司的spce061a十六位單片機作為主控單元,步進電機作為運動驅(qū)動電路, spce0

11、61a自帶鍵盤作為系統(tǒng)的輸入,通過液晶顯示器輸出系統(tǒng)信息。本系統(tǒng)的工作過程首先在液晶顯示器上顯示操作的提示信息,通過鍵盤輸入單片機,系統(tǒng)發(fā)出信號到電機控制器控制步進電動機的動作,通過滑輪的傳動完成升旗和降旗。升降旗過程中能實時顯示國旗的高度和時間,且升降旗均為勻速運動;國旗能在指定位置自動停止。本系統(tǒng)可實現(xiàn)以下功能:1) 按上升鍵后,國旗勻速上升,同時演奏國歌,上升到最高端自動停止,國歌停奏。按下降鍵后,國旗勻速下降,下降到最低端自動停止。國歌播放時間位43s;升降旗的時間均為43s。2) 可以避免誤動作,國旗在最高端時按上升鍵不起作用;在最低端時,按下降鍵不起作用。3) 旗幟的位置及升降旗的

12、時間可實時顯示。4) 關(guān)斷電源后再重新上電,旗幟所在的高度數(shù)據(jù)顯示不變。1.3課題主要內(nèi)容本文主要介紹了自動控制升降旗系統(tǒng)的軟硬件設(shè)計及實現(xiàn)方法,相應(yīng)的電路原理、以及各元器件性能型號的選擇,內(nèi)容主要分為三部分:第一部分是硬件和軟件的設(shè)計,包括硬件電路方案的設(shè)計、元器件的選擇等,具體的硬件電路包括步進電機驅(qū)動電路,spce061a單片機的最小系統(tǒng)電路。軟件設(shè)計采用模塊化的設(shè)計,具體的模塊包括系統(tǒng)主程序,升降旗子程序,時間、位置顯示子程序等,繪制軟件流程圖后,用c語言和匯編語言混編的形式編程。第二部分是軟、硬件仿真,程序采用c語言和匯編語言混合編寫,通過61板自帶的編譯軟件進行編譯調(diào)試,硬件電路用

13、ide軟件繪制。程序調(diào)好后,利用軟件生成61單片機能識別的后綴為“.s37”的機器碼文件,然后把程序下載到凌陽spce061a sunplus軟件運行環(huán)境下,運行程序和ide環(huán)境下的電路來實現(xiàn)設(shè)計要求的各功能。 第三部分是搭接61板和spgt62c19b電機模組的各個模塊,用61板自帶仿真器調(diào)試,上電后一切運行正常,系統(tǒng)實現(xiàn)預(yù)期的目標。第2章 自動控制升降旗系統(tǒng)的方案論證2.1單片機的選擇及論證單片機(即cpu)是本系統(tǒng)的工作核心,它的選擇不僅關(guān)系到系統(tǒng)的工作效率,同時也為系統(tǒng)的工作提供可靠的保障,因此cpu的選擇是系統(tǒng)的關(guān)鍵所在。方案一:采用at89c51單片機實現(xiàn),單片機軟件編程自由度大,

14、可用編程實現(xiàn)各種控制算法和邏輯控制。但是at89c51需外接模數(shù)轉(zhuǎn)換器來滿足數(shù)據(jù)采樣,硬件電路相對復(fù)雜。另外,增強型單片機在線操作不易掌握,需要用仿真器來實現(xiàn)軟硬件調(diào)試,較為繁瑣。方案二:采用凌陽公司推出的spce061a語音單片機及其開發(fā)板-61板作為控制模塊。spce061a的cpu時鐘為0.32mhz49.152mhz,速度可以滿足電機控制對實時性的要求;內(nèi)置2k words 的sram,為浮點運算提供了足夠的數(shù)據(jù)存儲器空間;具有7個觸鍵喚醒中斷和2個外部中斷,可以滿足本系統(tǒng)中鍵盤和傳感器對外部中斷的要求;凌陽自帶的三種格式的音樂播放格式能播放不同質(zhì)量,長度的音樂。spce061a可以通

15、過在線調(diào)試器probe和ez_probe實現(xiàn)在線程序下載和調(diào)試,極大地提高了開發(fā)效率。此外使用凌陽公司提供的音頻函數(shù)庫和spce061a豐富的時基中斷可以方便地實現(xiàn)功能擴展。具有保密能力watchdog功能。凌陽61單片機耗電少,可以滿足很多手提設(shè)備、掌上設(shè)備低能耗的需求,低能耗也是電子技術(shù)一直在追求的一個目標??煞奖愕挠脕韺崿F(xiàn)聲音錄制、播放、midi音樂合成和語音識別,相比別的單片機比較有特色??煞奖愕耐瓿梢幌盗谐思拥倪\數(shù),實現(xiàn)一些數(shù)據(jù)處理比較容易,別的單片機一般都不具備這種功能。芯片里具備在線仿真調(diào)試電路,使調(diào)試和程序下載更加方便,也把仿真器和燒錄器的成本給節(jié)省下來了。綜上所述,本次畢業(yè)設(shè)

16、計采用方案二。2.2電機的選擇及論證電機在本系統(tǒng)中是國旗升降的主要控制部件,它為系統(tǒng)提供動力支持。從以下幾個方面闡述本系統(tǒng)的方案。方案一:采用直流電機控制升降旗運動,直流電機力量大,能獲得較大的啟動轉(zhuǎn)矩,相應(yīng)快,但控制復(fù)雜,不能自鎖。方案二:采用步進電機控制升降旗運動,步進電機是一種作為控制用的特種電機, 它的旋轉(zhuǎn)是以固定的角度(稱為“步距角”)一步一步運行的, 其特點是沒有積累誤差(精度為100%), 所以廣泛應(yīng)用于各種開環(huán)控制。步進電機的運行要有一電子裝置進行驅(qū)動, 這種裝置就是步進電機驅(qū)動器, 它是把控制系統(tǒng)發(fā)出的脈沖信號轉(zhuǎn)化為步進電機的角位移, 或者說: 控制系統(tǒng)每發(fā)一個脈沖信號, 通

17、過驅(qū)動器就使步進電機旋轉(zhuǎn)一步距角。所以步進電機的轉(zhuǎn)速與脈沖信號的頻率成正比。所以,控制步進脈沖信號的頻率,可以對電機精確調(diào)速;控制步進脈沖的個數(shù),可以對電機精確定位目的。步進電機不需要使用傳感器就能精確定位,而且通過給定的脈沖周期,能夠以任意速度轉(zhuǎn)動,定矩運動較精確。雖然步進電機不能高速轉(zhuǎn)動,但根據(jù)題目要求的時間和移動距離,步進電機完全能夠符合要求,是該種要求下廣泛使用的一種電機。綜上所述,本次畢業(yè)設(shè)計采用方案二。2.2顯示的選擇及論證方案一:用led數(shù)碼管顯示旗幟所在的高度和升降旗時間,本題中只需要4只led數(shù)碼管進行動態(tài)顯示高度、時間,優(yōu)點是接口簡單,易于控制,而且比較直觀,可視化較強。方

18、案二:用lcd液晶顯示器顯示,優(yōu)點是能顯示更多的字符,有著良好的人機界面,缺點是控制比較復(fù)雜,性能價格比較高?;谏鲜龇治?,所以選擇方案一。第3章 自動控制升降旗系統(tǒng)的硬件設(shè)計鑒于spgt62c19b電機控制模組是為學(xué)生以及單片機愛好者學(xué)習(xí)步進電機和直流電機控制而設(shè)計的學(xué)習(xí)套件。且模組采用凌陽 spgt62c19b電機驅(qū)動芯片,配置兩相步進電機和直流電機各一臺,使用該模組的步進電機作為升降旗電機,再通過滑輪的傳動完成升旗和降旗,該模組提供4位led數(shù)碼管,可用來顯示升降國旗的所在高度及所用時長。而且該模組針對 spce061a 單片機設(shè)計,可以方便地用排線與 spce061a 精簡開發(fā)板(即“

19、61 板” )連接,可作為單片機開發(fā)前期,所以用spgt62c19b 電機控制模組作為畢業(yè)設(shè)計硬件,與凌陽spce061a共同完成此次畢業(yè)設(shè)計。具體的電機模組簡介在3.2.1節(jié)有詳細介紹。本系統(tǒng)硬件方框圖如圖3.1所示。凌陽spce061a板spgt62c19b電機模組圖3.1 系統(tǒng)硬件方框圖3.1凌陽spce061a單片機簡介 傳統(tǒng)的單片機學(xué)習(xí)硬件方案是編程器+開發(fā)系統(tǒng)+仿真器,由于這些設(shè)備相互之間各自獨立,在做畢業(yè)設(shè)計時,需要反復(fù)不停地拔插電纜、芯片、電源等,其繁瑣的連線和復(fù)雜的操作,極大的降低了畢業(yè)設(shè)計的效率,如稍有不慎就有可能造成器件和設(shè)備的損壞,會帶來不必要的麻煩或損失。而且備齊這些

20、設(shè)備往往需要一筆昂貴的費用。spce061a 單片機學(xué)習(xí)開發(fā)系統(tǒng)將開發(fā)軟件、單片機開發(fā)系統(tǒng)(或稱“實驗板” )、下載線 、編程器、仿真器進行完美的結(jié)合。spce061a單片機里面整合了進行在線編程控制的功能模塊,試驗過程中無需拔插任何電纜和芯片,也無需切換電源,配合下載線,就可輕松地將編譯好的代碼下載到開發(fā)系統(tǒng)上進 行驗證或演示,整個過程只需利用鼠標操作即可。當然也可以使用配套的開發(fā)環(huán)境直接對實驗板上的資源進行在線仿真。該開發(fā)系統(tǒng)擺脫了傳統(tǒng)、繁鎖的單片機學(xué)習(xí)方式,將當今最流行、最經(jīng)濟有效的學(xué)習(xí)方案完美地整合在了同一個系統(tǒng)中,是一個快捷、高效、靈活的單片機學(xué)習(xí)、開發(fā)方案。有了這個開發(fā) 系統(tǒng)就同時

21、擁有了學(xué)習(xí)實驗板、下載線、編程器、仿真器,具有非凡的性價比,因此很適合我們大學(xué)生學(xué)習(xí)和開發(fā)。所以,采用 spce061a 單片機進行開發(fā)比采用傳統(tǒng)單片機進行開發(fā)的過程簡化很多,簡單的說它的 開發(fā)過程就是首先在開發(fā)環(huán)境中編程,把編好的程序下載到開發(fā)系統(tǒng)上,通過開發(fā)環(huán)境提供的各類調(diào)試窗口進行仿真調(diào)試或者直接運行?!?1 板”是 spce061a emu board 的簡稱,是 spce061a 單片機的開發(fā)系統(tǒng),通過掛接不同的硬件和下載不同的程序就可實現(xiàn)各類特定功能的系統(tǒng)。由于具有語音處理的特色,即便是不掛接額外的硬件,下載一些開發(fā)環(huán)境下提供的程序就可以實現(xiàn)一個復(fù)讀機、語音萬年歷之類的系統(tǒng), 因此

22、可以完成國歌的播放。凌陽spce061a單片機性能:l 16 位nsp微處理器;l 工作電壓(cpu) vdd 為 2.43.6v (i/o) vddh 為 2.45.5vl cpu 時鐘:0.32mhz49.152mhz;l 內(nèi)置 2k字 sram;l 內(nèi)置 32kflash;l 可編程音頻處理;l 晶體振蕩器;l 系統(tǒng)處于備用狀態(tài)下(時鐘處于停止狀態(tài)),耗電僅為 2a3.6v;l 2個 16位可編程定時器/計數(shù)器(可自動預(yù)置初始計數(shù)值);l 2個 10位 dac(數(shù)-模轉(zhuǎn)換)輸出通道;l 32位通用可編程輸入/輸出端口;l 14個中斷源可來自定時器 a / b,時基,2個外部時鐘源輸入鍵喚

23、醒;l 具備觸鍵喚醒的功能;l 使用凌陽音頻編碼 sacm_s240 方式(2.4k 位/秒),能容納 210 秒的語音數(shù)據(jù);l 鎖相環(huán) pll 振蕩器提供系統(tǒng)時鐘信號;l 32768hz 實時時鐘;l 7 通道 10 位電壓模-數(shù)轉(zhuǎn)換器(adc)和單通道聲音模-數(shù)轉(zhuǎn)換器;l 聲音模-數(shù)轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器和自動增益控制(agc)功能;l 具備串行設(shè)備接口;l 具有低電壓復(fù)位(lvr)功能和低電壓監(jiān)測(lvd)功能;l 內(nèi)置在線仿真電路 ice(in- circuit emulator)接口;l 具有保密能力;l 具有 watchdog 功能。61板核心芯片spce061a注腳圖如圖

24、3.2所示:圖3.2spce061a注腳圖spce061a主要管腳描述表如下表3.1所示:表3.1 spce061a管腳描述表管腳名稱編號類型描述 ioa 15:84639輸入輸出ioa15:8:雙向 io 端口ioa 7:03427輸入輸出ioa7:0:通過編程,可設(shè)置成喚醒管腳ioa6:0:與 adc line_in 輸入共用iob 15:11 iob10iob9iob8iob7iob6iob5iob4iob3iob2iob1iob05054 5758596061626364656667輸入輸出輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸

25、出iob15:11 :雙向 io 端口。iob100 除用作普通的io 端口,還可作為: iob10:通用異步串行數(shù)據(jù)發(fā)送管腳 txiob9:timerb 脈寬調(diào)制輸出管腳 bpwmo iob8:timera 脈寬調(diào)制輸出管腳 apwmo iob7:通用異步串行數(shù)據(jù)接收管腳 rx iob6:雙向 io 端口iob5:外部中斷源 ext2 的反饋管腳 iob4:外部中斷源 ext1 的反饋管腳 iob3:外部中斷源 ext2iob2:外部中斷源 ext1iob1:串行接口的數(shù)據(jù)傳送管腳iob0:串行接口的時鐘信號dac112 輸出dac1 數(shù)據(jù)輸出管腳dac213 輸出dac2 數(shù)據(jù)輸出管腳x3

26、2i2 輸入32768hz 晶振輸入管腳x32o1 輸出32768hz 晶振輸出管腳vcoin70 輸入pll 的 rc 濾波器連接管腳agc16 輸入agc 的控制管腳micn19 輸入麥克風(fēng)負向輸入管腳micp21 輸入麥克風(fēng)正向輸入管腳micout18 輸出麥克風(fēng) 1 階放大器輸出管腳,管腳外接電阻決定 agc增益倍數(shù)opi17 輸入麥克風(fēng) 2 階放大器輸入管腳3.2步進電機驅(qū)動的設(shè)計3.2.1電機模組spgt62c19b簡介模組的平面圖如圖 3.3 所示:電機控制接口 外接電源插座外接電源指示燈 紅外對管spgt62c19b輸出選擇跳線直流電機直流電機接口 光柵轉(zhuǎn)盤uln2003a步進

27、電機步進電機接口 4位數(shù)碼管數(shù)碼管控制 接口 圖3.3 spgt62c19b電機模組平面圖上述結(jié)構(gòu)圖中各部分說明如下:電機控制接口:模組與單片機的接口,為 10pin 排針,可以直接與“61 板”連接,實現(xiàn)電機控制。數(shù)碼管控制接口:模組與單片機的接口,為兩組 10pin 排針,可以直接與“61 板”連接,實現(xiàn) 對 4 位 led 數(shù)碼管的控制。spgt62c19b:電機驅(qū)動芯片,可驅(qū)動一臺雙極性兩相步進電機,或者兩臺直流電機。外接電源指示燈:spgt62c19b電機驅(qū)動芯片的邏輯控制電源與電機驅(qū)動電源是各自獨立供電的,可以外接 5v12v 的電機驅(qū)動電源。當接通了電機驅(qū)動電源時,外接電源指示燈

28、會點亮。外接電源插座:為 spgt62c19b提供電機驅(qū)動電源的插座。共有兩組電源插座,分別為 2pin 針座(可接 61 板電池盒或其他直流電源)和 dc 穩(wěn)壓電源插座(可接直流穩(wěn)壓電源)。使用時可選擇其中一組插座作為電機驅(qū)動電源輸入端。輸出選擇跳線:該組跳線用來選擇 spgt62c19b 芯片控制的電機。模組提供了步進電機和直流電機各一臺,可通過對輸出選擇跳線的設(shè)定來切換當前工作的電機類型。步進電機接口:該接口為 4pin 插針形式,用于連接 spgt62c19b 驅(qū)動芯片和兩相步進電機。步進電機:35byj26 型號永磁式步進減速電機,工作方式為兩相四拍。在步進電機面板上安裝有刻度盤,以

29、便于在實驗中觀察電機的轉(zhuǎn)動狀態(tài)。直流電機接口:由于 spgt62c19b 可同時驅(qū)動兩臺直流電機,因此留出了兩組直流電機接口, 在模組上分別標示為 j11 和 j12。可以將模組提供的直流電機接在其中一組接口上。直流電機:電機型號為 310ca,工作電壓 3v12v,在 5v 電壓下空載轉(zhuǎn)速約 4000 轉(zhuǎn)/分。光柵轉(zhuǎn)盤和紅外對管:在直流電機的轉(zhuǎn)軸上安置了光柵轉(zhuǎn)盤,光柵轉(zhuǎn)盤的兩側(cè)分別裝有鼠標用紅外發(fā)射和接收管。當直流電機轉(zhuǎn)動時,光柵將不斷改變紅外對管的通斷狀態(tài),從而實現(xiàn)對直流電機轉(zhuǎn)速的測量。uln2003a:uln2003a 是單片式 7 路達林頓三極管陣列,在本模組中用來驅(qū)動 4 位 led

30、 數(shù)碼管。4 位數(shù)碼管:4位 8段共陽極 led 數(shù)碼管,可用作電機轉(zhuǎn)速顯示,也可用于顯示其他內(nèi)容。根據(jù)畢業(yè)設(shè)計題目的要求,用凌陽spce061a板自帶的語音芯片及喇叭播放國歌,spgt62c19b電機模組的步進電機作為國旗升降的運動支持,4位數(shù)碼管顯示國旗升降的高度和時間顯示。spgt62c19b 是低電壓單片式步進電機驅(qū)動器集成電路芯片,可驅(qū)動一臺兩相步進電機,或者 兩臺直流電機。它帶有雙路 h 橋,可分別驅(qū)動兩個獨立的 pnp功率管。每一個 h橋都有各自獨立的使能引腳,因此非常適合于需要獨立控制的步進電機驅(qū)動系統(tǒng)。spgt62c19b輸出電壓可達 40v,輸出電流可達 750ma,由輸入

31、的邏輯電平來決定輸出脈沖的寬度及頻率,所以由這款芯片組成的電機驅(qū)動系統(tǒng)將脈沖發(fā)生器、脈沖分配器、脈沖放大器合 為一體,省去了很多外圍器件。spgt62c19 的內(nèi)部由兩組完全相同的控制電路組成了兩路輸出通道。 輸入控制信號經(jīng)前級緩沖后送入片內(nèi)控制器,然后由控制部分進行處理并驅(qū)動晶體管,最后由 out 端口輸出驅(qū)動信號以控制電機的運行。spgt62c19b原理如圖3.4所示:圖3.4 spgt62c19b工作原理圖spgt62c19b的控制腳有如下 6 個,如表3.2所示:表3.2 spgt62c19b 的控制引腳引腳名稱用途20 i01通道 1 的電流大小控制17 i11通道 1 的電流大小控

32、制16 phase1通道 1 的電流方向控制8 i02通道 2 的電流大小控制9 i12通道 2 的電流大小控制10 phase2通道 2 的電流方向控制以通道 1為例,控制口 i01與 i11的不同邏輯組合可使通道 1 輸出端產(chǎn)生不同大小的電流輸出,控制腳 i01與 i11邏輯組合與輸出電流的關(guān)系為表3.3所示:表 3.3 控制腳 i01與 i11邏輯組合與輸出電流的關(guān)系i01 邏輯值 i11 邏輯值輸出電流0 0 imax1 0 2/3*imax0 1 1/3*imax1 1 0 上表中,imax 是輸出電流的上限值,它與圖 3.3 中 vref 和 rs 的值有關(guān)。其關(guān)系式為:imax

33、= vref /10*rs:phase1 的邏輯電平值決定了該通道的電流輸出方向。phase1 與電流方向的對應(yīng)關(guān)系式如表3.4所示:表 3.4 控制腳 phase1 與輸出電流的關(guān)系i01 邏輯值 i11 邏輯值輸出電流0 0 imax1 0 2/3*imax0 1 1/3*imax1 1 0 3.2.2步進電機驅(qū)動電路的設(shè)計spgt62c19b 與61板之間的接口在模組上標示為“j3” ,是 10pin 排針的形式。其中 ph1、ph2、i01、i02、i11、i12 對應(yīng)著 spgt62c19b 的 6個控制引腳;而 speed則是速度檢測信號輸出腳 。 可以直接用 10pin 排線將

34、j3 接口與 61 板 iob 的低 8 位(即 61 板的 j6)相連。 應(yīng)注意的是,模組接口標示為“vdd”的腳應(yīng)與 61 板接口標 示為“ +”的腳相對應(yīng),不能接反。另外,61 板的 i/o 供電電壓應(yīng)在 4.5v5.5v 之間。因此,要把 61 板的 i/o 電壓選擇跳線(61 板的 j5)跳至“5v”位置,并保證 61 板供電電壓在 4.5v 以上,建議使用 5v 穩(wěn)壓電源給 61 板供電。步進電機和直流電機驅(qū)動輸出接口是 spgt62c19b 驅(qū)動芯片與電機之間的連接端口。 步進電機接口在模組上標示為 j10,是 4pin 排針形式,對應(yīng)著步進電機的 4 根引線,以及 spgt62

35、c19b 的 out1a、out1b、out2a、out2b 這 4個輸出端。直流電機接口共有兩組,在模組上標示為 j11 和 j12,分別對應(yīng) spgt62c19b的 out1和 out2兩個輸出通道;直流電機的兩根引 線可以與其中一組接口相接。spgt62c19b 芯片有兩個電源輸入口,分別給邏輯控制電路和電機驅(qū)動電路供電。因此,需要外接獨立的電源給電機供電,要求外接電源的電壓在 5v12v 之間,并可以提供 750ma 以上 的電流。模組提供了兩種形式的電機供電電源接口,分別是 2pin 針座和直流穩(wěn)壓電源插座; 可以將外部電源連接在其中一組電源接口上。由于 spgt62c19b 支持一

36、臺步進電機或兩臺直流電機,而不能同時控制步進電機與直流電機,因此設(shè)置了“輸出選擇跳線”用于在步進電機與直流電機之間切當使用直流電機時,要將 4個短接帽都跳接到“dc motor”一端;使用步進電機時,要將 4個短接帽跳接到“step motor”一端。利用spgt62c19b控制步進電機,兩相步進電機的 4 根引線分為兩組,可分別連接spgt62c19b的兩個輸出通道。這樣就可以通過 spgt62c19b的6個控制引腳使兩個輸出通道發(fā)出驅(qū)動步進電機所需的脈沖信號。步進電機的工作原理如圖3.5所示,:圖3.5 步進電機工作原理圖步進電機與 spgt62c19b 的連接方法如表3.5所示:表 3.

37、5 步進電機與 spgt62c19b 的連接方法 電機引線顏色 電機引線名稱 spgt62c19b引腳序號 spgt62c19b引腳名稱 藍 1a 1 out1a 黃 1b 21 out1b 粉 2a 2 out2a 橙 2b 5 out2b每通道的輸出電流可以有 4 種狀態(tài),這為步進電機提供了多種控制方式,可實 現(xiàn)“ 整步(full-step)” 、“ 半步(half-step)” 、“優(yōu)化半步(modified half-step)”等工作模式。這幾種工作模式的控制時序如下圖3.6所示:圖 3.6 步進電機不同控制模式的時序圖本次畢業(yè)設(shè)計采用“整步(full-step)”工作方式。3.2.

38、3步進電機驅(qū)動的脈沖數(shù)的計算實現(xiàn)本系統(tǒng)的控制,關(guān)鍵在于將國旗升降高度與控制電機的轉(zhuǎn)向及回轉(zhuǎn)角度對應(yīng)起來,二者緊密配合,最終實現(xiàn)對國旗升降的運動控制??刂齐姍C的轉(zhuǎn)向就可以控制國旗上升和下降,為了準確實現(xiàn)可變的時間和高度控制的勻速升降,需要精確計算在一定人眼不能識別的時間內(nèi)的步進電機的脈沖數(shù)。步進電機我們選用“整步”工作方式,步進電機的定軸直徑為1.27324cm,則每步拉出的線長為0.02,完全符合精度的要求。高度可調(diào)步長為1,可調(diào)時間間隔為1s。在程序設(shè)計中,我們運用時間精度很高的spgt62c19b產(chǎn)生4khz的中斷脈沖送給單片機的外部中斷irq4。在整個上升或下降過程中,高度(high)為

39、總高度,可通過公式:步進電機要轉(zhuǎn)動的總步數(shù): 總步數(shù)=高度(high)/0.02;分次轉(zhuǎn)動的次數(shù)為: 次數(shù)=總時間(time)*32;每(1/32s)走的步數(shù): 步數(shù)=總步數(shù)/次數(shù);除后余數(shù)的步數(shù)為: 余步數(shù)=總步數(shù)%次數(shù)。這樣步進電機在轉(zhuǎn)動時需要沒1/32s走一次,系統(tǒng)不可避免地會出現(xiàn)余數(shù)的現(xiàn)象,這里我們采用插補補償?shù)姆椒▉斫鉀Q這個問題。處理思路為:我們分兩種情況考慮,當余步數(shù)為0時,每次按計算的步數(shù)運轉(zhuǎn)一定的次數(shù)就能滿足要求;當余步數(shù)不為0時,先在循環(huán)程序中分余步數(shù)次運轉(zhuǎn)步數(shù)的基礎(chǔ)上再加一次,然后再按正常的步數(shù)轉(zhuǎn)動。開始運動時打開外部中斷,結(jié)束后等待中斷到來再進入下一次循環(huán)。上升和下降的原

40、理類似。在步進電機運動的過程中,實時顯示運動時間和所在位置,并不斷保護現(xiàn)場數(shù)據(jù),存放于spgt62c19b中。國旗運動的控制:在主程序中,系統(tǒng)的按鍵共有3個,其中上升鍵、下降鍵為優(yōu)先掃描鍵,開始鍵則為高級中斷鍵。1)“上升鍵”按下時,對spce061a輸出播音控制信號播放國歌,國旗經(jīng)43s的時間勻速上升至旗桿頂端,國歌播放完畢。此時程序只掃描下降鍵,下降鍵按下有效時,國旗經(jīng)43s的時間勻速下降至地端。2)“下降鍵”按下時,此時程序只掃描下降鍵,下降鍵按下有效時,國旗經(jīng)43s的時間勻速下降至地端。3)“開始鍵”何條件下都有效,當按下時,系統(tǒng)會恢復(fù)原始狀態(tài)。此鍵主要用于程序跑飛的情況下。上述的按鍵

41、,不同的優(yōu)先級是它們具有不同的使能有效時段,這樣在操作過程中不會因為誤操作而產(chǎn)生影響。掉電現(xiàn)場的保護主要包括兩個方面:一是斷掉電后國旗位置不變,二是斷掉電之后重新合上電源,旗幟所在的高度數(shù)據(jù)顯示不變。前者的保護措施是通過使用電磁閥緊急滯動來實現(xiàn),為了保障斷電后再次加電時,國旗所在的高度和數(shù)據(jù)顯示不變。在每次中斷數(shù)據(jù)改變時,把國旗所在的精確位置和狀態(tài)寫在spgt62c19b芯片中。在下次上電時,首先讀spgt62c19b芯片的數(shù)據(jù),檢查國旗所在的位置。細分狀態(tài)如下:1)如果在0cm位置,不做處理。2)如果在86cm位置,此時為升旗狀態(tài)上升的最高點,查詢下降鍵,等待下降鍵按下。當下降鍵按下時,國旗

42、經(jīng)過43s的時間勻速下降至0cm最低端處。3)當下降鍵按下時,國旗從最高點86cm,后經(jīng)過43s的時間下降至0cm最低端處。這整個過程中,所存的位置數(shù)據(jù)一定要精確,確保不出現(xiàn)誤差積累現(xiàn)象。3.3顯示電路的設(shè)計用spgt62c19b模組提供的 4位共陰極 led 數(shù)碼管做顯示器,數(shù)碼管采用 uln2003a 為其提供驅(qū)動電流uln2003a 是 7路達林頓三極管陣列,這里用到了其中的 4路,分別連接到數(shù)碼管的 4個位選腳 g1g4。g1g4設(shè)置列表如表3.6所示:表3.6 數(shù)碼管設(shè)置列表g1g2g3 g4 時間十位時間個位高度十位高度個位1) g1、g2數(shù)碼管分別顯示在某一種運行狀態(tài)下,運動的時

43、間,上升和下降時間不累計。時間以s為單位,當高位為零時自動消隱。2) g3、g4數(shù)碼管顯示此時國旗所在高度,以cm為單位。當高位為“0”時,只顯示中間的行線,不消隱。數(shù)碼管顯示接口包括 “段控制” 接口和“位控制” 接口。它們在模組中被標示為 “j1” 和“j2”。可以用 10pin 排線將模組的 j1與 61 板的 ioa 低 8 位(即 61 板的 j8)相連,模組的 j2 與 61 板的 ioa 高 8 位(即 61 板的 j9) 相連。連接時要注意模組接口標示為“vdd”的腳應(yīng)與 61 板接口標示為“+”的腳相對應(yīng),不能接反。3.4按鍵電路的設(shè)計用凌陽spce061a板的三位按鍵,作為

44、鍵盤輸入寄存器,并入串出接口芯片串行接入到單片機。按鍵操作說明如表3.7所示:表3.7 按鍵操作說明表1號2號3號開始鍵上升鍵下降鍵當按下key1開始鍵時位置顯示為0,則不處理可以按鍵;當位置顯示86cm,表示上次斷電時國旗在頂端,此時升旗無效;必須先按下下降鍵把國旗降下,才能進行其它功能操作;按下下降鍵,國旗降至底端,才能進行其它功能操作;開機后,國旗自動下降至底端,開始進行其它功能操作。1)升旗國旗在非運動狀態(tài)下的最底端時,按下key2上升按鍵后,國歌起,國旗緩緩上升, g1、g2兩位數(shù)碼管顯示工作時間,g3、g4兩位數(shù)碼管顯示國旗所在位置,43s后到達頂點,國歌停,國旗停止,運動時間顯示

45、43s,位置顯示86cm,鍵號只顯示中間的橫線。此時除下降鍵以外的其它鍵都不工作,等待下降鍵按下。2)降旗當key3下降鍵按下時,運動時間顯示0s,國旗開始勻速下降,43s后到達低端,下降時國歌不播放。第4章 自動控制升降旗系統(tǒng)的軟件設(shè)計4.1自動控制升降旗系統(tǒng)的軟件設(shè)計方案整個系統(tǒng)的主要任務(wù)是執(zhí)行升旗、降旗、國歌播放、計時,計算高度并顯示國旗實時運行時間及所在高度等功能,這樣系統(tǒng)軟件設(shè)計就可以分塊完成。系統(tǒng)上電后進行初始化,上升鍵按下時,電機正轉(zhuǎn),裝載國歌語音模型,定時計數(shù)器timera開始計數(shù),計數(shù)器每加1s,國旗高度計算一次,高度加2cm,時間高度數(shù)據(jù)送入顯示子程序,led顯示子程序開始

46、掃描數(shù)據(jù)并顯示,上升到最高處86cm處,電機停轉(zhuǎn),國歌停奏,按下下降鍵時,電機反轉(zhuǎn)到最低位置0cm處停止,并實時顯示國旗運行時間及所在高度。本系統(tǒng)軟件主流程圖如圖4.1所示:圖4.1 系統(tǒng)主流程圖4.2計時子程序的設(shè)計該子程序的主要功能是實現(xiàn)國旗運行的計時,寄存器irq5入棧讀入數(shù)據(jù),判斷是否為2khz中斷,是則對升降國旗的時間進行計時,同時可作為國歌播放時間,使用定時計數(shù)器timera進行計數(shù),計數(shù)到43s時電機停轉(zhuǎn),中斷返回到主程序。計時子程序流程圖如圖4.2所示:圖4.2 計時子程序流程圖4.4顯示子程序的設(shè)計該子程序的主要功能是實現(xiàn)國旗時間及高度的顯示,由于led顯示為段碼的顯示,所以

47、處理后的十進制數(shù)要首先取段碼,然后送顯示單元。在發(fā)生中斷和等待中斷時,都對顯示子程序進行了調(diào)用,完成了實時顯示的要求。本設(shè)計的顯緩單元為ox702d存儲單元ox0040,采用四位led顯示,先把要顯示的數(shù)據(jù)存入對應(yīng)的顯緩單元,然后查表取段碼,將段碼經(jīng)iob1iob4口送給led顯示,四位位選碼由iob5iob8控制。顯示子程序流程圖如圖4.3所示:圖4.3 顯示子程序流程圖4.5語音子程序的設(shè)計該語音子程序要求演奏國歌,其時間為43秒鐘,所以選用的語音芯片其錄放時間應(yīng)大于43秒鐘,即在此選用語音芯片spy0300,其錄放時間為60秒,完全符合本設(shè)計的要求,我們把國歌音樂裝載在spy0300語音

48、芯片中,然后初始化語音子程序,獲取國歌語音數(shù)據(jù),在運行環(huán)境下初始化sacm_s480類型語音模式,就緒后播放國歌,解碼并填充隊列將國歌的語音數(shù)據(jù)加載到sacm_s480播放文件中,否則沒有數(shù)據(jù)。等待國歌播放完畢中斷返回主程序。語音子程序流程圖如圖4.4所示: 圖4.4 語音子程序流程圖第5章 系統(tǒng)調(diào)試與結(jié)果分析5.1系統(tǒng)的硬件調(diào)試整個系統(tǒng)搭接完畢,首先對硬件進行檢查聯(lián)線有無錯誤,再逐步對各模塊進行硬件調(diào)試。由于本設(shè)計采用的是整體的61板及電機模組,因此,在硬件調(diào)試部分只要將61板自檢程序及電機模組自檢程序下載到各自的核心芯片中,運行后61板可以進行國歌播放,電機模組的電機可以正反轉(zhuǎn),led可以

49、顯示時間高度就證明硬件調(diào)試成功。5.2系統(tǒng)的軟件調(diào)試首先寫入電機控制小程序,控制其正反轉(zhuǎn),停機均正常。根據(jù)高度加入步長脈沖調(diào)試,其控制升、降旗以及與語音子程序同步均符合要求。加入按鍵和顯示時間、高度子程序,均正常工作,通過編碼,可實現(xiàn)升降旗與停止功能。音樂播放程序調(diào)試過程:1) 在網(wǎng)絡(luò)上找到播放一遍的國歌,把音樂文件格式轉(zhuǎn)換為.wave格式的文件,再用凌陽公司提供的compress tool裝換工具將.wave的音樂文件轉(zhuǎn)換為61板能是別的.72k的音樂文件2) 新建一個工程 ex3_s480_auto,在工程里新建 main.c 文件和 isr.asm 文件。 3) 拷貝頭文件:把 s480

50、.h 和 s480.inc 兩個文件拷貝到 ex3_s480_auto 工程文件夾。 4) 拷貝支持文件:把 hardware.h、hardware.inc 兩個頭文件和 hardware.asm 匯編語言文件拷貝到 ex3_s480_auto 工程文件夾。 5) 拷貝庫文件:把 sacmv26e 語音庫文件(文件名為:sacmv26e.lib)拷貝到ex3_s480_auto 工程文件夾。 6) 拷貝資源文件:可以在 ide 的安裝路徑 spce061avoiceexaex3_s480_autovoice 找到.72k的音樂文件,把這個語音資源文件拷貝到 ex3_s480_auto 工程文件

51、夾。 7) 從工程文件夾當中,添加剛剛拷貝的音樂資源文件到 ex3_s480_auto 工程。 8) 包含 sacmv26e.lib 庫到 ex3_s480_auto 工程中。 9) 添加 hardware.asm文件到資源文件夾。 10) 在main.c文件開始包含頭文件s480.h和hardware.h,在isr.asm文件開始包含s480.inc和 hardware.inc。11) 按照程序流程圖編寫程序。 12) rebuild all,出現(xiàn)沒有定義 t_sacm_s480_speechtable 的錯誤。 13) 在 resource.asm 文件中定義語音資源表和語音播放順序。 14) rebuild all,如果沒有其他錯誤,下載程序到實驗箱。把 j8 中(dac1)的跳線設(shè)置為靠近

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論