Mündəricat:

Luces RGB Con RFID Y Arduino: 3 addım
Luces RGB Con RFID Y Arduino: 3 addım

Video: Luces RGB Con RFID Y Arduino: 3 addım

Video: Luces RGB Con RFID Y Arduino: 3 addım
Video: Programar una tira de LEDs RGB direccionable con Arduino 2024, Iyul
Anonim
Luces RGB Con RFID Y Arduino
Luces RGB Con RFID Y Arduino

"Tarixlərin qarşılıqlı əlaqəsi" mövzusundakı bütün əlaqələri idarə etmək üçün rəqəmsal Universiteti Autocnoma de Occidente. Əlbəttə ki, hər hansı bir problemi yoxlamaq, yoxlamaq, yoxlamaq və ya yoxlamaq mümkünsə, bu gündən etibarən bu xidmətlərin hamısı yoxlanılır.

Bir -birindən fərqlənən bir şey yoxdur:

  1. Elektron komponentlərin ən çox istifadə edildiyi dövrlərdir.
  2. Sistemin yenidən qurulmasını və idarə olunmasını təmin etmək üçün proqram təminatı qurun.

İstifadəçi materialları:

  • Protoboard ver
  • Kompüter
  • Arduino UNO versiyası
  • Sensor RFID 522 ver
  • Batareya 12V
  • Jumper telləri ver
  • Transistor TIP31 ver
  • Tira led ver

Addım 1: Montar El Circuito

Montar El Circuito
Montar El Circuito

Şəbəkə quruluşu, elektron qurğunun quraşdırılması və quraşdırılması ilə əlaqədar olaraq, 4 kabelin bağlandığı yerlərdə, kabellər və kabellər ilə əlaqələndirilir.

Bu təsviri ingilis (Amerika Birləşmiş Ştatları) dilinə geri tərcümə edin Tərcümə edin, color color blanco is a la tierra (GND) con conecta al positivo de la fuente, en este caso de la batería de 12V.

Addım 2: El Módulo RFID ilə əlaqə qurun

Əlaqəçi El Módulo RFID
Əlaqəçi El Módulo RFID

RFID -in yoxlanılması, rənglərin rənglənməsi və rənglənməsi, Arduino -dan istifadə etmək üçün rəngli kağızların rənglənməsi ilə əlaqədardır.

Addım 3: Arduinonun eskizini çəkin

Proqramın konfiqurasiyasını əldə etmək üçün praktiki olaraq bir eskiz hazırlayın.

#daxil edin

#daxil edin

#define RST_PIN 5 // Pin 9 üçün RC522 sıfırlayın

#define SS_PIN 10 // Pin 10 üçün SS (SDA) del RC522

MFRC522 mfrc522 (SS_PIN, RST_PIN); /// RC522 üçün məhsullar

int ledrojo = 1; int ledverde = 2;

int ledazul = 3;

void setup () {Serial.begin (9600); // Iniciamos La comunicacion seriyası

pinMode (ledrojo, ÇIXIŞ); // El LED Rojo bir yerdədir

pinMode (ledverde, Çıxış); // El LEDləri bir yerdədir

pinMode (ledazul, ÇIXIŞ); // El LED -lərini bağlayın

SPI.begin (); // Daxili Avtobus SPI mfrc522. PCD_Init (); // MFRC522 məlumatları

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

}

bayt AktualUID [4]; // almacenará el código del Tag leídobyte dia [4] = {0xD3, 0xAD, 0x3B, 0x5B};

bayt tarde [4] = {0xD7, 0x22, 0x1D, 0x01};

bayt 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 ("Şəxsi məlumat:") ilə əlaqəli seriallar;

üçün (bayt i = 0; i <mfrc522.uid.size; i ++) {

Serial.print (mfrc522.uid.uidByte <0x10? "0": "");

Serial.print (mfrc522.uid.uidByte , HEX);

AktualUID = mfrc522.uid.uidByte ;

}

Serial.println (""); // UID -ni müəyyən etmək üçün heç bir problem yoxdur

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

əgər (davamı == 1) {

analogWrite (ledrojo, 75);

analogWrite (ledverde, 75);

analogWrite (ledazul, 255);

Serial.println ("Dato 1 dia"); } başqa əgər (davamı == 2) {

davam = 0;

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

analogWrite (ledazul, 0);

Serial.println ("Dato 2 dia");

}

}

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

əgər (conttarde == 1) {

analogWrite (ledrojo, 255);

analogWrite (ledverde, 75);

analogWrite (ledazul, 93);

Serial.println ("Dato 1 tarde"); } başqa əgər (conttarde == 2) {

conttarde = 0;

analogWrite (ledrojo, 0);

analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

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

}

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

əgər (contnoche == 1) {

analogWrite (ledrojo, 87);

analogWrite (ledverde, 87);

analogWrite (ledazul, 87);

Serial.println ("Dato 1 noche");

} başqa əgər (contnoche == 2) {

contnoche = 0;

analogWrite (ledrojo, 0);

analogWrite (ledverde, 0);

analogWrite (ledazul, 0);

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

}

// Faktiki mfrc522. PICC_HaltA ();

}

}

}

// Funksiyaların müqayisəsi vektorlarınboolean müqayisəArray (bayt array1 , bayt 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);

qayıt (doğru);

}

Tövsiyə: