




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于Matlab的電力電子技術(shù)課程設(shè)計(jì)報(bào)告【實(shí)用文檔】doc文檔可直接使用可編輯,歡迎下載
《電力電子技術(shù)》基于Matlab的電力電子技術(shù)課程設(shè)計(jì)報(bào)告【實(shí)用文檔】doc文檔可直接使用可編輯,歡迎下載課程設(shè)計(jì)報(bào)告題目:基于Mat(yī)lab的電力電子技術(shù)仿真分析專業(yè):電氣工程及其自動(dòng)化班級(jí):電氣2班學(xué)號(hào):Z01114007姓名:吳奇指導(dǎo)教師:過希文安徽大學(xué)電氣工程與自動(dòng)化學(xué)院2015年1月7日中文題目基于Mat(yī)lab的電力電子技術(shù)仿真分析一、設(shè)計(jì)目的(1)加深理解《電力電子技術(shù)》課程的基本理論;(2)掌握電力電子電路的一般設(shè)計(jì)方法,具備初步的獨(dú)立設(shè)計(jì)能力;(3)學(xué)習(xí)Matlab仿真軟件及各模塊參數(shù)的確定。二、設(shè)計(jì)工作任務(wù)及工作量的要求〔包括課程設(shè)計(jì)計(jì)算說明書(論文)、圖紙、實(shí)物樣品等〕:(1)根據(jù)設(shè)計(jì)題目要求的指標(biāo),通過查閱有關(guān)資料分析其工作原理,設(shè)計(jì)電路原理圖;(2)利用MATLAB仿真軟件繪制主電路結(jié)構(gòu)模型圖,設(shè)置相應(yīng)的參數(shù)。(3)用示波器模塊觀察和記錄電源電壓、控制信號(hào)、負(fù)載電壓、電流的波形圖。三、設(shè)計(jì)內(nèi)容(1)設(shè)計(jì)一個(gè)降壓變換器(BuckChopper),其輸入電壓為200V,負(fù)載為阻感性帶反電動(dòng)勢(shì)負(fù)載,電阻為2歐,電感為5mH,反電動(dòng)勢(shì)為80V。開關(guān)管采用IGBT,驅(qū)動(dòng)信號(hào)頻率為1000Hz,仿真時(shí)間設(shè)置為0.02s,觀察不同占空比下(25%、50%、75%)的驅(qū)動(dòng)信號(hào)、負(fù)載電流、負(fù)載電壓波形,并計(jì)算相應(yīng)的電壓、電流平均值。然后,將負(fù)載反電動(dòng)勢(shì)改變?yōu)椋?0V,觀察電流斷續(xù)時(shí)的工作波形。(最大步長(zhǎng)為5e—6,相對(duì)容忍率為1e-3,仿真解法器采用ode23tb)(2)設(shè)計(jì)一個(gè)采用雙極性調(diào)制的三相橋式逆變電路,主電路直流電源200V,經(jīng)由6只MOSFET組成的橋式逆變電路與三相阻感性負(fù)載相連接,負(fù)載電阻為1歐,電感為5mH,三角波頻率為1000Hz,調(diào)制度為0.7,試觀察輸入信號(hào)(載波、調(diào)制波)、與直流側(cè)假想中點(diǎn)N‘的三相電壓Uun’、Uvn’、Uwn',輸出線電壓UV以及負(fù)載側(cè)相電壓Uun的波形。四、設(shè)計(jì)方案實(shí)驗(yàn)1:降壓變換器dc—dc變流電路可以將直流電變成另一固定電壓或可調(diào)電壓的直流電,包括直接直流變流電路和間接直流變流電路。其中,直接直流變流電路又稱為斬波電路,功能是將直流電變?yōu)榱硪恢绷麟姟1敬螌?shí)驗(yàn)主要是在Mat(yī)lab中設(shè)計(jì)一個(gè)降壓斬波電路并仿真在所給條件下的波形和數(shù)值與理論計(jì)算相對(duì)比.降壓斬波電路原理圖如下所示,該電路使用一個(gè)全控型器件V,這里用IGBT,也可采用其他器件,例如晶閘管,若采用晶閘管,還需設(shè)置使晶閘管關(guān)斷的輔助電路。為在V關(guān)斷時(shí)給負(fù)載中電感電流提供通道,設(shè)置了續(xù)流二極管VD.斬波電路主要用于電子電路的供電電源,也可拖動(dòng)直流電動(dòng)機(jī)或帶蓄電池負(fù)載等,后兩種情況下負(fù)載中均會(huì)出現(xiàn)反電動(dòng)勢(shì),圖中用表示。若無反電動(dòng)勢(shì),只需令,以下的分析和表達(dá)式中均適用.原理圖:降壓斬波電路實(shí)驗(yàn)圖:參數(shù)設(shè)置:輸入電壓為200V,負(fù)載為阻感性帶反電動(dòng)勢(shì)負(fù)載,電阻為2歐,電感為5mH,反電動(dòng)勢(shì)為80V。開關(guān)管采用IGBT,驅(qū)動(dòng)信號(hào)頻率為1000Hz,仿真時(shí)間設(shè)置為0.02s,最大步長(zhǎng)為5e—6,相對(duì)容忍率為1e—3,仿真解法器采用ode23tb,調(diào)節(jié)脈沖信號(hào)占空比分別為25%,50%,75%.然后調(diào)整反電動(dòng)勢(shì)為160V。重復(fù)上述步驟。實(shí)驗(yàn)2:雙極性調(diào)制的三相橋式逆變電路的設(shè)計(jì)本次實(shí)驗(yàn)是利用PWM調(diào)制控制三項(xiàng)橋是逆變電路。PWM控制就是對(duì)脈沖的寬度進(jìn)行調(diào)制的技術(shù),通過對(duì)一系列脈沖的寬度進(jìn)行調(diào)制,來等效地獲得所需要的波形。面積等效原理是PWM控制技術(shù)的重要理論基礎(chǔ).PWM技術(shù)在逆變電路最為常用,分為單極性控制和雙極性控制.本次課程設(shè)計(jì)使用雙極性控制方式。下面介紹一下雙極性調(diào)制三相橋式逆變電路的原理。圖是三相橋式PWM逆變電路,這種電路都是采用雙極性控制方式。U、V和W三相的PWM控制通常公用一個(gè)三角波載波,三相的調(diào)制信號(hào),和相位依次相差。U、V和W各項(xiàng)功率開關(guān)器件的控制規(guī)律相同,現(xiàn)以U相為例。當(dāng)〉時(shí),上橋臂導(dǎo)通,下橋臂關(guān)斷,則U相相對(duì)于直流電源假想終點(diǎn)的輸出電壓。當(dāng)<時(shí),下橋臂導(dǎo)通,上橋臂關(guān)斷,則U相相對(duì)于直流電源假想終點(diǎn)的輸出電壓,上橋臂和下橋臂的驅(qū)動(dòng)信號(hào)始終是互補(bǔ)的。當(dāng)給上(下)橋臂加導(dǎo)通信號(hào)時(shí),可能是上橋臂導(dǎo)通,可能是下橋臂導(dǎo)通,也可能是續(xù)流二極管導(dǎo)通,這要由阻感負(fù)載中電流的方向來決定。V相和W相的控制方式都和U相相同。原理圖:三相橋式PWM逆變電路實(shí)驗(yàn)圖:參數(shù)設(shè)置:主電路直流電源200V,經(jīng)由6只MOSFET組成的橋式逆變電路與三相阻感性負(fù)載相連接,負(fù)載電阻為1歐,電感為5mH,三角波頻率為1000Hz,調(diào)制度為0.7.五、仿真結(jié)果與分析實(shí)驗(yàn)1仿真結(jié)果與分析:圖1:反電動(dòng)勢(shì)為80V占空比為25%圖2:反電動(dòng)勢(shì)為80V占空比為50%圖3:反電動(dòng)勢(shì)為80V占空比為75%圖4:反電動(dòng)勢(shì)為160V占空比為25%圖5:反電動(dòng)勢(shì)為160V占空比為50%圖6:反電動(dòng)勢(shì)為160V占空比為75%負(fù)載電壓平均值為,式中,為V處于通態(tài)時(shí)間,為V處于斷態(tài)時(shí)間,T為開關(guān)周期,為占空比。圖1、4,圖2、5占空比,圖3、6占空比。所以,當(dāng)時(shí),V;當(dāng)時(shí),V;當(dāng)時(shí),V.負(fù)載電流平均值,當(dāng)時(shí),A;當(dāng)時(shí),A;當(dāng)時(shí),A,與實(shí)驗(yàn)結(jié)果相吻合。實(shí)驗(yàn)2仿真結(jié)果與分析圖4:雙極性調(diào)制的三相橋式逆變電路實(shí)驗(yàn)結(jié)果分析:觀察波形圖可知,、、的PWM波形都只有兩種電平。圖中的線電壓的波形可由得出。可以看出,當(dāng)橋臂1和橋臂6導(dǎo)通時(shí),;當(dāng)橋臂3和橋臂4導(dǎo)通時(shí),;當(dāng)橋臂1和橋臂3或橋臂4和橋臂6導(dǎo)通時(shí),。所以逆變器輸出線電壓PWM波由、0三種電平構(gòu)成.而負(fù)載相電壓的PWM波由V,V,V五種電平組成,滿足,,五種電平組成,符合實(shí)驗(yàn)結(jié)果。五、設(shè)計(jì)總結(jié)通過本次實(shí)驗(yàn),我初步了解了Mat(yī)lab,學(xué)會(huì)如何用matlab軟件的Simulink進(jìn)行繪制電路圖并進(jìn)行仿真.然而我也發(fā)現(xiàn)了很多的問題,例如電子元器件找不到,設(shè)計(jì)電路圖時(shí)不夠理解,直到問同學(xué)之后才能夠獨(dú)立的畫出電路圖,在電力電子這方面的學(xué)習(xí)也較為缺乏,理解不夠充分,所以在不多的大學(xué)時(shí)間里要好好學(xué)習(xí)這些知識(shí),為以后的工作打好基礎(chǔ)。六、主要參考文獻(xiàn)[1]王兆安.電力電子技術(shù),機(jī)械工業(yè)出版社.2009.[2]李傳琦.電力電子技術(shù)計(jì)算機(jī)仿真實(shí)驗(yàn),電子工業(yè)出版,2005.[3]洪乃剛。電力電子和電力拖動(dòng)控制系統(tǒng)的MATLAB仿真,機(jī)械工業(yè)出版社.2006。[4]洪乃剛。電力電子電機(jī)控制系統(tǒng)仿真技術(shù),2013年8月基于DSP數(shù)碼管顯示課程名稱DSP技術(shù)學(xué)院名稱電子與信息工程學(xué)院專業(yè)電子信息工程年級(jí)班級(jí)開出學(xué)期2013-2014下期學(xué)生學(xué)號(hào)指導(dǎo)教師成績(jī)201*年*月*日一、課程設(shè)計(jì)目的如今DSP已經(jīng)成為運(yùn)用很廣泛的嵌入式芯片,它的功能強(qiáng)大,能完成很多一般芯片不能完成的數(shù)據(jù)處理,大量使用DSP已經(jīng)是全球的潮流。通過課程設(shè)計(jì),使我們綜合運(yùn)用DSP技術(shù)課程和其他有關(guān)課程的理論和生產(chǎn)實(shí)際知識(shí)去分析和解決具體問題的能力得到提高,并使其所學(xué)知識(shí)得到進(jìn)一步鞏固、深化和發(fā)展;初步培養(yǎng)學(xué)生對(duì)工程設(shè)計(jì)的獨(dú)立工作能力,學(xué)習(xí)設(shè)計(jì)的一般方法;以及鍛煉我們查閱資料、方案比較、團(tuán)結(jié)合作的能力。學(xué)會(huì)簡(jiǎn)單電路的實(shí)驗(yàn)調(diào)試和整指標(biāo)測(cè)試方法,增強(qiáng)我們的動(dòng)手能力,為以后學(xué)習(xí)和工作打下基礎(chǔ)。二、課程設(shè)計(jì)內(nèi)容1、設(shè)計(jì)思路用DSP芯片設(shè)計(jì)一個(gè)單個(gè)數(shù)碼管顯示電路,數(shù)碼管由0—9循環(huán)點(diǎn)亮,每1秒鐘亮一個(gè)數(shù)字,每亮一次觸發(fā)蜂鳴器響一下。另外加輸入檢測(cè)電路,當(dāng)一旦按下復(fù)位鍵后數(shù)碼管自動(dòng)清零。設(shè)計(jì)流程圖開始開始初始化初始化DSP初始化CD4511(數(shù)碼管清零)初始化CD4511(數(shù)碼管清零)循環(huán)顯示循環(huán)顯示0-9讀取讀取IOPB數(shù)據(jù)DSP數(shù)據(jù)處理DSP數(shù)據(jù)處理判斷復(fù)位鍵是否按下判斷復(fù)位鍵是否按下是是否3、設(shè)計(jì)實(shí)現(xiàn)程序主程序#include"math。h”#include"stdio。h”#include"lf2407_c.h”unsignedcharflag=0;//voidDelay(intx)voiddelay_ms()//延時(shí)1ms(CPU頻率10M){unsignedintk;for(k=0;k〈1000;k++);}voiddelay_s()//延時(shí)1s(CPU頻率10M){unsignedintk,j;for(k=0;k〈1000;k++)for(j=0;j〈1000;j++);}voiddelay_us()//延時(shí)100us(CPU頻率10M){unsignedintk;for(k=0;k<10;k++);}voiddelay(void)//任意延時(shí){unsignedinti,j;for(i=1000;i〉0;i--)for(j=200;j〉0;j—-);}voidinit(){asm(”setcSXM");asm(”clrcOVM");asm(”clrcCNF”);asm("setcINTM");SCSR1=0x81FE;WDCR=0x0E8;IMR=0x0000;IFR=0x0FFFF;MCRA=MCRA&0x00FF;//iopb設(shè)為一般I/OPBDATDIR=PBDATDIR|0xFF00;//1234為輸出PBDATDIR=PBDATDIR&0xEFFF;//1234為輸出PADATDIR=PBDATDIR&0xFF00;//初始化顯示0}voidmain(){intm;unsignedintuLED[10]={0xFF00,0xFF01,0xFF02,0xFF03,0xFF04,0xFF05,0xFF06,0xFF07,0xFF08,0xFF09};init();//初始化for(m=0;m<=10;m++){PBDATDIR=uLED[m];//顯示數(shù)字delay_s();if(PBDATDIR&0x0010==0x0000)//判斷復(fù)位鍵是否按下{PBDATDIR=PBDATDIR|0xFF00;//清零m=0;delay_s();}}}三、硬件電路設(shè)計(jì)1、外圍電路設(shè)計(jì)外圍電路采用一個(gè)CD4511進(jìn)行數(shù)據(jù)譯碼,采用輸入BCD碼輸出段碼的方式進(jìn)行顯示,外接一個(gè)蜂鳴器,一個(gè)復(fù)位按鈕,和一個(gè)數(shù)碼管。電路圖如圖所示2、DSP芯片管腳設(shè)定DSP芯片管腳:IOPB0CD4511芯片A輸入IOPB1CD4511芯片B輸入IOPB2CD4511芯片C輸入IOPB3CD4511芯片D輸入IOPB4復(fù)位鍵信號(hào)檢測(cè)管腳使用元件介紹3。1、TMS320LF2407A芯片基本介紹TMS320C24x系列DSP中,分為5V供電的TMS320F/C24x和3.3V供電低功耗TMS320LF/LC240xA兩類。這里以TMS320LF2407A為主進(jìn)行介紹.TMS320LF2407A是TMS320F/C24x的改進(jìn)型,采用低功耗設(shè)計(jì),3.3V供電,最高運(yùn)算速度達(dá)到40MIPS.主要特點(diǎn)如下:⑴片內(nèi)具有2k字節(jié)的單口RAM(SARAM),32K字的Flash程序存儲(chǔ)器,544字節(jié)的雙口RAM(DARAM)。⑵兩個(gè)事件管理器模塊EVA和EVB,每個(gè)包括:兩個(gè)16位通用定時(shí)器,8?jìng)€(gè)PWM通道。⑶高達(dá)40個(gè)可獨(dú)立編程或復(fù)用的通用I/O引腳。⑷片內(nèi)集成:16路10位A/D轉(zhuǎn)換通道;控制局域網(wǎng)絡(luò)(CAN)2。0B模塊;串行通信接口引腳功能各引腳按功能可分為以下8個(gè)部分(表2.1~2.9):⑴事件管理器(EVA和EVB)引腳;⑵ADC模數(shù)轉(zhuǎn)換器引腳;⑶通信模塊(CAN/SPI/SCI)引腳;⑷外部中斷與時(shí)鐘引腳;⑸地址/數(shù)據(jù)及存儲(chǔ)器控制信號(hào)引腳;⑹振蕩器/PLL/FLASH/BOOT引導(dǎo)程序及其他引腳;⑺JTAG仿真測(cè)試引腳;⑻電源引腳。SCI)模塊;串行外設(shè)接口(SPI)模塊;看門狗定時(shí)器(WDT)模塊。TMS320LF2407A的引腳封裝圖TMS320LF2407A的引腳結(jié)構(gòu)圖3.2、CD4511BCD-7段譯碼驅(qū)動(dòng)器CD4511是常用的七段顯示譯碼驅(qū)動(dòng)器,它的內(nèi)部除了七段譯碼電路外,還這有鎖存電路和輸出驅(qū)動(dòng)器部分,具有輸出電流大,最大可達(dá)25mA,可直接驅(qū)動(dòng)LED數(shù)碼管。CD4511由4個(gè)輸入端A/B/C/D和7個(gè)輸出端a~g,它還具有輸入BCD碼鎖存、燈測(cè)試和熄滅控制功能,它們分別由鎖存端LE、燈測(cè)試LT、熄滅控制端BI來控制。引腳圖如2所示,真值表如圖3所示四、課程設(shè)計(jì)元件清單名稱型號(hào)數(shù)量/個(gè)編號(hào)DSP芯片實(shí)驗(yàn)板TMS320LF2407A1U1CD4511段譯碼器CD45111U2單個(gè)數(shù)碼管5101AR1uLED復(fù)位按鍵1S9蜂鳴器1SP限流電阻1K8R0-R7杜邦線若干排針若干五、課程設(shè)計(jì)實(shí)物程序運(yùn)行結(jié)果圖運(yùn)行顯示數(shù)字5運(yùn)行顯示數(shù)字2按下復(fù)位鍵后數(shù)碼管清零課程設(shè)計(jì)總結(jié)此次的課程設(shè)計(jì)中我對(duì)DSP芯片有了更加充分的了解,以前只是通過書籍或其他消息知道DSP芯片的重要性,但是只有真正做了之后才能意識(shí)到DSP芯片的功能強(qiáng)大,它雖然基本原理和使用與單片機(jī)差不多,但是真正使用過之后才覺得它運(yùn)行速度更快,能直接做一些信號(hào)處理,內(nèi)部直接帶有很多常用數(shù)學(xué)運(yùn)算的硬件電路,因此在數(shù)字信號(hào)處理方面非常有用,我也是在使用之后才發(fā)現(xiàn)DSP芯片為什么叫做數(shù)字信號(hào)處理芯片的.此次我做的實(shí)驗(yàn)不算難,但仍需細(xì)心調(diào)試程序,對(duì)于頭文件的定義一定要清楚。此次實(shí)驗(yàn)不僅增強(qiáng)了我的實(shí)際動(dòng)手能力,而且還讓我對(duì)于DSP有了更大的興趣,以后定將花更多的時(shí)間對(duì)其進(jìn)行更深入的學(xué)習(xí)。單片機(jī)原理及系統(tǒng)課程設(shè)計(jì)評(píng)語(yǔ):考勤10分守紀(jì)10分過程30分設(shè)計(jì)報(bào)告30分答辯20分總成績(jī)(100)專業(yè):自動(dòng)化班級(jí):姓名:學(xué)號(hào):指導(dǎo)教師:蘭州交通大學(xué)自動(dòng)化與電氣工程學(xué)院2015年12月30日基于單片機(jī)的16鍵電子琴一、電子琴設(shè)計(jì)的目的、要求與設(shè)計(jì)方法1.1設(shè)計(jì)目的現(xiàn)代樂器中,電子琴是高新科技在音樂領(lǐng)域的一個(gè)代表,體現(xiàn)了人類電子技術(shù)和藝術(shù)的完美結(jié)合。電子琴自動(dòng)伴奏的穩(wěn)定性、準(zhǔn)確性,以及鮮明的強(qiáng)弱規(guī)律、隨人設(shè)置的速度要求,都更便于人們由易到難、深入淺出的準(zhǔn)確掌握歌曲節(jié)奏和樂曲風(fēng)格,對(duì)其節(jié)奏的穩(wěn)定性和準(zhǔn)確性訓(xùn)練能起到非常大的作用.1.2設(shè)計(jì)要求本設(shè)計(jì)主要是用AT89C52單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)微縮版的電子琴。單片機(jī)與按鍵構(gòu)成主控制模塊,在主控制模塊上設(shè)置有9個(gè)按鍵,分別達(dá)成不同目標(biāo)。本系統(tǒng)主要為了完成電子琴的三大功能:電子琴?gòu)椬嗪鸵魳凡シ偶颁浺簟#薄#畴娮忧僭O(shè)計(jì)方法1.3。1設(shè)計(jì)工具表1軟件簡(jiǎn)介軟件名稱設(shè)計(jì)作用KeiluVision4編寫程序與編譯PROTEUS繪制硬件電路圖、數(shù)字仿真MicrosoftVisio繪制程序流圖與框圖1。3.2設(shè)計(jì)思路(1)功能按鍵觸發(fā)外部中斷,以完成不同曲目的的切換。(2)設(shè)置定時(shí)器產(chǎn)生不同頻率的方波,I/O口輸出,經(jīng)功放后揚(yáng)聲器發(fā)聲.(3)采用4×4矩陣鍵盤彈奏16個(gè)音(低XI到高DO).電子琴的設(shè)計(jì)方案及原理2.1設(shè)計(jì)總體方案本系統(tǒng)采用AT89C52為主控芯片.輸入電路有16個(gè)琴鍵按鍵,通過按鍵隨意按下所要表達(dá)的音符,作為電平送給主體電路,中央處理器通過識(shí)別,解碼輸出音符,在揚(yáng)聲器中發(fā)出有效的聲音。1個(gè)音樂按鍵用于播放音樂和切換歌曲,通過按鍵觸發(fā)中斷,重置定時(shí)器初值,于另一個(gè)揚(yáng)聲器中發(fā)出有效音響.總設(shè)計(jì)框圖如下圖1所示.單單片機(jī)時(shí)鐘復(fù)位電路時(shí)鐘復(fù)位電路數(shù)碼管顯示電路數(shù)碼管顯示電路琴鍵控制電路琴鍵控制電路音頻播放電路音頻播放電路音樂切換電路音樂切換電路圖1基于單片機(jī)的電子琴電路原理框圖2。2發(fā)聲原理利用AT89C52的內(nèi)部定時(shí)器使其工作計(jì)數(shù)器模式(MODE1)下,改變計(jì)數(shù)值TH0及TL0以產(chǎn)生不同頻率的方法產(chǎn)生不同音階,例如,頻率為523Hz,其周期T=1/523=1912μs,因此只要令計(jì)數(shù)器計(jì)時(shí)956μs/1μs=956,每計(jì)數(shù)956次時(shí)將I/O反相,就可得到中音DO(523Hz)。
計(jì)數(shù)脈沖值與頻率的關(guān)系式是:
N=fi÷2÷fr。式中,N是計(jì)數(shù)值;fi是機(jī)器頻率(晶體振蕩器為12MHz時(shí),其頻率為1MHz);fr是想要產(chǎn)生的頻率。
電子琴的硬件設(shè)計(jì)基于單片機(jī)AT89C51的電子琴電路由琴鍵控制電路、數(shù)碼管顯示電路、音頻播放電路、時(shí)鐘—復(fù)位電路、音樂切換電路和電源電路六部分所構(gòu)成.3.1琴鍵控制電路琴鍵控制電路作為人機(jī)聯(lián)系的輸入部分,也是間接控制數(shù)碼顯示和音頻功放的重要組成部分。鍵盤按照連接方式可以分為獨(dú)立式和矩陣式鍵盤兩類.3.1。1矩陣式鍵盤如圖2所示為4X4矩陣式鍵盤電路,由一個(gè)4X4的行、列結(jié)構(gòu)可以構(gòu)成一個(gè)16個(gè)按鍵鍵盤。
矩陣中無按鍵按下時(shí),行線為高電平;當(dāng)有按鍵按下時(shí),行線電平狀態(tài)將由與此行線相連的列線的電平?jīng)Q定。列線的電平如果為低,則行線電平為低;列線的電平如果為高,則行線的電平也為高,這是識(shí)別按鍵是否按下的關(guān)鍵所在。圖2矩陣式鍵盤3。1.2獨(dú)立式鍵盤
獨(dú)立式鍵盤的特點(diǎn)是一鍵一線,各鍵相互獨(dú)立,每個(gè)鍵各接一條I/O口線,通過檢測(cè)I/O輸入線的電平狀態(tài),可判斷出被按下的按鍵。
3。1。3
方案比較
表2鍵盤類型比較鍵盤類型優(yōu)點(diǎn)缺點(diǎn)獨(dú)立式電路簡(jiǎn)單,編程簡(jiǎn)單占用I/O口線多矩陣式占用I/O口線較少編程比較復(fù)雜由于此次設(shè)計(jì)的琴鍵控制電路需要16個(gè)按鍵,故單純從I/O口線的占用的角度比較,獨(dú)立式需要占用16條I/O口線,而矩陣式卻只需8條.故選擇矩陣式鍵盤電路比較合理。3。2數(shù)碼管顯示電路LED(Light
Emitting
Diode)發(fā)光二極管縮寫.LED數(shù)碼管是由發(fā)光二極管構(gòu)成的.常見的LED數(shù)碼管為“8”字型的,共計(jì)8段。一般來說分共陽(yáng)極和共陰極兩種接法.3。2.1LED數(shù)碼管靜態(tài)顯示
靜態(tài)顯示方式即無論多少位LED數(shù)碼管,同時(shí)處于顯示狀態(tài)。如果送往各個(gè)LED數(shù)碼管所顯示字符的段碼一經(jīng)確定,則相應(yīng)I/O口鎖存器鎖存的段碼輸出將維持不變,直到送入另一個(gè)字符的段碼為止。3.2.2LED數(shù)碼管動(dòng)態(tài)顯示
靜態(tài)顯示方式就是無論在任何時(shí)刻只有一個(gè)LED數(shù)碼管處于顯示狀態(tài),即單片機(jī)采用“掃描”方式控制各個(gè)數(shù)碼管輪流顯示。
3.3.3方案比較
對(duì)于以上兩種數(shù)碼管驅(qū)動(dòng)電路的的優(yōu)缺點(diǎn)比較如表3所示。由于靜態(tài)驅(qū)動(dòng)方式的顯示無閃爍,亮度較高,編程簡(jiǎn)單,加上本次設(shè)計(jì)的數(shù)碼管顯示電路只需要2個(gè)數(shù)碼管,且分別接兩部分管腳,故選擇靜態(tài)驅(qū)動(dòng)方式來顯示數(shù)碼管更為合理.如圖3所示為數(shù)碼管顯示電路,采用靜態(tài)驅(qū)動(dòng)方式和共陽(yáng)極接法.表3數(shù)碼管顯示方式比較驅(qū)動(dòng)方式優(yōu)點(diǎn)缺點(diǎn)靜態(tài)顯示顯示無閃爍,亮度較高,編程簡(jiǎn)單數(shù)碼管越多,所需的電流越大,電源的要求越高動(dòng)態(tài)顯示電路簡(jiǎn)單,數(shù)碼管越多,優(yōu)勢(shì)越明顯不如靜態(tài)顯示的亮度高,
可能出現(xiàn)閃爍現(xiàn)象圖3數(shù)碼管靜態(tài)顯示電路3。3音樂切換電路通過按鍵拉低電平,觸發(fā)中斷0.3.4音頻播放電路使用兩個(gè)揚(yáng)聲器,一個(gè)作為琴鍵輸出,一個(gè)作為樂曲輸出。3.5時(shí)鐘復(fù)位電路3。5。1時(shí)鐘電路
時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。常用的時(shí)鐘電路有兩種方式,一種是內(nèi)部時(shí)鐘方式,另一種是外部時(shí)鐘方式.
本設(shè)計(jì)采用內(nèi)部時(shí)鐘方式做時(shí)鐘電路.3。5。2復(fù)位電路
在單片機(jī)的實(shí)用系統(tǒng)中,一般有兩種復(fù)位操作形式:上電復(fù)位和手動(dòng)復(fù)位。
上電復(fù)位在單片機(jī)系統(tǒng)每次通電時(shí)執(zhí)行。手動(dòng)復(fù)位在系統(tǒng)出現(xiàn)操作錯(cuò)誤或程序運(yùn)行出錯(cuò)時(shí)使用。
由于本設(shè)計(jì)的需要,同時(shí)采用這兩種復(fù)位方式。整體電路圖如下圖4所示.圖4整體硬件設(shè)計(jì)電子琴的軟件設(shè)計(jì)系統(tǒng)功能的實(shí)現(xiàn)一般包括硬件部分和軟件部分,一旦硬件確定下來,軟件要實(shí)現(xiàn)的功能也隨之確定。而為使編程思路清晰,應(yīng)先繪制程序流程圖.
4。1
系統(tǒng)硬件接口定義
表4系統(tǒng)硬件接口定義引腳名接口說明備注P0.0~P0。7琴鍵數(shù)碼管與單片機(jī)通信數(shù)碼管顯示電路P2.0~P2.7曲目數(shù)碼管與單片機(jī)通信數(shù)碼管顯示電路P3。2(INT0)外部中斷源輸入端音樂切換電路P1.0~P1.7矩陣鍵盤接口琴鍵控制電路P3.0,P3。7控制揚(yáng)聲器音頻播放電路4。2主函數(shù)
主函數(shù)流程圖如圖5所示。利用模塊化的思想,主函數(shù)只執(zhí)行初始化函數(shù)、鍵盤掃碼函數(shù)、音頻處理函數(shù)和數(shù)碼管顯示函數(shù).圖5主函數(shù)流程圖4。3初始化函數(shù)初始化的流程框圖如圖6所示。該函數(shù)對(duì)所需的I/O口、外部中斷0、定時(shí)器0、定時(shí)器T1以及數(shù)碼管進(jìn)行初始化配置。TMOD=0x11;//T0方式1,T1方式1IP=0x01;//INT0中斷優(yōu)先級(jí)最高EA=1;ET0=1;ET1=1;EX0=1;//允許中斷TR0=0;//關(guān)定時(shí)器0P1=0xbf;//鍵盤初始化flag=0;//標(biāo)志位置0圖6初始化流程圖4.4數(shù)碼管顯示及音頻處理函數(shù)根據(jù)鍵值掃描函數(shù)讀取的鍵碼,揚(yáng)聲器發(fā)聲并結(jié)合數(shù)碼管顯示出來。圖7數(shù)碼管顯示流程圖4.5中斷函數(shù)中斷函數(shù)用到了外部中斷和定時(shí)器中斷.外部中斷的流程框圖如圖8所示,當(dāng)按鍵按下時(shí),外部信號(hào)觸發(fā)外部中斷,執(zhí)行鍵值掃描函數(shù),讀取對(duì)應(yīng)的鍵值。定時(shí)中斷的流程框圖如圖9所示,定時(shí)器溢出中斷后,進(jìn)行重裝載初值,同時(shí)執(zhí)行相應(yīng)的音頻控制操作。
4.6鍵值掃描函數(shù)將輸入端置為高電平,輸出端置為低電平.這樣,當(dāng)按鍵沒有按下時(shí),所有的輸入端無變化,代表無鍵按下。一旦有鍵按下,則輸入線就受輸出線的影響被拉低,這樣,通過讀入輸入線的狀態(tài)就可得知是否有鍵按下了。流程圖如圖10所示.圖8外部鍵盤中斷流程圖圖9定時(shí)器中斷流程圖圖10鍵值掃描流程圖電子琴的系統(tǒng)仿真5.1部分仿真結(jié)果表5仿真結(jié)果按鍵編號(hào)發(fā)聲音調(diào)數(shù)碼管顯示備注0低XI0,-1中DO1,—2中RI2,-無播放曲目及停止1,2,或—重復(fù)按切換音樂圖11音樂顯示為“—”或不顯示的時(shí)候,琴鍵按下DO有效圖12按音樂鍵,播放音樂1,琴鍵彈奏無效5。2調(diào)試中出現(xiàn)的問題及解決電子琴的設(shè)計(jì)并非一帆風(fēng)順,在這期間遇到了很多問題,下面談幾個(gè)關(guān)鍵的問題。首先是數(shù)碼管顯示亂碼的問題,原本以為是數(shù)碼管字形碼表的代碼有錯(cuò),檢查幾遍發(fā)現(xiàn)代碼基沒錯(cuò),后來結(jié)合硬件圖一看,才知道硬件圖中數(shù)碼管是共陽(yáng)極接法,軟件中的數(shù)碼管字形碼表是共陰極的。其二是按鍵引入中斷檢測(cè)時(shí)遇到的問題,按音樂鍵后琴鍵無法發(fā)聲和顯示,浪費(fèi)了很多時(shí)間,最終發(fā)現(xiàn)是程序的判斷條件有問題。其三是揚(yáng)聲器發(fā)出的音調(diào)不對(duì),甚至沒有聲音,這個(gè)問題后來還是不能解決,最后放棄了LM386的功放電路,直接接揚(yáng)聲器,但是導(dǎo)致了部分琴鍵發(fā)聲帶雜音。總結(jié)在本次設(shè)計(jì)八路多功能搶答器的課設(shè)過程中,我利用AT89C52單片機(jī)及外圍接口實(shí)現(xiàn)電子琴,利用單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和計(jì)數(shù)的原理實(shí)現(xiàn)對(duì)彈奏和播放的功能,利用Proteus和Keil軟件設(shè)計(jì)出實(shí)驗(yàn)電路,完成了課設(shè)的任務(wù)。在本次課設(shè)中,我意識(shí)到將理論知識(shí)與實(shí)踐相結(jié)合的重要性,對(duì)于單片機(jī)這樣的課程,僅僅通過了解課本上的知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,我通過查資料和搜集有關(guān)文獻(xiàn),培養(yǎng)了自學(xué)能力,通過利用軟件仿真和焊接電路,在很大程度上提高了我的動(dòng)手能力.我們?cè)谡n設(shè)的過程中,遇到了很多問題,比如我在仿真的過程中錯(cuò)把共陰極數(shù)碼管字模當(dāng)作共陽(yáng)極使用,使得數(shù)碼管無法正常顯示,通過查資料我明白了共陰極數(shù)碼管是高電平驅(qū)動(dòng),公共端是負(fù)極,共陽(yáng)極數(shù)碼管是低電平驅(qū)動(dòng),公共端是正極,類似的問題出現(xiàn)了很多,我們通過一一排查,終于完成了課設(shè)任務(wù),結(jié)果表明,有付出必有收獲,把握重點(diǎn)、攻克難關(guān),活學(xué)活用對(duì)于牢固的掌握知識(shí),是非常有用的。在此次課設(shè)中,我學(xué)到了很多,也通過不斷糾正自己的錯(cuò)誤,意識(shí)到自身的不足,我對(duì)知識(shí)的掌握還沒有實(shí)現(xiàn)深層次的理解記憶,我相信這些教訓(xùn)都為我以后的學(xué)習(xí)奠定了良好的基礎(chǔ),時(shí)刻牢記團(tuán)隊(duì)合作、堅(jiān)持與努力的重要性。參考文獻(xiàn)[1]王思明,張金敏,茍軍年.單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)[M]。北京:人民郵電出版社,2008.[2]馮育長(zhǎng),鄒小兵.單片機(jī)系統(tǒng)設(shè)計(jì)與實(shí)例指導(dǎo)[M]。西安:西安電子科技大學(xué)出社,2004.[3]彭偉。單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)100例[M].北京:電子工業(yè)出版社,2009.[4]單丹,馬淑云。基于AT89C51單片機(jī)電子琴的設(shè)計(jì)[J].中國(guó)高新技術(shù)企業(yè),2002.附錄#include<reg52.h〉#defineucharunsignedchar#defineuintunsignedint//共陽(yáng)極數(shù)碼管UcharcodeLED[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xbf};sbitbee(cuò)p=P3^0;ucharkey;//鍵號(hào)sbitbuzzer=P3^7;uchardis_buf;ucharflag;//音符延時(shí)表uintcodeTone_Delay_Table[]={64524,64580,64684,64777,64820,64896,64966,65030,65058,65110,65157,65178,65217,65252,65283,65316};//音調(diào)與節(jié)拍ucharcodeSong1_Tone[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0,0xff};ucharcodeTime1_Tone[]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0xff};ucharcodeSong2_Tone[]={3,5,5,3,2,1,2,3,5,3,2,3,5,5,3,2,1,2,3,2,1,1,0xff};ucharcodeTime2_Tone[]={2,1,1,2,1,1,1,2,1,1,1,2,1,1,2,1,1,1,2,1,1,1,0xff};ucharcodeSong3_Tone[]={1,1,5,5,6,6,5,4,4,3,3,2,2,1,0xff};ucharcodeTime3_Tone[]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,0xff};//定義按鍵序號(hào)ucharkeyno;//音樂片段索引,音符索引ucharsong_index=0;uchartone_index=0;//音符指針,延時(shí)指針uchar*tone_pointer,*delay_pointer;//從當(dāng)前數(shù)組中取出音符的位置uchari=0;//毫秒延時(shí)voiddelayms(uintms){uchart;while(ms-—)for(t=0;t<120;t++);}//按鍵產(chǎn)生外部中斷voidKey_Press()interrupt0{TR0=0;//切換歌曲song_index=(song_index+1)%3;switch(song_index){case2:tone_pointer=Song1_Tone;delay_pointer=Time1_Tone;break;case1:tone_pointer=Song2_Tone;delay_pointer=Time2_Tone;break;case0:tone_pointer=0;delay_pointer=0;break;}//重新開始i=0;TR0=1;flag=1;}//T0中斷播放voidplay_music()interrupt1{if(song_index!=0){TH0=Tone_Delay_Table[tone_index]/256;TL0=Tone_Delay_Table[tone_index]%256;buzzer=~buzzer;}else{buzzer=0;}}/*voidkey_scan(){uchartemp,k;//高四位置0,放入四行P1=0x0f;delayms(2);//按鍵后00001111變成0000xxxx,x中1個(gè)為0,3個(gè)仍為1//以下亦或操作把3個(gè)1變成0,唯一0變成1temp=P1^0x0f;//判斷按鍵發(fā)生于0-3列的哪一列switch(temp){case1:k=0;break;case2:k=1;break;case4:k=2;break;case8:k=3;break;default:return;}//底四位置0,放入四列P1=0xf0;delayms(2);//按鍵后11110000變成xxxx0000,x為1個(gè)0,三個(gè)仍為1//高四位移動(dòng)至底四位,唯一0變1,其余為0temp=(P1>〉4)^0x0f;//對(duì)0~3行分別賦起始值0,4,8,12switch(temp){case1:k+=0;break;case2:k+=4;break;case4:k+=8;break;case8:k+=12;break;default:return;}keyno=k;}*///矩陣鍵盤掃描子程序voidkey_scan(void){uchartemp;P1=0x0F;//低四位輸入delayms(2);//稍稍延時(shí)temp=P1;//讀P1口temp=temp&0x0F;//取低四位temp=~(temp|0xF0);if(temp==1)//檢測(cè)按下的鍵所在的列號(hào),在第一列key=0;elseif(temp==2)//在第二列key=1;elseif(temp==4)//在第三列key=2;elseif(temp==8)//在第四列key=3;elsekey=16;//否則顯示-P1=0xF0;//高四位輸入delayms(2);temp=P1;//讀P1口temp=temp&0xF0;temp=~((temp〉>4)|0xF0);if(temp==1)//檢測(cè)按下的鍵所在的行號(hào),在第一行key=key+0;elseif(temp==2)//在第二行key=key+4;elseif(temp==4)//在第三行key=key+8;elseif(temp==8)//在第四行key=key+12;elsekey=16;//否則顯示—/*根據(jù)行號(hào)和列號(hào)得到按下的鍵號(hào)*/dis_buf=LED[key];//查表得鍵值}//T1中斷,發(fā)聲DORIMI。。。。voidplay()interrupt3{TH1=Tone_Delay_Table[key]/256;TL1=Tone_Delay_Table[key]%256;beep=~beep;}//主程序voidmain(){TMOD=0x11;//T0方式1,T1方式1IP=0x01;//INT0中斷優(yōu)先級(jí)最高EA=1;ET0=1;ET1=1;EX0=1;//允許中斷TR0=0;P1=0xbf;flag=0;while(1){//if(flag==0){P1=0xf0;//發(fā)送掃描碼if(P1!=0xf0)//有鍵按下{if(song_index!=2&&song_index!=1){key_scan();P0=dis_buf;//鍵值賦給P0口,顯示TR1=1;}}else{TR1=0;//停止播放}//}if(flag==1&&song_index!=0){delayms(2);tone_index=tone_pointer[i];if(tone_index==0xff){i=0;delayms(2000);continue;}TR0=1;delayms(delay_pointer[tone_index]*240);TR0=0;i++;switch(song_index){case2:P2=LED[2];break;case1:P2=LED[1];break;case0:P2=0xbf;break;}}}}MATLAB課程設(shè)計(jì)報(bào)告書課題名稱基于MATLAB的車牌識(shí)別課程設(shè)計(jì)姓名學(xué)號(hào)學(xué)院專業(yè)指導(dǎo)教師2016年6月21日基于MATLAB的車牌識(shí)別課程設(shè)計(jì)目錄一.課程設(shè)計(jì)目的……………二.設(shè)計(jì)原理…………………三.詳細(xì)設(shè)計(jì)步驟……………四.設(shè)計(jì)結(jié)果及分析…………五.總結(jié)………六。設(shè)計(jì)體會(huì)…………………七。參考文獻(xiàn)…………………一、課程設(shè)計(jì)目的車牌定位系統(tǒng)的目的在于正確獲取整個(gè)圖像中車牌的區(qū)域,并識(shí)別出車牌號(hào)。通過設(shè)計(jì)實(shí)現(xiàn)車牌識(shí)別系統(tǒng),能夠提高學(xué)生分析問題和解決問題的能力,還能培養(yǎng)一定的科研能力。二、設(shè)計(jì)原理:牌照自動(dòng)識(shí)別是一項(xiàng)利用車輛的動(dòng)態(tài)視頻或靜態(tài)圖像進(jìn)行牌照號(hào)碼、牌照顏色自動(dòng)識(shí)別的模式識(shí)別技術(shù).其硬件基礎(chǔ)一般包括觸發(fā)設(shè)備、攝像設(shè)備、照明設(shè)備、圖像采集設(shè)備、識(shí)別車牌號(hào)碼的處理機(jī)等,其軟件核心包括車牌定位算法、車牌字符分割算法和光學(xué)字符識(shí)別算法等。某些牌照識(shí)別系統(tǒng)還具有通過視頻圖像判斷車輛駛?cè)胍曇暗墓δ芊Q之為視頻車輛檢測(cè)。一個(gè)完整的牌照識(shí)別系統(tǒng)應(yīng)包括車輛檢測(cè)、圖像采集、牌照識(shí)別等幾部分。當(dāng)車輛檢測(cè)部分檢測(cè)到車輛到達(dá)時(shí)觸發(fā)圖像采集單元,采集當(dāng)前的視頻圖像。牌照識(shí)別單元對(duì)圖像進(jìn)行處理,定位出牌照位置,再將牌照中的字符分割出來進(jìn)行識(shí)別,然后組成牌照號(hào)碼輸出。三、詳細(xì)設(shè)計(jì)步驟:1。提出總體設(shè)計(jì)方案:牌照號(hào)碼、顏色識(shí)別為了進(jìn)行牌照識(shí)別,需要以下幾個(gè)基本的步驟:a.牌照定位,定位圖片中的牌照位置;b.牌照字符分割,把牌照中的字符分割出來;c.牌照字符識(shí)別,把分割好的字符進(jìn)行識(shí)別,最終組成牌照號(hào)碼。牌照識(shí)別過程中,牌照顏色的識(shí)別依據(jù)算法不同,可能在上述不同步驟實(shí)現(xiàn),通常與牌照識(shí)別互相配合、互相驗(yàn)證.(1)牌照定位:自然環(huán)境下,汽車圖像背景復(fù)雜、光照不均勻,如何在自然背景中準(zhǔn)確地確定牌照區(qū)域是整個(gè)識(shí)別過程的關(guān)鍵.首先對(duì)采集到的視頻圖像進(jìn)行大范圍相關(guān)搜索,找到符合汽車牌照特征的若干區(qū)域作為候選區(qū),然后對(duì)這些侯選區(qū)域做進(jìn)一步分析、評(píng)判,最后選定一個(gè)最佳的區(qū)域作為牌照區(qū)域,并將其從圖象中分割出來.車牌定位對(duì)圖像開閉運(yùn)算邊緣提取圖像預(yù)處理增強(qiáng)效果圖像導(dǎo)入原始圖像流程圖:車牌定位對(duì)圖像開閉運(yùn)算邊緣提取圖像預(yù)處理增強(qiáng)效果圖像導(dǎo)入原始圖像(2)牌照字符分割:按左右寬度切割出字符分析垂直投影找到每個(gè)字符中心位置去掉車牌的框架計(jì)算水平投影進(jìn)行車牌水平校正完成牌照區(qū)域的定位后,再將牌照區(qū)域分割成單個(gè)字符,然后進(jìn)行識(shí)別。字符分割一般采用垂直投影法。由于字符在垂直方向上的投影必然在字符間或字符內(nèi)的間隙處取得局部最小值的附近,并且這個(gè)位置應(yīng)滿足牌照的字符書寫格式、字符、尺寸限制和一些其他條件。利用垂直投影法對(duì)復(fù)雜環(huán)境下的汽車圖像中的字符分割有較好的效果.按左右寬度切割出字符分析垂直投影找到每個(gè)字符中心位置去掉車牌的框架計(jì)算水平投影進(jìn)行車牌水平校正(3)牌照字符識(shí)別:字符依次分析顯示誤差最小的圖片名字分析之差最小的圖片是哪張與數(shù)據(jù)庫(kù)的圖片相減切割出的字符送入庫(kù)中字符識(shí)別方法目前主要有基于模板匹配算法和基于人工神經(jīng)網(wǎng)絡(luò)算法。基于模板匹配算法首先將分割后的字符二值化,并將其尺寸大小縮放為字符數(shù)據(jù)庫(kù)中模板的大小,然后與所有的模板進(jìn)行匹配,最后選最佳匹配作為結(jié)果。基于人工神經(jīng)元網(wǎng)絡(luò)的算法有兩種:一種是先對(duì)待識(shí)別字符進(jìn)行特征提取,然后用所獲得特征來訓(xùn)練神經(jīng)網(wǎng)絡(luò)分配器;另一種方法是直接把待處理圖像輸入網(wǎng)絡(luò),由網(wǎng)絡(luò)自動(dòng)實(shí)現(xiàn)特征提取直至識(shí)別出結(jié)果。實(shí)際應(yīng)用中,牌照識(shí)別系統(tǒng)的識(shí)別率與牌照質(zhì)量和拍攝質(zhì)量密切相關(guān)。牌照質(zhì)量會(huì)受到各種因素的影響,如生銹、污損、油漆剝落、字體褪色、牌照被遮擋、牌照傾斜、高亮反光、多牌照、假牌照等等;實(shí)際拍攝過程也會(huì)受到環(huán)境亮度、拍攝亮度、車輛速度等等因素的影響。這些影響因素不同程度上降低了牌照識(shí)別的識(shí)別率,也正是牌照識(shí)別系統(tǒng)的困難和挑戰(zhàn)所在.為了提高識(shí)別率,除了不斷的完善識(shí)別算法,還應(yīng)該想辦法克服各種光照條件,使采集到的圖像最利于識(shí)別。字符依次分析顯示誤差最小的圖片名字分析之差最小的圖片是哪張與數(shù)據(jù)庫(kù)的圖片相減切割出的字符送入庫(kù)中2.各模塊的實(shí)現(xiàn):2。1輸入待處理的原始圖像:clear;closeall;%Step1獲取圖像裝入待處理彩色圖像并顯示原始圖像Scolor=imread('3.jpg');%imread函數(shù)讀取圖像文件圖2.1原始圖像2。2圖像的灰度化:彩色圖像包含著大量的顏色信息,不但在存儲(chǔ)上開銷很大,而且在處理上也會(huì)降低系統(tǒng)的執(zhí)行速度,因此在對(duì)圖像進(jìn)行識(shí)別等處理中經(jīng)常將彩色圖像轉(zhuǎn)變?yōu)榛叶葓D像,以加快處理速度。由彩色轉(zhuǎn)換為灰度的過程叫做灰度化處理。選擇的標(biāo)準(zhǔn)是經(jīng)過灰度變換后,像素的動(dòng)態(tài)范圍增加,圖像的對(duì)比度擴(kuò)展,使圖像變得更加清晰、細(xì)膩、容易識(shí)別。%將彩色圖像轉(zhuǎn)換為黑白并顯示Sgray=rgb2gray(Scolor);%rgb2gray轉(zhuǎn)換成灰度圖figure,imshow(Sgray),title('原始黑白圖像');圖2。2原始黑白圖像2.3對(duì)原始圖像進(jìn)行開操作得到圖像背景圖像:s=strel(’disk’,13);%strei函數(shù)Bgray=imopen(Sgray,s);%打開sgrays圖像figure,imshow(Bgray);title('背景圖像’);%輸出背景圖像圖2。3背景圖像2.4灰度圖像與背景圖像作減法,對(duì)圖像進(jìn)行增強(qiáng)處理:Egray=imsubtract(Sgray,Bgray);%兩幅圖相減figure,imshow(Egray);title('增強(qiáng)黑白圖像’);%輸出黑白圖像圖2。4黑白圖像2。5取得最佳閾值,將圖像二值化:二值圖像是指整幅圖像畫面內(nèi)僅黑、白二值的圖像。在實(shí)際的車牌處理系統(tǒng)中,進(jìn)行圖像二值變換的關(guān)鍵是要確定合適的閥值,使得字符與背景能夠分割開來,二值變換的結(jié)果圖像必須要具備良好的保形性,不丟掉有用的形狀信息,不會(huì)產(chǎn)生額外的空缺等等.車牌識(shí)別系統(tǒng)要求處理的速度高、成本低、信息量大,采用二值圖像進(jìn)行處理,能大大地提高處理效率。閾值處理的操作過程是先由用戶指定或通過算法生成一個(gè)閾值,如果圖像中某中像素的灰度值小于該閾值,則將該像素的灰度值設(shè)置為0或255,否則灰度值設(shè)置為255或0。fmax1=double(max(max(Egray)));%egray的最大值并輸出雙精度型fmin1=double(min(min(Egray)));%egray的最小值并輸出雙精度型level=(fmax1-(fmax1-fmin1)/3)/255;%獲得最佳閾值bw22=im2bw(Egray,level);%轉(zhuǎn)換圖像為二進(jìn)制圖像bw2=double(bw22);figure,imshow(bw2);title(’圖像二值化');%得到二值圖像圖2。5二值圖像2.6邊緣檢測(cè):兩個(gè)具有不同灰度值的相鄰區(qū)域之間總存在邊緣,邊緣就是灰度值不連續(xù)的結(jié)果,是圖像分割、紋理特征提取和形狀特征提取等圖像分析的基礎(chǔ)。為了對(duì)有意義的邊緣點(diǎn)進(jìn)行分類,與這個(gè)點(diǎn)相聯(lián)系的灰度級(jí)必須比在這一點(diǎn)的背景上變換更有效,我們通過門限方法來決定一個(gè)值是否有效。所以,如果一個(gè)點(diǎn)的二維一階導(dǎo)數(shù)比指定的門限大,我們就定義圖像中的次點(diǎn)是一個(gè)邊緣點(diǎn),一組這樣的依據(jù)事先定好的連接準(zhǔn)則相連的邊緣點(diǎn)就定義為一條邊緣。經(jīng)過一階的導(dǎo)數(shù)的邊緣檢測(cè),所求的一階導(dǎo)數(shù)高于某個(gè)閾值,則確定該點(diǎn)為邊緣點(diǎn),這樣會(huì)導(dǎo)致檢測(cè)的邊緣點(diǎn)太多。可以通過求梯度局部最大值對(duì)應(yīng)的點(diǎn),并認(rèn)定為邊緣點(diǎn),去除非局部最大值,可以檢測(cè)出精確的邊緣.一階導(dǎo)數(shù)的局部最大值對(duì)應(yīng)二階導(dǎo)數(shù)的零交叉點(diǎn),這樣通過找圖像強(qiáng)度的二階導(dǎo)數(shù)的零交叉點(diǎn)就能找到精確邊緣點(diǎn)。grd=edge(bw2,’canny’)%用canny算子識(shí)別強(qiáng)度圖像中的邊界figure,imshow(grd);title('圖像邊緣提取');%輸出圖像邊緣圖2.6像邊緣提取2.7對(duì)得到圖像作開操作進(jìn)行濾波:數(shù)學(xué)形態(tài)非線性濾波,可以用于抑制噪聲,進(jìn)行特征提取、邊緣檢測(cè)、圖像分割等圖像處理問題。腐蝕是一種消除邊界點(diǎn)的過程,結(jié)果是使目標(biāo)縮小,孔洞增大,因而可有效的消除孤立噪聲點(diǎn);膨脹是將與目標(biāo)物體接觸的所有背景點(diǎn)合并到物體中的過程,結(jié)果是使目標(biāo)增大,孔洞縮小,可填補(bǔ)目標(biāo)物體中的空洞,形成連通域。先腐蝕后膨脹的過程稱為開運(yùn)算,它具有消除細(xì)小物體,并在纖細(xì)處分離物體和平滑較大物體邊界的作用;先膨脹后腐蝕的過程稱為閉運(yùn)算,具有填充物體內(nèi)細(xì)小空洞,連接鄰近物體和平滑邊界的作用。對(duì)圖像做了開運(yùn)算和閉運(yùn)算,閉運(yùn)算可以使圖像的輪廓線更為光滑,它通常用來消掉狹窄的間斷和長(zhǎng)細(xì)的鴻溝,消除小的孔洞,并彌補(bǔ)輪廓線中的斷裂。bg1=imclose(grd,strel('rectangle',[5,19]));%取矩形框的閉運(yùn)算figure,imshow(bg1);title(’圖像閉運(yùn)算[5,19]');%輸出閉運(yùn)算的圖像bg3=imopen(bg1,strel(’rectangle’,[5,19]));%取矩形框的開運(yùn)算figure,imshow(bg3);title('圖像開運(yùn)算[5,19]’);%輸出開運(yùn)算的圖像bg2=imopen(bg3,strel(’rectangle',[19,1]));%取矩形框的開運(yùn)算figure,imshow(bg2);title(’圖像開運(yùn)算[19,1]');%輸出開運(yùn)算的圖像圖2.7。1閉運(yùn)算的圖像圖2.7。2開運(yùn)算的圖像圖2.7.3開運(yùn)算的圖像2.8對(duì)二值圖像進(jìn)行區(qū)域提取,并計(jì)算區(qū)域特征參數(shù)。進(jìn)行區(qū)域特征參數(shù)比較,提取車牌區(qū)域:a。對(duì)圖像每個(gè)區(qū)域進(jìn)行標(biāo)記,然后計(jì)算每個(gè)區(qū)域的圖像特征參數(shù):區(qū)域中心位置、最小包含矩形、面積.[L,num]=bwlabel(bg2,8);%標(biāo)注二進(jìn)制圖像中已連接的部分Feastats=imfeature(L,’basic’);%計(jì)算圖像區(qū)域的特征尺寸Area=[Feastat(yī)s.Area];%區(qū)域面積BoundingBox=[Feastats.BoundingBox];%[xywidthheight]車牌的框架大小RGB=label2rgb(L,'spring’,'k','shuffle');%標(biāo)志圖像向RGB圖像轉(zhuǎn)換figure,imshow(RGB);title(’圖像彩色標(biāo)記’);%輸出框架的彩色圖像圖2.8.1彩色圖像b。計(jì)算出包含所標(biāo)記的區(qū)域的最小寬和高,并根據(jù)先驗(yàn)知識(shí),比較誰的寬高比更接近實(shí)際車牌寬高比,將更接近的提取并顯示出來.計(jì)算矩形的高度框架的寬度和高度的范圍計(jì)算矩形的高度框架的寬度和高度的范圍車牌的開始列車牌的開始行計(jì)算車牌長(zhǎng)寬比獲取車牌二值子圖計(jì)算矩形的寬度程序流程圖圖2.8.2灰度子圖和二值子圖2.9對(duì)水平投影進(jìn)行峰谷分析:對(duì)水平投影進(jìn)行峰谷分析,計(jì)算出車牌上邊框、車牌字符投影、車牌下邊框的波形峰上升點(diǎn)、峰下降點(diǎn)、峰寬、谷寬、峰間距離、峰中心位置參數(shù)。histcol1=sum(sbw1);%計(jì)算垂直投影histrow=sum(sbw1');%計(jì)算水平投影figure,subplot(2,1,1),bar(histcol1);title(’垂直投影(含邊框)');%輸出垂直投影subplot(2,1,2),bar(histrow);title(’水平投影(含邊框)’);%輸出水平投影圖2.9.1垂直投影和水平投影figure,subplot(2,1,1),bar(histrow);title('水平投影(含邊框)');%輸出水平投影subplot(2,1,2),imshow(sbw1);title('車牌二值子圖’);%輸出二值圖對(duì)水平投影進(jìn)行峰谷分析:求水平投影的最小值取閾值求水平投影的最小值取閾值計(jì)算谷寬度計(jì)算峰距離計(jì)算下降點(diǎn)找到峰中心位置求水平投影的平均值圖2.9.2水平投影和二值圖程序流程圖2.10計(jì)算車牌旋轉(zhuǎn)角度:a。車牌傾斜的原因?qū)е峦队靶Ч骞晒炔幻黠@,在這里需要做車牌矯正處理.這里采取的線性擬合的方法,計(jì)算出車牌上邊或下邊圖像值為1的點(diǎn)擬合直線與水平X軸的夾角。求最大寬度為字符求最大寬度為字符檢測(cè)上邊從頂邊至第一個(gè)峰下降點(diǎn)掃描從底邊至最后一個(gè)峰的上升點(diǎn)掃描找第一個(gè)為1的點(diǎn)標(biāo)示出圖像大小程序流程圖(2)線性擬合,計(jì)算與x夾角fresult=fit(xdata’,ydata',’poly1’);%poly1表示一介擬合Y=p1*x+p2p1=fresult。p1;angle=atan(fresult.p1)*180/pi;%弧度換為度,360/2pi,pi=3.14(3)旋轉(zhuǎn)車牌圖象subcol=imrotate(subcol1,angle,'bilinear','crop');%旋轉(zhuǎn)車牌圖象sbw=imrotate(sbw1,angle,'bilinear','crop');%旋轉(zhuǎn)圖像figure,subplot(2,1,1),imshow(subcol);title(’車牌灰度子圖');%輸出車牌旋轉(zhuǎn)后的灰度圖像標(biāo)題顯示車牌灰度子圖subplot(2,1,2),imshow(sbw);title(’');%輸出車牌旋轉(zhuǎn)后的灰度圖像title(['車牌旋轉(zhuǎn)角:',num2str(angle),'度'],'Color','r');%顯示車牌的旋轉(zhuǎn)角度圖2。10.1旋轉(zhuǎn)后的灰度圖像和旋轉(zhuǎn)角度b。旋轉(zhuǎn)車牌后重新計(jì)算車牌水平投影,去掉車牌水平邊框,獲取字符高度:histcol1=sum(sbw);%計(jì)算垂直投影histrow=sum(sbw');%計(jì)算水平投影figure,subplot(2,1,1),bar(histcol1);title(’垂直投影(旋轉(zhuǎn)后)');subplot(2,1,2),bar(histrow);title(’水平投影(旋轉(zhuǎn)后)');圖2.10.2垂直投影(旋轉(zhuǎn)后)和水平投影(旋轉(zhuǎn)后)figure,subplot(2,1,1),bar(histrow);title(’水平投影(旋轉(zhuǎn)后)’);subplot(2,1,2),imshow(sbw);title('車牌二值子圖(旋轉(zhuǎn)后)');圖2.10。3水平投影(旋轉(zhuǎn)后)和車牌二值子圖(旋轉(zhuǎn)后)2。11去水平(上下)邊框,獲取字符高度:a。通過以上水平投影、垂直投影分析計(jì)算,獲得了車牌字符高度、字符頂行與尾行、字符寬度、每個(gè)字符的中心位置,為提取分割字符具備了條件。maxhight=max(markrow2);findc=find(markrow2==maxhight);rowtop=markrow(findc);rowbot=markrow(findc+1)—markrow1(findc+1);sbw2=sbw(rowtop:rowbot,:);%子圖為(rowbot-rowtop+1)行maxhight=rowbot—rowtop+1;%字符高度(rowbot-rowtop+1)b。計(jì)算車牌垂直投影,去掉車牌垂直邊框,獲取車牌及字符平均寬度histcol=sum(sbw2);%計(jì)算垂直投影figure,subplot(2,1,1),bar(histcol);title(’垂直投影(去水平邊框后)');%輸出車牌的垂直投影圖像subplot(2,1,2),imshow(sbw2);%輸出垂直投影圖像title(['車牌字符高度:',int2str(maxhight)],'Color’,’r');%輸出車牌字符高度%對(duì)垂直投影進(jìn)行峰谷分析求垂直投影的最小值取閾值求垂直投影的最小值取閾值計(jì)算字符上升點(diǎn)計(jì)算谷寬度計(jì)算字符距離找到字符中心位置求垂直投影的平均值圖2.11垂直投影圖像和車牌字符高度程序流程圖c。計(jì)算車牌上每個(gè)字符中心位置,計(jì)算最大字符寬度maxwidthl=0;fork=1:n1markcol3(k)=markcol(k+1)-markcol1(k+1);%字符下降點(diǎn)markcol4(k)=markcol3(k)-markcol(k);%字符寬度(上升點(diǎn)至下降點(diǎn))markcol5(k)=markcol3(k)—double(uint16(markcol4(k)/2));%字符中心位置endmarkcol6=diff(markcol5);%字符中心距離(字符中心點(diǎn)至下一個(gè)字符中心點(diǎn))maxs=max(markcol6);%查找最大值,即為第二字符與第三字符中心距離findmax=find(markcol6==maxs);markcol6(findmax)=0;maxwidth=max(markcol6);%查找最大值,即為最大字符寬度d.提取分割字符,并變換為22行*14列標(biāo)準(zhǔn)子圖l=1;[m2,n2]=size(subcol);figure;fork=findmax-1:findmax+5cleft=markcol5(k)-maxwidth/2;cright=markcol5(k)+maxwidth/2-2;ifcleft〈1cleft=1;cright=maxwidth;endifcright>n2cright=n2;cleft=n2-maxwidth;endSegGray=sbw(rowtop:rowbot,cleft:cright);SegBw1=sbw(rowtop:rowbot,cleft:cright);SegBw2=imresize(SegBw1,[2214]);%變換為22行*14列標(biāo)準(zhǔn)子圖subplot(2,n1,l),imshow(SegGray);ifl==7title(['車牌字符寬度:',int2str(maxwidth)],'Color','r');endsubplot(2,n1,n1+l),imshow(SegBw2);fname=strcat(’F:\MATLAB\work\sam\image',int2str(k),’.jpg');%保存子圖備選入樣本庫(kù),并建立樣本庫(kù)imwrite(SegBw2,fname,’jpg’)l=l+1;end2。12將計(jì)算計(jì)算獲取的字符圖像與樣本庫(kù)進(jìn)行匹配,自動(dòng)識(shí)別出字符代碼:進(jìn)行車牌識(shí)別前需要使用樣本對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,然后使用訓(xùn)練好的網(wǎng)絡(luò)對(duì)車牌進(jìn)行識(shí)別.其具體流程為:使用漢字、字母、字母數(shù)字、數(shù)字四個(gè)樣本分別對(duì)四個(gè)子網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到相應(yīng)的節(jié)點(diǎn)數(shù)和權(quán)值。對(duì)已經(jīng)定位好的車牌進(jìn)行圖像預(yù)處理,逐個(gè)的特征提取,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥品遴選相關(guān)管理制度
- 藥庫(kù)突然緊急管理制度
- 藥店應(yīng)收應(yīng)付管理制度
- 藥店藥品存放管理制度
- 營(yíng)運(yùn)汽車公司管理制度
- 設(shè)備元件保密管理制度
- 設(shè)備外圍修理管理制度
- 設(shè)備搬運(yùn)安全管理制度
- 設(shè)備泄露檢測(cè)管理制度
- 設(shè)備維修合同管理制度
- 學(xué)習(xí)解讀《水利水電建設(shè)工程驗(yàn)收規(guī)程》SLT223-2025課件
- 零星維修工程項(xiàng)目方案施工組織計(jì)劃
- FMEA第五版(實(shí)例2)
- 厭氧膠(MSDS)
- 智障兒童的家庭教育(課堂PPT)
- 《電路分析基礎(chǔ)》試題及答案
- 生物多樣性影響評(píng)價(jià)規(guī)范
- E16型超速保護(hù)系統(tǒng)的特點(diǎn)與使用
- 日本文學(xué)概論1
- 《鐵路貨車運(yùn)用維修規(guī)程》2018年10月
- 關(guān)口電能計(jì)量裝置管理辦法
評(píng)論
0/150
提交評(píng)論