直流電機PWM調(diào)速與控制設(shè)計報告_第1頁
直流電機PWM調(diào)速與控制設(shè)計報告_第2頁
直流電機PWM調(diào)速與控制設(shè)計報告_第3頁
直流電機PWM調(diào)速與控制設(shè)計報告_第4頁
直流電機PWM調(diào)速與控制設(shè)計報告_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、綜 合 設(shè) 計 報 告 單 位: 自 動 化 學(xué) 院 學(xué)生姓名: 專 業(yè): 測控技術(shù)與儀器 班 級: 0820801 學(xué) 號: 指導(dǎo)老師: 成 績: 設(shè)計時間: 2011 年 12 月 重慶郵電大學(xué)自動化學(xué)院制一、題目直流電機調(diào)速與控制系統(tǒng)設(shè)計。二、技術(shù)要求設(shè)計直流電機調(diào)速與控制系統(tǒng),要求如下:1、學(xué)習(xí)直流電機調(diào)速與控制的基本原理;2、了解直流電機速度脈沖檢測原理;3、利用51單片機和合適的電機驅(qū)動芯片設(shè)計控制器及速度檢測電路;4、使用C語言編寫控制程序,通過實時串口能夠完成和上位機的通信;5、選擇合適控制平臺,繪制系統(tǒng)的組建結(jié)構(gòu)圖,給出完整的設(shè)計流程圖。6、要求電機能實現(xiàn)正反轉(zhuǎn)控制;7、系統(tǒng)

2、具有實時顯示電機速度功能;8、電機的設(shè)定速度由電位器輸入;9、電機的速度調(diào)節(jié)誤差應(yīng)在允許的誤差范圍內(nèi)。三、給定條件1、直流電機驅(qū)動原理,單片機原理及接口技術(shù)等參考資料;2、電阻、電容等各種分離元件、IC、直流電機、電源等;3、STC12C5A60S2單片機、LM298以及PC機;四、設(shè)計1. 確定總體方案;2. 畫出系統(tǒng)結(jié)構(gòu)圖;3. 選擇以電機控制芯片和單片機及速度檢測電路,設(shè)計硬件電路;4. 設(shè)計串口及通信程序,完成和上位機的通信;5. 畫出程序流程圖并編寫調(diào)試代碼,完成報告;直流電機調(diào)速與控制摘要:當(dāng)今社會,電動機作為最主要的機電能量轉(zhuǎn)換裝置,其應(yīng)用范圍已遍及國民經(jīng)濟的各個領(lǐng)域和人們的日常

3、生活。無論是在工農(nóng)業(yè)生產(chǎn),交通運輸,國防,航空航天,醫(yī)療衛(wèi)生,商務(wù)和辦公設(shè)備中,還是在日常生活的家用電器和消費電子產(chǎn)品(如電冰箱,空調(diào),DVD等)中,都大量使用著各種各樣的電動機。據(jù)資料顯示,在所有動力資源中,百分之九十以上來自電動機。同樣,我國生產(chǎn)的電能中有百分之六十是用于電動機的。電動機與人的生活息息相關(guān),密不可分。電氣時代,電動機的調(diào)速控制一般采用模擬法、PID控制等,對電動機的簡單控制應(yīng)用比較多。簡單控制是指對電動機進行啟動,制動,正反轉(zhuǎn)控制和順序控制。這類控制可通過繼電器,光耦、可編程控制器和開關(guān)元件來實現(xiàn)。還有一類控制叫復(fù)雜控制,是指對電動機的轉(zhuǎn)速,轉(zhuǎn)角,轉(zhuǎn)矩,電壓,電流,功率等物

4、理量進行控制。本電機控制系統(tǒng)基于51內(nèi)核的單片機設(shè)計,采用LM298直流電機驅(qū)動器,利用PWM脈寬調(diào)制控制電機,并通過光耦管測速,經(jīng)單片機I/O口定時采樣,最后通過閉環(huán)反饋控制系統(tǒng)實現(xiàn)電機轉(zhuǎn)速的精確控制,其中電機的設(shè)定速度由電位器經(jīng)A/D通過輸入,系統(tǒng)的狀顯示與控制由上位機實現(xiàn)。經(jīng)過設(shè)計和調(diào)試,本控制系統(tǒng)能實現(xiàn)電機轉(zhuǎn)速較小誤差的控制,系統(tǒng)具有上位機顯示轉(zhuǎn)速和控制電機開啟、停止和正反轉(zhuǎn)等功能。具有一定的實際應(yīng)用意義。關(guān)鍵字:直流電機、反饋控制、51內(nèi)核、PWM脈寬調(diào)制、LM298 一、 系統(tǒng)原理及功能概述1、 系統(tǒng)設(shè)計原理本電機控制系統(tǒng)采用基于51內(nèi)核的單片機設(shè)計,主要用于電機的測速與轉(zhuǎn)速控制,

5、硬件方面設(shè)計有可調(diào)電源模塊,串口電路模塊、電機測速模塊、速度脈沖信號調(diào)理電路模塊、直流電機驅(qū)動模塊等電路;軟件方面采用基于C語言的編程語言,能實現(xiàn)系統(tǒng)與上位機的通信,并實時顯示電機的轉(zhuǎn)速和控制電機的運行狀態(tài),如開啟、停止、正反轉(zhuǎn)等。單片機選用了51升級系列的STC12c5a60s2作為主控制器,該芯片完全兼容之前較低版本的所有51指令,同時它還自帶2路PWM控制器、2個定時器、2個串行口支持獨立的波特率發(fā)生器、3路可編程時鐘輸出、8路10位AD轉(zhuǎn)換器、一個SPI接口等,能非常方便的滿足本次電機控制的需求,其PWM端口用于輸出一定頻率且脈寬可調(diào)的PWM波用于控制電機轉(zhuǎn)速,單片機自帶的A/D端口作

6、為設(shè)定速度的模擬信號輸入口,定時器用于串口通信和速度的定時采樣以及上位機的定時顯示等。系統(tǒng)的電機驅(qū)動單元選擇了LM298N大功率驅(qū)動芯片,再利用TLP521光耦合器和整流二極管設(shè)計的驅(qū)動電路能實現(xiàn)電器隔離與控制,能提高控制效率和精度極大減少了撓動干擾,而且可以實現(xiàn)電機的正反裝和剎車功能。 系統(tǒng)測速模塊基于槽型光耦GK105設(shè)計,將電機的轉(zhuǎn)速轉(zhuǎn)換成不同頻率的脈沖信號,在經(jīng)過基于LM324的電壓比較器和74HC573鎖存器進行信號波形的整形,最后通過檢測單片機的I/O口的脈沖實現(xiàn)速度的測量。11直流電機基本工作原理圖1.1直流電機的基本結(jié)夠圖12直流電機調(diào)速原理直流電機轉(zhuǎn)速n的表達式為: (1 -

7、 1)式中:U-電樞端電壓;I-電樞電流;R-電樞電路總電阻;-每極磁通量;K-與電機結(jié)構(gòu)有關(guān)的常數(shù),因此直流電機轉(zhuǎn)速n的控制方法有三種,主要以調(diào)壓調(diào)速為主。本控制器主要通過脈寬調(diào)制PWM來控制電動機電樞電壓,實現(xiàn)調(diào)速。調(diào)脈寬的方式有三種:定頻調(diào)寬、定寬調(diào)頻和調(diào)寬調(diào)頻。本系統(tǒng)采用了定頻調(diào)脈寬方式的PWM控制,因為采用這種方式,電動機在運轉(zhuǎn)時比較穩(wěn)定;并且在采用單片機產(chǎn)生PWM脈沖的軟件實現(xiàn)上比較方便。對直流電機轉(zhuǎn)速的控制即可采用開環(huán)控制,也可采用閉環(huán)控制。與開環(huán)控制相比,速度控制閉環(huán)系統(tǒng)的機械特性有以下優(yōu)越性:閉環(huán)系統(tǒng)的機械特性與開環(huán)系統(tǒng)機械特性相比,其性能大大提高;理想空載轉(zhuǎn)速相同時,閉環(huán)系

8、統(tǒng)的靜差率(額定負載時電機轉(zhuǎn)速降落與理想空載轉(zhuǎn)速之比)要小得多;當(dāng)要求的靜差率相同時, 閉環(huán)調(diào)速系統(tǒng)的調(diào)速范圍可以大大提高。直流電機的速度控制方案如圖1所示。轉(zhuǎn)速設(shè)定值轉(zhuǎn)速輸出偏差調(diào)節(jié)器驅(qū)動電路直流電機+ -測速裝置圖 1 直流電機速度閉環(huán)控制方案二、 系統(tǒng)硬件設(shè)計1系統(tǒng)總體設(shè)計框圖本系統(tǒng)采用STC12C5A60S作為控制核心,用上位機顯示設(shè)定轉(zhuǎn)速和測量轉(zhuǎn)速以及控制電機。采用LM298驅(qū)動芯片作為本系統(tǒng)的驅(qū)動電路和用槽型光耦GK105作為該系統(tǒng)的測量電路??驁D如2所示。STC12C5A60S2單片機時鐘電路LM298驅(qū)動電路UART串口電路直流電機上位機顯示與控制光耦測速管速度模擬量輸入電路信

9、號調(diào)理電路 電源模塊圖2 直流電機控制系統(tǒng)總體框圖2模塊電路及功能介紹2.1單片機最小系統(tǒng)電路單片機主要擅長系統(tǒng)控制,而不適合做復(fù)雜的數(shù)據(jù)處理,在設(shè)計單片機最小系統(tǒng)時我們選用STC12C5A60S2位DIP-40封裝的單片機作為MCU。STC12C5A60S2芯片是有宏晶科技生產(chǎn)的單時鐘./機器周期(1T)的單片機,具有64K的用戶程序存儲空間及1280字節(jié)的RAM,完全兼容之前較低版本的所有51指令,但速度快58倍,內(nèi)部集成有MAX801專用復(fù)位電路、同時它還自帶2路PWM控制器、2個定時器、2個串行口支持獨立的波特率發(fā)生器、3路可編程時鐘輸出、8路高速10位AD轉(zhuǎn)換器、一個SPI接口等,應(yīng)

10、用于電機控制等強干擾場合。本系統(tǒng)的單片機最小系統(tǒng)由時鐘電路、復(fù)位電路、電源電路、外圍總線接口等部分組成。圖3為單片機最小系統(tǒng)結(jié)構(gòu)框圖。 圖3 51最小系統(tǒng)電路2.1.1系統(tǒng)時鐘電路 單片機內(nèi)部具有一個高增益反相放大器,用于構(gòu)成振蕩器。通常在引腳XTALl和XTAL2跨接石英晶體和兩個補償電容構(gòu)成自激振蕩器,系統(tǒng)時鐘電路結(jié)構(gòu)如圖6所示,可以根據(jù)情況選擇6MHz、8MHz或12MHz等頻率的石英晶體,本系統(tǒng)采用12MHz的晶振。補償電容通常選擇20-30pF左右的瓷片電容。2.1.2復(fù)位電路 單片機小系統(tǒng)采用上電自動復(fù)位和手動按鍵復(fù)位兩種方式實現(xiàn)系統(tǒng)的復(fù)位操作。上電復(fù)位要求接通電源后,自動實現(xiàn)復(fù)位

11、操作。手動復(fù)位要求在電源接通的條件下,在單片機運行期間,用按鈕開關(guān)操作使單片機復(fù)位。復(fù)位電路結(jié)構(gòu)如圖6所示。上電自動復(fù)位通過電容充電來實現(xiàn)。手動按鍵復(fù)位是通過按鍵將電阻與VCC接通來實現(xiàn)。2.2電機驅(qū)動模塊直流電機驅(qū)動采用常用的H橋電路,通過控制信號選通對管與否實現(xiàn)電機的正反轉(zhuǎn),并改變所加電壓的占空比來改變電機轉(zhuǎn)速。如圖4所示,這里采用電機驅(qū)動專用芯片L298N,該芯片可驅(qū)動兩路536V的直流電機或者一路四拍的步進電機。同時在L298N與主控芯片間通過四路光耦TLP5214隔離消除干擾信號。在STC12C5A60S2上配置好串口、PWM,實現(xiàn)串口接收的數(shù)據(jù)直接賦值給PWM定時器CCAP1L、C

12、CAP1H。利用串口調(diào)試助手發(fā)送控制信息給STC12C5A60S2,同時輔助外界6V電源更改L298N的IN1和IN2共同完成L298N電機驅(qū)動模塊的調(diào)試。 圖4 LM298N電機驅(qū)動電路2.3直流電機測速電路2.3.1槽型光耦GK105測速電路圖 5 槽型光耦GK105電路圖 6 電機轉(zhuǎn)速編碼裝置如圖5和圖6所示,光電對管采用槽型光耦GK105電路由一只特殊的發(fā)光二極管和光電三極管構(gòu)成,當(dāng)二極管發(fā)出的光打在光電三極管的基極B上時三極管CE導(dǎo)通。而正常情況下二極管的光不能到達光電管的基極上,故通過裝在電機轉(zhuǎn)軸上得圓形編碼片即可實現(xiàn)對小車的測速。假設(shè)編碼片兒有n片個缺口,測得光電三極管的輸出脈沖

13、頻率為f,則車速=f/n。由圖7可知,電機每轉(zhuǎn)一圈, 槽型光耦產(chǎn)生4個脈沖,因此可以利用槽型光耦傳感器信號得到電機的實際轉(zhuǎn)速。為盡可能縮短一次速度采樣的時間,則電機的實際轉(zhuǎn)速為:V=(N/4)*60; V:速度 R/minN:每秒采樣的脈沖個數(shù) 圖7 電機轉(zhuǎn)1圈GK105光耦管信號2.3.2速度脈沖信號調(diào)理電路給電機加電讓其帶動編碼盤旋轉(zhuǎn),將光電對管靠近編碼盤,用示波器觀測輸出脈沖信號的有無與好壞。信號調(diào)理電路主要利用LM324運算放大器設(shè)計的比較器,如圖8所示,調(diào)節(jié)比較器偏置電壓使脈沖最接近于方波且幅度大于3.3V。為了提高測速的精度,在信號后級添加比較器調(diào)理信號為標(biāo)準的方波,調(diào)節(jié)比較器運放

14、的偏置電壓使方波信號最適合于測速。 圖 8 基于LM324的信號調(diào)理電路2.4串口電路設(shè)計MAX232芯片是美信公司專門為電腦的RS-232標(biāo)準串口設(shè)計的接口電路,使用+5V單電源供電。其內(nèi)部結(jié)構(gòu)基本可分三個部分:第一部分是電荷泵電路,由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腳

15、(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DB9插頭;DB9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。第三部分是供電,15腳GND、16腳VCC(+5V)。電路如圖9所示。圖 9 串口電路圖2.5系統(tǒng)電源設(shè)計本系統(tǒng)要求有5V和67V的電源輸入,因此我們選用了LM317作為電源芯片。LM317作為輸出電壓可變的集成三端穩(wěn)壓塊,是一種使用方便、應(yīng)用廣泛的集成穩(wěn)壓塊。其應(yīng)用電路如圖10所示。圖11為電源濾波電路。圖10 3.3V穩(wěn)壓電路圖11 濾波電路穩(wěn)

16、壓電源的輸出電壓可用下式計算,Vo=1.25(1+R2/R1)。本系統(tǒng)中取R1為240n,R2取5K的可調(diào)電位器。通過調(diào)節(jié)R2的阻值大小,進而可以改變輸出電壓的大小,實現(xiàn)電壓可調(diào),其可調(diào)范圍是Vo=1.25V37V。在應(yīng)用中,為了電路的穩(wěn)定工作,在一般情況下,還需要接二極管作為保護電路,防止電路中的電容放電時的高壓把317燒壞。2.6電機設(shè)定速度輸入電路本系統(tǒng)采用了簡單的電位器,通過電位器將5V電源信號分壓在經(jīng)過單片機A/D端口輸入到CPU處理,實現(xiàn)電機速度手動的可調(diào),其電路如圖12所示。圖12 電位器速度設(shè)置電路三、 系統(tǒng)軟件設(shè)計本程序主要分為6大塊,主程序、A/D轉(zhuǎn)換處理程序、PWM輸出程

17、序、串口顯示與電機狀態(tài)控制程序、定時器0的中斷服務(wù)程序,串口中斷服務(wù)程序。主程序主要做了系統(tǒng)初始化,定時器0的初始化和主循環(huán)等。配置STC12C5A60S2定時器0為定時器方式2、50ms計數(shù)器中斷,累計20次定時器0中斷為1秒,此時TL1即光電對管輸入的脈沖頻率,同時在此一秒內(nèi)觸發(fā)AD采集一次電源電壓Voltage送入內(nèi)存并通過運算轉(zhuǎn)換成設(shè)定的速度值。PC終端的顯示也是沒隔一秒刷新一次。配置STC12C5A60S2串行口1為方式2、獨立波特率發(fā)生器9600、允許接收中斷。當(dāng)串口1接收到PC機數(shù)據(jù)轉(zhuǎn)入中斷處理程序,檢測接收到的數(shù)據(jù)以此來區(qū)分數(shù)據(jù)是屬于哪種控制信號。配置STC12C5A60S2脈

18、寬調(diào)制PWM為8位、無中斷。主程序中循環(huán)執(zhí)行Pwm()函數(shù)實時更改PWM定時器CCAP1L、CCAP1H的值,實現(xiàn)對電機轉(zhuǎn)速的控制。1主程序主程序主要功能為系統(tǒng)初始化,定時器0的初始化和主循環(huán)等。流程圖如圖13所示 開始系統(tǒng)初始化速度脈沖信號輸入I/O口掃描串口發(fā)送數(shù)據(jù)1S計時標(biāo)志速度及A/D值采樣PWM輸出結(jié)束否是 圖13 系統(tǒng)主程序流程圖2串口中斷發(fā)送程序本系統(tǒng)的串口通信指的是單片機與上位機(PC機)之間的串口通信,該通信主要用于測速模塊的調(diào)試以及在測量轉(zhuǎn)速時,單片機能從上位機(PC機)接收數(shù)據(jù)或者能將數(shù)據(jù)發(fā)回給上位機(PC機),以便觀察電機轉(zhuǎn)動情況,或者獲得我們所需要的數(shù)據(jù)。如圖14所示

19、,在本設(shè)計中,采用的是STC12C5A60S2芯片的串口UART0來與PC機進行串口通信。在串口UART0的配置中,定時/計數(shù)采用方式2是將兩個8位計數(shù)器TH1和TL1分成獨立的兩個部分,組成一個8位可自動再裝入的定時器/計數(shù)器,由TL1作為8位計數(shù)器,TH1作為計數(shù)初值寄存器,設(shè)置初值時同時送TH1和TL1,當(dāng)TL1計數(shù)滿回0產(chǎn)生溢出,不僅置位TF1,而且控制TH1中的初值重新裝入TL1,繼續(xù)下一輪計數(shù),此信號送串行通信系統(tǒng),以設(shè)置串行通信波特率,波特率設(shè)置公式如式所示:波特率=2 SMOD*(溢出率)/32 。否發(fā)送第二字節(jié)數(shù)據(jù)1字節(jié)數(shù)據(jù)發(fā)送完畢 ?進入發(fā)送中斷發(fā)送1byte數(shù)據(jù)1字節(jié)數(shù)據(jù)

20、發(fā)送完畢 ?是否中斷返回是圖14 串口發(fā)送程序流程圖3串口中斷接收程序 上位機控制單元解擴出1bit數(shù)據(jù)后,產(chǎn)生一次中斷。接收時首先采用16bits接收窗口、1bit滑動方式來接收通信的同步幀頭0x09、0xAF,幀頭接收成功后,后續(xù)數(shù)據(jù)按每8bits一個字節(jié)的方式進行截取,得到傳送的有效數(shù)據(jù),同時將得到的有效數(shù)據(jù)存儲在緩沖單元中;接收過程中,按有關(guān)的通信協(xié)議進行地址判別、長度接收、校驗計算。地址相同的模塊對符合通信協(xié)議的數(shù)據(jù)進行應(yīng)答,轉(zhuǎn)入發(fā)送態(tài)。程序流程圖如圖15所示。否重組數(shù)據(jù)進入接收中斷清零接收標(biāo)志1字節(jié)數(shù)據(jù)接收完畢 ?是中斷返回 圖15 串口接收程序流程圖4A/D轉(zhuǎn)換程序 A/D轉(zhuǎn)換程

21、序主要用于電機速度的輸入模擬信號的采集與轉(zhuǎn)換。程序流程圖如圖16所示。啟動指定通道延時轉(zhuǎn)換結(jié)束?返回轉(zhuǎn)換結(jié)果否是 圖16 A/D轉(zhuǎn)換程序流程圖5PWM輸出程序PWM控制脈沖寬度調(diào)制技術(shù),即通過一系列脈沖的寬度調(diào)制來等效地獲得所需的波形(含形狀和幅值),程序主要用于控制電機轉(zhuǎn)速,他通過主程序的反饋算法計算出來,然后調(diào)整脈沖寬度來控制電機。程序流程圖如圖17所示。設(shè)置寄存器CCON=0;設(shè)置PWM模式寄存器CMOD=0x00,及PWM頻率為系統(tǒng)時鐘/12設(shè)置允許PCA計數(shù)器計數(shù)標(biāo)志位CR設(shè)置寄存器PCA_PWM0=0x00;CCAPM0=0x42;設(shè)置寄存器CCAP0H,CCAP0L,調(diào)節(jié)脈沖寬度

22、圖17 PWM輸出程序流程圖6定時器0中斷服務(wù)程序 定時器0中斷程序主要用于1秒定時、轉(zhuǎn)速的計算、A/D值采集以及上位機顯示刷新。程序流程圖如圖18所示。入口計算轉(zhuǎn)速,讀取A/D,顯示刷新1秒計時標(biāo)志?返回否是計時賦初值 圖18定時器0中斷服務(wù)程序流程圖四、 系統(tǒng)調(diào)試及性能分析1. 系統(tǒng)硬件調(diào)試1.1如圖19為系統(tǒng)測速電路的采樣波形 圖19 經(jīng)整形后的速度脈沖波形1.2串口收發(fā)數(shù)據(jù)調(diào)試串口電路是連接PC機與通信模塊的橋梁,可借助串口調(diào)試助手對所設(shè)計的串口通信電路和通信模塊進行測試。如圖5.1所示,通過串口調(diào)試助手,向端口分別發(fā)送數(shù)據(jù)0x01、0x02、0x03、0x04、0x05數(shù)據(jù)經(jīng)串口電路

23、被單片機接收,將數(shù)據(jù)進行存儲判斷,決定是開啟顯示和電機還是正反轉(zhuǎn)或是停止,同時將所出狀態(tài)及電機轉(zhuǎn)速發(fā)送回來,在串口調(diào)試助手的接收窗口上可以看到接收到的數(shù)據(jù)。串口調(diào)試如圖20所示。 圖20 電機轉(zhuǎn)速及對應(yīng)的電壓顯示數(shù)據(jù)1.3實物展示 圖22 系統(tǒng)實物圖2系統(tǒng)測試數(shù)據(jù)處理2.1利用matlab對電機兩端電壓和轉(zhuǎn)速數(shù)據(jù)進行曲線擬合實型電壓數(shù)據(jù):votlage_V=1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 3.1 3.2 3.3 3.41 3.49 3.61 3.71 3.8 3.9 4 4.1 4.21 4.3 4.4 4

24、.51 4.6 4.7 4.8 4.9 5; 整型電壓數(shù)據(jù):votlage_D=77,82,87,92,97,102,108,113,118,123,128,133,138,143,148,153,159,164,169,175,179,185,190,195,200,205,210,216,220,225,231,236,241,246,251,255;測得速度數(shù)據(jù):speed=12,17,22,27,33,42,45,48,53,58,62,65,69,73,76,80,83,87,89,93,96,99,101,103,106,109,111,113,116,119,122,125,12

25、8,133,140,144;Matlab擬合命令:p=polyfit(votlage_V,speed,1);speed_poly1=p(1)*votlage_V+p(2);q=polyfit(votlage_D,speed,1);speed_poly2=q(1).*votlage_D+q(2);figure(1)plot(votlage_V,speed,'or',votlage_V,speed_poly1);grid ontitle('電壓V-轉(zhuǎn)速r/s')figure(2)plot(votlage_D,speed,'or',votlage_D,

26、speed_poly2);grid on title('電壓D-轉(zhuǎn)速r/s')擬合曲線如圖21所示: 圖21 電壓速度曲線如圖21所示,電機電壓與轉(zhuǎn)速基本成正比關(guān)系,所以可以按最小二乘法進行線性擬合,得到電壓與轉(zhuǎn)速關(guān)系式為:(1)電壓為實型,轉(zhuǎn)速=34.5178*電壓V -28.91,其中(a=34.5178,b=-28.91);(2)電壓為整型,轉(zhuǎn)速=0.67373*電壓D-28.8715,其中(a=0.67373b=-28.8715);上面兩個關(guān)系式將作為電機控制的基本數(shù)學(xué)模型,有軟件算法實現(xiàn)電機輸出轉(zhuǎn)速對輸入電壓的跟蹤。2.2 不同轉(zhuǎn)速設(shè)定值下電機對應(yīng)的輸出轉(zhuǎn)速及誤差如表

27、1輸入轉(zhuǎn)速輸出轉(zhuǎn)速 絕對誤差輸入轉(zhuǎn)速輸出轉(zhuǎn)速 絕對誤差1213-17680-41719-28078-22219383812272528789-2333308993-4424029397-445423969424849-1999905355-2101102-15859-1103104-162620106105165632109112-36971-211111107376-31131121116119-312512501191172128130-2122126-41331312 表1 電機轉(zhuǎn)速誤差表23 電機輸出轉(zhuǎn)速誤差曲線 圖 23 電機輸出轉(zhuǎn)速相對電壓絕對誤差曲線 圖 24 電機輸出轉(zhuǎn)速相對電

28、壓的相對誤差曲線24 系統(tǒng)性能分析 對上面圖23、圖24兩個誤差曲線分析可以得出以下結(jié)論,一方面,當(dāng)電機兩端的電壓在1.5V4.8V范圍了變化時,電機的轉(zhuǎn)速變化范圍在12R/S134R/S(即720R/mint8040R/mint)之間變化,當(dāng)電機兩端的電壓在1.5V以下時,電機無法驅(qū)動,為電機的死區(qū)電壓,電機轉(zhuǎn)速變化基本符合實際情況。 另一方面,由于本系統(tǒng)自身設(shè)計本省存在著多種缺陷,所以測式結(jié)果產(chǎn)生了一定的誤差,電機轉(zhuǎn)速的絕對誤差基本在6V以下,其相對誤差根據(jù)兩端電壓范圍的不同呈現(xiàn)不同的趨勢,當(dāng)電壓在1.5V1.8V左右,即電機轉(zhuǎn)速50R/S時,電機輸出轉(zhuǎn)速的相對誤差16%,當(dāng)電機兩端電壓在

29、1.8V4.8V左右,即電機轉(zhuǎn)速60R/S時,電機輸出轉(zhuǎn)速的相對誤差8%。所以系統(tǒng)綜合性能基本能滿足設(shè)計要求。五、 設(shè)計心得課程設(shè)計是培養(yǎng)我們綜合運用所學(xué)知識發(fā)現(xiàn)、提出、分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對我們實際工作能力的具體訓(xùn)練和考察過程。本次的課程設(shè)計是基于運用所學(xué)單片機技術(shù)、傳感檢測技術(shù)、電機驅(qū)動技術(shù)等方面的知識,設(shè)計電機調(diào)速與控制系統(tǒng),很好的結(jié)合了當(dāng)今工業(yè)直流電機方面的實際應(yīng)用,相對于前幾學(xué)期的課程設(shè)計,這次的題目綜合性更高、設(shè)計難度更大、實用性更強,是對我們所學(xué)專業(yè)知識如單片機原理及接口技術(shù)、傳感器與檢測、C語言程序設(shè)計、直流電機驅(qū)動原理等課程知識的綜合檢驗與應(yīng)用,很好

30、的鍛煉了我們從單一模塊到系統(tǒng)設(shè)計與調(diào)試能力的轉(zhuǎn)變與提高,同時也讓增強了我們直流電機控制原理與應(yīng)用有了更深的認識和體會?;仡櫰鸫舜握n程設(shè)計,至今我仍感慨頗多,從選題到定稿,從理論到實踐,我們小組都付出了很多努力,也收獲了很多,在此次設(shè)計中不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計也使我懂得了理論與實際相結(jié)合的重要性,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能做出實際的有用的東西,從而提高自己的實際動手能力和獨立思考的能力。通過這次課程設(shè)計還鍛煉了我們的團隊合作精神,只有大家在分工明確的基礎(chǔ)上齊心協(xié)力,才能

31、使團隊獲得成就。在這次設(shè)計的過程中我們也遇到了很多困難,尤其是我們小組有兩個人都要考研,時間特別緊迫,還有就是這次在電機的控制其設(shè)計和測速模塊的設(shè)計上都遇到了很大的問題,但是我們在老師的指導(dǎo)下,我們小組積極討論,分工合作,合理安排時間,通過查閱資料學(xué)習(xí)相關(guān)的知識,逐步突破了每一個技術(shù)難關(guān),最后比較好的獨立的完成了這次設(shè)計。通過這次課程設(shè)計,我更發(fā)現(xiàn)了自己的很多不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,而且缺少自主分析問題的能力,碰到問題后有一種和逃避依賴心理。也讓我明白做電子類設(shè)計每一步都要細心嚴謹,不能馬虎。六、 參考文獻1李朝青編單片機原理及接口技術(shù)(簡明修訂版)北京航空

32、航天大學(xué)出版社,19982胡向東編傳感技術(shù).重慶大學(xué)出版社,2006年第1版。3. 譚浩強 C語言程序設(shè)計. 北京:清華大學(xué)出版社,2002。8. 后閑哲也編 單片機C程序設(shè)計與實踐叢書 北京航空航天大學(xué)出版社 2008。七、 附錄程序:#include <stdio.h>#include <intrins.H>#include "STC_NEW_8051.H"typedef unsigned char INT8U;typedef unsigned int INT16U;typedef unsigned int INT8;/以下選擇 ADC 轉(zhuǎn)換速率

33、,只能選擇其中一種 / SPEED1 SPEED0 A/D轉(zhuǎn)換所需時間#define AD_SPEED 0x60 / 0110,0000 1 1 70 個時鐘周期轉(zhuǎn)換一次, / CPU工作頻率21MHz時 A/D轉(zhuǎn)換速度約 300KHz/#define AD_SPEED 0x40 /0100,0000 1 0 140 個時鐘周期轉(zhuǎn)換一次/#define AD_SPEED 0x20 /0010,0000 0 1 280 個時鐘周期轉(zhuǎn)換一次/#define AD_SPEED 0x00 /0000,0000 0 0 420 個時鐘周期轉(zhuǎn)換一次/#define uchar unsigned char

34、/#define uint unsigned int#define P2M0 0x00#define P2M1 0x00 #define P0M0 0x00#define P0M1 0x00sbit caiji=P22; sbit led0=P20; sbit led1=P21;INT8 flag_uart=0,flag_on=0,flag_x=0,flag_xianshi=0,flag_ad=0,n1=0;INT8 ad_vall=0,ad_val=0,moto_speed=0,shudu=0,shisu=0;INT8U rec,cont=0,cont2=0; /串口、計數(shù)器變量float

35、ad_fl,a1=0,a2=0,b1=0,b2=0;INT8U get_AD_result(INT8U channel); /AD轉(zhuǎn)換函數(shù)聲明void delay0(INT8U delay_time); /延時函數(shù)聲明void delay(char xms);void delay0(INT8U delay_time); / 延時函數(shù)void timer_init() /定時器計數(shù)器初始化函數(shù) TMOD=0x21; TH0=(65536-50000)/256; TL0=(65536-50000)%256; TH1=0xfd; TL1=0xfd; TR1=1; ET0=1; SM0=0; SM1=

36、1; REN=1; EA=1;ES=1;void ad_init() / 單片機AD 初始化函數(shù) P1ASF=0x01; /1111,1111, 將 P1 置成模AD AUXR1 &= 0x04; /0000,0100, 令 ADRJ=0 ADC_CONTR |= 0x80; /1000,0000 打開 A/D 轉(zhuǎn)換電源 void pwm_init()/ 單片機PWM相關(guān)寄存器 初始化函數(shù) CCON=0; CL=0;CH=0;CMOD=0x00; PCA_PWM0=0x00; CCAPM0=0x42;EPCnL=1, CCAPnL=FFH 時PWM固定輸出低 */;PCA_PWM1=0

37、x00;CCAPM1=0x42;CR=1; void PWM(INT8 a) INT8 xx; xx=256-a; CCAP0H=CCAP0L=0+xx; /P13 CCAP1H=CCAP1L=256-xx-5; /P14INT8 ceshu() /速度脈沖檢測函數(shù) if(caiji=0) n1=1; if(caiji=1)&&(n1=1) /脈沖上升沿檢測 shudu+; n1=0; return shudu;void UART(INT8 a,INT8 b,float c) /串口函數(shù) if(flag_uart=1) /串口顯示標(biāo)志判斷 flag_uart=0; ES=0;

38、TI=1; switch(flag_on) /顯示模式及電機狀態(tài)控制命令判斷 case 0: puts("Turn on n"); led0=0;led1=1; TR0=1; _nop_();_nop_();_nop_();_nop_();break; case 1: _nop_();_nop_(); led0=0;led1=0; _nop_();_nop_(); led0=1;led1=0;break; case 2: _nop_();_nop_(); led0=0;led1=0; _nop_();_nop_(); led0=0;led1=1; break;case 3: printf("Turn off n"); led0=0;led1=0; TR0=0;break;case 4: puts("Error!n"); break; while(!TI); TI=0; ES=1; if(flag_xianshi=1) /串口顯示標(biāo)志判斷 flag_xianshi=0; ES=0; TI=1; printf("real_speed is %d, set_speed is %d, voltage is%fn",a,b,c); while(!TI); TI=0; ES=1;

溫馨提示

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

評論

0/150

提交評論