具有超声波测距功能的智能小车设计.doc_第1页
具有超声波测距功能的智能小车设计.doc_第2页
具有超声波测距功能的智能小车设计.doc_第3页
具有超声波测距功能的智能小车设计.doc_第4页
具有超声波测距功能的智能小车设计.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业论文(设计) 题 目 具有超声波测距功能的智能小车设计 目 录1 引言31.1 课题研究的背景与前景31.1.1 超声波测距发展历史简介31.1.2 单片机的发展历史31.1.3 液晶的发展历史41.2 超声波测距的原理及误差分析41.3 本设计的主要目标和要求52 总体设计方案53 系统硬件设计53.1 电源电路设计模块53.2 串行通信模块63.2.1 STC89C52单片机介绍63.2.2 STC89C52引脚描述63.2.3 单片机硬件资源83.2.4 单片机串行通信协议介绍83.3 接收显示模块103.3.1 LCD1602介绍113.3.2 LCD1602引脚功能说明133.3.3 LCD1602的指令说明及时序143.3.4 LCD1602的RAM地址映射及标准字库表163.3.5 LCD1602的一般初始化(复位)过程173.4 超声波测距模块183.4.1 超声波测距介绍183.4.2 HC-SR04超声波测距模块193.4.3 HC-SR04实物图以及接线193.4.4 HC-SR04的电气参数表203.4.5 HC-SR04的超声波时序图203.4.6 HC-SR04的电路设计213.5 蓝牙串口无线模块223.5.1 蓝牙转串口模块的选择223.5.2 HC06基本资料介绍233.5.3 HC06模块AT命令集233.6 电机驱动模块243.6.1 电机驱动模块的选择243.6.2 L298N基本资料介绍253.6.3 直流电机模块274软件分析与设计274.1程序介绍274.2主程序介绍284.3超声波测距程序介绍294.4电机驱动程序介绍305系统的硬件制作与调试315.1 系统硬件制作315.2 系统硬件调试316 总结32参考文献:32致谢3333具有超声波测距功能的智能小车设计曹之然南京信息工程大学信息与控制学院,江苏 南京 210044 摘要:超声波测距部分、液晶显示部分、单片机控制部分、蓝牙遥控部分、直流驱动部分及电源部分在本设计之中一同组成了超声波测距小车。智能小车靠蓝牙遥控运行,智能小车利用7.2V直流电源通过7805稳压以后为芯片供电;这辆智能小车通过两块STC89C52单片机来达成使小车正常运转的目的。在测距进行的期间,HCSR-4超声波测距模块发射超声波,之后芯片本身采集回归的超声波,然后将回波信息传给STC89C52单片机。工序完成之后,系统通过软件程序计算出前方障碍物的距离,传送给液晶实时显示。控制者可以通过蓝牙遥控器发送各种控制指令,蓝牙检测模块HC-SR04收到信号解码完成并反馈给单片机,之后由单片机接收信号控制控制智能小车系统。关键词:STC89C52单片机;LCD1602;蓝牙;HCSR-4超声波测距模Intelligent car with ultrasonic ranging functionCao Zhi-ranSchool of Information and Control, NUIST, Nanjing 210044, ChinaAbstract : Ultrasonic ranging, LCD display part, the MCU control part, Bluetooth remote control part and the DC drive part and a power part in this design together constitute the ultrasonic ranging car.Smart car by Bluetooth remote control operation, intelligent car use 7.2V DC power supply after 7805 steady chip power supply; this car smart car by two STC89C52 microcontroller to achieve so that the normal operation of the car.During the ranging and HCSR-4 ultrasonic ranging module emitting ultrasonic, ultrasonic acquisition regression of the after the chip itself, then the echo message to STC89C52 microcontroller.The processis completed,the systemthrough the softwareprogram to calculate theobstacledistance,sent to theLCD display.Control through the Bluetooth remote controller sends all control instructions, the Bluetooth module is used for detecting the hc-sr04 received signal decoding completed and feedback to the microcontroller, after by the MCU receives the signal control system of smart car.Key word: STC89C52 microcontroller;LCD1602;Bluetooth; HCSR-41 引言超声波测距在非接触测量领域有重要意义,主要优点有:不受电磁波、太阳光和灰尘之类的因素的干扰。距离的丈量标准通过超声波在障碍物以及芯片间的传输时间来计算,要被测量的物体没有被损毁风险。高频率的声音在空气之中的的前进的速度在一定的范围之中与其自身频率没有关联。鉴于上述优点,超声波测距在越来越广泛的领域内被加以应用。当今,社会上可以用超声波测距的地方越来越多,水库、油箱等液体表面的高精度测量和观察以及事物背部杂质的检测以及机械内损耗等方面越来越依赖于超声波测距技术。超声波测距这项技术在日常生活中,如在工业领域、医学领域、农业领域等方面也发挥着至关重要的作用。1.1 课题研究的背景与前景1.1.1 超声波测距发展历史简介目前科学界说法来看,超声波测距是从f1galton在1876年在实验室里面做的气哨实验的相关研究开始的。那个时候Galton 发出的声音频率抵达了300KHz,这个声音是人类第一次产生的高频率声音。超声波测距在其中的促进作用很大,1912的泰坦尼克号轮船在处女航中与冰山相撞后沉没,这令人无比心痛的悲剧事件使得科学家们要想出新的办法来测量未知的危险,在第一次世界大战后,超声波的在研究走在了进一步提升的道路上。在中国,1956在超声波领域开始有了大规模研究。到目前为止,在所有领域都已经开展了研究和应用,其中有几个项目已接近或达到国际水平。伴随着电脑技术的广泛应用,自动化和人工智能技术的快速提高,定位方面的研究越来越重要。超声波测距相对于目前存在的其他几种测距方式,如雷达、红外传、激光等比较,具有以下优点:(1)不论在什么颜色或者光线的情况下,超声波本身的性质变化都可以忽略不计。所以可以用于检测透光的东西和不易漫反射的物体(如玻璃、有机玻璃和抛光体等)。(2)对于外部光以及电磁场不敏感的超声波,在黑暗的环境,灰尘或烟雾的环境下,具有相当大的优势。在强电磁干扰,有污染这些恶劣环境中也可以发挥意想不到的效果。(3)超声波测距模块具备有简单的结构、不大的体积、低廉的成本、不复杂的技术难度,同时处理信息的方式简单,精确,小型化和集成化难度也不大。正是因为上述种种原因,人们已经越来越关注超声波测距并在更多的在日常生活中对超声波测距加以利用和发展。1.1.2 单片机的发展历史单片机在发展的过程中主要可以归纳为三个阶段:初创阶段:从1970年开始到1980年。美国的英特尔公司生产的MCS-48系列单片机可以作为代表,由RAM和ROM、并口、定时器、CPU等构成单片机。这个时期的单片机因为受到了时代科学技术发展的局限性,各方面功能都不是非常的突出,所以能够完成的任务十分的单一,同时不具有良好的性价比。发展阶段:1980年开始到1990年。美国英特尔公司的MCS-51和MCS-96系列单片机可以作为为代表, 8位和16位的单片机类型开始在这个时代里面随着科技的发展崭露头角,单片机的指令功能得以增强,可以存贮的东西也变多,I/O端口的数量和种类也得以大幅的增加,拥有了A/D转换器。单片机能够从事的事情越来越多。快速研发阶段:从1990年开始到现在。单片机在这个发展阶段里面取得了举世瞩目的成就,单片机的种类越来越多,甚至在各行各业的劳动工作之中,出现了特别适配的单片机,单片机的性能得以大幅度的提升,而且能够完成的任务越来越多。1.1.3 液晶的发展历史液晶是一种拥有着特殊的物理性质、特殊的化学性质以及特殊的光学性质的新兴的高分子材料。从1950年左右开始就一直被广泛应用到轻薄型的显示上。组成液晶的分子,它们的形状比较特殊,拥有者流动性,也拥有者结晶的光学特性。液晶在特定条件之下可以结晶,在温度比较低的情况下被称之为液晶。液晶是一种有机化合物,其中心为碳。当一个液晶拥有两种物质,它的光学性质就开始变得特殊化,对电磁场的作用的敏感度也变得越来越强,就有了很高的应用价值。以液晶为主的显示材料通常被用于显示板等各个方面。这种光电显示材料巧妙使用了液晶的光电效应将电信号转换化为数字或字符以及图像信号。正常情况下,液晶的分子的排列顺序遵照某规则,呈通透状态,一旦加上电场的干扰,将会打乱液晶的分子排列,其中一部分就不再通透,色彩会加深,因而呈现数字图像。1.2 超声波测距的原理及误差分析超声波测距的原理众所周知,发射点到被测量障碍的实际距离需要通过计算超声波测距模块发出超声波的时间和接收到超声波回波的测量时间来决定。因此,超声波测距的道理和雷达测距的作用道理是一样的。测距的公式表示为:L=CT 本式中设测量的距离长度为L;设超声波在空气中的传播速度为C;设丈量距离传输的接收发射时间差值是T (T是发射时间和接收时间数值之差的二分之一)。超声波容易定向放射、长处主要有容易控制强度、良好的方向性、与障碍物可以不接触等,所以超声波是各种距离测量的理想工具。现阶段中国的超声波测距技术能够在测量之中达到实际上厘米级的测量精度。根据上文中提及的超声波测原理L=CT,所以我们便知道了:超声波测距的主要误差原因是传输速度误差和传输时间测量误差造成的。所以说,只要控制好传输时间的测量误差和传输速度的测量误差,超声波测距的误差就可以很好地控制。通过查阅相关资料,我们能够轻而易举地知道装备有12MHz晶振的单片机STC89C52能够达到的精度相当的高。所以本次设计之中,我们使用了装备有12MHz晶振的STC89C52单片机的定时器可以让我们测距结果尽可能的切确,这样能够让我们的超声波测距智能小车更加完善。1.3 本设计的主要目标和要求超声波测距部分、液晶显示部分、单片机控制部分、蓝牙遥控部分、直流驱动部分及电源部分在本设计之中一同组成了超声波测距小车。智能小车靠蓝牙遥控运行,智能小车利用7.2V直流电源通过7805稳压以后为芯片供电;这辆智能小车通过两块STC89C52单片机来达成使小车正常运转的目的。在测距进行的期间,HCSR-4超声波测距模块发射超声波,之后芯片本身采集回归的超声波,然后将回波信息传给STC89C52单片机。工序完成之后,系统通过软件程序计算出前方障碍物的距离,传送给液晶实时显示。控制者可以通过蓝牙遥控器发送各种控制指令,蓝牙检测模块HC-SR04收到信号解码完成并反馈给单片机,之后由单片机接收信号控制控制智能小车系统。2 总体设计方案超声波测距智能通过硬件部分和软件部分两者组成。硬件部分主要用于实现接收发射超声波、液晶显示、接收蓝牙信号和驱动直流电机运行等功能。信号处理和操作,驾驶控制等功能是智能车的软件部分负责的。本设计使用了两块AT89C52单片机,一块负责驱动小车,一块负责其余模块的工作。系统结构如图2.1所示:图2.1 系统结构图3 系统硬件设计3.1 电源电路设计模块这个设计全部工作模块的工作电压均为+5V,但是一般电池提供的只能是+7.2V,而且其随着使用电池的时间慢慢变长,电池的电压也会慢慢地下降,不稳定,所以我们采用了7805稳压芯片。我们设计之中以7805作为稳压芯片,它提供的电流区间可以是300mA到500mA,这和芯片供电的要求相吻合。设计采用锂电池供电模式。电机驱动电源和控制电路均是由它负责的。DC/DC转换电路图3.1所示图3.1 DC/DC转换电路图3.2 串行通信模块3.2.1 STC89C52单片机介绍本设计中智能小车采用的单片机是STC89C52单片机6-8,它是低功耗高的并且高性能的8位的微型计算器。采用CMOS电路,那么其功耗就会比使用TTL门电路的产品低,做功损耗也会变少,工作稳定1。STC89C52单片机的内核是MCS-51,完全兼容以前版本的AT89C51单片机功能(特梅尔AT89C51是一种高效的微控制器,因为它是多功能的8位CPU和闪存芯片上的组合)。而且有了更多先进的设计,可以实现更多的实用功能。STC89C52单片机可以帮助大家了解单片机,是很适合成为学习的单片机应用的入门产品。3.2.2 STC89C52引脚描述STC89C52单片机一共由四类,共计40个引脚组成。其引脚图如图3.2所示: 图3.2 STC89C52引脚原理图(1)电源引脚(2根)Vcc(40脚):接+5V电压。GND(20脚):接地。(2)晶振引脚(2根)XTAL119脚以及XTAL218脚这两根引脚的作用是用于把来自外面的震荡信号传输到系统内部的时钟发生器的,为晶振引脚。时钟振荡电路图如图3.3所示: 图3.3 时钟振荡电路(3)控制和复位引脚(4根)ALE(30脚):该引脚的作用是锁存它在锁存外部存储器的时候其中的低字节。当不访问外部存储器时,ALE端口仍能产生固定脉冲信号,频率为振荡器的1/6。并且可以驱动8个TTL门电路2。PSEN(29脚):可以用来对信号的选通起到相关的作用,并在外面的存储器进行读操作时起相关功能。在读取指令时,每个机械周期可有两次脉冲有效。当读取数据时,则没有信号。PSEN和ALE一样,能够启动8个TTL门电路。EA(31脚):当此引脚为高电平时访问内部存储器,当内部存储器容量不够时则转为访问外部存储器。当此脚为低电平时,直接访问外部存储器3。RST(9脚):当单片机拥有晶振时,持续两个机械周期的高电平可是单片机复位。复位电路图如图3.4所示: (a)无手动复位功能 (b)手动复位图3.4 复位电路图(4)I/O引脚P0口(3239脚):8位双向通讯口,可做并口使用,有0和高阻态两种状态,当外接驱动电路时需要接上拉电阻,以获得能够驱动电路的电压12。P1端口(18脚)、P2端口(2128脚):这两个均是8位准双向通讯口,都有着两种状态(0和1),因故不能锁存。P3口(1017脚):P3口除拥有8位准双向通信口功能之外也拥有第二种功能,具体功能如下表3.1所示:表3.1 P3口第二功能引脚第二功能P3.0RXD(串行口输入端)P3.1TXD(串行口输出端)P3.2INT0(专用请求端外部中断0,当为电平为低电平时奏效)P3.3INT1(专用请求端外部中断1,当为电平为低电平时奏效)P3.4T0(定时器/计数器,0脉冲输入端)P3.5T1(定时器/计数器,1脉冲输入端)P3.6WR(输出端外部存储器写选通,当为电平为低电平时奏效)P3.7RD(输出端外部存储器读选通,当为电平为低电平时奏效)3.2.3 单片机硬件资源单片机的硬件资源主要包含有特殊功能寄存器、中断和堆栈、ROM(内部程序存储器)、RAM(内部数据存储器)、定时器、计数器、寄存器区、指令系统以及布尔处理器,如图3.5所示:图3.5 单片机内部结构图3.2.4 单片机串行通信协议介绍(1)协议简介:控制机将地址,数据和校验和打包发送给显示机,显示机接收数据到buf1,数据校验完毕后将3个数据保存到 buf2,供显示读取。(2)通信格式:每一组数据共5个字节:地址(一个字节), 电容电压(一个字节), 太阳能电压(一个字节), 温度(一个字节), 校验和(一个字节)。例如: 7f 89 23 42 xx /xx为89 23 42的逻辑运算结果(3)地址设置双机首地址必须一致,暂定0x7f11。(4)校验和校验和是中间三个数据的逻辑运算,例如 checksum = (inbuf11inbuf12inbuf13); /异或校验checksum = (inbuf11+inbuf12+inbuf13); /和校验(5)发送机参数设置发送机将控制机将地址,数据和校验和打包发送,以下为发送机串口定义方面的一些参数设置。为了准确的和串口通讯的精确度匹配,本次设计中单片机的外部振荡电路选择12MHz的晶振。 void init_serialcom( void )/设置串口的初始化 TMOD = 0x20;/设定定时器1作为8位自动重装的方式运作 SCON = 0x50;/设置8位数据,可变的波特率 TH1 = 0xFD;/设定定时器的初始值 TL1 = TH1; PCON = 0x00;/设置波特率不倍速 EA = 1;/开总中断 ES = 1;/开串口中断 控制机可能用不到ES,后续可以尝试删掉测试 TR1 = 1;/启动定时器1(6)接收机参数设置接收机接收数据到buf1,数据校验完毕后将3个数据保存到 buf2,供显示读取。 void init_serialcom( void )/设置串口的初始化 TMOD = 0x20;/设定定时器1为8位自动重装方式 SCON = 0x50;/设置8位数据,可变的波特率 TH1 = 0xFD;/设定定时器的初始值 TL1 = TH1; PCON = 0x00;/设置波特率不倍速 EA = 1;/开总中断 ES = 1;/开串口中断 TR1 = 1;/启动定时器1(7)数据调试发送和接收都是十六进制 0x开头,可用串口调试助手,找到串口,进行如下设置,即可进行调试,调试方法根据协议来制定。串口调试参数设置如图3.6所示:图3.6 串口调试参数设置(8)串行模块接线图本设计中单片机的通信将使用P3口的第二功能,如上文所说。因故下面我们将列出串行输入口P3.0RXD和串行输出端口P3.1TXD的布线图,如下图3-6所示:图3.7 串行通讯模块接线图3.3 接收显示模块接收显示模块电路主要包括STC89C52、振荡电路和LCD1602,电路图如3.8所示:图3.8 液晶显示模块接线图3.3.1 LCD1602介绍1602液晶全程1602字符型液晶,也叫做LCD160213。是一种点阵型液晶模块,可以用来用来显示字母、数字以及符号等信息。若干5*7和5*11这一类点阵字符位共同组建了LCD1602模块。在LCD1602之中,每个点阵字符位均可以显示出一个字符,而且每位之间将会有一个点距的间隔,同时每一行之间也会有相应的间隔,所以可以显示行间距以及字符间距,也因故LCD1602不能很好地显示图形。1602LCD可以显示两行,每行16个字符。LCD1602是基于HD44780的液晶芯片,所以LCD1602可以适用基于HD44780编写的控制程序。1602的管脚如图3.9所示:图3.9 1602管脚图一百六十个不同的点阵字符图形被存储在液晶模块LCD1602里面的的CGROM(字符发生存储器)里面。它们分别为:英语字母的大小写,阿拉伯语,日语的假名,常用符号,每个字符和图形都有固定的代码与之相应。LCD1062显示屏的接线图如图3.10所示,操作指令表如表3.2所示:图3.10 液晶显示模块引脚接线图表3.2 液晶显示模块操作指令表操作读状态写指令读数据写数据输入RS=0,RW=1,E=1RS=0,RW=0,D0D7=指令码,E=H脉冲RS=1,RW=1,E=1RS=1,RW=0,D0D7=数据,E=H脉冲1602LCD有两种型号,一种是带背光的,另外一种是不带背光的。其中带背光的比不带背光的厚,在实际应用中,带不带背光并无差别,功能完全相同,所以在实际生活中可以根据自己的需要选择带有背光的或者不带有背光的。现将两者的对比图展示在文中,以供大家选择。两者尺寸差别如图3.11所示:图3.11 液晶显示屏的尺寸类型图液晶显示屏的主要特性概要如下:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm3.3.2 LCD1602引脚功能说明1602液晶显示器使用符合规范的无显示光的14脚接口,也可以是有显示光的16脚接口,如下表3.3所示,给出了它们每个的情况:表3.3 引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极LCD1602共有十六个引脚,每个引脚都拥有着自己的功能和作用,在整个电路中起到特定的效果。现将各个引脚的说明全部汇总列出制作成表格并呈现出来,各个引脚的详细情况表如下表3.4所示:表3.4 各个引脚的详细情况表引脚说明第1脚VSS为地电源第2脚VDD接5V正电源第3脚VL是液晶显示器对比度调整端,对比度最弱时要接正电源,对比度最高时要接地,“鬼影”会产生在对比度过高时,10K的电位器可以在使用的时候调整对比度第4脚RS是寄存器选择,电平为高时采用数据寄存器、电平为低时采用指令寄存器第5脚R/W是读写信号线,电平为高时采用读操作,电平为低时采用写操作。当RS和R/W均为低电平时能够写入指令或者显示地址,当RS为低电平但是R/W为高电平时能够读忙信号,当RS为高电平并且R/W为低电平时能够写入数据第6脚E端是使能端,当E端的电平由高变低时,LCD1602液晶模块执行命令第714脚D0D7为8位双向数据线第15脚背光源正极第16脚背光源负极3.3.3 LCD1602的指令说明及时序共计有十一条控制语句被包含在LCD1602内部,如下表3.5所示:表3.5 液晶模块内部控制器控制指令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容LCD1602液晶的读操作、写操作、屏幕操作、光标操作都是依靠指令编程才能实现。(说明:1为高电平、0为低电平),它的指令详解如表3.6所示:表3.6 液晶模块控制指令详解表指令指令含义指令1清显示,指令码01H,光标复位到地址00H位置指令2光标复位,光标返回到地址00H指令3光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁指令5光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标指令6功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符指令7字符发生器RAM地址设置指令8DDRAM地址设置指令9读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙指令10写数据指令11读数据基于HD44780芯片的其他芯片的时序表如表3.7所示:表3.7 基本操作时序表读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无读操作时序图如图3.12所示:图3.12 读操作时序写操作时序图和图3.13所示:图3.13 写操作时序3.3.4 LCD1602的RAM地址映射及标准字库表LCD1602液晶显示模块必须确认模块的忙标志的电平为低,在任何一条指令被执行之前都必须确认,此时,是不忙的状态,如果不这样做的话,那么这条指令就会失去作用效果。在显示字符之前,必须先输入显示字符地址。LCD1602的内部显示地址如图3.14所示。图3.14 1602LCD内部显示地址在对LCD1602的初始化设置中,必须先设置它的显示模式,在LCD1602显示字符的运作状态下,光标会自动右移。但是在新一次指令被输入之前,LCD1602均需判断是否处于忙的状态。一百六十个不同的点阵字符图形被存储在液晶模块LCD1602里面的的CGROM(字符发生存储器)里面。它们分别为:英语字母的大小写,阿拉伯语,日语的假名,常用符号,每个字符和图形都有固定的代码与之相应。字符代码与图形对应表如表3.8所示:表3.8 CGROM和CGRAM中的对应表3.3.5 LCD1602的一般初始化(复位)过程延时15mS写指令38H(不检测忙信号)延时5mS写指令38H(不检测忙信号)延时5mS写指令38H(不检测忙信号)每新写一次指令,读数据操作与写数据操作都务必检测忙信号写指令38H:显示模式设置写指令08H:显示关闭写指令01H:显示清屏写指令06H:显示光标移动设置写指令0CH:显示开及光标设置3.4 超声波测距模块3.4.1 超声波测距介绍因为超声波测距这一测距方式相对于其他的测距方式有着很多优点,而且环保健康,对生活环境没有任何毒害作用,所以,在我们的日常生活中和科学探索领域里面,超声波测距的应用越来越广,更多的科学技术发展领域、日常生活中,我们更加依赖于超声波测距这一项非常具有前景的新兴的科学技术。HC-SR04被选中作为超声波测距模块,在本次设计中得以使用。具体操作方式为:给HC-SR04的放射端高电平信号,让其瞄准前方,发射超声波。在超声波放射出去的同时,我们通过程序操控定时器开始计时,发射出来的声波在空气之中前行,遇到前方障碍物即返回,待HC-SR04接收到回波的时候,传送命令,通过程序控制定时器停止计时。假设忽略温度影响,在一般情况下和温度中,空气中超声波的传输速度是340米每秒,设T是从开始到结束记录的数据,设S是障碍物到测距智能小车之间的距离,那么我们可以得知,距离S=340*T/2。这便是为我们大家所熟知的时间差测距法。超声波测距原理图如图3.15所示: 图3.15 超声波测距原理图使用方法:(1使用IO 触发以测量距离,给TRIG以25US的高电平信号(至少10US);(2)模块自主发射8个频率为40khz的方波信号,自主检测信号的返回与否;(3)当发现有信号通过ECHO返回时,ECHO 立即输出一高电平,高电平所存在的时间值就是超声波从发射到返回的时间。通过单片机IO端口操作,TRIG 放射出25US的高电平(最低要10US),之后就可以让接收口ECHO等待静候高电平的出现。定时器要在ECHO电平从低变到高伊始就开始准备进行计时,在ECHO 由高电平变为低电平的时候就需要看定时器的读数,他们之间记录的数值的相差值就是超声波所传播的时间。3.4.2 HC-SR04超声波测距模块本设计采用HC-SR04 超声波测距模块。HC-SR04模块能共进行非接触式距离感测功能,它能够提供的范围是2cm-400cm,测量的误差能够切确到3毫米;HC-SR04超声波测距模块主要包含了超声波发射器、接收器以及控制电路。;HC-SR04超声波测距模块的运作基于:让 IO端口TRIG启动测距,给25us的高电平信号(最少不得低于10us);HC-SR04将会自主的放射出八个频率为40khz的方波,并将等待是否有回波;如果有回波被接受到,利用IO端口ECHO放射出一个比较高的电平,而超声波在空气中传输所花费的时间和高电平持续的时间将会是一模一样的。3.4.3 HC-SR04实物图以及接线HC-SR04的实物图如图3.16所示:HC-SR04的规格图如图3.17所示:图3.16 HC-SR04规格图图3.17 HC-SR04规格图HC-SR04一共有四条线,分别为:VCC(提供5V电源),GND(用于接地),TRIG(用于触发控制信号输入),ECHO(用于接收回响信号输出),都已在实物图中标注3.4.4 HC-SR04的电气参数表HC-SR04的电气参数表如表3.9所示:表3.9 HC-SR04的电气参数表电气参数超声波测距模块HC-SR04工作电压DC 5 V工作电流15mA工作频率40Hz最远射程4m最近射程2cm测量角度15 度输入触发信号10uS 的 TTL 脉冲输出回响信号输出 TTL 电平信号,与射程成比例规格尺寸45*20*15mm3.4.5 HC-SR04的超声波时序图HC-SR04的超声波时序图如下图3.18所示图3.18 HC-SR04超声波模块的时序图如上图所示,时序图说明了我们仅仅要给与25us的脉冲触发信号(最低不得低于10us),HC-SR04超声波测距模块内部就放射出8个以40kHz为周期的电平并在之后将会接收回波。只要收到回波信号,那么输出回响信号的脉冲宽度与障碍物到超声波测距智能小车之间的距离将会存在着正比的关系。透过这个原理,我们只需要利用发射信号时时间的读数和接收到回波时时间的读书,二者相减,我们就能够计算得到需要测量的距离,即障碍物到小车之间的距离。对回响信号的影响:(1)这个模块不应该带电连接,如果出现一定要带电连接的特殊情况,那么就要让模块内的GND端率先接地,不然的话就将影响这个模块的工作情况;(2)在超声波测距进行的时候,障碍物的面积需要保证大于等于 0.5 平方米。同时被测量的平面要保持尽量平整,不然的话测量的结果将会受到影响。3.4.6 HC-SR04的电路设计HC-SR04超声波传感器的内部结构及电路工作原理如图3.19和图3.20所示,该传感器主要包括两大部分:发射电路和接收电路。只需要对它给予的脉冲触发信号在10us以上,HC-SR04超声波测距模块内部就放射出8个以40kHz为周期的电平并在之后将会接收回波。只要收到回波信号,那么输出回响信号的脉冲宽度就会和要测量的距离成正比。通过这个原理,利用发射信号到收到的回响信号的时间计算差值,我们就能够计算得到需要测量的距离。公式在上文中已经有提及。超声波传感器发射电路图如图3.19所示:图3.19 超声波传感器发射电路图以方波发生芯片,40kHz的晶振以及MAX232芯片等为主体,这些元件一起共同组建了超声波传感器中发射电路部分。当方波发生芯片从单片机那里接收到触发信号之后,这个芯片便开始了工作过程,发射40kHz的方波信号,TTL电平通过电平转换芯片MAX232被转换成可以使振荡器被驱动工作的高电压,更进一步的,发射亟需的40kHz的超声波。超声波传感器接收电路图如图3.20所示:图3.20 超声波传感器接收电路图超声波测距智能小车的制作过程中选取了TL740C芯片作为了前置放大电路、带通滤波电路和后级放大电路设计的核心。TL740C芯片把会接收到的波形放大(通过如整形放大、积分放大、检波放大、滤波放大或者限幅放大等放大方式),让超声波测距模块更好的接收超声波回波并准确测量出数据。当被测量的距离遥远的时候,收到的回波信号将会越来越微弱,而再经过转换后的信号电平的幅值将会变得越来越小,所以我们必须要让信号通过一些放大,来让输出的功率达到我们所需要的要求。同时为了防止信号出现太大的失真的情况发生,接收电路可以保证有4MHz的宽带。经过放大之后的交流信号需要被送进比较器,然后再输入一个方波信号,同时让触发器被触发,向控制中心发出中断的请求。3.5 蓝牙串口无线模块3.5.1 蓝牙转串口模块的选择在本设计中,蓝牙串口模块分为主机模块和子模块(从机模块)。其中主机模块能够和从机模块相配对,进而通信,但是从机模块和另一个从机模块之间不能通信,主机模块和另一个主机模块之间也不能进行通信。子模块还能够与计算机、智能随身设备等先进设备的蓝牙进行连接。在本设计中,蓝牙模块主要用于接收命令信号(来自移动终端发送),因此在本设计中,我们需要子模块。蓝牙串口模块的工作原理方面,只要是用名字为偶数的模块之间是相互兼容的,例如:HC-04与HC-06是想相互兼容的,HC-03蓝牙模块与HC-05蓝牙模块是相互兼容的。但是HC-04蓝牙模块和HC-06蓝牙模块是很早的蓝牙模块。使用这些模块的时候,用户们不能够自由切换使用主模块或子模块,并且AT指令集相当的匮乏,你如说不能够修改蓝牙名(只有子模块才能修改蓝牙的名字),不能变更蓝牙密码,不能修改波特率,不能够查看模块资料版本等这些基本但就是不能执行的不方便的地方。但是在我们的超声波测距智能小车里面我们只要达到非常简单的连接的目的,所以还是选择使用了HC-06这个型号。HC-06蓝牙模块只能记得最近的和它连接过的子模块,而且只能够和这个子模块连接,必须要等到KEY(26脚)接收到高电平启动之后才能够解除和这个子模块的连接(26脚默认的电平应该为低)。3.5.2 HC06基本资料介绍(1) 以CSR为核心芯片,符合目前市场上普遍做法,采用了V2.0蓝牙协议。(2) 3.3.V电压时串口模块工作的推荐电压。如果工作有底板,可以是3.1V-6.5V的电压。(3) 使用者能够自行改变波特率。可用的波特率有:1200,2400,4800,9600, 19200,38400,57600,115200。(4) 本设备的主要内核大小是28毫米* 15 毫米* 2.35毫米。地板的大小是27毫米*47毫米。(5) 当进行配对操作时,工作电流需达到50mA,其他情况下配对电流是28mA。(6) 本产品没有休眠状态,所以没有休眠电流。(7) 产品能在GPS导航,工业方面等方面发挥作用。(8) 能够和一切含有蓝牙模块的智能设备进行配对操作。(9) 1234是出厂的时候从机默认的配对密钥,以后请自行更改。3.5.3 HC06模块AT命令集(1) 测试通讯发送:AT(返回OK,一秒左右发一次) 返回:OK(2) 改蓝牙串口通讯波特率发送:AT+BAUD1 返回:OK1200 发送:AT+BAUD2 返回:OK24001-1200 2-2400 3-4800 4-9600 5-192006-38400 7-57600 8-115200 9-230400 A-460800B-921600 C-1382400为了防止信号的干扰作用让我们的蓝牙系统工作出现不稳定的情况,所以使用的时候波特率必须低于115200。 波特率在被调整为不小于115200后的情况下,计算机是没有办法操作的,需要通过系统上面的编程让设定改变,然后波特率高于115200的情况下才能重新操作此波特率,并且才能够重新发AT命令设低波特率。使用AT命令来设置波特率,在下一次通电的时候就不需要再一次设置波特率了,因为它是能够掉电保存的。(3) 改蓝牙名称发送:AT+NAMEname返回:OKname参数name(名字):需要设定的蓝牙名称,也就是蓝牙被搜索的时候显示的名称。必须要低于20个字符。例如:发送AT+NAMEabc;返回OKname。当这个时候,蓝牙的名称就被改成了abc,这个参数是可以在电流消失后继续被保存的,因故只要修改一次即可。随后在掌上电脑上面重新加载便能看见重新命名的蓝牙。(4) 改蓝牙配对密码发送:AT+PINXXXX;返回:OKsetpin。参数XXXX:这是我们需要设置的蓝牙之间的配对密钥,长度为4个字节大小。这个命令从机模块或主机模块都可以使用。如果是从模块机,从机适配器或智能装置将弹出窗口,要求输入密钥,这个时候,我们手动输入此设置密码可以连接。主机的情况,就是在使用蓝牙模块关闭设备的时候(设备是从机)找到设备的配对密码,再键入蓝牙模块,然后我们的主蓝牙模块可以自动连接到设备。例:发送AT+PIN0000;返回OKsetpin。这个时候,蓝牙配对密码就被设置为0000。我在我们的设备出厂到我们购买使用的期间,它的默认配对密钥是1234。这个参数在电流消失的时候可以继续被保存,所以只需修改一次就可以了。3.6 电机驱动模块3.6.1 电机驱动模块的选择方案一:使用A3972驱动模块。A3972的设计独立于接收和分配机,也是建立在双台(频道)的基础上的。因为这些原因,在这个驱动模块里面包含了电路,可以进行电机切换,因故能够让不同时间工作的两路电机的启动,但是并不经济实惠。方案二:L298N是ST公司生产的芯片。有以下几个特点:最高可以承受达到46V的工作电压,可以让两个二项电机工作,在让输出电压改变这个方面的操作上,可以直接利用电源来执行;能够直接通过单片机的I/O端口发射信号,而且拥有相对简单的电路,所以使用起来是比较方便的。通过以往的实验数据来看,L298N驱动模块使用过程中相当可靠,能够得到良好的实验效果。L298N驱动模块的电路的电气性能良好、电路的散热性能十分优良。因故在超声波测距智能小车里面, L298N被选中来作为超声波测距智能小车的电机驱动模块。L298N模块在控制电机的正转操作、反转操作以及停止操作方面是依靠通过程序改变I/O端口的输入控制并且改变控制端的电平造成变化来达成的。L298N电机驱动模块的引脚图如表3.10所示:表3.10 L298N模块逻辑关系图EnALn1Ln2运转状态0XX停止110正传101反转111立停100停止L298N电机驱动模块的主要特性:(1) 可实现电机正反转及调速。(2) 启动性能好,启动转矩大。(3) 工作电压可达到36V,4A。(4) 可同时驱动两台直流电机。3.6.2 L298N基本资料介绍L298N使用了15脚封装的封装模式。L298N的主要特性有:(1) 较高的工作电压,工作电压的峰值甚至达到了46V;(2) 较大输出电流,输出电流的瞬间峰值电流能够有3A,持续工作电流是2A;(3) 内部有两个H桥的高电压、大电流全桥式驱动器,能够驱动直流电动机和步进电动机、继电器线圈这些感性负载;(4) L298N使用了标准逻辑电平信号来加以控制;它有着两个使能控制端,在不受

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论