PN532 adalah modul NFC (dekat komunikasi lapangan) serbaguna yang dapat digunakan untuk membaca dan menulis tag NFC, serta untuk mengimplementasikan sistem RFID. Menggunakan PN532 dengan Raspberry PI memungkinkan Anda untuk mengintegrasikan kemampuan NFC ke dalam proyek Anda untuk aplikasi seperti kontrol akses, pembayaran tanpa kontak, dan perangkat IoT. Panduan ini menuntun Anda melalui pengaturan dan menggunakan PN532 dengan pi raspberry.
Apa yang Anda Butuhkan
- Raspberry Pi (Model apa pun dengan dukungan GPIO, mis., Pi 3, pi 4)
- Modul NFC PN532
- Papan tempat memotong papan dan kabel jumper
- Komputer dengan akses SSH ke Raspberry Pi atau keyboard yang terhubung dan monitor
- Python dipasang di Raspberry Pi
Langkah 1: Pengkabelan PN532 ke Raspberry Pi
Modul PN532 mendukung beberapa protokol komunikasi, termasuk I2C, SPI, dan UART. Panduan ini menggunakan antarmuka I2C untuk kesederhanaan.
Koneksi (mode I2C)
Pin PN532 | Raspberry Pi Pin |
---|---|
Vcc | 3.3V (pin 1) |
Gnd | Ground (pin 6) |
SDA | SDA (Pin 3, GPIO2) |
Scl | SCL (pin 5, gpio3) |
Sel0 | Gnd |
Sel1 | Vcc |
Catatan: Pin Sel0 dan Sel1 menentukan mode komunikasi. Menghubungkan Sel0 ke GND dan Sel1 ke VCC Memilih mode I2C.
Langkah 2: Aktifkan antarmuka I2C di Raspberry Pi
- Buka alat konfigurasi Raspberry Pi:
sudo raspi-config
- Navigasikan ke Opsi Antarmuka> I2C dan mengaktifkannya.
- Reboot Raspberry Pi:
sudo reboot
Langkah 3: Instal alat dan perpustakaan yang diperlukan
- Perbarui Raspberry Pi Anda:
sudo apt update && sudo apt upgrade -y
- Instal alat I2C:
sudo apt install -y i2c-tools
- Instal pustaka Python untuk komunikasi I2C dan fungsionalitas PN532:
pip install adafruit-circuitpython-pn532
Langkah 4: Verifikasi koneksi
- Menggunakan
i2cdetect
Untuk memverifikasi PN532 terdeteksi di bus I2C:sudo i2cdetect -y 1
- Anda harus melihat PN532 di alamat
0x24
atau0x48
. Jika tidak:- Periksa kabel Anda.
- Pastikan PN532 didukung.
Langkah 5: Membaca Tag NFC dengan Python
Skrip python berikut menunjukkan cara membaca tag NFC menggunakan PN532.
Contoh Kode Python
import board
import busio
from adafruit_pn532.i2c import PN532_I2C
# I2C connection setup
i2c = busio.I2C(board.SCL, board.SDA)
pn532 = PN532_I2C(i2c, debug=False)
# Configure PN532 to read NFC tags
pn532.SAM_configuration()
print("Waiting for an NFC tag...")
while True:
uid = pn532.read_passive_target(timeout=0.5)
if uid is not None:
print(f"Found NFC tag with UID: {uid.hex()}")
Langkah 6: Aplikasi PN532
- Kontrol akses: Buat sistem kunci pintu berbasis NFC.
- Pembayaran tanpa kontak: Simulasi sistem pembayaran dengan kartu NFC.
- Proyek IoT: Gunakan tag NFC untuk memicu acara otomatisasi.
- Data Logging: Tulis data ke tag NFC untuk tujuan inventaris atau pelacakan.
Pemecahan masalah
-
Perangkat tidak terdeteksi:
- Verifikasi koneksi SDA dan SCL.
- Pastikan antarmuka I2C diaktifkan di Raspberry Pi.
- Periksa konfigurasi pin SEL0 dan SEL1 untuk mode I2C.
-
Baca Kesalahan:
- Pastikan tag NFC berada dalam jangkauan PN532.
- Periksa gangguan dari benda logam atau perangkat elektronik lainnya.
-
Kesalahan I2C:
- Pastikan tidak ada perangkat yang saling bertentangan di bus I2C.
Kesimpulan
Modul PN532 NFC adalah alat serba guna untuk menambahkan kemampuan NFC dan RFID ke proyek Raspberry PI Anda. Dengan mengikuti panduan ini, Anda dapat mengatur dan menggunakan PN532 untuk aplikasi seperti kontrol akses, otomatisasi IoT, dan pertukaran data tanpa kontak. Bereksperimenlah dengan membaca dan menulis tag NFC untuk mengeksplorasi potensi penuh dari modul yang kuat ini!