Arduino是现在较为盛行的电子互动渠道,依据嵌入式体系开发,具有运用简略,功用多样,价格低廉等长处,广泛运用于电子体系规划和互动产品开发方面。咱们选用Arduino作为主操控器,结合超声测距模块,1602液晶模块,进行了超声波测距体系的软硬件规划。
一、“电子积木”Arduino
近几年,欧美大学皆适当盛行运用Arduino作为基础的技能,在国内运用Arduino的人也越来越多。
Arduino为什么会这样盛行?首要因为它是一个依据敞开源代码的硬件项目渠道:
1.硬件渠道是敞开的,任何人都能够在Arduino官方网站上下载最新的PCB规划进行仿制,硬件渠道包含依据AVR ATmega128微操控器的主操控电路板,以及很多的各式输入/输出电子模块。输入/输出模块包含开关输入模块、温度压力传感器输入模块、超声测距传感器输入模块、各类显现输出模块、电机操控模块等,乃至还有以太网接入模块。这些模块与主操控电路板的衔接,不需焊接,只需像积木相同拼在一起即可。因而,Arduino也被称为“电子积木”.
2.在软件方面,Arduino有一个归于自己的依据Eclipse的IDE软件开发环境,开发言语选用类C++言语的高档言语,简单被运用者把握。有很多的库文件能够经过互联网下载免费取得,大大简化了程序开发作业。
二、超声波测距原理
因为超声波具有指向性强,在传输中能量消耗低,传达的间隔较远等长处而被常常用于工业操控、修建丈量、轿车倒车体系等范畴。
超声波测距仪是使用超声波发射器向某一方向发射超声波,在发射时刻开端计时,超声波在空气中传达,途中碰到障碍物就当即回来来,超声波接纳器收到反射波就当即中止计时。依据计时器记载的超声波传达时刻,以及超声波在相应介质中的传达速度就能够计算出发射点距障碍物的间隔S=C*t/2,其间C为超声波在空气中的传达速度,t为声波往复所用的时刻。
超声波的传达首要受空气密度的影响,空气的密度越高其速度就越快,而空气的密度又与温度有着亲近的联系。空气中的声波传达速度可近似地表明为C=331.4+0.607*T,其间T是空气介质的温度。超声波的传达速度式中:
C=331.4m/S为零度时的声波速度;T为实践温度(℃)。在测距精度不是很高的情况下,一般以为c为常数340m/s.
三、超声波测距仪的硬件规划
超声波测距仪的硬件规划首要有ArduinoUNO主操控板、超声测距模块LCD1602液晶显现模块。
1.超声波板首要技能参数的介绍:
(1)作业电压:DC5V;
(2)静态电流:小于2mA;
(3)电平输出:高5V;
(4)电平输出:底0V;
(5)感应视点:不大于15度;
(6)感应间隔:4cm-5米;
(7)高精度:0.3cm.
板上接线如图1所示(左数起):
(1)VCC;
(2)trig(操控端);
(3)echo(接纳端);
(4)out(空脚);
5)GND.
2.Arduino与超声测距的衔接方法:
Arduino的数字6脚与超声测距模块的第2脚衔接,Arduino的数字7脚与超声测距模块的第3脚衔接。
3.1602液晶与Arduino板衔接图如图2所示:
4.什物衔接图如图3所示:
四、软件代码
1.在选用Arduino编程的过程中,首要用pulseIn()函数,pulseIn()函数用来读取一个引脚的脉冲(HIGH或LOW)。例如,假如value是HIGH,pulseIn()会等候引脚变为HIGH,开端计时,再等候引脚变为LOW并中止计时。回来脉冲的长度,单位微秒。假如在指定的时刻内无脉冲函数回来。计时规模从10微秒至3分钟。
(1秒=1000毫秒=1000000微秒)语法:
pulseIn(pin,value)或pulseIn(pin,value,timeout)
参数:
pin:你要进行脉冲计时的引脚号(int)。
value:要读取的脉冲类型,HIGH或LOW(int)。
Timeout(可选):指定脉冲计数的等候时刻,单位为微秒,默认值是1秒(unsigned long)超声测距的首要代码:
五、总结
本文以Arduino为作业处理器中心,规划了超声测距模块,准确度到达测距模块精度。因为Arduino是一个开源的体系,能够经过互联网下载免费取得库文件,然后大大简化了程序开发作业。Arduino是合适电子爱好者进行开发产品的一个渠道。