Přístupový systém

Zadání:

Simulace přístupového systému pomocí arduina. Pokud je detekován čip, který má oprávněný přístup, zvonek udělá krátké pípnutí, rozsvítí se zelená LED a na displeji se pozdraví uživatel daného čipu. Pokud se detekuje čip, který není oprávněný, bzučák se rozpípá, rozsvítí se červená LED a na displeji se ukáže text „neoprávněný vstup“.

video: https://photos.app.goo.gl/afK8xV1VY9NqHDxc8

 

Schéma:

https://www.tinkercad.com/things/lSWuPmMTesC-mcs-pristupovy-system

 

RFID:

Pin Wiring to Arduino Uno
SDA Digital 10
SCK Digital 13
MOSI Digital 11
MISO Digital 12
IRQ unconnected
GND GND
RST Digital 9
3.3V 3.3V

 

 

Kód:

Displej:

#include 

// definice pinu
int PinDisplayRS = 3;
int PinDisplayE = 4;
int PinDisplayD4 = 5;
int PinDisplayD5 = 6;
int PinDisplayD6 = 7;
int PinDisplayD7 = 8;

// definice displeje
LiquidCrystal lcd(PinDisplayRS, PinDisplayE, PinDisplayD4, PinDisplayD5, PinDisplayD6, PinDisplayD7);

void setup() {
  // inicializace displeje
  lcd.begin(16, 2);

}

void loop() {
  lcd.setCursor(0, 0); // nulty radek, nulty sloupec
  lcd.print("Hello World!"); // vypsani textu "hello world"

  lcd.setCursor(0, 1); // prvni radek, nulty sloupec
  lcd.print(millis() / 1000); // vypsani uplynuleho casu v ms/1000 (takze v sekundach)

  delay(1000);
}

 

RFID:

#include 
#include 

int SS_PIN = 10;
int RST_PIN = 9;

MFRC522 rfid(SS_PIN, RST_PIN);   // vytvoreni objektu RFID

void setup() {
  Serial.begin(9600);       // zahajeni seriove komunikace
  SPI.begin();              // zahajeni SPI pro RFID modul
  rfid.PCD_Init();          // inicializace RFID
  Serial.println("Pripraveno na skenovani");
}

void loop() {
  // podminka pokud ctecka nasla kartu
  if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial()) {
    Serial.print("Karta detekovana! UID: ");
    
    // vypsani kazde casti UID kodu pomoci hexadecimalniho kodu
    for (byte i = 0; i < rfid.uid.size; i++) {
      Serial.print(rfid.uid.uidByte[i], HEX);
      Serial.print(" ");
    }
    Serial.println();  // novy radek

    rfid.PICC_HaltA();  // ukonceni cteni a priprava na dalsi cteni
  }
}

Přístupový systém:

tajné