Innehållsförteckning:
Video: Luces RGB Con RFID Y Arduino: 3 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
Controlador de luces empleado para el proyecto en conjunto denominado "Escenario de historias interactivas" del curso Video och tv -digital från 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:
- Construcción del circuito y las componentes electrónicas necesarias.
- Konstruktion av system för rekognosering av igual que el system programvara för kontroll av las luces.
Material som används:
- Protoboard ver
- Computador
- Arduino UNO ver
- Sensor RFID 522 ver
- Bateria de 12V
- Jumpers wires ver
- Transistor TIP31 ver
- Tira ledde ver
Steg 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 cable que correspondonden a los colores rojo, verde, azul y blanco.
Cada uno de los colores se representan en la gráfica, el color blanco correspondonde a la tierra (GND) que se conecta al positivo de la fuente, en este caso de la batería de 12V.
Steg 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.
Steg 3: Skissa Arduino
En annan skiss kan användas för att konfigurera programvaran för att göra det praktiskt.
#omfatta
#omfatta
#define RST_PIN 5 // Pin 9 för återställning av 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 comunicacion serial
pinMode (ledrojo, OUTPUT); // El LED Rojo como una salida
pinMode (ledverde, OUTPUT); // El LED Verde como una salida
pinMode (ledazul, OUTPUT); // 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;
void loop () {if (mfrc522. PICC_IsNewCardPresent ()) {
void loop () {if (mfrc522. PICC_IsNewCardPresent ()) {
// Enviamos serialemente su UID Serial.println ("Id targejta:");
för (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 (jämförArray (ActualUID, dia)) {contdia ++;
if (contdia == 1) {
analogWrite (ledrojo, 75);
analogWrite (ledverde, 75);
analogWrite (ledazul, 255);
Serial.println ("Dato 1 dia"); } annars if (contdia == 2) {
contdia = 0;
analogWrite (ledrojo, 0); analogWrite (ledverde, 0);
analogWrite (ledazul, 0);
Serial.println ("Dato 2 dia");
}
}
if (jämförArray (ActualUID, tarde)) {conttarde ++;
if (conttarde == 1) {
analogWrite (ledrojo, 255);
analogWrite (ledverde, 75);
analogWrite (ledazul, 93);
Serial.println ("Dato 1 tarde"); } annat om (conttarde == 2) {
conttarde = 0;
analogWrite (ledrojo, 0);
analogWrite (ledverde, 0);
analogWrite (ledazul, 0);
Serial.println ("Dato 2 tarde"); }
}
if (jämförArray (ActualUID, noche)) {contnoche ++;
if (contnoche == 1) {
analogWrite (ledrojo, 87);
analogWrite (ledverde, 87);
analogWrite (ledazul, 87);
Serial.println ("Dato 1 noche");
} annat om (contnoche == 2) {
konton = 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 ();
}
}
}
// Funktion för jämförelse av vectoresboolean comparArray (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);
return (true);
}
Rekommenderad:
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)
Luces Direccionales Para Bicicleta: 3 steg
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 iluminacion para ser vistos av los automovilista
Luces De Navidad Con Relevadores (julbelysning med stafett): 17 steg
Luces De Navidad Con Relevadores (julbelysning med relä): Vilken konfiguration som kan användas av Vixen Lights och ArduinoQue es Vixen Lights? La ultimo versi ó n 3.x se redise ñ o completeamente para soportar p í xel
Luces De Navidad Con Pixeles (Christmas Lights Pixeles) Español - engelska: 18 steg (med bilder)
Luces De Navidad Con Pixeles (Christmas Lights Pixeles) Español - English: EspañolQue es Vixen Lights? La ultimo version 3.x se rediseño completeamente para soportar píxeles RGB inteligentes.Lo puedes ladda ner en la siguiente liga http: //www.vixenl
Luces De Auto Fantástico: 3 steg
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