Arduino Nano - sensor ultrasónico - LED

Este tutorial explica cómo usar Arduino Nano y un sensor ultrasónico para controlar un LED. En detalle:

Hardware Requerido

1×Official Arduino Nano
1×Alternatively, DIYables ATMEGA328P Nano Development Board
1×Cable USB A a Mini-B
1×Sensor Ultrasoníco
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×Protoboard
1×Cables Puente
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para Arduino Nano
1×(Recomendado) Placa de Expansión Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentación para Arduino Nano

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Buy Note: Use the LED Module for easier wiring. It includes an integrated resistor.

Acerca de LED y sensor ultrasónico

Si no está familiarizado con el LED y el sensor ultrasónico, incluyendo la distribución de pines, cómo funcionan y cómo programarlos, los siguientes tutoriales pueden ayudar:

Diagrama de Cableado

Diagrama de cableado del LED y del sensor ultrasónico de Arduino Nano

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Nano y otros componentes.

Código de Arduino Nano

/* * Este código de Arduino Nano fue desarrollado por es.newbiely.com * Este código de Arduino Nano se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-nano/arduino-nano-ultrasonic-sensor-led */ #define TRIG_PIN 3 // The Arduino Nano pin connected to TRIG pin of ultrasonic sensor #define ECHO_PIN 2 // The Arduino Nano pin connected to ECHO pin of ultrasonic sensor #define LED_PIN 10 // The Arduino Nano pin connected to LED #define DISTANCE_THRESHOLD 50 // in centimeters float duration_us, distance_cm; void setup() { Serial.begin (9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(TRIG_PIN, OUTPUT); // set arduino pin to output mode pinMode(ECHO_PIN, INPUT); // set arduino pin to input mode pinMode(LED_PIN, OUTPUT); // set arduino pin to output mode } void loop() { // Produce a 10-microsecond pulse to the TRIG pin. digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // Measure the pulse duration from the ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; if (distance_cm < DISTANCE_THRESHOLD) digitalWrite(LED_PIN, HIGH); // turn on LED else digitalWrite(LED_PIN, LOW); // turn off LED // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Pasos R\u00e1pidos

  • Conecta el cable USB al Arduino Nano y al PC.
  • Inicia el IDE de Arduino y selecciona la placa y el puerto adecuados.
  • Copia el código y ábrelo en el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE de Arduino para compilar y cargar el código al Arduino Nano.
Subir código al IDE de Arduino
  • Mueve tu mano cerca del sensor,
  • Observa el cambio en el estado del LED.

Explicación del código

Consulta la explicación línea por línea contenida en los comentarios del código fuente.

※ Nota:

El código anterior es para fines educativos. El sensor ultrasónico es muy sensible al ruido. Si quieres usarlo en un entorno práctico, deberías filtrar el ruido del sensor ultrasónico. Para obtener más información sobre cómo hacer esto, consulte cómo filtrar el ruido para el sensor ultrasónico.

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!