版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)說(shuō)明書(shū)</b></p><p> 課 程 名 稱: 汽車(chē)電控系統(tǒng)實(shí)習(xí)及課程設(shè)計(jì) </p><p> 課 程 代 碼: </p><p> 題 目: 車(chē)速電控系統(tǒng)設(shè)計(jì)及其仿真 </p><p>
2、 年級(jí)/專業(yè)/班: 09級(jí)/車(chē)輛工程/汽電3班 </p><p> 學(xué) 生 姓 名: </p><p> 學(xué) 生 學(xué) 號(hào): </p><p> 開(kāi) 始 時(shí) 間: 2012 年 12 月 31 日</p>
3、<p> 完 成 時(shí) 間: 2013 年 01 月 18 日</p><p> 課程設(shè)計(jì)成績(jī): </p><p> 指導(dǎo)教師簽名: 年 月 日</p><p><b> 目 錄</b></p>
4、<p> 摘要…………………………………………………………………………………………1</p><p><b> 1 引言 </b></p><p> 1.1問(wèn)題的提出…………………………………………………………………………………2</p><p> 1.2單片機(jī)的國(guó)內(nèi)外發(fā)展情況……………………………………………………………
5、…3</p><p> 1.3任務(wù)分析……………………………………………………………………………………5</p><p> 2 方案分析及方案設(shè)計(jì) </p><p> 2.1車(chē)速控制方案的選擇……………………………………………………………………6</p><p> 2.2總體方案的確定…………………………………………………………………
6、………7</p><p><b> 3系統(tǒng)硬件設(shè)計(jì) </b></p><p> 3.1主控芯片的選擇…………………………………………………………………………8</p><p> 3.2顯示電路設(shè)計(jì)……………………………………………………………………………11</p><p> 3.3控制機(jī)構(gòu)電路設(shè)計(jì)…………………
7、……………………………………………………12</p><p> 4系統(tǒng)軟件設(shè)計(jì)與仿真 </p><p> 4.1 Proteus軟件環(huán)境介紹…………………………………………………………………13</p><p> 4.2 Protel軟件環(huán)境介紹…………………………………………………………………14</p><p> 4.3系統(tǒng)軟件分
8、析…………………………………………………………………………15</p><p> 4.4程序流程圖……………………………………………………………………………16 </p><p> 4.5 原理圖檢查與元器件清單………………………………………………………………14</p><p> 4.6 程序調(diào)試………………………………………………………………………………1
9、4</p><p> 4.7 Proteus仿真…………………………………………………………………………15</p><p> 結(jié)論…………………………………………………………………………………………24</p><p> 致謝…………………………………………………………………………………………25</p><p> 參考文獻(xiàn)…………
10、…………………………………………………………………………26</p><p> 附錄A 系統(tǒng)原理圖………………………………………………………………………27</p><p> 附錄B 程序編譯圖………………………………………………………………………28</p><p> 附錄C PCB圖………………………………………………………………………………29&l
11、t;/p><p> 附錄D 程序代碼……………………………………………………………………………30 </p><p><b> 摘 要</b></p><p> 本設(shè)計(jì)介紹一種基于AT89C51單片機(jī)為控制核心的車(chē)速檢測(cè)及控制。為了保證汽車(chē)行駛的安全性,提高汽車(chē)運(yùn)輸生產(chǎn)率,充分發(fā)揮汽車(chē)的動(dòng)力性,正確
12、掌握行車(chē)速度是非常重要的。在本次設(shè)計(jì)中采用一個(gè)指示燈來(lái)進(jìn)行車(chē)速狀況的報(bào)警,同時(shí),運(yùn)用一個(gè)自動(dòng)控制的電動(dòng)機(jī)來(lái)控制供油電磁閥的關(guān)閉。車(chē)速控制在一定的范圍內(nèi),保證了汽車(chē)行駛的安全。本設(shè)計(jì)說(shuō)明書(shū)對(duì)該系統(tǒng)的硬件電路,工作原理進(jìn)行了詳細(xì)的介紹。同時(shí)給出了軟件設(shè)計(jì)的流程圖和主要源代碼及利用MATLAB進(jìn)行結(jié)果仿真與分析。</p><p> 關(guān)鍵詞: AT89C51單片機(jī) 車(chē)速 控制 供油電磁閥 報(bào)警 仿真<
13、;/p><p><b> 1 引 言 </b></p><p> 1.1 問(wèn)題的提出 </p><p> 在現(xiàn)代社會(huì),汽車(chē)作為一種大眾的交通工具在人們的生活中扮演越來(lái)越重要的角色。在汽車(chē)的使用過(guò)程中,車(chē)速這一參數(shù)對(duì)汽車(chē)多的性能及行車(chē)的安全的影響是非常大的。車(chē)速較高的時(shí)候,車(chē)輛的更難控制,操縱穩(wěn)定性要變差,使得汽車(chē)行駛的危險(xiǎn)性增加,危害人類安
14、全。據(jù)報(bào)道,交通事故中有很大的一部分是由于超速行駛而引起的。 因此實(shí)時(shí)的顯示車(chē)速,在車(chē)速過(guò)高時(shí)指示燈提示,并自動(dòng)切斷燃油供給系統(tǒng)可以有效地減少此類事故的發(fā)生,使人們能夠更加安全的出行。</p><p> 1.2單片機(jī)的國(guó)內(nèi)外發(fā)展情況</p><p> 單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件:CPU
15、、內(nèi)存、內(nèi)部和外部總線系統(tǒng),目前大部分還會(huì)具有外存。同時(shí)集成諸如通訊接口、定時(shí)器,實(shí)時(shí)時(shí)鐘等外圍設(shè)備。而現(xiàn)在最強(qiáng)大的單片機(jī)系統(tǒng)甚至可以將聲音、圖像、網(wǎng)絡(luò)、復(fù)雜的輸入輸出系統(tǒng)集成在一塊芯片上。</p><p> 單片機(jī)也被稱為微控制器(Microcontroller),是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來(lái)。</p><p> 早期的單片機(jī)都是8位或
16、4位的。其中最成功的是INTEL的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開(kāi)始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開(kāi)發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的W
17、indows和Linux操作系統(tǒng)。</p><p> 可以說(shuō),二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過(guò),這種電腦,通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱PC機(jī)。它由主機(jī)、鍵盤(pán)、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡(jiǎn)單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)
18、械的“肚子”里。它在整個(gè)裝置中,起著有如人類頭腦的作用,它出了毛病,整個(gè)裝置就癱瘓了?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級(jí)換代的功效,常在產(chǎn)品名稱前冠以形容詞——“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開(kāi)發(fā)者搞出來(lái)的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可
19、編程邏輯器件上。</p><p> 單片機(jī)誕生于20世紀(jì)70年代末,經(jīng)歷了SCM、MCU、SoC三大階段。 </p><p> 1.SCM即單片微型計(jì)算機(jī)(Single Chip Microcomputer)階段,主要是尋求最佳的單片形態(tài)嵌入式系統(tǒng)的最佳體系結(jié)構(gòu)?!皠?chuàng)新模式”獲得成功,奠定了SCM與通用計(jì)算機(jī)完全不同的發(fā)展道路。在開(kāi)創(chuàng)嵌入式系統(tǒng)獨(dú)立發(fā)展道路上,Intel公司功不可沒(méi)。
20、</p><p> 2.MCU即微控制器(Micro Controller Unit)階段,主要的技術(shù)發(fā)展方向是:不斷擴(kuò)展?jié)M足嵌入式應(yīng)用時(shí),對(duì)象系統(tǒng)要求的各種外圍電路與接口電路,突顯其對(duì)象的智能化控制能力。它所涉及的領(lǐng)域都與對(duì)象系統(tǒng)相關(guān),因此,發(fā)展MCU的重任不可避免地落在電氣、電子技術(shù)廠家。從這一角度來(lái)看,Intel逐漸淡出MCU的發(fā)展也有其客觀因素。在發(fā)展MCU方面,最著名的廠家當(dāng)數(shù)Philips公司。 &
21、lt;/p><p> 3.單片機(jī)是嵌入式系統(tǒng)的獨(dú)立發(fā)展之路,向MCU階段發(fā)展的重要因素,就是尋求應(yīng)用系統(tǒng)在芯片上的最大化解決;因此,專用單片機(jī)的發(fā)展自然形成了SoC化趨勢(shì)。隨著微電子技術(shù)、IC設(shè)計(jì)、EDA工具的發(fā)展,基于SoC的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)會(huì)有較大的發(fā)展。因此,對(duì)單片機(jī)的理解可以從單片微型計(jì)算機(jī)、單片微控制器延伸到單片應(yīng)用系統(tǒng)。</p><p><b> 1.3任務(wù)與分析
22、</b></p><p> 本設(shè)計(jì)的主要任務(wù)是基于AT89C51單片機(jī)實(shí)現(xiàn)車(chē)速的測(cè)量,并對(duì)車(chē)速進(jìn)行一定的控制,介紹一種基于89C51單片機(jī)系統(tǒng)的轉(zhuǎn)速測(cè)試儀的測(cè)量原理、硬件組成和軟件設(shè)計(jì)。在設(shè)計(jì)過(guò)程中,將應(yīng)用Protel軟件及、Keil軟件及Proteus軟件等軟件來(lái)完成設(shè)計(jì)要求。</p><p> 2方案分析及方案設(shè)計(jì) </p><p> 2.1
23、總體方案的選擇 </p><p> 通過(guò)查閱相關(guān)資料,設(shè)計(jì)初期有兩種方案可供選擇,分別如下:</p><p> (1)利用單片機(jī)的定時(shí)功能定時(shí)一段時(shí)間,并在這段時(shí)間內(nèi)對(duì)外部信號(hào)進(jìn)行計(jì)數(shù),最后顯示在LCD1602液晶屏上。</p><p> ?。?)此方案為通過(guò)檢測(cè)外部輸入信號(hào),當(dāng)?shù)谝淮螜z測(cè)到后即開(kāi)始計(jì)時(shí),在第二次信號(hào)到來(lái)時(shí)停止計(jì)時(shí),將計(jì)時(shí)值保存。如此循環(huán)五次,
24、通過(guò)進(jìn)行加權(quán)濾波和相應(yīng)的轉(zhuǎn)換處理送顯示器顯示,如果車(chē)速大于設(shè)定的最高車(chē)速值,系統(tǒng)的指示燈點(diǎn)亮提醒駕駛員,電機(jī)自動(dòng)運(yùn)作來(lái)切斷燃油供給,強(qiáng)迫汽車(chē)減速。</p><p> 2.2總體方案的確定</p><p> 通過(guò)對(duì)兩種方案的對(duì)比,系統(tǒng)最終選擇第二方案。</p><p> 圖2.1 系統(tǒng)框圖</p><p><b> 3系統(tǒng)硬
25、件電路設(shè)計(jì)</b></p><p> 此系統(tǒng)設(shè)計(jì)主要涉及以下3個(gè)部分:(1)主控芯片介紹(2)顯示器的設(shè)計(jì)(3)控制機(jī)構(gòu)設(shè)計(jì)</p><p> 3.1 主控芯片的選擇</p><p> AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Mem
26、ory)的低電壓,高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌
27、入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案,其引腳排列如圖3.1所示</p><p> 圖3.1 89C51單片機(jī)引腳圖</p><p> 51單片機(jī)的復(fù)位需要給第九引腳持續(xù)兩個(gè)周期的高電平。系統(tǒng)的復(fù)位電路由一個(gè)10u電解電容和一個(gè)按壓開(kāi)關(guān)并聯(lián)再串聯(lián)一個(gè)10K的電阻。如圖3.2所示:</p><p> 圖3.2 時(shí)鐘復(fù)位電路</p><
28、p> 電阻在上接地,電容在中間接高電平,下面為RST。這種復(fù)位電路的工作原理是:通電時(shí),電容兩端相當(dāng)于是短路,于是RST引腳上為高電平,然后電源通過(guò)電阻對(duì)電容充電,RST端電壓慢慢下降,降到一定程序,即為低電平,單片機(jī)開(kāi)始正常工作。</p><p> 在引腳XTAL1和XTAL2外接晶體振蕩器,就構(gòu)成了內(nèi)部振蕩電路,C1、C2起穩(wěn)定振蕩頻率、快速起振的作用,電容值一般為5~30PF。晶振常選用頻率為6M
29、Hz、12MHz、或24MHz的,采用串口時(shí)常用頻率為11.0592MHz的晶振。內(nèi)部振蕩方式所得到的時(shí)鐘信號(hào)比較穩(wěn)定,應(yīng)用較多。此設(shè)計(jì)選用的晶振頻率為12MHz,電容值為30PF。具體電路設(shè)計(jì)電路如圖3.3所示:</p><p> 圖3.3 晶體振蕩電路</p><p> 圖3.4 最小系統(tǒng)</p><p> 3.2 顯示電路設(shè)計(jì)</p>
30、<p> 本設(shè)計(jì)采用的計(jì)數(shù)顯示電路由單片機(jī)89C51,液晶顯示器LCD1602及上拉排阻組成。</p><p> 字符型LCD簡(jiǎn)介:字符型液晶顯示模塊是一種專門(mén)用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式LCD。目前常用16*1,16*2,20*2和40*2行等的模塊。本設(shè)計(jì)采用的是16*2行的LCD1602。</p><p> 1602液晶顯示模塊可以和單片機(jī)AT89C51直接接口
31、,電路原理圖如圖3.4所示:</p><p> 圖3.5 顯示電路原理圖</p><p> 系統(tǒng)還設(shè)計(jì)了一個(gè)LED指示燈用以在車(chē)速過(guò)高時(shí)提醒駕駛員。其原理圖如下:</p><p> 圖3.6 LED指示燈電路原理圖</p><p> 3.3 控制機(jī)構(gòu)電路設(shè)計(jì)</p><p> 由于在車(chē)速過(guò)高時(shí)需要控制機(jī)
32、構(gòu)控制燃油的供給,以限制其車(chē)速。在此,系統(tǒng)選用直流電動(dòng)機(jī)作為控制供油電磁閥的執(zhí)行機(jī)構(gòu)。其原理圖如圖3.6所示。</p><p> 圖3.7 系統(tǒng)執(zhí)行機(jī)構(gòu)</p><p> 4系統(tǒng)軟件設(shè)計(jì)與仿真</p><p> 4.1 Proteus軟件環(huán)境介紹</p><p> 本系統(tǒng)的硬件設(shè)計(jì)首先是在Proteus軟件環(huán)境中仿真實(shí)現(xiàn)的。Prot
33、eus是目前最好的模擬單片機(jī)外圍器件的工具。可以仿真51系列、AVR、PIC等常用的MCU及其外圍電路(如LCD,RAM,ROM,鍵盤(pán),馬達(dá),LED,AD/DA,部分SPI器件,部分IIC器件...)。在沒(méi)有硬件的情況下,Proteus能像pspice 仿真模擬/數(shù)字電路那樣仿真MCU及外圍電路。另外,即使有硬件,在程序編寫(xiě)早期用軟件仿真一下也是很有必要的。Proteus軟件主要具有以下幾個(gè)方面的特點(diǎn):</p><p
34、> 1、設(shè)計(jì)和仿真軟件Proteus 是一個(gè)很有用的工具,它可以幫助學(xué)生和專業(yè)人士提高他們的模擬和數(shù)字電路的設(shè)計(jì)能力。</p><p> 2、它允許對(duì)電路設(shè)計(jì)采用圖形環(huán)境,在這種環(huán)境中,可以使用一個(gè)特定符號(hào)來(lái)代替元器件,并完成不會(huì)對(duì)真實(shí)電路造成任何損害的電路仿真操作。</p><p> 3、它可以仿真儀表以及可描述在仿真過(guò)程中所獲得的信號(hào)的圖表。</p><
35、p> 4、它可以仿真目前流行的單片機(jī),如PICS, ATMEL-AVR, MOTOROLA, 8051 等。</p><p> 5、在設(shè)計(jì)綜合性方案中,還可以利用ARES開(kāi)發(fā)印制電路板。</p><p> 4.2 Protel軟件環(huán)境介紹</p><p> Protel印制板設(shè)計(jì)軟件包是澳大利亞protel technology公司與1990年推出的電
36、子CAD產(chǎn)品,具有方便、易學(xué)、實(shí)用、快速以及高速度、高步通率的特點(diǎn)。它采用了分層次下拉窗口菜單結(jié)構(gòu)形式,用戶基本上不需要記背太多的鍵盤(pán)命令,用鼠標(biāo)點(diǎn)擊菜單命令就能操作,protel有著很高的自動(dòng)布線布通率。布通率是電子產(chǎn)CAD產(chǎn)品的一項(xiàng)重要指標(biāo),它反映電子元件在電路圖中連接關(guān)系有多少能在印刷版圖中實(shí)現(xiàn)。在設(shè)計(jì)常用的單、雙面印制板時(shí)只要選擇適當(dāng)?shù)脑季趾筒季€策略方法,protel就可以輕易的達(dá)到98%-100%的布通率。對(duì)于極少數(shù)不能布
37、通的定方,protel可以用飛線指示出來(lái),引導(dǎo)用戶用手工方法連通。另外,protel有強(qiáng)大的宏命令設(shè)置功能,利用宏命令功能多定義的熱鍵可以大大提高操作速度</p><p> Protel對(duì)微機(jī)的軟硬件配置要求很低:cpu在8088以上,dos2.0以上版本,內(nèi)存640kb以上,雙軟件(或一個(gè)軟件一個(gè)硬盤(pán)),單色顯示器(多層板設(shè)計(jì)時(shí)最好用彩色),各種兼容打印機(jī)。也能在Windows9X平臺(tái)的模擬DOS下運(yùn)行。&l
38、t;/p><p> Protel已成為印制板設(shè)計(jì)加工方面的工業(yè)標(biāo)準(zhǔn)。據(jù)初步統(tǒng)計(jì)Protel在CAD的市場(chǎng)占有率達(dá) 95%,成為電子產(chǎn)品制造業(yè)界的首選CAD軟件。</p><p> Keil軟件環(huán)境介紹</p><p> Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)
39、性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些部分組合在一起。運(yùn)行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。如果你使用C語(yǔ)言編程,那么Keil幾乎就是你的不二之選,即使不使用C語(yǔ)言而僅用匯編語(yǔ)言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍</p>
40、<p><b> 4.3系統(tǒng)軟件分析</b></p><p> 任何一個(gè)應(yīng)用系統(tǒng),它們都有著自己的硬件系統(tǒng)和軟件系統(tǒng),少了任何一個(gè)部分都不可能稱之為一個(gè)完整的應(yīng)用系統(tǒng),它們之間是相互依存的一個(gè)整體,硬件系統(tǒng)是軟件系統(tǒng)的一個(gè)基礎(chǔ)和前提,為軟件系統(tǒng)提供了一個(gè)操作平臺(tái);而軟件系統(tǒng)是硬件系統(tǒng)的靈魂,它對(duì)硬件系統(tǒng)起到擴(kuò)充和完善的作用??芍浖到y(tǒng)與硬件系統(tǒng)同等重要。</p>
41、<p> 51單片機(jī)通常有兩種編程語(yǔ)言,即匯編語(yǔ)言和C語(yǔ)言。匯編語(yǔ)言是低級(jí)語(yǔ)言,能夠直接操作硬件,并且生成機(jī)器碼的效率高。但匯編對(duì)平臺(tái)的依賴性強(qiáng),可移植性差,開(kāi)發(fā)效率低。而C語(yǔ)言則處于二者之間,移植性比較好,代碼效率也比較高,可以對(duì)部分硬件直接訪問(wèn)。開(kāi)發(fā)效率較高。寫(xiě)得好的C代碼,可移植性是很好的,很多時(shí)候都不用修改或者只做少量修改。在目前的嵌入式系統(tǒng)中,C語(yǔ)言是使用最廣泛的語(yǔ)言。 </p><p>
42、;<b> 4.4程序流程圖</b></p><p> (1)主程序流程圖如圖4.1所示。</p><p> 圖4.1 主程序流程圖</p><p> 主程序中判斷Flag_s是否為1,如果為1則表示已經(jīng)保存五次車(chē)速值則開(kāi)始進(jìn)行濾波處理,同時(shí)置零Flag_s再調(diào)用顯示函數(shù)。如果為0則直接調(diào)用顯示函數(shù)顯示上次濾波后的車(chē)速值。</p
43、><p> (2)定時(shí)器中斷流程圖如4.2所示。</p><p> 圖4.2 定時(shí)器中斷流程圖</p><p> (3)外部中斷流程圖如圖4.3所示。 </p><p> 圖4.3 外部中斷流程圖</p><p> 第一次中斷打開(kāi)定時(shí)器計(jì)時(shí),第二次中斷時(shí)讀取TH0和TL0的值將其保存在數(shù)組中,五次讀取后將置位
44、Flag_s,退出中斷函數(shù)。數(shù)組的首地址通過(guò)編譯軟件匯編后為0x800。</p><p> 4.5 原理圖檢查與元器件清單</p><p> 在Protel 99 SE中,對(duì)硬件電路圖進(jìn)行ERC電氣規(guī)則檢查及羅列元器件的清單。</p><p> 如圖4.4和圖4.5所示:</p><p> 圖4.4 ERC電氣規(guī)則檢查結(jié)果</
45、p><p> 圖4.5 元器件清單圖</p><p><b> 4.6 程序調(diào)試</b></p><p> 程序經(jīng)過(guò)調(diào)試顯示“0錯(cuò)誤,0警告”。表示程序調(diào)試通過(guò)。如圖4.6所示:</p><p> 圖4.6 程序調(diào)試通過(guò)示意圖</p><p> 4.7 Proteus調(diào)試 </p&
46、gt;<p> 系統(tǒng)采用Proteus進(jìn)行仿真,按原理圖的設(shè)置建好仿真圖。如圖4.7所示的仿真圖。</p><p> 圖4.7 未運(yùn)行的仿真圖 </p><p> 調(diào)節(jié)外部中斷的輸入頻率以代表不同的車(chē)速情況,當(dāng)輸入頻率為10Hz時(shí),根據(jù)計(jì)算公式,其中半徑r=0.35m, =3.14,得到轉(zhuǎn)速為55km/h。車(chē)速值小于設(shè)定值100km/h,此時(shí)控制的執(zhí)行機(jī)構(gòu)電動(dòng)機(jī)不會(huì)
47、運(yùn)作,供油不受影響。超速指示燈熄滅。</p><p> 圖4.8 仿真圖(低于限定值)</p><p> 再次調(diào)節(jié)信號(hào)發(fā)生器使其單片機(jī)輸入頻率增大,當(dāng)為10Hz時(shí)根據(jù)公式,此時(shí)輸出的車(chē)速應(yīng)該為79km/h。此車(chē)速仍小于設(shè)定的車(chē)速100km/h,電動(dòng)機(jī)將不會(huì)轉(zhuǎn)動(dòng),指示燈熄滅,供油電磁閥正常工作。</p><p> 圖4.9 仿真圖(低于限定值)</p&
48、gt;<p> 調(diào)節(jié)單片機(jī)輸入頻率,直至車(chē)速超過(guò)100km/h。此時(shí)系統(tǒng)將控制電動(dòng)機(jī)運(yùn)作,來(lái)使供油電磁閥逐漸閉合,供油減小。如果車(chē)速還未降下,電動(dòng)機(jī)運(yùn)作直至供油電磁閥完全切斷燃油的供給,強(qiáng)制汽車(chē)減速。同時(shí),儀表盤(pán)的超速指示燈將點(diǎn)亮,以提醒駕駛員。(圖上電動(dòng)機(jī)的運(yùn)轉(zhuǎn)可以通過(guò)其三極管基極為高電平判斷出)</p><p> 圖4.10 仿真圖(超速)</p><p><
49、b> 結(jié) 論</b></p><p> 通過(guò)本次有關(guān)車(chē)速控制系統(tǒng)程序及仿真的課程設(shè)計(jì),我掌握了很多知識(shí)。尤其是仿真編程中電動(dòng)機(jī)的使用,讓我學(xué)會(huì)了,如何控制電動(dòng)機(jī)的動(dòng)作。 </p><p> 在本次的設(shè)計(jì)過(guò)程中,遇到了很多的困難與問(wèn)題,需要我們課外查詢多方面的知識(shí)。</p><p> 由這次課程設(shè)計(jì),我深深地懂得了一件事情,理論一定要結(jié)合實(shí)
50、踐,不能只空留在紙面上。理論只有轉(zhuǎn)化成了實(shí)際東西才具有價(jià)值。</p><p><b> 致 謝</b></p><p> 在**老師的悉心指導(dǎo)下,我順利地完成了此次的課程設(shè)計(jì)。他專業(yè)的知識(shí),嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,精益求精的工作作風(fēng),誨人不倦的高尚師德,嚴(yán)以律己、寬以待人的崇高風(fēng)范,樸實(shí)無(wú)華、平易近人的人格魅力對(duì)我影響深遠(yuǎn)。不僅使我樹(shù)立了遠(yuǎn)大的學(xué)術(shù)目標(biāo)、掌握了基本的研究
51、方法,還端正了我的學(xué)習(xí)和人生態(tài)度,使我受益匪淺。</p><p> 最后,感謝所有給予我?guī)椭椭С值睦蠋熀屯瑢W(xué)!</p><p><b> 參考文獻(xiàn)</b></p><p> [1]張毅剛:新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì). 哈爾濱工業(yè)大學(xué)出版社.2004.</p><p> ?。?]彭憶強(qiáng)、吳瓊、葛曉成:電子線路輔
52、助分析軟件在汽車(chē)電子方向相關(guān)課程中的應(yīng)用,高等教育研究,2008,No. 2</p><p> ?。?]孫仁云:汽車(chē)電器及電子技術(shù),機(jī)械工業(yè)出版社,2007.1</p><p> [4]唐嵐:汽車(chē)測(cè)試技術(shù) ,機(jī)械工業(yè)出版社 ,2006.7 </p><p><b> 附錄A</b></p><p><
53、b> 系統(tǒng)原理圖</b></p><p><b> 附錄B</b></p><p><b> 程序編譯圖</b></p><p><b> 附錄C</b></p><p> PCB圖
54、</p><p> 圖C-1 PCB圖</p><p><b> 附錄D</b></p><p><b> 程序代碼</b></p><p> #include <REG51.H></p><p> #define PI 3.14 //圓
55、周率</p><p> #define R 0.35 //車(chē)輪半徑 </p><p> sbit LED=P1^1;</p><p> sbit MO=P1^0;</p><p> bit Flag; //第一次中斷標(biāo)志</p><p> bit Flag_s;
56、//轉(zhuǎn)換標(biāo)志</p><p> unsigned char COUNT; //溢出次數(shù)</p><p> unsigned long T[5];</p><p> unsigned char W[5]={1,2,3,4,5}; //權(quán)值</p><p> unsigned char table[]=" The
57、 Speed is";</p><p> unsigned char table1[]="km/h";</p><p> sbit E=P2^5;</p><p> sbit RW=P2^6;</p><p> sbit RS=P2^7;</p><p> void Init(v
58、oid);</p><p> unsigned int Smooth(void);</p><p> void Delay_ms(unsigned char ms);</p><p> void Write_data(unsigned char date);</p><p> void Write_cmd(unsigned char
59、cmd);</p><p> void LCD_init();</p><p> void Display(unsigned int d);</p><p> //-------------------------------</p><p><b> // 主函數(shù)</b></p><p>
60、; //-------------------------------</p><p> void main(void)</p><p><b> {</b></p><p> unsigned int dis_dat;</p><p><b> Flag=0;</b></p>
61、<p><b> Flag_s=0;</b></p><p><b> COUNT=0;</b></p><p> dis_dat=0;</p><p><b> Init();</b></p><p> LCD_init();</p>&
62、lt;p> Delay_ms(20);</p><p><b> EA=1;</b></p><p><b> while(1)</b></p><p><b> {</b></p><p> if(Flag_s)</p><p><
63、;b> {</b></p><p> dis_dat=Smooth();</p><p><b> Flag_s=0;</b></p><p><b> }</b></p><p> if(dis_dat>100) //車(chē)速大于100KM/h時(shí),報(bào)警 </
64、p><p><b> {</b></p><p><b> LED=1;</b></p><p><b> MO=1;</b></p><p><b> }else</b></p><p><b> {</b&
65、gt;</p><p><b> LED=0;</b></p><p><b> MO=0;</b></p><p><b> }</b></p><p> Display(dis_dat);//顯示函數(shù)</p><p><b> }
66、</b></p><p><b> }</b></p><p> //-----------------------------</p><p><b> //名稱:延時(shí)函數(shù)</b></p><p> //功能:約為(ms*1)ms時(shí)間</p><p>
67、; //-----------------------------</p><p> void Delay_ms(unsigned char ms)</p><p><b> {</b></p><p> unsigned char a,b;</p><p> for(a=ms;a>0;a--)</
68、p><p> for(b=120;b>0;b--);</p><p><b> }</b></p><p> //-----------------------------</p><p> //名稱:定時(shí)器,中斷初始化</p><p> //功能:定時(shí)器0采用16位,中斷下降沿觸發(fā)&
69、lt;/p><p> //-----------------------------</p><p> void Init(void)</p><p><b> {</b></p><p> TMOD=0x01;</p><p><b> EX0=1;</b></
70、p><p><b> ET0=1;</b></p><p><b> IT0=1;</b></p><p><b> }</b></p><p> //-----------------------------</p><p><b>
71、//名稱:濾波函數(shù)</b></p><p> //功能:加權(quán)濾波,權(quán)值1,2,3,4,5</p><p> //----------------------------- </p><p> unsigned int Smooth(void)</p><p><b> {</b></p>
72、<p> unsigned char i;</p><p> unsigned int dat;</p><p> float dat_temp;</p><p> float sum;</p><p> float avg;</p><p><b> sum=0;</b>
73、</p><p> for(i=0;i<5;i++)</p><p><b> {</b></p><p> sum+=T[i]*W[i];</p><p><b> }</b></p><p> sum=sum/15;</p><p
74、> avg=1000000/sum; //每秒轉(zhuǎn)幾轉(zhuǎn)</p><p> dat_temp=avg*2*PI*R*3.6;//每秒的轉(zhuǎn)數(shù)乘以周長(zhǎng)再乘以3.6換算成km/h</p><p> dat=(int)dat_temp;</p><p> return dat;</p><p><b> }<
75、/b></p><p> //----------------------------------------</p><p> //名稱:液晶寫(xiě)指令子程序</p><p><b> //功能:</b></p><p> //----------------------------------------&
76、lt;/p><p> void Write_cmd(unsigned char cmd)</p><p><b> {</b></p><p><b> RS=0;</b></p><p><b> RW=0;</b></p><p><b&g
77、t; P0=cmd;</b></p><p> Delay_ms(1);</p><p><b> E=1;</b></p><p> Delay_ms(1);</p><p><b> E=0;</b></p><p><b> }<
78、/b></p><p> //----------------------------------------</p><p> //名稱:液晶寫(xiě)數(shù)據(jù)子程序</p><p><b> //功能:</b></p><p> //----------------------------------------&
79、lt;/p><p> void Write_data(unsigned char date)//</p><p><b> {</b></p><p><b> RS=1;</b></p><p><b> RW=0;</b></p><p><
80、;b> P0=date;</b></p><p> Delay_ms(1);</p><p><b> E=1;</b></p><p> Delay_ms(1);</p><p><b> E=0;</b></p><p><b>
81、}</b></p><p> //----------------------------------------</p><p> //名稱:液晶初始化程序</p><p><b> //功能:</b></p><p> //-------------------------------------
82、---</p><p> void LCD_init()</p><p><b> {</b></p><p><b> E=0;</b></p><p> Write_cmd(0x38);//16*2,5*7,8位數(shù)據(jù)</p><p> Write_cmd(0x
83、0c);//顯示開(kāi),光標(biāo)不顯示,不閃爍</p><p> Write_cmd(0x06);//地址加1,光標(biāo)加1,整屏不移動(dòng)</p><p> Write_cmd(0x80);//地址初始</p><p><b> }</b></p><p> //-----------------------------
84、-----------</p><p> //名稱:車(chē)速顯示程序</p><p><b> //功能:</b></p><p> //----------------------------------------</p><p> void Display(unsigned int d)</p>
85、<p><b> {</b></p><p> unsigned char bai,shi,ge;</p><p> unsigned char num;</p><p> static bit flag1=1;</p><p> bai=d/100;</p><p> sh
86、i=d%100/10;</p><p><b> ge=d%10;</b></p><p><b> if(flag1)</b></p><p><b> {</b></p><p> Write_cmd(0x01); //清屏</p>
87、<p> for(num=0;num<17;num++)</p><p><b> {</b></p><p> Write_data(table[num]);</p><p><b> }</b></p><p> Write_cmd(0x80+0x45);</p
88、><p> for(num=0;num<4;num++)</p><p><b> {</b></p><p> Write_data(table1[num]);</p><p><b> }</b></p><p><b> flag1=0;</
89、b></p><p><b> }</b></p><p> Write_cmd(0x80+0x40);</p><p> Write_data(0x30+bai);</p><p> Write_data(0x30+shi);</p><p> Write_data(0x30+g
90、e);</p><p><b> }</b></p><p> //---------------------------</p><p> //外部中斷0的中斷函數(shù)</p><p> //---------------------------</p><p> void INT(voi
91、d) interrupt 0</p><p><b> {</b></p><p><b> if(Flag)</b></p><p><b> {</b></p><p> static unsigned char m=0; </p><p>
92、 T[m]=TH0*256+TL0+65536*COUNT;</p><p><b> TH0=0;</b></p><p><b> TL0=0;</b></p><p><b> COUNT=0;</b></p><p><b> m++;</b&
93、gt;</p><p><b> if(m==5)</b></p><p><b> {</b></p><p><b> m=0;</b></p><p><b> Flag_s=1;</b></p><p><b&
94、gt; }</b></p><p><b> }else</b></p><p><b> {</b></p><p><b> Flag=1;</b></p><p><b> TH0=0;</b></p><p
95、><b> TL0=0;</b></p><p><b> TR0=1;</b></p><p><b> }</b></p><p><b> }</b></p><p> //-----------------------------&
96、lt;/p><p> //定時(shí)器0的中斷函數(shù)</p><p> //-----------------------------</p><p> void Time(void) interrupt 1</p><p><b> {</b></p><p><b> COUNT++;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 控制系統(tǒng)仿真課程設(shè)計(jì)
- 控制系統(tǒng)課程設(shè)計(jì)報(bào)告--- 控制系統(tǒng)設(shè)計(jì)與仿真
- 控制系統(tǒng)設(shè)計(jì)與仿真課程設(shè)計(jì)報(bào)告
- 控制系統(tǒng)仿真課程設(shè)計(jì)--載熱體前饋-反饋控制系統(tǒng)仿真
- 汽車(chē)速度控制系統(tǒng)的設(shè)計(jì)與仿真
- 控制系統(tǒng)仿真課程設(shè)計(jì)--雙容水箱液位控制系統(tǒng)仿真
- 課程設(shè)計(jì)-- 車(chē)速檢測(cè)系統(tǒng)
- 課程設(shè)計(jì)---鍋爐給水控制系統(tǒng)設(shè)計(jì)與仿真
- plc課程設(shè)計(jì)--配料車(chē)控制系統(tǒng)程序設(shè)計(jì)
- 自動(dòng)控制原理課程設(shè)計(jì)----控制系統(tǒng)的設(shè)計(jì)與仿真
- 控制系統(tǒng)仿真課程設(shè)計(jì)--基于simulink的載熱體前饋-反饋控制系統(tǒng)仿真研究
- matlab控制系統(tǒng)仿真課程設(shè)計(jì)--pid控制器應(yīng)用
- 課程設(shè)計(jì)---精餾塔頂溫度控制系統(tǒng)設(shè)計(jì)與仿真
- 溫度控制系統(tǒng)課程設(shè)計(jì)
- 集散控制系統(tǒng)課程設(shè)計(jì)
- 控制系統(tǒng)課程設(shè)計(jì)--- 聯(lián)合站控制系統(tǒng)
- 微機(jī)原理課程設(shè)計(jì)汽車(chē)速度控制
- 控制系統(tǒng)建模分析設(shè)計(jì)和仿真-計(jì)算機(jī)仿真課程設(shè)計(jì)
- 計(jì)算機(jī)仿真課程設(shè)計(jì)--控制系統(tǒng)建模、分析、設(shè)計(jì)和仿真
- 運(yùn)動(dòng)控制系統(tǒng)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論