به نام خدا
پروژه ی کامل شناسایی فرکانس رادیویی با آردوینو به همراه کد برنامه
در این آموزش سیستمی برای خواندن ID کارت های RFID طراحی خواهیم کرد. RFID مخفف Radio Frequency Identification به معنای شناسایی فرکانس رادیویی می باشد. هر کارت ID جاسازی شده مخصوص به خود را دارد. این سیستم کاربرد های زیاد و متنوعی دارد مانند استفاده در ادارات، مراکز خرید و در کل جاهایی که افراد خاص و مورد تایید اجازه ورود را دارند استفاده می شود. RFID که در مراکز خرید استفاده می شود از سرقت در فروشگاه جلوگیری می کند. اجناس مغازه با RFID تگ می شوند و اگر فردی جنسی را قبل از این که تگ از ان جدا شود از فروشگاه خارج کند آلارم فروشگاه به صدا در می آید.
قطعات مورد نیاز پروژه ی کامل شناسایی فرکانس رادیویی با آردوینو به همراه کد برنامه:
- آردوینو UNO
- منبع تغذیع ۵ ولت
- خازن ۱۰۰uF
- دو عدد میکروسوئیچ
- مقاومت ۱KΩ
- ماژول RFID
- LED
- LCD 16*2
شماتیک مدار و توضیحات:
۱۶×۲ lcd دارای ۱۶ پایه که دو پایه برای نور پس زمینه، ۸ پایه دیتا (پایه های ۷-۱۴ یا D0-D7)، دو پایه تغذیه و ۳ پایه برای تنظیم شفافیت lcd می باشد.
در این مدار فقط از دو پایه کنترل ENABLE و RS استفاده شده و پایه READ/WRITE به زمین متصل شده است. در این حالت lcd در بیشترین کنتراست حالت خواندن است.
اتصالات با LCD به صورت زیر است:
PIN1 یا VSS به زمین
PIN2 یا VDD یا VCC به +۵ ولت
PIN3 یا VEE به زمین
PIN4 یا RS به PIN8 از ARDUINO UNO
PIN5 یا (RW (Read/Write به زمین
PIN6 یا E (Enable) به PIN9 از ARDUINO UNO
PIN11 یا D4 به PIN10 از ARDUINO UNO
PIN12 یا D5 به PIN11 از ARDUINO UNO
PIN13 یا D6 به PIN12 از ARDUINO UNO
PIN14 یا D7 به PIN13 از ARDUINO UNO
ماژول RFID اطلاعات را طریق پورت سریال می فرستد. حالت های دیگری برای ارتباط با آردوینو وجود دارد ولی ما برای ساده سازی کار از RS232 استفاده میکنیم. پین RS232 از ماژول به پایه RXD آردوینو UNO متصل می شود.
داده های فرستاده شده توسط ماژول RFID با مشخصات زیر است:
دانلود کد برنامه :
دانلود فایل#include <LiquidCrystal.h> // initialize the library with the numbers of the interface pins LiquidCrystal lcd(8, 9, 10, 11, 12, 13);//RS,EN,D4,D5,D6,D7 int count = 0; //integer for storing character of ID char input[12];//memory for storing 12 characters of ID void setup() { // set up the LCD's number of columns and rows: lcd.begin(16, 2); Serial.begin(9600);//serial communication enabling by 9600 baud rate pinMode(0,INPUT);//receive pin set as output lcd.print("CIRCUITDIGEST");//showing name lcd.setCursor(0, 1);//move courser to second line } void loop() { while(Serial.available() && count < 12) // Read 12 characters and store them in input array { input[count] = Serial.read();//storing 12 characters one by one count++; lcd.print(input[count]);//showing 12 characters on LCD one by one if (count==12) { lcd.print(" "); count = 0;// once 12 characters are read get to start and wait for second ID lcd.setCursor(0, 1);//move courser to start. } } }
دیدگاهها (0)