基于STM32的直流電機PID調(diào)速系統(tǒng)設計_第1頁
基于STM32的直流電機PID調(diào)速系統(tǒng)設計_第2頁
基于STM32的直流電機PID調(diào)速系統(tǒng)設計_第3頁
基于STM32的直流電機PID調(diào)速系統(tǒng)設計_第4頁
基于STM32的直流電機PID調(diào)速系統(tǒng)設計_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目:基于STM32的直流電機PID調(diào)速計算機與電子信息學院電氣工程及其自動化電目:基于STM32的直流電機PID調(diào)速計算機與電子信息學院電氣工程及其自動化電氣12-510515

《計算機控制技術課程設計》

學院:

專業(yè):

班級:

學號:

姓名:

任課教師:

完成時間:2015.11.18——2015.12.30

--

直流電機STM32PID直流電機STM32PIDspeedcontrolofdcmotor反饋調(diào)節(jié)基于STM32的直流電機PID調(diào)速

摘要

電機轉(zhuǎn)速控制在運動控制系統(tǒng)中占有至關重要的地位,本設計將電機轉(zhuǎn)速控制作

為研究對象;以PID為基本控制算法,STM32F103單片機為控制核心,產(chǎn)生受P

ID算法控制的PWM脈沖實現(xiàn)對直流電機轉(zhuǎn)速的控制。同時利用光電傳感器將電機速

度轉(zhuǎn)換成脈沖頻率反饋到單片機中,實現(xiàn)轉(zhuǎn)速閉環(huán)控制,達到轉(zhuǎn)速無靜差調(diào)節(jié)的目的。

在系統(tǒng)中采320×240TFTLCD顯示器作為顯示部件,通過4個按鍵通過界面切換方

式設置P、I、D、V四個參數(shù)和正反轉(zhuǎn)控制,啟動后可以通過顯示部件了解電機當前

的運行狀態(tài)和系統(tǒng)的CPU溫度。該系統(tǒng)控制精度高,具有很強的抗干擾能力。

關鍵詞:PID

Basedonthe

Abstract

--

crucialsystem,thecontrolalgorithm,STM32F103micralgorithmgeneratesaspeedthecrucialsystem,thecontrolalgorithm,STM32F103micralgorithmgeneratesaspeedthemicrocontrollertoachieveclosed-loop320×fourkeysettingsP,I,D,VfourparametersreversingcontrolthroughstartThesystemhasastronganti-jammingcapability.positioninthemotiondesignofthePtos240TFTLCDmonitorasadisplayunittheinterfaceswitchingtounderstandthecurrentmotorspeedcontrolforthepulseinthestateofthemotorandth

Motorspeedcontroloccupiesa

control

study;inthebasicPID

ocontrollercore,bythePIDcontrol

WMpulsetoachieveDCspeedcontrol.Atthesametimetheuseof

photoelectricsensorstoconvertthemotor

frequencyfeedbackto

peedcontrol,tospeedstat(yī)icerroradjustmentpurposes.Mi

ning

system,through

and

mode,

esystemthroughthedisplayunitCPUtemperature.

controlandhighprecision,

Keywords:PIDDCmotorfeedbackregulation

--

.........................................................................................2.................................................................................................................................3.....................................................................................................................................33...............................................................................................................4........................................................................................................................................................................................................2.................................................................................................................................3.....................................................................................................................................33...............................................................................................................4...............................................................................................................1122目錄1.緒論.............................................................................................................11.1研究背景與意義1?

1.2本文主要研究方法........................................................................................................................12.設計方案與論證2.1系統(tǒng)設計方案.............................................................................................................................

2.2控制器模塊設計方案2?3.系統(tǒng)硬件電路設計3?3.1整體電路設計

3.1.1整體理論

3.1.2整體簡單結(jié)構圖和資源分配圖................................................................................

3.2最小單片機系統(tǒng)設計

3.2.1STM32F103復位電路................................................................................................6

3.2.2電源電路6

3.3電機驅(qū)動電路設計?7

3.4光電碼盤編碼器電路設計7?

3.5顯示電路設計8?

3.6按鍵電路設計10?4.系統(tǒng)軟件設計1?04.1PID算法10?

4.2PID參數(shù)整定方法

4.3電機速度采集算法...................................................................................................................1

4.4程序流程圖1?2

--

............................................................................................................................................................................................................................................145.系統(tǒng)調(diào)試1?35.1軟件調(diào)試............................................................................................................................................13

5.2系統(tǒng)測試與分析6.總結(jié)與展望...............................................................................................15參考文獻16?附錄一部分程序源程序?17附錄二系統(tǒng)界面實物圖和PCB圖2?0

--

。而對[1],使得直流電機調(diào)速系統(tǒng)從模擬化[2]。使得直流調(diào)速逐步由模擬化向數(shù)字化轉(zhuǎn)變,使直流調(diào)[3]。PWM控制技術以其控制簡單、靈活和動態(tài)響應好的優(yōu)點而成為電力電子[4]。[5],然后通過

--。而對[1],使得直流電機調(diào)速系統(tǒng)從模擬化[2]。使得直流調(diào)速逐步由模擬化向數(shù)字化轉(zhuǎn)變,使直流調(diào)[3]。PWM控制技術以其控制簡單、靈活和動態(tài)響應好的優(yōu)點而成為電力電子[4]。[5],然后通過1.緒論

1.1研究背景與意義

電動機在現(xiàn)代的工業(yè)中,是主要的驅(qū)動設備,尤其是直流電動機,由于它的平滑調(diào)速性和結(jié)構上的簡單,使其成為許多電器,如洗衣機,電梯等的驅(qū)動于直流電機的控制,最流行的莫過于采用可控硅裝置向電動機供電,即KZ—D拖動系統(tǒng)。起初的控制系統(tǒng)是發(fā)電機—電動機系統(tǒng),相當?shù)谋恐?。隨著電力電子技術和單片機的成熟應用

向數(shù)字化轉(zhuǎn)變。而PWM脈寬調(diào)制,是現(xiàn)在應用最成熟的方法。它來源于電力電子的橋式電路,通過單片機可進行簡單的模擬,而將它們結(jié)合起來,由電力電子元件組橋進行方向控制,而由單片機產(chǎn)生PWM波控制晶閘管的門極。調(diào)節(jié)占空比就能夠控制電機的平均電壓,從而控制電機的轉(zhuǎn)速。直流電動機調(diào)速應用于實際中各個方面,工業(yè),家電等,因為它能夠在一個相當大的范圍內(nèi)進行平滑調(diào)速。但是早起以模擬元件為控制裝置的系統(tǒng),由于模擬元件本身的缺陷,導致硬件復雜,功能簡單,不靈活,誤差大,無法實行精確的調(diào)速。單片機的應用解決了這個問題的一部分,誤差可由許多完善的算法來解決,而

且減小了硬件的復雜性速進入一個更加智能與可靠的新階段。1.2本文主要研究方法

本文主要研究了利用STM32系列單片機,通過PWM方式控制直流電機調(diào)速的方法技術最廣泛應用的控制方式,也是人們研究的熱點。由于當今科學技術的發(fā)展已經(jīng)沒有了學科之間的界限,結(jié)合現(xiàn)代控制理論思想或?qū)崿F(xiàn)無諧振軟開關技術將會

成為PWM控制技術發(fā)展的主要方向之一本文就是利用這種控制方式來改變電壓的占空比實現(xiàn)直流電機速度的控制。文章中采用了專門的芯片組成了PWM信號的發(fā)生系統(tǒng)L298N放大來驅(qū)動電機。利用光電編碼盤器測得電機速度,然后反饋給單片機,在內(nèi)部進行PID運算,輸出控制量完成閉環(huán)控制,實現(xiàn)電機的調(diào)速控制。2.設計方案與論證

--

[6]。圖中控制器模塊[7]??刂破髂K系統(tǒng)方案框圖[8]。PWM脈沖電機驅(qū)動模塊直流電機

--[6]。圖中控制器模塊[7]??刂破髂K系統(tǒng)方案框圖[8]。PWM脈沖電機驅(qū)動模塊直流電機2.1系統(tǒng)設計方案

根據(jù)系統(tǒng)設計的任務和要求,設計系統(tǒng)方框圖如圖1所示為系統(tǒng)的核心部件,鍵盤和顯示器用來實現(xiàn)人機交互功能,其中通過鍵盤將需要設置的參數(shù)和狀態(tài)輸入到單片機中,并且通過控制器顯示到顯示器上。在運行過程中控制器產(chǎn)生PWM脈沖送到電機驅(qū)動電路中,經(jīng)過放大后控制直流電機轉(zhuǎn)速,同時利用速度檢測模塊將當前轉(zhuǎn)速反饋到控制器中,控制器經(jīng)過數(shù)字PID運算后改變PWM脈沖的占空比,實現(xiàn)電機轉(zhuǎn)速實時控制的目的

顯示模塊

鍵盤模塊

速度檢測模塊

圖12.2控制器模塊設計方案

根據(jù)設計任務,控制器主要用于產(chǎn)生占空比受數(shù)字PID算法控制的PWM脈沖,并對電機當前速度進行采集處理,根據(jù)算法得出當前所需輸出的占空比脈沖。對于控制器的選擇有以下二種方案。方案一:采用FPGA(現(xiàn)場可編輯門列陣)作為系統(tǒng)的控制器,F(xiàn)PGA可以實現(xiàn)各種復雜的邏輯功能,模塊大,密度高,它將所有器件集成在一塊芯片上,減少了體積,

提高了穩(wěn)定性,并且可應用EDA軟件仿真、調(diào)試,易于進行功能控制。FPGA采用并行的輸入輸出方式,提高了系統(tǒng)的處理速度,適合作為大規(guī)模實時系統(tǒng)的控制核心。通過輸入模塊將參數(shù)輸入給FPGA,F(xiàn)PGA通過程序設計控制PWM脈沖的占空比,但是由于本次設計對數(shù)據(jù)處理的時間要求不高,F(xiàn)PGA的高速處理的優(yōu)勢得不到充分體現(xiàn),并且由于其集成度高,使其成本偏高,同時由于芯片的引腳較多,實物硬件電路板布線復雜,加重了電路設計和實際焊接的工作--

[9]。轉(zhuǎn)速檢測模塊作為電機轉(zhuǎn)速測量裝置STM32F10[9]。轉(zhuǎn)速檢測模塊作為電機轉(zhuǎn)速測量裝置STM32F103的PA(A[10],通過

方案二:采用STM32F103作為系統(tǒng)控制的方案。STM32F103單片機算術運算功能強,軟件編程靈活、自由度大,可用軟件編程實現(xiàn)各種算法和邏輯控制。相對于FPGA來說,它的芯片引腳少,在硬件很容易實現(xiàn)。并且它還具有功耗低、體積小、技術成熟和成本低等優(yōu)點,在各個領域中應用廣泛。綜合上述兩種方案比較,采用STM32F103作為控制器處理輸入的數(shù)據(jù)并控制電機運動較為簡單,可以滿足設計要求。因此在本次設計選用方案二。3.系統(tǒng)硬件電路設計

3.1整體電路設計

3.1.1整體理論

單片機直流電機調(diào)速簡介:單片機直流調(diào)速系統(tǒng)可實現(xiàn)對直流電動機的平滑調(diào)速。PWM是通過控制固定電壓的直流電源開關頻率,從而改變負載兩端的電壓,進而達到控制要求的一種電壓調(diào)整方法。在PWM驅(qū)動控制的調(diào)整系統(tǒng)中,按一個固定的頻率來接通和斷開電源,并根據(jù)需要改變一個周期內(nèi)“接通”和“斷開”時間的長短。通過改變直流電機電樞上電壓的“占空比”來改變平均電壓的大小,從而控制電

動機的轉(zhuǎn)速。因此,PWM又被稱為“開關驅(qū)動裝置”。本系統(tǒng)以89C52單片機為核心,通過單片機控制,C語言編程實現(xiàn)對直流電機的平滑調(diào)速系統(tǒng)控制方案的分析:本直流電機調(diào)速系統(tǒng)以單片機系統(tǒng)為依托,根據(jù)PWM調(diào)速的基本原理,以直流電機電樞上電壓的占空比來改變平均電壓的大小,從而控制電動機的轉(zhuǎn)速為依據(jù),實現(xiàn)對直流電動機的平滑調(diào)速,并通過單片機控制速度的變化。本文所研究的直流電機調(diào)速系統(tǒng)主要是由硬件和軟件兩大部分組成。硬件部分是前提,是整個系統(tǒng)執(zhí)行的基礎,它主要為軟件提供程序運行的平臺。而軟件部分,是對硬件端口所體現(xiàn)的信號,加以采集、分析、處理,最終實現(xiàn)控制器所要實現(xiàn)的各項功能,

達到控制器自動對電機速度的有效控制。3.1.2整體簡單結(jié)構圖和資源分配圖

本系統(tǒng)硬件資源分配見圖2所示,簡單結(jié)構如圖4。采用STM32F103單片機作為核心器件,相)和PA7(B相)將電脈沖信號送入單片機處理,L298作為直流電機的驅(qū)動模塊,利

--

PGRight:PE45PA2

out1PE1機FLASH、2個基本定時器、4個通用定時器、320x240TFTLCDPDPGRight:PE45PA2

out1PE1機FLASH、2個基本定時器、4個通用定時器、320x240TFTLCDPDpwm電機驅(qū)動模塊out2顯示模塊

用320×240TFTLCD顯示器和4個獨立按鍵作為人機接口。

UP:PA0Down:PE34個獨立按鍵Left:PE2

STM32PE0PA7

PA6電轉(zhuǎn)速檢測

圖2系統(tǒng)電路連接及硬件資源分配圖3.2最小單片機系統(tǒng)設計

STM32F103ZETT6作為MCU,該芯片是STM32F103里面配置非常強大的了,它擁有的資源包括:64KBSRAM、512KB2個高級定時器、2個DMA控制器(共12個通道)、3個SPI、2個IIC、5個串口、1個USB、1個CAN、3個12位ADC、1個12位DAC、1個SDIO接口、1個FSMC接口以及112個通用IO口。該芯片的配置十分強悍,并且還帶外部總線(FSMC)可以用來外擴SRAM和連接LCD等,通過FSMC驅(qū)動LCD,可以顯著提高LCD的刷屏速

度,是STM32F1家族常用型號里面,最高配置的芯片了。MCU部分的原理圖如圖3所示:

--

MCU最小系統(tǒng)設計圖

--MCU最小系統(tǒng)設計圖

圖3

--

復位電路圖電源電路

--復位電路圖電源電路

3.2.1STM32F103復位電路

STM32F103的復位電路如圖4所示:

圖4因為STM32是低電平復位的,所以我們設計的電路也是低電平復位的,這里的R3和C12構成了上電復位電路。同時,開發(fā)板把TFT_LCD的復位引腳也接在RESET上,這樣這個復位按鈕不僅可以用來復位MCU,還可以復位LCD。3.2.2電源電路

STM32F103板載的電源供電部分,其原理圖如圖5所示:

圖5

--

[11]。其中輸出腳(SENSEA[12],使電機在P2.7R5C10U5VccVsD3311132Y2D4GND電機驅(qū)動電路光電碼盤編碼器電路設計R14701EN1A1P2.621Y22A12Y1R4SEN1SEN2R26571Y1102A2115P2.55KR3125KA1[11]。其中輸出腳(SENSEA[12],使電機在P2.7R5C10U5VccVsD3311132Y2D4GND電機驅(qū)動電路光電碼盤編碼器電路設計R14701EN1A1P2.621Y22A12Y1R4SEN1SEN2R26571Y1102A2115P2.55KR3125KA1470A2470

圖中,總共有3個穩(wěn)壓芯片:U12/U13/U15,DC_IN用于外部直流電源輸入,范圍是DC6~24V,輸入電壓經(jīng)過U13DC-DC芯片轉(zhuǎn)換為5V電源輸出,其中D4是防反接二極管,避免外部直流電源極性搞錯的時候,燒壞開發(fā)板。K2為開發(fā)板的總電源開關,F1為1000ma自恢復保險絲,用于保護USB。U12為3.3V穩(wěn)壓芯片,給開發(fā)板提供3.3V電源,而U15則是1.8V穩(wěn)壓芯片,供VS1053的CVDD使用。3.3電機驅(qū)動電路設計

驅(qū)動模塊是控制器與執(zhí)行器之間的橋梁,在本系統(tǒng)中單片機的I/O口不能直接驅(qū)動電機,只有引入電機驅(qū)動模塊才能保證電機按照控制要求運行,在這里選用

L298N電機驅(qū)動芯片驅(qū)動電機,該芯片是由四個大功率晶體管組成的H橋電路構成,四個晶體管分為兩組,交替導通和截止,用單片機控制達林頓管使之工作在開關狀態(tài),通過調(diào)整輸入脈沖的占空比,調(diào)整電動機轉(zhuǎn)速和SENSEB)用來連接電流檢測電阻,Vss接邏輯控制的電源。Vs為電機驅(qū)動電源。IN1-IN4輸入引腳為標準TTL邏輯電平信號,用來控制H橋的開與關即實現(xiàn)電機的正反轉(zhuǎn),ENA、ENB引腳則為使能控制端,用來輸入PWM信號實現(xiàn)電機調(diào)速。其電路如圖6所示,利用兩個光電耦合器將單片機的I/O與驅(qū)動電路進行隔離,保證電路安全可靠。這樣單

片機產(chǎn)生的PWM脈沖控制L298N的選通端PWM脈沖的控制下正常運行,其中四個二極管對芯片起保護作用。

+5V

C920μF+12V20μF941A2D2MG1

2EN+12V

14

D18

L298N

圖63.4

--

[13]。例如當電機以一定的轉(zhuǎn)R2電機速度采集方案傳感器輸出脈沖波形顯示電路設計[14]。在系統(tǒng)運行過程中需要顯示的數(shù)據(jù)比較多,而且需要漢字顯

--[13]。例如當電機以一定的轉(zhuǎn)R2電機速度采集方案傳感器輸出脈沖波形顯示電路設計[14]。在系統(tǒng)運行過程中需要顯示的數(shù)據(jù)比較多,而且需要漢字顯

在本系統(tǒng)中由于要將電機本次采樣的速度與上次采樣的速度進行比較,通過偏差進行PID運算,因此速度采集電路是整個系統(tǒng)不可缺少的部分。本次設計中應用了比較常見的光電測速方法來實現(xiàn),其具體做法是將電機軸上固定一圓盤,且其邊緣上有N個等分凹槽如圖7所示,在圓盤的一側(cè)固定一個發(fā)光二極管,其位置對準凹槽處,在另一側(cè)和發(fā)光二極光平行的位置上固定一光敏三極管,如果電動機轉(zhuǎn)到凹槽處時,發(fā)光二極管通過縫隙將光照射到光敏三極管上,三極管導通,反之三極管截止,電路如圖8所示,從圖中可以得出電機每轉(zhuǎn)一圈在PA6(或PA7)的輸出端就會產(chǎn)生N個低電平。這樣就可根據(jù)低電平的數(shù)量來計算電機此時轉(zhuǎn)速了

速運行時,PA6(或PA7)將輸出如圖3.5所示的脈沖,若知道一段時間t內(nèi)傳感器輸出的低脈沖數(shù)為n,則可求出電機轉(zhuǎn)速。

+5VR1470ΩP3.3200Ω

發(fā)光二極管圓盤光敏三極管

圖7

圖83.5

根據(jù)設計要求要對系統(tǒng)各項參數(shù)和電機運行狀態(tài)進行顯示,因此在電路中加入顯

示模塊是非常必要的示,在這里選用320×240液晶顯示器比較適合,它是一種圖形點陣液晶顯示器,主要由行驅(qū)動器/列驅(qū)動器及320×240全點陣液晶顯示器組成,可完成漢字顯示和圖形顯示,模塊原理圖如圖9。

--

TFTLCD模塊采用1TFTLCD模塊采用16位的并方式與外部連接,

圖92.8寸TFTLCD模塊原理圖從圖9可以看出,ALIENTEK

之所以不采用8位的方式,是因為彩屏的數(shù)據(jù)量比較大,尤其在顯示圖片的時候,如果用8位數(shù)據(jù)線,就會比16位方式慢一倍以上,我們當然希望速度越快越好,所以我們選擇16位的接口。圖10還列出了觸摸屏芯片的接口。

圖102.8寸TFTLCD模塊接口圖

--

按鍵電路設計按鍵與STM32連接原理圖計算e(n)計算KIe(n)[15],進而控制電機轉(zhuǎn)速。其運算公式為:e(n)K[e(n)PI按鍵電路設計按鍵與STM32連接原理圖計算e(n)計算KIe(n)[15],進而控制電機轉(zhuǎn)速。其運算公式為:e(n)K[e(n)PID2e(n-1)+e(n-2))計算Δu(n)計算Δu(n)+積分執(zhí)行機構對象+u(n)→u(n-1)返回圖4.1計算KP(e(n)-e(n-1))計算KD(e(n)-e(n-1)→e(n-2)e(n)→e(n-1)PID程序流程

3.6

根據(jù)設計需求,本系統(tǒng)中使用了4個獨立按鍵用以實現(xiàn)對P、I、D三個參數(shù)和電機正反轉(zhuǎn)的設定,以及對電機啟動、停止、暫停、繼續(xù)的控制,其電路原理圖如圖11所示。

圖11

鍵盤操作說明:在系統(tǒng)開始運行時,320×240TFTLCD將顯示開機界面,按KEY_DOWN控制正反轉(zhuǎn),按KEY_LIFT減少速度,按KEY_RIGHT增加速度,若按住設置鍵(KEY_UP)不放顯示屏進入?yún)?shù)設置界面,并且可以顯示當前CPU溫度,待所有量設置完成后放開設置鍵,設置完成。4.系統(tǒng)軟件設計4.1PID算法

本系統(tǒng)設計的核心算法為PID算法,它根據(jù)本次采樣的數(shù)據(jù)與設定值進行比較得出偏差e(n),對偏差進行P、I、D運算最終利用運算結(jié)果控制PWM脈沖的占空比來實現(xiàn)對加在電機兩端電壓的調(diào)節(jié)u(n)K[e(n)e(n1)]K2e(n1)e(n)]u0因此要想實現(xiàn)PID控制在單片機就必須存在上述算法,其程序流程如圖12所示,PID控制原理圖如圖13。

+u(n-1)比例+r(t)e(t)u(t)c(t)

-

微分

圖13PID控制原理圖

--

PID參數(shù)整定方法[16]。一般來說,要求e(t)r(t)c(t)1TK

PID參數(shù)整定方法[16]。一般來說,要求e(t)r(t)c(t)1TK

e(t),偏差一旦產(chǎn)生,調(diào)節(jié)I

0P為比例系數(shù),TDtDde(t)dt]4.2

如何選擇控制算法的參數(shù),要根據(jù)具體過程的要求來考慮被控過程是穩(wěn)定的,能迅速和準確地跟蹤給定值的變化,超調(diào)量小,在不同干擾下系統(tǒng)輸出應能保持在給定值,操作變量不宜過大,在系統(tǒng)和環(huán)境參數(shù)發(fā)生變化時控制應保持穩(wěn)定。顯然,要同時滿足上述各項要求是很困難的,必須根據(jù)具體過程的要求,滿足主要方面,并兼顧其它方面。PID調(diào)節(jié)器是一種線性調(diào)節(jié)器,它根據(jù)給定值r(t)與實際輸出值c(t)構成的控制偏差:=-

(1)將偏差的比例、積分、微分通過線性組合構成控制量,對控制對象進行控制,故稱為PID調(diào)節(jié)器。在實際應用中,常根據(jù)對象的特征和控制要求,將P、I、D基本控制規(guī)律進行適當組合,以達到對被控對象進行有效控制的目的。例如,P調(diào)節(jié)器,PI調(diào)節(jié)器,PID調(diào)節(jié)器等。模擬PID調(diào)節(jié)器的控制規(guī)律為u(t)Ke(t)dtT

I(2)

式中,為微分時間常數(shù)。簡單的說,PID調(diào)節(jié)器各校正環(huán)節(jié)的作用是:(1)比例環(huán)節(jié):即時成比例地反應控制系統(tǒng)的偏差信號器立即產(chǎn)生控制作用以減少偏差;(2)積分環(huán)節(jié):主要用于消除靜差,提高系統(tǒng)的無差度。積分作用的強弱取決于積分時間常數(shù)T,T

(3)微分環(huán)節(jié):能反映偏差信號的變化趨勢(變化速率),并能在偏差信號的值變得太大之前,在系統(tǒng)中引入一個有效的早期修正信號,從而加快系統(tǒng)的動作速度,減少調(diào)節(jié)時間。PID參數(shù)調(diào)節(jié)有下面的口訣:參數(shù)整定找最佳,從小到大順序查;先是比例后積分,最后再把微分加;

--

電機速度采集算法[17]。在設計中采用了光電傳感器做為測速裝置,其計算公式為:

NtN測速程程序流程圖60

--電機速度采集算法[17]。在設計中采用了光電傳感器做為測速裝置,其計算公式為:

NtN測速程程序流程圖60

曲線振蕩很頻繁,比例度盤要放大;曲線漂浮繞大灣,比例度盤往小扳;曲線偏離回復慢,積分時間往下降;曲線波動周期長,積分時間再加長;曲線振蕩頻率快,先把微分降下來;動差大來波動慢,微分時間應加長。4.3

本系統(tǒng)中電機速度采集是一個非常重要的部分,它的精度直接影響到整個控

制的精度nv=r/min

從這里可以看出速度v的誤差主要是由圓盤邊緣上的凹槽數(shù)的多少決定的,為了減少系統(tǒng)誤差應盡量提高凹槽的數(shù)量,在本次設計中取凹槽數(shù)N為120,采樣時間t為0.5s,則速度計算具體程序流程如圖14所示。

t=0.5s?Y計算r=n/120

計算v=(r/0.5)*60

返回

圖144.4

--

按下不放?減速N主程序流程正反加速

--按下不放?減速N主程序流程正反加速

在一個完整的系統(tǒng)中,只有硬件部分是不能完成相應設計任務的,所以在該系統(tǒng)中軟件部分是非常重要的,按照要求和系統(tǒng)運行過程設計出主程序流程如圖15所示。

開始

初始化

調(diào)用清屏子程序

電機運行狀態(tài)界面

設置鍵NY調(diào)用清屏子程序

設置界面顯示

根據(jù)設置計算參數(shù)

設置鍵按松開?

Y電機運行狀態(tài)界面

圖155.系統(tǒng)調(diào)試

5.1軟件調(diào)試

--

KKDKKKKDKKKIKKPKKIKIKTD和積分系數(shù)I

在程序編寫的過程中,出現(xiàn)了很多問題,包括鍵盤掃描處理、PWM信號發(fā)生電路的控制、以及單片機控制直流電機的轉(zhuǎn)動方向等問題,雖然問題不是很大,但是也讓我研究了好長時間,在解決這些問題的時候,我不斷向老師和同學請教,希望能通過大家一塊的努力把軟件編寫的更完整,讓系統(tǒng)的功能更完備。經(jīng)過多天的努力探索,也經(jīng)過老師的指導,大部分問題都已經(jīng)解決,就是程序還是不能實現(xiàn)應該實現(xiàn)的功能,這讓我很著急。后來經(jīng)過一點一點的調(diào)試,并認真總結(jié),發(fā)現(xiàn)了問題其實在編寫中斷處理程序時出現(xiàn)了錯誤,修改后即可實現(xiàn)直流電機調(diào)速的目的??偨Y(jié)這次軟件調(diào)試,讓我認識到了做軟件調(diào)試的基本方法與流程:

(1)認真檢查源代碼,看是否有文字或語法錯誤(2)逐段子程序進行設計,找出錯誤出現(xiàn)的部分,重點排查(3)找到合適的方法,仔細檢查程序,分步調(diào)試直到運行成功

5.2系統(tǒng)測試與分析

為了確定系統(tǒng)與設計要求的符合程度,需要進行系統(tǒng)測試與分析,下面以PID調(diào)節(jié)器為例,具體說明經(jīng)驗法的整定步驟:

①讓調(diào)節(jié)器參數(shù)積分系數(shù)=0,實際微分系數(shù)由小到大改變比例系數(shù)的控制過程為止。②取比例系數(shù)為當前的值乘以0.83,由小到大增加積分系數(shù)動信號作階躍變化,直至求得滿意的控制過程。③積分系數(shù)保持不變,改變比例系數(shù)則繼續(xù)調(diào)整,直到滿意為止。否則,將原比例系數(shù)增大一些,再調(diào)整積分系數(shù)力求改善控制過程。如此反復試湊,直到找到滿意的比例系數(shù)K和積分系數(shù)

止。④引入適當?shù)膶嶋H微分系數(shù)和實際微分時間KK

程滿意為止。

根據(jù)上訴方法,通過觀察得出該系統(tǒng)比較合適的P、I、D三者的參數(shù)值為:

--

KKI=0.9,KKI=0.9,

K

6.總結(jié)與展望

這一段時間過的無比的充實,每天都在忙碌著,查閱資料,翻看文檔,了解相關的知

識,每一個設計細節(jié)都要仔細的考慮,每一個環(huán)節(jié)都要查閱相關的資料,爭取做到完美。在這個系統(tǒng)中以前學的很多東西現(xiàn)在都用上了,數(shù)碼管的移位顯示等等都是在以前學習的基礎上慢慢調(diào)試出來的,所以在寫這篇論文的時候又讓我對以前的知識進行了一次回顧,對知識又有了新的認識!真是受益匪淺!通過本次課程設計,我學到了許多了東西,知道光靠書本上的東西是不夠的,需額外去查資料。無論是在硬件、軟件還是設計思路上,我都遇到了不少的問題,在克服困難的過程中,我學到了許多。知道了PID算法的應用,以前總覺得PID就是像做數(shù)學

一樣,不知道實際應用。通過本次設計,讓我很好的鍛煉了理論與具體項目、課題相結(jié)合開發(fā)、設計產(chǎn)品的能力。既讓我們懂得了怎樣把理論應用于實際,又讓我們懂得了在實踐中遇到的問題怎樣用理論去解決。

--

晉.基于單片機用軟件實現(xiàn)直流電機PWM調(diào)速系統(tǒng)[J].維普資訊,200李杰.51系列單片機輸出PWM的兩種方法[DB/DL].晉.基于單片機用軟件實現(xiàn)直流電機PWM調(diào)速系統(tǒng)[J].維普資訊,200李杰.51系列單片機輸出PWM的兩種方法[DB/DL].ttp://www.591mcu.net.20單片機中級教程[M].何立民.MCS-51系列單片機應用系統(tǒng)設計系統(tǒng)配置與接口技術[M].北風標電子.Proteus使用手冊[DB/OL].http://www.windway.cn.2007-7-4/2北京:北京航空航天大學出版社,2006:96.

參考文獻

[1]李建忠,余新拴,吳耀華.單片機原理及應用(第二版)[M].西安電子科技大學出版社,201

1.291.

[2]劉軍,張洋,嚴漢字.STM32F1開發(fā)指南-庫函數(shù)版本_V3.1[M].北京航空航天大學出版

社,2015.5.8.

[3]譚浩強.C程序設計(第三版)[M].清華大學出版社,2007.20.

[4]閻石.數(shù)字電子技術基礎(第五版)[M].高等教育出版社,2010.3.

[5]張友德.單片機原理應用與實驗[M].復旦大學出版社,1992.42.

[6]張毅剛,彭喜源,譚曉鈞,曲春波MCS-51單片機應用設計[M].哈爾濱工業(yè)大學出版社,200

1.35.

[7]宋慶環(huán),才衛(wèi)國,高志.89C51單片機在直流電動機調(diào)速系統(tǒng)中的應用[M].唐山學院,2008.

57

[8]陳錕,危立輝.基于單片機的直流電機調(diào)速器控制電路[J].中南民族大學學報,自然科學

版,2003.5.

[9]李維軍韓小剛李

7.32.

[10]

02-2

-14/2008-5-9.

[11]張俊謨.

[12]

京:北京航空航天大學出版社,1990:83-87.

[13]

008-5-9.

--

王偉,張晶濤,柴天佑.韓京清.非線性PID控制器[J].自動化學報,1994,(4):487-490.王偉,張晶濤,柴天佑.韓京清.非線性PID控制器[J].自動化學報,1994,(4):487-490.BehzadRazavi.DesignCompanies,200:28-36.部分程序源程序PID參數(shù)先進整定方法綜述[J].自動化學報,2000,(3):347-ofAnalogCMOSandIntegratedCircuits[M].Mc

[14]

35.

[15]

[16]萬佑紅,李新華.用遺傳算法實現(xiàn)PID參數(shù)整定[J].自動化技術與應用,2004,23

(7):7-8.

[17]

Graw-Hill

附錄一

主程序:#include"text.h"#include"encoder.h"#include"motor.h"#include"tsensor.h"//顯示內(nèi)部溫度的頭文件#include"time.h"http://定時器4用于內(nèi)部溫度檢測#include"pid.h"intmain(void){?u8key;??delay_init();//延時函數(shù)初始化?//NVIC_Configuration();?//設置NVIC中斷分組2:2位搶占優(yōu)先級,2位響應優(yōu)先級?uart_init(9600);?//串口初始化為9600LED_Init();?//LED端口初始化LCD_Init();//初始化液晶//usmart_dev.init(72);//usmart初始化??把中斷服務函數(shù)注釋掉了?BSP_Configuration();//編碼器測速相關配置?mem_init(SRAMIN);?//初始化內(nèi)部內(nèi)存池?exfuns_init();???//為fatfs相關變量申請內(nèi)存f_mount(0,fs[0]);?//掛載SD卡?f_mount(1,fs[1]);???//掛載FLASH.//控制電機轉(zhuǎn)速的PWM初始化?TIM2_PWM_Init();--

--MOTOR_GPIO_Config();?KEY_Init();?//按鍵初始化EXTIX_Init();??//外部中斷初始化?//T_Adc_Init();??//ADC初始化,內(nèi)部溫度檢測//TIM4_Int_Init(19999,7199);//10Khz的計數(shù)頻率,計數(shù)到20000為2s?////按KEY_UP或者自動更新字庫,不可省略while(font_init())//檢查字庫{??LCD_Clear(WHITE);???//清屏?POINT_COLOR=RED;??//設置字體為紅色?LCD_ShowString(60,50,200,16,16,"WarshipSTM32");?while(SD_Initialize())?//檢測SD卡??{??LCD_ShowString(60,70,200,16,16,"SDCardFailed!");??delay_ms(200);??LCD_Fill(60,70,200+60,70+16,WHITE);?delay_ms(200);?}?????

溫馨提示

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

評論

0/150

提交評論