Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Construye un Cronómetro LCD Fiable con Arduino Nano – Sin Potenciómetro

Componentes y materiales

Componente Cantidad
Protoboard (genérica) 1
Arduino Nano R3 1
Pantalla LCD estándar Adafruit 16x2 (blanco sobre azul) 1
Pulsador 12mm (SparkFun) 3
Resistencia 10k Ω 5
Resistencia 221 Ω 1
Cables de conexión (genéricos) 26

Sobre el proyecto

¡Hola a todos! Este proyecto es una práctica sencilla para iniciarse con pantallas LCD. Utilizo un Arduino Nano y una pantalla LCD QUAPASS 1602A de 16x2. El cronómetro cuenta horas, minutos y segundos, y permite ajustar el brillo de la pantalla.

Con un pequeño cambio en el código también se pueden contar centésimas de segundo, pero mi pantalla no refresca lo suficientemente rápido para ello.

He ajustado los tiempos casi a la perfección: mi cronómetro tiene una desviación de alrededor del 15 % (si funcionan 10 minutos reales, el cronómetro marca 10 minutos y 2 segundos). Si modificáis la subrutina stopwatch (llamada stopwatch en el programa), tendréis que recalcular los tiempos debido al tiempo de ejecución del código en el Arduino.

Paso 1: Conexiones

Conectad los cables al Arduino y al LCD siguiendo el esquema que se muestra a continuación.

Paso 2: Cargar el código

Copiad el código que aparece más abajo en el IDE de Arduino, conectad el Arduino por USB y pulsad «Subir». El programa debería empezar a funcionar.

Paso 3: ¡A disfrutar!

Disfrutad de vuestro cronómetro LCD sencillo y fácil de construir. Si tenéis dudas, dejad un comentario.

Código

Este es el código del cronómetro. Copiadlo en el IDE de Arduino y subidlo a vuestra placa.

/* Cronómetro LCD simple con botones de inicio, parada, reinicio y vuelta. */
#include <LiquidCrystal.h>

// Pines del LCD (RS, E, D4, D5, D6, D7)
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int h = 0, m = 0, s = 0, ms = 0;

const int start_pin = 8;
const int stop_pin  = 9;
const int reset_pin = 10;
const int brightness_pin = 6;
int brightness = 100;  // Ajustad este valor para cambiar el brillo (0-255)

int start = 0, stop1 = 0, reset = 0;

void setup() {
  analogWrite(brightness_pin, brightness);
  lcd.begin(16, 2);
  pinMode(start_pin, INPUT);
  pinMode(stop_pin, INPUT);
  pinMode(reset_pin, INPUT);
  pinMode(brightness_pin, OUTPUT);
}

void loop() {
  lcd.setCursor(0, 1);
  lcd.print("CRONOMETRO");
  lcd.setCursor(0, 0);
  lcd.print("TIEMPO:");
  lcd.print(h); lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.print(s);

  start = digitalRead(start_pin);
  if (start == HIGH) {
    stopwatch();
  }
}

// -------- SUBRUTINAS --------
void stopwatch() {
  lcd.setCursor(0, 0);
  lcd.print("TIEMPO:");
  lcd.print(h); lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.print(s);

  ms += 10;
  delay(10);

  if (ms == 590) {
    lcd.clear();
  }
  if (ms == 590) { ms = 0; s++; }
  if (s == 60) { s = 0; m++; }
  if (m == 60) { m = 0; h++; }

  lcd.setCursor(0, 1);
  lcd.print("CRONOMETRO");

  stop1 = digitalRead(stop_pin);
  if (stop1 == HIGH) {
    stopwatch_stop();
  } else {
    stopwatch();
  }
}

void stopwatch_stop() {
  lcd.setCursor(0, 0);
  lcd.print("TIEMPO:");
  lcd.print(h); lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.print(s);
  lcd.setCursor(0, 1);
  lcd.print("CRONOMETRO");

  start = digitalRead(start_pin);
  if (start == HIGH) { stopwatch(); }

  reset = digitalRead(reset_pin);
  if (reset == HIGH) { stopwatch_reset(); }
  else { stopwatch_stop(); }
}

void stopwatch_reset() {
  lcd.clear();
  lcd.setCursor(0, 1);
  lcd.print("CRONOMETRO");
  h = 0; m = 0; s = 0;
  return;
}

Librería necesaria

Librería LiquidCrystal para Arduino: GitHub

Esquemático

Esquema de conexiones del circuito.

Proceso de manufactura

  1. Construya un osciloscopio Arduino de 20 kHz en LCD Nokia 5110: Guía DIY fácil
  2. Persianas Inteligentes: Control Automático de Luz con Arduino y Energía Solar
  3. Construye un Iron Man animado con Arduino: componentes, sensores y guía paso a paso
  4. Sensor de obstáculos IR casero con Arduino – Tutorial fácil con LED IR y fotodiodo
  5. Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
  6. Controlador de Humidificador DIY con Arduino y Relé: Configuración Segura de Alto Voltaje
  7. Osciloscopio DIY con Arduino Nano (10 Hz–50 kHz) y LCD 128×64
  8. Construye un volante joystick personalizado con Arduino para gaming
  9. Arduino 101: Construye un Podómetro con Sensor DHT11 y Pantalla LCD
  10. Construye un Mezclador de Colores RGB con Arduino – Tutorial Paso a Paso
  11. Compañero LCD con IA: Tu Amigo Interactivo con Arduino