微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于AT89C52单片机的多超声信号融合处理系统设计

基于AT89C52单片机的多超声信号融合处理系统设计

时间:07-25 来源:互联网 点击:
2.5串口通讯模块  
  
在移动机器人超声测距导航系统中,超声测距的结果要上传至移动机器人的主处理器,由其控制机器人采取相应的对策;主处理器也要发送指令控制超声数据的采集和处理。因此单片机和主处理器之间的通讯是整个系统不可或缺的一个组成部分。  
  
在我们的系统中,AT89C52单片机为下位机,移动机器人主处理器为上位机,二者通过RS-232串行口接收或上传数据和指令。在此,系统使用了集成电平转换芯片MAX232来进行RS232C/TTL 电平转换。MAX232的引脚11和引脚12直接和AT89C52的TXD、RXD串行口连接,引脚13和引脚14与RS232连接[4]。  
  
另外,由于超声测距系统受环境因素影响较大,在测量时要考虑到环境温度、自身速度等相关信息。对此系统额外采用了扩展模块设计,在电路中集成了温度、速度测量的电气处理模块,方便信息的综合分析。   

3 系统软件设计  
  
系统软件主要由单片机处理软件和PC机监控软件两部分组成。  

3.1 单片机软件设计  
  
单片机软件主要实现数据的采集和存储、回波的数字处理以及串口通讯等功能。主流程框架如图5所示。根据超声波测距具有的周期性特点,系统通过PC机设定单片机的采集周期。运行一次采集存储子程序即完成一个周期的采集,然后系统调用数据处理子程序进行回波信号的数字处理,并根据串口命令使用通讯子程序将结果发送至PC机。  

  
图5 单片机软件主框架 图6 采集存储子程序流程  
  
在采集存储子程序中,每次模数转换结束时对SRAM频繁的开关操作会占用系统很大的时空开销,影响系统的实时性。对此,系统采用了增设缓冲区的方法。每次A/D转换结束,数据被送往开辟在单片机内部的缓冲区而不是立即写入外存。当八个通道采集完一轮后,再将缓冲区的内容一起写入外部存储器(流程如图6所示)。这样,在保证采样频率一致的前提下有效的提高了系统的实时性。  

3.2 PC机软件设计  
  
系统监控软件使用VC++6.0语言开发,它的作用是通过串口命令控制单片机工作,并抽象硬件设计,为移动机器人导航提供环境信息。  
  
应用该软件,可以实现PC机对单片机的参数及命令设定、数据查询、数据存取以及曲线绘制等功能,并可以通过对数据的进一步融合处理,实时获取障碍物的距离、位置等信息,完成当前作业环境的建模,实现环境感知。软件的运行界面如图7所示。   

4 小结  

  
图7 软件运行界面  
  
本系统专门针对移动机器人导航时的多超声传感器信息融合应用而设计。经实验证明,系统简单实用、稳定可靠,完全达到设计目的。  
  
本文作者创新点:(1)结合移动机器人多超声测距的实际,设计了多通道的融合处理系统,软硬件简单明了,工作可靠,特别适合多传感器信息融合应用。(2)良好的噪声抑制能力和较高的测量精度。由于超声回波信号十分微弱并含有噪声,S/N较小,抗干扰性不强。以往基于模拟电路设定阈值来判断回波的做法往往会受到噪声信号的干扰而造成误判。本系统使用数字信号处理方法,将超声回波数字处理,减少了误判的概率,解决了高噪声背景下的回波识别问题,增加了系统的可靠性。(3)系统基于单片机设计,电路板设计合理紧凑,使得系统具有良好的便携性,相比于基于PC机的数据采集卡更加适合移动机器人应用。(4)良好的抗干扰能力。通过PCB 板上的一些设计及工控机箱来加强对电磁干扰、电压扰动的适应能力, 能够适应恶劣的工作环境。

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

网站地图

Top