《南阳理工学院光电组技术报告.doc》由会员分享,可在线阅读,更多相关《南阳理工学院光电组技术报告.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第八届“飞思卡尔”杯全国大学生智能汽车竞赛技术报告关于直立平衡和智能循迹的小车控制系统研究摘 要:本文介绍了南工2队为第八届“飞思卡尔”杯全国大学生智能汽车邀请赛而设计的智能车系统,详细介绍了该智能车控制系统的软、硬件结构及其开发流程。该智能车系统以k60作为整个系统信息处理和控制命令的核心,运用陀螺仪和三轴加速度传感器检测小车直立的状态,在此信息上进一步处理以控制电机的转向和速度,通过实时比较控制算法实现闭环反馈控制。测试表明,该智能车能够很好地进行站立、加减速和过障碍,可以实现对应于不同形状的道路予以相应的控制策略,能够快速稳定地完成整个赛道的行程。关键词:K60;三轴加速度;陀螺仪;CC
2、D传感器;编码器;闭环反馈控制;速度控制;PID目 录第一章 引言1.1 智能车的发展历史.1 1.2 智能车竞赛内容和主要研究 1第二章 总体方案设计.22.1 机械方面的总体设计.22.2 硬件总体设计.22.3 软件总体设计. .3第三章 赛车车体机械结构设计33.1 编码器的安装.33.2 CCD支架的安装43.3 主控板驱动电路板的安装53.4 加速度陀螺仪板的安装.5第四章 赛车硬件系统设计.64.1 核心板的设计.64.2 电源模块的设计.64.3 电机驱动模块的设计.74.4 输入模块的设计.74.5 光电编码器的安装.74.6 CCD的安装7第五章 系统软件设计.8 5.1
3、寻起跑线的软件设计.85.2 速度控制策略.8 5.2.1 速度PID控制.8 5.2.2 速度改变策略9 5.2.3 小车转向的算法实现95.3 障碍识别策略.95.4 坡度识别策略.95.5起跑线识别策略.10 5.6抗干扰性滤波算法.10第六章 开发工具和调试说明106.1 开发工具的说明.106.2 调试过程.10第七章 模型车主要参数.11第八章 结论.12参考文献.14附录.15 第一章 引言 1.1 智能车的发展历史智能车的研究始于20世纪50年代初美国 Barrett Electric 公司开发出的世界上第一台自动引导车辆系统(Automated Guided Vehicle
4、System,AGVS)。1974年,瑞典的Volvo Kalmar轿车装配工厂与Schiinder-Digitron公司合作,研制出一种可装载轿车车体的AGVS,并由多台该种AGVS组成了汽车装配线,从而取消了传统应用的拖车及叉车等运输工具。20世纪80年代,伴随着与机器人技术密集相关的计算机、电子通信技术的飞速发展,国外掀起智能机器人研究热潮,其中各种具有广泛应用前景和军用价值的移动式机器人受到西方各国的普遍关注。全国大学生智能汽车竞赛是在统一汽车模型平台上,使用飞思卡尔半导体公司的8位、16位微控制器作为核心控制模块,通过增加道路传感器、设计电机驱动电路、编写相应软件以及装配模型车,制作
5、一个能够自主识别道路的模型汽车,按照规定路线行进,以完成时间最短者为优胜。该竞赛涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的大学生课外科技创意性比赛。1.2 智能车竞赛内容和主要研究全国大学生智能汽车竞赛已经成功举办了七届,比赛规模不断扩大、比赛成绩不断提高。该竞赛涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的大学生课外科技创意性比赛。通过比赛培养大学生的综合知识运用能力、基本工程实践能力和创新意识,激发大学生从事科学研究与探索的兴趣和潜能,倡导理论联系实际、求真务实的学风和团队协作的人文精神。赛车采用飞思卡尔32位微控制器MK60作为核心
6、控制单元,由学生自主构思控制方案及系统设计,包括传感器信号采集处理、控制算法及执行、动力电机驱动、直立转向控制等,完成智能车工程制作及调试。为完成本系统,主要做得内容分为以下几部分:(1)对车模机械部分进行详细的分析和调整;(2)分析控制电路各模块的要求,计算出各模块器件的参数,设计完成硬件控制电路;(3)通过CCD传感器采集赛道信息;(4)对数据进行分析,设计控制算法并编写控制程序。第一章 总体方案设计 赛车的性能主要由机械结构、硬件和软件三部分决定。机械结构是赛车能够行驶的根本,赛车有了一定的机械结构,再加上相应的硬件和软件,就构成了一个完整的系统。2.1机械方面的总体设计智能车的机械调整
7、作为最基础的硬件其重要性是首位的,由于本届的车模只用后轮保持直立行走,车模没有舵机控制,所以机械结构比较简单,可以改动的地方不多,以往有关于调整车模的经验对于今年的比赛来说也是至关重要的,所以我们首先仔细阅读了往年的技术报告作为参考,我们车模的机械调整主要分为:编码器的安装;CCD支架的安装;CCD位置的调整,主控板驱动电路板的安装固定;加速度陀螺仪板的安装调整。2.2 硬件总体设计1)主控使用飞思卡尔公司的144引脚的Mk60芯片,因为其引脚IO多,可以控制的外围较多的外围设备。系统控制结构图如图2.1所示。图2.1 系统控制结构图2)电源模块,通过7.2伏的总电源根据不同的模块采用不同的稳
8、压方案,用到了线性稳压,由于7.2V较低我们采用低压差线性稳压。单片机3.3V供电用线性稳压;CCD采用5V供电,采用低压差线性稳压;3)电机驱动,由于电机电流较大,工作电流3-5A,所以电机驱动模块采用BTS7970和H桥配合4)输入模块采用按键调节5)通过CCD采集赛道上128个像素点,对于不同点的值进行处理,可以检测赛道的情况6)通过三轴加速度和陀螺仪对角度实时采集处理,使小车保持直立以及加减速此外还有码盘等测速器件。2.3 软件总体设计软件控制分为直立控制、速度控制和转向控制。其中直立闭环控制如图2.2所示,速度闭环控制如图2.3所示,转向闭环如图2.4所示。图2.2角度控制图2.3
9、速度控制图2.4 转向控制软件除了三个闭环还包括各种控制策略。策略应用简单的根据寻线来改变速度值,从而良好的解决十字交叉、起跑线、障碍等问题,保证赛车的全局稳定运行。 第三章 赛车车体机械结构设计3.1编码器的安装作为反馈的提供者,编码器安装的精度直接影响到测速的准确和对速度控制的准确度。今年的车模所留下的安装编码器的空间有限,所以对编码器的选型提出了更高的要求。最终我们选择了龙邱产的光电编码盘100p/r的增量型编码器,此光电编码器比一般的编码器灵敏度精确度要高,但是由于没有齿轮传动部分,所以不便于安装,鉴于以上情况,我们将螺丝柱粘在电机齿轮上,在螺丝柱上固定编码盘,然后在车架上固定红外计数
10、器,来记录码盘转速。编码器的安装如图3.1所示。 图3.1 编码器的安装3.2CCD支架的安装在测试CCD时,发现CCD视角较小,最佳可视距离较大,但车模的高度不够高,为了让CCD扫描视线和赛道夹角尽量的大点,使CCD处于最佳采集位置,给车模加装了碳纤竿,加高了CCD,效果比较理想。CCD安装如图3.2所示。 图3.2 CCD的安装3.3主控驱动电路板的安装固定由于车底盘空间较小,而且空间比较复杂,如果想完全放到底盘上难度较大,所以将电机主控电路和驱动电路分开放置,便于合理利用小车空间安装。将其放到了电机的上面。虽然提高了重心但经过再三观察,由于电路板太大,再加上降低重心,只能将其放到电机上方
11、,不过接口等方便明了,提高了我们的调试效率。主控驱动电路的PCB如图3.3所示。图3.3 主控驱动电路的PCB图3.4 加速度陀螺仪板的安装加速度陀螺仪主要用于检测小车倾角,放置的位置对于所测数据有很大的影响,所以放置时要将其放置水平。放置位置如图3.4所示。图3.4 陀螺仪板的安装第四章 赛车硬件系统设计4.1 核心板的设计32位Kinetis系列列单片机MK60是硬件系统的核心部分,用于赛车的整体控制,包括信息的采集处理和输出,其最小系统如图4.1所示。图4.1 MK60最小系统4.2 电源模块的设计系统的正常工作要有稳定可靠的电源保障。系统中需要的电压值主要有:7V,5V,3.3三种。7
12、V电压主要为电池接入口处,一路为直接为电机驱动供电,另一路经过两片LM2940芯片分别产生两个5V电压值。5V电压有两路,其中一路为光电码盘供电,另一路为1117供电,为主控、CCD、三轴加速度陀螺仪提供3.3V电压,。这种两路5V供电的设计,可以减小直流电机开启瞬间电压变化影响,避免了单片机因电压值减小引起的复位及CCD接受电压变化。电源电路如图4.2所示。 图4.2 电源电路4.3 电机驱动模块的设计电机驱动模块采用BTS7970和H桥配合:74HC244驱动MOS管,MOS管驱动电机,这样不但满足电机驱动需求,而且驱动散热好,避免了温漂带来的影响。电机驱动通过IN1和IN2引脚输入PWM
13、波形,以此调节驱动OUT1,OUT2引脚输出电压,调节电机转动速度,以及正反转和拐弯,达到不同的控制效果。电机驱动板如图4.3所示。图4.3 电机驱动板4.4 输入模块的设计输入采用按键,加防抖电容,编程简单,通过给按键设置不同的功能,用于设置不同的参数,以此来更改智能车行车模式,适应各种情况。4.5 光电编码器的安装光电编码器,反馈当前速度,使整个系统形成一个闭环系统。我们应用的是龙邱的光电编码器,由于两路电机分别控制,所以要用两个光电编码器。该编码器电源电压为3.3V-5V,接线方式:红色电源线,黑色接地线,两根黄色为信号线。我们一组黄色线接单片机P66和P81口。另一组黄色信号线接P73
14、和P88口捕捉信号。4.6 CCD的安装 CCD应采用官方规定的Texas Advanced Optoelectronic Solution公司的TSL1401系列的线性CCD。从龙邱和蓝宙购买的CCD由于都已经做成了成品,只需引出接口接到单片机就可以了,使用方便,拍摄的线阵还是比较清晰的。本次我们用的CCD接口如图4.4所示。 图4.4 CCD接口电路第五章 系统软件设计5.1寻起跑线的软件设计由于CCD可以识别黑色赛道线,通过对比可以得到黑色线的宽度,以及位置,由此情况来检测起跑线。当CCD检测到起跑线部分时,若按照正常的检测赛道算法此时得到的左右偏差近似相等且都很小。左右偏差相等能保证车
15、在运行方向上不会出现抖动现象,然后抓住其都很小这一特征,再加上方向控制很小、CCD检测到左右各有特定的10个点为黑等条件。当同事满足时则认为赛车检测到了起跑线,运行起跑线处理程序。采用2个CCD传感器对赛道进行信息采集,上下CCD对赛道的可视距离不同,上边的CCD可视距离近,主要进行路况检测和转向控制;下边的CCD可视距离远,主要进行赛道类型判断和加减速判断。当远距CCD检测到弯道或障碍时,可以及时提前减速,安全通过,当遇到直道时,可以加速通过。同时双CCD可以加大赛道起跑线的检测率。两个CCD采用不同的阈值和阈值算法,采集和处理同时进行互不影响。大大加强了整车的稳定运行。5.2 速度控制策略
16、5.2.1 速度PID控制速度控制采用增量式PID算法,所谓增量式PID是指数字控制器的输出只是控制量的增量uk. 。当执行机构需要的控制量是增量,而不是位置量的绝对数值时,可以使用增量式PID控制算法进行控制。其中5.2.2 速度改变策略为了使得小车跑的平均速度最大,不能在全程使用一个速度。在转弯的时候应当适当的减速,在直道的时候加速。怎么识别直道和弯道。我们可以根据CCD采集赛道黑白边界不同来识别,从而及时增减速度。Speed_Curr = (Right_Speed + Left_Speed) / 2;速度值等于左轮和右轮的速度值得平均值。5.2.3小车转向的算法实现直立车的转向是通过两个
17、轮子的转速差来实现的,故控制转向就是控制两个轮子的速度差。ZUO=ccd_move_aver_filt(DL_DB,Dist_Left ,DIRE_NC);YOU=ccd_move_aver_filt(DR_DB,Dist_Right,DIRE_NC);ee = (int)(ZUO - YOU);偏差经过PD运算后得到转向控制的改变量。Dire_Out = (ee*DIRE_P+gyro_hor*DIRE_D)*0.1; 5.3 障碍识别策略在小车行进过程中,CCD不断地进行检测,当CCD采集到的数据,全部是黑色部分时,就判断为障碍,从而及时减速,安全通过。5.4 坡度识别策略车在上坡的时候,
18、CCD采集数据会出现盲区,数据采集不稳定,通过处理将其按直道行走,并通过三轴加速度计和陀螺仪检测其下坡,从而减速行驶。5.5起跑线识别策略由于CCD的前瞻较大,通过CCD采集黑道的情况来作为起跑线的识别,当检测到中间有间断的黑道时起跑线如图所示,CCD会看到黑白间隔的以此进行判定。起跑线示意图如图5.1所示。 图5.1 起跑线示意图5.6抗干扰性滤波算法对于CCD传感器,跑道外的干扰不可避免。为了避免干扰,我们减少了扫描的宽度。即下一时刻的扫描范围是以这一时刻的寻线结果有关。第六章 开发工具及调试说明6.1 开发工具的说明程序的开发是IAR下进行的,包括源程序的编写、编译和链接,并最终生成可执
19、行文件。IAR是IARSystems 公司为ARM 微处理器开发的一个集成开发环境(下面简称IAR EWARM)。比较其他的ARM 开发环境,IAR EWARM 具有入门容易、使用方便和代码紧凑等特点EWARM 中包含一个全软件的模拟程序(simulator)。用户不需要任何硬件支持就可以模拟各种ARM 内核、外部设备甚至中断的软件运行环境。从中可以了解和评估IAR EWARM 的功能和使用方。6.2 调试过程主要是用无线串口,将速度值发到监控板上边,在监控版上实时观看速度的情况,其界面如图6.1所示。图6.1 系统监控界面对CCD数据的观察,用蓝宙电子科技公司的CCD View软件,如图6.
20、2所示。图6.2 CCD View软件截图硬件电路的制作采用的是Altium Designer6 v6.7,v6.8,Summer08电子电路原理图,PCB图设计环境。第七章 智能车的主要参数本智能车的外形参数如表7.1所示。表7.1 智能车外形参数项目参数路径检测方法(赛题组)光电检测车模几何尺寸(长、宽、高)(毫米)162*248*475mm车模轴距/轮距(毫米)85mm/162mm车模平均电流(匀速行驶)(毫安)1100mA电路电容总量(微法)200uf传感器种类及个数4种6个新增加伺服电机个数0个赛道信息检测空间精度(毫米)15mm赛道信息检测频率(次/秒)200次/秒主要集成电路种类
21、/数量电源电路、电机驱动电路、MCU最小系统、CCD传感器一个,陀螺仪,加速度计等车模重量(带有电池)(千克)1.5Kg第八章 结论本报告详细介绍了我们为第八届全国大学生智能车比赛所做的准备及系统设计方案,包括激光传感器的设计思想、舵机转角方案以及速度控制策略等。分析整个系统模型,我们在车模硬件和软件上都有所创新。系统上主要特色有:机械方面:分析车体前后轮的机械特点,综合考虑程序的整体效果,确定适合的角度;经过实际测验传感器的各种排列,比较效果后,确定了CCD的高度和视角。电路方面:单片机主控板是我们自己设计,能够满足应用要求及合理的减少所占空间。主板以模块形式分类:MK60主控模块、电源模块
22、、电机驱动模块、传感器模块、速度检测模块、辅助模块和起连接作用的主板等。算法方面:程序采用C语言编程,利用IAR开发工具调试,经过小组的不断讨论、改进,终于确定了比较稳定精确的方案。这套方案可以结合赛道的各种路况信息调整车体速度和转角,保证最短时间跑完全程。总观我们车模制作的过程,还有几方面有待改进的地方:单片最小系统版引脚全部引出,但实际应用没有全部用到,为减少其所占面积,可以只指引出应用到的引脚;传感器前瞻有待提高,CCD仍可以有更大前瞻,有利于系统的整体设计。总结整个比赛的过程,我们在各个环节都付出了最大的努力,做了最好的准备。比赛前期精心制作机械结构,调试硬件电路,学习软件知识;后期不
23、分昼夜的进行实际调试。我们坚信,在努力的付出后一定会有回报。通过此次比赛,不仅锻炼了我们的软硬件知识,而且培养了我们的创新能力和团队精神。这份经历将是我们人生的宝贵财富。参考文献1 邵贝贝. 嵌入式实时操作系统LCOS-(第2版)M. 北京清华大学出版社2004 2 邵贝贝. 单片机嵌入式应用的在线开发方法M北京清华大学出版社2004 3 王晓明. 电动机的单片机控制M北京. 北京航空航天大学出版社2002 4 童诗白,华成英模拟电子技术基础M北京. 高等教育出版社2000 5 沈长生常用电子元器件使用一读通M北京. 人民邮电出版社2004 6 宗光华机器人的创意设计与实践M北京. 北京航空航天大学出版社2004 7 张伟等Protel DXP高级应用M北京. 人民邮电出版社2002附 录源程序代码:附录A:#include common.h#include outputdata.h#define GPIO_PIN(x) (1)90)