摄像头组 华东理工Suprise队技术报告(摄像头) - 图文 联系客服

发布时间 : 星期三 文章摄像头组 华东理工Suprise队技术报告(摄像头) - 图文更新完毕开始阅读32be9e2a2af90242a895e5bd

第四章 系统硬件设计

4.3直流电机驱动电路

用两片BTS7960构成的H桥芯片作为电机的驱动电路,通过4和8输出的PWM信号来控制电机。如图4.4所示。

图4.4 H桥工作原理图

为了更快的减速,我们考虑了利用电机的倒转进行减速的过程,也就是:直流电机的反转刹车。当智能车需要刹车的时候,可以适当的进行倒转,来达到快速减速的过程。

4.4转速测量电路

为了使得模型车能够平稳地沿着赛道运行,除了控制前轮转向外,还需要控制小车的车速,使模型车在急转弯时速度不至于过快而冲出赛道,同时也使小车在直线段时以较快的速度行驶。所以要时刻把握当前小车的速度,并根据小车所处的位置来实时调整小车的速度。通过速度检测,可以消除或降低电池电压、电机传动摩擦力、道路摩擦力等的影响,使得小车在赛道上运行得更精确。

11

第七届全国大学生智能汽车邀请赛技术报告

图4.5 测速

12

第五章 软件设计

为了体现程序的系统性和连贯性,本设计把程序分成各个模块进行分别处理,而各模块也有相应的数据接口,方便其他模块调用,这样,系统条理显得清晰。这些模块的设计与实现将在下面进行详细阐述。

5.1系统软件总体结构

该系统的软件结构主要分为:系统初始化模块、对CMOS采集数据的处理模块、速度控制和反馈处理模块、路径识别模块(对电机和舵机的控制)等,再有为了便于系统的调试,本系统设计了相关的调试函数,主要包括串口和定时模块。图5.1是本系统的总体结构图。

主程序LED闪烁初始化方案拨码选择开启中断For(; ;)

图5.1 系统软件总体结构框图

由上图可知,本程序运行的开始,须进行对系统的初始化。通过初始化的设置,系统才能按照预先的想法运行;接着,CMOS传感器采集数据,经过转

13

第七届全国大学生智能汽车邀请赛技术报告

换和相应处理,得出当前路径信息;同时,电机测速模块测得模型车当前的运行速度,反馈给系统;最后,路径识别系统综合利用当前路径信息和当前速度值作出相应的处理,控制电机和舵机以合适的方式运行。

5.2初始化模块

下面只介绍部分重要的初始化函数。 5.2.1时钟初始化

单片机的晶振是16MHz,MC9S12XS128在时钟初始化后可以通过锁相环将系统时钟系统时钟提高到80MHz,这里就用到了一些寄存器中的某些位,倍频公式如下:

BUS_CLK ?2?OSCCLK_VALUE??REFDV_VALUE?1??SYNR_VALUE?1?公式1

其中,

OSCCLK_VALUE——系统的外部晶振;

REFDV_VALUE——系统时钟分频系数,在初始化中,它的值为3; SYNR_VALUE——倍频系数,它的值为3。

而SYNR=SYNR_VALUE,REFDV=REFDV_VALUE,SYNR、REFDV就是寄存器中的对应位。 5.2.2串口初始化

可以看到,不论8位、16位还是32位单片机的最小系统都是通过异步串行口与人沟通的。使用串行通信接口SCI(Serial Communication Interface)通信是计算机与人对话最传统、最基本的方法,异步通信接口也成为通用异步接受器/发送器UART(Universal Asynchronous Receiver/Tansmitter)。

为了便于调试,本系统利用串口通信接口SCI实现数据的传输。

串口部分程序主要是初始化各寄存器,其中包括设置波特率、数据格式、接受发送功能使能、设置接受模式等。

串口初始化函数:SCI_Init(uchar BUS_CLK,unsigned long BR),它有两个输入变量,其中BUS_CLK是系统的时钟频率,BR为波特率。通过此函数可直接

14