毕设基于WIFI控制的智能小车报告Word格式文档下载.docx
《毕设基于WIFI控制的智能小车报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《毕设基于WIFI控制的智能小车报告Word格式文档下载.docx(32页珍藏版)》请在冰豆网上搜索。
经审查,专业班同窗所提交的毕业设计(论文),符合学校本科生毕业设计(论文)的相关规定,达到毕业设计(论文)任务书的要求,按照学校教学管理的有关规定,同意参加毕业设计(论文)答辩。
指导教师签字(盖章)
按照审查,准予参加答辩。
答辩委员会主席(组长)签字(盖章)
毕业设计(论文)答辩委员会(小组)决议
学院专业班
同窗的毕业设计(论文)于年月日进行了答辩。
按照学生所提供的毕业设计(论文)材料、指导教师和评阅人意见和在答辩进程中学生回答问题的情形,毕业设计(论文)答辩委员会(小组)做出如下决议。
一、毕业设计(论文)的总评语
二、毕业设计(论文)的总评成绩:
三、答辩组组长签名:
答辩组成员签名:
答辩委员会主席:
签字(盖章)
摘要
Wifi全称wirelessfidelity,是现今利用最广的一种无线网络传输技术。
Wifi信号以其壮大的覆盖范围和更高的传输速度取得普遍应用。
本设计中研究了wifi控制技术在遥控小车中的应用。
该遥控小车以wifi信号为数据传输载体,同时通过摄像头反馈视频画面,实现实时监控、实时控制的功能。
基于wifi信号的上网功能应用在咱们生活中已经超级普遍,但是基于其在控制方面的应用并非多,本设计就是尝试采用这一并非普遍应用的技术,以希望在这方面能有新的冲破。
在整个设计系统中,wifi信号的应用是主线,小车是载体,电话作为上位机发出控制指令,通过wifi模块转化发送给单片机,控制小车做出相关动作。
关键词:
wifi信号单片机控制视频传输
Abstract
Wifi,whosefullnameiswirelessfidelity,isoneofthemostwidelyusedwirelessnetworktransmissionsignalwithitspowerfulrangeandhighertransmissionrateiswidelythisdesign,itmainlystudiesthewificontroltechnologyintheapplicationoftheremotecontrolsignalisthecarrierofthedatatransmissionfortheremotecontrolthesametime,thewebcamfeedbacksthevideocanrealizethefunctionofreal-timemonitoring,real-timewifiInternetaccessinourlifehasbeenverywidelyused,however,itsapplicationinthecontrolisnotdesignistotryusingthisnotwidelyappliedtechnologytohavenewbreakthroughinthisthewholedesignsystem,applicationofwifisignalisthemaincarisaphoneistheuppermachinecontrolsentssignertothemicrocontrollerthroughthewifimoduleinordertocontrolthecartomakerelatedactions.
Keywords:
Wifisignalmicrocontrollercontrolvideotransmission
1概述
选题的目的和意义
实际上就是把有线网络信号转换成无线信号,供支持其技术的相关电脑,电话,PDA等接收。
电话若是有wifi上网功能的话,在有wifi信号的场所就可以够不通过移动联通的数据连接上网,这方面的应用已经超级普遍了,可是基于wifi信号在控制方面的应用还很少,但是相对于红外信号和蓝牙信号等具有传输距离远、传送速度快等很多长处。
Wifi信号在无障碍环境中传输距离为300米左右,室内有障碍的情形下传输距离也在100米左右,所以用它作为控制信号其性能远远优于红外和蓝牙信号。
而且,上位性能够选择电话、电脑等常常利用的移动设备,操作简便。
随着社会经济的迅速进展,大型商场、机场、车站、会展中心及物流仓库等大型人流、物流场所的规模和数量不断增加,大中城市的高层,高级商用楼日趋增多,规模迅速壮大,其安保需求也日趋迫切。
巡逻智能车机械人是一个集感知环境、线路计划、行动决策,行为控制、信息传感和报警装置为一体的多功能综合系统。
将机械人用于安保工作、信息探索、军事侦查具有广漠的应用前景。
最近几年来已受到国内外特别关注,已成为机械人技术的一个新的进展分支。
综上所述,基于wifi信号控制的遥控智能小车机械人未来将会在这些领域有普遍的应用。
鉴于对它的开发和研究也成为当下的热点技术,本设计也尝试了这项新应用,希望能够更多的了解和熟悉这项技术,完善其在控制方面的应用。
相信对wifi控制应用的研究未来必然对人们的生活和高科技的进展探索具有深远的意义。
国内外研究现状
由于互联网在全世界的快速普及与进展,人们的工作和生活愈来愈依赖互联网。
人们随时随地都有可能需要上网,产生了大量的WLAN服务需求。
随着智能天线技术的进展,笔记本电脑、电话、掌上电脑等支持wifi的移动终端愈来愈普及。
进一步增加了人们对WLAN服务的需求。
基于wifi标准的WLAN网络是目前最为普及的无线网络形式。
由于wifi信号如此快速的进展,它已不单单作为一种上网信号来利用了,用其作为控制信号的研究和开发已暂露头角,可是wifi技术起步较晚,进展程度还不太成熟,所以基于wifi信号的一些控制类型的电子产品并非太多。
无论是国内仍是国外,它的控制利用还仅处于研发、探索阶段,还远远没有像红外和蓝牙信号的利用那么普遍。
在人们此刻的生活当中,基于红外信号的一些控制装置触目皆是,可是红外信号的弱点就是传输范围小,当有障碍物时范围更小,而wifi信号的传输范围远远大于红外信号,所以基于wifi信号控制的电子产品具有专门好的进展前景。
本设计是用wifi信号来控制智能小车,智能小车已经被大多数人熟悉,其在玩具、安全巡逻、无人探测等领域已具有普遍的应用。
由于受wifi覆盖的影响,基于wifi的应用还不能那么随心所以,这也是制约其进展的一个短处。
可是,随着wifi网络的进一步完善,相信基于其的有关控制电子产品会充满人们的生活世界中,为人们提供更多的便利,其进展前景超级可观。
2系统结构及整体控制方案
系统结构
在整个系统设计中,以wifi模块和MCU系统为核心,其余包括上位机模块、电源模块、电机驱动模块、摄像头和小车等部份。
整体系统结构流程图如图2-1所示:
图2-1系统结构流程图
上位机选择的是电话,其作用是接收wifi模块发送过来的wifi信号,并以此为载体将控制指令发送到wifi模块,同时接收来自摄像头收集过来的视频流,该视频流也是以wifi信号为载体传送得电话,并在电话屏幕上显示所收集到的画面。
Wifi模块其实就是路由器的一部份,其作用就是发射wifi信号,便于电话搜索和作为信号的载体。
同时,接收电话发过来的指令,并转化成TTL电平,经由TTL串口输出给单片机。
MCU系统是基于STC12C5A60S2单片机的控制系统,功能是通过串口1接收来自wifi模块TTL串口发送的指令,并提取有效控制指令。
以有效控制指令为依据,通过度析、计算,最周将结果经单片机I/O口。
电机驱动模块是围绕L298N驱动芯片搭建的,驱动电流可达到2A,能够实现正反转的控制,方便小车实现各类动作。
电源模块是由LM2940-5稳压芯片组成的,输入为电池提供的电压,输出电压为5V,别离为wifi模块、MCU系统和电机驱动模块提供工作电压和控制电压。
同时电池也为电机转动直接提供电能。
摄像头采用的是天敏S606无驱摄像头,声音信号和图像信号集成在一个USB线上进行传输,像素高。
将摄像头的USB接口查到wifi模块上预留的USB口即可。
系统控制方案流程
整体控制流程可概述为:
wifi模块发射wifi信号,作为信号传输的载体。
电话打开wifi功能,搜索wifi模块的无线信号并连接,如此就完成了电话和wifi模块之间的无线通信。
打开电话上的WIFIROBOTS软件,软件上的每一个按键代表一个动作,当按下时会有控制指令发出,控制指令以wifi信号的形式发送到wifi模块并被接收。
Wifi模块将接收到的信号转化成TTL电平信号并通过TTL串口输送到单片机的串行口1。
同时,摄像头将收集到的画面信号发送给wifi模块,wifi模块分析、计算后发送给上位机并在上位机上显示所收集到的画面。
单片机接收并提取有效控制指令,并按照有效的控制指令使相应的I/O口输出相应的电平,以此作为驱动模块的控制信号。
驱动模块按照接收到的控制信号使相应的电机正转或反转,从而使小车完成具体的动作。
3系统硬件设计
硬件是整个系统的躯干,是软件运行的平台。
硬件的选择直接决定系统的运行状况,为了使系统能够运行良好,需要搭建一个专门好的硬件平台。
硬件模块主要包括wifi模块、MCU系统模块、电源模块、驱动模块等。
Wifi模块
Wifi模块实质上是无线路由器或说是无线路由器的部份电路,主如果用来提供wifi信号,同时接收上位机发来的控制指令,并对指令进行转化,最后输出单片性能够识别的TTL电平。
这部份除选用专用的wifi模块外,也能够通过普通的家用无线路由器刷机设置而成,那个能够按照自己的条件选择。
普通家用无线路由器刷机方式
普通家用无线路由器只是具有路由功能或互换机的功能,然后本设计中需要其接收上位机的信号并转化输出,同时还要识别摄像头并传输图像,实际上是把它当做小电脑来利用了,所以必需对其进行刷机和安装一些软件。
进程如下:
1)、把普通的家用无线路由器刷入开源的OpenWrt系统,使之成为一个运行了Linux系统的小电脑;
何为OpenWrt:
当Linksys释放WRT54G/GS的源代码后,网上出现了很多不同版本的Firmware去增强原有的功能。
大多数的Firmware都是99%利用Linksys的源代码,只有1%是加上去的,每一种Firmware都是针对特定的市场而设计。
如此做有2个缺点,第一个是难以集合各版本Firmware的优势,第二个是这版本距离Linux正式发行版愈来愈远。
OpenWrt选择了另一条路,它从零开始,一点一点的把各软件加入去,使其接近Linksys版Firmware的功能,而OpenWrt的成功的地方是它的文件系统是可写的,开发者无需在每一次修改后从头编译,令它更像一个小型的Linux电脑系统,也加速了开发速度。
简而言之,就是从思科的路由源代码改造过来的,一个适用于某些特定芯片的路由器的小型Linux系统,有了那个系统,路由器就再也不是只能上网那么简单了,用户能够在上面安装各类程序、驱动等,以路由为平台,用户能够自由地加载USB摄像头、网卡、声卡、等设备,方便电子工作爱好者以其为平台进行各类开发。
可是,给路由器刷OpenWrt系统特别麻烦,对专业性、熟练度和技术要求特别高,一般的人员很难完成这项工作,需要专业的人士进行操作。
一般买路由器时能够要求店家刷好OpenWrt系统,以方便自己开发,节约时刻。
2)、给刷好OpenWrt系统的无线路由器装入一款叫做mjpg-streamer的程序,它的作用就是对USB摄像头传过来的视频进行编码,然后通过wifi信号返回给上位机,如此就可以够远程、直观的看到来自机械人传过来的视频了。
若是需要扩展其他功能,譬如声音模块,显示模块等能够继续给路由器刷入相应的声卡、显卡驱动,可是要注意,必需是Linux系统支持的相关驱动,因为Linux系统没有Windows系统那么壮大,所以支持的软件也不多,刷入之前必然要确保能够被Linux系统识别。
3)、引出TTL串口:
一般的路由器都预留有TTL串口,TTL串口是用来调试或刷机用的。
对路由器进行上述各类设置,最终目的是为了让它和单片机成功握手,以便于跟单片机正常通信,所以要引出TTL串口,然后通过安装在路由器里面的Ser2net软件,就可以把来自wifi信号的指令传到串口输出,这时串口与单片机MCU串口进行通信,单片机接收串行指令并分析、计算并输出结果。
专用wifi模块
对于初学者来讲,家用无线路由器的刷机进程仍是相当困难。
因为wifi控制这一领域还不算太成熟,其控制方面的应用也不是很普遍,所以关于wifi控制方面的资料也相对很少,能找到的刷价教程的资料也不够详细,所以最终没有选择那个方案,而是选择了在网上直接购买已经刷机成功而且完成软件安装的专用wifi模块,它有直接引出的TTL串口,能够直接和单片机通信。
如图3-1所示为该模块的实物图。
图3-1wifi模块实物图
Wifi模块其实就是一个被简易化了的无线路由器,只扩展了供电端口,USB摄像头接口和一个网口。
供电端口是那个比较小的USB口(俗称mini·
USB),用一条USB供电线,一头插在mini·
USB口上,另一头插在电脑USB或自己搭建的电源模块上,供电电压为5V,可提供的驱动电流不低于1A。
上面的USB接口是用来连接USB摄像头的,用以捕捉视频并反馈到上位机上。
扩展出来的网口的作用超级灵活,在模块中默以为LAN口,能够用从此口登岸路由,进行软件管理,也能够通过设置界面,将那个网口改成WAN口。
Wifi模块和单片机之间的通信
Wifi模块的输出和单片机的串口通信都是TTL电平,TTL电平的范围是输出高电平>
,输出低电平<
。
在室温下,一般输出高电平是,输出低电平是。
最小输入高电平>
=,最小输入低电平<
=,噪声容限是。
Wifi模块上输出的TTL电平是左右,所选用的STC12C5A60S2单片机串口通信匹配的TTL电平是,二者都在TTL电平的范围之内,所以能够直接通信而不需要搭建电平转换电路。
在连线时需要注意,wifi模块的TTL输出端口三根线别离为GND、TX和RX,应当别离连接单片机的GND、RX和TX。
刚开始时,wifi模块的TX连接单片机的TX,RX连接了单片机的RX,以致于怎么也无法通信。
后来发觉了问题所在才得以解决。
MCU控制系统
MCU控制系统即单片机控制系统,主要功能是利用串口接收来自wifi模块的信号,提取有效指令位并贮存起来。
同时,MCU按照收集到的指令使相应的I/O口执行相应的电平输出,从而达到控制驱动模块的目的。
STC12C5A60S2单片机
本设计采用的是STC12C5A60S2单片机,该单片机是由宏晶科技生产的单时钟/机械周期(1T)的单片机,是高速、低功耗、超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051单片机,但速度快8-12倍。
STC12C5A60S2单片机中包括中央处置器(CPU)、程序存储器(Flash)、数据存储器(SRAM)、按时/计数器、UART串口、串口二、I/O接口、高速A/D转换、SPI接口、PCA模块、看门狗及片内R/C振荡器和外部晶体振荡电路等模块,几乎包括了数据收集和控制中所需的所有单元模块,可称得上一个片上系统。
由于其超强抗干扰的特性,在电机控制等强干扰场合应用比较普遍。
主要特点:
(1)增强型8051-CPU,1T单时钟/机械周期,指令代码完全兼容传统8051;
(2)工作电压:
~;
(3)工作频率范围:
0~35MHz,相当于普通8051单片机的0~420MHz;
(4)用户应用程序空间60K,片上集成1280字节RAM;
有内部EEPROM功能;
(5)通用I/O口(36/40/44个),复位后为:
准双向口/弱上拉(普通8051传统I/O口),也可通过寄放器设置成准双向口/弱上拉,强推挽/强上拉,仅为输入/高阻,开漏四种模式。
每一个I/O口驱动能力都可达到20mA,但整个芯片最大不要超过120mA;
(6)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口()直接下载用户程序,数秒即可完成;
(7)内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地);
(8)集成外部掉电检测电路,在口有一个低压门坎比较器,比较电压为,误差为±
5%;
(9)时钟源:
外部高精度晶体/时钟,内部R/C振荡器(温漂为±
5%~±
10%之内)。
用户在下载用户程序时,可选择利用内部R/C振荡器或外部晶体/时钟。
常温下内部R/C振荡器频率为11MHZ~17MHZ。
精度要求不高时,可选择利用内部时钟,但因为有制造误差和温漂,以实际测试为准;
(10)共4个16位按时器,两个与传统8051兼容的按时器/计数器,16位按时器T0和T1,没有按时器2,但有独立波特率发生器做串行通信的波特率发生器,再加上2路PCA模块可再实现2个16位按时器;
(11)2路PWM/PCA(可编程计数器阵列),可用来当做2路D/A利用,也可设置成2个按时器,或用来再实现2个外部中断(上升沿中断/下降沿中断都可别离或同时支持);
(12)8路A/D转换,10位精度ADC,转换速度可达250K/S(每秒钟25万次);
(13)通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用按时器或PCA软件实现多串口功能;
(14)工作温度范围:
-40~+85℃(工业级)/0~75℃(商业级);
(15)封装有LQFP-48,LQFP-44,PDIP-40,PLCC-44,QFN-40五种。
当I/O口不够用时,可用2到3根普通I/O口线外接74HC164/165/595(都可级联)来扩展I/O口,还可用A/D做按键扫描来节省I/O口,或用双CPU,三线通信,还多了串口。
本设计采用的是PDIP-40封装芯片,其管脚图如图3-2所示:
图3-2STC12C5A60S2单片机PDIP-40封装引脚图
实物图如图3-3所示:
图3-3STC12C5A60S2单片机PDIP-40封装实物图
STC12C5A60S2单片机ISP(在系统可编程)系统
STC12C5A60S2单片机具有ISP(在系统可编程)功能,无需专用编程器,可通过串口()直接下载用户程序,ISP(在系统可编程)原理图如图3-4所示:
图3-4STC12C5A60S2单片机ISP(在系统可编程)原理图
该图中上半部份是利用MAX232芯片搭建电平转换电路,通过9针串口连接USB转串口线,然后USB转串口线的USB接头连接电脑,如此就搭建好了在系统编程的硬件电路。
复位电路包括两个,那时钟频率低于12MHZ时,能够利用左侧C6,R5搭建的复位电路,现在只应插上J4短路帽。
那时钟频率高于12MHZ时,建议利用第二复位功能脚,如图由R六、R7组成的低电平检测复位电路,现在应只插上J5短路帽。
本设计利用的是12MHZ晶振,所以利用左侧由C6,R5搭建的复位电路即可。
外部有源晶振电路是有两个30PF的电容和晶振组成的,当外部时钟频率在33MHZ以上时,建议直接利用外部有源晶振。
若是利用内部R/C振荡器时钟(室温情形下为:
11MHZ~17MHZ),XTAL1和XTAL2脚浮空。
本设计利用的是12MHZ晶振,能够选择利用内部R/C振荡器,可是利用内部R/C振荡器有一个短处就是精准度不高,但是本设计需要利用串口,要用到波特率发生器,所以为了精准起见,最终仍是选择了利用外部有源晶振。
STC12C5A60S2单片机串口通信模块
本设计中主要用到了该单片机的串口通信模块,一方面是为了下载程序,另一方面是接收来自wifi模块的信号。
STC12C5A60S2单片机具有2个采用UART工作方式的全双工串行通信接口(串口1和串口2)。
每一个串行口由2个数据缓冲器、一个移位寄放器、一个串行控制寄放器和一个波特率发生器等组成。
每一个串行口的数据缓冲器由2个彼此独立的接收、发送缓冲器组成,能够同时发送和接收数据。
发送缓冲器只能写入而不能读出,接收缓冲器只能读出而不能写入,因而两个缓冲器能够共用一个地址码。
串行口1的两个缓冲器共用的地址码是99H,串行口2的两个缓冲器共用的地址码是9BH。
串行口1的两个缓冲器统称为SBUF,串行口2的两个缓冲器统称S2BUF。
STC12C5A60S2单片机串行口1对应的硬件部份是TxD/和RxD/引脚,串行口2对应的硬件部份是RxD2和TxD2。
因为在整个系统中下载程序和接收wifi数据不同时,所以只利用了串行口1作为通信串口。
STC12C5A60S2单片机的两个串行口都有4种工作方式,别离为方式0、一、二、3四种,可通过串行控制寄放器SCON中的SM0和SM1两个位来选择所需的工作方式。
主机
SM0
SM1
工作方式
功能说明
波特率
方式0
同步移位串行方式:
移位寄存器
当UART_M0x6=0时,波特率是SYSclk/12当UART_M0x6=1时,波特率是SYSclk/2
1
方式1
8位UART,波特率可变
(2SMOD/32)*(定时器1的溢出率或BRT独立波特率发生器的溢出率)
方式2
9位UART,波特率固定
(2SMOD/64)*时钟频率
方式3
9位UART,波特率可变
可通过查询或中断方式对接收/发送进行程序处置,利用十分灵活。
详见表3-1。
表3-1STC12C5A60S2单片机串口通信工作模式
该单片机内部集成了独立波特率发生器BRT,同时也保留了按时器1作为波特率发生器的功能。
通信时的波特率随所选工作模式的不同而转变。
因为wifi模块传输的是16进制的数据,所以选用了方式1,8位UART进行数据传输。
同时选用了独立波特率发生器,能够释放按时器1。
电源模块
电源是一个系统正常工作的基础,电源模块为系统其他各个模块提供所需要的能源保证,因此电源模块的设计相当重要。
智能小车系统中需要供电的部份包括:
MCU系统模块、wifi模块和电机驱动模块等。
如图3-5所示:
图3-5电源模块供电系统图
选用的电池:
因为小车是双电机驱动,需要的电能比较多,同时其他模块也需要供电,所以需要选择容量比较大的电池。
本设计选用