基于stm32的自主颜色区块识别行驶的智能小车设计(附件)【字数:8084】

摘 要本论文旨在设计一款以STM32F103RCT6为主控板的自动行驶小车,通过摄像头识别颜色区域并智能寻找路径并修正小车姿态。在如今工业生产、智能家居以及服务行业的机器人正在逐步进入人们的视线,越来越需要更加智能的机器人,各种环境及任务要求机器人可以识别不同的行驶区域,并完成相应的路程规划。而本论文设计了一款可以通过摄像头OV7670进行图像识别的智能小车,通过摄像头,STM32主控芯片可以判断小车行驶的区域颜色,并且分析小车所处于的颜色区域,通过蓝牙模块和手机连接,在手机上可以发送指令对智能小车进行控制。本文所设计的智能小车是通过蓝牙与手机连接,使用OV7670模块对地面区块的图像进行获取,通过程序算法对颜色区域进行识别,并调整小车的行驶路径。本设计是针对智能机器人对颜色区域识别分析的研究,设计了对智能机器人自主识别并规划路径的解决方案。
目 录
一、 绪论 1
(一) 课题研究背景及意义 1
(二) 主要研究内容 1
二、 智能小车方案设计 2
(一) 智能小车硬件总体设计 2
(二) 智能小车的电路设计 2
三、 智能小车的硬件系统设计 4
(一) STM32F103RCT6主控电路设计 4
(二) 摄像头模块电路设计 5
(三) TFTLCD液晶显示电路设计 6
(四) 蓝牙模块HC05电路设计 6
(五) L9110S直流电机驱动电路设计 7
四、 智能小车的软件系统设计 8
(一) 系统程序总体设计 8
(二) OV7670模块驱动程序流程 9
(三) TFTLCD液晶显示程序流程 11
(四) 颜色识别算法 12
(五) 电机驱动程序流程 14
(六) 蓝牙串口传输程序流程 14
五、 系统调试 16
(一) 摄像头显示图像调试 16
(二) 颜色跟踪调试 17
(三) 小车整体调试 19
六、 总结 20
致谢 21
参考文献 22
附录一 电路原理图 23< *好棒文|www.hbsrm.com +Q: *351916072* 
br /> 附录二 实物图 24
附录三 程序 25
一、绪论
(一)课题研究背景及意义
随着科技的发展,越来越多的物联网、车联网、智能汽车等汽车电子相关技术得到国内外科技公司和汽车公司的重视,传统的汽车渐渐无法面对日益拥堵的交通现状,和逐渐增多的道路交通事故。如今,人们把解决交通问题的关键放在了智能汽车无人驾驶技术上,各个国家和政府也投入大量资金和时间,制定无人驾驶的的研究计划和解决方案。
智能汽车,是以路径规划、环境感知为重点的无人驾驶技术方向。汽车的智能化,可以对驾驶员操作进行辅助控制,采用摄像头以及其他传感器对车辆周围环境、路面以及自身情况等信息进行实时监控,保证汽车驾驶的安全性,当出现特殊情况或路径变化时,控制系统可以代替驾驶员进行判断和操作,以免造成危险发生[1]。
在运输行业中,智能无人车也在逐步代替工人进行繁琐的搬运工作,在工厂、物流中心、货运站都有很好的工作效率,智能运输系统在搬运物资或进行繁琐、劳累的工作中,可以大大提高运输效率,并且代替人工搬运,降低人工成本,并且可以工作在危险环境,这是以往人工运输不可比拟的优势。
智能汽车的颜色区块识别,一直是智能汽车进行辅助驾驶或运输货物中的关键技术。对于地面上的颜色区块识别,智能汽车检测的方案主要是摄像头识别。常规摄像头识别方案有着成本低、抗干扰、识别精度高等优点,通过图像处理和算法,可以对颜色区块进行高效识别,是很多智能车辆的首选解决方案。实现汽车智能化,最关键的技术之一便是解决汽车的摄像头识别问题,这将对实现汽车的智能化以及提高当今工业生产和出行方式影响重大。
(二)主要研究内容
本文设计了一款基于STM32的自主颜色区块识别行驶的智能小车,以STM32主控板为开发平台,搭配OV7670模块进行图像获取,研究可自主识别颜色区块并自动辅助控制驾驶的智能小车系统[2]。主要研究内容有:
(1)研究OV7670摄像头模块的图像采集过程,并通过STM32主控板接收图像信息。
(2)研究STM32处理摄像头模块发送的图像信息,并显示图像在液晶显示屏上。
(3)研究RGB转HSL图像处理,并在显示屏上框选出设定颜色区块。
(4)STM32通过蓝牙模块串口连接,与安卓手机进行通信,通过app控制小车。
二、智能小车方案设计
(一)智能小车硬件总体连接设计
小车硬件模块有STM32F103主控板、摄像头OV7670模块、蓝牙HC05模块、直流减速电机、L9110S直流电机驱动板、TFTLCD液晶显示屏。
摄像头OV7670模块和液晶显示屏均直接接入STM32F103主控板,部分GPIO口分时复用,控制摄像头和显示屏。蓝牙模块与主控板直连,使得可以将手机app和主控板进行蓝牙连接并通信,从而在手机app上控制小车[3]。
总体硬件连接图,如图21所示。

图21 总体硬件连接图
(二)智能小车的外观设计
智能小车一共2部分构成,分别是小车底板和第二层模块层,如图22所示。底盘包括底板下方的4个小车电机,底板上方有小车电池、电源供电板、电机驱动板。第二层模块板上放有主控板、摄像头、显示屏。

图22 智能小车外观图
三、智能小车的硬件系统设计
(一)STM32F103RCT6主控电路设计
智能小车的主控板是一块STM32F103RCT6的最小系统板。STM32F103RCT6芯片是一种内核为ARM CortexM3的芯片,工作运行时的最高主频为72MHz,片内FLASH为256KB,SRAM为48KB,芯片封装为64LQFP,芯片内部含有2个基本定时器、4个通用定时器、2个高级定时器、2个DMA控制器、3个SPI、2个IIC、5个串口、1个CAN、3个12位ADC、1个SDIO接口及51个通用IO口。STM32F103RCT6芯片的可用资源十分丰富,足够本设计的使用。开发板芯片电路引脚图如图31所示。

图31 开发板芯片电路引脚图
本课题使用的STM32最小系统板带有USB转串口芯片CH340G,连接一路miniUSB接口,可以进行ISP一键下载,方便实验过程中程序的烧录和测试。CH430C芯片电路如图32所示。该最小系统板上配有一块SPI FLASH芯片,型号为W25×16,容量为2M字节,可以用于储存信息。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/198.html

好棒文