基于线性ccd的自主行驶小车系统的设计 大学本科学位论文
- 格式:doc
- 大小:165.50 KB
- 文档页数:30
国家自然科学基金资助项目(编号:60801056);上海教委科研创新重点基金资助项目(编号:11ZZ170);上海市青年科技启明星计划基金资助项目(编号:11QA1402800)。
修改稿收到日期:2011-01-17。
第一作者杨宁(1976-),男,2006年毕业于上海交通大学精密仪器及机械专业,获博士学位,副教授;主要从事运动物体定位、状态检测与信息融合方面的研究。
基于CCD 的自动循迹小车的软件设计Software Design of the Auto Tracking Car Based on CCD杨宁1石冰飞2朱平1周宏辉3(上海电力学院电力与自动化工程学院1,上海200090;国核自仪系统工程有限公司2,上海200233;宁波市电业局3,浙江宁波315010)摘要:为实现小车的自动循迹功能,分别采用飞思卡尔16位单片机MC9S12XS128以及CMOS 面阵图像传感器HQ7620模块作为主控制器和导向传感器,并结合一定的处理算法进行路径信息识别。
单片机对摄像头采集到的路径图像信息进行存储、滤波、道路识别和最优路线计算后,发出控制信号以驱动小车的舵机和电机。
在控制策略方面主要采用变参数、带死区的增量式数字PID 控制器,使小车在行驶时的整体速度得以提高,系统性能更加稳定,灵敏度和鲁棒性也得到一定的改善。
关键词:CCD图像处理路径识别PID单片机中图分类号:TP391文献标志码:AAbstract :To realize the auto tracking function for the car ,Freescale 16-bit single chip computer MC9S12XS128is adopted as the main controller and CMOS camera HQ7620is used as the guiding sensor ,and appropriate processing algorithm is combined for path information recognition.The image information of the path collected by the camera are stored ,filtered ,identified ,and calculated for optimal route by the single chip computer ,then the control signals are issued to drive the motor and steering engine.The control strategy mainly adopts the incremental digital PID controller with variable parameter and dead band to enhance the speed of car ,and improve the stability ,sensitivity ,and robustness of the system.Keywords :Charge coupled device (CCD )Image processingPath recognitionProportional integral differential (PID )Microcontroller0引言自动循迹小车作为一种移动机器人,主要应用于机场、仓库以及其他需要搬运设备的工况中。
1 引言智能循迹小车涵盖机械、电子、电气、单片机、控制等多学科领域,是一个集环境感知、规划决策、自动行驶等功能于一体的综合系统,是高新技术的综合体。
目前,企业生产技术不断提高,对自动化技术要求不断提高,智能车以及在智能车基础上开发出来的产品成为自动化物流运输设备的关键,因此智能车的设计具有很强的实际意义。
本文以“恩智浦”杯智能车竞赛为背景,重点介绍线性CCD 追逐智能车系统的机械结构和硬件设计,结合相应的程序算法,经过不断改进、调试与优化,追逐智能车的行驶速度和稳定性得到明显的提高。
2 线性CCD 追逐智能车系统的整体结构线性CCD 追逐智能车系统分为7大模块:主控制器模块、电源模块、赛道信息采集模块、方向控制模块、速度控制电路模块、双车距离控制模块和停车线识别控制基于线性CCD 追逐智能车系统的硬件设计湖北师范大学机电与控制工程学院 张文财 叶梦君 黄仰来 雷改惠摘 要本文介绍以MK60DN512ZVLQ10单片机为微控制器,线性CCD 采集赛道信息的追逐智能车系统的硬件设计。
基于线性CCD 追逐智能车系统的硬件设计,详细描述了主控制器模块、电源电路模块、赛道信息采集模块、方向控制模块、速度控制电路模块、停车线识别模块和双车距离控制模块的设计。
通过测试,最终实现光电双车快速直行及循迹转弯等功能。
关键词MK60DN512ZVLQ10;线性CCD ;追逐模块,线性CCD 追逐智能车系统硬件整体设计框图如图1所示。
主控制器模块由K60最小系统板构成,是整个追逐智能车的大脑,完成整个智能车的各项任务的分配和执行[1]。
电源模块负责给其它各电路模块提供不同的电压,其中主控芯片MK60DN512ZVLQ10需要3.3V 电压;赛道信息采集模块中的TSL1401线性CCD 供电电压为5V ;方向控制模块中的FutabaS3010舵机供电电压为6V ;速度控制模块中的电机驱动电路需要7.2V 电压,驱动芯片74HC244需要5V 电压,测速编码器E6A2-CW3C 需要5V 供电;双车距离控制模块超声波需要5V 电压;停车线识别模块需要5V 电压。
1前言1.1选题的必要性随着当今工业的发展,我们越来越依赖于流水线作业。
对于像我国这样的“世界工厂”而言那就更应该实现生产的流水线自动化作业。
在我国工业生产中,轻工业的流水线作业地发展是非常迅速的。
但对于重工业而言,却不是如此。
要实现重工业的流水线作业,首先要解决的一个问题,便是工件在生产过程中拖动问题。
对与轻工业而言,我们可以用传送带来完成。
但对于重工业而言,用传送带传送工件,则不太实用。
首先找重工业中所加工的产品,都是一些大型的工件,所以传送带的拖动力达到。
其次,传送带传送大型工件,需要占据较大的地面操作空间。
最后,大型工件在地面移动过程中,对生产工人的安全,也构成了一定的威胁。
鉴于此,我们在生产车间中,广泛采用行车起吊装置,即节省了地面操作空间,有提高了安全性。
但是,我们现在的许多起吊行车都是有人工控制。
这仍然达不到自动化生产的要求。
所以,本课题的研究着重于解决这一个问题,并将对现有行车的改造作为重点。
以求向自动化的生产迈进一步。
从而提高生产率、提高生产效益、改善生产环镜等。
1.2选题的依据本课题的选择来源于生产。
我之所以选择本课题的原因有四点:第一点,我曾于2009年暑假期间,在自贡川润股份有限责任公司实习过起重工这个职业。
所以我对起重行车的一些控制过程比较熟悉,同时发现现在人工控制的行车也确实存在着许多缺陷,特别是越来越不能满足当今自动化生产作业的要求。
第二点是,我对于自己本专业的学习。
其中很重要的一门专业课便是《电气控制与PLC的应用》,它为我在控制系统的选择与设计方面奠定了坚实的基础。
在诸多的专业课程中还有《电子电工基础》、《传感器原理及应用》、《维修电工实训》《CAD制图》等课程,都为我在线路设计、控制柜设计、行程开关的选择以及图纸的制作上奠定里基础。
第三点,是有王赛老师的鼎力支持。
对我所欠缺的许多东西(思维方式、论文格式等),他都给予了极大的支持。
第四点,学院图书馆的藏书,它为我的设计提供了极大的资料查阅支持。
前言随着现代社会的高速发展,无论在生活应用还是在工业应用中,智能化的概念越来越多的出现在我们的身边。
尤其是自上世纪80年代以来,汽车技术以突飞猛进的速度在发展,汽车从原来的纯机械结构构成的代步工具逐渐演变成一个集各种高科技技术为一体的智能化的新时代产物。
因此,智能车的概念也就越来越凸显出来,智能汽车,顾名思义,就是在现代网络技术支撑下,利用电子信息通信技术,智能微控制器,环境监测控制技术,GPS导航技术等等组成的一个新意义的高新技术复合载体。
它能够实现自动的环境监测,规划处理,自动行驶还有人工辅助驾驶等功能。
现在汽车行业对智能汽车的研究主要在提高汽车的安全性和汽车的驾驶辅助上,在汽车自动驾驶方面的发展还没有质的飞跃,近年对于车辆自动驾驶,智能导航的研发正大力进行。
智能车辆的研究成果现在已经体现着一个研究团体乃至整个国家科研实力水平。
所以无论是中国还是国外很多国家已经把智能汽车确定为重点发展的项目。
21 智能车控制系统概况1.1 系统开发背景智能化,是现今社会前进的一个目标。
对于汽车来说智能化也会是未来发展的方向。
对于国家来说,大学生质量的好坏是这个国家的发展动力的重要指标之一。
大力发展国内大学生的科技实践能力一直是我国的一大政策。
其中为促进大学生的科研创新能力,一直在举办着各种各样的科技竞赛。
智能汽车方面,在中国的各种智能车机械车等的竞赛有很多,其中飞思卡尔杯全国大学生智能汽车竞赛在中国已经举办了九届。
这项赛事主要探索的就是智能汽车,用智能汽车模型作为研究对象,让学生们充分发挥学校中所学习科学文化知识,对智能小车加以设计并改装,完成一个能自动识别比赛赛道路况并能够进行判断并进行相应控制的小车。
最终完成大赛的比赛要求。
这项大赛其中包括了智能控制、环境监测、传感器技术等主要学科知识,还涉及到电子、电气、计算机、机械等多个基础学科。
赛事用比赛的方式,大大提高了大学生参与者的积极性,锻炼了大学生的实际操作能力。
基于CCD传感器的智能小车控制系统设计CCD传感器是一种现代高性能传感器,它可以用于各种应用领域,例如监视和控制系统,因为它可以提供精确和可靠的测量结果。
本文将探讨一种基于CCD传感器的智能小车控制系统设计。
一、系统概述本设计的智能小车控制系统使用CCD传感器来监视其周围环境,并根据测量结果实现自主导航功能。
该传感器可以检测到物体的位置和距离,通过对这些数据进行处理和分析,小车可以自动避免碰撞,停止或转向。
此外,该系统还具有基于无线通信的远程监控功能,可以实现远程控制和数据传输。
二、系统组成该系统由以下几部分组成:1. CCD传感器阵列CCD传感器阵列是该系统的核心组件,它通常由数百个小型传感器组成。
每个传感器都可以以不同的速率和精度进行测量,这使得该系统可以提供高质量的传感性能和准确的测量结果。
2. 控制板控制板是系统的处理单元,负责接收和处理CCD传感器所收集的数据。
该板还包含一些接口和控制器,以便于用户进行控制和调整。
3. 电机控制模块电机控制模块是该系统的动力源,负责控制小车的运动。
该模块通常由高性能电机和控制器组成,控制器可以根据用户输入的指令来控制电机的旋转速度和方向,以实现高效的小车运动。
4. 通信模块通信模块可以通过无线或有线方式与控制板进行数据传输和通信。
该模块可以与其他设备或系统进行数据交流,并实现远程控制和监控功能。
三、工作原理1. CCD传感器监测当小车移动时,CCD传感器将实时监测周围环境中的物体。
当发现障碍物时,系统将根据测量数据自动调整小车的方向,避免碰撞。
2. 控制板处理控制板会接收CCD传感器所收集的数据,并根据处理算法进行分析和处理。
通过对数据进行比较和计算,系统可以推断小车应该采取哪些行动,例如停止、转向或避让障碍物。
3. 电机控制模块运动一旦系统根据测量数据和算法决定了小车需要采取的行动,控制板会发出指令,通知电机控制模块控制电机的运动方向和速度,通过自动调整电机的旋转速度和方向来控制小车的运动。
基于线性CCD检测的寻线智能车设计与实现余世干,张廉洁,张旭东,戎强强(阜阳师范学院信息工程学院,安徽阜阳 236041)摘要:本设计以全国大学生智能车竞赛为背景,为了实现小车的自动循迹功能,提出了一种道路识别和最优的路线计算算法引导小车循迹行驶的方案.本文介绍了这一方案的基本思想,阐述了采集的原理,并根据这一原理对图像进行处理和路线的最优计算,最终实现了小车的自动循线的功能.关键词:智能车;阈值;灰度值;滤波TP23:A:1673-260X(2015)10-0065-031 引言自动循迹的智能车相当于移动的智能机器人,现在主要应用于餐厅餐盘的接送、仓库以及其他需要搬运设备的工作中,而线性CCD相当于智能机器人眼睛,小车通过传感器获取路径信息,并按一定的精度要求正确沿路径行驶.2 系统整体结构设计本设计中,要求智能汽车模型在规定45cm宽度的白色KT板,两边均为2cm黑色引导线的跑道上自动行驶,并可根据变化的形状,按行驶要求自主导航.这就要求智能车车具备较强的自适应能力.智能车在行驶的过程中还需要快速和稳定性的要求,因此,设计方案必须考虑传感器信号采集处理,陀螺仪和加速度计的调整,和电机差速控制策略的设计等因素.整个系统包括图像信息采集和处理,智能车的直立控制,电机差速的转向控制和速度的反馈,系统组成结构如图1所示,系统组成实物如图2所示.2 图像处理方案设计2.1 图像信息处理对跑道形状的识别正确与否决定了智能车车能否实现自动循迹功能.虽然当今图像处理算法已经有很多成熟的算法和应用,但如何有效地采用符合具体实际使用的算法则需要经过实际测试才能确认,图像处理包括对线性CCD信息采集,跑道状况的提取,路径的计算等.一般的设计流程包括图像信息采集,图像信息的处理,跑道信息的计算和行驶路线的优化这4个部分.图像信息采集时,单片机的端口与CCD的图像灰度信息输出引脚相连,线性CCD是单行采集图像的,并且采集回来的数据是灰度值,我们需要对灰度值进行二值化和滤波处理,最终确定跑道的路况情况.2.2 阈值提取方法在智能小车中常用的阈值提取方法有固定阈值法;取平均电压值作阈值与计算max与min的均值作阈值,通过对比分析得出本系统采用大津算法求阈值法.2.2.1 固定阈值主要思想在黑白电压值较稳定,浮动范围很小的情况下,如白色路面的电压始终在170上下极小的范围内浮动,黑色路面电压在50左右稳定,此时阈值可选范围很大,随机取一个100或120都是没问题的.但很多CCD存在畸变,视野两侧的电压始终很低,而且有时考虑到CCD视角的变化(如更改前瞻,焦距),图像的波动可能也会较大,用以下两种方法可能更实用.2.2.2 取平均电压值作阈值法计算出128个像素点电压的平均值,取此值作为图像二值化的阈值,可以增强环境的适应性,由于实际的黑白电压的门限不断变化且有一定的波动,或者外界光线亮暗略有不均,此方法依然能够适用.2.2.3 计算max与min的均值作阈值法需要对128个像素点做排序,取出电压最大与最小的两个像素点的电压值,取二者的平均值作阈值,通过实践测试,这种方法具有一定的效果,但是考虑到比赛赛场上的光线过强,加上CCD畸变的影响,即使加上偏振片,得到的图像可能仍不理想.2.2.4 大津算法求阈值由于比赛场馆的光线分布式不均匀的,如果采用固定的阈值会影响图像处理的效果,所以采用了大津算法动态求阈值.大津算法(OTSU)是一种确定图像二值化分割阈值的重要算法,这是由日本学者大津于1979年提出,从大津的原理上来讲,该方法又称作最大类间方差法,因为按照大津法求得的阈值进行图像二值化分割后,前景与背景图像的类间方差最大.原理:对于图像I(x,y),前景(即目标)和背景的分割阈值记作T,属于前景的像素点数占整幅图像的比例记为ω0,其平均灰度μ0;背景像素点数占整幅图像的比例为ω1,其平均灰度为μ1.图像的总平均灰度记为μ,类间方差记为g.假设图像的背景较暗,并且图像的大小为M×N,图像中像素的灰度值小于阈值T的像素个数记作N0,像素灰度大于阈值T 的像素个数记作N1,则有:采用遍历的方法得到使类间方差g最大的阈值T,即为所求.大津算法的形象理解:对于直方图有两个峰值的图像,大津法求得的T近似等于两个峰值之间的低谷.图3为图像的直方图,使大津法求得的T=0.5294,转换在[0,255]之间为134.9970,只好是两个峰值之间低谷的位置.2.3 系统图像处理过程图像处理的滤波算法较多,主要分为平均值滤波,中值滤波,限值滤波,滑动平均值滤波等.考虑到其他的滤波运算量大,需要占用大量内存,故采用了中值滤波和滑动平均值滤波相结合的算法.中值滤波的优点是能够有效克服因偶然因素引起的波动干扰,滑动平均滤波的优点是对周期性干扰有良好的抑制作用.在实际处理中,每次取一行中3个相邻列的灰度值,先判断这3个值是否有相同的灰度值,若灰度值相同则采用滑动平均值滤波,取平均值,并将第二个值修改为该平均值;若灰度值不同则采用中值滤波,并对这3个值进行排序,将第二个值修改为3个数值的中间值.该算法对一个像素点的过滤仪用到r相邻两个像素点的灰度值,计算量不大,占用内存不多,适合单片机的计算,且该算法相对来说较简单,时间复杂度不高,满足了小车对快速控制系统的要求.滤波前后图像对比如图4所示.2.4 跑道轨迹提取在滤波后的图像中,白色为小车的行驶范围,黑线为小车需要行驶的轨迹,因此,轨迹线的提取即为黑线,所以采用跟踪引线的黑线提取算法.假设某时刻找到某行的黑线中心位置m,则下一时刻在下一行的m附近搜寻黑线的左右边缘,然后计算该行的中心位置.该方法的特点是始终在前一行的引线中心位置附近寻找下一行的引线位置,故称为“跟踪”引线的黑线提取算法.该算法的优点是在首行引线检测正确的前提下具有较强的抗干扰性,能更有效地消除十字垂直交叉黑色引线的干扰以及引线外黑色噪点的影响,始终跟踪目标引导线.在试验过程中,发现该算法有一定的不足.由于是在连续邻域上跟踪引导线,因此,若第一行引线的检测位置和实际导引线偏差较大,将产生一连串的错误,甚至造成小车失稳.为防止这种现象的发生,可利用前面两行的引线中心位置来确定下一行的黑线位置.因为前两行同时出错的概率远远小于一行出错的概率,所以采用这种方法造成丢失引线的几率会大大减小.此外,针对每行中的孤立噪点,采用计数法排除.如果连续黑点数小于某个阈值时,认为是噪声影响,而非实际的黑线,从而可以减少误判概率.2.5 轨迹曲率处理对于道路形状的判断,可以采用曲率法.找到每行黑线的中心位置后,再进行道路曲率信息的计算,即可得出道路的类型.简单的曲率计算公式如下所示:q=I(X3-X2)-(X2-X1)I式中:x1,x2和x3为3个实际距离相等的行的黑线位置.行驶路径类型可以分为直道、曲率小的s弯、曲率大的S弯和普通弯道4类.u型弯道和0型弯道可以认为是多个同方向普通弯道连接在一起,因此,都可以被认为是普通弯道.若计算出来的曲率q接近0,则说明该段道路为直道或者小S弯;若曲率q比较大,则说明该段道路为普通弯道;若计算出来的曲率q非常大,则说明该段弯道为大S弯.在计算得到各段道路的具体类型之后,就可以进行小车行驶路径的优化.通常情况下,直道和小s弯道按照直线行驶通过;对于普通弯道,一般将小车行驶路线的曲率比道路弯曲程度大一点,尽量以微内圈的线路通过;对于大S弯道,需要将小车的行驶路线曲率比道路弯曲程度小一点,在不跑出道路的情况下尽量少走弯路,这样小车看到的弯道类型始终是大s弯道,即可以连续地走“小弯”路线通过,这样既节约时间,且行驶速度不会因为拐弯太大而过于减小,并保持匀速行驶.优化前后路径如图5所示,虚线代表实际道路形状,带箭头的实线代表优化后的路径形状.3 结束语采用线性CCD检测的循迹智能车系统的设计涵盖了多个学科交叉知识,利用K60芯片作为核心控制器,CCD作为路线探测器,本文针对智能车系统的具体实际的图像处理方案设计过程,具体包括图像信息处理,阈值提取方法,系统图像处理过程跑道轨迹提取,轨迹曲率处理等过程.经过实际检测,按照本文所设计的智能汽车模型能够在规定的直行、S型、十字交叉路口、斜坡、直角弯等赛道上自助导航行使,速度能达到2m/s的速度,满足实际需求.另外基于本文所研究思想,可以在其他自动控制领域发挥作用,这也是文章的另外一个目的.参考文献:〔1〕卓晴,黄开胜,邵贝贝.学做智能车[M].北京:北航出版社,2007.〔2〕赵春燕,郑永果,王向葵.基于直方图的图像模糊增强算法[J].计算机工程,2005.〔3〕李忠海.图像直方图局部极值算法及其在边界检测中的应用[J].吉林大学学报,2003.〔4〕冈菩萨雷.数字图像处理[M].北京:电子工业出版社,2002.〔5〕吴怀宇.大学生智能汽车设计基础与实践[M].北京:电子工业出版社,2008.-全文完-。
线性CCD智能车自主导航系统设计本设计是一种基于线性CCD检测的智能车自主导航系统,采用蓝宙电子公司的MK60DN5127VIQ108N300单片机为控制核心,主要由电源模块、电机驱动模块、线性CCD、舵机以及反馈控制模块构成,实验表明,智能小车能很好地识别赛道信息,并能很快地作出判断,实现了自主转弯、过障碍等功能。
标签:智能汽车;自主导航;单片机;自主转弯;过障碍设计智能车所涉及的学科有机械设计、电子技术基础、数字信号处理、传感器技术、电路设计、C语言程序设计、单片机、自动控制原理等,因此智能小车是一个综合了很多学科的制作。
该设计包括硬件和软件两大方面,其中采集信号的模块是线性CCD,MK60DN5127VIQ108N300单片机对线性CCD采集的信号进行接收和处理,其中小车自主导航的依据就是单片机处理过的信号,从而能很好的控制小车转弯、前进、停止、加速、避障等,可以使智能车在赛道上进行自主寻迹。
1 方案论证1.1 为了降低小车在行驶过程中产生的震动以及震动对线性CCD的影响,经过查阅质料以及亲自的实践发现加固C车模底盘使它成为刚体的方法可以有效减少震动。
1.2 小车重心的确定,由于小车在转弯过障碍的时候容易发生侧翻。
为了防止小车侧翻把重心固定在底盘靠近车尾的地方,这样就可以增加小车的可控性。
1.3 测试小车的赛道比较光滑,小车在直的长赛道上加速行驶,突然遇到急转时弯易冲出赛道,为了防止小车冲出赛道可以打磨车轮胎,但是要注意力度,打磨过度轮胎就坏掉了,所以必须适当打磨,这种方法可以提高小车的灵敏度,同时能更好的驱动智能车加速。
1.4 电机驱动模块作为智能车设计最为重要的一环,需要特别可靠的方案来确保万无一失。
所以我们使用BTN7971芯片作为驱动芯片。
该芯片的稳定性高,对环境适应能力强且具有一定的抗干扰和自我保护能力,而且它还能提供良好的加速性能以及具备超强的散热能力,是作为电机驱动模块芯片的不二之选[2]。
基于CCD摄像头智能循迹小车的研究与开发冯谣【摘要】In this paper,in order to realize the tracking of the intelligent track car on the designated track,the hardware design,circuit design and control algorithm in the course of the design and development of the track car are de-scribed in detail in this paper.The vehicle obtains the current road condition by analyzing and processing the image infor-mation collected by the CCD camera,controls the traveling direction through the steering gear,and controls the driving of the track car through a closed-loop incremental PID control method.The experimental results show that the intelligent tracking car can achieve better tracking function in actual operation,performs well under different lighting conditions,and has strong anti-interference ability and stable operation.%为实现智能循迹小车在指定赛道上的循迹行驶,详细阐述了循迹车设计开发过程中的硬件设计,电路设计以及控制算法的研究.循迹车通过分析处理CCD摄像头采集到的图像信息获得当前道路情况,舵机进行行进方向的控制,闭环增量式PID控制方法进行驱动控制.结果表明,智能循迹小车在实际运行过程中能够较好的实现循迹功能,在不同的光照条件下,整车抗干扰能力较强,运行情况较为稳定.【期刊名称】《浙江交通职业技术学院学报》【年(卷),期】2018(019)001【总页数】5页(P16-20)【关键词】智能车;自动循迹;摄像头【作者】冯谣【作者单位】浙江交通职业技术学院,杭州311112【正文语种】中文【中图分类】U463.60 引言以“恩智浦杯”全国大学生智能车比赛为背景,以设计开发一辆基于CCD摄像头的智能循迹小车为目标,介绍了智能循迹小车在研究开发过程中的硬件设计与算法实现。
基于线性CCD的寻线智能车设计杨明达;杨舟;黄永霖【摘要】本设计以第八届“飞思卡尔”杯全国大学生智能车竞赛为背景,提出了一种根据线性 CCD采集图像引导直立小车循迹行驶的方案。
本文介绍了这一方案的基本思想,所依据的物理原理,并重点介绍在双速度控制算法下对转向及障碍问题的优化处理,并根据方案实际制作了小车。
实践证明该方案是可行的,并且效果较好。
%Taking the eighth“Freescale Cup”intelligent car competition as the background,the paper proposes an upright car tracking so-lution based on linear CCD image acquisition.This article describes the basic idea of the program,its physical principles,and it highlights the dual speed control algorithm optimized steering processing,and then the system actual produces the car under the program.Practice has proven that the scheme is feasible with excellent results.【期刊名称】《单片机与嵌入式系统应用》【年(卷),期】2014(000)004【总页数】3页(P73-75)【关键词】智能车;直立;速度控制;Kinetis K10;TSL1401CL【作者】杨明达;杨舟;黄永霖【作者单位】东北师范大学物理学院,长春 130024;东北师范大学物理学院,长春 130024;东北师范大学物理学院,长春 130024【正文语种】中文【中图分类】TP18引言以往的智能车竞赛分为光电组、摄像头组及电磁组。
摘要本文主要设计制作一辆基于线性CCD自主循迹行驶的智能车,采用飞思卡尔半导体公司生产的32位单片机MK60DN512VLQ10作为核心处理器,主要通过TSL1401线性CCD采集赛道的一维图像信息,反馈给单片机控制舵机转向,电机调速,使小车按照事先架设好的跑道自主行驶,并且能通过ST188红外对管识别出终点(跟边线垂直的黑线段)自动停车。
硬件系统由单片机模块,TSL1401线性CCD模块、电源管理模块、电机驱动模块、OLED人机交互模块、光电对管模块以及电机、舵机和编码器组成。
软件系统主要由IAR进行开发,控制算法主要采用PID控制。
关键词智能车;线性CCD;PIDAbstractThis paper mainly introduces the design about a smart car with automatic tracking function based on linear CCD.The control system uses the Freescale Semiconductor's 32-bit microcontroller MK60DN512VLQ10 as the core processor.The TSL1401 linear CCD acquires one-dimensional image information, which is feedbacked to The MCU.Then the MCU controls servo’s direction, motor’s speed, so the car can automatically drive in accordance with beforehand track,identify the end(the black line vertical with sideline) and stop automatically by the ST188. The hardware system includes a microcontroller module,a TSL1401 linear CCD module,a power management module, a motor drive module, two OLED modules, four photoelectric tube modules,a motor, a servo and a encoder. The software system is developed by IAR and the control algorithm mainly uses PID control.Key wordsSmart Car; Liner CCD; PID1.引言汽车行业的发展已经超过了100多年,自1980年以来,智能理论控制技术在交通运输工程中已经被越来越广泛的运用,智能汽车的概念在这一背景下也就相应产生和发展[1]。
随着科学技术与现代汽车工业的结合发展,两者的产物“智能汽车”能像机器人一样,可以自动地进行环境的感知,规划和决策的运行控制[2]。
智能车系统是一个综合多技术领域系统,其包含了自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多个学科专业[3]。
因此,对智能车技术的研究能够促进计算机技术、车辆控制理论、摄像头[4]等多传感器信息融合技术等技术的快速发展;可以提高车辆的控制能力和辅助驾驶水平,对优化交通设施,缓解和改善交通问题具有积极的意义;改善工业人员工作环境,提高安全系数,同时还可以提高工业的智能化水平,提高产量。
为人类的生产生活带来越来越多的便利,使人类的生活质量越来越高。
智能车最大的要求就是能够自动循迹,像全国“飞思卡尔”杯智能车比赛、瑞萨杯智能车比赛等比赛都是要求智能车能够自动循迹。
而光电传感器的选用在自动循迹智能车系统中更是一个关键的问题。
传统的红外对管,激光管在前瞻和稳定性方面都存在一定的缺陷[5],线性CCD是新兴的光电传感器,第八届全国飞思卡尔杯智能车比赛中就对TSL1401线性CCD传感器进行了第一次使用,与传统的红外对管,激光等光电传感器相比,线性CCD具有很多优点,尤其是在线性度和图像均匀性等方面,采集到的数据便于单片机处理。
实验表明,线性CCD的前瞻比较远,能达到1.2米左右。
随着对智能车辆速度增加的要求,需要跟踪处理越来越多路况,如路口,避障等。
对于以上的情况,线性CCD能够利用其本身的特点有效的予以解决,尤其是在对于智能车辆的提速问题上。
随着线性CCD技术的不断提高与发展,线性程度自然会持续提高,提取的图像信息会变得更加的稳定有效,前瞻会变得更宽更远,因此必定会加快推进智能车速度提高的进步[6]。
本智能车系统就是基于线性CCD为基础而设计的。
2. 设计方案思路2.1 单片机的选择方案一:采用传统的8位40引脚单片机STC89C52作为主控芯片,该MCU是台湾宏晶公司的产品,具有低功耗,高性能,编程简单等特点,应用在很多领域。
方案二:使用飞思卡尔半导体公司的32位144引脚单片机MK60DN512VLQ10作为主控芯片,该MCU外设资源多,运算速度快,精度高。
考虑到本次智能车系统设计有一定的复杂性,要求主控芯片带有AD,PWM,正交解码等功能,并且要用到的引脚数目比较多,因此本次设计选用了K60作为主控芯片。
2.2 电机驱动的选择方案一:使用2片BTN7971半桥芯片搭成一个全桥驱动电机,电路搭建简单,理论驱动电流达到50A,但是芯片容易发烫。
方案二:用4个MOS管LR7843构成H桥和一个MOS驱动芯片IRF2184驱动电机运转,虽然电路组建有点复杂,但是理论驱动电流能达到160A并且电路稳定不会发烫。
方案三:采用LN298电机驱动模块,电路简单,但是驱动电流只能达到2A,达不到理想驱动效果。
考虑到系统电路的稳定性,本次设计选用了方案二。
2.3 显示模块的选择方案一:使用常用的LCD1602作为液晶显示器,显示字母和数字比较方便,控制简单,成本低,整屏能显示16*2个字符,与单片机并口连接,接线引脚多。
方案二:使用LCD12864作为液晶显示器,自带中文字库,分辨率为128*64,与单片机并口连接,但是价格昂贵。
方案三:采用0.96寸OLED12864显示器,采用4线同步串行SPI接线方式,接线简单,高分辨率,为128*64,显示效果远远超过LCD[7]。
考虑到成本,电路接线,显示效果等因素,本次设计选用了方案三。
3.总体设计3.1系统设计要求本课题要求设计制作一套基于线性CCD的自主行驶小车系统。
本系统场地是在一个白色地面上用黑色绝缘胶带布置两根边线,两根边线内是小车要行驶的道路,小车能通过线性CCD识别出该道路,并能自主沿着道路前进,到达终点时会自动停止,终点为跟边线垂直的黑线段(黑色绝缘胶带)。
在道路中间含十字路口,要求能识别出该十字路口,并正确通过该十字路口。
3.2系统总体设计方案本系统的最小控制核心MCU为MK60DN512VLQ10;线性CCD用支架固定在小车中心离地30cm处,前瞻60cm(能准确提取边线且不失真),使用4个MOS管搭成H桥作为电机驱动模块[8],大大增加电机驱动能力;光电传感器模块由四个ST188光电对管构成,在车身底部“一”字排开,用以检测终点。
电源模块采用飞思卡尔的7.2V电池给电机供电,同时经TPS7350芯片输出5V稳压给CCD模块、编码器供电;经TL1963芯片输出6V稳压给舵机供电;经TPS7333芯片输出3.3V稳压给单片机、OLED模块供电。
TSL1401线性CCD采回的图像数据传递给单片机处理,单片机利用PID算法控制舵机转变方向,调节电机速度,从而完成小车智能循迹[9]。
系统由K60为最小控制核心模块、TSL1401线性CCD模块、电源管理模块、电机驱动模块、OLED12864液晶人机交互模块、ST188光电对管模块以及电机、舵机和编码器组成。
系统框图如图3-1所示。
图3-1系统框图系统各个模块功能设计如下:1、通过TSL1401线性CCD获取道路的一维图像信息(128个像素点的电压),然后给单片机进行数据处理;2、采用MK60DN512VLQ10单片机为主控芯片对外围电路进行实时控制;3、光电对管用以检测起跑线,到达终点后,控制停车;4、伺服舵机带动小车两前轮控制小车转向;5、电机驱动电路驱动直流电机带动小车两后轮运转;6、采用两片OLED12864显示屏,一片显示CCD采回的图像波形,另一片结合五向按键做人机交互界面,调节PID参数,节省多次下载程序的时间,大大提高调车效率;7、采用500线欧姆龙编码器反馈电机转速,精确控制小车速度,有效提高系统的稳定性。
4.硬件设计4.1飞思卡尔32位单片机MK60DN512VLQ10介绍及其最小系统本设计使用的MCU是飞思卡尔半导体公司生产的32位MK60DN512VLQ10单片机,是飞思卡尔公司推荐的K60系列的32位增强型单片机。
该芯片以飞思卡尔最新的闪存技术,并且具有功耗低,性能高,精度高等特点,特别是多路快速的16位模数转换(ADC)、数模转换(DAC)和可编程增益运放(PGA)等功能强大、高效率的信号转换,调节和控制模块。
K60还具有以太网,全功能USB、硬件加密和篡改检测功能,具有丰富的模拟通信,定时和控制外设,还包括单精度浮点型运算单元,NAND闪存控制器和DRAM控制器[10]。
本设计的MK60DN512VLQ10单片机的最小系统如图4-1所示。
图4-1 K60单片机最小系统4.2电源模块的设计本智能小车采用飞思卡尔公司的7.2V电池给RS540直流电机供电,除此之外,系统还需要6V、5V、3.3V、12V给系统其他模块供电。
4.2.16V稳压电源设计由于舵机需要用到6V电源给其供电,本次设计选用了德州仪器生产的TL1963A 电源管理芯片,可调输出电压范围为1.21V~20V,输出电流能达1.5A,驱动舵机的效果比较明显,其电路原理图如图4-2所示。
图4-2 6V 稳压电源原理图通过查询芯片的Datasheet 可知,TL1963A 的输出电压计算公式为⎪⎭⎫ ⎝⎛+=12121.1R R V V out ,因此电阻R1配1K ,R2配3.9K ,经计算V OUT =1.21*(1+3.9/1)=5.929V ≈6V 。
4.2.2 5V 稳压电源设计为了提高电池的使用时间,通常需要调节压差(输入输出电压差小),使用功耗小(静态电流小),还有就是能够有欠压信号使单片机复位,德州仪器生产的TPS73XX 系列就符合这一功能的低压差稳压器。