畢業(yè)設(shè)計(jì)論文—基于單片機(jī)的直流電機(jī)測(cè)速、調(diào)速及顯示系統(tǒng)設(shè)計(jì).doc_第1頁(yè)
畢業(yè)設(shè)計(jì)論文—基于單片機(jī)的直流電機(jī)測(cè)速、調(diào)速及顯示系統(tǒng)設(shè)計(jì).doc_第2頁(yè)
畢業(yè)設(shè)計(jì)論文—基于單片機(jī)的直流電機(jī)測(cè)速、調(diào)速及顯示系統(tǒng)設(shè)計(jì).doc_第3頁(yè)
畢業(yè)設(shè)計(jì)論文—基于單片機(jī)的直流電機(jī)測(cè)速、調(diào)速及顯示系統(tǒng)設(shè)計(jì).doc_第4頁(yè)
畢業(yè)設(shè)計(jì)論文—基于單片機(jī)的直流電機(jī)測(cè)速、調(diào)速及顯示系統(tǒng)設(shè)計(jì).doc_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

精品畢業(yè)論文下載盡在我的主頁(yè)基于單片機(jī)的直流電機(jī)測(cè)速、調(diào)速及顯示系統(tǒng)設(shè)計(jì)摘要本文主要研究了利用Quick51系列單片機(jī)控制PWM信號(hào)從而實(shí)現(xiàn)對(duì)直流電機(jī)轉(zhuǎn)速進(jìn)行控制的方法。單片機(jī)具有體積小、功能強(qiáng)、成本低、應(yīng)用面廣泛等優(yōu)點(diǎn),可以說(shuō),智能控制與自動(dòng)控制的核心就是單片機(jī)。目前,一個(gè)學(xué)習(xí)與應(yīng)用單片機(jī)的高潮在全社會(huì)大規(guī)模地興起。學(xué)習(xí)單片機(jī)的最有效方法就是理論與實(shí)踐并重,本文用8051單片機(jī)自制了一個(gè)采用了專(zhuān)門(mén)的芯片組成了PWM信號(hào)的發(fā)生系統(tǒng),并且對(duì)PWM信號(hào)的原理、產(chǎn)生方法以及如何通過(guò)軟件編程對(duì)PWM信號(hào)占空比進(jìn)行調(diào)節(jié),從而控制其輸入信號(hào)波形等均作了詳細(xì)的闡述。還對(duì)直流電機(jī)的速度進(jìn)行了測(cè)量和顯示。關(guān)鍵詞:?jiǎn)纹瑱C(jī)、 PWM、調(diào)速、測(cè)速、顯示系統(tǒng) 目錄摘要1目錄2第一章概述31.1概述31.2 Quick51的技術(shù)簡(jiǎn)介和發(fā)展前景31.2.1 SmartSOPC與Quick5131.2.2 Quick51特性4第二章 總體方案設(shè)計(jì)52.1 8051單片機(jī)簡(jiǎn)介62.2 PWM信號(hào)發(fā)生電路設(shè)計(jì)122.2.1 PWM的基本原理122.3 128*64液晶顯示13第三章 硬件設(shè)計(jì)與連接143.1傳感器電路設(shè)計(jì)143.2 信號(hào)處理電路設(shè)計(jì)163.3存儲(chǔ)器電路設(shè)計(jì)173.3.1 I2C總線(xiàn)概述173.3.2 存儲(chǔ)器電路183.4 顯示電路設(shè)計(jì)183.5 PWM信號(hào)發(fā)生電路設(shè)計(jì)19第四章 軟件設(shè)計(jì)204.1系統(tǒng)軟件總流程圖204.2程序清單21第五章 結(jié)論與展望31附錄32附一 速度控制子程序32附二 電路圖35參考文獻(xiàn)36答辯問(wèn)題37第一章 概述1.1 概述本文主要研究了利用Quick51系列單片機(jī),通過(guò)PWM方式控制直流電機(jī)調(diào)速的方法。沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時(shí),其效果基本相同。PWM控制技術(shù)就是以該結(jié)論為理論基礎(chǔ),使輸出端得到一系列幅值相等而寬度不相等的脈沖,用這些脈沖來(lái)代替正弦波或其他所需要的波形。按一定的規(guī)則對(duì)各脈沖的寬度進(jìn)行調(diào)制,既可改變逆變電路輸出電壓的大小,也可改變輸出頻率。PWM控制的基本原理很早就已經(jīng)提出,但是受電力電子器件發(fā)展水平的制約,在上世紀(jì)80年代以前一直未能實(shí)現(xiàn)。直到進(jìn)入上世紀(jì)80年代,隨著全控型電力電子器件的出現(xiàn)和迅速發(fā)展,PWM控制技術(shù)才真正得到應(yīng)用。隨著電力電子技術(shù)、微電子技術(shù)和自動(dòng)控制技術(shù)的發(fā)展以及各種新的理論方法,如現(xiàn)代控制理論、非線(xiàn)性系統(tǒng)控制思想的應(yīng)用,PWM控制技術(shù)獲得了空前的發(fā)展。到目前為止,已經(jīng)出現(xiàn)了多種PWM控制技術(shù)。PWM控制技術(shù)以其控制簡(jiǎn)單、靈活和動(dòng)態(tài)響應(yīng)好的優(yōu)點(diǎn)而成為電力電子技術(shù)最廣泛應(yīng)用的控制方式,也是人們研究的熱點(diǎn)。由于當(dāng)今科學(xué)技術(shù)的發(fā)展已經(jīng)沒(méi)有了學(xué)科之間的界限,結(jié)合現(xiàn)代控制理論思想或?qū)崿F(xiàn)無(wú)諧振軟開(kāi)關(guān)技術(shù)將會(huì)成為PWM控制技術(shù)發(fā)展的主要方向之一。本文就是利用這種控制方式來(lái)改變電壓的占空比實(shí)現(xiàn)直流電機(jī)速度的控制。1.2 Quick51的技術(shù)簡(jiǎn)介和發(fā)展前景1.2.1 SmartSOPC與Quick51 SmartSOPC教學(xué)實(shí)驗(yàn)開(kāi)發(fā)平臺(tái)集眾多功能于一體,是SOPC、DSP、EDA、ARM、ARM7 SOC以及8051教學(xué)實(shí)驗(yàn)、科研開(kāi)發(fā)的最佳選擇。開(kāi)發(fā)平臺(tái)采用“主板核心板”的模式,更換不同的核心板即可實(shí)驗(yàn)不同平臺(tái)的功能。 Quick51正是跟SmartSOPC相配套的8051單片機(jī)核心板。Quick51是一款自由的、開(kāi)放全部系統(tǒng)資源的單片機(jī)實(shí)驗(yàn)板。單片機(jī)芯片采用Philips最新推出的擁有64KB Flash的增強(qiáng)型8052內(nèi)核單片機(jī)P89LV51RD2,工作電壓3.3V(3V邏輯是大趨勢(shì))。Quick51與SmartSOPC配合,可以做各種單片機(jī)教學(xué)實(shí)驗(yàn),如LED點(diǎn)陣掃描顯示、鍵盤(pán)檢測(cè)、動(dòng)態(tài)數(shù)碼管、液晶屏、電機(jī)驅(qū)動(dòng)、I2C總線(xiàn)、紅外收發(fā)、蜂鳴器、數(shù)字溫度計(jì)、電子鐘,等等。1.2.2 Quick51特性l 采用Philips半導(dǎo)體新型單片機(jī)P89LV51RD2,增強(qiáng)型Intel 8052 CPU內(nèi)核。具有許多增強(qiáng)功能,如內(nèi)置64KB用戶(hù)程序Flash,8KB引導(dǎo)Flash(用來(lái)支持ISP和IAP功能),1KB片內(nèi)靜態(tài)RAM,雙倍速模式,雙DPTR,4個(gè)中斷優(yōu)先級(jí),進(jìn)入掉電模式后外部中斷可喚醒(8052只有復(fù)位,不方便),硬件SPI,增強(qiáng)型UART,等等。 l 配備的P89LV51RD2單片機(jī)支持ISP(在系統(tǒng)可編程)方式下載用戶(hù)程序。Quick51只需要一根普通電腦RS-232通信電纜(該電纜已經(jīng)隨SmartSOPC實(shí)驗(yàn)箱標(biāo)配)就能實(shí)現(xiàn)ISP下載,不需要制作專(zhuān)門(mén)的下載線(xiàn)。l 配備1片專(zhuān)門(mén)的仿真芯片。在目前最流行的8051內(nèi)核單片機(jī)Windows環(huán)境軟件開(kāi)發(fā)工具Keil C51的支持下,能夠方便地進(jìn)行硬件在線(xiàn)仿真,而且并不需要安裝特別的驅(qū)動(dòng)程序。該仿真芯片能夠全面支持單步、全速、斷點(diǎn)、跳出、變量觀(guān)察、外圍設(shè)備訪(fǎng)問(wèn)等仿真功能。l 晶振(默認(rèn)11.0592MHz)采用插座式安裝,為用戶(hù)替換成其它頻點(diǎn)的晶振來(lái)做實(shí)驗(yàn)提供了方便。l 復(fù)位方式可選:RC復(fù)位、按鍵復(fù)位、看門(mén)狗復(fù)位。此外,看門(mén)狗芯片還內(nèi)置有256B的EEPROM。l 單片機(jī)的4組I/O端口全部用雙排插針引出,方便用戶(hù)做實(shí)驗(yàn)。l 擴(kuò)展32KB靜態(tài)RAM。l 擴(kuò)展512KB大容量Flash存儲(chǔ)器,可以用作程序Flash或者大容量數(shù)據(jù)存儲(chǔ)。l 擴(kuò)展1個(gè)8位并行高阻輸入端口、1個(gè)8位并行推挽輸出端口。l 采用PLD器件作為譯碼器。提供8組輸出,地址范圍已經(jīng)印在PCB上,一目了然。在產(chǎn)品光盤(pán)里提供譯碼器內(nèi)部結(jié)構(gòu)的等效電路原理圖。第二章 總體方案設(shè)計(jì)本速度表由信號(hào)預(yù)處理電路、8051單片機(jī)、LCD顯示電路、串口數(shù)據(jù)存儲(chǔ)電路和系統(tǒng)軟件組成。其中信號(hào)預(yù)處理電路包含信號(hào)放大、波形變換和波形整形。信號(hào)預(yù)處理電路中的放大器用于對(duì)待測(cè)信號(hào)進(jìn)行放大,以降低對(duì)待測(cè)信號(hào)的幅度要求;波形變換和波形整形電路則用來(lái)將放大的信號(hào)轉(zhuǎn)換成可與單片機(jī)接口的TTL 信號(hào);通過(guò)單片機(jī)的設(shè)置可使INT0 引腳能夠?qū)?nèi)部定時(shí)器T0 的工作進(jìn)行控制,這樣能精確地測(cè)出加到INT0 引腳的正脈沖寬度(即測(cè)出脈沖信號(hào)的周期);速度顯示部分采用數(shù)碼顯示模塊, 所得的數(shù)據(jù)采用I2C總線(xiàn), 并通過(guò)E2PROM來(lái)存儲(chǔ), 因而節(jié)省了所需單片機(jī)的口線(xiàn)和外圍器件, 同時(shí)也簡(jiǎn)化了顯示部分的軟件編程。系統(tǒng)軟件包括單片機(jī)和液晶模塊的初始化模塊、液晶模塊的寫(xiě)數(shù)據(jù)/ 命令子模塊、數(shù)據(jù)顯示模塊以及實(shí)時(shí)中斷服務(wù)模塊等。該設(shè)計(jì)能實(shí)時(shí)地將所測(cè)的速度顯示出來(lái)。該速度表能將傳感器輸入到單片機(jī)的脈沖信號(hào)的寬度(傳感器將車(chē)速轉(zhuǎn)變成相應(yīng)寬度的脈沖信號(hào)) 實(shí)時(shí)地測(cè)量出來(lái),然后通過(guò)單片機(jī)計(jì)算出速度, 再將所得的數(shù)據(jù)存儲(chǔ)到串口數(shù)據(jù)存儲(chǔ)器, 并由動(dòng)態(tài)數(shù)碼顯示模塊實(shí)時(shí)顯示出所測(cè)速度。本設(shè)計(jì)用兩個(gè)按鍵來(lái)控制顯示速度??紤]到信號(hào)的衰減、干擾等影響,在信號(hào)送入單片機(jī)前應(yīng)對(duì)其進(jìn)行放大整形, 然后再輸入到單片機(jī)進(jìn)行測(cè)速。系統(tǒng)方框圖如圖2-1所示。8051單片機(jī)PWM方波信號(hào)直流電機(jī)測(cè)速發(fā)電機(jī)LCD顯示圖2-1 系統(tǒng)方框圖2.1 8051單片機(jī)簡(jiǎn)介一、8051單片機(jī)的基本組成 8051單片機(jī)由CPU和8個(gè)部件組成,它們都通過(guò)片內(nèi)單一總線(xiàn)連接,其基本結(jié)構(gòu)依然是通用CPU加上外圍芯片的結(jié)構(gòu)模式,但在功能單元的控制上采用了特殊功能寄存器的集中控制方法。二、CPU及8個(gè)部件的作用功能介紹如下中央處理器CPU:它是單片機(jī)的核心,完成運(yùn)算和控制功能。內(nèi)部數(shù)據(jù)存儲(chǔ)器:8051芯片中共有256個(gè)RAM單元,能作為存儲(chǔ)器使用的只是前128個(gè)單元,其地址為00H7FH。通常說(shuō)的內(nèi)部數(shù)據(jù)存儲(chǔ)器就是指這前128個(gè)單元,簡(jiǎn)稱(chēng)內(nèi)部RAM。特殊功能寄存器:是用來(lái)對(duì)片內(nèi)各部件進(jìn)行管理、控制、監(jiān)視的控制寄存器和狀態(tài)寄存器,是一個(gè)特殊功能的RAM區(qū),位于內(nèi)部RAM的高128個(gè)單元,其地址為80HFFH。內(nèi)部程序存儲(chǔ)器:8051芯片內(nèi)部共有4K個(gè)單元,用于存儲(chǔ)程序、原始數(shù)據(jù)或表格,簡(jiǎn)稱(chēng)內(nèi)部ROM。并行I/O口:8051芯片內(nèi)部有4個(gè)8位的I/O口(P0,P1,P2,P3),以實(shí)現(xiàn)數(shù)據(jù)的并行輸入輸出。串行口:它是用來(lái)實(shí)現(xiàn)單片機(jī)和其他設(shè)備之間的串行數(shù)據(jù)傳送。定時(shí)器:8051片內(nèi)有2個(gè)16位的定時(shí)器,用來(lái)實(shí)現(xiàn)定時(shí)或者計(jì)數(shù)功能,并且以其定時(shí)或計(jì)數(shù)結(jié)果對(duì)計(jì)算機(jī)進(jìn)行控制。中斷控制系統(tǒng):該芯片共有5個(gè)中斷源,即外部中斷2個(gè),定時(shí)/計(jì)數(shù)中斷2個(gè)和串行中斷1個(gè)。振蕩電路:它外接石英晶體和微調(diào)電容即可構(gòu)成8051單片機(jī)產(chǎn)生時(shí)鐘脈沖序列的時(shí)鐘電路。系統(tǒng)允許的最高晶振頻率為12MHz。三、8051單片機(jī)引腳圖 四、單片機(jī)系統(tǒng)中所用其他芯片簡(jiǎn)介1 地址鎖存器74LS37374LS373片內(nèi)是8個(gè)輸出帶三態(tài)門(mén)的D鎖存器。其結(jié)構(gòu)如下圖所示:當(dāng)使能端G呈高電平時(shí),鎖存器中的內(nèi)容可以更新,而在返回低電平的瞬間實(shí)現(xiàn)鎖存。如果此時(shí)芯片的輸出控制端為低,也即是輸出三態(tài)門(mén)打開(kāi),鎖存器中的地址信息便可以通過(guò)三態(tài)門(mén)輸出。以下是其引腳圖: 2程序存儲(chǔ)器27128(1)芯片引腳 (2)功能表 引腳 工作方式(片選)(允許輸出)VPP(編程控制)輸出讀LLVCCH數(shù)據(jù)輸出維持H*VCC*高阻編程LHVPPL數(shù)據(jù)輸入編程校驗(yàn)LLVPPH數(shù)據(jù)輸出編程禁止H*VPP*高阻3數(shù)據(jù)存儲(chǔ)器6264(1)芯片引腳 (2)芯片功能表 引腳工作方式I/O0I/O7未選中H*高阻未選中*L*高阻輸出禁止LHHH高阻讀LHLH數(shù)據(jù)輸出寫(xiě)LHHL數(shù)據(jù)輸入寫(xiě)LHLL數(shù)據(jù)輸入五、8051單片機(jī)擴(kuò)展電路及分析接線(xiàn)分析P0.7-P0.0:這8個(gè)引腳共有兩種不同的功能,分別使用于兩種不同的情況。第一種情況是8051不帶片外存儲(chǔ)器,P0口可以作為通用I/O口使用,P0.7-P0.0用于傳送CPU的I/O數(shù)據(jù)。第二種情況是8051帶片外存儲(chǔ)器,P0.7-P0.0在CPU訪(fǎng)問(wèn)片外存儲(chǔ)器時(shí)先是用于傳送片外存儲(chǔ)器的低8位地址,然后傳送CPU對(duì)片外存儲(chǔ)器的讀寫(xiě)數(shù)據(jù)。P2.7-P2.0:這組引腳的第一功能可以作為通用的I/O使用。它的第二功能和P0口引腳的第二功能相配合,用于輸出片外存儲(chǔ)器的高8位地址,共同選中片外存儲(chǔ)器單元,但是并不能像P0口那樣還可以傳送存儲(chǔ)器的讀寫(xiě)數(shù)據(jù)。P3.7-P3.0:這組引腳的第一功能為傳送用戶(hù)的輸入/輸出數(shù)據(jù)。它的第二功能作為控制用,每個(gè)引腳不盡相同,如下表所示:P3口的位第二功能注釋P3.0RXD串行數(shù)據(jù)接收口P3.1TXD串行數(shù)據(jù)發(fā)送口P3.2外中斷0輸入P3.3外中斷1輸入P3.4T0計(jì)數(shù)器0計(jì)數(shù)輸入P3.5T1計(jì)數(shù)器1計(jì)數(shù)輸入P3.6外部RAM寫(xiě)選通信號(hào)P3.7外部RAM讀選通信號(hào)VCC為+5V電源線(xiàn),VSS為接地線(xiàn)。ALE/:地址鎖存允許/編程線(xiàn),配合P0口引腳的第二功能使用,在訪(fǎng)問(wèn)片外存儲(chǔ)器時(shí),8051CPU在P0.7-P0.0引腳線(xiàn)上輸出片外存儲(chǔ)器低8位地址的同時(shí)還在ALE/線(xiàn)上輸出一個(gè)高電位脈沖,其下降沿用于把這個(gè)片外存儲(chǔ)器低8位地址鎖存到外部專(zhuān)用地址鎖存器,以便空出P0.7-P0.0引腳線(xiàn)去傳送隨后而來(lái)的片外存儲(chǔ)器的讀寫(xiě)數(shù)據(jù)。在不訪(fǎng)問(wèn)片外存儲(chǔ)器時(shí),8051自動(dòng)在ALE/線(xiàn)上輸出頻率為1/6 fOSC的脈沖序列。該脈沖序列可以用作外部時(shí)鐘源或者作為定時(shí)脈沖源使用。 / VPP:允許訪(fǎng)問(wèn)片外存儲(chǔ)器/編程電源線(xiàn),可以控制8051使用片內(nèi)ROM還是片外ROM。如果=1,那么允許使用片內(nèi)ROM;如果=0,那么允許使用片外ROM。:片外ROM選通線(xiàn),在執(zhí)行訪(fǎng)問(wèn)片外ROM的指令MOVC時(shí),8051自動(dòng)在線(xiàn)上產(chǎn)生一個(gè)負(fù)脈沖,用于片外ROM芯片的選通。其他情況下,線(xiàn)均為高電平封鎖狀態(tài)。RST/VPD:復(fù)位備用電源線(xiàn),可以使8051處于復(fù)位工作狀態(tài)。XTAL1和XTAL2:片內(nèi)振蕩電路輸入線(xiàn),這兩個(gè)端子用來(lái)外接石英晶體和微調(diào)電容,即用來(lái)連接8051片內(nèi)OSC的定時(shí)反饋電路。石英晶振起振后,應(yīng)能在XTAL2線(xiàn)上輸出一個(gè)3V左右的正弦波,以便于8051片內(nèi)的OSC電路按石英晶振相同頻率自激振蕩,電容C1、C2可以幫助起振,調(diào)節(jié)它們可以達(dá)到微調(diào)fOSC的目的。2.2 PWM信號(hào)發(fā)生電路設(shè)計(jì)2.2.1 PWM的基本原理PWM(脈沖寬度調(diào)制)是通過(guò)控制固定電壓的直流電源開(kāi)關(guān)頻率,改變負(fù)載兩端的電壓,從而達(dá)到控制要求的一種電壓調(diào)整方法。PWM可以應(yīng)用在許多方面,比如:電機(jī)調(diào)速、溫度控制、壓力控制等等。在PWM驅(qū)動(dòng)控制的調(diào)整系統(tǒng)中,按一個(gè)固定的頻率來(lái)接通和斷開(kāi)電源,并且根據(jù)需要改變一個(gè)周期內(nèi)“接通”和“斷開(kāi)”時(shí)間的長(zhǎng)短。通過(guò)改變直流電機(jī)電樞上電壓的“占空比”來(lái)達(dá)到改變平均電壓大小的目的,從而來(lái)控制電動(dòng)機(jī)的轉(zhuǎn)速。也正因?yàn)槿绱?,PWM又被稱(chēng)為“開(kāi)關(guān)驅(qū)動(dòng)裝置”。如下圖所示: 設(shè)電機(jī)始終接通電源時(shí),電機(jī)轉(zhuǎn)速最大為Vmax,設(shè)占空比為D= t1 / T,則電機(jī)的平均速度為Va = Vmax * D,其中Va指的是電機(jī)的平均速度;Vmax 是指電機(jī)在全通電時(shí)的最大速度;D = t1 / T是指占空比。由上面的公式可見(jiàn),當(dāng)我們改變占空比 D = t1 / T時(shí),就可以得到不同的電機(jī)平均速度Vd,從而達(dá)到調(diào)速的目的。嚴(yán)格來(lái)說(shuō),平均速度Vd 與占空比D并非嚴(yán)格的線(xiàn)性關(guān)系,但是在一般的應(yīng)用中,我們可以將其近似地看成是線(xiàn)性關(guān)系。2.3 128*64液晶顯示LCD顯示器工作原理就是利用液晶的物理特性;通電時(shí)排列變得有序,使光線(xiàn)容易通過(guò);不通電時(shí)排列混亂,阻止光線(xiàn)通過(guò),說(shuō)簡(jiǎn)單點(diǎn)就是讓液晶如閘門(mén)般地阻隔或讓光線(xiàn)穿透。 LCD的好處有:與CRT顯示器相比,LCD的優(yōu)點(diǎn)主要包括零輻射、低功耗、散熱小、體積小、圖像還原精確、字符顯示銳利等。其接口信號(hào)說(shuō)明如下:第三章 硬件設(shè)計(jì)與連接3.1傳感器電路設(shè)計(jì)在信號(hào)脈沖發(fā)生源上,本系統(tǒng)采用的是開(kāi)關(guān)型霍爾傳感器。以磁場(chǎng)作為媒介,利用霍爾傳感器可以檢測(cè)多種物理量,如位移、振動(dòng)、轉(zhuǎn)速、加速度、流量、電流、電功率等。它不僅可以實(shí)現(xiàn)非接觸測(cè)量,并且采用永久磁鐵產(chǎn)生磁場(chǎng),不需附加能源。另外霍爾傳感器尺寸小、價(jià)格便宜、應(yīng)用電路簡(jiǎn)單、性能可靠,因而獲得極為廣泛的應(yīng)用。除了直接利用霍爾傳感器外,還利用它開(kāi)發(fā)出各種派生的傳感器。金屬或半導(dǎo)體薄片的兩個(gè)端面通以控制電流Ic,并在薄片的垂直方向上施加磁感應(yīng)強(qiáng)度為B的磁場(chǎng),則在垂直于電流和磁場(chǎng)的方向上將產(chǎn)生電勢(shì)Uh,稱(chēng)為霍爾電勢(shì)或霍爾電壓(如圖l所示)?;魻栯妱?shì)Uh=KhIcB(其中Kh為霍爾元件靈敏度,它與所用的材料及幾何尺寸有關(guān))。這種現(xiàn)象稱(chēng)為霍爾效應(yīng),而用這種效應(yīng)制成的元件稱(chēng)為霍爾元件。由于霍爾元件輸出的電壓信號(hào)較小,并且有一定溫度誤差,目前已較少直接使用霍爾元件作傳感器?;魻杺鞲衅髟韴D如圖3-6所示。圖3-6 霍爾傳感器磁場(chǎng)效應(yīng)本系統(tǒng)采用開(kāi)關(guān)型霍爾傳感器A04E。開(kāi)關(guān)型霍爾傳感器是一種集成傳感器,它內(nèi)部含有霍爾元件、放大器、穩(wěn)壓電源、帶一定滯后特性的比較器及集電極開(kāi)路輸出部分等,如圖3-7所示。開(kāi)關(guān)型霍爾傳感器的工作特性如圖3-8 所示。 圖3-7 開(kāi)關(guān)型霍爾傳感器內(nèi)部結(jié)構(gòu)圖圖3-8 開(kāi)關(guān)型霍爾傳感器工作特性當(dāng)外加的磁感應(yīng)強(qiáng)度超過(guò)動(dòng)作點(diǎn)Bop時(shí),傳感器輸出低電平,但磁感應(yīng)強(qiáng)度降到動(dòng)作點(diǎn)Bop以下時(shí),傳感器輸出電平不變,一直要降到釋放點(diǎn)BRE時(shí),傳感器才由低電平躍變?yōu)楦唠娖?。Bop與Bre之間的滯后(或稱(chēng)為回差)使開(kāi)關(guān)動(dòng)作更為可靠。 圖3-9 霍爾傳感器檢測(cè)轉(zhuǎn)速示意圖霍爾傳感器檢測(cè)轉(zhuǎn)速示意圖3-9如下。在非磁材料的圓盤(pán)邊上粘貼一塊磁鋼,霍爾傳感器固定在圓盤(pán)外緣附近。圓盤(pán)每轉(zhuǎn)動(dòng)一圈霍爾傳感器便輸出一個(gè)脈沖。通過(guò)單片機(jī)測(cè)量產(chǎn)生脈沖的頻率,就可以得出圓盤(pán)的轉(zhuǎn)速。同樣道理,根據(jù)圓盤(pán)(車(chē)輪)的轉(zhuǎn)速,再結(jié)合圓盤(pán)的周長(zhǎng)就是計(jì)算出物體的位移。如果要增加測(cè)量位移精度,可以在圓盤(pán)(車(chē)輪)上多增加幾個(gè)磁鋼。由于傳感器內(nèi)部為集電極開(kāi)路輸出,所以需外接一個(gè)上拉電阻,其阻值與電源電壓大小有關(guān),一般取12k,如圖3-10所示。圖3-10 傳感器輸出電路3.2 信號(hào)處理電路設(shè)計(jì) 系統(tǒng)的信號(hào)預(yù)處理電路由二級(jí)電路構(gòu)成,第一級(jí)是由開(kāi)關(guān)三極管組成的零偏置放大器,采用開(kāi)關(guān)三極管可以保證放大器具有良好的高頻響應(yīng)。當(dāng)輸入信號(hào)為零或負(fù)電壓時(shí),三極管截止,電路輸出高電平;而當(dāng)輸入信號(hào)為正電壓時(shí),三極管導(dǎo)通,此時(shí)輸出電壓隨著輸入電壓的上升而下降,這使得速度里程表既可以測(cè)量任意方波信號(hào)的頻率,也可以測(cè)量正弦波信號(hào)的頻率。由于放大器的放大功能降低了對(duì)待測(cè)信號(hào)的幅度要求,因此,系統(tǒng)能對(duì)任意大于0.5V的正弦波和脈沖信號(hào)進(jìn)行測(cè)量。預(yù)處理電路的第二級(jí)采用帶施密特觸發(fā)器的反相器DM74LS14來(lái)把放大器生成的單相脈沖轉(zhuǎn)換成與COMS電平相兼容方波信號(hào),同時(shí)將輸出信號(hào)加到單片機(jī)的P3.4口上。利用施密特觸發(fā)器狀態(tài)轉(zhuǎn)換過(guò)程中的正反饋?zhàn)饔?,可以把邊沿變化緩慢的周期性信?hào)變換為邊沿很陡的矩形脈沖信號(hào)。輸入的信號(hào)只要幅度大于VT+,即可在施密特觸發(fā)器的輸出端得到同等頻率的矩形脈沖信號(hào)。從傳感器得到的矩形脈沖經(jīng)傳輸后往往發(fā)生波形畸變。當(dāng)傳輸線(xiàn)上的電容較大時(shí),波形的上升沿將明顯變壞;當(dāng)傳輸線(xiàn)較長(zhǎng),而且接受端的阻抗與傳輸線(xiàn)的阻抗不匹配時(shí),在波形的上升沿和下降沿將產(chǎn)生振蕩現(xiàn)象;當(dāng)其他脈沖信號(hào)通過(guò)導(dǎo)線(xiàn)間的分布電容或公共電源線(xiàn)疊加到矩形脈沖信號(hào)時(shí),信號(hào)上將出現(xiàn)附加的噪聲。無(wú)論出現(xiàn)上述的那一種情況,都可以通過(guò)用施密特反相觸發(fā)器整形而得到比較理想的矩形脈沖波形。只要施密特觸發(fā)器的VT+和VT-設(shè)置得合適,均能受到滿(mǎn)意的整形效果。信號(hào)預(yù)處理電路如圖3-11所示。 圖3-11 信號(hào)預(yù)處理電路圖3.3存儲(chǔ)器電路設(shè)計(jì) 3.3.1 I2C總線(xiàn)概述I2C總線(xiàn)是一種用于IC器件之間連接的二線(xiàn)制總線(xiàn)。它通過(guò)SDA(串行數(shù)據(jù)線(xiàn))及SCL(串行時(shí)鐘線(xiàn))兩根線(xiàn)在連到總線(xiàn)上器件之間傳送信息,并根據(jù)地址識(shí)別每個(gè)器件,不管是單片機(jī)、存儲(chǔ)器、LCD驅(qū)動(dòng)器還是鍵盤(pán)接口。采用I2C總線(xiàn)標(biāo)準(zhǔn)單片機(jī)或IC器件,其內(nèi)部不僅有I2C接口電路,而且將內(nèi)部各單元電路按功能劃分為若干相對(duì)獨(dú)立模塊,通過(guò)軟件尋址實(shí)現(xiàn)片選,減少了器件片選線(xiàn)連接。CPU不僅能通過(guò)指令將某個(gè)功能單元電路掛靠或摘離總線(xiàn),還可對(duì)該單元的工作狀況進(jìn)行檢測(cè),從而實(shí)現(xiàn)對(duì)硬件系統(tǒng)的既簡(jiǎn)單又靈活的擴(kuò)展與控制。I2C總線(xiàn)則根據(jù)器件的功能通過(guò)軟件程序使其可工作于發(fā)送或接收方式。當(dāng)某個(gè)器件向總線(xiàn)上發(fā)送信息時(shí),它就是發(fā)送器(也叫主器件),而當(dāng)其從總線(xiàn)上接收信息時(shí),又成為接收器(也叫從器件)。主器件用于啟動(dòng)總線(xiàn)上傳送數(shù)據(jù)并產(chǎn)生時(shí)鐘以開(kāi)放傳送的器件,此時(shí)任何被尋址的器件均被認(rèn)為是從器件。I2C總線(xiàn)的控制完全由掛接在總線(xiàn)上的主器件送出的地址和數(shù)據(jù)決定。在總線(xiàn)上,既沒(méi)有中心機(jī),也沒(méi)有優(yōu)先機(jī)。I2C總線(xiàn)的數(shù)據(jù)傳送格式是:在I2C總線(xiàn)開(kāi)始信號(hào)后,送出的第一個(gè)字節(jié)數(shù)據(jù)是用來(lái)選擇從器件地址的,其中前7位為地址碼,第8位為方向位(R/W)。方向位為“0”表示發(fā)送,即主器件把信息寫(xiě)到所選擇的從器件;方向位為“1”表示主器件將從從器件讀信息。開(kāi)始信號(hào)后,系統(tǒng)中的各個(gè)器件將自己的地址和主器件送到總線(xiàn)上的地址進(jìn)行比較,如果與主器件發(fā)送到總線(xiàn)上的地址一致,則該器件即為被主器件尋址的器件,其接收信息還是發(fā)送信息則由第8位(R/W)確定。3.3.2 存儲(chǔ)器電路圖3-12 AT24CO2與單片機(jī)的接口電路3.4 顯示電路設(shè)計(jì)3.5 PWM信號(hào)發(fā)生電路設(shè)計(jì)PWM波可以由具有PWM輸出的單片機(jī)通過(guò)編程來(lái)得以產(chǎn)生,也可以采用PWM專(zhuān)用芯片來(lái)實(shí)現(xiàn)。當(dāng)PWM波的頻率太高時(shí),它對(duì)直流電機(jī)驅(qū)動(dòng)的功率管要求太高,而當(dāng)它的頻率太低時(shí),其產(chǎn)生的電磁噪聲就比較大,在實(shí)際應(yīng)用中,當(dāng)PWM波的頻率在18KHz左右時(shí),效果最好。在本系統(tǒng)內(nèi),采用了兩片4位數(shù)值比較器4585和一片12位串行計(jì)數(shù)器4040組成了PWM信號(hào)發(fā)生電路。兩片數(shù)值比較器4585,即圖上U2、U3的A組接12位串行4040計(jì)數(shù)輸出端Q2Q9,而U2、U3的B組接到單片機(jī)的P1端口。只要改變P1端口的輸出值,那么就可以使得PWM信號(hào)的占空比發(fā)生變化,從而進(jìn)行調(diào)速控制。12位串行計(jì)數(shù)器4040的計(jì)數(shù)輸入端CLK接到單片機(jī)C51晶振的振蕩輸出XTAL2。計(jì)數(shù)器4040每來(lái)8個(gè)脈沖,其輸出Q2Q9加1,當(dāng)計(jì)數(shù)值小于或者等于單片機(jī)P1端口輸出值X時(shí),圖中U2的(AB)輸出端保持為低電平,而當(dāng)計(jì)數(shù)值大于單片機(jī)P1端口輸出值X時(shí),圖中U2的(AB)輸出端為高電平。隨著計(jì)數(shù)值的增加,Q2Q9由全“1”變?yōu)槿?”時(shí),圖中U2的(AB)輸出端又變?yōu)榈碗娖?,這樣就在U2的(AB)端得到了PWM的信號(hào),它的占空比為(255 -X / 255)*100%,那么只要改變X的數(shù)值,就可以相應(yīng)的改變PWM信號(hào)的占空比,從而進(jìn)行直流電機(jī)的轉(zhuǎn)速控制。第四章 軟件設(shè)計(jì)4.1系統(tǒng)軟件總流程圖開(kāi)始設(shè)堆棧清標(biāo)志清暫存清顯示T0初始化串行口初始化CPU開(kāi)中斷掃描鍵盤(pán)速度采樣顯示圖4.1 系統(tǒng)軟件主程序流程圖4.2程序清單/*LCD.C12864 LCD驅(qū)動(dòng)程序頭文件*/#ifndef LCD_H_#define LCD_H_#include/定義背光控制信號(hào)sbit LCD_BL=P14;/點(diǎn)亮背光燈void LcdLightOn();/熄滅背光燈void LcdLightOff();/清屏void LcdClear();/初始化void LcdInit();/顯示ASC碼void LcdPutChar(unsigned char c);/顯示字符串void LcdPuts(unsigned char*s);#endif /LCD_H_/*LCD.C12864 LCD驅(qū)動(dòng)程序*/#include #include /#include LCD.H/定義屏幕光標(biāo)(取值063,光標(biāo)本身不可見(jiàn))unsigned char LcdCursor;int i,j;/*函數(shù):LcdLightOn()功能:點(diǎn)亮背光燈*/void LcdLightOn()LCD_BL = 1;/*函數(shù):LcdLightOff()功能:熄滅背光燈*/void LcdLightOff()LCD_BL = 0;/*函數(shù):LcdGetBF()功能:讀出狀態(tài)位BF返回:BF=1,表示忙,不可進(jìn)行任何操作BF=0,表示不忙,可以進(jìn)行正常操作*/bit LcdGetBF()unsigned char dat;dat = XBYTE0xD002;/XBYTE的定義見(jiàn)return (bit)(dat & 0x80);/*函數(shù):LcdWriteCmd()功能:向LCD發(fā)送命令參數(shù):cmd:命令字,詳見(jiàn)器件的數(shù)據(jù)手冊(cè)*/void LcdWriteCmd(unsigned char cmd)while ( LcdGetBF() );XBYTE0xD000 = cmd;/*函數(shù):LcdWriteDat()功能:向LCD寫(xiě)入數(shù)據(jù)參數(shù):dat,要寫(xiě)入的數(shù)據(jù)說(shuō)明:目標(biāo)地址由地址計(jì)數(shù)器AC隱含指定,寫(xiě)完后AC自動(dòng)加1*/void LcdWriteDat(unsigned char dat)while ( LcdGetBF() );XBYTE0xD001 = dat;/*函數(shù):LcdReadDat()功能:從LCD讀出數(shù)據(jù)返回:讀出的數(shù)據(jù)*/*unsigned char LcdReadDat()volatile unsigned char dat;while ( LcdGetBF() );dat = XBYTE0xD003;dat = XBYTE0xD003;/需要連續(xù)執(zhí)行兩次才能夠讀出真正的數(shù)據(jù)return dat;*/*函數(shù):LcdSetAC()功能:設(shè)置DDRAM(顯示數(shù)據(jù)RAM)的AC(地址計(jì)數(shù)器)值參數(shù):ac:地址計(jì)數(shù)器值,范圍063*/void LcdSetAC(unsigned char ac)ac &= 0x3F;ac |= 0x80;LcdWriteCmd(ac);/*函數(shù):LcdClear()功能:LCD清屏,并使光標(biāo)回到0*/void LcdClear()LcdWriteCmd(0x01);/清屏命令LcdCursor = 0;/*函數(shù):LcdDelay()功能:延時(shí)(t*100)個(gè)機(jī)器周期*/void LcdDelay(unsigned char t)unsigned char n;don = 49;while ( -n != 0 ); while ( -t != 0 );/*函數(shù):LcdInit()功能:LCD初始化*/void LcdInit()LcdWriteCmd(0x30);/設(shè)置基本指令集LcdDelay(3);LcdWriteCmd(0x30);/設(shè)置基本指令集(需要再執(zhí)行一次)LcdDelay(1);LcdWriteCmd(0x0C);/開(kāi)啟顯示LcdDelay(3);LcdClear();/清屏LcdDelay(250);LcdWriteCmd(0x06);/設(shè)置進(jìn)入點(diǎn)LcdDelay(10);/*函數(shù):LcdCheckAC()功能:根據(jù)光標(biāo)位置調(diào)整AC*/void LcdCheckAC()switch ( LcdCursor )case 16:LcdSetAC(16);break;case 32:LcdSetAC(8);break;case 48:LcdSetAC(24);break;case 64:LcdCursor = 0;LcdSetAC(0);break;default:break;/*函數(shù):LcdPutChar()功能:顯示ASCII碼參數(shù):c為可顯示的ASCII碼(0x200x7F)*/void LcdPutChar(unsigned char c)LcdWriteDat(c);LcdCursor+;LcdCheckAC();/*函數(shù):LcdPutHZ()功能:顯示漢字參數(shù):ch,cl:漢字編碼*/void LcdPutHZ(unsigned char ch, unsigned char cl)if ( LcdCursor & 0x01 )/顯示漢字時(shí),必須偶地址對(duì)準(zhǔn),即光標(biāo)位置不能是奇數(shù)LcdPutChar( );/額外輸出一個(gè)空格LcdWriteDat(ch);LcdWriteDat(cl);LcdCursor += 2;LcdCheckAC();/*函數(shù):LcdPuts()功能:顯示字符串參數(shù):*s:要顯示的字符串(可同時(shí)包含ASCII碼和漢字)*/void LcdPuts(unsigned char *s)unsigned char ch, cl;for (;)ch = *s+;if ( ch = 0 ) break;if ( ch 0x80 )LcdPutChar(ch);elsecl = *s+;LcdPutHZ(ch,cl);/*顯示主程序*/#includeLCD.H#include/#include DELAY.H /* 包含延時(shí)函數(shù)的頭部文件delay_us();delay_ms(); */ /*函數(shù):Delay()延時(shí)1ms 65.53st0時(shí),延時(shí)(t*0.001)st=0時(shí)。延時(shí)65.53s*/*/unsigned char SD4=1,2,3,4;/速度設(shè)定unsigned char FK4=2,2,3,4;/速度反饋int D=0;/方向控制中間變量unsigned int Pwm=0;/速度產(chǎn)生中間變量 unsigned int p=0; unsigned int Value=0; unsigned int Pwm_Value=0; unsigned int m; /unsigned int a,b,c,d;sbit KEY1=P20;sbit KEY2=P21;sbit KEY3=P22;sbit MotorA=P16;sbit MotorB=P17; bit SWTR;bit SWTF;unsigned int SWTV; #define Pwm_MAX 255void Delay(unsigned int T)SWTV=T;SWTR=1;while(!SWTF);SWTR=0;SWTF=0;void KEY()if(KEY1=0)Value=Value+1;if(KEY2=0)Value=Value-1;if(KEY3=0)if(D=0)D=1; else D=0; void PWM_Init() staticunsigned char t=0;t+; if(tPwm_MAX)t=0;if(t=Pwm_Value) Pwm=1;else Pwm=0;if(D=0)MotorA=0;MotorB=Pwm;elseMotorA=Pwm;MotorB=0; void Show_Value(unsigned char CH) int i; for(i=0;iValue) Pwm_Value=Pwm_Value-1;if(mValue) Pwm_Value=Pwm_Value+1;FK3=(m%10)+48;FK2=(m/10%10)+48;FK1=(m/100%10)+48;FK0=(m/1000%10)+48;SD3=(Value%10)+48;SD2=(Value/10%10)+48;SD1=(Value/100%10)+48;SD0=(Value/1000%10)+48;void main() unsigned char i; MotorA=0; MotorB=0;EA=0; T_int(); Delay(50); LcdInit();/LCD初始化/*/ for(i=0;i2;i+)LcdLightOff();Delay(660);LcdLightOn();Delay(660); Delay(660); LcdClear(); Delay(660);/*/EA=1; Show_Init(); Delay(20);Value=200; Pwm_Value=Value; for(;) KEY();/按鍵處理MeasureSpeed();LcdWriteCmd(0x94);Show_Value(FK);LcdWriteCmd(0x84);Show_Value(SD);LcdWriteCmd(0x8c); if(D=0)LcdPuts(正向);if(D=1)LcdPuts(反向);void T1ZD() interrupt 3TR1=0;/KEY();/按鍵處理PWM_Init();if(SWTR) /延時(shí) if(-SWTV=0) SWTF=1;TR1=1;第五章 結(jié)論與展望本設(shè)計(jì)以8051為核心,利用單片機(jī)的運(yùn)算和控制功能,并采用系統(tǒng)化LCD顯示模塊實(shí)時(shí)顯示所測(cè)速度的設(shè)計(jì)方案,以及串口數(shù)據(jù)存儲(chǔ)電路和系統(tǒng)軟件。傳感器也是實(shí)現(xiàn)測(cè)量與控制不可缺少的環(huán)節(jié),是測(cè)控系統(tǒng)的關(guān)鍵部件,如果沒(méi)有傳感器對(duì)原始被測(cè)信號(hào)進(jìn)行準(zhǔn)確可靠的捕捉和轉(zhuǎn)換,一切準(zhǔn)確的測(cè)量和控制都將無(wú)法實(shí)現(xiàn)。工業(yè)生產(chǎn)過(guò)程的自動(dòng)化測(cè)量和控制,幾乎主要依靠各種傳感器來(lái)檢測(cè)和控制生產(chǎn)過(guò)程中的各種參量,使設(shè)備和系統(tǒng)正常運(yùn)行在最佳狀態(tài),從而保證生產(chǎn)的高效率和高質(zhì)量。本方案基本實(shí)現(xiàn)了直流電機(jī)的速度即時(shí)顯示,并可通過(guò)控制按鍵顯示速度,并通過(guò)PWM方波對(duì)直流電機(jī)的速度與轉(zhuǎn)向進(jìn)行控制。這一方案可以在很多領(lǐng)域有很好的應(yīng)用,例如我們現(xiàn)在交通不可缺少的代步工具電動(dòng)車(chē)的車(chē)速表,采用數(shù)字式顯示不僅一目了然,還很精確。隨著科技的不斷發(fā)展,傳感器的廣泛應(yīng)用,各種智能儀表都會(huì)采用數(shù)字式顯示,不僅讀取方便,而且精度更高,更可靠。 附錄附一 速度控制子程序void T_int();/定時(shí)器初始化Tmod=0x00;Tmod=0x25;TH1=TL1=0xa4;TH0=TL0=0;void Delay(unsigned int t)SWTV=T;SWTR=1;WHILE(!SWTF);SWTR=0;SWTF=0void MeasureSpeed();/速度計(jì)算int m;TH0=TL0=0TR0=1Delay(2500);TR0=0;TF0=0;m=TH0*255+TH0;/已知速度不吵過(guò)100a=m%10;b=m/10%10;c=m/100%10;d=m/100

溫馨提示

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

評(píng)論

0/150

提交評(píng)論