Mündəricat:
Video: Luces RGB Con RFID Y Arduino: 3 addım
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
"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:
- Elektron komponentlərin ən çox istifadə edildiyi dövrlərdir.
- 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
Şə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
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);
}