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,880
Mesajlar
100,270
Üyeler
2,491
Son üye
djkop

Son kaynaklar

Son profil mesajları

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.
cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Back
Top