首页 > 范文大全 > 正文

基于Freescale9S12DG128的智能车控制系统设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Freescale9S12DG128的智能车控制系统设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:本智能控制系统采用飞思卡尔16位单片机MC9S12DG128作为核心控制单元,自主构思控制方案及系统设计,主要包括传感器信号采集处理、控制算法及执行、直流电机驱动、转向舵机控制等。较好的完成在规定跑道,特别是弯道、坡道的竞速要求。

关键词:MC9S12XS128 传感器 闭环反馈控制 速度闭环控制 舵机控制

中图分类号:TP242 文献标识码:A 文章编号:1007-9416(2012)09-0006-03

1、智能车要求及方案设计

智能车竞速要求智能车在黑色的跑道上能够自主行驶,并以最短的时间最快的速度跑完全程。跑道由直道、各种弯道、小于15度的坡道组成。作为能够自动识别道路运行的智能汽车,车模与控制器由图1可以看成一个自动控制系统。它可分为传感器,信息处理,控制算法,执行机构四个部分。其中,以单片机为核心,配有传感器、执行机构以及它们的驱动电路构成了控制系统硬件;信息处理与控制算法由运行在单片机中的控制软件完成。因此,自动控制器设计可以分为硬件电路设计和软件控制两部分。

2、系统硬件方案的设计

智能车系统采用飞思卡尔的16位微控制器MC9S12DG128单片机作为核心控制单元。在选定智能车系统采用光电传感器方案后,智能车的位置信号由车体前方的光电传感器采集,经S12 MCU的A/D转换处理后,用于智能车的运动控制决策,同时内部ECT模块发出PWM波,驱动直流电机对智能车进行加速和减速控制,以及伺服电机对智能车进行转向控制,使为了对车的速度进行精确的控制,在智能车后轴上安装了光电码盘,采集车轮转速的脉冲信号,经MCU捕获后进行速度的PID自动控制,以便完成智能车速度的闭环控制。此外,还增加了拨码开关作为输入输出设备,用于智能车的速度控制,以便于适应不同的环境。

系统总体方框图如图2。

根据以上系统方案设计,智能车共包括七大模块:MC9S12DG128主控模块、传感器模块、电源模块、电机驱动模块、速度检测模块辅助调试模块。各模块的作用如下:

MC9S12DG128B主控模块,作为整个智能车的“大脑”,将采集光电传感器、光电编码器等传感器的信号,根据控制算法做出控制决策,驱动直流电机和伺服电机完成对智能车的控制。

传感器模块,是智能车的“眼睛”,可以通过一定的前瞻性,提前感知前方的跑道信息,为智能车的“大脑”做出决策提供必要的依据和充足的反应时间。

电源模块,是整个智能车的“力量源泉”,统提供合适而又稳定的电源。

电机驱动模块,驱动直流电机和伺服电机完成智能车的加减速控制和转向控制。

速度检测模块,检测反馈智能车后轮的转速,用于速度的闭环控制。

辅助调试模块主要用于智能车系统的功能调试、智能车状态监控等方面。

3、软件设计

3.1 光电传感器路径识别算法

路径识别方式中,我使用的是模糊算法,这种算法的优点是能够根据传感器返回的状态值,得到车的重心偏离黑线的程度,还可以通过一定的算法,计算出舵机的转向角度,并且在一定程度上具有抗拒微小干扰的能力。具体算法介绍如下:

(1)将每个传感器进行加权处理,给相应各个传感器的权重值,如图3所示。

(2)当传感器检测到黑线时相应的传感器返回所在的权重值,并计算所有传感器的平均加权值,即偏离程度。计算公式为:

式中,sensor为对应传感器的状态值,ave_weight为对应传感器的权重值,total_weight为传感器的加权平均值。

(3)建立偏离程度和舵机转动角度所对应的PWM脉宽关系的模型,拟合二者的函数关系曲线。

由以下程序段即可以计算出此时模型车传感器的加权平均值,由此可以得到模型车的状态,为下一步控制决策提供必要的信息。

3.2 舵机、电机驱动算法

通过舵机和直流电机的驱动算法,再经过PID调节,就能实现小车在跑道上平稳快速的行驶完全程

3.3 PID控制

PID控制策略其结构简单,稳定性好,可靠性高,并且易于实现。其缺点在于控制器的参数整定相当繁琐,需要很强的工程经验。相对于其他的控制方式,在成熟性和可操作性上都有着很大的优势。所以最后我们选择了PID的控制方式。

在电机速度的控制上,选用了增量式PID控制,使电机能够根据道路情况快速准确的改变转速,实现入弯时减速,出弯时加速。在本方案中,使用试凑法来确定控制器的比例、积分和微分参数。

3.4 弯道策略分析

在车辆进弯时,需要对三个参数进行设定:切弯路径、转向角度、入弯速度。

下面以常见的几种弯道转角处理方式解释各方案的优缺点,其中,横坐标表示由传感器采集回来的跑道中心线相对智能车中心线的偏移量,纵坐标表示转角大小。

a图表示偏移量与转向角度呈线性关系,在计算及程序编写上都比较简单,也可以实现控制智能车行驶的目标,但是由于规则制定比较简单,对智能车实际行驶状态的分析不够全面,所以在实际应用时不能简单套用。

b图表示的是在智能车略微偏离跑道中心时,不要对行驶方向作太大调整,而是在当偏离度大到预定值时急速调整转角以保证过弯的及时,同时在以判断出是急弯后,也不要进行大的变动,因为此时转角的值已经很大,仅需对舵机进行微调就可以保证方向的正确性。这种方案的优点是综合考虑了智能车对个弯道的适应程度,同时保证了在直线行驶时的稳定性,和抗干扰性,但是对急弯的响应可能不够及时,这是该方案的主要缺点。

c图表示的对弯道的处理方案与B图恰好相反,它提高了相应灵敏度,降低了抗干扰性,对于多弯道,且弯道曲率半径较小的跑道有比较好的适应性。

d、e图是两种比较特殊的处理方案,它们不能用于智能车的全程控制,只是考虑到智能车的实际运行特点对某部分的偏移量有特别要求是使用。对于传统四轮车辆,转向时前轮有比较严格的角度关系,而它们的得到是由转向系统决定的。这样两套系统都对某个值做出了限制,必然会有矛盾,在车由0度转到最大转角时,并不是每时每刻都能同时满足两种条件的限制,那么为了智能车行驶的稳定性,我们可能会在小范围内对转角波动,以得到附近最合适的转角值,减小矛盾。

3.5 系统软件流程图

在以上各个模块均已确定的情况下,经过系统分析后,确定软件主流程图如图7:

4、结语

该论文基思卡尔公司的16位微处理器MC9S12DG128为控制核心,设计了采用光电管来识别路径的智能车系统。实现了智能车能在白色的场地上,沿着任意给定的黑色引导线按照给定的跑道快速行驶。

通过模糊控制器和PID控制的调节,小车动态性能良好,适应性强,整体控制效果良好。

由于时间和水平的限制,仍有许多地方需要完善。如考虑对舵机转向加上反馈信号进行闭环控制,使得舵机的转向更为准确;采用MOS管驱动电机,获得更好的加速性能;由于前瞻的限制,速度上和CMOS摄像头还有差距,所以如果能够选用性能更好的激光管,提高前瞻,将会大大加快车速。

参考文献

[1] 于虹.基于16位单片机MC9S12DG128智能模型车系统开发研究:(硕士学位论文).内蒙古:内蒙古科技大学,2009.

[2] 卓晴,黄开胜,邵贝贝.学做智能车.北京:北京航空航天大学出版社,2007.

[3] 邵贝贝.嵌入式实时操作系统[LC/OS-Ⅱ(第2版)[M].北京:清华大学出版社,2004.

[4] 王晓明.电动机的单片机控制[M].北京:北京航空航天大学出版社,2002.

[5] R.Krishnan Electric Motor Drive.Modelling,Analysis,and Control.Prentice Hall.2001.

[6] 安鹏,马伟.S12单片机模块应用及程序调试[J].电子产品世界,2006.第211期,162-163.