Tabla de contenido:
Video: Luces RGB Con RFID Y Arduino: 3 Pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Controlador de luces empleado para el proyecto en conjunto denominado "Escenario de historias interactivas" del curso Video y televisión digital de la Universidad Autónoma de Occidente. El objetivo de este controlador es controlar las luces de día y noche, es decir, controlar la cantidad de luz para hacer una representación de la zona horaria que se desee.
El proyecto de compone de diferentes etapas como son:
- Construcción del circuito y las componentes electrónicas necesarias.
- Construcción del sistema de reconocimiento al igual que el software del sistema para el control de las luces.
Materiales a utilizar:
- Protoboard ver
- Computador
- Arduino UNO ver
- Sensor RFID 522 ver
- Batería de 12V
- Puentes cables ver
- Transistor TIP31 ver
- Tira led ver
Paso 1: Montar El Circuito
Como se observa en la gráfica, el montaje del circuito se hace de esta manera teniendo en cuenta las polaridades de la batería, la tira led consta de 4 cables que corresponden a los colores rojo, verde, azul y blanco.
Cada uno de los colores se representa en la gráfica, el color blanco corresponde a la tierra (GND) que se al positivo de la fuente, en este caso de la batería de 12V.
Paso 2: Conectar El Módulo RFID
Para controlar las luces se hace uso del RFID, donde cada vez que pasemos la tarjeta las luces deben cambiar de color, dependiendo de los colores definidos en el sketch de Arduino.
Paso 3: Dibuja Arduino
En el siguiente boceto podrás encontrar la configuración de software para realizar dicha práctica.
#incluir
#incluir
#define RST_PIN 5 // Pin 9 para el reset del RC522
#define SS_PIN 10 // Pin 10 para el SS (SDA) del RC522
MFRC522 mfrc522 (SS_PIN, RST_PIN); /// Creamos el objeto para el RC522
int ledrojo = 1; int ledverde = 2;
int ledazul = 3;
configuración vacía () {Serial.begin (9600); // Serie Iniciamos La comunicacion
pinMode (ledrojo, SALIDA); // El LED Rojo como una salida
pinMode (ledverde, SALIDA); // El LED Verde como una salida
pinMode (ledazul, SALIDA); // El LED Azul como una salida
SPI.begin (); // Iniciamos el Bus SPI mfrc522. PCD_Init (); // Iniciamos el MFRC522
//Serial.println ("--- Leyendo tarjetas ---");
}
byte ActualUID [4]; // almacenará el código del Tag leídobyte dia [4] = {0xD3, 0xAD, 0x3B, 0x5B};
byte tarde [4] = {0xD7, 0x22, 0x1D, 0x01};
byte noche [4] = {0xA0, 0x78, 0xBD, 0x4F};
int contdia = 0, conttarde = 0, contnoche = 0;
bucle vacío () {if (mfrc522. PICC_IsNewCardPresent ()) {
bucle vacío () {if (mfrc522. PICC_IsNewCardPresent ()) {
// Enviamos seriamente su UID Serial.println ("Id targetjta:");
para (byte i = 0; i <mfrc522.uid.size; i ++) {
Serial.print (mfrc522.uid.uidByte <0x10? "0": "");
Serial.print (mfrc522.uid.uidByte , HEX);
ActualUID = mfrc522.uid.uidByte ;
}
Serial.println (""); // comparamos los UID para determinar si es uno de nuestros usuarios
if (compareArray (ActualUID, dia)) {contdia ++;
si (contdia == 1) {
analogWrite (ledrojo, 75);
analogWrite (ledverde, 75);
analogWrite (ledazul, 255);
Serial.println ("Dato 1 dia"); } más si (contdia == 2) {
contdia = 0;
analogWrite (ledrojo, 0); analogWrite (ledverde, 0);
analogWrite (ledazul, 0);
Serial.println ("Dato 2 dia");
}
}
if (compareArray (ActualUID, tarde)) {conttarde ++;
si (conttarde == 1) {
analogWrite (ledrojo, 255);
analogWrite (ledverde, 75);
analogWrite (ledazul, 93);
Serial.println ("Dato 1 tarde"); } más si (conttarde == 2) {
conttarde = 0;
analogWrite (ledrojo, 0);
analogWrite (ledverde, 0);
analogWrite (ledazul, 0);
Serial.println ("Dato 2 tarde"); }
}
if (compareArray (ActualUID, noche)) {contnoche ++;
si (contnoche == 1) {
analogWrite (ledrojo, 87);
analogWrite (ledverde, 87);
analogWrite (ledazul, 87);
Serial.println ("Dato 1 noche");
} más si (contnoche == 2) {
contnoche = 0;
analogWrite (ledrojo, 0);
analogWrite (ledverde, 0);
analogWrite (ledazul, 0);
Serial.println ("Dato 2 noche"); }
}
// Terminamos la lectura de la tarjeta tarjeta actual mfrc522. PICC_HaltA ();
}
}
}
// Función para comparar dos vectoresboolean compareArray (byte array1 , byte array2 ) {
if (matriz1 [0]! = matriz2 [0]) return (falso);
if (matriz1 [1]! = matriz2 [1]) return (falso);
if (matriz1 [2]! = matriz2 [2]) return (falso);
if (matriz1 [3]! = matriz2 [3]) return (falso);
return (verdadero);
}
Recomendado:
¿Gorra de unicornio controlada por WiFi? Con luces RGB: 5 pasos (con imágenes)
¿Gorra de unicornio controlada por WiFi? Con RGB Lights: Hola a todos, mi pequeño me estuvo dando un codazo, por un tiempo, sobre interesantes bricolaje portátiles relacionados con los unicornios. Entonces, me rasqué la cabeza y decidí crear algo inusual y con un presupuesto muy bajo. Este proyecto no requiere que la aplicación continúe
Luces De Navidad Con Relevadores (Luces de Navidad con relé): 17 pasos
Luces De Navidad Con Relevadores (Christmas Lights With Relay): Como configurar Relevadores usando Vixen Lights y ArduinoQue es Vixen Lights? Vixen Lights es un software de DIY (h á galo usted mismo) secuencias de luces. La última versión 3.x se redise ñ o completamente para soportar p í xel
Hockey de mesa magnético DIY con cartón, luces RGB y sensores: 11 pasos (con imágenes)
Hockey de mesa magnético DIY con cartón, luces RGB y sensores: ¡Debes haber jugado Air Hockey! Pague unos $$ dólares $$ a la zona de juego y comience a marcar goles para vencer a sus amigos. ¿No es muy adictivo? Debes haber pensado en tener una mesa en casa, pero ¡oye! ¿Alguna vez pensaste en hacerlo tú mismo?
Luces de patio interactivas, luces de pasarela: 3 pasos
Luces de patio interactivas, luces de pasarela: Quería construir algún tipo de luces de patio interactivas para mi patio trasero. La idea era que, cuando alguien caminaba en una dirección, se activaba una animación en la dirección en la que estabas caminando. Empecé con las luces solares Dollar General $ 1.00
Luces navideñas de bricolaje con música - Luces de la casa coreografiadas: 15 pasos (con imágenes)
Luces navideñas de bricolaje con música - Luces de casa con coreografía: Luces de Navidad con música - Luces de casa con coreografía Esto NO es un bricolaje para principiantes. Necesitará un conocimiento firme de la electrónica, los circuitos, la programación BÁSICA y conocimientos generales sobre seguridad eléctrica. Este bricolaje es para una persona con experiencia, así que