最近看到了一个知网的文献,研究基于模糊控制的自动泊车,复现了论文,
模糊控制方法参看之前的文章:
matlab模糊控制工具箱使用和模糊控制pid实例参考(一)
matlab模糊控制工具箱使用和模糊控制pid实例参考(二)
车辆在倒车的过程中是一定的低速度运动,在这一过程中,车辆的后轮运动轨迹与倒车速度无关,倒车速度只对倒车过程中在固定时间内车辆行驶的距离有影响,而不对行驶路线有影响。车辆的轨迹可以用(xr, yr, θ)表示,为了方便在此用(x, y, θ)来表示。此时,车辆的轨迹 变化控制量为(x, y, θ),直接输出量为 φ。选取 x、y、θ 作为模糊控制的输入变量,φ为输出变量。其中设定输入变量x的模糊集合数为 4,语言变量表示为 LB、LM、LS、XCE;输入变量 y 的模糊集合数为 4,语言变量表示为 FAR、MD、CL、YCE;输入变量
θ 的模糊集合数为 5,语言变量表示为 RBV、RBH、H、RUH、RUV;输出变量φ模糊集合数为 7,语言变量表示为 PB、PM、PS、ZE、NS、NM、NB。在模糊阶段里最重要的是设计隶属函数,而隶属函数的外型就跟设计者要求的特性和经验 有关,一般常见的是用三角形或梯形来描述隶属函数的外型。本文使用的为三角 型隶属度函数。
在 FIS 编辑器中编辑的自动泊车系统的输入与输出量如图所示。
如图所示,文本建立了 Mamdani 型模糊推理系统,这种推理,从每一个
规则的结果中得到的模糊集通过聚类运算与结果模糊集相组合后,去模糊化(解
模糊)以产生系统输出。解模糊的方法是重心法(centroid)。输入变量 x 的范围
为[0, 90];输入变量 y 的范围为[0,80];输入变量 θ 的范围为[-80, 80];输出变量
φ 的范围为[-45, 45]。
输入变量 x , y ,θ 的隶属度函数如图所示;
输出变量ϕ 的隶属度函数如图所示
模糊规则见fis文件,fis文件后台回复 "模糊控制自动泊车"
代码如下:
结果如图