Table des matières:
Vidéo: Luces RGB Con RFID et Arduino : 3 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Controlador de luces empleado para el proyecto and 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 horario que se desee.
El proyecto de compone de diferentes etapas como son:
- Construction du circuit et des composants électriques nécessaires.
- Construcción del sistema de reconocimiento al igual que el sistema software para el control de las luces.
Matériaux à utiliser:
- Protoboard ver
- Ordinateur
- Arduino UNO ver
- Capteur RFID 522 ver
- Batterie de 12V
- Fils de cavaliers ver
- Transistor TIP31 ver
- Tira a conduit ver
Étape 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 representan en la gráfica, el color blanco corresponde a la tierra (GND) que se conecta al positivo de la fuente, en este caso de la batería de 12V.
Étape 2: Conectar El Modulo RFID
Pour contrôler 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.
Étape 3: Esquissez Arduino
En el siguiente sketch podrás encontrar la configuration de software para realizar dicha practica.
#comprendre
#comprendre
#define RST_PIN 5 // Pin 9 pour réinitialiser le 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;
void setup() { Serial.begin(9600); //Iniciamos La communication en série
pinMode(ledrojo, SORTIE); //El LED Rojo como una salida
pinMode(ledverde, SORTIE); //El LED Verde como una salida
pinMode(ledazul, SORTIE); //El LED Azul como una salida
SPI.begin(); //Iniciamos el Bus SPI mfrc522. PCD_Init(); // Iniciamos el MFRC522
//Serial.println(" ---Leyendo tarjetas---");
}
octet ActualUID[4]; //almacenará el código del Tag leídobyte dia[4] = {0xD3, 0xAD, 0x3B, 0x5B};
octet tarde[4] = {0xD7, 0x22, 0x1D, 0x01};
octet noche[4]= {0xA0, 0x78, 0xBD, 0x4F};
int contdia=0, conttarde=0, contnoche=0;
boucle vide() { si (mfrc522. PICC_IsNewCardPresent()) {
boucle vide() { si (mfrc522. PICC_IsNewCardPresent()) {
// Enviamos serialemente sur l'UID Serial.println(" Id targejta: ");
pour (octet 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"); } else if (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"); }sinon si (conttarde ==2) {
combattant = 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");
} else if (contnoche ==2) {
contnoche = 0;
analogWrite(ledrojo, 0);
analogWrite(ledverde, 0);
analogWrite(ledazul, 0);
Serial.println("Dato 2 noche"); }
}
// Terminaison de la lectura de la tarjeta tarjeta actuelle mfrc522. PICC_HaltA();
}
}
}
//Fonción para comparar dos vectoresboolean compareArray(byte array1, byte array2) {
if (array1[0] != array2[0])return (false);
if (array1[1] != array2[1])return (false);
if (array1[2] != array2[2])return (false);
if (array1[3] != array2[3])return (false);
retour (vrai);
}
Conseillé:
Comment utiliser le module RFID-RC522 avec Arduino : 5 étapes
Comment utiliser le module RFID-RC522 avec Arduino : Dans ce Instructable, je vais vous expliquer le principe de fonctionnement fondamental du module RFID couplé à ses étiquettes et puces. Je fournirai également un bref exemple d'un projet que j'ai réalisé en utilisant ce module RFID avec une LED RVB. Comme d'habitude avec mes Ins
Luces Direccionales Para Bicicleta: 3 étapes
Luces Direccionales Para Bicicleta: hola que tal gente!muchas veces hay personas que usan la bicicleta como medio de transporte, ya que es amigable con el mundo, y es mas economico, pero el problema es que las bicicletas no cuentan con illuminacions para luminacions por los automovilista
Luces De Navidad Con Relevadores (Lumières de Noël avec relais): 17 étapes
Luces De Navidad Con Relevadores (Christmas Lights With Relev): Como configurar Relevadores usando Vixen Lights y ArduinoQue es Vixen Lights? La ultimo versión 3.x se redisño completemente para soportar píxel
Luces De Navidad Con Pixeles (Pixels de lumières de Noël) Español - English: 18 Steps (with Pictures)
Luces De Navidad Con Pixeles (pixels de lumières de Noël) Español - English: EspañolQue es Vixen Lights?Vixen Lights est un logiciel de bricolage (hágalo usted mismo) secuencias de luces. La dernière version 3.x se rediseño completamente para soportar píxeles RGB inteligentes.Lo puedes descargar en la siguiente liga http://www.vixenl
Luces De Auto Fantástico : 3 étapes
Luces De Auto Fantástico: les quiero compartir un circuito, el cual emula los efectos de kit el auto fantastico, el corazon de este circuito es el digispark, una placa de desarrollo parecida al arduino, se programa con el mismo IDE y eso lo hace mas facilMateriales1 protobo