基于图像识别的自主驾驶智能小车的设计与实现

2018-09-12 07:30陈二阳张修军袁姜红
现代电子技术 2018年18期
关键词:智能小车闭环控制图像识别

陈二阳 张修军 袁姜红

摘 要: 结合图像识别、模糊自适应PID控制等算法,设计并实现一种自主驾驶智能小车。以NXP的微控制器MK60N512VMD100为核心控制单元,通过CMOS摄像头OV7725检测并分析跑道信息,利用512线光电编码器测定小车的运行速度,并将速度和方向参数反馈给电机和舵机,结合PID算法实现闭环控制。经过多次在实验室模拟跑道实测发现,小车运行轨迹控制较为精确,速度平稳,具备较强的环境适应能力。

关键词: 图像识别; 模糊自适应PID控制; 智能小车; CMOS摄像头; 光电编码器; 闭环控制

中图分类号: TN02?34; TP273 文献标识码: A 文章编号: 1004?373X(2018)18?0162?04

Design and implementation of autonomous driving intelligent car

based on image recognition

CHEN Eryang1,2, ZHANG Xiujun1, YUAN Jianghong3

(1. School of Information Science and Engineering, Chengdu University, Chengdu 610106, China;

2. School of Geophysics, Chengdu University of Technology, Chengdu 610059, China;

3. Sichuan Winshare Vocational College, Chengdu 611330, China)

Abstract: An autonomous driving intelligent car was designed and implemented based on image recognition and fuzzy adaptive PID control algorithm. With the microcontroller MK60N512VMD100 of the NXP as the core control unit, the CMOS camera OV7725 is used to detect and analyze runway information, and the photoelectric encoder with 512 lines engraved per round is used to measure the running speed of the car, and feed speed and direction parameters back to the motor and steering engine, so as to realize closed?loop control by combining with the PID algorithm. After many actual tests on the simulation runway of the laboratory, it has been found that the car has an accurate running trajectory control, stable speed and strong environment adaptability.

Keywords: image recognition; fuzzy adaptive PID control; intelligent car; CMOS camera; photoelectric encoder; closed?loop control

近年来,随着车联网、物联网、无线通信、计算机、数据挖掘、机器视觉、工业控制等汽车电子相关技术的快速发展,令本已炙手可热的汽车自主驾驶技术在国内外成为研究焦点,越来越多的厂商投身其中[1]。比如,国外的特斯拉Autopilot、谷歌无人驾驶汽车、苹果汽车项目“Project Titan”、福特无人车、Uber无人驾驶出租车[2]等,但国内目前还没有特别成熟的自动驾驶产品[3]。基于MK60N512VMD100及CMOS OV7725的自主驾驶智能小车,结合图像识别、模糊PID控制等算法,对我国市场上自主驾驶汽车技术的发展具有一定的实际意义。

1 系统总体设计

1.1 供电系统总体设计

整个系统能否平稳运行一定程度上依赖于系统的供电系统合理性。供电电压和电流的大小浮动在可控范围内是基本要求,除此之外,还必须考虑信号抗干扰、电源转化效率等优化问题[4]。系统外部电源由7.2 V 2 000 mA·h Ni?cd标准蓄电池提供。依据各模块客观需求,系统提供4种稳压电路,如下:

1) 3.3 V电压。主要为单片机系统、摄像头、128×128液晶屏、陀螺仪以及部分接口电路提供电源。

2) 5 V电压。主要为编码器提供电源。

3) 6 V电压。主要为数字舵机(S?D5)提供电源。

4) 12 V电压。主要用于驱动电路中。

1.2 系统硬件总体设计

为了尽量避免不同硬件模块之间的相互电磁干扰,系统硬件力求简单高效,总体设计如图1所示。

1.3 系统软件总体设计

CMOS OV7725采集到跑道及小车运行信息后,经过图像分析提取到跑道边缘、中线、跑道元素等有效信息后。一方面,系统判断当前的跑道元素,并以此为依据计算出小车的理论速度及舵机转向参数;另一方面,结合检测到的速度信息及当前小车在跑道的运行情况,实时计算误差,动态调整PID参数,最终输出最理想的速度参数和舵机参数。系统软件工作框图如图2所示。

2 系统硬件设计

2.1 MCU供电电路

为了稳定MK60N512VMD100的工作电压,并防止其他器件对芯片电压造成影响,选用低压差线性电源芯片TPS7350和TPS7333独立供电,它们具有完善的过流、过压、电壓反接保护电路,且功耗小、几乎不需要单独考虑散热问题。MCU供电电路如图3所示。

2.2 3.3 V,5 V稳压电路

在小车的实际运行中,电机和舵机经常会因为路况信息突然启停,这个过程容易造成电池电压骤变,一般会把电源电压拉低1 V多,造成对电源的干扰,这就要求稳压电路必须具备一定的抗干扰能力。

低压差线性稳压芯片LM2940,最大输出电流可达1 A,满足液晶屏、摄像头、编码器等外围器件的使用,且抗干扰性高,故系统中的3.3 V,5 V稳压电路中选用LM2940。稳压电路如图4所示。

2.3 6 V稳压电路

系统选用的转向舵机为S?D5数字舵机,其常见工作电压为5.5 V,为了使舵机具备更快的响应速度,在电压浮动范围内系统为其提供6 V供电电压。系统选用LM2596_ADJ构造6 V稳压电源,该模块输出电压稳定、纹波小、稳压效果较为理想。6 V稳压电路如图5所示。

2.4 电机H桥驱动电路

较好的加速与制动能力对小车运行速度和平稳性具有重要的意义。研究发现,直流电机的速度与施加的电压成正比,输出转矩则与电流成正比[5]。系统选用540强磁碳刷直流电机,其额定工作电压为12 V。为了尽可能地避免电机颤抖、噪音大等问题,并能够满足对电机反转的需求,系统采用H桥控制电路。部分芯片内部集成了H桥电路和内部驱动,比如SGS公司的L298,NXP公司的MC33886和MC33887等,但是上述芯片由于内阻较大,容易导致严重发热、驱动能力不足等问题[6],实际效果也不理想。经过实验测试,系统采用MOS管IRF3205搭建H桥驱动电路,能够提供较大的电流,并且能够反转,效果较为理想,电路图如图6所示。

3 系统软件设计

实验室模拟跑道中共设置有9种常见道路元素,分别为“起跑线”“障碍”“S型弯道”“直角弯道”“十字路口”“坡道”“直道”“环岛”“结束标志”,为了方便描述,系统中将以上9种跑道元素依次设置为编号:01,02,03,04,05,06,07,08,09。

系统通过CMOS摄像头OV7725检测跑道元素信息,并使用模拟比较器对图像进行硬件二值化,进而提取跑道两边的黑色边缘的中心线作为引导线,用于跑道路径及转向的判断依据。电机控制采用模糊自适应PID算法,舵机控制采用PD算法,以达到快速、稳定的控制效果。主程序流程图如图8所示。

3.1 跑道边线提取

在小车实际运行过程中,由于光线、路肩、杂点等干扰因素的影响,摄像头捕捉到的图像效果往往比模拟状态有较大程度的差距,因此,在提取跑道信息之前必须对图像数据进行预处理,尽可能去除噪音。

设计思路:左边搜索100跳变作为左侧边线参考,右边搜索001跳变为右侧边线参考(“0”表示“白”色,“1”表示“黑”色)。最后还要对未找到的边线行进行补线。流程图如图9所示。

3.2 PID控制

3.2.1 电机控制采用模糊自适应PID算法

智能车运行过程中,由于“路况”复杂,存在非线性、参数时变性和模糊不确定性,经典PID控制对该过程的控制效果很不理想[7]。模糊自适应PID控制器对数学模型的依赖性较弱,无需建立控制过程的精确数学模型,只需把系统规则的条件、操作用模糊集表示,并把这些模糊控制规则以及有关信息作为知识存入计算机知识库中[8],然后计算机根据控制系统的实际相应情况,运用模糊推理,自动实现对PID参数的最佳调整[9]。模糊自适应PID结构图如图10所示,预存入计算机知识库的相关信息见表1。

在运行中通过不断检测误差e和误差变化ec,根据模糊控制原理对KI,KP,KD进行在线修改,以满足不同e和ec时对控制参数的不同要求,而使对象有良好的动静态性能[10]。

3.3.2 舵机控制采用PD算法

为了使小车有较好的跑道适应能力,首先根据有效行、偏差和图像信息判断出不同的跑道情况,根据不同路况情况,分别给小车舵机不同的PD值,以便直接快速控制舵机转向,优化小车行驶路径。

4 结 语

整车在实验室模拟跑道环境下进行测试,跑道整体背景为深蓝色,跑道路面(45 cm宽)为白色,沿跑道铺有黑色边界(2.5 cm宽),整体跑道长度共计60 m。

经过多次实测发现,系统所采用的软硬件能够较好地协调工作,小车运行轨迹较为精确,平均速度约3 m/s,具备较强的环境适应能力,基本达到系统预期设计目标。

参考文献

[1] BEHERE S, T?RNGREN M. A functional reference architecture for autonomous driving [J]. Information and software technology, 2016, 73: 136?150.

[2] MANAWADU U E, ISHIKAWA M, KAMEZAKI M, et al. Analysis of preference for autonomous driving under different traffic conditions using a driving simulator [J]. Journal of Robotics and Mechatronics, 2015, 27(6): 660?670.

[3] 肖文健,李永科.基于模糊控制的智能车系统设计[J].电子设计工程,2012,20(18):158?160.

XIAO Wenjian, LI Yongke. Design of intelligent vehicle systems based on photoelectric sensor [J]. Electronic design engineering, 2012, 20(18): 158?160.

[4] KANTHALAKSHMI S, WINCY PON ANNAl A S. An adaptive PID control algorithm for nonlinear process with uncertain dynamics [J]. International journal of automation and control, 2017, 11(3): 262?273.

[5] 郭志刚.双轴数控机床中的伺服系统研究[D].哈尔滨:哈尔滨工业大学,2009.

GUO Zhigang. Research on the servo systems in the dual?axis CNC machine tools [D]. Harbin: Harbin Institute of Technology, 2009.

[6] JING L, GE H, NIE Y. Research on fuzzy PID control strategy for brushless direct current motor [J]. Revista iberica de sistemas e tecnologias de informacao, 2016, 17(5): 227?237.

[7] 翟雁,郭阳宽,祝连庆,等.步进电机模糊PID闭环控制系统仿真研究[J].现代电子技术,2015,38(11):146?149.

ZHAI Yan, GUO Yangkuan, ZHU Lianqing, et al. Simulation research on fuzzy PID closed?loop control system for stepping motor [J]. Modern electronics technique, 2015, 38(11): 146?149.

[8] 桂振文,吴侹,彭欣.一种融合多传感器信息的移动图像识别方法[J].自动化学报,2015,41(8):1394?1404.

GUI Zhenwen, WU Ting, PENG Xin. A novel recognition approach for mobile image fusing inertial sensors [J]. Acta Automatica Sinica, 2015, 41(8): 1394?1404.

[9] SHI C Z, WANG C H, XIAO B H, et al. Multi?scale graph?matching based kernel for character recognition from natural scenes [J]. Acta Automatica Sinica, 2014, 40(4): 751?756.

[10] MAJI S, BERG A C, MALIK J. Efficient classification for additive kernel SVMs [J]. IEEE transactions on pattern analysis & machine intelligence, 2013, 35(1): 66?77.

猜你喜欢
智能小车闭环控制图像识别
基于LMI的过渡态主控回路闭环控制律优化设计
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
适用于厚度在线测量的水压闭环控制系统
图像识别在物联网上的应用
图像识别在水质检测中的应用
智能车竞赛中的闭环控制算法应用分析
基于STC89C51智能小车的移动家居平台的设计
基于HC—SR04超声波传感器的智能避障小车设计
智能安全防盗探测小车