MK60FN信标智能车控制系统软件设计+程序(2)

图1-1 比赛现场图 智能车实物图如图1-2所示,整个智能车系统是构建在官方提供的车模的基础上(包括车模本身、电池、舵机),自制电路板并焊接,改装


图1-1  比赛现场图

智能车实物图如图1-2所示,整个智能车系统是构建在官方提供的车模的基础上(包括车模本身、电池、舵机),自制电路板并焊接,改装车体的机械结构,以及设计软件系统,最终形成一套完整的智能车系统。

图1-2  智能车实物图

1.2课题研究的内容

要求智能车开始位于发车区域内,并且所有的信标都是不亮的。开始后,信标系统自动会点亮第一个信标,点亮的信标会以10Hz的频率发送红光和40KHz的频率发送红外光。要求智能车能够识别信标的位置并做定向运动。当车模上放置的磁标进入信标周围的感应线圈后,信标系统会主动切换点亮下一个灯,车模前往第二个点亮的灯。此过程将会进行10次左右。

在此过程中,要求车模能够避免冲撞信标,以免造成车模行动受阻甚至损坏。比赛区域内随机安放5个左右的信标灯,它们统一由比赛计时控制系统控制,比赛场地示意图如图1-3所示。

图1-3  比赛场地示意图

需要根据已有的硬件资源,包括单片机、摄像头、红外避障、液晶显示屏以及其他电路资源,设计出稳定可靠的系统软件。

系统软件需要实现对摄像头数据的采集功能,之后对采集到的图像进行滤波以及二值化的处理,利用寻找信标位置的算法求得信标在摄像头视野中的坐标位置,然后根据信标的坐标位置,控制舵机的转向及电机的转速。通过编码器获取实时车速,实现对电机的闭环控制,并且在寻找信标的过程中实现避障功能。

要求软件系统稳定可靠,在保证可靠性的前提下尽量用最精简的代码完成系统所需的功能。

1.3论文的结构安排

论文主要由5个章节组成,主要内容及结构安排如下:

第1章,绪论,介绍课题的背景、研究意义和主要研究内容。

第2章,系统总体设计,对整个系统的设计方案做总体的介绍,包括硬件系统组成以及软件系统组成。

第3章,硬件系统设计,介绍了设计中所使用的相关硬件电路,包括单片机系统、电源稳压模块、电机驱动模块、摄像头模块等。

第4章,软件系统设计,介绍了软件设计中的系统软件流程图,具体介绍了图像采集、图像滤波、二值化、信标位置提取、舵机控制、电机控制的程序设计思想。

第5章,系统的开发与调试,在IAR开发环境中对系统进行功能调试,包括系统软件的在线调试,以及借助蓝牙模块,实现了无线调试的功能。

结束语,总结设计,得出结论,总结设计收获和体会,同时指出整个设计工作的不足之处和需要改进的地方。

第二章  系统总体设计

2.1整体方案设计

课题要求设计一套信标智能车系统,通过摄像头对场地中的信标灯位置的采集,经过算法处理后,对智能车的方向以及速度控制,实现自主熄灭信标灯的功能。根据课题设计的要求和课题目标,制定出了系统的设计方案,并通过比较验证,选择合适的电路。最终确定采用基于ARM M4内核的MK60FN单片机作为主控制器,使用CMOS摄像头采集场地中的信标灯信息,通过舵机控制方向以及电机的转速控制的组合,实现智能车自主寻找熄灭信标灯,并且用液晶屏显示一些关键的信息。

通过MK60FN单片机为主控核心,实现对各个模块的控制。单片机读取摄像头采集到的数据,存进二维数组,经过对图像的处理与分析之后,求得信标所在位置的坐标。然后根据X轴坐标计算出方向,根据Y轴坐标计算出距离,通过PID计算之后,控制舵机的转角和电机的转速,并且根据编码器对电机实时转速的测量,实现对电机的闭环控制作用。