基于闭环控制算法和PID优化算法的智能小车软件系统设计

基于闭环控制算法和PID优化算法的智能小车软件系统设计

ID:44050417

大小:378.73 KB

页数:19页

时间:2019-10-18

基于闭环控制算法和PID优化算法的智能小车软件系统设计_第1页
基于闭环控制算法和PID优化算法的智能小车软件系统设计_第2页
基于闭环控制算法和PID优化算法的智能小车软件系统设计_第3页
基于闭环控制算法和PID优化算法的智能小车软件系统设计_第4页
基于闭环控制算法和PID优化算法的智能小车软件系统设计_第5页
资源描述:

《基于闭环控制算法和PID优化算法的智能小车软件系统设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于闭环控制算法和PID优化算法的智能小车软件系统设计摘要:在全国大学生“飞思卡尔”杯智能汽车竞赛的背景下,设计出一种能够自动识别路径、跟踪赛道双边引导线的智能小车软件控制系统。智能小车以飞思卡尔(Freescale)公司的MC9S12XS128为检测和控制核心,根据不同的环境状况动态确定黑白二值化阈值Z后,对摄像头采集到的图像进行处理,从而准确判断不同类型的赛道,进一步控制舵机和电机。使用舵机转向闭环控制算法和电机速度闭环控制算法,结合经典的PID控制算法,实现直道加速、弯道减速的优化。智能小车最终可以在黑色双边引导线的

2、白色背景赛道上自动识别路径行驶。关键词:智能小车;MC9S12XS128;图像处理;闭环控制;PID控制1弓I言(Introduction)智能车控制系统的设计以汽车电子为背景,涵盖自动控制、模式识别、传感技术、计算机、机械与汽车工程等多门学科,是一项新兴的综合性技术。智能车系统是智能汽车的迷你版本,二者在信息提取及处理、控制系统构成和控制方案整定方面有诸多相似之处,可以说智能车系统是智能汽车良好的实验平台。智能车系统主要包括三个大部分,分别为车模总体机械结构、硕件电路系统、软件算法控制系统。如果说硬件是智能车行驶的基础,

3、那么程序算法就是灵魂。高效的程序则是智能车高速平稳自动寻迹的基础。1系统总体设计(Generaldesignofsystem)2.1概述智能小车控制系统采用飞思卡尔公司的16位单片机MC9S12XS128为检测和控制核心⑴。以COMS数字摄像头OV7620为路径检测传感器,以欧姆龙500线编码器为速度检测传感器,根据摄像头检测到的赛道信息[2],以及编码器采集到的小车速度信息,基于XS128单片机通过智能小车软件控制系统对小车进行舵机转向和电机驱动的控制,使智能车系统达到所需的稳定性及快速性要求,从而实现小车的智能化行驶,

4、如图1所示。图1智能车控制系统Fig.lControlsystemofsmartcar2.1.1需求规定(1)在小车功能方面最终完成的基于摄像头传感器的智能小车,要能够做到在此软件控制系统的支撑下,完成按规则绕赛道运行一周的任务。在准确识别赛道并稳定运行一周的基础上[3],期望小车的速度越快越好,即完成比赛的用时越短越好。(2)在小车性能方面第一,要求智能小车软件控制系统应具有良好的运行效率,行驶速度尽可能快,能够快速准确判断出不同类型的弯道,并及时躲避在赛道上的障碍物;第二,应具有良好的灵活性,使行驶速度、自身调整角度都

5、可以灵活改变;第三,应提供良好的测试模式,使设计人员可以方便的观察、调整的小车运行模式;第四,应具有良好的可扩展性,从而为日后升级系统提供方便。2.1.2运行环境表1运行环境Tab.1Ruiuiiiigenviroiinieiit内容操作系统Wiiidows8.Windows10开发环境嵌人式系统开发环境:V5.1版本的CodtWarriorIDE编程语言嵌入式C语言调试工具蓝牙通值模块、USB转TTL串口模块、BDM调试器2.2系统各模块设计2.2.1棊于核心板MC9S12XS128的主程序(main函数)设计(SJR0

6、2主程序流程图Fig.2Mainprogramflowchart(2)定义PLL_lnit():初始化锁相环函数;SCI_lnit():串口初始化函数;PIT_lnit():PIT定时器中断初始化函数;PWM」nit():脉冲宽度调试模块初始化函数;PH」nit():初始化单片机PH口函数(用于接收编码器测速信息);OV7620_lnit():初始化摄像头函数(用于OV7620信息采集)。2.2.2图像采集模块图3图像采集模块流程图Fig.3Imagecollectionmoduleflowchart(2)定义存储原始图像

7、矩阵的二维数组:lmage_Data[ROW][LIN]。(3)解释摄像头是智能车的眼睛,我们将采用数字摄像头进行赛道釆集,在采集时,我们利用行、场中断进行数据采集。在每次捕捉到40个行中断之后,触发一次场屮断,其中,在行屮断的屮断子函数屮利用单片机读出图像数据。由于单片机的处理能力有限,所以不能对摄像头的一场图像中所有行的所有像素点都进行处理,但为了获得理想的赛道信息和足够的前瞻量,需要通过多次实验,需要选择出合适的行和每一行中需要采集的像素点数。最终,将所采集的数据存在一个二维数组中,得到原始的图像矩阵,以便后续处理。

8、2.2.3图像处理模块图4图像处理模块流程Fig.4Imageprocessionmoduleflowchart(2)定义BEST_THRESHOLD(办确定最佳黑白二值化阈值函数。(2)解释在图像处理模块,为了能够做到识别不同光线环境下的赛道,首先需要确定一个合适的黑白二值化阈值,确定阈值后,在保持原

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。