论文部分内容阅读
摘 要:介绍了基于VC++的模糊控制汽车倒车仿真系统基本设计,建立在汽车倒车数学模型的基础上,通过模糊控制程序,并通过微软基础类设计仿真界面,使汽车在倒车时的状态及其运动轨迹能够动态的显示。在设计中,汽车倒车模型与控制器采用模块化设计方法,具有一定的通用性,易于擴展。通过该系统可以找到汽车倒车的“死区”范围,检验并改进控制方法。模糊控制方法控制汽车倒车运动轨迹圆滑,倒车准确,具有很好的鲁棒性。
关键词:汽车倒车;模糊控制;仿真系统;微软基础类(MFC)
0 引言
倒车行驶时由于视线受到限制,不易看清车后道路和障碍,加之倒车时,后轮变为前导,前轮变为后跟,主观感觉上发生差异,控制转向的位置也发生了变化,使之成为困扰驾驶者的一个难题。如果我们给汽车装一个智能倒车系统就可以有效的避免由于倒车而造成的经济损失和人身安全。本文利用模糊控制理论,把人的经验控制策略的自然语言转化为计算机能够接受的算法语言所描述的控制算法,模拟人的思维方式对一些无法构造数学模型的被控对象进行有效地控制。
1 汽车倒车的详细描述
在停车场上停着一辆汽车(如图1所示)。现要求将汽车倒回场地的一端的中点(0,0)处,使汽车顺直向前。在倒车的过程中只能后退不能向前并且不能超过X轴。设v为汽车的速度;L为汽车的长度;X为汽车后端中点横坐标;Y为汽车后端中点纵坐标;Θ为汽车前轮舵角;Ψ为汽车倾角;α为停车区中点(0.,0)到汽车后端中点的连线与汽车中轴线的夹角;β为汽车中轴线与y轴的夹角。α,β的值可有X,Y和Ψ通过几何运算求得,所以控制对象的状态变量为X,Y,Ψ。初始状态t=0时,X,Y,Ψ已知,分别为X[0],Y[0],Ψ[0]。终止状态t=tf时,上述变量的值也已给定,分别为:X[tf]=-0,Y[tf]=0,Ψ[tf]=90o。倒车的约束条件:-45o≤Θ≤45o;汽车倒车运动的微分方程组为:
2 汽车倒车模糊控制器构建
2.1 根据经验产生模糊控制策略
当距离比较远的时候,应当努力调整小车的正向,使之与终点到(X,Y)连线的方向一致,同时应当减小汽车实际的正向与最终要求正向的夹角β。当距离比较近的时候,应当努力减小汽车与终点水平位置的偏差,同是减小汽车实际的正向与最终要求正向的夹角β。
2.2 模糊控制专家经验数学简化如下
当距离远时:θ=x/8+β;当距离近时:θ=-3α+2β;由于θ的计算比较复杂,我们可以将θ的计算过程放在模糊推理系统之外完成。先计算出θ1(远距离)和 θ2(近距离),再将θ1和θ2根据远近的模糊感念来进行模糊综合。我们再通过汽车的坐标计算出来:D=(X2+Y2)1/2
2.3 建立T-S模型的模糊推理系统
由以上分析可知,其输入变量为(D,θ1,θ2),输出变量为θ。其中D的隶属度函数有两条,分别代表“远”和“近”。由于在模糊规则的前项条件里不包含θ1,θ2,因而不用给他们指定隶属度函数。这样的T-S模型系统的模糊规则只有两条:如果D是“远”的,则θ=θ1;如果D是“近”的,则θ=θ2。
3 汽车仿真系统详细设计
3.1 汽车倒车仿真模型
在实际的倒车中,根据汽车的当前状态(Xt,Yt,Ψt),计算θ1、θ2和距离D,把计算的结果传输给模糊控制器进行模糊综合后得到控制量θ,再把控制量θ输入到汽车倒车的数学模型求得汽车新的状态(Xt+1,Yt+1,Ψt+1)。同时把此状态送入显示模块进行显示,并且判断是否到达车位或者越界,如此循环进行直到停止。
3.2 模糊控制器的程序设计如下
模糊控制器采用加权平均解模糊,作为CTruckDlg类的内部程序,代码如下:
float CTruckDlg::Controler(float dis,float W1,float W2)
{
// dis为距离D,W1为θ1,W2为θ2
float m_wheel;
if(dis>7)
m_wheel=W2;
else if(dis>=3&&dis<=7)
m_wheel=-0.25*(dis-7)*W1+0.25*(dis-3)*W2;
else
m_wheel=W1;
if(m_wheel>45)
m_wheel=45;
if(m_wheel<-45)
m_wheel=-45;
return m_wheel;
}
3.3 显示模块设计
显示模块包括3部分:汽车倒车显示区域、参数设置和显示区域和汽车模型绘制函数。汽车倒车显示区域是有MFC的图片控件构成,背景坐标为一幅事先画好的坐标图像。汽车模型在该图片控件上进行绘制。参数设置和显示区域由MFC的编辑框控件、静态控件和按钮控件组成。主要对汽车的形状(长度)、位置以及仿真系统的参数进行设置,并可在整个仿真过程中动态显示。
4 结语
通过对模糊控制汽车倒车仿真系统的设计,可以加快对智能倒车系统的开发,同时模糊控制作为汽车倒车的控制算法具有倒车准确、鲁棒性强的优点,与传统控制算法相比有明显优势。
参考文献
[1]于伟,张乃尧,白帆.倒车问题的模糊优化控制方案[J].机电一体化,2001,(5):21-24.
[2]吴小莉,林哲辉.MATLAB辅助模糊系统设计[M].西安:西安电子科技大学出版社,2002.
[3]杨智,杨李成.在MATLAB语言中间接实现C语言链接[J].兰州理工大学学报,1998,(4):56-60.
(作者单位:1.华润水泥(封开)有限公司;2.華润水泥(金沙)有限公司)
关键词:汽车倒车;模糊控制;仿真系统;微软基础类(MFC)
0 引言
倒车行驶时由于视线受到限制,不易看清车后道路和障碍,加之倒车时,后轮变为前导,前轮变为后跟,主观感觉上发生差异,控制转向的位置也发生了变化,使之成为困扰驾驶者的一个难题。如果我们给汽车装一个智能倒车系统就可以有效的避免由于倒车而造成的经济损失和人身安全。本文利用模糊控制理论,把人的经验控制策略的自然语言转化为计算机能够接受的算法语言所描述的控制算法,模拟人的思维方式对一些无法构造数学模型的被控对象进行有效地控制。
1 汽车倒车的详细描述
在停车场上停着一辆汽车(如图1所示)。现要求将汽车倒回场地的一端的中点(0,0)处,使汽车顺直向前。在倒车的过程中只能后退不能向前并且不能超过X轴。设v为汽车的速度;L为汽车的长度;X为汽车后端中点横坐标;Y为汽车后端中点纵坐标;Θ为汽车前轮舵角;Ψ为汽车倾角;α为停车区中点(0.,0)到汽车后端中点的连线与汽车中轴线的夹角;β为汽车中轴线与y轴的夹角。α,β的值可有X,Y和Ψ通过几何运算求得,所以控制对象的状态变量为X,Y,Ψ。初始状态t=0时,X,Y,Ψ已知,分别为X[0],Y[0],Ψ[0]。终止状态t=tf时,上述变量的值也已给定,分别为:X[tf]=-0,Y[tf]=0,Ψ[tf]=90o。倒车的约束条件:-45o≤Θ≤45o;汽车倒车运动的微分方程组为:
2 汽车倒车模糊控制器构建
2.1 根据经验产生模糊控制策略
当距离比较远的时候,应当努力调整小车的正向,使之与终点到(X,Y)连线的方向一致,同时应当减小汽车实际的正向与最终要求正向的夹角β。当距离比较近的时候,应当努力减小汽车与终点水平位置的偏差,同是减小汽车实际的正向与最终要求正向的夹角β。
2.2 模糊控制专家经验数学简化如下
当距离远时:θ=x/8+β;当距离近时:θ=-3α+2β;由于θ的计算比较复杂,我们可以将θ的计算过程放在模糊推理系统之外完成。先计算出θ1(远距离)和 θ2(近距离),再将θ1和θ2根据远近的模糊感念来进行模糊综合。我们再通过汽车的坐标计算出来:D=(X2+Y2)1/2
2.3 建立T-S模型的模糊推理系统
由以上分析可知,其输入变量为(D,θ1,θ2),输出变量为θ。其中D的隶属度函数有两条,分别代表“远”和“近”。由于在模糊规则的前项条件里不包含θ1,θ2,因而不用给他们指定隶属度函数。这样的T-S模型系统的模糊规则只有两条:如果D是“远”的,则θ=θ1;如果D是“近”的,则θ=θ2。
3 汽车仿真系统详细设计
3.1 汽车倒车仿真模型
在实际的倒车中,根据汽车的当前状态(Xt,Yt,Ψt),计算θ1、θ2和距离D,把计算的结果传输给模糊控制器进行模糊综合后得到控制量θ,再把控制量θ输入到汽车倒车的数学模型求得汽车新的状态(Xt+1,Yt+1,Ψt+1)。同时把此状态送入显示模块进行显示,并且判断是否到达车位或者越界,如此循环进行直到停止。
3.2 模糊控制器的程序设计如下
模糊控制器采用加权平均解模糊,作为CTruckDlg类的内部程序,代码如下:
float CTruckDlg::Controler(float dis,float W1,float W2)
{
// dis为距离D,W1为θ1,W2为θ2
float m_wheel;
if(dis>7)
m_wheel=W2;
else if(dis>=3&&dis<=7)
m_wheel=-0.25*(dis-7)*W1+0.25*(dis-3)*W2;
else
m_wheel=W1;
if(m_wheel>45)
m_wheel=45;
if(m_wheel<-45)
m_wheel=-45;
return m_wheel;
}
3.3 显示模块设计
显示模块包括3部分:汽车倒车显示区域、参数设置和显示区域和汽车模型绘制函数。汽车倒车显示区域是有MFC的图片控件构成,背景坐标为一幅事先画好的坐标图像。汽车模型在该图片控件上进行绘制。参数设置和显示区域由MFC的编辑框控件、静态控件和按钮控件组成。主要对汽车的形状(长度)、位置以及仿真系统的参数进行设置,并可在整个仿真过程中动态显示。
4 结语
通过对模糊控制汽车倒车仿真系统的设计,可以加快对智能倒车系统的开发,同时模糊控制作为汽车倒车的控制算法具有倒车准确、鲁棒性强的优点,与传统控制算法相比有明显优势。
参考文献
[1]于伟,张乃尧,白帆.倒车问题的模糊优化控制方案[J].机电一体化,2001,(5):21-24.
[2]吴小莉,林哲辉.MATLAB辅助模糊系统设计[M].西安:西安电子科技大学出版社,2002.
[3]杨智,杨李成.在MATLAB语言中间接实现C语言链接[J].兰州理工大学学报,1998,(4):56-60.
(作者单位:1.华润水泥(封开)有限公司;2.華润水泥(金沙)有限公司)