单片机的超声波测距的设计

摘 要本设计是通过单片机控制的超声波测距系统,以STC89C52为核心来控制系统和计算发射器和物体之间的距离,并将结果在数码显示出来。硬件系统由超声波收发电路、电源电路、复位电路、显示电路等模块组成。软件系统有主程序和各模块子程序等组成。相关部分都赋有详细的电路图与流程图。本系统安全可靠,精确度高,实用性强,性价比高等优点。
目 录
1 绪论
1.1 课题研究的背景 1
1.2 课题研究的意义 1
2 总体设计方案及论证 1
2.1 设计思路 1
2.2 系统结构设计 2
3 硬件实现及单元电路设计 3
3.1 主控制模块 4
3.2 超声波测模块 5
3.3 测距分析 7
3.4 声音报警电路的设计 8
3.5 显示模块 9
3.6 按键控制模块 10
3.7 电源开关电路 11
4? 系统软件的设计? 11
4.1 超声波测距仪的算法设计? 11
4.2 超声波探测程序流程图 13
5 总结 14
6 参考文献 15
附 录 16
附件1:原理图、PCB图和实物图 16
附件2:程序 19
1 绪论
1.1 课题研究的背景
这两年的“物联网+”想法的提出,使得我们向着万物互联的社会更进了一步。而传感器更是物联网系统中关键的齿轮之一。
超声波测距是一种经典和实用的测量方法,相比于激光测距、无线电测距和涡流测距,超声波测距结构简单,成本低廉,具有非接触性,在很多困难的工作环境中,如测量高速上飞速行驶的汽车车距、深海里的救援与勘测和测量具有有毒有害的化学物体等比较特殊的工作环境中,超声波也具备良好的测量效果,就目前该技术的广泛应用程度上来说,传感器还是起到了不可或缺的作用,在工厂设备的控制,建筑工地的测量,汽车等交通工具和海洋世界的智能化探测与识别,超声波测距都展现出远大的发展前景和发展空间。
1.2 课题研究的意义
超声波测 *好棒文|www.hbsrm.com +Q: ^351916072* 
距也不是十全十美的,超声波在测量中也会面对精确度的考验,在温度对超声波的影响和其他因素的干扰下,超声波往往不能胜任对精确度要求十分高的工作。相比于激光测距,超声波测距不受外界光的干扰,在空气中的传播速度也慢于光速,使得接受的比较全面,易于检测。定向性能好,容易控制强度。
由于技术的发展,人们的需求提高了,对超声波测距的精确度和探测面提出了更高的要求,更希望与智能化接轨,迈进万物互联的新阶段。本文提高超声波测距精确度的想法下,设计了多套超声波的软硬件方案,来提升超声波测距的精确度。
2 总体设计方案及论证
2.1 设计思路
超声波是一种声波,受环境温度的影响。若在传播中温度无剧烈波动,则可视作为超声波在测量的结果无太大误差,如果温度变量无法避免,也可以通过温度补偿的方法对结果进行调整,再通过测量超声波的测量时间来计算出实际距离。
结合模拟电路来实现的话,功耗小,精确度高,使用便捷,奈何资金不足,且控制不易,所以此方案不通过。如果通过数字电路来尽可能实现的话,我们可以根据数字电路的编码解码特性来设计,可是数字电路容易出错,可靠性差,所以此方案也不考虑,用单片机来实现的话,具有智能化,小型化,还可以写入程序,十分便捷使用,所以本设计用单片机来实现,相比于模拟电路的控制不易,数字电路的复杂设计,单片机电路更加简易,便捷,便宜等等优势,便于我们来操作。
经过重重综合考量,本设计选择使用STC89C52单片机,用它来整合超声波的发射和接收系统,计算出超声波回来的时间,通过精确快速的计算来得出实际距离。本系统由超声波发射和接受系统、信号控制和处理系统、信号的输出和显示三个系统来组成。用STC89C52单片机来控制各个模块,用动态扫描法来在LED上显示结果。超声波在空气中的传播速度为340 m/s,加上STC89C5编程产生的38kHz的脉冲,经驱动器驱动后产生超声波,超声波在接触物体后反射回来,若收到的回波,接收电路输出端产生一个低电平的信号,STC89C52单片机会根据时间差来计算距离,并将计算出的结果通过数码管显示出来。
回声探测法是本设计所采用的方法,也是在日常使用中比较普遍的方法,利用超声波发射器对要测量距离的物体发射,与此同时计数器也在发射器发射的同时同步工作开始计数,在超声波抵达被测物体时,根据超声波特性,超声波会反射回来,这时超声波接收器便会自动识别反射回来的超声波,只用同频率的超声波才会被接收,在超声波接收器接收到同频率超声波的同时,计数器就会停止计数,并将所计时间输送给单片机,根据公式:S=340t/2 .得出我们要测量的距离S。
2.2 系统结构的设计
超声波测距仪的系统结构如下图所示。它主要由STC89C52单片机、超声波发射电路、超声波接收电路、超声波传感器、电源电路、8位数码管电路和键盘组成。系统所包含的功能有以下几点:
1.通过超声波在空气中传播的时间来计算出相应的距离;
2.8位数码管显示距离、温度;
3.当系统不能正常工作的情况下,用复位按钮来复位电路;

图21 超声波测距仪系统结构框图
3 单元电路设计和硬件实现

图3.1 总设计电路图
3.1 主控制模块
STC89C52单片机是宏晶科技推出的一款低功耗(功耗4mA~7mA),高速的单片机。基于Intel 标准的8052,工作频率范围:0~40 MHz,实际工作频率可达到48MHz。
支持?ISP/IAP,无需专用编程器,仿真器可通过串口直接下载用户程序,内置4KBEEPROM,4个八位并行端口,看门狗。抗干扰强,对内部的电源,时钟电路,看门狗和复位电路都进行了特殊处理。另外STC89C52可降至0Hz静态逻辑操作。[]
想要本系统的STC89C52单片机能过正常的工作,还需要辅助电路来和单片机组成基础电路,所需要的辅助电路就是复位电路和时钟电路,这就是能够组成单片机系统的最小组成。
时钟电路:时钟电路分外部时钟和内部时钟两种时钟方式,本设计采用12MHz的晶体振荡器。

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

好棒文