Arduino

Arduino ile 4x4 Tuş Takımı (Keypad) Kullanımı

Aykut AKMAN 1 yıl önce Yorumlar (0) 5 Dakika Okuma
Arduino ile 4x4 Tuş Takımı (Keypad) Kullanımı
E-Posta : 1.3k 0

Bu yazıda, Arduino ile 4x4 tuş takımı (keypad) kullanarak şifre kontrolü yapmayı öğreneceğiz. Kullanıcı belirli bir şifreyi doğru girdiğinde yeşil LED yanacak, yanlış girişte ise kırmızı LED ile uyarı verilecektir. Ayrıca, girilen tuşlar seri monitörde görüntülenecektir.

Gerekli Malzemeler

  • Arduino Uno (veya uyumlu bir model)
  • 4x4 Tuş Takımı (Keypad)
  • LED'ler (1 yeşil, 1 kırmızı)
  • 220Ω Direnç (2 adet)
  • Bağlantı Kabloları
  • Breadboard

Devre Bağlantıları

arduino-4x4-tuş-takımı-keypad-devre-şeması

4x4 Tuş Takımı

  • ROW pinleri: Tuş takımının 4 sıra pini (R1, R2, R3, R4), Arduino'nun dijital pinlerine bağlanır (örn. 2, 3, 4, 5).
  • COL pinleri: Tuş takımının 4 sütun pini (C1, C2, C3, C4), Arduino'nun diğer dijital pinlerine bağlanır (örn. 6, 7, 8, 9).

LED'ler

  • Yeşil LED: Uzun bacağı (anot) Arduino'nun D10 pinine, kısa bacağı GND'ye bağlanır. Araya 220Ω direnç eklenir.
  • Kırmızı LED: Uzun bacağı (anot) Arduino'nun D11 pinine, kısa bacağı GND'ye bağlanır. Araya 220Ω direnç eklenir.

Arduino Kodu

#include 

const byte ROWS = 4; 
const byte COLS = 4;

// Tuş takımındaki karakterlerin tanımlanması
char keys[ROWS][COLS] = {
  {'1', '2', '3', 'A'},
  {'4', '5', '6', 'B'},
  {'7', '8', '9', 'C'},
  {'*', '0', '#', 'D'}
};

// Sıra ve sütun pinlerinin tanımlanması
byte rowPins[ROWS] = {2, 3, 4, 5}; 
byte colPins[COLS] = {6, 7, 8, 9}; 

Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

String password = "1234";  // Doğru şifre
String input = "";         // Kullanıcı girişi
const int greenLED = 10;   // Yeşil LED pini
const int redLED = 11;     // Kırmızı LED pini

void setup() {
  pinMode(greenLED, OUTPUT);
  pinMode(redLED, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  char key = keypad.getKey();

  if (key) {
    Serial.print("Tus: ");
    Serial.println(key);
    if (key == '#') {
      if (input == password) {
        Serial.println("Sifre dogru! Kapi acildi.");
        digitalWrite(greenLED, HIGH);
        delay(3000);
        digitalWrite(greenLED, LOW);
      } else {
        Serial.println("Sifre yanlis!");
        digitalWrite(redLED, HIGH);
        delay(3000);
        digitalWrite(redLED, LOW);
      }
      input = "";  // Giriş sıfırlanır
    } else if (key == '*') {
      input = "";  // Girişi temizler
    } else {
      input += key;  // Tuşu girişe ekler
    }
  }
}

Kod Açıklamaları

Tuş Takımı Tanımlaması

  • Tuşların sırası ve sütunları keys matrisinde belirtilmiştir.
  • rowPins ve colPins değişkenleri, Arduino'ya bağlı sıra ve sütun pinlerini ifade eder.

Şifre Kontrolü

  • Kullanıcı tuşlara bastıkça, input değişkenine eklenir.
  • # tuşuna basıldığında giriş kontrol edilir:
    • Şifre doğruysa yeşil LED yanar.
    • Şifre yanlışsa kırmızı LED yanar.
  • * tuşuna basıldığında giriş sıfırlanır.

Görsel ve Seri Monitör Uyarıları

  • Seri monitörde girilen tuşlar ve şifre doğruluğu görüntülenir.
  • LED'ler, şifre doğruluğuna göre görsel uyarı verir.

Projenin çalışan örneğini görmek için tıklayınız.

Projenin Çalışma Prensibi

  1. Kullanıcı tuş takımında tuşlara basar ve giriş yapar.
  2. Girilen şifre, tanımlı şifreyle karşılaştırılır.
  3. Doğru şifre durumunda yeşil LED yanar ve kapı açıldığı simgelenir.
  4. Yanlış şifre durumunda kırmızı LED yanar ve uyarı verilir.

Kullanım Alanları

  • Güvenlik Sistemleri: Kapı kilitleri ve erişim kontrolü.
  • Menü Navigasyonu: Kullanıcı arayüzü üzerinden seçim yapma.
  • Şifreli Kilit Sistemleri: Dolap, kasa veya kutular için şifreli kontrol.

Bu proje, Arduino ile tuş takımı kullanımını öğrenmek ve temel şifre kontrol sistemlerini geliştirmek için ideal bir başlangıçtır. Daha ileri seviyede, bu sistemi RFID veya biyometrik sensörlerle entegre ederek güvenliği artırabilirsiniz.

Sıkça Sorulan Sorular

 Arduino'da 4x4 tuş takımını kullanmak için Keypad kütüphanesini kullanabilirsiniz. Tuş takımındaki her bir düğme, bir satır ve sütun pinine bağlanır. Arduino, bu pinleri okuyarak hangi tuşa basıldığını algılar.

Tuş takımından alınan girişleri bir değişkende biriktirerek doğru şifreyle karşılaştırabilirsiniz. Örneğin, Keypad kütüphanesi kullanılarak şifre doğruysa yeşil LED, yanlışsa kırmızı LED yakılabilir.

# tuşu şifreyi doğrulamak, * tuşu ise girişinizi temizlemek için kullanılabilir. Diğer tuşlar şifreyi oluşturan karakterleri girmek için kullanılır.

4x4 tuş takımı projelerinde genellikle Keypad kütüphanesi kullanılır. Bu kütüphane, tuş takımından girişleri kolayca okumak için çeşitli işlevler sunar.

1 x Arduino, 1 x 4x4 tuş takımı, yeşil ve kırmızı LED, dirençler, breadboard ve bağlantı kabloları gereklidir.

Tuş takımındaki satır pinlerini Arduino'nun dijital pinlerine (ör. 2, 3, 4, 5), sütun pinlerini ise diğer dijital pinlere (ör. 6, 7, 8, 9) bağlayarak bağlantıyı yapabilirsiniz.

Tuş takımı üzerinden belirli bir şifre girildiğinde, Arduino LED'i yakmak veya söndürmek için dijital pinleri kontrol eder.

* tuşuna basıldığında, mevcut giriş sıfırlanarak yeni bir şifre girişi yapılabilir.

uş takımından şifre alıp doğru şifre girildiğinde bir kapıyı açmak, yanlış şifre girildiğinde alarm çalmak gibi güvenlik projeleri yapılabilir.

Aykut AKMAN

Aykut AKMAN

Bilişim Öğretmeni

Bu Gönderiye Yorum Yapılmamış

Yorum Yap

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlendi.

Diğer Yazılar

PHP ile Dosya Yükleme Güvenliği Php

PHP ile Dosya Yükleme Güvenliği

Aykut AKMAN 1 yıl önce