首页 >> 新闻中心 >>行业科技 >> 基于FPGA的高精度超声波测距仪设计
详细内容

基于FPGA的高精度超声波测距仪设计

       为了提高超声波的测量精度,利用FPGA技术设计了一种高精度超声波测距仪。采用Quartus II软件在高密度可编程逻辑门阵列(FPGA)上设计了基于SoP C的硬件系统平台,并采用nios II ED S开发软件开发了测量仪的软件系统。利用FPGA内部的硬件资源,设计了高速超声波控制器。温度传感器ds18b20用于测量环境温度,并利用温度校正超声波的传播速度。试验表明,采用该方案设计的超声波测距仪具有较高的测距精度,具有一定的实用推广价值。

0引言

        超声波测距仪是一种利用超声波测量距离的非接触式测距工具。由于超声波具有定向性好、使用方便、成本低、抗干扰能力强等优点,所以超声波测距仪在工业测量、车辆避障、安全警示、液位测量等方面都有应用。机械内部损伤检测、车辆自动导航III和机器人等领域得到了广泛应用。然而,目前大多数超声波测距仪一般采用MCS51单片机作为控制器,其测量精度受定时器时钟频率的限制,不能令人满意。

       针对上述情况,本文利用大规模FPGA设计了一套基于SoPCtgj的嵌入式高精度超声测距系统,采用软硬件协同设计方法,采用自定义IP核技术和温度补偿技术。该测试系统具有高可靠性、高集成度、快速响应、高精度、低成本等特点。

1硬件系统设计

       在硬件系统中,测距仪采用高密度可编程逻辑门阵列(FPGA)作为硬件设计平台,系统设计框图如图1所示。主要器件有Nios lI处理器、A Valon-m总线、JT AG控制器、U APPA控制器、EPCS控制器、超声波控制器、LCD控制器、EPCS4存储器、SD-R AM控制器、SRAM存储器、LDAC显示器、通用I/O口和H.C.SR04超声波收发模块。为了实现复杂的控制,在可编程逻辑门阵列(FPGA)中嵌入了32位Nios II处理器。N ios II处理器是era公司提供的32位软核处理器。在系统设计中,设计者根据项目要求,将ios II软核CPU免费嵌入到A tera公司生产的FPG A中。SD RAM控制器控制外部SD RAM存储核心芯片,用于存储和存储数据。JTA GUA RT控制器可以在线下载和调试程序。EPSC控制器控制EPSC存储芯片,EPSC存储芯片用于存储FP A配置文件;液晶显示控制器控制液晶显示显示测量数据。超声波控制器是根据外接超声波收发模块的电气特性设计的自定义控制器。控制器的输出引脚与外部超声波收发模块连接,控制超声波收发模块进行测距。温度对超声波的传播速度有很大影响。该系统设计了温度补偿电路,提高了测量精度。系统通过PIO连接到DS18B20数字温度传感器。

2. 硬件系统设计

2.1超声波控制器的设计

        超声波控制器是本系统的核心模块,其设计框图如图2所示。它主要由接口单元电路、寄存器组、倍频器、计数器和状态机组成。接口单元电路用于将Valon-M总线连接到超声波控制器。因为接口单元内有一个地解码器,所以控制器中的所有寄存器都可以被Nios II通过地解码器访问。倍频器的作用是将50兆赫兹系统时钟的频率翻倍到100兆赫兹,从而提高系统的测量精度。状态机控制中各模块的协调是通过产生各种定时信号来实现的。TR IG为超声波收发模块的触发信号;EC H O为超声反射接收和判断的输入信号;s T为计数器启动信号,高电平计数器开始计数;CLR是计数器清零信号。当CLR高时,它将计数器值清除为零。H为计数器值,保存控制信号,H为高功率电平,计数器的电流值保存在计数器寄存器中。在超声波控制器中,还定义了三个寄存器,并对其进行了定义.

2. 双状态机模块化设计

        状态机模块是超声波控制器的关键模块,其功能是产生各种定时控制。图3是状态机的状态转换图,有五种状态:空闲、启动、计数、数据保存和计数器清除。上电过程中,状态机处于空闲状态。一旦开始指令被写入控制寄存器,状态机就进入启动状态。在启动状态下,状态机一侧对启动寄存器进行清零操作,另一侧产生超声波测距启动信号TR IG,启动超声波测距模块产生超声波。完成这些任务后,状态机进入计数状态。计数状态下,计数器对100m hz时钟进行计数。当超声波收发模块接收到障碍物反射回来的超声波时,能能值降低,计数器停止计数,状态机进入数据保存状态。在数据保存状态下,计数数据保存在计数寄存器中。保存数据后,状态机进入计数器数据零状态,此时将清除计数器中的值以准备下一次计数。

2. 3硬件平台设计

        超声波测距仪的SoP C硬件设计采用Altera公司的SoP C B开发工具。SoP C B builder是一个功能强大的系统开发工具,它使嵌入式系统设计人员可以很容易地设计基于ios II处理器的片上系统。在SoP CBuilder的图形用户界面中,设计人员可以将SoP CBuilder库中的功能模块添加到系统中。SoPCBuilder还允许设计人员向SoPCBuilder库添加用户定义的逻辑单元。SoPC Builder开发工具定义的硬件系统如表2所示,其中uhrasonc为超声波控制器和用户定义的逻辑控制单元。

2.4温度补偿电路的设计

        超声波的传播速度极易受温度的影响。超声波在室温下的传播速度约为340 m/s,但当温度发生变化时,超声波的传播速度会发生变化,例如当温度升高1℃时,超声波的传播速度会增加0.6 m/s,因此在使用超声波测量距离时,必须考虑温度对超声波传播速度的影响。

db14645e-5061-4b25-bd98-3a4e15543dd0.png

表 2 硬件系统模块的定义

      为了提高测量精度,本系统设计温度补偿电路。 本系统的温度补偿电路主要采用了DS18B20全数字温度传感器来测量环境温度 ,再利用下式对超声波传播速度进行温度补偿 。

c5bbd880-bd0b-44a1-b42e-0783b3219732.png

式中:为超声补偿后的传播速度;T是实际温度。

3.系统程序设计

      为了使测试仪正常工作,还需要设计系统的控制程序。系统程序采用Ahera公司的Nios lI EDS 8.0集成开发环境进行开发。图4是系统程序的算法流程图。程序启动后,ios II主程序对系统的相关设备进行初始化,如LCD屏幕初始化、温度传感器DS18B20初始化、串口初始化等。

系统初始化完成后,ios lI软核CPU读取DS18B20的温度值,得到当前测试环境的温度值。读取温度后,向超声波控制系统中的启动寄存器发送启动命令,启动超声波测距模块移动距离,通过读取状态寄存器的值来了解控制器的工作状态。如果控制器处于工作繁忙状态,控制器会延时一段时间,重新读取状态信息。如果已知控制器处于“空闲”工作状态,则读取计数寄存器中的值,并根据公式(1)对超声波的传播速度进行校正,然后用校正后的传播速度计算距离并显示距离。

4.检查测试结果

       为了进一步评估超声波测距仪的精度,根据上述设计方法,利用高密度FPGA和超声波收发模块设计了测试样机,并对测试样机的性能进行了测试。FPG A采用Altera公司生产的EP 1C 6Q 240 C8,超声波收发模块采用HC。SR 04。表3给出了一组测试样机的测试结果。从试验结果可以看出,使用本试验测量距离时,除测量近距离距离的匹配误差误差为2%外,测量中长距离距离的相对误差均保持在1%以内。该测试仪测量精度高。

ec9a6d8f-ae7b-40d3-8ebc-fcf09e407466.png

表3测试结果

5、总结

       超声波测距仪是一种非接触式距离测量工具,具有许多优点。本文针对传统单片机超声测距仪测量误差大的缺点,采用软硬件协同设计方法和用户自定义IP核心技术,设计了一套基于Nios II的高精度超声测距系统。该系统具有可靠性高、集成度高、响应速度快、精度高、成本低等优点。

参 考 文 献

[1] 汪才杰 ,张大名 ,张米露.基 于 FPG A 的高精度超声波 测距 系统的设计『J].微型机与应用 , 20 12 ,3 1(17 ) :25 —27 .
[2] 张攀 峰 ,王 玉萍 , 张健 ,等 .带有温度补偿 的超声波测距 仪的设计[J].计算机测量 与控制 ,20 12 ,2 0(6) : 17 17 —17 20.
[3]张全禹 ,苏宝林 , 李怀亮 ,等 .基于 FP GA 的超声 波测距 系统设计与实现 [J].电子测试 ,20 14(2 2 ) : 164. 165 .
[4] 赵海 鸣 , 卜英勇 ,王 纪婵.一种高精 度超声 波测距 系统 的研制[JJ.矿业研究 与开发 ,20 06 ,2 6 (3 ) :6 2 .6 5 .
[5] 张芬 , 董浩 斌 ,焦 彦斌 .基 于 C8 05 1F3 20 单 片机 的超 声波测 距仪[J].仪表技术与传感器 , 2009 (12 ) :3 5—3 7 .
[6] 樊红 星 , 张小超 ,刘 磊 ,等.基于 FPGA 的 CM O S 线 阵图像 传感器 数 据采 集 系统 设计 【J】_现 代 电子 技术 , 2015 , 38 (14) : 129—1 3 2 .
[7] 贾颖焘 ,顾 赵宇 ,傅其详 , 等.基 于 FPG A 和 D SP 的雷达信 号脉冲压缩[J]_现代 电子技 术 ,20 15 , 38 (17 ) : 13—16.
[8] 陈鹏名 ,卢 振洋 , 刘嘉 ,等 .基于 FPG A 的图像 与模拟信 号 同步采集系统[J].现代 电子技术 ,20 15 , 38 (19 ) :7 9.8 2 .
[9] 代俊 锋 , 穆欣.基于 SoPC 的伺 服控制器 的方 案研究 [J].现代 电子技术 ,2 015 ,3 8(2 0) : 150. 15 3 .
[1O]赵 小强 , 赵连 玉.超声 波测距 系统 中的温度 补偿 [J】.组合机 床与 自动化加工技术 , 2008 (12 ) :65—68 .



班宁产品汇总   



seo seo