中央民族大學(xué)信息工程學(xué)院 李雨璇 涂 洪 白景嵐 瞿 冉 尹先晗
基于模糊PID的飛思卡爾智能車變速系統(tǒng)設(shè)計(jì)
中央民族大學(xué)信息工程學(xué)院 李雨璇 涂 洪 白景嵐 瞿 冉 尹先晗
設(shè)計(jì)飛思卡爾智能車的目的是進(jìn)行競(jìng)速,為了使整體的平均速度達(dá)到最大,小車在不同的賽道元素中須采用不同的速度:長直道加速、入彎減速、出彎加速等。傳統(tǒng)PID控制能夠?qū)崿F(xiàn)速度的控制,但是對(duì)于不同的賽道,小車所需要的PID參數(shù)可能會(huì)發(fā)生變化。綜上,采用模糊PID進(jìn)行變速系統(tǒng)設(shè)計(jì),以使得小車運(yùn)行的整體速度達(dá)到最快,運(yùn)行狀態(tài)達(dá)到最佳。
智能小車;模糊控制;PID
飛思卡爾智能車設(shè)計(jì)是以智能無人汽車為背景,涵蓋電子、控制、計(jì)算機(jī)、傳感器等多個(gè)學(xué)科的創(chuàng)意性設(shè)計(jì)。飛思卡爾智能車的整個(gè)運(yùn)行系統(tǒng),包含:賽道信息采集、賽道分析、方向控制、速度控制等模塊。本文著重研究其中的速度控制部分。飛思卡爾智能車速度控制系統(tǒng)是一個(gè)時(shí)變非線性系統(tǒng),采用傳統(tǒng)的PID算法,單一的反饋控制會(huì)使系統(tǒng)存在不同程度的超調(diào)和震蕩現(xiàn)象,在連續(xù)彎道尤為嚴(yán)重,嚴(yán)重影響小車的整體運(yùn)行速度。根據(jù)這一現(xiàn)象,引入模糊控制,實(shí)時(shí)改變PID參數(shù),有效地提高了小車的整體運(yùn)行速度。
1.1 傳統(tǒng)PID控制
傳統(tǒng)PID控制器自出現(xiàn)以來,憑借其結(jié)構(gòu)簡(jiǎn)單、穩(wěn)定性好、工作可靠、調(diào)整方便等優(yōu)點(diǎn)成為工業(yè)控制主要技術(shù)[1]。當(dāng)被控對(duì)象的結(jié)構(gòu)和參數(shù)具有一定的不確定性,無法對(duì)其建立精確的模型時(shí),采用PID控制技術(shù)尤為方便。PID控制原理簡(jiǎn)單、易于實(shí)現(xiàn),但是其參數(shù)整定異常麻煩。對(duì)于小車的速度控制系統(tǒng)而言,由于其為時(shí)變非線性系統(tǒng)不同時(shí)刻需要選用不同的PID參數(shù),采用傳統(tǒng)的PID控制器,很難使整個(gè)運(yùn)行過程具有較好的運(yùn)行效果[2]。
1.2 模糊PID控制
模糊PID控制,即利用模糊邏輯并根據(jù)一定的模糊規(guī)則對(duì)PID的參數(shù)進(jìn)行實(shí)時(shí)的優(yōu)化,以克服傳統(tǒng)PID參數(shù)無法實(shí)時(shí)調(diào)整PID參數(shù)的缺點(diǎn)[3]。模糊PID控制包括模糊化,確定模糊規(guī)則,解模糊等組成部分。小車通過傳感器采集賽道信息,確定當(dāng)前距賽道中線的偏差E以及當(dāng)前偏差和上次偏差的變化ec,根據(jù)給定的模糊規(guī)則進(jìn)行模糊推理,最后對(duì)模糊參數(shù)進(jìn)行解模糊,輸出PID控制參數(shù)[4]。
2.1 模糊PID控制器原理
模糊控制器采用的是典型的雙輸入單輸出模型。模糊PID控制器的輸入量為中心偏差E和中心偏差變化率ec,輸入量經(jīng)模糊化與模糊推理之后得到模糊控制器的輸出值,將模糊控制器的輸出值傳入PID控制器,PID控制器根據(jù)模糊控制的輸出值對(duì)自身參數(shù)進(jìn)行調(diào)節(jié)。本文采用的模糊PID控制器原理如下圖所示:
圖1 模糊PID控制器結(jié)構(gòu)圖
2.2 確定模糊化接口
針對(duì)模糊控制器的每個(gè)輸入空間定義一個(gè)語言變量。本文中選用,中心偏差e和中心偏差的變化率ec作為模糊控制器的兩個(gè)輸入。輸出量為u。
(1)在中心偏差e上定義語言變量“誤差E”,在中心偏差變化率上定義語言變量“誤差變化EC”;
(2)定義各個(gè)語言變量的論域:
一般來說,E和EC的論域可以選用E = EC = {-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5}。本文是基于飛思卡爾光電智能車的,根據(jù)小車的特性,將E和EC的論域進(jìn)行了重新定義,分別為:
E = {-27,-15,-8,0,8,15,27 }
EC = {-7.2,-3,0,3,7.2}
(3)定義各語言變量的語言值:
通常取值可以是:{“負(fù)大”,“負(fù)中”,“負(fù)小”,“零”,“正小”,“正中”,“正大”} = {NL, NM, NS, Z, PS, PM, PL}。針對(duì)本文所選用的具體的系統(tǒng),將其調(diào)整為:
E的語言值為:{ NL, NM, NS, Z, PS, PM, PL }
EC的語言值為:{ NL, NS, Z, PS, PL }
(4)各語言值的論域上定義其語言值的隸屬度函數(shù)。為了實(shí)現(xiàn)和處理的方便,E和EC的隸屬度函數(shù)均選用線性函數(shù)。
圖2 誤差E的隸屬度函數(shù)
圖3 誤差變化率EC的隸屬度函數(shù)
2.3 確定模糊規(guī)則表
模糊規(guī)則表是模糊控制器中模糊推理的依據(jù),每個(gè)模糊規(guī)則都需要根據(jù)具體的系統(tǒng)進(jìn)行設(shè)計(jì)。根據(jù)智能車運(yùn)行特性以及控制經(jīng)驗(yàn),設(shè)計(jì)的規(guī)則如下:
2.4 模糊推理以及反模糊化
控制器經(jīng)模糊化得到各變量的隸屬度,再經(jīng)模糊推理和反模糊化得出控制變量的輸出值,達(dá)到控制的作用。本文中的模糊推理采用的是最大-最小法,設(shè)定e,ec,u的隸屬度分別為:μE, μEC, μU。