我国自2006年起举办的全国大学生“飞思卡尔杯”智能汽车竞赛融科学性、趣味性和观赏性为一体,是一项以迅猛发展、前景广阔的汽车电子为背景,涵盖了自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多个学科专业的科技创新比赛。参赛队伍在车模平台基础上,制作一个能够自主识别路线的智能车,在专门设计的赛道上自动识别道路行驶 [1]。
本文所述的智能车就是根据比赛规则要求设计并制作而成的,该智能车控制系统采用飞思卡尔半导体公司生产的16位MC9S12DG128单片机作为数字控制器,由安装在车前部的黑白CMOS摄像头负责采集赛道信息,并将采集到的信号经二值化处理后传入单片机,单片机对信号进行判断处理后,由PWM发生模块发出PWM波对转向舵机进行控制,完成智能车的转向。另外,智能车后轮上装旋转编码器,用来采集车轮速度的脉冲信号,单片机使用PID控制算法处理后的控制量去改变电机驱动模块的PWM波占空比,从而控制智能车的行驶速度。
2控制方案设计和硬件电路组成
设计有效的智能车控制系统必须首先掌握控制对象的特性。根据对智能车特点的分析,可以认为智能车转向控制系统的传递函数近似为一阶积分加纯滞后,速度控制对象的传递函数近似为一阶惯性加纯滞后的结论。
转向控制系统主要是要求响应速度快,对稳态控制精度要求不高。而且控制对象只有积分和滞后环节,没有常见的惯性环节。根据以上特点,转向控制采用PD控制器。
对速度进行检测和控制的意义在于尽可能使智能车按照道路条件允许的最高速度行驶。
在弯道应将车速限制为不脱轨的最高速度,在直道应当适当进行急加速以缩短单圈运行时间,提高比赛成绩。同时,对速度信号进行积分求和可以得到赛道长度信息,为道路识别与记忆模块提供数据。智能车速度控制系统的精度不需要太高,关键是如何快速响应赛道的路况变化。因此速度控制采用PID控制器。针对不同的道路状况迅速准确地改变车速,实现稳定过弯。
智能车的硬件电路主要由视频处理模块、方向控制模块和车速控制模块组成。各模块与单片机之间的关系如图1所示。
3 模块功能
(1)视频处理模块。视频处理模块由CMOS摄像头、二值化电路和同步分离电路构成。
(2)转向控制模块。转向控制模块主要由舵机完成。舵机的转动会转化为车模转向拉杆的横向移动,从而带动车模前轮的转动,控制智能车的行驶方向。舵机的转向控制采用PD控制,根据赛道中央黑线的位置,单片机向舵机输出相应占空比的PWM信号。
(3)车速控制模块。车速控制模块主要由直流电机、驱动电路和旋转编码器构成。根据CMOS摄像头所检测的路径信息判断智能车当前所处的赛道状况,并根据旋转编码器所检测的实际车速形成对智能车行驶速度的闭环控制,合理地调整数字PID控制算法的Kp、Ki、Kd三个参数,达到车速响应迅速并消除静态误差的目的。
4 电路设计
(1)电源模块设计。电源模块要为单片机、传感器、舵机和驱动电机供电。因此需要提供多种电源满足各个模块的要求。电池在完全充满之后空载电压只有8v左右,并随着电池的消耗,电压逐渐降低。电机启动及反接制动时电流很大,也有可能将电池电压拉得比较低。为了避免电源电压不稳定,影响摄像头视频处理电路和单片机工作不正常,在本设计方案中使用了DC-DC变换芯片MC34063以及低差压稳压器LM2940。 MC34063输出稳定的8伏电压提供给CMOS摄像头,LM2940为16位MC9S12DG128单片机、视频放大及二值化电路提供稳定的5伏电源,保证了系统在各种情况下的稳定运行。电源模块原理图如图2所示。
(2)直流电机驱动模块设计。直流电机驱动采用飞思卡尔公司的5A 集成H桥芯片MC33886。MC33886芯片内置了控制逻辑、电荷泵、门驱动电路以及低导通电阻的MOSFET输出电路,适合用来控制感性直流负载(例如直流电机)。可以提供连续的5A电流,并且集成了过流保护、过热保护、欠压保护。通过控制MC33886 的四根输入线可以方便地实现电机正转、能耗制动及反接制动。图3为经过简化的H桥电路,当S1、S4 导通且S2、 S3 截止时,电流正向流过直流电机,智能车前进;当S2、S3 导通且S1、S4 截止时,电流反向流过直流电机,适当利用这个过程可以使车模处于反接制动的状态,迅速降低车速;当S3、S4导通且S1、S2 截止时,没有电源加在直流电机上,直流电机电枢两端相当于短接在一起。由于电机轴在外力作用下旋转时,电机可以产生电能,此时可以把直流电动机看作一个带了很重负载的发电机,电机上会产生一个阻碍输出轴运动的力,这个力的大小与负荷的大小成正比,此时电机处于能耗制动状态。