Cuprins:
- Pasul 1: ELEMENTOS UTILIZADOS:
- Pasul 2: Conexiuni
- Pasul 3: Cod
- Pasul 4: Montaj
- Pasul 5: Rezultatul final
Video: PARQUEADERO: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
INTRODUCERE
El proyecto consiste en simular un modelo de barrera de parqueadero en el cual se controla accesul la un garaj cu un sistem de recunoaștere a mediului de tarjetas pentru RFID, al fi detectat ca membru al parcheaderului se levantara la bară și se dă accesul de los vehículos.
Pasul 1: ELEMENTOS UTILIZADOS:
-Arduino uno
- protoboard
-1 ecran LCD cu modul I2C
-1 servomotor
-RFID y tarjetas
-cables macho-macho y macho-hembra
- 2 interruptores finales de carrera
- rezistențe 10 k
Pasul 2: Conexiuni
În acest pas se întâlnesc conexiunile tuturor componentelor cu Arduino și protoboard. Inicialmente se conectó el Arduino al protoboard, luego de esto se se hizo la conexión del servomotor al protoboard y se comprobó de que funcionara.
Seguido de esto se conectó la pantalla y el RFID e igualmente se comprobó de que estos componentes funcționează corect.
Por último se conectaron los finales de carrera por medio de resistencias de 10K.
Pasul 3: Cod
În acest pas se anexează codul care se utilizează pentru darle funcționare a tuturor componentelor parcheaderului.
#incluir #incluir #incluir // DESCARGAR LIBRERÍA: https://github.com/ELECTROALL/Codigos-arduino/blob/master/LiquidCrystal_I2C.zip LiquidCrystal_I2C lcd (0x27, 20, 4); // #incluir // include 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 invalida = invalida; const int RST_PIN = 9; // Pin 9 pentru resetarea RC522 const int SS_PIN = 10; // Pinul 10 pentru SS (SDA) del RC522 MFRC522 mfrc522 (SS_PIN, RST_PIN); // Crear instancia del MFRC522 byte validKey1 [4] = {0x50, 0xA8, 0x9B, 0x1D}; // Ejemplo de clave valida byte validKey2 [4] = {0xB3, 0xD5, 0xD0, 0x1E}; // Ejemplo de clave valida // Funcția pentru a compara doi vectori bool isEqualArray (byte * arrayA, byte * arrayB, int length) {for (int index = 0; index <length; index ++) {if (arrayA [index] ! = arrayB [índice]) devuelve falso; } devuelve verdadero; }
configurare vacía () {lcd.init (); LCD luz de fondo (); pinMode (s1, INPUT_PULLUP); pinMode (s2, INPUT_PULLUP); Serial.begin (9600); // Iniciar serial SPI.begin (); // Iniciar SPI mfrc522. PCD_Init (); // Iniciar MFRC522 myservo1.attach (3); myservo1.write (100);
mensaje1 (); } bucle vacío () {Vs1 = digitalRead (s1); Vs2 = digitalRead (s2); mensaje2 (); /// ponerle condițional if (Vs1 == 0) {delay (100); steag1 = 1; // est1 = 1; // est2 = 1; // bandera2 = 0; myservo1.write (90); } /// consulta anti rebote // Detectar tarjeta if (mfrc522. PICC_IsNewCardPresent () && Space <= 5 && flag2 == 1) {// Seleccionamos una tarjeta if (mfrc522. PICC_ReadCardSerial ()) {// Compare ID con las claves válidas if ((isEqualArray (mfrc522.uid.uidByte, validKey1, 4)) || (isEqualArray (mfrc522.uid.uidByte, validKey2, 4))) {Serial.println ("Tarjeta valida"); valida; mensaje4 (); myservo1.write (-90); est1 = 1;} else {Serial.println ("Tarjeta invalida"); invalida; mensaje3 ();} // Finalizați lectura adevărată mfrc522. PICC_HaltA (); }} retraso (250); if (Vs2 == 0) {retraso (200); steag2 = 1; // est1 = 1; // est2 = 1; // bandera1 = 0; retraso (2000); myservo1.write (90);}
if (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 (Total); 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"); retraso (2000); lcd.clear (); } void mensaje2 () {lcd.setCursor (0, 1); lcd.print ("DISPONIBLE:"); lcd.print (total); lcd.setCursor (0, 2); lcd.print ("OCUPADOS:"); lcd.print (Espacio); } void mensaje3 () {lcd.setCursor (0, 0); lcd.print ("TARJETA INVALIDA"); retraso (2000); lcd.clear (); } void mensaje4 () {lcd.setCursor (0, 0); lcd.print ("TARJETA VALIDA"); retraso (2000); lcd.clear (); }
Pasul 4: Montaj
Luego de hacer todas las conexiones y de comprobar que el código realizara las funcciones requeridas para cada condición del parqueadero, se procede a realiza montajul structurii.
Pasul 5: Rezultatul final
Se anexează un videoclip al rezultatului final al proiectului, unde se poate observa funcționarea tuturor sistemelor parcheaderului.
Recomandat:
Cum să faci 4G LTE dublă antenă BiQuade Pași simpli: 3 pași
Cum să fac 4G LTE Double BiQuade Antenna Pași simpli: De cele mai multe ori mă confrunt, nu am o putere de semnal bună pentru lucrările mele de zi cu zi. Asa de. Căut și încerc diferite tipuri de antenă, dar nu funcționează. După un timp pierdut, am găsit o antenă pe care sper să o fac și să o testez, pentru că nu se bazează pe principiul
Design de joc în Flick în 5 pași: 5 pași
Designul jocului în Flick în 5 pași: Flick este un mod foarte simplu de a crea un joc, în special ceva de genul puzzle, roman vizual sau joc de aventură
Sistemul de alertă pentru parcarea inversă a autovehiculului Arduino - Pași cu pași: 4 pași
Sistemul de alertă pentru parcarea inversă a autovehiculului Arduino | Pași cu pas: în acest proiect, voi proiecta un senzor senzor de parcare inversă Arduino Car Circuit folosind senzorul cu ultrasunete Arduino UNO și HC-SR04. Acest sistem de avertizare auto bazat pe Arduino poate fi utilizat pentru navigație autonomă, autonomie robotică și alte r
Detectarea feței pe Raspberry Pi 4B în 3 pași: 3 pași
Detectarea feței pe Raspberry Pi 4B în 3 pași: În acest instructabil vom efectua detectarea feței pe Raspberry Pi 4 cu Shunya O / S folosind Biblioteca Shunyaface. Shunyaface este o bibliotecă de recunoaștere / detectare a feței. Proiectul își propune să obțină cea mai rapidă viteză de detectare și recunoaștere cu
Cum să faci un contor de pași ?: 3 pași (cu imagini)
Cum să fac un contor de pași ?: obișnuiam să performez bine la multe sporturi: mersul pe jos, alergatul, mersul pe bicicletă, jocul de badminton etc. Îmi place să călăresc să călătoresc în preajmă. Ei bine, uită-te la burtica mea ostilă …… Ei bine, oricum, decid să reîncep să fac mișcare. Ce echipament ar trebui să pregătesc?