基于K60的光电直立智能车控制系统设计

2018-03-20 00:53涂市委薛诺诺方海洋
汽车实用技术 2018年4期
关键词:框图车模微控制器

涂市委,薛诺诺,方海洋

(长安大学汽车学院,陕西 西安 710064)

引言

伴随着计算机技术、图像处理技术、自动控制技术等相关领域的发展,移动机器人也在不断地发展,光电直立智能车作为一种特殊的移动机器人,在很多特定场合得到广泛应用。文章以恩智浦E车模为模型,阐述了以下三个方面的内容:一是整车控制策略,主要使各控制模块相互配合,进而使智能车在赛道上平稳运行;二是硬件电路设计,包括电源管理模块等六大模块;三是控制系统的具体算法过程以及总体结构框图、车模运行控制框图。通过试验调试,该光电直立智能车能够实现车模的稳定运行,对平衡车以及机器人的研究起到了很好的参考和借鉴作用。

1 光电直立智能车整车控制策略

此控制系统共包含六大模块:电源管理模块、姿态检测模块、测速模块、路径识别模块、电机驱动模块、无线调试模块。K60单片机通过采集直立模块中陀螺仪和加速度计的输出信号,经过软件卡尔曼滤波后获得智能车的当前姿态,计算得到角度偏差[1]。经过图像识别得到路径识别模块输出的图像信息,从而得到车子距离赛道中心线的偏差量。通过正交解码获取速度检测模块的速度信号,得到两轮的速度偏差。最终通过速度闭环的PID调节并结合两电机PWM波的输出,动态调整车身姿态,使其既快又稳地通过规定赛道。同时为实时监控智能车的运行情况,系统加入了无线调试模块。此外,通过串口模块可实现单片机与上位机之间的信息传输。

2 光电直立智能车的硬件电路设计

系统的硬件设计极其重要,首先要选择合适的单片机,这里选用 MK60FN1MOVLQ15单片机为控制芯片,然后设计各外围子电路,包括电源管理模块等必要的模块,最后通过连接各电路从而形成完整的电路网络[2]。

2.1 电源管理模块

系统供电 7.2V,电源电路 5V和 3.3V供电分别选用TPS7350和TPS7333芯片。电机模块单独供电,原因是电机模块驱动电机时电池会发生较大的压降和电流,容易产生对其他模块的干扰。其中TPS7350、TPS7333均属于微功耗低压差稳压器,在欠压条件下,TPS73xx的RESET输出脚会执行一次RESET操作。

2.2 姿态检测模块

光电直立智能车控制的核心在于对车模平衡状态的控制,为维持车模平衡需要实时监控车身姿态。姿态传感器由直立模块和转向模块两个部分组成。其中,直立模块主要使用的是MPU3050陀螺仪和MMA8451Q加速度计这两种传感器,输出数字信号,通过IIC通信实现车模的直立;转向模块主要使用的是ENC-03MB陀螺仪传感器,输出模拟信号,采用AD转换实现车模的转向[3]。

2.3 测速模块

系统采用512线3相增量式旋转编码器LQ_ECM15180 305_SDZ512,测速方向兼容正交解码,输出信号为 CMOS信号,选用5V供电电压。工作原理为智能车在运行时记录下车子运行的位移信号,然后将其转化为周期性的电信号,再通过一定的处理转化为计数脉冲,通过脉冲的个数来表示位移的大小[4]。

2.4 路径识别模块

选用山外鹰眼硬件二值化高速摄像头 OV7725,供电电压3.3V。该摄像头共有8根数据信号线,每次输出1个8bit数据,每个bit对应图像上的1个像素点,而且这8个像素点是硬件二值化后的数据,无需再次软件二值化,极大减轻单片机的运算量,进而可以释放更多的资源用在算法控制上。此摄像头主要采用SCCB通信协议,同时兼容IIC协议,区别在于SCCB在读的时候,添加了一个总线停止条件。

2.5 电机驱动模块

电机驱动采用全桥电路,由 IR2104S驱动 4片 N型IR7843MOS管,12V升压供电由MC34063提供。系统根据输出的PWM信号,从而实现对直流电机的转速的控制。

2.6 无线调试模块

无线调试模块主要用于显示车模运行状态及各控制参数的变化,NRF2401+模块每32字节为一个数据包,当发送变量值时前12个字节才是一个数据的帧。

3 系统控制算法

系统采用C语言编程实现各模块功能的控制,系统的初始化包含电机、编码器、摄像头、PIT、PORTA、DMA的初始化,各功能模块信息的采集包括直立模块、转向模块、光电编码器、摄像头等,控制算法包括图像二值化、边缘检测、卡尔曼滤波、车身姿态控制、速度控制、方向控制等,图 2即为系统控制的总体结构框图[5]。

图2 系统控制的总体结构框图

具体算法步骤如下:

①各功能模块初始化,包括电源管理模块等6个模块;

②K60微控制器获取各功能模块采集得到的信息,包括车身倾角、图像采集后的二值化图像、转向时的位置偏差量、电机转速等;

③通过卡尔曼滤波得到车模倾角,然后对车模进行 PD调节,进而实现车模的直立,若满足直立则执行步骤④,反之则返回步骤①;

④通过对采集到的二值化图像进行处理后,得到图像中心线距离赛道中心线的偏差量,同时微控制器判断是否在速度时间周期内,若在则结合电机速度,对电机进行速度闭环PI调节;反之则直接执行步骤⑥;

⑤微控制器将闭环控制结果转化为相对应的PWM占空比,控制左右两电机的转速;

⑥微控制器判断是否在转向时间周期内,若在则根据采集到的位置偏差量对智能车进行PD调节,反之则进入步骤⑦;

⑦车模的运行与停车控制:微控制器判断车身姿态是否满足正常运行要求,若满足则输出相对应的占空比控制左右两电机的转速;反之则控制电机的占空比为 0,车模停止运转。

⑧当车模电机停止运转时,则通过无线调试模块进行相关参数的调整,并重新回到步骤①;

图3为车模运行时直立PD、速度PI、转向PD的控制框图,通过调整各控制参数从而实现车模的稳定运行[6]。

图3 车模运行控制框图

4 系统测试

表1 试验结果

通过对程序的编译调试,以及对智能车直立、速度、方向三大模块的控制参数进行桌面静态调试以及动态调试之后,在36.4m的正式赛道上进行试验调试,经过多次调试后得到试验结果如表1所示。

5 结束语

通过实测可以看出,所设计的控制系统能够使车模在赛道上快速运行,且稳定性好,这表明以上所述的控制方案合理,参数选择恰当,各硬件工作正常。

该文章针对光电直立智能车,以 MK60FN1MOVLQ15单片机为核心控制芯片,通过对智能车控制策略、硬件电路设计、控制算法几个方面进行阐述,以及对智能车直立、速度、方向三大模块进行桌面静态调试以及动态调试之后,各模块能稳定运行,并以较为理想的速度完成赛道的直立行走,论文对于平衡车以及机器人的控制研究具有一定的参考和借鉴作用。

[1] 王玲玲,施建洪.直立车平衡控制的研究[J].机械与电子,2016,34(10):72-75.

[2] 赵元睿,李新征,王家辉等.基于 K60的两轮寻迹直立车的设计[J].机电技术,2015,(02):31-32.

[3] 龚晓辉,薄祥岑. 基于 MC9S12XS128的二轮直立车设计与实现[J].电子设计工程,2014,22(02):137-139.

[4] 沙志豪,刘璐璐,张洪等.两轮直立车控制系统设计[J].电子技术与软件工程,2016,(06):149.

[5] 庄治强.基于Freescale小车的智能控制算法研究[D].兰州:西北师范大学,2015.

[6] 陈思涵.基于视觉引导的自平衡机器人控制系统研究[D].大连:大连海事大学,2017.

猜你喜欢
框图车模微控制器
TASKING针对英飞凌第三代AURIX微控制器推出多核开发环境
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
电路图2017年凯迪拉克XT5
车展,没有车模看什么
算法框图的补全
电磁导向智能车设计探讨
基于图表法构建《万有引力定律与航天》知识网络
汽车模型成收藏新宠
基于MC9S08QG8低端微控制器的无线控制器设计
车模大世界·一汽经典车模