模糊控制详细讲解实例

  • 格式:docx
  • 大小:24.73 KB
  • 文档页数:10

下载文档原格式

  / 10
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、速度控制算法:

首先定义速度偏差-50 km/hW (k)屿Okm/h, -20

e swith=10km/h

设计思想:油门控制采用增量式PID控制算法,刹车控制采用模糊控制算法,最后通过选择规则进行选择控制量输入。

选择规则:

e (k) <0 ① e (k) >- e swith and throttlr_1 和选择油门控制

②否则:先将油门控制量置0,再选择刹车控制

0

e (k) =0直接跳出选择

刹车控制:刹车采用模糊控制算法

1. 确定模糊语言变量

e基本论域取[-50,50], ec基本论域取[-20,20],刹车控制量输出u基本论域取[-30,30],这里我将这三个变量按照下面的公式进行离散化:

^b22- (x- )]

其中,x • [a,b],n为离散度

E、ec和u均取离散度n=3,离散化后得到三个量的语言值论域分别为:

E=EC=U={-3,-2,-1,0,1,2,3}

其对应语言值为{ NB,NM,NS,ZO, PS,PM,PB }

2. 确定隶属度函数

E/EC和U取相同的隶属度函数即:

” g(x ,— A 1 )

trig (x - 3^ 2,0)

trig (x - 3^ 1,1)

(x 2 , 0 , 2)

U^E C U」trig

trig (x - 1,1,3)

trig (x , 0 , 2 , 3 )

i g(x , 1, 5)

说明:边界选择钟形隶属度函数,中间选用三角形隶属度函数,图像略实际EC和E 输入值若超出论域范围,则取相应的端点值。

3. 模糊控制规则

由隶属度函数可以得到语言值隶属度(通过图像直接可以看出)如下表:表1:E/EC

和U

3.模糊推理

由模糊规则表3可以知道输入E与EC和输出U的模糊关系,这里我取两个例子做模糊推理如下:

if (E is NB) and (EC is NM) the n (U is PB)

那么他的模糊关系子矩阵为:

R| =R E1R E C2 R ui

其中,R E1二P0 = (1,0.5,0,…,0)17,即表1中NB对应行向量,

R EC2二P1 = (0,1,0.5,0, ,0)17 , R U1二P0 = (1,0.5,0,

,0)17

-0 1 0.5 0 ・■■ ■■0

0 0.5 0.5 0 ---0

R

E1 汉R EC2 =(1,0.5,0,...,0)J(0,1,0.5,0, 0

=

0 0 0 0 0

-

-

0 0 0 0 ---

0_ 7>7

R E1 EC

2 =(。,1,0.5,0,0,0,0,0,0.5,0.5,0,…,。

-■0 0 0 0 ・・・

0 1

1 0.5 0 0 ---0

& 二R E1EC2 x R U1 =(0,1,0.5,…,0)J(1,0.5,0,…,0)= 0.5

a 0.5 0

a

s

a

,0 0 0 0 ・・

・0-

49X7

if (E is NVB or NB) and (EC is NVB) the n (U i

s

PVB )

R2 二R E1 R E C1 R U1结果略

同理可以得到,

按此法可得到27个关系子矩阵,对所有子矩阵取并集得到模糊关系矩阵如 下:

R = R R 2 L - L R(i =1,2,

,27)

由R 可以得到模拟量输出为: U =(E EC) R

4. 去模糊化

由上面得到的模拟量输出为1X 7的模糊向量,每一行的行元素(u (Z ij ))对 应相应的离散变量Z j ,则可通过加权平均法公式解模糊:

21 v

U (Z ij )Z j

U 吕 (i 二 j =1,2; ,21)

u(Z j )

i =0

从而得到实际刹车控制量的精确值 u 。 油门控制:

油门控制采用增量式PID 控制,即:

u(k)=u(k-1) (k p k i k d )e(k) (-k p-2k d )e(k-1) k d e(k-2)

只需要设置k p

、匕、k d

三个参数即可输出油门控制量 二、程序实现及参数调节

clear all

(%************************ %/********* 隶属度向量

*****%

P0=[1,0.5,0,0,0,0,0]; %*********NB P1=[0,1,0.5,0,0,0,0]; %*********NM P2=[0,0.5,1,0.5,0,0,0]; %*********NS P3=[0,0,0.5,1,0.5,0,0]; %*********ZO P4=[0,0,0,0.5,1,0.5,0]; %*********PS P5=[0,0,0,0,0.5,1,0]; %*********PM P6=[0,0,0,0,0,0.5,1]; %*********PB

NB=-3;NM=-2;NS=-1;ZO=0;PS=1;PM=2;PB=3; %/*********

模糊规则表 *****%

Pg=[PB PB PM PM PS ZO ZO;

PB PM PM PS ZO ZO NS; PM PM PS PS ZO NS NS; PM PS PS ZO ZO NS NM; PS PS ZO ZO ZO NS NM; PS ZO ZO ZO NS NM NB; ZO ZO ZO NS NM NM NB];

%/********* 根据规则表计算模糊关系矩阵 *****% R1_=dikaer(xbing(P0,P1),7,P0,7);

模糊算法

(%*********** 语言值 *****%