版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于stm32的遥控摄像小车控制系统设计摘要随着我国高科技水平的提高和工业自动化进程推进,智能小车被广泛应用于各个领域,作为现代的新发明,极大的改善了人们的生活,丰富了我们的世界。随着科学技术的飞速发展,智能化慢慢走进我们的视线范围内,智能领域里的汽车已经广泛应用于当今社会的各个领域。如今的智能小车是AI、计算机以及控制理论等多方面融合的产物,在目前研究火热的无人驾驶汽车以及智能家居中扮演着重要作用[1]。面对一些自然灾害或人为因素(如地震、火灾等),为了减小人员损失以及减小财物损失,可以使用遥控小车到现场进行勘察跟实地救援任务。有必要进行智能小车引导控制系统的研究和开发。本系统采用了STM32作为核心控制芯片,设计制作了一款通过WiFi传输数据,摄像头采集数据,安卓手机或上位机控制的远程遥控摄像智能小车。本系统由单片机控制模块、驱动电机模块、摄像头模块、WiFi模块、电源模块、舵机模块组成。单片机的控制模块,提供驱动电机模块,摄像模块和舵机模块的电源,同时进行WiFi模块与上位机的信息传输。驱动电机模块,控制小车的前进后退及转向功能,保证小车的动力。摄像头模块,进行环境信息的采集及视频的拍摄。WiFi模块,处理摄像头模块采集的数据,并通过WiFi连接上传至上位机。电源模块,为摄像头模块、WiFi模块、单片机控制系统、电机模块以及舵机模块提供电源。舵机模块为多角度的拍摄提供便捷的操作实际应用表明,该小车可以将采集的图像传输至上位机,并可以使用上位机进行方向的控制以及摄像头角度的选择,达到了基本的设计目的。关键词:遥控;智能小车;摄像;WiFi目录第1章 绪论 81.1引言 81.2课题研究的目的和意义 81.3课题研究概况及发展趋势 81.3.1国外研究概况 81.3.2国内研究概况 91.3.3发展趋势 101.4本文的主要工作 10第2章小车的总体方案设计 122.1设计思路 122.2小车的方案与论证 122.3电源模块选择 132.4驱动电机模块的选定 132.5摄像模块的选定 132.6硬件方案 14第3章小车的硬件电路设计 153.1单片机的选择和介绍 153.2电源 163.3采用PWM调速的直流电机 173.3.1PWM的简介 173.3.2L298N驱动模块 173.4WiFi模块 173.5摄像头模块 193.6舵机云台 19第4章小车的软件设计 224.1主程序设计及流程图 224.2舵机控制程序设计 234.3上位机程序设计 24第5章系统调试 26总结 29致谢 30参考文献 31附录1:电路原理图 32附录2:源程序主函数代码 34附录3:智能小车组装图 38附录4:上位机软件相关代码 41绪论1.1引言在科技高速发展的今天,智能成了时尚前沿的代名词。智能手机、智能机器人等已经广泛应用于工业、军事等方面。智能车作为新时代的产物,在当今社会被广泛使用在各大领域。集人工智能、自动控制、计算机于一体的智能小车是当今时代的智慧产物,并在无人驾驶领域以及智能家居中起着重要作用。本设计旨在推广和应用智能化的全面发展,整个开发处理过程通俗易懂,所选择的平台和各电子部件都是适当合理的。设计主要以简单智能机器人为开发平台,以STM32为控制平台,将常见的电机模型车作为机械平台,结合嵌入技术、电机控制技术等相关知识,实现小型车的相应功能。设计WiFi遥控器、从相机收集信息的硬件模块构成的多功能智能车,实现小型车的行动和转向、照相机的旋转和采集等功能,实现智能控制,达成设计目标。这种设计在汽车应用、智能机器人等方面具有很高的实用价值,尤其在机器人的研究方面有着很好的发展前景。具有重要的现实意义。1.2课题研究的目的和意义随着人工智能的广泛应用,机器人被应用在各个领域。许多灾害产生的狭小环境,人类无法进入,需要使用机器人采集相关信息,此时,远程遥控机器人的想法被提了出来,利用机器人的小巧,可以使得进入人类无法进入的地方,同时携带相应的摄像设备,可以很好的采集周边的信息,不仅可以减少不确定性,还提高了效率,本次毕业设计主要研究远程遥控小车,制作一款通过WiFi控制的远程遥控摄像车,1.3课题研究概况及发展趋势1.3.1国外研究概况外国科技发展迅速,很早便开始了机器人的相关研究,美国斯坦福研究院研制出第一款被公认的移动机器人Shakey(如图1-1)[2]。传感器技术改革,使得机器人的研究日益狂热,从第一辆“索杰纳”号火星车的问世,到后来“好奇号”(图1-2)的发射成功,无不在显示机器人的重要性。图1-1Shakey自主移动机器人图1-2“好奇”号火星车不仅美国研究出自主移动机器人,日本研制的SR4机器人(如图1-3)可以更快的移动,加快了机器人的步伐。卡内基-梅隆大学于1997年开发了Nomad机器人(如图1-4)。其独特的结构使它在移动过程中可以更好的接触地面[3]。图1-3SR4机器人图4Nomad轮式移动机器人1.3.2国内研究概况我国的机器人研发比海外起步晚,但在最近几年,可谓突飞猛进。不仅追上了海外国家的进度,甚至还有反超的趋势。我国于2013年研制的玉兔号月球车(图1-5),是中国首个月球车,其独特的造型可以很好的适应月球的环境。展现了中国力量[4-5]。图1-5“玉兔号”月球车目前,随着科技的发展,很多科研所以及高校兴起了对高端移动机器人研究的兴趣。有应用于信息采集的可携带侦察机器人(如图1-6)[6],还有可以对管道或空调通风管进行清污消毒的清污消毒机器人(如图1-7)[7],这些机器人无不说明机器人存在于我们的生活中,并影响着我们。图1-6可携带侦察机器人图1-7管道清污消毒机器人1.3.3发展趋势随着电子技术的快速发展,机器人传感器技术越来越成熟,计算机的计算能力显著提高,轮式机器人的关键技术也得到了深入、广泛的研究。其中一些成熟,车轮机器人领域处于让人心动的瞬间。一步一步地走向人类生活的各个领域,丰富着我们的生活。1.4本文的主要工作本文研究的是小车的控制与摄像,主要包含以下三个部分:(1)以stm32为中央处理器,选用合适的硬件并设计相关电路,使功能能够正常使用。系统硬件电路主要分为CPU、电源模块、摄像模块、WiFi模块、驱动模块、舵机模块六部分。(2)系统的软件制作。按照设计所涉及的内容,主要分为主程序、程序化子程序、运动控制子程序、信息采集子程序。(3)将小车组装完成,并进行相应的调试,总结结果。第2章小车的总体方案设计2.1设计思路利用Wi-Fi(无线LAN)这种网络无线通信方式控制小车的运动,在小车上追加照相机,用于实时观察小车到达地方的周围环境,通过Wi-Fi传回当前画面,实现以STM32处理器为基础,通过WiFi无线控制实现移动和实时拍摄的智能车系统。小车系统框图如图2-1所示,系统以STM32单片机为核心,配合外围电路共同完成信息采集,以及小车操控等功能,在软件部分,需对相关步骤进行编程,使得可以正常操控小车执行相关的任务。本系统采用STM32单片机,该单片机成本相对较低,处理速度快,且通用性强,可以完成该设计主要的任务。图2-1小车结构框图2.2小车的方案与论证方案1:选择合适的材料,自己制作智能小车。对板材进行开孔,然后组装相应的电机、摄像头、WiFi等,以及选择的STM32单片机组装至小车上。但自己手工制作的小车,车体相对比较粗糙,存在损坏的风险,而且费工费时,对于车身平衡、重量等问题,不能很好的解决相应的情况。方案2:网络购买相应的智能小车材料,目前市面上已经有比较成熟的智能小车市场,配套的材料可以使装配起来更加紧凑。在连接电路方面,可以使用杜邦线对相应的电路进行连接,看起来也比较美观。同时,市面上已有的小车模型适配于大部分的元件,使得安装更加方便快捷。综合考虑,选用方案2作为初步方案。2.3电源模块选择在本系统中,电源不仅需要给单片机供电,同时WIFI模块以及摄像头模块也需要电源,所以需要正确可靠的电源提供能量。方案1:使用4节干电池为系统供电。方案2:使用2节18650电池为系统供电。基于方便和稳定性考虑,两节18650型号电池可以更好的节省空间,而且电压相对更加稳定,故选择方案2。2.4驱动电机模块的选定方案1:选用步进电机作为该系统的驱动马达。步进电机是数字信号输入的无刷电机,其可以直接接收来自控制器或其他电子电路的脉冲,并采取相应的运动。由于此电机采用开环控制,实现了电机更精确的控制,同时,当它到达所需的位置,可以保证负载稳定,但同时,因为此特性,不适用于需要一定速度的系统[8]。方案2:采用直流马达作为该系统的驱动马达,连接方式决定了马达的旋转方向,控制起来相对更加简单,同时给予更高的电压,可以获得更快的转速,同时,其成本及制造工艺相比步进电机更便宜以及更简单[9]。同时为了对马达进行调速,可以使用PWM的方法,改变占空比调节小车速度。与其他速度调整系统相比较,PWM速度调整系统具有所列好处[10]:易于实施和控制。更低的功耗。降低低阶谐波。滤波要求最小化,因为只有高次谐波存在。硬件实现简单,因为它与当今的数字微处理器兼容。综合考虑,本设计采用方案2。2.5摄像模块的选定方案1:使用OV7670摄像头作为拍摄用具。OV7670是OmniVision公司生产的图像传感器,可以输出8位图像数据,但由于stm32单片机的内部SRAM只有64kb,故传输速度会受到极大的限制[11]。方案2:使用慧净电子的免驱摄像头,连接WiFi模块,可以帮助处理相关数据,并传输数据。将MJPEG格式的视频流输出给WIFI模块,WIFI模块通过TCP/IP协议中的socket通信链接中以HTTP形式传输给上位机。使用方案2可以使获得的数据更清楚。而且方便搭配舵机使用,使得多角度摄像得以实现。2.6硬件方案智能小车主要由STM32单片机最小系统控制模块、电源模块、摄像模块、WiFi模块、驱动模块、舵机模块六部分组成。摄像功能——摄像模块和舵机模块驱动功能——L298N驱动模块上位机控制功能——WiFi模块其他硬件——杜邦线、最小系统、四驱智能小车底盘、电源、下载器第3章小车的硬件电路设计在小车的设计中,单片机是其核心部件。一方面需要控制电机进行相应的动作,另一方面需要接收摄像头传输的信号,并根据需要选择合适的摄像头位置。因此,为了实现信息的快速处理,以及快速的运算速度,并且选择价格低廉且实用的机型,单片机成了不二选择。为将来需要开发和和研制同一系列的产品做准备。通过多方面的比较,本设计选择使用STM32系列的单片机。3.1单片机的选择和介绍该智能小车要实现可遥控以及摄像功能,对RAM、FLASH和处理速度的要求比较高,使用摄像头采集图像实现照相机功能是需要处理速度的,目前市场上有目前市场上可供选择的八位机有51、MSP430、AVR和PIC等,但由于八位机的处理速度较慢,在16M以下,所以暂时不考虑相关单片机,可供选择的32位处理器有SAMSUNG、NXP、STM32、ATMEL,处理速度有所提升,同时因为STM32的低成本、低功耗、易于开发等优点,本系统采用STM32作为主控制器,具体采用了STM32F103家族里面最强悍的STM32F103ZET6作为控制核心,它是ST公司最新推出的基于Cortex-M3构架的芯片,如图3-1所示。该芯片具有64KBSRAM、512KBFLASH、2个基本定时器、4个通用定时器、2个高级定时器、3个SPI、2个IIC、5个串口、1个USB、1个CAN、3个12位ADC、1个12位DAC、1个SDIO接口、1个FSMC接口以及112个通用IO口,对本系统来说足够了,同时以后还有很大的升级空间[12]。图3-2为该单片机的原理图。图3-1STM32F103ZET6芯片示意图图3-2STM32F103ZET6原理图3.2电源使用一个18650电池组(如图3-3所示)向整个系统供电。单片机和其他模块在启动前,需检查电源供给状况。为了防止电源电压过低,影响实验。因此,利用电压检测模块连接到单片机,实时监控电池电压。图3-318650电池3.3采用PWM调速的直流电机3.3.1PWM的简介PWM,全称:PulseWidthModulator,常被用于直流电机或舵机调速[13]。脉冲宽度调制(PWM)利用单片机定时器产生脉冲信号通过CMOS管的状态调节脉冲宽度,实现电压控制,从而调节电机的转速。[14]。脉冲宽度调制(PWM)是采用脉冲宽度调制技术的控制方法,其工作原理是通过变更“导通脉冲”的宽度,使直流电动机的电动机上的电压的“占空比”发生变化,从而改变电动机电压的平均值,达到控制马达的旋转速度的作用。因此,可以通过改变脉冲信号中的“占空比”来控制电机的旋转速度[15]。3.3.2L298N驱动模块出于对小车的需要,选择L298N作为驱动芯片,L298N可以实现电机的正反转,并且能通过PWM进行调速,体积小,且驱动能力强,通过此芯片可以同时驱动四个电机,图3-4为L298N驱动模块示意图。图3-4L298N驱动模块3.4WiFi模块如图3-5所示,本设计所采用的WiFi模块的供电电压为5V,具有两条TTL线与一条GND线,用于与单片机进行串口通信。同时在WIFI模块的侧面有一个用于连接摄像头的usb接口,通过此接口,可以进行数据的传输与接收。该模块使用Openwrt嵌入式操作系统,在其内部已下载ser2net软件和Mjpegstreamer软件,该模块同时刷有UVC摄像头驱动程序.以方便获取视频影像,ser2net全称是serialtonetwork,目的是将串口数据转化为网络信息,形成TCP/IP协议的连接。
图3-5WIFI模块外观图Mjpegstreamer是视频流服务器,是一款将图像数据转换成数据流传输的软件,其工作流程如图3-6所示.连接USB摄像头和WiFi模块的USB接口,用照相机采集视频数据通过硬件压缩以Mjpeg格式输出,压缩模块将收集到的视频数据压缩成JPG图像,发送模块经由HTTP输出通道经过socket将JPG图像传输到相应的位置[16]。图3-6视频流服务器工作流程图3.5摄像头模块本设计采用usb摄像头,其外观如图3-7所示。
图3-7摄像头模块本设计选用的摄像头输出为MJPEG的格式,将该摄像头通过USB接口连接到WIFI模块,WiFi模块与单片机共用电池组的能量,将采集的视频信息输出给WIFI模块,WIFI模块通过socket通信链接中以HTTP形式传输给上位机。3.6舵机云台在本设计中,摄像头使用两个舵机,通过改变舵机的占空比,从而改变舵机的角度,使得摄像头能实现多角度的拍摄。本设计选用两个SG90舵机搭建云台,分别调节摄像头的左右上下转动。其外观如图3-8所示。
图3-8舵机云台舵机一个带有输出轴的小装置,由马达、外壳、以及齿轮、控制电路组成。其内部存在控制电路,控制马达转动,使其达到某个特定的角度。当轴的位置与控制信号相符,电机关闭。同时舵机角度会根据制造商不同,转动角度不同,当转动角度超出范围时,舵机将停止转动。在舵机启动时,不能随意掰动舵机,容易造成齿轮损坏。舵机有各种各样的规格,但是所有的舵机都是从外部连接三条线。分别用棕色、红色、橙色三种颜色来区分。由于舵机品牌有所不同,颜色也有所差异,一般规定,棕色为地线,红色为电源线,橙色为信号线。(如图3-9所示)图3-9舵机示意图舵机的旋转角度由信号脉冲时间决定,通过PWM进行调节,脉宽5ms到25ms对应舵机旋转角度0°~180°,间隔为20ms,其中高电平为0.5ms-2.5ms,间隔为2ms[17]。图3-10舵机控制原理图
第4章小车的软件设计本次软件调试使用keil5软件编译程序获得hex文件。创建相关代码时,使用主流设计语言C语言对单片机编程以实现相关功能。C语言功能丰富,表达能力强,程序效率高,移植性强,有高级语言的优点,另外,它同时也有很多低级语言的特点,在许多地方得以应用。4.1主程序设计及流程图主程序流程图如图4-1所示。首先将单片机进行初始化,包括定时器和端口的初始化,并且初始化WiFi模块以及串口中断。通过STM32的串口接收中断信号,执行相关的子程序,同时调用相关运动状态的函数[18]。图4-1主程序流程图本设计使用USART3,pin10的输入Tx和WiFi模块的接收端连接,pin11的输出Rx分别和WiFi模块的发送端连接,进行串行通信。USART3中断初始化配置如下:定义一个中断结构体;使能USART3的串口时钟,设置pin10为输出引脚,设置最高传输速度为50MHz。使用GPIO_Init库函数初始结构体;使用USART_Initstuct定义串口通信的参数,传输的数据字长为8位,设置波特率为9600bps,校准并使能串口;使用USART_ITConfig库函数使能串口3接收中断;打开串口,解决数据发送失败的问题使用NVIC_Init库函数设置当前中断优先级修改优先级,通道中断使能,初始化串口3创建串口中断服务函数,接收串口信号,执行中断函数,接收完毕并按照小车运动协议执行相关的运动函数,小车运动通信协议如表1所示。4.2舵机控制程序设计舵机使用20ms的PWM信号,当脉宽为0.5ms-2.5m时,控制舵机的旋转角度为0-180°。在本设计使用定时器3对产生的PWM信号作为舵机的控制信号。配置如下:使能定时器3端口时钟以及复用端口时钟,并进行端口配置。使用GPIO_Init库函数,设置推挽输出。设置IO口速度为50MHz。使用GPIO_Init库函数初始化PWM端口.设置PWM输出模式为PWM1,输出极性为高电平。舵机的角度与小车控制一样由串口中断来触发,舵机控制通信协议如表2所示。4.3上位机程序设计该程序由多个按钮组成,分别用来控制小车的移动方向以及舵机的角度,具体程序设计布局如下:界面包括控制区域、设置区域以及图像区域(如图4-2所示)。红色代表控制区域,黄色代表图像区域,蓝色代表设置区域。4-2控制框图设置区域内部,由视频地址,控制端口以及控制地址组成(图4-3),通过填写WiFi的相关信息,建立socket通信连接,可以在图像区域呈现出摄像头采集到的相关信息。4-3设置界面对小车控制以及舵机角度控制进行相关的定义,确保小车能通过WIFI串口将信号传达至上位机(4-4)。4-4控制定义第5章系统调试1、小车整体连接完成,测试摄像头模块能否正常使用。电脑连接WiFi模块的WiFi,名字为“hjwifi2014”;打开浏览器,输入:8083/?action=stream;浏览器中显示出当前摄像头的摄像区域。摄像头模块可以正常使用。图5-1视频流截图2、测试app的功能打开上位机app,点击设置,WiFi模块的IP地址为,WiFi获取视频数据的地址为:8083/?action=stream,2001是WiFi模块传输控制数据的端口,8083是进行视频传输的端口。使用IP地址和端口号,可与WiFi模块建立WiFi无线通信进行数据传输。图5-2接收设置图当设置完成相关的数据,点击保存,再点击视频,会出现相关界面。图5-3程序截图通过软件上的前后左右按键,可以控制小车的基础移动,右侧的舵机调节可以控制舵机的角度,大灯为单片机上的信号灯,后续如果需要升级设备,可以改造相应的硬件以满足需求。如图5-3所示,程序可以正常的运行。
总结通过此次毕业设计,我学习到了一个产品从设计到选材再到完整的实现相应的功能,需要很多步骤,一开始的材料选择,目前的市场之大,导致选材上面耗费了部分时间,后续的电路设计,软件调试并测试,也都耗费了许多的时间,但与此同时,选材上学习了许多相关知识,丰富了我的视野,针对各类传感器,有了一定程度的认识,同时对于单片机的中断以及定时功能的使用,可以更好的处理不同模块的信号,通过此次毕业设计,自己的动手能力有所提升。测试结果表明,本系统实现了设计任务的要求,利用Wi-Fi(无线LAN)进行无线通信并控制小车的移动,在小车上追加照相机,用于实时观察小车到达地方的周围环境,通过Wi-Fi传回当前画面,实现以STM32处理器为基础,通过WiFi无线控制实现移动和实时拍摄的智能车系统。该系统运用了单片机、WiFi模块、舵机云台、直流电机、PWM调速、摄像模块等技术,基本实现了智能小车的要求。本系统中还存在着不足:小车在环境光线不好的地方,摄像功能会受到影响,而且容易因此造成小车的磕碰,后续需要改进的话可以采用灯光照明,或者使用红外摄像头。同时WiFi模块的强度不高,脱离一定范围或者隔墙以后信号会大幅衰减,需要考虑使用更强一些的WiFi信号。学习过程中虽然遇到了许多困难,但通过网络上的搜索,和朋友的讨论,问题得到了解决,最终完成了设计。通过此次课程设计,我认识到学习多样化的重要性,因为不仅需要我对材料的选择,同时我也需要对材料的应用及编程,毕业设计是对大学四年学习一个很好的综合检验。几个月的毕业设计使我收获满满,参考文献[1]曹冲振,梁世友,王凤芹,等.基于STM32的可遥控智能小车控制系统设计[J].智能计算机与应用,2020,10(3):256-259,262.[2]HiroshiIshiguro.KI2006:AdvancesinArtificialIntelligence[M].SpringerBerlinHeidelberg:2007.[3]ERollins,JLuntz,AFoessel,etal.Nomand:ADemonstrationoftheTransformingChassis[C].Proceedingofthe1998IEEEInternationalConferenceOnRobotics&AutomationLeuver,Belgium,May1998:611-617.[4]吴伟仁,周建亮,王保丰,刘传凯.嫦娥三号“玉兔号”巡视
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中央国家金融监督管理总局所属事业单位招聘19人笔试历年参考题库附带答案详解
- 上海上海申康医院发展中心2025年招聘2人笔试历年参考题库附带答案详解
- 上海2025年上海市皮肤病医院皮肤与化妆品研究室导医岗位招聘笔试历年参考题库附带答案详解
- 2026浙江台州市温岭市海城集团下属子公司招聘编外人员8人备考题库及答案详解参考
- 2026广西河池市广电网络科技发展有限公司大化分公司招聘4人备考题库及答案详解(新)
- 2026山东鲁南发展投资控股(枣庄)集团有限公司招聘急需紧缺人才1人备考题库及一套完整答案详解
- 2026四川内江市资中县社会保险事务中心公益性岗位招聘1人备考题库及答案详解(夺冠系列)
- 2026四川大学华西医院神经和共病研究室陈蕾教授团队基础实验科研助理助理招聘1人备考题库及完整答案详解
- 职业安全卫生管理体系高级风险管理
- 2026天津城建滨海路桥有限公司招聘备考题库及1套完整答案详解
- Coze培训课件教学课件
- 2025购房合同(一次性付款)
- 云南省茶叶出口竞争力分析及提升对策研究
- 银行情绪与压力管理课件
- 甲状腺危象护理查房要点
- 《无人机飞行安全及法律法规》第3版全套教学课件
- 2025内蒙古电力集团招聘笔试考试笔试历年参考题库附带答案详解
- 交通警察道路执勤执法培训课件
- 十五五学校五年发展规划(2026-2030)
- 洗浴员工协议书
- GB/T 17642-2025土工合成材料非织造布复合土工膜
评论
0/150
提交评论