欢迎来到天天文库
浏览记录
ID:59628122
大小:12.97 KB
页数:5页
时间:2020-11-16
《论智能车设计.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、论智能车设计:智能车设计报告 摘?要:本设计以MC9S12XS128作为唯一的微控制器,进行数据的采集处理和电机、舵机的控制;采用CMOS摄像头为核心路径识别传感器,实现黑线的提取并路径的判别;以基于BTS7960的设计作为电机驱动,实现电机的稳定控制;针对车模的双电机后轮分别驱动模式,我们采用了力求精确的双光电编码盘分别进行速度的测量以及控制,实现了此动力控制系统的闭环控制,更好的满足了系统设计中差速控制的需要。 关键字:摄像头,智能车,飞思卡尔 一.车模机械改装 优良的机械性能是竞速比赛车模系统的基本,它直接影响着参赛车模的各项运动性能指标,更关系到整个系统的稳
2、定。作为整个控制系统的基础至关重要。 车模机械调整思想: 车模的机械结构调整应该遵循以下几个原则: 第一,可靠。车模在调试中难免会有机械磨损,长此以往,会对整个车模的结构稳定造成影响。因此,车模在机械改装时应该注意细节,排除可能的机械隐患,尽可能的降低设计不合理带来的故障。 第二,简洁。复杂的机械结构形式适应一定的技术环境。但是针对车模来说,本身的机械结构无需特别复杂。简单的机械结构更有利于机械的维护,为赛车减轻了重量。 第三,严谨。机械的安装需要恪守严谨的态度和技术。稍微的失误或者错位都会导致机械部件的磨损和性能的发挥 二.系统的硬件组成 本智能车系统由以下
3、几部分硬件单元组成:CMOS摄像头模块,mc9s12单片机最小系统板,电机驱动模块,转向舵机,测速模块。 运行过程大致如下: 小车上电后,单片机运行初始化代码,从摄像头读取赛道图像信息,存入单片机内存,根据编写的代码处理图像,提取引导黑线,由此控制舵机,进而控制小车转向。同时,测速模块时刻测速,单片机定时读取编码器的脉冲计数数值,通过速度pid运算,输出速度控制信号,控制电机驱动模块控制电机运行,从而实现速度控制。 3.图像采集 由于本智能车采用ov7620数字传感器,使用相对简单,单片机根据摄像头的场中断和行中断信号,来转存灰度值。 每当有场中断信号,即表示为新
4、的一幅图像,之后每有一个行中断信号表明是新的一行的开始。由此原理,将摄像头采集的八位灰度信息存入单片机内存的二位数组,就是采集到的图像信息。 由于单片机内存有限,我们选择的是100*40的二维数组。 4.数据处理 提取黑线的思想比较简单,求取二维数组内所有像素点的最大值和最小值,取平均值,作为阈值,比较二维数组内各个像素点与阈值的大小,初步确定黑与白,之后,再通过一系列算法,提取出黑线。 5.速度控制 我们的速度控制思路有两个,一是判断赛道类型,根据不同的赛道类型,给不同的速度;二是根据前方赛道弯曲程度和黑线提取的远度来给定速度。使用时,二者结合。 速度的调整是
5、通过经典的增量式pid实现,具体公式详见计算机控制系统相关书籍。 6.舵机控制 舵机的控制是通过舵机pid公式计算得出,主要是通过比例环节实现,偏差的主要是各行的黑线坐标位置与期望的黑线坐标位置作比较,相减得到的有符号数值就是偏差error,带入经典pid算式,经过调试,即可用于舵机控制信号。 7.测速模块 测速模块为光电编码器。单片机通过定时器产生20ms的定时中断,每20ms取一次编码器脉冲累加值,从而得到一个与速度成比例的值。 8.电机驱动 电机驱动为bts7960芯片构建的H桥,具体电路请自己查找。 三.控制代码 由于篇幅有限,简单举一个速度pid的
6、例子,具体完整代码见备注。 voidspeed_pid {INT16SPWM_temp; floatKpp=;?INT8UKi=2,Kd=2; error=std_speed-curr_speed; iferror=0; PWM_temp=PWMDTY23+Kpp*+Ki*error+Kd*; ifPWM_temp=500; PWMDTY23=PWM_temp; pre_error=last_error; last_error=error; } 四.结束语 本次做智能车,颇有感触。该智能车以单片机为控制核心,集中采集各类传感器采集到的信息,处理之后
7、,发出控制信号,控制各种执行部件,做出动作。是一个简单的自动控制系统,具有很好的学习实践价值,收获颇大。
此文档下载收益归作者所有