Përmbajtje:

Luces RGB Con RFID Y Arduino: 3 hapa
Luces RGB Con RFID Y Arduino: 3 hapa

Video: Luces RGB Con RFID Y Arduino: 3 hapa

Video: Luces RGB Con RFID Y Arduino: 3 hapa
Video: Programar una tira de LEDs RGB direccionable con Arduino 2024, Korrik
Anonim
Luces RGB Con RFID Y Arduino
Luces RGB Con RFID Y Arduino

Kontrolli i përdorimit të projekteve të tjera në lidhje me emërimin "Escenario de historias interactivas" për kursimin e videove dhe televizioneve dixhitale të Universitetit të Autonomisë së Oksidentit. El objetivo de este controlador es controlar las luces de día y noche, është e vendosur, kontrolluese e cantidad de luz para hacer una përfaqësimit të la zonës horario se se desee.

Projecto de compone de diferentes etapas como son:

  1. Ndërtimi i qarkut dhe përbërësit elektronikë të nevojshëm.
  2. Ndërtimi i sistemit të rikrijimit të softuerit igual të sistemit kompjuterik për kontrollin e luleve.

Materialet dhe përdoruesit:

  • Protoboard ver
  • Llogaritës
  • Arduino UNO ver
  • Sensori RFID 522 ver
  • Bateria de 12V
  • Telat e kërcyesve ver
  • Transistor TIP31 ver
  • Tira led ver

Hapi 1: Montar El Circuito

Montar El Circuito
Montar El Circuito

Si të vëzhgoni en la gráfica, montaje del circuito se hace de esta manera teniendo en cuenta las polaridades de la batería, la tira led consta de 4 kabllo që korrespondojnë me një los colores rojo, verde, azul y blanco.

Cada uno de los colours se përfaqëson në la gráfica, ngjyra e bardhë i korrespondon a la tierra (GND) që lidhet me pozitivo de la fuente, kjo është rasti i baterisë së 12V.

Hapi 2: Conectar El Módulo RFID

Conectar El Módulo RFID
Conectar El Módulo RFID

Për të kontrolluar las luces se sa përdorni RFID, nëse keni nevojë për një pasemos la targeta las luces deben cambiar de color, varet nga los colores definidos en el sketch de Arduino.

Hapi 3: Skiconi Arduino

Për më tepër, skiconi skedarin e konfigurimit të konfigurimit të softuerit për realizimin e një praktike.

#përfshi

#përfshi

#përcaktoni RST_PIN 5 // Pin 9 për rivendosjen e RC522

#përcaktoni 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.filloj (); // 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;

lak void () {if (mfrc522. PICC_IsNewCardPresent ()) {

lak void () {if (mfrc522. PICC_IsNewCardPresent ()) {

// Enviamos serialemente su UID Serial.println ("Id targejta:");

pë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 përcaktimit si një uno de nuestros usuarios

if (krahasoArray (ActualUID, dia)) {contdia ++;

nëse (vazhdim == 1) {

analogWrite (ledrojo, 75);

analogWrite (ledverde, 75);

analogWrite (ledazul, 255);

Serial.println ("Dato 1 dia"); } tjetër nëse (contdia == 2) {

kontdia = 0;

analogWrite (ledrojo, 0); analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

Serial.println ("Dato 2 dia");

}

}

if (krahasoArray (ActualUID, vonesë)) {conttarde ++;

nëse (kont = = 1) {

analogWrite (ledrojo, 255);

analogWrite (ledverde, 75);

analogWrite (ledazul, 93);

Serial.println ("Dato 1 tarde"); } tjetër nëse (conttarde == 2) {

kontard = 0;

analogWrite (ledrojo, 0);

analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

Serial.println ("Dato 2 tarde"); }

}

if (krahasoArray (ActualUID, noche)) {contnoche ++;

nëse (vazhdoj == 1) {

analogWrite (ledrojo, 87);

analogWrite (ledverde, 87);

analogWrite (ledazul, 87);

Serial.println ("Dato 1 noche");

} tjetër nëse (vazhdoj == 2) {

kontnoche = 0;

analogWrite (ledrojo, 0);

analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

Serial.println ("Dato 2 noche"); }

}

// Terminamos la lectura de la tarjeta tarjeta aktuale mfrc522. PICC_HaltA ();

}

}

}

// Funksioni për krahasimin e dosjeve vektoriale të krahasimitArray (byte array1 , byte array2 ) {

if (array1 [0]! = array2 [0]) kthehet (false);

if (array1 [1]! = array2 [1]) kthehet (false);

if (array1 [2]! = array2 [2]) kthehet (false);

if (array1 [3]! = array2 [3]) return (false);

kthimi (i vërtetë);

}

Recommended: