ماژول RFID/NFC pn532 به همراه کارت و تگ با قابلیت خواندن و نوشتن
ماژول RFID/NFC pn532
PN532 یک کارت خوان RFID/NFC است که قابلیت خواندن و نوشتن کارتهای با فرکانسهای ۱۳.۵۶۸ مگاهرتز (MHz) و ۴۳۵ مگاهرتز را داراست. این کارتخوان محصول شرکت NXP Semiconductors است و میتواند با استفاده از پروتکلهای مختلفی از جمله ISO/IEC 14443A/B و FeliCa و MIFARE و NFC Forum Tag Type 2/4 کار کند. با استفاده از PN532 میتوان اطلاعاتی که در کارتهای RFID/NFC ذخیره شده است را خواند و برای کاربردهای مختلفی از جمله کنترل دسترسی، پرداخت بیواسطه، احراز هویت، ردیابی و ... استفاده کرد. همچنین این کارتخوان دارای رابطهای ارتباطی مختلفی مانند UART، SPI و I2C میباشد که برای اتصال به سیستمهای مختلف مانند میکروکنترلرها و رایانهها قابل استفاده است.
ویژگی های ماژول RFID/NFC pn532
ماژول PN532 یک کارتخوان RFID/NFC است که توسط شرکت NXP Semiconductors تولید شده است. مشخصات فنی این ماژول به شرح زیر میباشد:
- فرکانس کاری: ۱۳.۵۶۸ مگاهرتز و ۴۳۵ مگاهرتز
- پشتیبانی از پروتکلهای RFID/NFC: ISO/IEC 14443A/B, FeliCa, MIFARE و NFC Forum Tag Type 2/4
- قابلیت خواندن و نوشتن کارتهای RFID/NFC با فرکانسهای ۱۳.۵۶۸ مگاهرتز و ۴۳۵ مگاهرتز
- دارای رابطهای ارتباطی: UART، SPI و I2C
- دارای آنتن داخلی با قابلیت تنظیم قدرت خروجی
- توان مصرفی کمتر از ۱۰۰ میلیآمپر در حالت آماده به کار و ۳۰۰ میلیآمپر در حالت فعال
- دارای پایههای GPIO برای اتصال به سیگنالهای دیگر سیستم
- ابعاد: ۴۰ × ۶۰ میلیمتر
- ولتاژ کاری: ۳.۳ ولت
- دمای کاری: -۴۰ تا ۸۵ درجه سلسیوس
بررسی پایه های ماژول RFID/NFC pn532
درست است، پایههای ماژول PN532 برای اتصال به سیستمهای مختلف مانند میکروکنترلرها و رایانهها عبارتند از:
VCC: ورودی تغذیه با ولتاژ ۳.۳ ولت
GND: زمین
SDA: پایه داده سریال
SCL: پایه ساعت سریال
MOSI: ورودی داده SPI
MISO: خروجی داده SPI
SCK: پایه ساعت SPI
NSS: پایه انتخاب تراشه SPI
TXD: پایه داده UART
RXD: خروجی داده UART
S1: پایه انتخاب ورودی/خروجی ماژول
S2: پایه انتخاب ورودی/خروجی ماژول
IRQ: پایه درخواست وقفه
Reset: پایه تنظیم مجدد ماژول
به همراه ماژول NFC PN532 چه اقلامی باید خریداری شود؟
- تگهای NFC/RFID: برای تست و استفاده از ماژول PN532، باید حداقل یک تگ NFC/RFID داشته باشید. این تگها معمولاً در فرکانس 13.56 مگاهرتز عمل میکنند.
- میکروکنترلر: برای اتصال ماژول PN532 به سیستمهای مختلف، معمولاً از میکروکنترلرها استفاده میشود. برای مثال، میتوان از میکروکنترلرهای آردوینو، رزبریپای و ... استفاده کرد.
- کابلهای اتصال: برای اتصال ماژول PN532 به میکروکنترلر و یا رایانه، نیاز به کابلهای اتصال میباشد. بسته به نوع اتصال ماژول، ممکن است از کابلهای USB، UART و یا SPI استفاده شود.
- نرمافزار مورد نیاز: برای برنامهنویسی و کنترل ماژول PN532، نرمافزار مورد نیاز باید در سیستم شما نصب باشد. این نرمافزارها معمولاً شامل کتابخانههایی برای برنامهنویسی در زبانهای مختلف هستند.
- منبع تغذیه: برای تامین تغذیه الکتریکی ماژول PN532، ممکن است به یک منبع تغذیه خارجی نیاز داشته باشید. به عنوان مثال، منبع تغذیه با ولتاژ ۳.۳ ولت و جریان حداقل ۵۰۰ میلیآمپر را میتوان برای تغذیه ماژول PN532 استفاده کرد.
راه اندازی PN532 با آردوینو
این کد از کتابخانه Adafruit PN532 برای ارتباط با ماژول PN532 از طریق SPI استفاده میکند. در تابع setup()، ماژول PN532 مقداردهی اولیه شده و تنظیمات لازم برای خواندن تگهای NFC اعمال میشود. در تابع loop()، کد منتظر شناسایی یک کارت NFC است، پس از شناسایی UID آن را میخواند و در مانیتور سریال چاپ میکند. سپس یک آخرین تأخیر یک ثانیه اعمال شده و برای شناسایی کارت دیگری بررسی میشود. لازم به ذکر است که این کد فرض میکند که ماژول PN532 به آردوینو از طریق ارتباط SPI متصل شده است و پایههای SCK ،MISO، MOSI، و SS به درستی برای تنظیمات خاص شما تعریف شدهاند.
#include <SPI.h>
#include <Adafruit_PN532.h>
Adafruit_PN532 nfc(SCK, MISO, MOSI, SS);
void setup() {
Serial.begin(115200);
// Initialize the PN532 module
nfc.begin();
uint32_t versiondata = nfc.getFirmwareVersion();
if (! versiondata) {
Serial.print("PN532 not found");
while (1); // halt
}
// Configure the PN532 to read NFC tags
nfc.SAMConfig();
Serial.println("PN532 Initialized!");
}
void loop() {
uint8_t success;
uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 }; // Buffer to store the UID of the card
// Wait for an NFC card
success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid, sizeof(uid));
if (success) {
Serial.print("Found a card with UID: ");
for (uint8_t i = 0; i < 7; i++) {
Serial.print(uid[i], HEX);
Serial.print(" ");
}
Serial.println("");
}
delay(1000);
}
راه اندازی PN532 با میکروپایتون
این کد از کلاس PN532_SPI از کتابخانه میکروپایتون pn532 استفاده می کند تا با ماژول PN532 از طریق ارتباط SPI ارتباط برقرار کند. پایه های SPI با استفاده از تابع const تعریف شده اند تا در زمان اجرا قابل تغییر نباشند. در حلقه while، کد منتظر یک کارت NFC برای شناسایی استفاده از متد read_passive_target () از شی pn532 است. اگر کارت شناسایی شود، UID آن به کنسول سریال چاپ می شود. حلقه سپس یک ثانیه تاخیر دارد و سپس برای کارت دیگری بررسی می کند.توجه کنید که این کد فرض می کند که ماژول PN532 از طریق ارتباط SPI به میکروکنترلر متصل است و پایه های SCK ، MISO ، MOSI و SS برای نصب شما به درستی تعریف شده اند. همچنین، مطمئن شوید کتابخانه pn532 را قبل از اجرای این کد روی میکروکنترلر خود نصب کرده اید.
import machine
from micropython import const
from pn532 import PN532_SPI
# Define the SPI pins
SCK = const(18)
MISO = const(19)
MOSI = const(23)
SS = const(5)
# Create an instance of the PN532 class
pn532 = PN532_SPI(sck=machine.Pin(SCK), miso=machine.Pin(MISO), mosi=machine.Pin(MOSI), ss=machine.Pin(SS))
# Initialize the PN532 module
pn532.begin()
while True:
# Wait for an NFC card
uid = pn532.read_passive_target()
if uid is not None:
print("Found a card with UID:", [hex(i) for i in uid])
machine.delay(1000)
مشخصات
- کاربری
- مناسب برای استفاده شخصی
- نوع ماژول
- RFID
- تعداد قطعات
- 30 عدد
- تعداد فیبر
- 1 عدد
- ابعاد
- 42x40mm
- ولتاژ مورد نياز
- 3.2 ولت DC
- فیبر مدار چاپی
- فایبرگلاس دورو متالیزه
- چاپ مس
- دارای چاپ قرمز
- اقلام همراه محصول
- یک کارت و یک تگ مخصوص + کابل اتصال به پین هدر
- ترتیب پایه ها
- طبق چاپ راهنما بر روی برد و یا مراجعه به دیتاشیت
- کشور سازنده
- چین
- فرکانس
- 13.56 مگاهرتز
- نوع کانکتور
- پین هدر
- پروتکل ارتباطی
- I2C , SPI ,UART
- نوع اسیلاتور
- کریستال خارجی
- مد کاری
- RFID/NFC
- منبع تامین انرژی
- الکتریسیته
- ماژول sim800l
- سیم کارت
- منبع تغذیه
- آنتن GSM
- کابل USB به سریال
- خازن 1000 میکروفاراد
- ماژول کاهنده LM2596
ولقطعات مورد نیاز برای راه اندازی ماژول sim800l عبارتند از:
امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایههای GPIO قابل اتصال به میکروکنترلرها هستند.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.