Rfid ile Pc'de Oturum Açma-Kapatma

Zexij

Yeni Üye
Katılım
29 Ağustos 2023
Mesajlar
1
Merhaba, Arduino Leonardo R3 Klon ve RC522 RFID kullanarak bilgisayara şifre girip oturum açıp kapatmak istiyorum. İnternetten oturum açma ile ilgili bir çok hazır kod var fakat hiç birinde oturum durumunu kontrol edip açıksa kapatmak kapalıysa açma şeklinde bi detay bulunmuyor. Bu konuda yardıma ihtiyacım var.

Genel bilgiler
Yaklaşık 70 tane Rfid kartımız var bu kartların idleri kodlara eklenecek. Şifresi aynı olan 3 bilgisayarda kart okuma sistemi kullanılacak. kart çalışmaya başladığında örnek bi değerimizi 0 atayacağız bu değer bilgisayar açıldığında 1 e eşit olacak. değer 1 ise oturum açık olduğu için windows + L tuşlarına bastırıp oturumu kapatacağız ve değeri yine 0 a eşitleyeceğiz tekrar kart okununca değer 0 ise ve oturun acmak için şifre girilip oturum açılacak düşüncem bu yönde bu cok zor ücretli yapabilirim diyen olursada görüşebiliriz.


Kod:
#include <SPI.h>       
#include <MFRC522.h>   
#include <Keyboard.h>
int RST_PIN = 9;       
int SS_PIN = 10;       
                      
MFRC522 rfid(SS_PIN, RST_PIN);     
byte ID[4] = {135, 182, 189, 84};     
byte ID1[4] = {49, 24, 125, 76};   
void setup() {
 
  Serial.begin(9600);         
  SPI.begin();               
  rfid.PCD_Init();           
}
 
void loop() {

  if ( ! rfid.PICC_IsNewCardPresent())   
    return;

  if ( ! rfid.PICC_ReadCardSerial())     
    return;
    

  if (rfid.uid.uidByte[0] == ID[0] &&     
    rfid.uid.uidByte[1] == ID[1] &&
    rfid.uid.uidByte[2] == ID[2] &&
    rfid.uid.uidByte[3] == ID[3] ) {
        Serial.println("Oturum acildi");
        ekranaYazdir();
          Keyboard.press(KEY_ESC);
          delay(300);
          Keyboard.print("12345");//write your password in between the qouts
          Keyboard.press(KEY_RETURN);
          delay(100);
          Keyboard.releaseAll();
          delay(2000);
    }

    else if (rfid.uid.uidByte[0] == ID1[0] &&     
    rfid.uid.uidByte[1] == ID1[1] &&
    rfid.uid.uidByte[2] == ID1[2] &&
    rfid.uid.uidByte[3] == ID1[3] ) {
        Serial.println("Oturum acildi");
        ekranaYazdir();
          Keyboard.press(KEY_ESC);
          delay(300);
          Keyboard.print("12345");
          Keyboard.press(KEY_RETURN);
          delay(100);
          Keyboard.releaseAll();
          delay(2000);
    }
    else{                                 
      Serial.println("Yetkisiz Kart");
      ekranaYazdir();
    }
  rfid.PICC_HaltA();
}
void ekranaYazdir(){
  Serial.print("ID Numarasi: ");
  for(int sayac=0; sayac<4; sayac++){
    Serial.print(rfid.uid.uidByte[sayac]);
    Serial.print(" ");
  }
}
 
HID protokolü tek yönlü, o yüzden üzerinden oturumun açık olup olmadığının kontrolünün yapılabileceğini sanmıyorum. O sadece PCye bilgi (klavye/mouse hareketi) gönderecektir.

Arduino dışında PC tarafında da bir yazılım geliştirmeniz ikisini USB üzerinden konuşturmanız gerekiyor.
 

Forum istatistikleri

Konular
5,972
Mesajlar
101,847
Üyeler
2,514
Son üye
evrenbasaran

Son kaynaklar

Son profil mesajları

deneyci wrote on hakan8470's profile.
Sibonge uNkulunkulu ngokuhlukahluka asinike kona.

Bu hangi dil? :)
Lyewor_ wrote on taydin's profile.
Merhabalar. Elektrik laboratuvarınız varsa bunun hakkında bir konunuz var mı acaba? Sizin laboratuvarınızı merak ettim de :)
Lyewor_ wrote on taydin's profile.
Merhabalar forumda yeniyim! Bir sorum olacaktı lcr meterler hakkında. Hem bobini ölçen hemde bobin direnci ölçen bir lcr meter var mı acaba?
gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
Back
Top