Mundarija:
Video: PARQUEADERO: 5 qadam
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
KIRISH
Bu modulli modullar bilan taqqoslaganda, RFID tomonidan o'rnatilgan tizimni qayta o'rnatishni o'z ichiga oladi. los araçlar.
1 -qadam: ELEMENTOS UTILIZADOS:
-Arduino bilan
- protobard
-I2C modulli LCD displey
-1 ta servomotor
-RFID va tarjetlar
-kabellar macho-macho va macho-gembra
- Carrera finalining 2 ta uzilishi
- qarshilik 10 k
2 -qadam: koneksionlar
Arduino va el protoboard komponentlarini bir vaqtning o'zida ishlatish kerak. Arduino protokoli, xizmat ko'rsatuvchi protokollar va protokollar bilan ishlashni boshqaradi.
Umumiy ma'lumotni RFID va boshqa komponentlar yordamida tuzatish mumkin.
10K da qarshilik ko'rsatishning eng yaxshi natijalari.
3 -qadam: Codigo
Bu eng muhim vazifalardan biri bo'lib, u eng muhim vazifalarni bajaradi.
#incluir #incluir #incluir // DESCARGAR LIBRERÍA: https://github.com/ELECTROALL/Codigos-arduino/blob/master/LiquidCrystal_I2C.zip LiquidCrystal_I2C lcd (0x27, 20, 4); // #incluir // biblioteca de servos
#define s1 2 #define s2 4 Servo myservo1;
int Vs1; int Vs2;
int Jami = 5; int Espacio = 0;
int bayroq1 = 0; int flag2 = 1; int est1 = 0; int est2 = 0; int valida = valida; int invalidida = yaroqsiz; const int RST_PIN = 9; // RC522 const int SS_PIN = 10 -ni tiklash uchun 9 -pin; // PIN 10 -raqamli SS (SDA) del RC522 MFRC522 mfrc522 (SS_PIN, RST_PIN); // MFRC522 baytini yaratish validKey1 [4] = {0x50, 0xA8, 0x9B, 0x1D}; // Ejemplo de clave valida bayt validKey2 [4] = {0xB3, 0xD5, 0xD0, 0x1E}; // Ejemplo de clave valida // Funksiyalar uchun taqqoslash vektorlari isEqualArray (bayt * arrayA, bayt * arrayB, int uzunligi) {for (int index = 0; index <length; index ++) {if (arrayA [index] ! = arrayB [índice]) devuelve falso; } devuelve verdadero; }
sozlamalarni bo'shatish () {lcd.init (); LCD displeyi (); pinMod (s1, INPUT_PULLUP); pinMode (s2, INPUT_PULLUP); Serial.begin (9600); // SPI.begin ketma -ket ketma -ketligi (); // SPI mfrc522. PCD_Init () ni tekshiring; // MFRC522 iniciar myservo1.attach (3); myservo1.write (100);
mensaje1 (); } bucle vacío () {Vs1 = digitalRead (s1); Vs2 = digitalRead (s2); mensaje2 (); /// ponerle condicional if (Vs1 == 0) {delay (100); bayroq1 = 1; // est1 = 1; // est2 = 1; // bandera2 = 0; myservo1.write (90); } /// maslahatchi qarshi rebote // Targeta targeta if (mfrc522. PICC_IsNewCardPresent () && Space <= 5 && flag2 == 1) {// Seleccionamos una tarjeta if (mfrc522. PICC_ReadCardSerial ()) {// ID -ni solishtiring 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;} boshqa {Serial.println ("Tarjeta yaroqsiz"); yaroqsiz; mensaje3 ();} // Yakuniy darslar mfrc522. PICC_HaltA (); }} retraso (250); if (Vs2 == 0) {retraso (200); bayroq2 = 1; // est1 = 1; // est2 = 1; // bandera1 = 0; retraso (2000); myservo1.write (90);}
agar (Vs2 == 0 && Espacio = 0 && est1 == 1) {// est1 = 1; lcd.setCursor (0, 3); lcd.print ("kirish"); Espacio ++; Jami-; est1 = 0; } if (Vs1 == 0 && Total> = 0 && Total <5 && est1 == 1) {// est2 = 1; lcd.setCursor (0, 3); lcd.print ("venta"); Espacio-; Jami ++; est1 = 0; } Serial.print (Jami); Serial.print (";"); Serial.println (espacio); }
mensaje1 vacío () {lcd.setCursor (0, 1); lcd.print ("BIENVENIDOS"); LCD. komienzo (A4, A5); lcd.setCursor (0, 1); lcd.print ("SISTEMA"); lcd.setCursor (0, 2); lcd.print ("DE PARQUEO"); retraso (2000); lcd.clear (); } vens mensaje2 () {lcd.setCursor (0, 1); lcd.print ("RASMIY:"); lcd.print (jami); lcd.setCursor (0, 2); lcd.print ("OCUPADOS:"); lcd.print (Espacio); } vens mensaje3 () {lcd.setCursor (0, 0); lcd.print ("TARJETA INVALIDA"); retraso (2000); lcd.clear (); } vens mensaje4 () {lcd.setCursor (0, 0); lcd.print ("TARJETA VALIDA"); retraso (2000); lcd.clear (); }
4 -qadam: Montaje
Siz xohlaganingizdek, siz o'zingizning xohishingizga javob berasizmi, demak, bu sizning xohishingizga javob beradi.
5 -qadam: Final natijasi
Bu videokuzatuvning yakuniy natijalari, shuningdek, tizimli va tizimli kuzatuvlar orqali amalga oshiriladi.