劉碧飛,劉泓濱,李華文
(1.650093 云南省 昆明市 昆明理工大學(xué) 機(jī)電工程學(xué)院;2.650022 云南省 昆明市 云南紅云紅河煙草集團(tuán)昆明卷煙廠)
智能車(chē)作為今后汽車(chē)行業(yè)的一個(gè)重要發(fā)展方向[1],也是輪式機(jī)器人研究熱點(diǎn),受到多方追捧。智能車(chē)的車(chē)速是時(shí)變非線(xiàn)性的,車(chē)速隨彎道曲率半徑的改變而相應(yīng)地變化,對(duì)車(chē)速的控制重在對(duì)電機(jī)轉(zhuǎn)速的控制。傳統(tǒng)的PID 控制策略雖能實(shí)現(xiàn)對(duì)速度的控制,但其控制參數(shù)無(wú)法隨著電機(jī)轉(zhuǎn)速的變化而做出相應(yīng)的調(diào)整,且易發(fā)生震蕩[2],不能提供良好的控制性能以適應(yīng)不同曲率半徑的彎道,防止智能車(chē)沖出車(chē)道。本文針對(duì)智能車(chē)車(chē)速的調(diào)控設(shè)計(jì)了一種自適應(yīng)模糊PID 控制策略,對(duì)電機(jī)的參數(shù)具有較強(qiáng)的魯棒性和自適應(yīng)性,通過(guò)自整定 PID 控制參數(shù),實(shí)現(xiàn)電機(jī)對(duì)速度的快速響應(yīng)[3],提高了對(duì)電機(jī)轉(zhuǎn)速的控制精度。
本文選用飛思卡爾公司生產(chǎn)的基于ARM cortex-M4 的32 位微處理芯片MK60DN512VLQ10作為智能車(chē)的控制核心,通過(guò)OV7725 攝像頭采集車(chē)道信息,對(duì)圖像進(jìn)行二值化處理,提取車(chē)道邊緣[4],并對(duì)邊緣進(jìn)行濾波處理,計(jì)算車(chē)道中心偏差,運(yùn)用最小二乘法擬合斜率,采用MPU-6050 處理器中的陀螺儀傳感器測(cè)量角速度,采用HIP4085 驅(qū)動(dòng)進(jìn)行脈寬調(diào)制,對(duì)額定電壓為7.2 V的RS-540 有刷直流伺服電機(jī)進(jìn)行控制,控制策略采用自適應(yīng)模糊PID 算法,通過(guò)PID 參數(shù)進(jìn)行自整定以滿(mǎn)足不同時(shí)刻的偏差和偏差變化對(duì)速度控制的目的。編碼器為Altair 512 線(xiàn)3 相增量式旋轉(zhuǎn)測(cè)速編碼器,工作電壓為3.3~5.0 V,具有較好的抗震和抗干擾性能。參見(jiàn)圖1。
圖1 系統(tǒng)結(jié)構(gòu)圖Fig.1 System structure diagram
在本研究中,將頻率為10 kHz 的PWM 裝置近似看作一階慣性環(huán)節(jié),PWM 波控制MOS 管給直流電機(jī)供電,建立PWM 的傳遞函數(shù)[5]:
式中:KM——PWM 裝置的放大倍數(shù);Tf——PWM 裝置的延遲時(shí)間,本文設(shè)Tf=1/fpwm。
根據(jù)“飛思卡爾杯”智能車(chē)競(jìng)賽光電四輪車(chē)模在跑道上運(yùn)行的實(shí)際情況,建立電機(jī)的電壓平衡方程、軸上力矩方程[6-7]。
根據(jù)基爾霍夫電壓定律,建立電機(jī)的電壓平衡方程:
式中:Cξ——電動(dòng)勢(shì)常量,Cξ=PN/60a;P——電磁對(duì)數(shù);N——導(dǎo)體數(shù);a——電樞的并聯(lián)支路數(shù);Ic——電樞電流;Uc——電樞電壓;E——反電動(dòng)勢(shì)。
直流電動(dòng)機(jī)作為智能車(chē)的驅(qū)動(dòng),其電磁的轉(zhuǎn)矩Tc的正向與轉(zhuǎn)速n 的方向保持一致,負(fù)載轉(zhuǎn)矩Tl則相反,根據(jù)牛頓第二定律可以建立電機(jī)軸上力矩方程:
由式(3)可以推出電磁的轉(zhuǎn)矩與負(fù)載轉(zhuǎn)矩的關(guān)系為
式中:CT——轉(zhuǎn)矩常數(shù),CT=PN/2πa=9.55Cξ;J——轉(zhuǎn)動(dòng)慣量。
在調(diào)速過(guò)程中,直流電機(jī)轉(zhuǎn)速n 與電樞電壓uc的關(guān)系可表示為
建立電機(jī)轉(zhuǎn)速與電樞電壓的傳遞函數(shù)為:
式中:Ts——電樞時(shí)間常數(shù);;Tm——機(jī)電時(shí)間常數(shù),;Rc——電樞電阻;L——電樞線(xiàn)電感;R——電樞回路電阻,可由經(jīng)驗(yàn)公式求得[8],,Pe——額定功率。
本文設(shè)計(jì)的模糊PID 控制器采用的是二維控制器。以采樣速度偏差e 和偏差變化率作為控制器的輸入量,輸入量經(jīng)過(guò)相應(yīng)的模糊推理和模糊化后得到模糊控制器的輸出值,控制系統(tǒng)根據(jù)實(shí)際響應(yīng)情況自動(dòng)對(duì)PID 參數(shù)進(jìn)行自整定達(dá)最佳[9]。同時(shí),對(duì)電機(jī)的PWM 值輸出進(jìn)行正值限幅,取[-0.99,0.99],防止在減速過(guò)程中減速過(guò)大,對(duì)速度控制的輸出限幅為[-0.8,0.8]。本文采用的自適應(yīng)模糊PID 控制策略如圖2 所示。
圖2 模糊PID 控制器結(jié)構(gòu)Fig.2 Fuzzy PID controller structure
本文采用如下離散PID 算法:
式中:T——采樣時(shí)間;vs——當(dāng)前時(shí)刻采樣的速度值;vd——上一時(shí)刻采樣的速度值。
RS-540 有刷直流伺服電機(jī)輸出軸的齒輪與車(chē)輪連接的齒輪的傳動(dòng)比為9∶26,并每2 ms 進(jìn)行一次速度更新,則電機(jī)轉(zhuǎn)速與智能車(chē)的速度v之間的關(guān)系可以表示為
式中:r——車(chē)輪半徑;α——偏差量所乘系數(shù),α=PID_speed_P;β——速度偏差變化率所乘的系數(shù),β=PID_speed_I;vnew——當(dāng)前時(shí)段的控制速度;vold——上一時(shí)段控制速度;λ——低通濾波次數(shù)。
本文將速度偏差e 和速度偏差變化率ec分別分為9 個(gè)模糊集語(yǔ)言變量:“負(fù)大(NB)”,“負(fù)中(NM)”,“負(fù)?。∟S)”,“負(fù)較小(NL)”,“零(ZO)”,“正較?。≒L)”,“正?。≒S)”,“正中(PM)”,“正大(NB)”,論域分別為{-20,-15,-10,-3,0,3,10,15,20}。
在已定義論域的基礎(chǔ)上定義隸屬函數(shù),為了便于計(jì)算本文采用三角形隸屬函數(shù)進(jìn)行模糊化,e,ec的模糊隸屬函數(shù)如圖3 所示。
圖3 e,ec 的模糊隸屬函數(shù)Fig.3 Fuzzy membership function of e,ec
根據(jù)電機(jī)的機(jī)械特性和智能車(chē)的運(yùn)行實(shí)際經(jīng)驗(yàn),設(shè)計(jì)模糊規(guī)則的標(biāo)準(zhǔn)為:偏差e 和偏差變化率ec越大,電機(jī)的轉(zhuǎn)速就越小;偏差和偏差變化率越小,電機(jī)的轉(zhuǎn)速就越大。
考慮到智能車(chē)運(yùn)行的不同時(shí)刻,PID 參數(shù)之間的相互作用以及互聯(lián)關(guān)系,需要對(duì)Kp,Ki,Kd進(jìn)行自整定。
建立Δkp的論域?yàn)閇-4.5,4.5],Δki的論域?yàn)閇-0.1,0.1],Δkd的論域?yàn)閇-1,1]的隸屬函數(shù)。根據(jù)模糊規(guī)則設(shè)計(jì)模糊規(guī)則表(見(jiàn)表1)及Δkp,Δki,Δkd的模糊控制輸出曲面,如圖4。
表1 模糊規(guī)則表Tab.1 Fuzzy rules
圖4 Δkp,Δki,Δkd 的模糊控制輸出曲面Fig.4 Fuzzy control output surface of Δkp,Δki,Δkd
模糊控制器通過(guò)模糊關(guān)系可得模糊決策,模糊推理采用合成推理方法即Mamdani 推理法得到模糊關(guān)系,輸出為偏差和模糊關(guān)系的合成,采用“重心法”進(jìn)行反模糊化便可得到輸出值[10]。
實(shí)驗(yàn)編程環(huán)境為IAR 8.1,在MK60DN512VLQ10主板上搭載OLED 顯示屏顯示編碼器的返回值及各參數(shù)在不同時(shí)刻的動(dòng)態(tài)值。
本研究采用RS-540 直流伺服電機(jī)作為智能車(chē)的驅(qū)動(dòng),RS-540 具有較為優(yōu)良的速度控制性能,能輸出較大的轉(zhuǎn)矩,直接拖動(dòng)負(fù)載運(yùn)行,可受控制信號(hào)的直接控制來(lái)進(jìn)行速度的調(diào)節(jié),響應(yīng)能力快,調(diào)速范圍廣,且易于平滑調(diào)節(jié)[11]。RS-540 直流伺服電機(jī)的主要參數(shù)如表2 所示。
表2 直流伺服電機(jī)的主要參數(shù)Tab.2 Main parameters of DC servo motor
設(shè)置初始化參數(shù):Set_speed=0.8m/s,F(xiàn)uzzy_P=0.004,F(xiàn)uzzy_D=0.1,PID_speed_P=0.18,PID_speed_I=0.02,λ=5。
本文通過(guò)PWM 波控制高低電平的時(shí)間來(lái)控制MOS 管導(dǎo)通的時(shí)間,從而改變電樞電壓的平均值來(lái)控制電機(jī)轉(zhuǎn)速。PWM 波采用K60 微處理芯片的FTM 模塊進(jìn)行軟件生成,光電編碼器將測(cè)得的電動(dòng)機(jī)的轉(zhuǎn)速轉(zhuǎn)換為脈沖信號(hào),輸入到K60 的外部中斷,并利用定時(shí)器實(shí)現(xiàn)定時(shí)且記錄特定時(shí)間內(nèi)外部中斷輸入脈沖個(gè)數(shù)。設(shè)置PWM 波形的頻率10 kHz,電路原理如圖5 所示。采用HIP4082 驅(qū)動(dòng)進(jìn)行脈寬調(diào)制,驅(qū)動(dòng)RS-540 有刷直流伺服電機(jī),原理圖如圖6所示。
圖5 PWM 輸出原理圖Fig.5 PWM output schematic
本實(shí)驗(yàn)將智能車(chē)運(yùn)行的起點(diǎn)設(shè)置在直道起始位置,測(cè)算智能車(chē)在連續(xù)運(yùn)行完整個(gè)車(chē)道時(shí)智能車(chē)經(jīng)過(guò)部分路段的平均速度和電機(jī)的平均轉(zhuǎn)速(如表3 所示),以及在部分車(chē)道智能車(chē)以初始速度為0 m/s 的運(yùn)行情況(見(jiàn)表4)。
針對(duì)本文研究對(duì)象,通過(guò)MATLAB2016b 中的Simulink 對(duì)電機(jī)進(jìn)行仿真,參見(jiàn)圖7,圖8。
圖6 電機(jī)驅(qū)動(dòng)電路Fig.6 Motor drive circuit
表3 智能車(chē)在連續(xù)運(yùn)行時(shí)經(jīng)過(guò)部分車(chē)道車(chē)速情況Tab.3 Speed of smart cars passing through some lanes during continuous operation
表4 在初始速度為0 m/s 時(shí),智能車(chē)在部分車(chē)道的運(yùn)行情況Tab.4 Smart car operation in some lanes at an initial speed of 0 m/s
圖7 模糊PID 控制器結(jié)構(gòu)圖Fig.7 Structure of fuzzy PID controller
圖8 電機(jī)的模糊PID 系統(tǒng)仿真圖Fig.8 Simulation of fuzzy PID system of the motor
通過(guò)Simulink 對(duì)電機(jī)進(jìn)行仿真,圖9 為自適應(yīng)模糊PID 控制的轉(zhuǎn)速響應(yīng)仿真曲線(xiàn),圖10 為傳統(tǒng)PID 控制的轉(zhuǎn)速響應(yīng)仿真曲線(xiàn)。
圖9 自適應(yīng)模糊PID 控制的轉(zhuǎn)速響應(yīng)曲線(xiàn)Fig.9 Speed response curve of adaptive fuzzy PID control
圖10 傳統(tǒng)PID 控制的轉(zhuǎn)速響應(yīng)曲線(xiàn)Fig.10 Speed response curve of traditional PID control
本文通過(guò)分析RS-540 有刷直流伺服電機(jī)調(diào)速的特點(diǎn),設(shè)計(jì)了自適應(yīng)模糊PID 算法,通過(guò)建立電機(jī)的數(shù)學(xué)模型來(lái)提高控制精度,通過(guò)PWM 脈沖改變電樞電壓的平均值來(lái)控制電機(jī)轉(zhuǎn)速,再經(jīng)過(guò)濾波使速度輸出平滑。對(duì)比圖9 和圖10 可知,自適應(yīng)模糊PID 算法能夠保證較高的穩(wěn)態(tài)精度,基本無(wú)超調(diào)等優(yōu)點(diǎn),能提高電機(jī)的靜態(tài)和動(dòng)態(tài)特性。
實(shí)驗(yàn)測(cè)試表明,自適應(yīng)模糊PID 控制能夠較好地控制電機(jī)的轉(zhuǎn)速使智能車(chē)沿著車(chē)道穩(wěn)定快速地運(yùn)行。