APP下载

基于Arduino的测距和倾角平衡警报系统在桥梁裂缝检测中的应用

2019-11-22陈浩王军民

科技风 2019年28期
关键词:高电平测距警报

陈浩 王军民

摘 要:系统以Arduino为核心,结合HC-SR04超声测距传感器,三维重力加速度传感器GY-521 MPU-6050,XY-V17B语音模块,LED显示屏,实现距离和倾角实时检测并播放语音警报的功能。通过软件代码实现语音模块按条件自动串口触发,安全、稳定、可靠。此系统能进行实时测控并发出警报提示,基于此功能,能够较好的应用于桥梁裂缝的检测。

关键词:Arduino;HC-SR04;GY-521 MPU-6050;XY-V17B;语音警报

1 概述

桥梁裂缝不可避免的会存在,因此对其裂缝的检测是对潜在危险防范于未然的必要步骤。然而桥梁裂缝的检测却是一项高危险性的工作,既要能正常检测维护桥梁又要减少人身危险系数,本次研究正是为解决这些问题的。

系统本身体积小,功耗低,可以安置于无人机上发挥作用。利用倾角模块检测桥墩是否变形,桥梁有裂缝时所检测到的倾角也明显不一样,可根据自己的设定值,待倾角达设定值时发出警报,也可有此大概估计裂缝大小。此外,测距模块可以测出裂缝深度以及防止无人机在靠近桥梁的过程中发生碰撞,具体是根据提前设定好的距离数据和语音文件发出警报,然后人为远距离调控。

2 系统的整体设计方案

系统的主要硬件部分由Arduino板,超声测距传感器HC-SR04,三维重力加速度传感器GY-521 MPU-6050模块,控制语音播放模块XY-V17B,LED显示屏,语音小喇叭,导线若干、3.3V和5V直流电源模块等等。(整体设计框图如下图1)

3 硬件设计介绍

3.1 Arduino简述

Arduino是一款便捷靈活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件集成环境(IDE)。它构建于开放原始码simple I/O介面版,有跟Java、C语言的Processing/Wiring相似的开发环境。主要包含两个的部分:一是用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,即计算机中的程序开发环境。在IDE中编写程序代码,然后上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么,这主要是AVR控制器起作用。Arduino具有开源的硬件原理图、电路图、IDE软件及核心库文件,在开源协议范围内里可以任意修改原始设计及相应代码,还可以根据自己需求设计添加新的库,灵活自由度高。由此,它更受相关爱好者、艺术家、设计师和对于“互动”有兴趣的人群的青睐。

Arduino能通过各种各样的传感器来感知外部环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的AVR可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进AVR。对Arduino的编程是通过Arduino编程语言(基于Wiring)和Arduino开发环境(基于Processing)来实现的。

3.2 HC-SR04

此模块性能稳定,测度距离精确,模块高精度,盲区小。(电路图如图2)

超声波测距模块的工作原理:

(1)采用IO口TRIG触发测距,给>=10μS时间的高电平信号;

(2)自动发8个40kHz的方波,然后检测信号返回情况;

(3)当有信号返回时,通过I/O口ECHO输出一个高电平,那么高电平持续的时间就是超声波从发射到返回的时间(注意是两倍的距离)。故有如下计算式:

S=Vo*TH /2 S:测试距离;Vo:空气中声速,340m/s;TH:高电平时间

(4)本模块使用方法简单,在控制口发一个10μS以上的高电平,然后在接收口等待高电平输出。一有输出就可以打开定时器计时,当这个输出口变为低电平时就可以读取定时器的值,这时就可得到此次测距的时间的两倍,方可算出距离。如此不断的周期性重复此步骤测量,即可以达到你移动时测量的值。

3.3 GY-521MPU-6050模块

GY-521MPU6050 是三维角度传感器,为全球首例集成六轴传感器的运动处理组件。六轴,代表的是它内置了一个三轴MEMS陀螺仪、一个三轴MEMS加速度计,一个数字运动处理引擎(DMP)。可以把原始数据直接转化为四元数据输出,就很方便的计算出姿态数据并在液晶屏和上位机上显示。这样大大降低了MCU的负担,从而有更多的时间去处理其他事件,提高系统实时性。

3.4 XY-V17B语音播放模块

智能语音模块,集成IO分段触发,UART串口控制,ONE_line单总线串口控制,标准MP3等功能;支持MP3,WAV解码格式,最大支持32GTF卡存储,可通过USB数据线连接电脑更新TF卡存储音频文件。本次采用的是UART串口触发。

4 系统的软件环境

整个系统功能的实现基于Arduino IDE编程开发环境。Arduino IDE是一种比较专业的Arduino开发工具,主要用于Arduino程序的编写和开发,有开放源代码的电路图设计、支持ISP在线烧、自定义库的选择可容程度高等优势,同时能兼容Flash、Max/Msp、VVVV、PD、C、Processing等多种程序。

4.1 编程环境

cm =(temp * 17)/1000;

Serial.print("Echo =");

Serial.print(temp);

Serial.print(" | | Distance = ");

Serial.print(cm);

Serial.println("cm");

HC-SR04测距程序,最后换算成厘米单位输出。基于该模块测距原理,实际测量值需除以2。

{

Unsigned char hexdata[8]= {0xAA,0x16,0x03,0x00,0x00,0x01,0xCC};

Serial.write(hexdata,8);

}

上述是距离警报UART触发程序。该段程序调用SD卡事先存储的MP3语音文件00001,提醒距离过近存在安全隐患。警报距离是设定值,可自行更改。

{

unsigned char hexdata[8]= {0xAA,0x16,0x03,0x00,0x00,0x02,0xCC};

Serial.write(hexdata,8);

}

上述是傾斜角警报UART触发程序。该段程序调用SD卡存储的MP3语音文件00002,提醒倾斜度过大存在安全隐患。警报的角度是设定值,亦可自行更改。

当距离与角度均达设定值时,哪项条件先达播放哪段语音,然后再播放另一段已达条件的语音警报,无功能上的冲突。

4.2 关于UART

UART是一种通用串行数据总线,用于异步通信,有可编程的波特率、红外传送(接收)、1~2个停止位、5~8 bit数据位宽、校验位(奇、偶校验)。UART之间以全双工方式传输数据,最精确的连线方法只有3根电线:TxD用于发送数据,RxD用于接收数据,Gnd用于给双发提供参考电平,连线如下图3:

5 结语

本系统以Arduino为控制基础,结合LED显示器,测距传感器,三维重力加速度传感器,MP3语音播放模块等,实现距离以及倾角平衡的安全警报,并能实时显示距离值和倾斜角度。传感器将感测到的信号传递给Arduino,由Arduino控制器程序激发串口命令使得语音自动播放,另由显示屏及时显示传感器数据信息,通过人为控制端的后期数据处理,远距离操控,对于桥梁裂缝的检测起到良好的应用效果。

参考文献:

[1]张秋艳,张俊霞,杨洋.基于MSP430的多功能智能小车设计[J].信息技术,2018(11):54-58.

[2]李德扬.浅谈基于ardunio的超声波测距系统设计[J].民营科技,2016(11):58.

[3]吴迪.基于Arduino的智能循迹小车研究[J].课程教育研究,2019(04):235-236.

作者简介:陈浩(1994-),男,汉族,长江大学硕士研究生,研究方向:地球物理仪器。

*通讯作者:王军民。

猜你喜欢

高电平测距警报
假期终结者
高电平MMC子模块电容电压控制策略研究
是谁的责任?
拉响夏日警报定格无痕迹美肌
数字电子技术的应用
浅谈物理电路与数字电路
关于Multisim10.0的高电平调幅电路仿真研究
电力电缆故障测距分析与应用
220 kV电网行波测距系统组网运行实践探讨