漫谈无线非接触式测距系统

时间:2022-12-12 02:56:11

漫谈无线非接触式测距系统

一、系统硬件设计系统

按功能可分为四部分:超声波测距模块、MCU控制模块、UART转WIFI模块、供电模块。超声波测距模块测量超声波往返时间,MCU控制处理信息得到距离数据,UART转WIFI模块实现数据的无线发送,电源模块为整个系统提供能量。

1.期电平并检测回波,一旦检测到有回波信号则输出回响信号,回响信号是通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间,然后通过时间与距离的计算公式距离=高电平时间*声速(340m/s)/2,计算出测量的距离。

2.MCU主控模块C8051F020采用高速、流水线结构CIP-51内核,峰值速度可达25MIPS,内部有硬件实现的增强型全双工UART串行接口,工作温度范围-45℃~85℃。主控芯片C8051F020通过P1.0引脚输出超声波脉冲触发信号,控制超声波测距模块发送超声波测量距离,由/INT0引脚检测回响信号,高电平来时启动定时器测量高电平时间,计算目标距离,通过多次测量求取平均值减少测量误差。主控芯片C8051F020通过串口UART0与嵌入式模组USR-WIFI232-A通信,TX0发送测量数据,RX0接收测量控制命令,通过无线模块获取PC机发送的控制指令,并传输距离测量结果。

3.UART转WIFI模块USR-WIFI232-A模块支持8011b/g/n无线标准、TCP/IP/UDP网络协议栈和UART/GPIO/以太网数据通讯接口,有STA/AP/AP+STA三种无线工作模式,可选用内置板载或外置天线,提供友好的Web配置页面,3V单电源供电。USR-WIFI232-A模块的UART口支持自由组帧和自动成帧两种模式,由于测量的距离数据都是定长的数据帧,UART串口设置成UART自动成帧模式,以达到最高的转发效率,通过设置打开自动成帧功能,并设置自动成帧触发时间和触发帧长,模块即可将从串口上收到的数据自动组成帧,转发到网络上去。USR-WIFI232-A的无线模块即可以配置成一个无线STA,也可以配置成AP,因此利用USR-WIFI1232-X可以提供十分灵活的组网方式和网络拓扑。本设计中将无线模块配置成STA无线终端,其可以连接到其它AP上,STA之间的相互通信通过AP转发完成,模块可以通过AP转发实现与PC机的无线通信。

4.供电模块供电模块要为超声波测距模块、单片机和UART转WIFI模块供电。超声波测距模块工作电压为5V,因此外部提供5V电源,直接给超声波模块供电,5V电源经过稳压芯片AMS1117得到3V电压,为单片机和UART转WIFI模块提供电源。

二、系统软件设计系统

主程序流程,在测距系统中,系统上电处于等待状态,PC机发送测量命令,系统测量目标距离,并经过数据处理,将最终结果通过串口转WIFI模块发送给PC机进行后续处理和操作。

1.测距程序设计单片机触发超声波测距模块获取回响信号,通过测量回响信号的高电平持续时间计算距离。测距子程序流程,单片机通过P1.0口发送大于10us的脉冲触发信号,回响信号连接到/INT0引脚上,将单片机的定时器0控制位GATE0设置为1,允许定时器0受外部输入信号/INT0的控制,/INT0控制定时器0得到超声波往返时间,系统中为了提高测量精度,测量数据取连续6次测量的平均值。

2.串口通信程序设计UART转WIFI模块通过串口UART0与单片机通信,UART0是一个具有帧错误检测和地址识别硬件的增强型串行口,通信有查询和中断两种方式,本系统中通信采用中断方式。设置串口通信工作方式和波特率,开串行中断,单片机由串口接收到PC机通过WIFI发送的测量命令后,测量距离并将求得的数据通过串口发送给UART转WIFI模块。

三、结语

本系统采用单片机C8051F020、超声波测距模块和嵌入式模组USR-WIFI232-A,设计简单方便的距离测量系统。系统利用超声波测距实现距离的非接触式测量,UART转WIFI模块可以通过AP与PC机实现通信,控制距离测量和回收数据。系统尺寸小、便于安装携带,并且测量精度高。

作者:严正娟张家田王金成单位:西安石油大学光电油气测井与检测教育部重点实验室