Arduino Board

Arduino uno - Que es y para que sirve

Arduino Uno es una placa de desarrollo de código abierto ampliamente utilizada en proyectos de electrónica y robótica. Es muy popular en el ámbito de la educación, especialmente en escuelas técnicas y universidades, debido a su facilidad de uso y versatilidad.

Arduino Uno se basa en un microcontrolador Atmel AVR de 8 bits y tiene múltiples pines de entrada/salida (E/S) que permiten conectar sensores, actuadores y otros dispositivos electrónicos de manera sencilla

Arduino uno es una placa pequeña y rectangular con varios pines de conexión y componentes electrónicos en su superficie. Es comúnmente de color azul y tiene el logotipo de Arduino en la parte superior.

3 ideas de muchas que se pueden hacer con Arduino UNO

Podemos realizar una amplia variedad de proyectos y aplicaciones en el campo de la electrónica y la robótica. La flexibilidad de la plataforma y la facilidad de programación hacen que sea posible crear desde proyectos simples hasta complejos sistemas automatizados.

1- Caja de seguridad con Arduino UNO

Fabricar una caja de seguridad con Arduino uno es un proyecto interesante. A continuación, te proporcionamos los materiales e indicaciones para que pudas llevar adelante este proyecto.

Lista de materiales

  1. Placa Arduino Uno.
  2. Servomotor: para el mecanismo de bloqueo/desbloqueo de la caja.
  3. Teclado matricial 4×4: para ingresar la combinación de seguridad.
  4. LED: para indicar el estado de bloqueo/desbloqueo.
  5. Resistencias: para limitar la corriente del LED y el teclado matricial.
  6. Caja o estructura para albergar todos los componentes.
  7. Cables y conectores.

Codigo de programación para nuestra caja de seguridad

El programa debe permitir ingresar una combinación desde el teclado matricial y, si es correcta, desbloquear el servomotor para abrir la caja. Si la combinación es incorrecta, el servo debe permanecer bloqueado y el LED puede encenderse en rojo como indicador de error.

				
					#include <Servo.h>

Servo myservo;
const int servoPin = 9;
const int ledPin = 13;
const int numRows = 4;
const int numCols = 4;

char keys[numRows][numCols] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

byte pin_rows[numRows] = {5, 4, 3, 2};
byte pin_column[numCols] = {9, 8, 7, 6};

void setup() {
  myservo.attach(servoPin);
  pinMode(ledPin, OUTPUT);
  for (int i = 0; i < numRows; i++) {
    pinMode(pin_rows[i], OUTPUT);
    digitalWrite(pin_rows[i], HIGH);
  }
  for (int i = 0; i < numCols; i++) {
    pinMode(pin_column[i], INPUT_PULLUP);
  }
}

void loop() {
  char key = getKey();
  if (key) {
    if (key == '#') { // Cambia esta combinación por la que desees
      unlockSafe();
    } else {
      // Código incorrecto, hacer algo (por ejemplo, parpadear el LED).
      digitalWrite(ledPin, HIGH);
      delay(500);
      digitalWrite(ledPin, LOW);
    }
  }
}

char getKey() {
  for (int r = 0; r < numRows; r++) {
    digitalWrite(pin_rows[r], LOW);
    for (int c = 0; c < numCols; c++) {
      if (!digitalRead(pin_column[c])) {
        delay(50);
        while (!digitalRead(pin_column[c]));
        digitalWrite(pin_rows[r], HIGH);
        return keys[r][c];
      }
    }
    digitalWrite(pin_rows[r], HIGH);
  }
  return 0;
}

void unlockSafe() {
  myservo.write(90); // Ángulo para desbloquear el servo
  delay(1000); // Tiempo para que el servo abra la caja
  myservo.write(0); // Ángulo para bloquear el servo nuevamente
}
				
			

2- Control de luces y electrodomesticos

Puedes utilizar Arduino para encender y apagar luces, controlar ventiladores, activar electrodomésticos, etc. Esto se puede hacer mediante relés o transistores conectados a los pines de salida de Arduino.

Lista de materiales

  1. Placa Arduino Uno.
  2. Relés: para controlar la alimentación de las luces.
  3. Transistores: para proteger el Arduino al utilizar los relés.
  4. Diodos: para proteger el circuito de retroalimentaciones indeseadas.
  5. Lámparas o luces LED que desees controlar.
  6. Resistencias: para limitar la corriente de los LEDs (si utilizas luces LED).
  7. Cables y conectores.

Programación para control de luces o encender un electrodomestico

Un ejemplo básico de código para encender y apagar las luces mediante un botón o bien tambien aplica para cualquier electrodomestico de nuestro hogar.

				
					const int buttonPin = 2;
const int relayPin = 3;
boolean lightsOn = false;

void setup() {
  pinMode(buttonPin, INPUT_PULLUP);
  pinMode(relayPin, OUTPUT);
  digitalWrite(relayPin, LOW);
}

void loop() {
  if (digitalRead(buttonPin) == LOW) {
    delay(50); // Pequeño retraso para evitar rebotes en el botón
    lightsOn = !lightsOn; // Cambiar el estado de las luces
    digitalWrite(relayPin, lightsOn ? HIGH : LOW); // Encender o apagar las luces según el estado
  }
}
				
			

3- Control huertas o monitoreo ambiental

Crear un sistema de monitoreo ambiental con Arduino Uno te permitirá medir diferentes parámetros ambientales, como temperatura, humedad, calidad del aire, entre otros.

Lista de materiales

  1. Placa Arduino Uno.
  2. Sensores ambientales: Puedes utilizar sensores de temperatura y humedad (por ejemplo, DHT11 o DHT22) y sensores de calidad del aire (por ejemplo, MQ-135 para detección de gases).
  3. Pantalla LCD: para mostrar los datos medidos.
  4. Potenciómetros: para ajustar el contraste de la pantalla LCD.
  5. Resistencias: para proteger los componentes y establecer las conexiones.
  6. Cables y conectores

Codigo para control de huertas o monitoreo ambiental

Un ejemplo básico de código para mostrar la temperatura y la humedad en una pantalla LCD podría ser el siguiente:

				
					#include <DHT.h>
#include <LiquidCrystal_I2C.h>

#define DHTPIN 2
#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(0x27, 16, 2); // Dirección I2C y dimensiones del LCD

void setup() {
  lcd.init();
  lcd.backlight();
  dht.begin();
}

void loop() {
  float temperature = dht.readTemperature();
  float humidity = dht.readHumidity();

  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(temperature);
  lcd.print(" C");

  lcd.setCursor(0, 1);
  lcd.print("Humidity: ");
  lcd.print(humidity);
  lcd.print(" %");

  delay(2000); // Actualizar cada 2 segundos
}
				
			
Related Posts
Sorry no related post found
error: Content is protected !!