找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4842|回復(fù): 1
收起左側(cè)

單片機(jī)驅(qū)動(dòng)垂直起降系統(tǒng)的螺旋槳 數(shù)學(xué)模型建模PID控制資料

[復(fù)制鏈接]
ID:22266 發(fā)表于 2020-12-13 17:22 | 顯示全部樓層 |閱讀模式
通過完成一個(gè)具有一定復(fù)雜程度的機(jī)電閉環(huán)控制項(xiàng)目,進(jìn)行構(gòu)思、項(xiàng)目設(shè)計(jì),以51單片機(jī)為核心搭建控制系統(tǒng),驅(qū)動(dòng)垂直起降系統(tǒng)的螺旋槳,使垂直起降系統(tǒng)的懸臂升到期望的角度位置上。

技術(shù)條件
(1)51單片機(jī)開發(fā)板;(2)直流電機(jī),螺旋槳,懸臂;(3)電源;(4)計(jì)算機(jī)。

系統(tǒng)的建模與仿真

3.1建模建立

電機(jī)螺旋槳懸臂構(gòu)成了一組具有一定質(zhì)量的機(jī)械系統(tǒng),能夠在拉力的作用下,繞中心上下轉(zhuǎn)動(dòng),如圖一所示。為了簡(jiǎn)化分析,忽略懸臂質(zhì)量、忽略摩擦力。設(shè)l為懸臂長(zhǎng)度,m電機(jī)質(zhì)量,懸臂角度,f為螺旋槳拉力,u電機(jī)電壓。

圖一 受力分析

圖二 電機(jī)螺旋槳懸臂系統(tǒng)工作原理

角度:定義水平方向?yàn)榱愣龋鏁r(shí)針方向?yàn)檎较颉?/font>

工作點(diǎn):懸臂受到螺旋槳拉力和重力的共同作用。拉力與電機(jī)電壓有關(guān),始終垂直于懸臂與運(yùn)動(dòng)方向。重力在運(yùn)動(dòng)方向上的分量為。若施加某個(gè)電壓螺旋槳產(chǎn)生拉力,使懸臂穩(wěn)定停留在某個(gè)位置,則此時(shí)。這時(shí)就構(gòu)成了一個(gè)工作點(diǎn)。

3.1.1電機(jī)螺旋槳模型

給電機(jī)施加電壓u,電機(jī)帶動(dòng)螺旋槳旋轉(zhuǎn)產(chǎn)生拉力f,已知電機(jī)電壓和轉(zhuǎn)速的簡(jiǎn)化數(shù)學(xué)模型為一階線性微分方程。

            (1)

其中T為時(shí)間常數(shù),表征了系統(tǒng)的響應(yīng)速度快慢。K為系統(tǒng)穩(wěn)態(tài)增益,表征了當(dāng)轉(zhuǎn)速穩(wěn)定不變時(shí),電壓和轉(zhuǎn)速成正比。

電機(jī)電壓和轉(zhuǎn)速之間的傳遞函數(shù)由式(1)可知為

          (2)

這里假設(shè)在工作點(diǎn)附近螺旋槳拉力和電機(jī)轉(zhuǎn)速成正比,Kf是比例系數(shù)。那么拉力和電壓的傳遞函數(shù)可以得到

                        (3)

3.1.2懸臂系統(tǒng)數(shù)學(xué)模型

切線方向上的運(yùn)動(dòng)方程由牛頓第二定律可得

        (4)

其中,b代表摩擦阻力。方程中存在難以分析的非線性項(xiàng)。但是我們可以使用微小偏差法對(duì)其在某個(gè)特定的工作點(diǎn)附近進(jìn)行線性化。首先將力和轉(zhuǎn)角表達(dá)為工作點(diǎn)附近的增量形式, ,帶入上式得到

(5)
(6)

對(duì)非線性項(xiàng)在工作點(diǎn)處使用一階泰勒級(jí)數(shù)展開進(jìn)行局部線性化

(7)

將式(7)代入式(6),并考慮到 ,得到近似后的線性方程

(8)

為了簡(jiǎn)化表達(dá),去掉△符號(hào),并整理為標(biāo)準(zhǔn)形式

(9)

傳遞函數(shù)

(10)

3.1.3電機(jī)螺旋槳懸臂系統(tǒng)數(shù)學(xué)模型

電機(jī)螺旋槳懸臂可以看作一個(gè)整體,則合并式(3)(10)、消去中間變量F(s),得到指令電壓和懸臂實(shí)際角度的傳遞函數(shù)為

(11)

當(dāng)懸臂位于水平線下方時(shí),,則是一個(gè)正數(shù)。此時(shí)分母多項(xiàng)式里沒有負(fù)系數(shù)。

懸臂系統(tǒng)為三階系統(tǒng),有3個(gè)極點(diǎn)、。如果電機(jī)的反應(yīng)速度非?,遠(yuǎn)快于懸臂的反應(yīng)速度,也就是說(shuō)對(duì)應(yīng)的極點(diǎn)遠(yuǎn)離虛軸,其他兩個(gè)極點(diǎn)是主導(dǎo)極點(diǎn)。則可以簡(jiǎn)化為2階系統(tǒng)。

(11)

3.2 PID 控制以及MATLAB仿真

比例積分微分(PID)控制器

比例控制能夠提高系統(tǒng)響應(yīng)速度,減小穩(wěn)態(tài)誤差,但是穩(wěn)定性減弱、震蕩加劇。因此引入微分控制抑制震蕩改善穩(wěn)定性。如果希望消滅穩(wěn)態(tài)誤差,就需要引入積分環(huán)節(jié)提高系統(tǒng)穩(wěn)定性。

仿真圖

利用simulink中進(jìn)行仿真分析查看P、PD、PI、PID控制器的控制效果

圖一 仿真原理

說(shuō)明:圖一為控制系統(tǒng)的simulink仿真模型。

PID 控制是工業(yè)控制實(shí)踐中最常見的控制算法(95%以上)?刂破饔杀壤龁卧≒, proportional)、積分單元(I,integral)和微分單元(Dderivative)組成,包含 Kp、Ki 和 Kd 三個(gè)需要設(shè)定的系數(shù)?刂圃砣鐖D 2所示,微分方程及傳遞函數(shù)如下式所示。

PID控制原理圖

PID 控制器的比例、積分和微分作用分別對(duì)應(yīng)當(dāng)前誤差、過去累計(jì)誤差及誤差變化速度(未來(lái)誤差)。若是不知道受控系統(tǒng)的特性,一般認(rèn)為 PID 控制器是最適用的控制器。借由 調(diào)整 PID 控制器的三個(gè)參數(shù),可以調(diào)整控制系統(tǒng),設(shè)法滿足設(shè)計(jì)需求?刂破鞯捻憫(yīng)可以用 控制器對(duì)誤差的反應(yīng)快慢、控制器超調(diào)程度及系統(tǒng)震蕩的程度、穩(wěn)態(tài)誤差大小來(lái)表示。 根據(jù)具體應(yīng)用場(chǎng)合可以使用PID 控制的各種組合,如P控制、PI控制、PD控制等。其中以PI控制最常用,I 控制能夠消除穩(wěn)態(tài)誤差。D 控制對(duì)反饋信號(hào)噪聲十分敏感,需要精心

設(shè)計(jì)。

3.2.1 數(shù)值計(jì)算

比例、積分、微分算法在沒有計(jì)算機(jī)的年代是使用模擬器件來(lái)實(shí)現(xiàn)的,F(xiàn)代工業(yè)中普遍 使用數(shù)字計(jì)算機(jī)實(shí)現(xiàn)。計(jì)算機(jī)以固定時(shí)間間隔????不斷的重復(fù)運(yùn)行 PID 控制算法,第 k 次的比 例控制項(xiàng)????(??)、微分控制項(xiàng)????(??)、積分控制項(xiàng)????(??)分別如下

然后 合成控制器的總輸出

PID算法流程圖

3.2.2 PID 控制算法實(shí)現(xiàn)

1. 微分控制對(duì)高頻擾動(dòng)十分敏感,需要設(shè)法抑制;

2. 積分控制存在積分飽和問題,對(duì)控制效果影響較大,需要解決;

4系統(tǒng)硬件電路設(shè)計(jì)和軟件編程

4.1電路設(shè)計(jì)

4.1.1硬件電路圖

總電路圖

局部電路圖1(總開關(guān))            局部電路圖2(晶振)

局部電路圖3(USB讀寫模塊)

局部電路圖4(LED顯示屏模塊)

局部電路圖5(USB轉(zhuǎn)串口模塊)         局部電路圖6(ad轉(zhuǎn)換模塊)

局部電路圖6(電機(jī)驅(qū)動(dòng)模塊模塊)

說(shuō)明:利用89C51單片機(jī)來(lái)實(shí)現(xiàn)對(duì)直流電機(jī)的PID控制以及實(shí)時(shí)狀態(tài)數(shù)據(jù)的顯示。

4.1.3 PCB電路圖

PCB圖

PCB三維圖

4.1.3 Proteus電路圖仿真

說(shuō)明:仿真符合預(yù)期效果。

4.1.4元件清單

單片機(jī)STC90C516RD+(1)

PCF8591T ad轉(zhuǎn)換芯片——(1)

CH340G USB轉(zhuǎn)串口芯片——(1)

ULN2003電機(jī)驅(qū)動(dòng)芯片——(1)

LED顯示屏LCM1602K-NSW-BBW——(1)

Micro USB連接器——(1)

開關(guān)K2-1107ST-A4SW-06——(3)

排針X6511WV-04H-C30D60——(3)

晶振X49SD27MSD2SC——(2)

三極管2n3904S-RTK/PS——(1)

電阻:10KΩ——(2);200Ω——(1);4.7K——(1);10KΩ可變電阻VZ067TL1B103——(1);10K排阻C26615——(1)

電容:10u——(1);22p——(6);104——(2);0.1u——(1)22u——(2)電化學(xué)電容1u——(1)

4.2原理圖以及流程圖規(guī)劃

原理圖

說(shuō)明:

我們用51單片機(jī)去控制電機(jī)轉(zhuǎn)到指定角度,并通過lcd顯示出來(lái)

系統(tǒng)的綜合測(cè)試和評(píng)估

5.1 PID測(cè)試實(shí)現(xiàn)過程

比例(P)控制

當(dāng)控制器的輸出與偏差成比例時(shí),稱之為比例控制(proportional control)。即  

系統(tǒng)閉環(huán)傳遞函數(shù)為

利用終值定理求得單位階躍響應(yīng)的穩(wěn)態(tài)值

分析可知 ,電機(jī)的指令電壓控制了電機(jī)轉(zhuǎn)速,即拉力。比例控制意味著拉力和誤差成正 比。因此: 1) 比例控制必然存在誤差。誤差是產(chǎn)生拉力的源泉,沒有誤差就沒有拉力。要維持一 定的拉力,????越大,所需的誤差就越。 2) 比例控制器的輸出只和誤差成正比,????越大,控制器反應(yīng)越靈敏。當(dāng)懸臂快速?zèng)_到 指定位置時(shí),誤差為 0,拉力也為 0,加速度為 0。雖然懸臂的加速度為 0,但可能 還會(huì)存在一定速度,產(chǎn)生過沖。

圖一P控制的理論曲線

通過實(shí)驗(yàn)我們發(fā)現(xiàn)Kp較大時(shí)會(huì)加快響應(yīng)速度快速達(dá)到穩(wěn)定,能減少誤差但不能消除誤差,Kp越大時(shí)會(huì)很容易引起振蕩;Kp減小,發(fā)生振蕩的可能性減小,但調(diào)節(jié)速度變慢。

比例微分(PD)控制

一個(gè)控制系統(tǒng)的基本要求是穩(wěn)定、準(zhǔn)確、快速。增加比例控制系數(shù)能夠減小偏差提高準(zhǔn) 確性、減小反應(yīng)時(shí)間提高快速性。但是同時(shí)帶來(lái)的問題就是系統(tǒng)穩(wěn)定性減弱,表現(xiàn)為容易過 沖、產(chǎn)生震蕩。 當(dāng)控制器輸出不僅和偏差成比例,同時(shí)還與偏差的變化速度(微分)成比例時(shí),稱之為 比例微分控制(Proportional + Derivative control)。

即:

對(duì)應(yīng)傳遞函數(shù):

PD控制中的比例項(xiàng)能夠減小偏差,微分項(xiàng)能夠減小偏差的變化速度、抑制振蕩。PD控制方框圖如下圖所示。

如果懸臂能夠簡(jiǎn)化為標(biāo)準(zhǔn)二階系統(tǒng),則 PD 控制的閉環(huán)傳遞函數(shù)為

從理論上分析,增加 Kd會(huì)增加阻尼比,抑制振蕩。單純的比例控制器增加Kp 能夠減小誤差、增加響應(yīng)速度,但是會(huì)增加超調(diào)、惡化穩(wěn)定性。產(chǎn)生超調(diào)的原因前面已經(jīng)簡(jiǎn)要說(shuō)明過,原因是當(dāng)偏差為0時(shí),偏差的速度不為0,這時(shí)引入微分控制作用可以抑制偏差的變化。理想情況是偏差為0時(shí),偏差的速度也為 0,達(dá)到穩(wěn)定狀態(tài)。

圖五pd控制理論響應(yīng)曲線

經(jīng)過調(diào)節(jié)我們發(fā)現(xiàn)理論和實(shí)際有一些不吻合我們認(rèn)為是在現(xiàn)實(shí)系統(tǒng)中系統(tǒng)響應(yīng)速度慢,使微分環(huán)節(jié)作用削弱。微分控制可以改善動(dòng)態(tài)特性,如超調(diào)量減少,調(diào)節(jié)時(shí)間縮短,允許加大比例控制,使靜差減小,提高控制精度。但當(dāng)Kd偏大或偏小時(shí),超調(diào)量較大,調(diào)節(jié)時(shí)間較長(zhǎng),只有合話的時(shí)候,才可以得到比較滿意的過渡過程。

比例積分(PI)控制

在積分控制中,控制器的輸出與輸入誤差信號(hào)的積分成正比關(guān)系。對(duì)一個(gè)自動(dòng)控制系統(tǒng),如果在進(jìn)入穩(wěn)態(tài)后存在穩(wěn)態(tài)誤差,則稱這個(gè)控制系統(tǒng)是有穩(wěn)態(tài)誤差的或簡(jiǎn)稱有差系統(tǒng)(System with Steady-state Error)。為了消除穩(wěn)態(tài)誤差,在控制器中必須引入“積分項(xiàng)”。積分項(xiàng)對(duì)誤差取決于時(shí)間的積分,隨著時(shí)間的增加,積分項(xiàng)會(huì)增大。這樣,即便誤差很小,積分項(xiàng)也會(huì)隨著時(shí)間的增加而加大,它推動(dòng)控制器的輸出增大使穩(wěn)態(tài)誤差進(jìn)一步減小,直到等于零。因此,比例+積分(PI)控制器,可以使系統(tǒng)在進(jìn)入穩(wěn)態(tài)后無(wú)穩(wěn)態(tài)誤差。積分調(diào)節(jié)作用:是使系統(tǒng)消除穩(wěn)態(tài)誤差,提高無(wú)差度。因?yàn)橛姓`差,積分調(diào)節(jié)就進(jìn)行,直至無(wú)差,積分調(diào)節(jié)停止,積分調(diào)節(jié)輸出一常值。積分作用的強(qiáng)弱取決與積分時(shí)間常數(shù)Ti, Ti越小,積分作用就越強(qiáng)。反之Ti大則積分作用弱,加入積分調(diào)節(jié)可使系統(tǒng)穩(wěn)定性下降,動(dòng)態(tài)響應(yīng)變慢。積分作用常與另兩種調(diào)節(jié)規(guī)律結(jié)合,組成PI調(diào)節(jié)器。

圖九 kp0.018 ki0.58理論響應(yīng)曲線

從圖中對(duì)比可以發(fā)現(xiàn)積分環(huán)節(jié)的作用是:只要系統(tǒng)存在誤差,積分控制作用就不斷地積累,輸出控制量以消除誤差。因此只要有足夠的時(shí)間,積分控制將能完全消除誤差,但是積分作用太強(qiáng)會(huì)使系統(tǒng)超調(diào)加大,甚至使系統(tǒng)出現(xiàn)振蕩。

PID 實(shí)際運(yùn)行

圖二 kp=0.5 ki=0.6 kd=0.15響應(yīng)曲線

圖三 kp=0.5 ki=0.6 kd=0.15響應(yīng)曲線理論響應(yīng)曲線

我們發(fā)現(xiàn)PID控制可以較好地實(shí)現(xiàn)系統(tǒng)穩(wěn)定通過PID算法的組合可有效地糾正被控制對(duì)象的偏差,從而使其達(dá)到一個(gè)穩(wěn)定的狀態(tài)。但實(shí)際系統(tǒng)和理論系統(tǒng)總存在不足無(wú)法達(dá)到想要的理論狀態(tài),我們?cè)趯?shí)際中發(fā)現(xiàn)該組pid可以很好的控制懸臂系統(tǒng)因此選用該組pid參數(shù)。


5.2綜合評(píng)估

在這次設(shè)計(jì)中我們首先將項(xiàng)目分成三部分:第一部分通過51單片機(jī)將角度讀出,第二部分實(shí)現(xiàn)按鍵能改變?cè)O(shè)定角度,第三部分實(shí)現(xiàn)可以通過pid控制螺旋槳懸停在特定角度。

在實(shí)現(xiàn)項(xiàng)目過程中我們遇到了一些困難,并通過組員的一起努力解決問題。

(1)在讀取電位器角度并將其顯示在LCD上時(shí),我們發(fā)現(xiàn)電位器讀到的數(shù)據(jù)并不能及時(shí)顯示在LCD上,有很長(zhǎng)的延時(shí)。我們通過查閱資料和咨詢老師最終發(fā)現(xiàn)在我們的庫(kù)函數(shù)里存在較長(zhǎng)時(shí)間延時(shí)從而導(dǎo)致數(shù)據(jù)不能被及時(shí)顯示,我們刪去了延時(shí),發(fā)現(xiàn)角度可以很好顯示在LCD上。

(2)在調(diào)試程序時(shí)我們發(fā)現(xiàn)讀取的角度和設(shè)定的角度并不能一起顯示在LCD上,我們把自己所寫的顯示函數(shù)封裝成函數(shù),并將顯示當(dāng)前角度的代碼放在設(shè)定角度代碼上面,通過這樣的調(diào)試我們的LCD可以很好顯示。

(3)在pid控制時(shí)我們發(fā)現(xiàn)單片機(jī)雖然可以實(shí)現(xiàn)對(duì)電機(jī)控制但是波動(dòng)周期和時(shí)間都很大,經(jīng)過查閱資料和討論我們發(fā)現(xiàn)應(yīng)該是定時(shí)器中斷時(shí)間和pwm周期存在問題,經(jīng)過試驗(yàn)我們把定時(shí)器中斷時(shí)間設(shè)置在10微秒,pwm周期為1毫秒,

這時(shí)的電機(jī)可以很好的控制。

(4)在調(diào)試過程中我們發(fā)現(xiàn)螺旋槳雖然可以轉(zhuǎn)到指定角度但是只會(huì)維持一定的時(shí)間并不能長(zhǎng)時(shí)間維持在指定角度,我們經(jīng)過討論,和查閱資料認(rèn)為是pid的計(jì)算存在問題,我們重新設(shè)計(jì)了pid的計(jì)算方法,最終解決了這些問題。

在整個(gè)系統(tǒng)調(diào)試過程中我們

(5)比例控制一定存在誤差。誤差是產(chǎn)生拉力的源泉,沒有誤差就沒有拉力。比例控制器的輸出只和誤差成正比,比例控制當(dāng)快速到指定位置時(shí),會(huì)發(fā)生過沖。

用比例微分控制時(shí),PD控制中的比例項(xiàng)能夠減小偏差,微分項(xiàng)能夠減小偏差的變化速度、抑制振蕩。微分控制可以改善動(dòng)態(tài)特性,如超調(diào)量減少,調(diào)節(jié)時(shí)間縮短,允許加大比例控制,使靜差減小,提高控制精度。但當(dāng)Kd偏大或偏小時(shí),超調(diào)量較大,調(diào)節(jié)時(shí)間較長(zhǎng),只有合話的時(shí)候,才可以得到比較滿意的過渡過程。

比例+積分(PI)控制器,積分環(huán)節(jié)可以使系統(tǒng)在進(jìn)入穩(wěn)態(tài)后無(wú)穩(wěn)態(tài)誤差,提高誤差度。

PID控制可以較好地實(shí)現(xiàn)系統(tǒng)穩(wěn)定通過PID算法的組合可有效地糾正被控制對(duì)象的偏差,從而使其達(dá)到一個(gè)穩(wěn)定的狀態(tài)。

(6)電路圖的繪制起初對(duì)整體電路圖不熟悉,導(dǎo)致在Proteus中仿真失敗,后來(lái)發(fā)現(xiàn)是硬件型號(hào)不對(duì),不同型號(hào)和規(guī)格的電容以及三極管對(duì)電路的影響會(huì)累積,導(dǎo)致最后的結(jié)果誤差極大,最后在多次更換調(diào)試后得以解決。

(7)PCB板的繪制最開始在AD上繪制,但各種元件庫(kù)還需要下載極其不方便,導(dǎo)致浪費(fèi)了很多時(shí)間,究其原因也是對(duì)軟件的不熟悉,之后用的eda在線繪圖,進(jìn)度就加快了很多,對(duì)應(yīng)的元器件也能看見實(shí)物圖以及對(duì)應(yīng)封裝,能夠?qū)υ懈羁痰挠∠蟆?/font>

1-31頭文件,端口等定義,為程序運(yùn)行做準(zhǔn)備
32-41 主函數(shù),對(duì)液晶初始化,執(zhí)行顯示函數(shù)和控制函數(shù)
42-45 顯示函數(shù),顯示出當(dāng)前角度和設(shè)定角度
46-53 讀取電位器數(shù)據(jù),顯示角度
54-58 鍵盤掃描函數(shù)
59-70 pid控制函數(shù),輸出計(jì)算后pid值
62-85 定時(shí)器輸出pwm
86-167 lcd1602庫(kù)文件
167-182 延時(shí)庫(kù)文件
183-238 i2c通信庫(kù)文件
239-251 鍵盤掃描庫(kù)文件

本文來(lái)自作者wc201314 :http://www.torrancerestoration.com/bbs/dpj-199699-1.html
回復(fù)

使用道具 舉報(bào)

ID:986266 發(fā)表于 2021-11-30 10:21 | 顯示全部樓層
可以分享一下源代碼嗎
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表