Dispositivo de medición de altura DIY con Arduino: Preciso y fácil de construir
Componentes y suministros
| Arduino Nano R3 | × | 1 |
| Sensor ultrasónico HC-SR04 (Genérico) | × | 1 |
| LCD alfanumérico 16 x 2 | × | 1 |
| Potenciómetro ajustable 10 kohm | × | 1 |
Herramientas y máquinas necesarias
- Soldador (genérico)
Aplicaciones y servicios en línea
- Arduino IDE
Sobre este proyecto
Cuando noté que mis hijos medían su altura todos los días, tuve la idea de hacer este dispositivo. Para saber tu altura, solo tienes que ponerte debajo del dispositivo y activar un sonido que indica que tu altura ha sido medida.
Es muy fácil de construir y solo consta de unos pocos componentes:
- Arduino Nano
- Sensor ultrasónico HC-SR04
- Pantalla LCD
- Zumbador (buzzer)
- Batería
Funcionamiento
Primero debemos instalar el dispositivo con cinta adhesiva de doble cara a una cierta altura, definida previamente en el código y marcada con la letra H en la imagen.
Cuando alguien se pone debajo del dispositivo, el sensor mide la distancia D. El código calcula H-D, que representa realmente la altura de la persona debajo del dispositivo (H1) y muestra este valor en la LCD. La librería «LcdBarGraph» ayuda a dibujar una barra horizontal, donde la longitud de la barra es proporcional a los valores proporcionados. Cuando no hay nadie debajo, el valor calculado es cero porque en ese caso H = D y H-D es cero. El dispositivo se monta en una caja adecuada con la LCD al frente y el sensor ultrasónico en la parte inferior.
Las librerías requeridas, código y esquemático se dan a continuación.
Código
- CÓDIGO
- Librerías
CÓDIGO Arduino
// incluye la librería LiquidCrystal
#include <LiquidCrystal.h>
// incluye la librería LcdBarGraph
#include <LcdBarGraph.h>
// Distancia máxima que queremos medir (en centímetros).
#define max_distance 200
// Crea un objeto LCD. Parámetros: (rs, enable, d4, d5, d6, d7)
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
LcdBarGraph lbg(&lcd, 16, 0, 1); // Crea un objeto LCD Bargraph.
const int trigPin = 9;
const int echoPin = 10;
long duration;
int distance;
int distance1;
int speakerPin = 8;
void setup() {
lcd.begin(16, 2); // Inicializa la interfaz a la pantalla LCD
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
// Escribe un pulso en el pin Trigger del HC-SR04
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Mide la respuesta del pin Echo del HC-SR04
duration = pulseIn(echoPin, HIGH);
// Determina la distancia a partir de la duración
// Usa 343 metros por segundo como velocidad del sonido
distance = duration * 0.034 / 2;
distance1 = 180 - distance; // Altura predefinida H = 180 cm
// Imprime "HEIGHT: " en la primera línea de la LCD
if (distance1 > 100) {
tone(speakerPin, 1000); // Suena buzzer si altura > 100 cm
} else {
noTone(speakerPin);
}
lcd.setCursor(0, 0);
lcd.print("HEIGHT: ");
lcd.print(distance1);
lcd.print(" cm ");
// Dibuja bargraph en la segunda línea de la LCD
lcd.setCursor(0, 1);
lbg.drawValue(distance1, max_distance);
delay(500);
}
Librerías Arduino
Sin vista previa (solo descarga).
Esquemáticos
Proceso de manufactura
- Construye tu propia máquina de escribir deberes casera (DIY Homework Writing Machine)
- Construye un Voltímetro Inteligente con Arduino y Smartphone – Proyecto DIY Fácil
- Construye un Skateboard VR Casero con Arduino, Google Cardboard y Bluetooth
- Construir una rueda medidora DIY precisa con Arduino Nano y encoder rotativo
- Construye un dispositivo de tratamiento radiónico EMR con Arduino DIY
- Medición Precisa de Radiación Solar con Arduino UNO y Shield Ethernet
- Construye una Máquina CNC Totalmente Funcional con Arduino Nano R3
- Simulador de Carreras 2D DIY con Arduino Nano y Servos SG90
- Construye tu Propia Máquina CNC Universal – Guía DIY Completa
- Construye un Cerco RFID Portátil con Arduino – Guía Paso a Paso
- Fresadora CNC 3 Ejes DIY: Construye una Máquina de Precisión