Мазмуну:

Luces RGB Con RFID Y Arduino: 3 кадам
Luces RGB Con RFID Y Arduino: 3 кадам

Video: Luces RGB Con RFID Y Arduino: 3 кадам

Video: Luces RGB Con RFID Y Arduino: 3 кадам
Video: Control de Tiras de LED RGB con Arduino - PWM - Teoria y Practica 2024, Ноябрь
Anonim
Luces RGB Con RFID Y Arduino
Luces RGB Con RFID Y Arduino

Controllor de luces empleado para el proyecto en conjunto denominado "Escenario de historias interaktivas" del di telso dión de la de Universidad Autónoma de Occidente. Эл аралык контролдоо контроллору сизди кызыктырбайт, жокко чыгарбайт, контролдойт, бул жерде дагы бир жолу өкүлчүлүктүн катарын толуктайт.

Элдин үнүн чыгарууга жардам берет:

  1. Электрондук түзүлүштөрдүн компоненттери electrónicas necesarias.
  2. Консультация системасы дагы бир жолу системалык камсыздоону көзөмөлдөп, көзөмөлдөп турат.

Колдонуучу материалдар:

  • Protoboard ver
  • Computador
  • Arduino UNO вер
  • Сенсор RFID 522 вер
  • Bateria de 12V
  • Джамперс зымдары вер
  • Транзистор TIP31 вер
  • Tira led ver

1 -кадам: Montar El Circuito

Montar El Circuito
Montar El Circuito

Комментарийлерди кароо, орнотуу жана орнотуу схемасы, бул жерде сиздер да, эң башкысы, 4 полярдада да, 4 кабелди алып келгениңизде, лос -колорес рожо, верде, азул ж.

Сүрөттөмө кайра англисче (Кошмо Штаттар) тилине которулсунбу?

2 -кадам: Conectar El Módulo RFID

Конектор El Módulo RFID
Конектор El Módulo RFID

Түшүндүрүүчү нерсе RFID, donde cada vez que pasemos la tarjeta las luces deben cambiar де, түстөрдүн көз карандылыгы да, эскиз де Ардуино.

3 -кадам: Sketch Arduino

Программалык камсыздоонун конфигурациясын жана эскизин орнотуу практика жүзүндө.

#кошуу

#кошуу

#define RST_PIN 5 // Pin 9 para re reset del RC522

#define SS_PIN 10 // Pin 10 para el SS (SDA) del RC522

MFRC522 mfrc522 (SS_PIN, RST_PIN); /// Creamos el RJ522 үчүн

int ledrojo = 1; int ledverde = 2;

int ledazul = 3;

void setup () {Serial.begin (9600); // Iniciamos La comunicacion сериясы

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 (); // Bus Bus SPI mfrc522. PCD_Init (); // MFRC522 Iniciamos

//Serial.println ("--- Leyendo tarjetas ---");

}

байт ActualUID [4]; // alacenará el código del Tag leídobyte dia [4] = {0xD3, 0xAD, 0x3B, 0x5B};

байт тарды [4] = {0xD7, 0x22, 0x1D, 0x01};

байт 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 ()) {

// UID Serial.println ("Идентификацияланган:") сериясындагы файлдар;

үчүн (байт 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 (""); // UIDдин салыштырмалуу аныктамалары сиз үчүн эң маанилүү болуп саналат

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

if (contdia == 1) {

analogWrite (ledrojo, 75);

analogWrite (ledverde, 75);

analogWrite (ledazul, 255);

Serial.println ("Dato 1 dia"); } башка if (contdia == 2) {

contdia = 0;

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

analogWrite (ledazul, 0);

Serial.println ("Dato 2 dia");

}

}

if (comparArray (ActualUID, tarde)) {conttarde ++;

if (conttarde == 1) {

analogWrite (ledrojo, 255);

analogWrite (ledverde, 75);

analogWrite (ledazul, 93);

Serial.println ("Dato 1 tarde"); } else if (conttarde == 2) {

conttarde = 0;

analogWrite (ledrojo, 0);

analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

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

}

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

эгер (contnoche == 1) {

analogWrite (ledrojo, 87);

analogWrite (ledverde, 87);

analogWrite (ledazul, 87);

Serial.println ("Dato 1 noche");

} if if (contnoche == 2) {

contnoche = 0;

analogWrite (ledrojo, 0);

analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

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

}

// Терминамо лекции де la tarjeta tarjeta actual mfrc522. PICC_HaltA ();

}

}

}

// Функцияларды салыштыруу боюнча vektoresboolean comparArray (байт массив1 , байт массив2 ) {

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);

кайтуу (чын);

}

Сунушталууда: