Мазмуну:

PARQUEADERO: 5 кадам
PARQUEADERO: 5 кадам

Video: PARQUEADERO: 5 кадам

Video: PARQUEADERO: 5 кадам
Video: Узбекистон Буйук Давлат #запал #uzbekistan #zapallar #tiktok #gmavto #chingiz #uzb #xabarlaruz #r 2024, Ноябрь
Anonim
PARQUEADERO
PARQUEADERO

КИРИШҮҮ

RFIDдин символикалык режимин түзүү, бул дагы контролдоо системасы менен бирдикте, RFIDдин орточо дефициттик системасы менен теңдештирилген, ал эми бул жерде сиз өзүңүздү тааный аласыз. los transportículos.

1 -кадам: ELEMENTOS UTILIZADOS:

ЭЛЕМЕНТОНУН УТИЛИЗАДОСУ
ЭЛЕМЕНТОНУН УТИЛИЗАДОСУ
ЭЛЕМЕНТОНУН УТИЛИЗАДОСУ
ЭЛЕМЕНТОНУН УТИЛИЗАДОСУ

-Arduino uno

- protoboard

-1 I2C модулу менен ЖК

-1 сервомотор

-RFID жана башка

-кабельдер мачо-мачо у мачо-гембра

- 2 interruptores финал де carrera

- каршылык көрсөтүү 10 к

2 -кадам: Conexiones

Conexiones
Conexiones
Conexiones
Conexiones
Conexiones
Conexiones

Ардуино жана протокол тактасынын эң чоң компоненттери. Ардуино протоколдорунда, сервистик кыймылдаткычтын протоколдорунда жана функцияларында да бар.

RFID электрондук почтанын компетенттүү компоненттеринин функцияларын оңдоп -түзөө керек.

10K каршылык көрсөтүү үчүн финалдарды караңыз.

3 -кадам: Кодиго

Төмөнкү пунктту кароо керек: бул эң маанилүү компоненттерден болуп саналат.

#incluir #incluir #incluir // DESCARGAR LIBRERÍA: https://github.com/ELECTROALL/Codigos-arduino/blob/master/LiquidCrystal_I2C.zip LiquidCrystal_I2C lcd (0x27, 20, 4); // #incluir // incluye la biblioteca de servos

#define s1 2 #define s2 4 Servo myservo1;

int Vs1; int Vs2;

int Total = 5; int Espacio = 0;

int flag1 = 0; int flag2 = 1; int est1 = 0; int est2 = 0; int valida = valida; int invalidida = invalidida; const int RST_PIN = 9; // PIN 9 үчүн RC522 const int SS_PIN = 10 баштапкы абалга келтирүү; // Pin 10 para SS (SDA) del RC522 MFRC522 mfrc522 (SS_PIN, RST_PIN); // Cref instancia del MFRC522 байт validKey1 [4] = {0x50, 0xA8, 0x9B, 0x1D}; // Ejemplo de clave valida байт validKey2 [4] = {0xB3, 0xD5, 0xD0, 0x1E}; // Ejemplo de clave valida // Функциялардын салыштыруу жолдору isEqualArray (байт * arrayA, байт * arrayB, int узундугу) {for (int index = 0; index <length; index ++) {if (arrayA [index] ! = arrayB [índice]) devuelve falso; } devuelve verdadero; }

configuración vacía () {lcd.init (); LCD luz de fondo (); pinMode (s1, INPUT_PULLUP); pinMode (s2, INPUT_PULLUP); Serial.begin (9600); // Сериялык SPI.begin () инициалдуу сериясы; // Инфициардык SPI mfrc522. PCD_Init (); // Iniciar MFRC522 myservo1.attach (3); myservo1.write (100);

mensaje1 (); } bucle vacío () {Vs1 = digitalRead (s1); Vs2 = digitalRead (s2); mensaje2 (); /// ponerle condicional if (Vs1 == 0) {delay (100); flag1 = 1; // est1 = 1; // est2 = 1; // bandera2 = 0; myservo1.write (90); } /// консультантка каршы ребота // Detectar tarjeta if (mfrc522. PICC_IsNewCardPresent () && Space <= 5 && flag2 == 1) {// Seleccionamos una tarjeta if (mfrc522. PICC_ReadCardSerial ()) {// ID las менен салыштыруу claves válidas if ((isEqualArray (mfrc522.uid.uidByte, validKey1, 4)) || (isEqualArray (mfrc522.uid.uidByte, validKey2, 4))) {Serial.println ("Таржета валида"); valida; mensaje4 (); myservo1.write (-90); est1 = 1;} else {Serial.println ("Tarjeta invalid"); инвалид; mensaje3 ();} // Иш жүзүндө mfrc522. PICC_HaltA (); }} retraso (250); if (Vs2 == 0) {retraso (200); flag2 = 1; // est1 = 1; // est2 = 1; // bandera1 = 0; ретрасо (2000); myservo1.write (90);}

эгер (Vs2 == 0 && Espacio = 0 && est1 == 1) {// est1 = 1; lcd.setCursor (0, 3); lcd.print ("entra"); Espacio ++; Total--; est1 = 0; } if (Vs1 == 0 && Total> = 0 && Total <5 && est1 == 1) {// est2 = 1; lcd.setCursor (0, 3); lcd.print ("venta"); Espacio--; Total ++; est1 = 0; } Serial.print (Бардыгы); Serial.print (";"); Serial.println (espacio); }

mensaje1 vacío () {lcd.setCursor (0, 1); lcd.print ("BIENVENIDOS"); lcd. comienzo (A4, A5); lcd.setCursor (0, 1); lcd.print ("SISTEMA"); lcd.setCursor (0, 2); lcd.print ("DE PARQUEO"); ретрасо (2000); lcd.clear (); } void mensaje2 () {lcd.setCursor (0, 1); lcd.print ("ЫЛАЙЫК:"); lcd.print (бардыгы); lcd.setCursor (0, 2); lcd.print ("OCUPADOS:"); lcd.print (Espacio); } vens mensaje3 () {lcd.setCursor (0, 0); lcd.print ("TARJETA INVALIDA"); ретрасо (2000); lcd.clear (); } vens mensaje4 () {lcd.setCursor (0, 0); lcd.print ("TARJETA VALIDA"); ретрасо (2000); lcd.clear (); }

4 -кадам: Монтаж

Montaje
Montaje
Montaje
Montaje

Төмөнкү шарттар боюнча маалымат жыйнагыбыздын жаңы функциялары талап кылынат: бул орнотуу процесси.

5 -кадам: Жыйынтык финалы

Жыйынтыктоо үчүн, видеонун жыйынтыгын чыгарып коюңуз, ал эми сиз өзүңүздүн функцияңызды көзөмөлдөйсүз.

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