版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
43/49理工學(xué)院畢業(yè)設(shè)計數(shù)字式直流電機(jī)控速系統(tǒng)設(shè)計學(xué)生:平學(xué)號:專業(yè):電子信息工程班級:2009.2指導(dǎo)教師:王賢秋理工學(xué)院自動化與電子信息學(xué)院二O一三年六月數(shù)字式直流電機(jī)控速系統(tǒng)設(shè)計摘要:本設(shè)計采用脈寬調(diào)制的方法實現(xiàn)電機(jī)的控速,利用單片機(jī)在控制方面簡單靈活操作特點,通過檢測光柵的方式實現(xiàn)了電機(jī)的轉(zhuǎn)速測量,再通過相應(yīng)的處理生成控制信息之后,采用調(diào)節(jié)占空比的方式控制電機(jī)的轉(zhuǎn)速。并且為了適應(yīng)聯(lián)機(jī)操作,本設(shè)計電路還提供了一個串行接口提供給上位機(jī)發(fā)送命令以與接收數(shù)據(jù)使用。關(guān)鍵詞:數(shù)字式;直流電機(jī);光柵控速;串行通信DCmotordigitalspeedcontrolsystemZhangPing(SichuanUniversityofScienceandEngineering,Abstract:Thisarticlemakethecontrolofthemotorbypulsedurationmodulation.Thisarticleuseakindofsimpleandpracticaldesignsolution.ByhelpofSingleChipMicyoco,wecoulddosomethingmoreflexible.thesystemcancomputethespeedofthemotorbycheckingtheopticalgrating.whengetthedata,itwilldisposethedatawithacorrespondingway,andthencontrolDCmotorbyadjustingthePWM.ontheotherside,onlineisveryimportantforasystem,sotocommunicatewithothersystem,thesystemsupportaSerialinterface,too.Keywords:digital;DCmotor;opticalgrating;Serialportcommunication目錄摘要IIAbstractIII第1章引言11.1設(shè)計背景11.2目的和意義11.3研究方法21.4本章小節(jié)2第2章總體電路設(shè)計32.1系統(tǒng)工作原理簡介32.2系統(tǒng)框圖42.3本章小結(jié)53.1PWM信號發(fā)生電路63.1.1PWM的基本原理63.1.2PWM的實現(xiàn)73.1.3硬件實現(xiàn)83.2主控電路83.2.1.芯片的組成原理83.2.2.CPU與部件的作用功能93.2.3引腳功能103.2.4硬件實現(xiàn)113.3顯示模塊123.3.1工作原理123.3.2元件—地址鎖存器133.3.3硬件實現(xiàn)133.4串行通信模塊143.4.1模塊工作原理143.4.2元件-MAX232153.4.3單片機(jī)串口通信簡介163.4.4九針串口193.4.5硬件實現(xiàn)213.5電機(jī)驅(qū)動電路223.5.1H型橋式驅(qū)動電路223.5.2硬件實現(xiàn)233.6光電測速模塊233.6.1工作原理233.6.2硬件實現(xiàn)243.7本章小節(jié)25致32參考文獻(xiàn)33附錄34附錄一詳細(xì)電路設(shè)計圖34附錄二軟件設(shè)計35第1章引言1.1設(shè)計背景在現(xiàn)代化電子信息產(chǎn)業(yè)中,電機(jī)是一種十分常用的動力設(shè)備。目前,在直流電動機(jī)控制系統(tǒng)中已普遍開始采用可控硅等裝置進(jìn)行電動機(jī)的轉(zhuǎn)速控制,進(jìn)而逐漸淘汰了發(fā)電動一電動機(jī)的F—D系統(tǒng),又伴隨著電子技術(shù)的高度發(fā)展,促使直流電機(jī)調(diào)速逐步從模擬化向數(shù)字化轉(zhuǎn)變,特別是單片機(jī)的廣泛使用,使直流電機(jī)控速設(shè)計又步入到了一個全新的高度,從此我們可以更加智能化、更加可靠的完成系統(tǒng)要求的控制,并且該過程還更加簡單化,只要需要甚至一個只有一點電路基礎(chǔ)的人在短時間也能學(xué)會這項控制技術(shù)。類比于交流電機(jī),直流電機(jī)調(diào)速基本原理是簡單的,甚至只要改變電壓就可以控制轉(zhuǎn)速。但除此之外,最常見的一種PWM脈寬調(diào)制,調(diào)節(jié)電機(jī)的輸入占空比就可以控制電機(jī)的平均電壓,控制轉(zhuǎn)速。PWM控制的基本原理很早就已經(jīng)提出,但是受電力電子器件發(fā)展水平的制約,在上世紀(jì)80年代以前一直未能實現(xiàn)。直到進(jìn)入上世紀(jì)80年代,隨著全控型電力電子器件的出現(xiàn)和迅速發(fā)展,PWM控制技術(shù)才真正得到應(yīng)用。隨著電力電子技術(shù)、微電子技術(shù)和自動控制技術(shù)的發(fā)展以與各種新的理論方法,如現(xiàn)代控制理論、非線性系統(tǒng)控制思想的應(yīng)用,PWM控制技術(shù)獲得了空前的發(fā)展,到目前為止,已經(jīng)出現(xiàn)了多種PWM控制技術(shù)。[1]1.2目的和意義直流電動機(jī)在制動性能,在平滑調(diào)速等方面都有良好的效果,在許多需要調(diào)速或快速正反向的制動領(lǐng)域中都有著廣泛的應(yīng)用。從控制的角度來看,直流調(diào)速依然是建立在交流拖動系統(tǒng)的基礎(chǔ)上。早期直流電動機(jī)的控制多以模擬電路為基礎(chǔ),采用運(yùn)放、非線性集成電路與一定的數(shù)字電路混合構(gòu)成,控制系統(tǒng)的硬件部分往往很復(fù)雜,而且在功能,系統(tǒng)靈活性、調(diào)試等方面還十分不理想,這些限制了直流電機(jī)控制技術(shù)的發(fā)展以與應(yīng)用。但隨著單片機(jī)在控制方面的嶄露頭角,使得大量的控制功能與算法可以通過軟件技術(shù)來完成,為直流電動機(jī)的控制提供了相當(dāng)大的靈活性,并使系統(tǒng)的各方面性能都有顯著的提高。并且由單片機(jī)構(gòu)成的控制系統(tǒng)有效的節(jié)約了人力資源和系統(tǒng)成本,進(jìn)而提高了工作的效率。傳統(tǒng)的控制系統(tǒng)采用的模擬元件,雖在一定程度上可以滿足生產(chǎn)要求,但是因為元件的老化和外界干擾的影響,以與線路復(fù)雜、通用性差,控制效果易受到元件性能,天氣,溫度等方面因素的影響,所以系統(tǒng)的可靠性方面十分的不理想,甚至事故頻出?,F(xiàn)在,直流電機(jī)控速系統(tǒng)的數(shù)字化已經(jīng)日趨成熟,伴隨著電子技術(shù)的高速發(fā)展,直流電機(jī)調(diào)速逐步從模擬化向數(shù)字化轉(zhuǎn)變,特別是單片機(jī)技術(shù)的應(yīng)用,使直流電機(jī)調(diào)速技術(shù)又進(jìn)入到一個嶄新的階段,智能化、高可靠性已不可避免的成為了它發(fā)展的新趨勢。1.3研究方法本文主要利用AT89C52系列單片機(jī)的靈活工作特點,通過脈沖調(diào)速方式控制電機(jī)的轉(zhuǎn)動。PWM控制技術(shù)因其簡單、靈活和穩(wěn)定的優(yōu)點而在控制領(lǐng)域得到了廣泛的應(yīng)用,同時也是人們研究的熱點。由于科學(xué)技術(shù)的飛速發(fā)展已經(jīng)開始模糊了學(xué)科之間的界限,現(xiàn)代控制理論思想很可能會成為PWM控制技術(shù)發(fā)展的主流方向。本文就是利用這種控制方式來改變電壓的占空比實現(xiàn)直流電機(jī)速度的控制。文章中采用了專門的芯片組成了PWM信號發(fā)生系統(tǒng),然后通過一定處理來驅(qū)動電機(jī)。利用光柵測速測得電機(jī)轉(zhuǎn)動情況,把光電信號輸入給轉(zhuǎn)換芯片最后又反饋給單片機(jī),在對信號的處理完成之后,輸出相應(yīng)的控制量,實現(xiàn)電機(jī)的調(diào)速控制。1.4本章小節(jié)本章先分析了直流電機(jī)在現(xiàn)代化生產(chǎn)中不可或缺的位置,在日常生活中扮演的重要角色,比較詳細(xì)的闡述了其在各個方面的應(yīng)用。又分析了直流電機(jī)控速在現(xiàn)代化大生產(chǎn)中的重要作用。在之前的時代,由于缺少數(shù)字技術(shù)的支持該系統(tǒng)可以說是遍布漏洞,在系統(tǒng)可靠性,系統(tǒng)調(diào)試,系統(tǒng)設(shè)計維護(hù),通用性等等方面都相當(dāng)?shù)牟怀墒?。極限制了直流電機(jī)控速系統(tǒng)的廣泛應(yīng)用,但隨著當(dāng)前電子技術(shù)的飛速發(fā)展,特別是單片機(jī)以與嵌入式技術(shù)的廣泛應(yīng)用,該項技術(shù)一下就達(dá)到了一個嶄新的高度,并且想著智能化,多功能化等方向發(fā)展??傮w電路設(shè)計單片機(jī)直流電機(jī)調(diào)速簡介:單片機(jī)直流調(diào)速系統(tǒng)可實現(xiàn)對直流電動機(jī)的平滑調(diào)速。脈沖調(diào)速是通過控制固定電壓的直流電源開關(guān)頻率,從而改變負(fù)載兩端的電壓,達(dá)到控制要求的一種調(diào)速方法。在該系統(tǒng)中,按一個固定的頻率來打開和關(guān)閉電源,并根據(jù)需要改變一個周期“接通”和“斷開”時間的長短。通過改變直流電機(jī)的電源電壓的“占空比”來改變電機(jī)的轉(zhuǎn)動大小,從而控制電機(jī)的轉(zhuǎn)速。因此,PWM又被稱為“開關(guān)驅(qū)動裝置”。本系統(tǒng)以AT89C52單片機(jī)為核心,通過單片機(jī)的控制,采用C語言編程實現(xiàn)對直流電機(jī)的速度檢測以與轉(zhuǎn)動調(diào)速。[2]系統(tǒng)控制方案的分析:本直流電機(jī)調(diào)速系統(tǒng)以單片機(jī)系統(tǒng)為依托,根據(jù)PWM調(diào)速的基本原理,以直流電機(jī)電樞上電壓的占空比來改變平均電壓的大小,從而控制電動機(jī)的轉(zhuǎn)速為依據(jù),實現(xiàn)對直流電動機(jī)的平滑調(diào)速,并通過單片機(jī)控制速度的變化。本文所研究的直流電機(jī)調(diào)速系統(tǒng)主要是由硬件和軟件兩大部分組成。硬件部分是前提,是整個系統(tǒng)執(zhí)行的基礎(chǔ),它主要為軟件提供程序運(yùn)行的平臺。而軟件部分,是對硬件端口所體現(xiàn)的信號,加以采集、分析、處理,最終實現(xiàn)控制器所要實現(xiàn)的各項功能,達(dá)到控制器自動對電機(jī)速度的有效控制。[5]2.1系統(tǒng)工作原理簡介本系統(tǒng)通過檢測光柵的方式來檢測電機(jī)的轉(zhuǎn)動情況,再經(jīng)過AT89C52型單片機(jī)進(jìn)行信號處理以與誤差矯正,得到電機(jī)的實際運(yùn)動情況,在輸出相應(yīng)的控制信號,并且經(jīng)由H型電橋形成可用的電機(jī)控制信號,控制直流電機(jī)開始轉(zhuǎn)動,并且實時監(jiān)控其轉(zhuǎn)動情況,從而實現(xiàn)對電機(jī)速度和轉(zhuǎn)向的控制,達(dá)到直流電機(jī)調(diào)速的目的。一般來說,電機(jī)的工作狀態(tài)是不會簡單的與工作電壓成線性關(guān)系,而且在帶動負(fù)載的情況下事情將會變得更加復(fù)雜,但是情況卻可以因為我們的智能程序而有相當(dāng)大的改善(假設(shè)電機(jī)確實能夠帶動負(fù)載的情況下),在智能系統(tǒng)的實時監(jiān)控之下,如果電機(jī)的轉(zhuǎn)速達(dá)不到希望的等級,系統(tǒng)是不會死守最初的規(guī)則,其會根據(jù)情況適當(dāng)?shù)恼{(diào)節(jié)占空比T的輸出,假設(shè)轉(zhuǎn)速達(dá)不到要求系統(tǒng)會逐級加大占空比T,直到達(dá)到要求或者電機(jī)負(fù)載上限。而在轉(zhuǎn)速超過要求時系統(tǒng)又會逐級減小占空比,直到達(dá)到要求或占空比為零,甚至輸出反向轉(zhuǎn)動信號,而完成對電機(jī)制動。這樣,我們終于可以將其近似地看成是線性關(guān)系。(具體電路實現(xiàn)見附錄)2.2系統(tǒng)框圖本文系統(tǒng)主要由六個獨立部件組成,包括顯示模塊,單片機(jī),邏輯上位機(jī),光電開關(guān),電機(jī)驅(qū)動以與直流電機(jī)。其各個模塊的功能如下:顯示模塊:功能主要是用來顯示數(shù)據(jù),方便系統(tǒng)與用戶進(jìn)行直觀的交互,但有上位機(jī)存在的情況下,也可以去掉該部分,用戶與系統(tǒng)的交互可以交由上位機(jī)來實現(xiàn)。邏輯上位機(jī):在工作狀態(tài)下系統(tǒng)是默認(rèn)存在上位機(jī)的,當(dāng)在串行接口接收到有效命令時,即開始執(zhí)行相應(yīng)的指令,完成要求后,再將結(jié)果反饋到上位機(jī)。單片機(jī):完成系統(tǒng)控制的核心模塊,本文系統(tǒng)在該元件的支持下完成其功能。光電開關(guān):安裝在需要測量轉(zhuǎn)速的地方,每當(dāng)電機(jī)轉(zhuǎn)動一次則產(chǎn)生一個脈沖信號,該信號在經(jīng)過相應(yīng)的處理之后,再發(fā)送到單片機(jī)進(jìn)行檢測。電機(jī)驅(qū)動:一般情況下,單片機(jī)的驅(qū)動能力是不足以負(fù)載一個直流電機(jī),所以需要經(jīng)過該模塊才能完成對電機(jī)的控制。電機(jī):系統(tǒng)的控制目標(biāo)。系統(tǒng)邏輯結(jié)構(gòu)如圖2-1所示。單片機(jī)光電開關(guān)單片機(jī)光電開關(guān)電機(jī)驅(qū)動電機(jī)顯示模塊上位機(jī)2.3本章小結(jié)本章簡單的介紹了本文系統(tǒng)的工作原理以與系統(tǒng)的設(shè)計思路,將系統(tǒng)的實現(xiàn)邏輯上分成了六個部分,包括顯示模塊,單片機(jī),邏輯上位機(jī),光電開關(guān),電機(jī)驅(qū)動以與直流電機(jī),并簡要介紹了每個模塊的功能。第三章電路設(shè)計3.1PWM信號發(fā)生電路脈沖寬度調(diào)制是一種模擬控制方式,其根據(jù)相應(yīng)載荷的變化來調(diào)制晶體管柵極或基極的偏置,來實現(xiàn)開關(guān)穩(wěn)壓電源輸出晶體管或晶體管導(dǎo)通時間的改變,這種方式能使電源的輸出電壓在工作條件變化時保持恒定,是利用微處理器的數(shù)字信號對模擬電路進(jìn)行控制的一種非常有效的技術(shù)。PWM控制技術(shù)以其控制簡單,靈活和動態(tài)響應(yīng)好的優(yōu)點而成為電力電子技術(shù)最廣泛應(yīng)用的控制方式,也是人們研究的熱點。由于當(dāng)今科學(xué)技術(shù)的發(fā)展已經(jīng)沒有了學(xué)科之間的界限,結(jié)合現(xiàn)代控制理論思想或?qū)崿F(xiàn)無諧振軟開關(guān)技術(shù)將會成為PWM控制技術(shù)發(fā)展的主要方向之一。3.1.1PWM的基本原理PWM(脈沖寬度調(diào)制)是通過控制固定電壓的直流電源開關(guān)頻率,改變負(fù)載兩端的電壓,從而達(dá)到控制要求的一種電壓調(diào)整方法。PWM可以應(yīng)用在許多方面,比如:電機(jī)調(diào)速、溫度控制、壓力控制等等。在PWM驅(qū)動控制的調(diào)整系統(tǒng)中,按一個固定的頻率來接通和斷開電源,并且根據(jù)需要改變一個周期“接通”和“斷開”時間的長短。通過改變直流電機(jī)電樞上電壓的“占空比”來達(dá)到改變平均電壓大小的目的,從而來控制電動機(jī)的轉(zhuǎn)速。也正因為如此,PWM又被稱為“開關(guān)驅(qū)動裝置”。如圖3-1所示:100ms100msH0L圖3-1PWM方波當(dāng)電機(jī)始終接通電源時,電機(jī)轉(zhuǎn)速的最大值為Vmax,設(shè)占空比為T=H/(H+L),則電機(jī)的平均速度為Vaverge=Vmax*H/(H+L)=Vmax*T,其中Va指的是電機(jī)的平均速度;Vmax是指電機(jī)在全通電時的最大速度;T是指占空比。由上面的公式我們可以預(yù)見,當(dāng)改變占空比T=H/(H+L)時,就可以得到不同的電機(jī)平均速度Vaverge,從而達(dá)到控制轉(zhuǎn)動速度的目標(biāo)。一般來說,平均速度Vaverge與占空比T并非嚴(yán)格的線性關(guān)系,而且在帶動負(fù)載的情況下事情將會更加復(fù)雜,但是情況卻可以因為我們的智能程序而有相當(dāng)大的改善(假設(shè)電機(jī)確實能夠帶動負(fù)載的情況下),在智能系統(tǒng)的實時監(jiān)控之下,如果電機(jī)的轉(zhuǎn)速達(dá)不到希望的等級,系統(tǒng)是不會死守最初的規(guī)則,其會根據(jù)情況適當(dāng)?shù)恼{(diào)節(jié)占空比T的輸出,如果轉(zhuǎn)速達(dá)不到要求系統(tǒng)會逐級加大占空比T,直到達(dá)到要求或者電機(jī)負(fù)載上限。而在轉(zhuǎn)速超過要求時系統(tǒng)又會逐級減小占空比,直到達(dá)到要求或占空比為零。這樣,我們終于可以將其近似地看成是線性關(guān)系。3.1.2PWM的實現(xiàn)初始化初始化達(dá)到占空比等待1msN停轉(zhuǎn)Y達(dá)到100ms等待1msNY開始圖3-2PWM軟件實現(xiàn)邏輯框圖脈沖發(fā)生器主要由單片機(jī)部的計時器0實現(xiàn),精確度達(dá)到了毫秒級,主要有軟件方式來實現(xiàn)占空比的控制。計時器0被設(shè)置成計時模式,每隔1毫秒其會產(chǎn)生一個中斷信號,系統(tǒng)再根據(jù)需要來判斷這1毫秒是否屬于工作區(qū)間,如果屬于則輸出工作信號,若不屬于則輸出停止工作信號。其具體實現(xiàn)流程如圖3-2所示:3.1.3硬件實現(xiàn)在硬件電路中,PWM由AT89C52的部計時器進(jìn)行計時,通過引腳P1.6和P1.7產(chǎn)生控制激勵源,具體電路如圖3-3所示:圖3-3PWM信號發(fā)生電路3.2主控電路3.2.1.芯片的組成原理單片機(jī)由CPU和8個部件組成,它們都通過片單一總線連接,其基本結(jié)構(gòu)依然是通用CPU加上外圍芯片的結(jié)構(gòu)模式,但在功能單元的控制上采用了特殊功能寄存器的集中控制方法。其基本組成如圖3-4所示:CPUCPU震蕩電路特殊功能寄存器數(shù)據(jù)存儲器程序存儲器中斷系統(tǒng)并行I/O串行I/O定時器圖3-4基本結(jié)構(gòu)圖3.2.2.CPU與部件的作用功能中央處理器CPU:它是單片機(jī)的核心,完成運(yùn)算和控制功能。部數(shù)據(jù)存儲器:芯片中共有256個RAM單元,能作為存儲器使用的只是前128個單元,其地址為00H—7FH。通常說的部數(shù)據(jù)存儲器就是指這前128個單元,簡稱部RAM。部程序存儲器:AT89C52芯片部共有8K個單元,用于存儲程序、原始數(shù)據(jù)或表格,簡稱部ROM。定時器:片有3個16位的定時器,用來實現(xiàn)定時或者計數(shù)功能,并且以其定時或計數(shù)結(jié)果對計算機(jī)進(jìn)行控制。中斷控制系統(tǒng):該芯片擁有比較豐富的中斷源,共有5個,其中外部中斷2個,定時/計數(shù)中斷2個和串行中斷1個。其引腳圖如圖3-5所示:圖3-5AT89C523.2.3引腳功能P0.7P0.0:這8個引腳共有兩種不同的功能,分別使用于兩種不同的情況。第一種情況是不帶片外存儲器,P0口可以作為通用I/O口使用,P0.7P0.0用于傳送CPU的I/O數(shù)據(jù)。第二種情況是AT89C52帶片外存儲器,P0.7P0.0在CPU訪問片外存儲器時先是用于傳送片外存儲器的低8位地址,然后傳送CPU對片外存儲器的讀寫數(shù)據(jù)。P2.7P2.0:這組引腳的第一功能可以作為通用的I/O使用。它的第二功能和P0口引腳的第二功能相配合,用于輸出片外存儲器的高8位地址,共同選中片外存儲器單元,但是并不能像P0口那樣還可以傳送存儲器的讀寫數(shù)據(jù)。P3.7P3.0:這組引腳的第一功能為傳送用戶的輸入/輸出數(shù)據(jù)。它的第二功能作為控制用,每個引腳不盡一樣。VCC為+5V電源線,VSS為接地線。ALE/:地址鎖存允許/編程線,配合P0口引腳的第二功能使用,在訪問片外存儲器時,8051CPU在P0.7P0.0引腳線上輸出片外存儲器低8位地址的同時還在ALE/線上輸出一個高電位脈沖,其下降沿用于把這個片外存儲器低8位地址鎖存到外部專用地址鎖存器,以便空出P0.7P0.0引腳線去傳送隨后而來的片外存儲器的讀寫數(shù)據(jù)。/VPP:允許訪問片外存儲器/編程電源線,可以控制AT89C52使用片ROM還是片外ROM。如果=1,那么允許使用片ROM;如果=0,那么允許使用片外ROM。XTAL1和XTAL2:片振蕩電路輸入線,這兩個端子用來外接石英晶體和微調(diào)電容,即用來連接8051片OSC的定時反饋電路。石英晶振起振后,應(yīng)能在XTAL2線上輸出一個3V左右的正弦波,以便于AT89C52片的OSC電路按石英晶振一樣頻率自激振蕩,電容C1、C2可以幫助起振,調(diào)節(jié)它們可以達(dá)到微調(diào)fOSC的目的。3.2.4硬件實現(xiàn)根據(jù)上文所述設(shè)計思路,主控電路如圖3-6所示:圖3-6主控電路3.3顯示模塊3.3.1工作原理顯示模塊由2個八位地址鎖存器以與一個四位七段數(shù)碼管組成。數(shù)碼管采用動態(tài)刷新的方式顯示數(shù)據(jù),兩個八位鎖存器分別完成段控制與位控制的作用。總體結(jié)構(gòu)如圖3-7所示:四位七段數(shù)碼管四位七段數(shù)碼管位控芯片段控芯片系統(tǒng)顯示緩沖區(qū)顯示緩沖區(qū)刷新模塊顯示刷新模塊圖3-7顯示模塊工作原理動態(tài)刷新方式顯示數(shù)據(jù)的工作流程如下1)打開顯示模塊2)收到顯示器刷新請求。2)由處理器清空鎖存器數(shù)據(jù),并鎖定為空信號,關(guān)閉數(shù)碼管顯示。3)輸出位信號,控制位鎖存器接收信號并鎖定。4)輸出段信號,控制段鎖存器接收信號并鎖定。5)結(jié)束刷新,并等待下一個刷新信號的到來,再次從第二步開始循環(huán)。程序見附錄的display函數(shù)。3.3.2元件—地址鎖存器地址鎖存器可以選擇多種,有地址鎖存功能的器件有74LS373、8282、74LS273等,8282是地址鎖存器,功能與74LS373類似,但本系統(tǒng)選用74LS373作為地址鎖存器,考慮到其應(yīng)用的廣泛性以與具有良好的性價比,安全性等方面優(yōu)秀的性能,成為目前在單片機(jī)系統(tǒng)中應(yīng)該較廣泛的地址鎖存器。74LS373片是8個輸出帶三態(tài)門的D鎖存器。當(dāng)使能端呈高電平時,鎖存器中的容可以更新,而在返回低電平的瞬間實現(xiàn)鎖存。如果此時芯片的輸出控制端為低,也即是輸出三態(tài)門打開,鎖存器中的地址信息便可以通過三態(tài)門輸出。其引腳圖如圖3-8所示:圖3-874L373引腳圖3.3.3硬件實現(xiàn)根據(jù)上文所述設(shè)計思路,實際電路圖設(shè)計如圖3-9所示:圖3-9顯示電路3.4串行通信模塊3.4.1模塊工作原理當(dāng)前,實踐證明聯(lián)機(jī)工作是非常有用的,無論是從實際情況還是個人理解,如果能讓該控速系統(tǒng)與外界其他系統(tǒng)進(jìn)行通信,對其功能的完善都是很有好處的。本文所建立的系統(tǒng)一直是以可組裝部件的原則來設(shè)計,在系統(tǒng)中充分考慮了現(xiàn)代化大生產(chǎn)對系統(tǒng)模塊化的要求,加入了和其他系統(tǒng)通信的功能。在與其他系統(tǒng)的交互中,本系統(tǒng)可以上傳數(shù)據(jù)以與接受指令。試想如果我們想要構(gòu)建一個大的智能控制系統(tǒng),只需要將本文系統(tǒng)與中央控制系統(tǒng)用一個串口線進(jìn)行連接,甚至無需改動其他元件,就完成了新系統(tǒng)的構(gòu)建,由中央系統(tǒng)對多個子系統(tǒng)進(jìn)行協(xié)調(diào)控制,更新子系統(tǒng)數(shù)據(jù),在必要的時候甚至可以直接繞過子系統(tǒng)接管其對元件的控制權(quán)。故給予本系統(tǒng)一個串口通信模塊是十分必要的。由于微機(jī)系統(tǒng)的串口工作電平與單片機(jī)的串口輸出電平存在很大區(qū)別,為了實現(xiàn)這兩種不同系統(tǒng)間的通信,所以加入了一個電平轉(zhuǎn)換元件MAX232作為中轉(zhuǎn)模塊。其總電路圖如圖3-10所示:單片機(jī)單片機(jī)MAX2329針串行接頭9針串行接口邏輯上位機(jī)圖3-10串行接口邏輯圖3.4.2元件-MAX232MAX232芯片是美信(MAXIM)公司專為RS-232標(biāo)準(zhǔn)串口設(shè)計的單電源電平轉(zhuǎn)換芯片,使用+5v單電源供電。其邏輯結(jié)構(gòu)圖如圖3-11所示:圖3-11MAX232引腳圖第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構(gòu)成。功能是產(chǎn)生+12v和-12v兩個電源,提供給RS-232串口電平的需要。第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由7、8、9、10、11、12、13、14腳構(gòu)成兩個數(shù)據(jù)通道。其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數(shù)據(jù)通道。8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從11引腳(T1IN)、10引腳(T2IN)輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從14腳(T1OUT)、7腳(T2OUT)送到電腦DB9插頭;DB9插頭的RS-232數(shù)據(jù)從13引腳(R1IN)、8引腳(R2IN)輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從12引腳(R1OUT)、9引腳(R2OUT)輸出。第三部分是供電。15腳GND、16腳VCC(+5v)。電容器應(yīng)選擇1μF的電解電容。在使用過程中本人曾用過10μF的代替。注意,由于RS232電平較高,在接通時產(chǎn)生的瞬時電涌非常高,很有可能擊毀max232,所以在使用中應(yīng)盡量避免熱插拔。3.4.3單片機(jī)串口通信簡介AT89C52單片機(jī)部有一個全雙工串行接口。什么叫全雙工串口呢?一般來說,只能接受或只能發(fā)送的稱為單工串行;既可接收又可發(fā)送,但不能同時進(jìn)行的稱為半雙工;能同時接收和發(fā)送的串行口稱為全雙工串行口。串行通信是指數(shù)據(jù)一位一位地按順序傳送的通信方式,其突出優(yōu)點是只需一根傳輸線,可大大降低硬件成本,適合遠(yuǎn)距離通信。其缺點是傳輸速度較低。與之前一樣,首先我們來了解單片機(jī)串口相關(guān)的寄存器。SBUF寄存器:它是兩個在物理上獨立的接收、發(fā)送緩沖器,可同時發(fā)送、接收數(shù)據(jù),可通過指令對SBUF的讀寫來區(qū)別是對接收緩沖器的操作還是對發(fā)送緩沖器的操作。從而控制外部兩條獨立的收發(fā)信號線RXD(P3.0)、TXD(P3.1),同時發(fā)送、接收數(shù)據(jù),實現(xiàn)全雙工。串行口控制寄存器SCON(見表3-1)。表3-1SCON寄存器SM0SM1SM2RENTB8RB8TIRI表中各位(從左至右為從高位到低位)含義如下。SM0和SM1:串行口工作方式控制位,其定義如表3-2所示。表3-2串行口工作方式控制位SM0SM1工作方式功能波特率00方式0同步移位寄存器輸出方式f/1201方式110位異步通信方式可變,取決于定時器1溢出率10方式211位異步通信方式f/32或f/6411方式311位異步通信方式可變,取決于定時器1溢出率其中,fOSC為單片機(jī)的時鐘頻率;波特率指串行口每秒鐘發(fā)送(或接收)的位數(shù)。SM2:多機(jī)通信控制位。該僅用于方式2和方式3的多機(jī)通信。其中發(fā)送機(jī)SM2=1(需要程序控制設(shè)置)。接收機(jī)的串行口工作于方式2或3,SM2=1時,只有當(dāng)接收到第9位數(shù)據(jù)(RB8)為1時,才把接收到的前8位數(shù)據(jù)送入SBUF,且置位RI發(fā)出中斷申請引發(fā)串行接收中斷,否則會將接受到的數(shù)據(jù)放棄。當(dāng)SM2=0時,就不管第位數(shù)據(jù)是0還是1,都將數(shù)據(jù)送入SBUF,并置位RI發(fā)出中斷申請。工作于方式0時,SM2必須為0。REN:串行接收允許位:REN=0時,禁止接收;REN=1時,允許接收。TB8:在方式2、3中,TB8是發(fā)送機(jī)要發(fā)送的第9位數(shù)據(jù)。在多機(jī)通信中它代表傳輸?shù)牡刂坊驍?shù)據(jù),TB8=0為數(shù)據(jù),TB8=1時為地址。RB8:在方式2、3中,RB8是接收機(jī)接收到的第9位數(shù)據(jù),該數(shù)據(jù)正好來自發(fā)送機(jī)的TB8,從而識別接收到的數(shù)據(jù)特征。TI:串行口發(fā)送中斷請求標(biāo)志。當(dāng)CPU發(fā)送完一串行數(shù)據(jù)后,此時SBUF寄存器為空,硬件使TI置1,請求中斷。CPU響應(yīng)中斷后,由軟件對TI清零。RI:串行口接收中斷請求標(biāo)志。當(dāng)串行口接收完一幀串行數(shù)據(jù)時,此時SBUF寄存器為滿,硬件使RI置1,請求中斷。CPU響應(yīng)中斷后,用軟件對RI清零。電源控制寄存器PCON(見表3-3)。表3-3PCON寄存器SMODGF1GF0PDIDL表中各位(從左至右為從高位到低位)含義如下。SMOD:波特率加倍位。SMOD=1,當(dāng)串行口工作于方式1、2、3時,波特率加倍。SMOD=0,波特率不變。GF1、GF0:通用標(biāo)志位。PD(PCON.1):掉電方式位。當(dāng)PD=1時,進(jìn)入掉電方式。IDL(PCON.0):待機(jī)方式位。當(dāng)IDL=1時,進(jìn)入待機(jī)方式。另外與串行口相關(guān)的寄存器有前面文章敘述的定時器相關(guān)寄存器和中斷寄存器。定時器寄存器用來設(shè)定波特率。中斷允許寄存器IE中的ES位也用來作為串行I/O中斷允許位。當(dāng)ES=1,允許串行I/O中斷;當(dāng)ES=0,禁止串行I/O中斷。中斷優(yōu)先級寄存器IP的PS位則用作串行I/O中斷優(yōu)先級控制位。當(dāng)PS=1,設(shè)定為高優(yōu)先級;當(dāng)PS=0,設(shè)定為低優(yōu)先級。波特率計算:在了解了串行口相關(guān)的寄存器之后,我們可得出其通信波特率的一些結(jié)論:①方式0和方式2的波特率是固定的。在方式0中,波特率為時鐘頻率的1/12,即fOSC/12,固定不變。在方式2中,波特率取決于PCON中的SMOD值,即波特率為:(3-1)當(dāng)SMOD=0時,波特率為fosc/64;當(dāng)SMOD=1時,波特率為fosc/32。②方式1和方式3的波特率可變,由定時器1的溢出率決定。(3-2)當(dāng)定時器T1用作波特率發(fā)生器時,通常選用定時初值自動重裝的工作方式2。其計數(shù)結(jié)構(gòu)為8位,假定計數(shù)初值為Count,單片機(jī)的機(jī)器周期為T,則定時時間為(256/Count)×T。從而在1s發(fā)生溢出的次數(shù)(即溢出率)可由公式(3-3)所示:(3-3)從而波特率的計算公式由公式(3-4)所示:(3-4)在實際應(yīng)用時,通常是先確定波特率,后根據(jù)波特率求T1定時初值,因此式(3-5)又可寫為(3-5)3.4.4九針串口串行接口簡稱串口,也稱串行通信接口(通常指COM接口),是采用串行通信方式的擴(kuò)展口。串行接口SerialInterface是指數(shù)據(jù)一位一位地順序傳送,其特點是通信線路簡單,只要一對傳輸線就可以實現(xiàn)雙向通信,并可以利用線,從而大大降低了成本,特別適用于近距離通信,但傳送速度較慢。串行接口一條信息的各位數(shù)據(jù)被逐位按順序傳送的通訊方式稱為串行通訊。串行通訊的特點是:數(shù)據(jù)位傳送,傳按位順序進(jìn)行,最少只需一根傳輸線即可完成;成本低但傳送速度慢。串行通訊的距離可以從幾米到幾千米;根據(jù)信息的傳送方向,串行通訊可以進(jìn)一步分為單工、半雙工和全雙工三種。單工即只能支持一個固定方向的通信,雖然在一些固定的場合已經(jīng)足夠使用,但在絕大多數(shù)場合都是不夠的。而半雙工則相當(dāng)于一個通信方向可變的單工。至于全雙工,其作用相當(dāng)于兩個單工的合并。它被廣泛的應(yīng)用在各種不同的場合,小到家居生活,大到航空航天。幾乎遍布了人類生產(chǎn)生活的各個領(lǐng)域。串口通信的兩種最基本的方式:同步串行通信方式和異步串行通信方式。同步串行是指ISP(interfaceSerialPeripheral)的縮寫,顧名思義就是串行外圍設(shè)備接口。ISP總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息,TRM450是ISP接口。異步串行是指UART(UniversalAsynchronousReceiver/Transmitter),通用異步接收/發(fā)送。UART是一個并行輸入成為串行輸出的芯片,通常集成在主板上。UART包含TTL電平的串口和RS232電平的串口。TTL電平是3.3V的,而RS232是負(fù)邏輯電平,它定義+5~+12V為低電平,而-12~-5V為高電平,MDS2710、MDSSD4、EL805等是RS232接口,EL806有TTL接口,節(jié)點通是串行通信行家。串行接口按電氣標(biāo)準(zhǔn)與協(xié)議來分包括RS-232-C、RS-422、RS485等。RS-232-C、RS-422與RS-485標(biāo)準(zhǔn)只對接口的電氣特性做出規(guī)定,不涉與接插件、電纜或協(xié)議。其邏輯圖如圖3-12所示:圖3-12九針串口具體引腳功能如表3-4:表3-4管腳名稱1DCD,載波檢測2RXD,接收數(shù)據(jù)3TXD,發(fā)送數(shù)據(jù)4DTR,數(shù)據(jù)終端準(zhǔn)備好5SG,信號地6DSR,數(shù)據(jù)準(zhǔn)備好7RTS,請求發(fā)送8CTS,清除發(fā)送9RI,振鈴提示RS-232也稱標(biāo)準(zhǔn)串口,最常用的一種串行通訊接口。它是在1970年由美國電子工業(yè)協(xié)會(EIA)聯(lián)合貝爾系統(tǒng)、調(diào)制解調(diào)器廠家與計算機(jī)終端生產(chǎn)廠家共同制定的用于串行通訊的標(biāo)準(zhǔn)。它的全名是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”。傳統(tǒng)的RS-232-C接口標(biāo)準(zhǔn)有22根線,采用標(biāo)準(zhǔn)25芯D型插頭座(DB25),后來使用簡化為9芯D型插座(DB9),現(xiàn)在應(yīng)用中25芯插頭座已很少采用。RS-232是為點對點(即只用一對收、發(fā)設(shè)備)通訊而設(shè)計的,其驅(qū)動器負(fù)載為3~7kΩ。所以RS-232適合本地設(shè)備之間的通信。[4]目前較為常用的串口有9針串口(DB9)和25針串口(DB25),通信距離較近時(<12m),可以用電纜線直接連接標(biāo)準(zhǔn)RS232端口(RS422,RS485較遠(yuǎn)),若距離較遠(yuǎn),需附加調(diào)制解調(diào)器(MODEM)或其他相關(guān)設(shè)備。最為簡單且常用的是三線制接法,即地、接收數(shù)據(jù)和發(fā)送數(shù)據(jù)三腳相連,下面涉與到最為基本的接法,且直接用RS232相連。3.4.5硬件實現(xiàn)按照上文所述思路,具體的電路實現(xiàn)如圖3-13所示:圖3-13串行通信電路3.5電機(jī)驅(qū)動電路一般情況下,由于單片機(jī)物理結(jié)構(gòu)的限制,其驅(qū)動能力往往不能達(dá)到負(fù)載電機(jī)的強(qiáng)度,如果強(qiáng)行使其帶動負(fù)載,非常有可能影響到系統(tǒng)性能,甚至破壞系統(tǒng)穩(wěn)定型。在這種情況下,通常是需要一個驅(qū)動電路用以作為系統(tǒng)和電機(jī)之間的橋梁,來提升系統(tǒng)性能。能達(dá)到這種功能的驅(qū)動電路很多,但各有優(yōu)缺點,在綜合考慮成本和性能之后,本系統(tǒng)采用了H型橋式驅(qū)動電路。3.5.1H型橋式驅(qū)動電路H型橋式驅(qū)動電路因其外表像字符”H”而得名,是一種典型的直流電機(jī)驅(qū)動電路。它常常用于數(shù)字控制領(lǐng)域。最簡單的直流電機(jī)驅(qū)動電路是由4個三極管組成H的4條垂直的腿,而電機(jī)則充當(dāng)H的橫梁。如圖3-14所示:圖3-14H型橋式驅(qū)動電路通常為了使電機(jī)正常工作,需要在兩端分別加上一個高低電壓,用以控制其電流的轉(zhuǎn)動。例如Q1和Q4端,或者Q2和Q3端。但需要注意的是如果在同一側(cè)加上高低電壓會因為短路而產(chǎn)生極大的電流進(jìn)而破壞改該電路甚至關(guān)聯(lián)電路。當(dāng)然為了其擁有更好的性能,該電路有很多改進(jìn)版本。本文就是采用了它的一種改進(jìn)版本。具體電路見附錄的電路圖。3.5.2硬件實現(xiàn)由上面所述的設(shè)計思路,再在原版的基礎(chǔ)上進(jìn)行改進(jìn),實際電路如圖3-15所示:圖3-15H型橋式驅(qū)動電路3.6光電測速模塊3.6.1工作原理本模塊主要由一個光電管以與一個轉(zhuǎn)換電路構(gòu)成,光電管會檢測電機(jī)轉(zhuǎn)軸的轉(zhuǎn)動次數(shù),每檢測到一個就會在其輸出端產(chǎn)生一個脈沖,再通過專用芯片處理將其轉(zhuǎn)換成單片機(jī)可識別的TTL電平,發(fā)送到單片機(jī)的相應(yīng)管腳。雖然結(jié)構(gòu)比較簡單但卻是完成測速的關(guān)鍵元件。其工作原理如圖3-16所示:單片機(jī)單片機(jī)光電開關(guān)電機(jī)驅(qū)動電機(jī)圖3-16光電開關(guān)邏輯圖3.6.2硬件實現(xiàn)由上文所述設(shè)計思路,實際電路如下,其中由于光電開關(guān)難以在proteus中進(jìn)行仿真,所以改由按鍵K_Count代替其作用,進(jìn)行仿真。當(dāng)電機(jī)轉(zhuǎn)動時其轉(zhuǎn)軸上的光柵會使光電開關(guān)產(chǎn)生脈沖,由系統(tǒng)進(jìn)行運(yùn)算而得到其轉(zhuǎn)速,電路如圖3-17:圖3-17光電測速電路3.7本章小節(jié)本章主要闡述了實現(xiàn)本文系統(tǒng)的各個子電路的工作原理與其主要元件的性能參數(shù),分別包括PWM模塊,串行通信模塊,顯示模塊以,光電模塊,電機(jī)驅(qū)動模塊與主芯片。通過這些模塊的組裝完成了系統(tǒng)的功能。第4章仿真苯設(shè)計的系統(tǒng)軟件采用keil編寫,電路的仿真采用proteus7。具體仿真結(jié)果如下文所述:系統(tǒng)軟件的編寫選擇了C語言,因為其具有簡單,方便的特點,能夠高效的完成規(guī)定動作。相比于匯編語言需要軟件設(shè)計者對硬件具有較高的理解水平,C語言屏蔽了底層的硬件實現(xiàn),使軟件設(shè)計者能夠集中精力來完成設(shè)計,便于編輯較大型,且效率要求較高的軟件。完成代碼的書寫之后,采用keil開始編譯,獲得結(jié)果如圖4-1所示:圖4-1編譯采用keil生成hex文件之后,再打開之前采用proteus編輯好的電路圖,將hex加載進(jìn)單片機(jī),運(yùn)行仿真,獲得仿真結(jié)果如圖4-2所示:圖4-2開機(jī)按鍵的詳細(xì)電路如圖4-3所示:五個按鍵的作用如下,分別是K1:加速,K2:減速K3:反轉(zhuǎn),反轉(zhuǎn)時會顯示‘-’K4:停止,按下時,轉(zhuǎn)速變?yōu)?K5:設(shè)定,系統(tǒng)的顯示分為兩種模式,模式一顯示的是實際電機(jī)轉(zhuǎn)速。當(dāng)按下該鍵后,進(jìn)入設(shè)定模式,屏幕上顯示一個‘H’圖標(biāo),并且顯示數(shù)值變?yōu)殡姍C(jī)激勵電壓占空比。圖4-3按鍵由于不能使用實際的光電開關(guān)進(jìn)行仿真,所以采用了一個普通開關(guān)盡心模擬,在實際操作中只需要將該開關(guān)換成光電模塊即可,如圖4-4所示:圖4-4光電對管當(dāng)按下光電開關(guān)時,由于電機(jī)的轉(zhuǎn)動,安裝在電機(jī)轉(zhuǎn)動軸上的光柵會通過遮擋光線進(jìn)而改變光柵開關(guān)的狀態(tài),使其產(chǎn)生脈沖,再通過系統(tǒng)的處理生成相應(yīng)的電機(jī)轉(zhuǎn)速情況,如下圖,表示當(dāng)前電機(jī)轉(zhuǎn)速為22轉(zhuǎn)/s。按下反轉(zhuǎn)按鈕之后顯示如圖4-5所示:圖4-5反轉(zhuǎn)按下設(shè)定占空比按鈕之后,顯示‘H’,顯示如圖4-6所示:圖4-6調(diào)節(jié)占空比在進(jìn)入設(shè)定模式之后可以調(diào)節(jié)激勵源占空比,通常隨著占空比的增加,電機(jī)的工作動力會增強(qiáng),當(dāng)然由于還有外接負(fù)載,所以通過計算占空比來測量電機(jī)轉(zhuǎn)速,故需要通過光柵來測量電機(jī)的實際轉(zhuǎn)動速度。現(xiàn)在,通過按下加速和減速按鈕,開始調(diào)節(jié)占空比,其仿真結(jié)果如圖4-7所示:圖4-7調(diào)節(jié)占空比其電機(jī)轉(zhuǎn)動情況如圖4-8所示:圖4-8電機(jī)當(dāng)時測量到的電機(jī)轉(zhuǎn)動速度的情況如圖4-9所示:圖4-9實際情況這是由于雖然加大了占空比,但實際上光電開關(guān)產(chǎn)生的脈沖頻率為0.故系統(tǒng)的計算結(jié)果為0.第5章結(jié)束語本文闡述了基于單片機(jī)的控制系統(tǒng)的設(shè)計,主要說明了基于單片機(jī)的直流電機(jī)的控速。文章首先就直流電機(jī)控制系統(tǒng)的硬件設(shè)計展開論述,詳細(xì)分析了各種系統(tǒng)模塊電路的設(shè)計思路以與邏輯結(jié)構(gòu)。然后是對該系統(tǒng)的軟件進(jìn)行設(shè)計。本文采用的是C語言來完成系統(tǒng)設(shè)計,C語言語法簡單,且執(zhí)行效率較高是一般情況下是設(shè)計系統(tǒng)的首選方式。本系統(tǒng)實現(xiàn)了控速與測速功能,并且?guī)в写薪涌诳膳c上位機(jī)進(jìn)行通信,并接受上位機(jī)的指令,在現(xiàn)代化大生產(chǎn)中,這種功能往往是非常重要的。文章中對于直流電機(jī)控速已經(jīng)有了一個相對詳細(xì)的介紹,但是由于本人在硬件以與軟件方面的知識有限,本文系統(tǒng)中一定還有很多值得改進(jìn)之處,相信在以后的學(xué)習(xí)與工作中隨著知識的逐步積累會有進(jìn)一步的提高。也歡迎熟悉這方面的老師和同學(xué)進(jìn)行指導(dǎo)和修正。致這次的畢業(yè)設(shè)計,我從中受益很大,深刻的認(rèn)識了自己在實踐方面的不足,凝結(jié)了很多人的心血,在此我表示由衷的感。沒有他們的幫助,我將無法順利完成這次設(shè)計。
首先,我要特別感王賢秋老師對我的悉心指導(dǎo),在畢業(yè)設(shè)計期間王老師指導(dǎo)我、幫助我收集文獻(xiàn)資料,理清設(shè)計思路,完善操作方法,并對我所做的設(shè)計提出有效的改進(jìn)方案。老師淵博的知識、嚴(yán)謹(jǐn)?shù)淖黠L(fēng)、誨人不倦的態(tài)度和學(xué)術(shù)上精益求精的精神讓我受益終生。作為一個本科生的畢業(yè)設(shè)計,由于經(jīng)驗的匱乏,難免有許多考慮不周全的地方,如果沒有導(dǎo)師的督促指導(dǎo),想要完成這個設(shè)計是難以想象的。因此,特別需要感王賢秋老師給予的耐心細(xì)致的指導(dǎo),在此,再一次向王老師以與關(guān)心幫助我的老師和同學(xué)表示最誠摯的意!其次,學(xué)校在這方面也給我們提供了很大的支持和幫助,學(xué)校領(lǐng)導(dǎo)比較重視,每個設(shè)計小組配有專門的指導(dǎo)老師,幫助我們能順利完成整個設(shè)計。對于學(xué)校和老師為我的畢業(yè)設(shè)計所提供的極大幫助和關(guān)心,在此我致以衷心的感!最后,還要感同學(xué)四年來對我的關(guān)心與支持,感各位老師在學(xué)習(xí)期間對我的嚴(yán)格要求。同時也要感身邊朋友的熱心幫助,沒有你們的關(guān)心與支持,我不可能這么快完成我的畢業(yè)設(shè)計!這幾個月的歲月是我學(xué)生生涯中最有價值的一段時光,也將會成為我以后永遠(yuǎn)的美好的回憶,在這里有治學(xué)嚴(yán)謹(jǐn)而不失親切的老師,也有互相幫助情同骨肉的同學(xué),更有和諧、融洽的學(xué)習(xí)生活氛圍,這里將是我永遠(yuǎn)向往的地方。借此論文之際,我想向所有人表達(dá)我的最誠摯的意,愿我們將來都越來越好。參考文獻(xiàn)[1]王知.單片機(jī)轉(zhuǎn)速測量系統(tǒng)[M].:高等教育,2004.[2]譚浩強(qiáng).C++程序設(shè)計[M].:清華大學(xué),2004.[3]譚浩強(qiáng).C程序設(shè)計(第四版)[M].:清華大學(xué),2010.[4]馬忠梅.單片機(jī)的C語言應(yīng)用程序設(shè)計(第4版)[M].:航天航空大學(xué),2007.[5][美]S巴斯.計算機(jī)算法:設(shè)計和分析引論[M].:復(fù)旦大學(xué).1985.[6]家琪.運(yùn)動圖像處理在車型識別中的應(yīng)用[M].:大學(xué).1998.[7]福進(jìn),至坤等.基于單片機(jī)的轉(zhuǎn)速測量方法[M].工礦自動化.2006.[8]王知平.一種單片機(jī)轉(zhuǎn)速測量系統(tǒng)[M].:電子科技大學(xué),2004.[9]維軍,小剛.基于單片機(jī)用軟件實現(xiàn)直流電機(jī)PWM調(diào)速系統(tǒng)[M],維普資訊2007.[10]KaareChristian.BorlandC++Techniques&Utilitis[M].Ziff-DavisPress,1993.[11]HorowitzE.SahniS.FundamentalsofDataStructure[M].PitmenPublishingLimited,2005[12]LeenAmmeraal.C++程序設(shè)計教程(第三版)[M].中國鐵道.2007.[13]蘭蓀.高速數(shù)據(jù)采集系統(tǒng)的原理與應(yīng)用[M].:人民郵電,1995.[14]朝青.單片機(jī)原理與接口技術(shù)[M].:航空航天大學(xué),1999.[15]群芳等.單片微型計算機(jī)與接口技術(shù)[M].:電子工業(yè),2005.[16]FrankJ,MeixnerH.SensorSystemforAirMonitoringUsingSemiconductingMetalOxidesandIR-absorption[J].SensorandActuatorsB,2001,78:298-302.[17]瑞新.面向?qū)ο蟪绦蛟O(shè)計教程[M].:機(jī)械工業(yè),2005.附錄附錄一詳細(xì)電路設(shè)計圖附錄二軟件設(shè)計#include<reg52.h>sbitKey1=P3^3;//加速sbitKey2=P3^4;//減速sbitKey3=P3^5;//反轉(zhuǎn)sbitKey4=P3^6;//停止sbitKey5=P3^7;//設(shè)定模式sbitK_count=P3^2;//紅外測速端口sbitCon_1=P1^6;//分別接電機(jī)的1和2端sbitCon_2=P1^7;//charSet_Flag=0;//設(shè)定模式開關(guān)標(biāo)志,1為開啟intG_Num=0;//當(dāng)前轉(zhuǎn)速,intGoal_Num=0;//目標(biāo)轉(zhuǎn)速intC_Num=0;//Cirle_Num,轉(zhuǎn)動圈數(shù)intG_Flag=0;//正反轉(zhuǎn)標(biāo)志位/********************顯示專用變量********************************/intShow_Num=0;//希望顯示的數(shù)字intShow_Flag=0;//希望顯示的標(biāo)示符/*****************************************************************//**********************串口通信變量*******************************/unsignedcharSerial_Flag=0;//接收到中斷后,unsignedcharSerial_SBUF=0;//定義一個變量用于存儲SBUF/******************************************************************/voidKey_Board(void);//檢測鍵盤輸入函數(shù)voiddelay(unsignedintt);//延時函數(shù)voidDigital_Tube_Show(unsignedcharnum_s,unsignedcharnum_w);//num為顯示數(shù)字,num_w為位置voidTimer0_Init(void);//初始化計時器0,產(chǎn)生1ms計數(shù)中斷voidShow(void);//voidSerial_Init(void);//串口通信初始化voidINT0_Init(void);//中斷0初始化,用于鍵盤main(){ Timer0_Init();//計數(shù)初始化 Serial_Init();//串口通信初始化 Show();//顯示初始化 while(1) { Show(); Key_Board(); }}/********************************電機(jī)控制函數(shù)*********************************//***************************串口中斷*****************************************///voidSerial_Communication(void)interrupt4//設(shè)定串行口中斷{ RI=0;//當(dāng)接收到中斷請求后,RI被硬件置1,故清0 Serial_SBUF=SBUF; Serial_Flag=1; if(Serial_Flag) { ES=0;//暫時關(guān)閉中斷,防止執(zhí)行過程中受到干擾 SBUF=Serial_SBUF; while(!TI); TI=0; ES=1; Serial_Flag=0; }}/////////////////計時器0中斷,用于顯示函數(shù)/////////////////////////////////////////////voidShow_T0(void)interrupt1//作用僅僅限于顯示一個數(shù)Show_Num{ staticintcount=0;//用于計數(shù),沒1000個為1s staticintshow_count=0; staticintControl_t=0;//控制電機(jī)轉(zhuǎn)動時間用 TR0=0; TH0=0xfc;// TL0=0x18;// TR0=1;/*********************************************/ show_count++; if(show_count>32) show_count=0; if(show_count%8==0)//每隔8個單位調(diào)用一次顯示函數(shù),8ms { switch(show_count/8) { case0:Digital_Tube_Show(Show_Flag,0);break;//-1對應(yīng)P,-2對應(yīng)H case1:Digital_Tube_Show(Show_Num/100,1);break; case2:Digital_Tube_Show((Show_Num%100)/10,2);break; case3:Digital_Tube_Show(Show_Num%10,3);break; default:;break; } } /**********************PWM專用脈沖發(fā)生器**************************/ Control_t++; if(Control_t>100) Control_t=0; if(Control_t<Goal_Num) { if(G_Flag==1) { Con_1=0; Con_2=1; } else { Con_1=1; Con_2=0; } } else { Con_1=0; Con_2=0; } /**********************插入的1s計時功能**************************/ count++; if(count>1000) { count=0; G_Num=C_Num; C_Num=0; } /****************************************************************//*********************************************/}//顯示函數(shù)voidShow(void)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房屋買賣與回購鄉(xiāng)村振興合作合同3篇
- 二零二五年度建筑工地安全文化建設(shè)與宣傳監(jiān)控合同3篇
- 二零二五年度嘉興商業(yè)物業(yè)租賃合同范本6篇
- 2025年度租賃合同:物流倉儲設(shè)施租賃與運(yùn)營3篇
- 二零二五年度房產(chǎn)租賃居間代理合同6篇
- 二零二五年度教育培訓(xùn)機(jī)構(gòu)勞務(wù)分包協(xié)議3篇
- 二零二五年度合伙購房保障合同3篇
- 海南醫(yī)學(xué)院《診斷學(xué)實驗》2023-2024學(xué)年第一學(xué)期期末試卷
- 海南醫(yī)學(xué)院《機(jī)器人技術(shù)基礎(chǔ)實驗》2023-2024學(xué)年第一學(xué)期期末試卷
- 海南衛(wèi)生健康職業(yè)學(xué)院《非結(jié)構(gòu)數(shù)據(jù)分析與建模》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024上海高考英語翻譯重點句型四字成語歸納講解(專項復(fù)習(xí)訓(xùn)練)
- 會議服務(wù)業(yè)財務(wù)管理與成本控制研究
- 2024年青島市光明電力服務(wù)有限責(zé)任公司招聘筆試參考題庫附帶答案詳解
- 安寧療護(hù)中的醫(yī)患溝通-
- GB 1886.174-2024食品安全國家標(biāo)準(zhǔn)食品添加劑食品工業(yè)用酶制劑
- 20以內(nèi)退位減法口算練習(xí)題100題30套(共3000題)
- 無人機(jī)遙感技術(shù)與應(yīng)用
- 2023年物探工程師年度總結(jié)及下一年計劃
- 電工(三級)理論知識考核要素細(xì)目表
- 4馬克思主義宗教觀
- 2023年阿拉善教育系統(tǒng)教師考試真題及答案
評論
0/150
提交評論