微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于AT89C52的超声波测距仪的设计方案

基于AT89C52的超声波测距仪的设计方案

时间:01-25 来源:互联网 点击:

地显示出需要的结果。图5为超声波测距硬件设计的显示电路。

图5 超声波测距显示电路

  2.4 温度补偿电路设计

  本系统中,选择使用温度芯片DS18B20作为温度传感器。DS18B20支持"一线总线"接口,测量温度范围为-55~125℃,在-10~85℃范围内,精度为±0.5℃。现场温度直接以"一线总线"的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量。DS18B20引脚说明如表2所示。

表2 DS18B20引脚说明

  DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。

  温度补偿电路的设计如图6所示,数据输入/输出脚连接到单片机的P0.1脚,电源接口接入+5 V的电压,外加5.6 kΩ的上拉电阻,因为DS18B20是单总线温度传感器,数据线是漏极开路,如果DS18B20没接电源,则需要数据线强上拉,给DS18B20供电;如果DS18B20接有电源,则需要一个上拉即可稳定的工作。由于DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内,检测的温度值在内部进行转换,温度测量结果直接以数字信号输出,单片机对由DS18B20输出的信号进行读取,经过软件对温度数字值实现处理。

图6 温度补偿电路

  2.5 主电路原理图

  该系统主电路原理图如图7所示,单片机采用89C52系列,单片机使用外部时钟源,外接6MHZ的晶振,由P0.0口直接输出40 KHZ的驱动信号给放大电路。接收到回波后,经由CX20106的滤波,产生中断信号,并由p3.2口输出进行中断。显示电路采用简单实用的3位数码管,连接单片机AT89C52的P0口,而三极管连接P2口,作数码管的位选。工作时,首先将系统初始化,启动计时器。并由P0.0脚发出40KHZ的驱动信号,同时打开INT0中断,并且开始等待接收到的回波和中断信号,若接收到回波(单片机接收到中断信号),计时器停止计时,保存时间信息,并且根据温度补偿计算出当前环境下的声速,计算出当前待测距离后储存,并调用显示子程序。测出距离后结果将以十进制BCD码方式传送到LED显示,然后再发超声波脉冲重复测量过程。

图7 超声波测距主电路图

  3 结论

  经过实测,本测距仪能够迅速的测出250 m以内的短距离障碍物,在30-200 cm范围内,误差能控制在1 cm以内,本设计具有简单实用,能耗低,成本低等特点。经过实际测试,发现系统的精度能满足普通需求,若需要进一步提高精度,可采用精度更高但系统更加复杂的双频超声波测距的方法。

参考文献:

[1].DS18B20datasheethttp://www.dzsc.com/datasheet/DS18B20_819975.html.
[2].AT89C52datasheethttp://www.dzsc.com/datasheet/AT89C52_1064535.html.
[3].CX20106Adatasheethttp://www.dzsc.com/datasheet/CX20106A_html.
[4].CX20106datasheethttp://www.dzsc.com/datasheet/CX20106_1135440.html.
[5].BCDdatasheethttp://www.dzsc.com/datasheet/BCD_1225719.html.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top