0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用Arduino制作水位指示器

454398 来源:工程师吴畏 2019-08-02 16:43 次阅读

Arduino水位指示器如何工作?

该Arduino水位指示器使用超声波传感器Ping传感器来确定水箱中的水位。 Ping传感器使用声纳测量距离。从该单元发射超声波(远高于人类听觉)脉冲,并且通过测量回波返回所需的时间来确定到目标的距离。 Ping传感器的输出是可变宽度脉冲,对应于到目标的距离。然后将其输入微控制器,确定水位并通过一系列LED显示。

以下项目可以是如果您有一个或直接连接到面板上的ATmega 328微控制器,则可以连接到Arduino板。您还可以查看Jeff的Maker Pro教程,了解如何将超声波传感器连接到Arduino。

Arduino水位指示器代码

将提供的草图复制粘贴到Arduino IDE中并找到“int d = 18;”行并将“18”更改为 坦克的深度,单位为厘米。

//Coded by MATHEW VARGHESE

//Note that the numbering of arduino pins are different from microcontroller pinout

int d = 18; //Enter depth of your tank here in centimeters

int trig = 11; // Attach Trig of ultrasonic sensor to pin 11

int echo = 10; // Attach Echo of ultrasonic sensor to pin 10

int pin1 = 2;//Highest level

int pin2 = 3;

int pin3 = 4;

int pin4 = 5;

int pin5 = 6;

int pin6 = 7;//Lowest evel

void setup() {

pinMode (pin1, OUTPUT);// Set pins to output for controlling I/O

pinMode (pin2, OUTPUT);

pinMode (pin3, OUTPUT);

pinMode (pin4, OUTPUT);

pinMode (pin5, OUTPUT);

pinMode (pin6, OUTPUT);

}

void loop()

{ digitalWrite(pin1, LOW);//Resetting the LEDs to off state

digitalWrite(pin2, LOW);

digitalWrite(pin3, LOW);

digitalWrite(pin4, LOW);

digitalWrite(pin5, LOW);

digitalWrite(pin5, LOW);

// Establish variables for duration of the ping,

// and the distance result in inches and centimeters:

long duration, in, cm; //‘in’ is inches and ‘cm’ is centimeter

// The PING is triggered by a HIGH pulse of 2 or more microseconds.

// Give a short LOW pulse beforehand to ensure a clean HIGH pulse:

pinMode(trig, OUTPUT);

digitalWrite(trig, LOW);

delayMicroseconds(2);

digitalWrite(trig, HIGH);

delayMicroseconds(5);

digitalWrite(trig, LOW);

// The same pin is used to read the signal from the PING: a HIGH

// pulse whose duration is the time (in microseconds) from the sending

// of the ping to the reception of its echo off of an object.

pinMode(echo, INPUT);

duration = pulseIn(echo, HIGH);

// Convert the time into a distance

in = microsecondsToInches(duration);

cm = microsecondsToCentimeters(duration);

delay(100);// To save battery,remove if felt inconvenient

if (in 《 6 * d / 7)// Else is included to light only one led at a level and thus save battery charge

digitalWrite(pin1, HIGH);

else if (in 《 5 * d / 6)

digitalWrite(pin2, HIGH);

else if (in 《 4 * d / 6)

digitalWrite(pin3, HIGH);

else if (in 《 3 * d / 6)

digitalWrite(pin4, HIGH);

else if (in 《 2 * d / 6)

digitalWrite(pin5, HIGH);

else if (in 《 1 * d / 6)

digitalWrite(pin5, HIGH);

}

long microsecondsToInches(long microseconds)

{

// According to Parallax‘s datasheet for the PING, there are

// 73.746 microseconds per inch (i.e. sound travels at 1130 feet per

// second)。 This gives the distance travelled by the ping, outbound

// and return, so we divide by 2 to get the distance of the obstacle.

// See: http://www.parallax.com/dl/docs/prod/acc/28015-PI.。.

return microseconds / 74 / 2;

}

long microsecondsToCentimeters(long microseconds)

{

// The speed of sound is 340 m/s or 29 microseconds per centimeter.

// The ping travels out and back, so to find the distance of the

// object we take half of the distance travelled.

return microseconds / 29 / 2;

}

建立连接

按照附带的Fritzing图表在PCB或面包板上填充电路。这是在运行Arduino的面包板上的ATMEga328。您可以按照Mayoogh Girish的教程在面包板上使用ATMega328制作您自己的Arduino板。如果您使用的是Arduino板,您可以按如下方式连接LED和超声波传感器。

上传代码

将Arduino水位指示器的代码直接刻录到Arduino板或ATMega328P微控制器上。

将超声波传感器连接到水箱上

固定Ping传感器,使其直接面向水箱中的水。带 指示LED的主控板可以在任何舒适的位置固定在家中。任何多芯 电缆(以太网电缆)都可用于连接Ping传感器和 电路的其余部分。请记住,不要增加组件之间的长度 超过20mts。

现在只需连接电池,您的非接触式Arduinowater水平指示器即可使用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 指示器
    +关注

    关注

    0

    文章

    251

    浏览量

    38282
  • Arduino
    +关注

    关注

    188

    文章

    6469

    浏览量

    187061
收藏 人收藏

    评论

    相关推荐

    浅谈架空暂态特征型远传故障指示器

    新品—架空暂态特征型远传故障指示器—深圳鼎信生产厂家 型号:JY -DX 一、背景 随着电力系统的不断发展,对架空线路的安全运行和故障快速定位的要求越来越高。传统的故障指示器大多只能提供就地指示
    的头像 发表于 12-04 16:35 119次阅读

    线路故障指示器为什么变成红色

    线路故障指示器变成红色,通常是因为检测到了线路中的特定电气量变化,这些变化与线路故障紧密相关。具体来说,以下是一些导致线路故障指示器变红的主要原因: 1. 短路或接地故障 短路故障 :当线路中发
    的头像 发表于 09-24 11:04 438次阅读

    线路故障指示器如何复位

    线路故障指示器是一种用于监测电力线路故障的设备,它可以帮助电力维护人员快速定位故障点,从而提高故障处理的效率。复位线路故障指示器是故障处理过程中的一个重要步骤,确保设备能够恢复正常工作状态。以下
    的头像 发表于 09-24 11:01 355次阅读

    线路故障指示器工作原理是什么

    线路故障指示器是一种用于检测和定位电力系统中故障的设备,它能够帮助电力维护人员快速准确地找到故障点,从而提高电力系统的可靠性和安全性。 线路故障指示器的工作原理概述 1. 基本概念 线路故障指示器
    的头像 发表于 09-24 10:54 789次阅读

    线路故障指示器怎么判断故障点

    线路故障指示器在判断故障点时,主要通过检测线路中的电气量变化来实现。以下是一些具体的判断方法和步骤: 一、工作原理 线路故障指示器一般具备电流采集、电场测量和无线通信功能。当线路出现短路或接地故障
    的头像 发表于 09-24 10:52 681次阅读

    使用电源正常状态指示器实现输出放电功能

    电子发烧友网站提供《使用电源正常状态指示器实现输出放电功能.pdf》资料免费下载
    发表于 08-29 09:45 0次下载
    使用电源正常状态<b class='flag-5'>指示器</b>实现输出放电功能

    利用Arduino的数字水位指示器电路设计

    随着科技的不断发展,数字化技术在各个领域的应用越来越广泛。在液位监测领域,数字水位指示器作为一种先进的监测设备,因其高精度、高可靠性和智能化等特点,受到了广泛的关注和应用。
    的头像 发表于 06-22 17:48 1017次阅读
    利用<b class='flag-5'>Arduino</b>的数字<b class='flag-5'>水位</b><b class='flag-5'>指示器</b>电路设计

    内置超级电容模块的故障指示器有哪些特性?

    出现位置,从而及时排除故障。而应用在故障指示器中还有一个重要配件是续航的电池,在传统的故障指示器中使用的续航产品是一次性锂电池或者比较小容量的充电电池。但是这存在
    的头像 发表于 06-04 09:39 458次阅读
    内置超级电容模块的故障<b class='flag-5'>指示器</b>有哪些特性?

    电力电缆故障指示器|误差探讨|行波故障定位的选项

    以往电力电缆故障指示器误差过大的原因可能有以下几点:  1. 设备自身问题:故障指示器设备本身可能存在制造或设计上的缺陷,导致其指示精度不够。 2. 安装环境影响:故障指示器可能受到安
    的头像 发表于 03-28 10:49 928次阅读

    汽车制动失效指示器电路分享

    几乎 40%的事故是由于制动故障问题而发生的。通过及早发现这种情况,我们可以降低事故率。“汽车制动失效指示器”项目是解决这一全球性问题的方法。
    的头像 发表于 02-25 16:02 1095次阅读
    汽车制动失效<b class='flag-5'>指示器</b>电路分享

    水位指示器电路图分享

    水位指示器是一种用于测量和显示容器内水位高度的装置。它广泛应用于各种场合,如工业生产、电力系统、水处理工程、农业灌溉等领域。
    的头像 发表于 02-20 15:25 4773次阅读
    <b class='flag-5'>水位</b><b class='flag-5'>指示器</b>电路图分享

    典型指示器电路图分享

    指示器是一种用于提供信息或指示的设备或组件。它的工作原理和作用取决于其应用领域和设计,但通常都是通过视觉、听觉或触觉等方式向用户传递信息。
    的头像 发表于 02-12 12:24 1408次阅读
    典型<b class='flag-5'>指示器</b>电路图分享

    水位指示器电路图分享

    水位指示器是一种用于检测和指示水位的设备。它通常采用简单的机制来工作,如利用静压力原理将水位信号转换为电信号输出到控制仪表,以对被测介质的液
    的头像 发表于 02-12 09:29 3907次阅读
    <b class='flag-5'>水位</b><b class='flag-5'>指示器</b>电路图分享

    水位指示器电路图分享

    水位指示器是一种用于检测和指示水位的设备。它通常采用简单的机制来工作,如利用静压力原理将水位信号转换为电信号输出到控制仪表,以对被测介质的液
    的头像 发表于 02-12 09:20 1563次阅读
    <b class='flag-5'>水位</b><b class='flag-5'>指示器</b>电路图分享

    电池电量指示器电路图分享

    电池电量指示器是一种装置,也被称为电眼,用于指示蓄电池的电量或充电程度。当电量指示器显示绿色时,表示电瓶电量充足,电瓶是完好的;当电量指示器显示黑色时,表示电瓶电量不足需要充电了;当电
    的头像 发表于 02-07 18:18 9076次阅读
    电池电量<b class='flag-5'>指示器</b>电路图分享