Crear medidor de distancia y mostrarlo en display con Arduino

Lo que hice es un medidor de distancia con una placa Arduino UNO con un sensor de ultrasonido y luego mostrar la distancia en centímetros en un display de 4 digitos, para que me sirve, en mi caso quiero saber cual es el nivel del tanque de la cisterna para conocer la reserva que tengo de agua potable.

El código final lo saque de dos sitios el primero es un ejemplo de medidor y el segundo es un ejemplo para utilizar el display, no olvides cargar la librería.

https://www.tautvidas.com/blog/2012/08/distance-sensing-with-ultrasonic-sensor-and-arduino/

http://www.techmonkeybusiness.com/tm1637-4-digit-display-example-sketch.html

A continuación dejo el código.

pre.CICodeFormatter{
 font-family:arial;
 font-size:12px;
 border:1px dashed #CCCCCC;
 width:99%;
 height:auto;
 overflow:auto;
 background:#f0f0f0;
 line-height:20px;
 background-image:URL(https://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);
 padding:0px;
 color:#000000;
 text-align:left;
}
pre.CICodeFormatter code{
 color:#000000;
 word-wrap:normal;
}
</style>
<pre class="CICodeFormatter" ><code class="CICodeFormatter"> #include &lt;TM1637Display.h&gt;

const int CLK = 9; 
const int DIO = 8; 

int NumStep = 0;  

TM1637Display display(CLK, DIO);  

const int trigPin = 2;
const int echoPin = 4;

void setup() {
  Serial.begin(9600);
  display.setBrightness(0x0a);  
}

void loop()
{
  long duration, inches, cm;

  pinMode(trigPin, OUTPUT);
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  pinMode(echoPin, INPUT);
  duration = pulseIn(echoPin, HIGH);

  inches = microsecondsToInches(duration);
  cm = microsecondsToCentimeters(duration);
  
  Serial.print(cm);
  Serial.println();

  display.showNumberDec(cm);
  
  delay(100);
}

long microsecondsToInches(long microseconds)
{
  return microseconds / 74 / 2;
}

long microsecondsToCentimeters(long microseconds)
{
  return microseconds / 29 / 2;
}
Oscar Meza

Share
Published by
Oscar Meza
Tags: Arduino

Recent Posts

Como configurar VSFTP para denegar las conexiones por FTP

Para forzar las conexiones por sftp en un servidor VSFTP hay que agregar las siguientes…

54 años ago

Hosting en Español 2024

Voy directo al grano y te digo que en este listado vas a encontrar a…

54 años ago

Mejores Servidores Dedicados Hosting 2024

Aquí encontraras los Mejores Proveedores de Servidores Dedicados. En esta lista podrás comparar sus principales…

54 años ago

Mejor VPS

Aquí encontraras Los Mejores Proveedores de Servidores VPS ó Virtual Private Server Hosting. En esta…

54 años ago

Mejores Hosting Baratos para WordPress

En esta lista encontraras los Mejores Proveedores de Web Hosting , lideres en el mundo,…

54 años ago

Cambiar la red del Docker Harmony Connector de Checkpoint

Para cambiar la red del Docker Harmony Connector de checkpoint creamos el archivo /etc/docker/daemon.json y…

54 años ago