آموزش MSP430تکنولوژی

پروژه اتصال ماژول RFID EM-18 به لانچ پد MSP430

در این پروژه لانچ پد ما سیستمی را برای خواندن کارتهای RFID با استفاده از MSP430 و ماژول RFID طراحی می کنیم. RFID مخفف شناسایی فرکانس رادیویی است. هر کارت دارای شناسه منحصر به فرد است و این باعث می شود در بسیاری از برنامه های احراز هویت مانند دفاتر ، مراکز خرید و بسیاری از مکان های دیگر که فقط شخص دارای کارت مجوز اجازه ورود به آن را دارد ، گزینه مناسبی باشد.

RFID در مراکز خرید برای جلوگیری از وقوع سرقت استفاده می شود ، مثلا یک محصول با تراشه RFID برچسب گذاری می شود و اگر کسی با تراشه RFID ساختمان را ترک کند ، زنگ هشدار به صورت خودکار فعال می شود. سیستم های احراز هویت RFID به راحتی طراحی می شوند و ارزان قیمت هستند. امروزه برخی از مدارس و دانشکده ها از RFID برای ثبت حضور استفاده می کنند.

توضیحات مدار پروژه RFID با MSP430

ما از ارتباط UART در MSP430 استفاده خواهیم کرد ، بنابراین اطمینان حاصل کنید که جامپرهای RXD و TXD روی صفحه در حالت HW UART هستند. سپس Tx از EM-18 را به RXD (P1.1) MSP430 وصل کنید.

مدار پروژه RFID با MSP430

توضیحات ماژول خواننده RFID EM-18

ماژول خواننده RFID EM-18

RFID مخفف Radio Frequency Identification به معنی شناسایی فرکانس رادیویی است. هر کارت RFID دارای یک شناسه منحصر به فرد است که در آن قرار داده شده است. از خواننده RFID برای خواندن شماره RFID استفاده می شود. خواننده RFID EM-18 با سرعت 125 کیلوهرتز کار می کند و از آنتن داخلی بهره می برد و با منبع تغذیه 5 ولت می توان از آن استفاده کرد. این ماژول خروجی سریال به همراه خروجی weigand را فراهم می کند. دامنه عملکرد آن حدود 8-12 سانتی متر است. از این ماژول آرفید در بسیاری از پروژه ها استفاده میشود مثل :

  • سیستم حضور و غیاب مبتنی بر RFID
  • سیستم های امنیتی
  • دستگاه های رای گیری
  • قیمت گذاری جاده ای الکترونیکی

برچسب های (تگ ها) آرفید

خروجی ارائه شده توسط EM-18 RFID خواننده با فرمت 12 رقمی ASCII است. از 12 رقم اول 10 رقم اول شماره کارت و دو رقم آخر نتیجه XOR شماره کارت است. دو رقم آخر برای بررسی خطا استفاده می شوند.

به عنوان مثال ، شماره کارت 0200107D0D62 است که از خواننده خوانده می شود و سپس شماره کارت موجود در کارت به شرح زیر می باشد.

02 = مقدمه

00107D0D = 1080589 در دسیمال.

62 مقدار XOR برای (02 XOR 00 XOR 10 XOR 7D XOR 0D) است.

از این رو شماره کارت 0001080589 است

جزئیات پین های EM-18

خواننده RF-EM-18 دارای 9 پین ​​است. در میان 9 پین ​​، 2 پین متصل نمیشوند. بنابراین در اصل ما باید 7 پایانه را در نظر بگیریم. جدول زیر توضیحات پین EM-18 را نشان می دهد.

جزئیات پین های EM-18

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید
شماره پین نام پین استفاده
1 VCC مثبت
2 GND GROUND
3 BUZZ بازر
4 NC بدون اتصال
5 NC بدون اتصال
6 SEL SEL=1 (RS232) SEL=0 (WEIGAND)
7 TX DATA is given out through TX of RS232
8 DATA1 WEIGAND interface DATA HIGH pin
9 DATA0 WEIGAND interface DATA  LOW pin

مشخصات ماژول RF-EM-18

  • فاصله خواندن: 10cm
  • دمای کار: 0 درجه سانتیگراد تا +80 درجه سانتی گراد
  • پارامتر ارتباطی: 9600bps
  • میزان مصرف فعلی: <50mA
  • فرکانس عملکرد: 125 کیلوهرتز
  • ولتاژ عامل: 5 ولت

قطعات مورد نیاز

  1. برد لانچ پد MSP430
  2. ماژول خواننده RFID EM-18
  3. ال سی دی کاراکتری 16*2
  4. پتانسیومتر
قطعات مورد نیاز را از فروشگاه قطعات آیرنکس تهیه کنید.

کد پروژه شناسایی کارت RFID با MSP430

قبل از ادامه باید در مورد ارتباط سریال بدانیم. ماژول RFID در اینجا داده ها را به صورت سریال به کنترلر می فرستد. پین RS232 ماژول به پین ​​RXD MSP430 وصل شده است.

اطلاعات ارسال شده توسط ماژول RFID به شرح زیر است:

کد پروژه شناسایی کارت RFID با MSP430

حال برای برقراری ارتباط بین RFID و MSP430 ، باید ارتباط سریال را در MSP430 فعال کنیم. برقراری ارتباط سریال در MSP430 با استفاده از یک دستور واحد انجام می شود.

Serial.begin(9600);
data = Serial.read();

همانطور که در شکل بالا نشان داده شده است ، ارتباط RFID با نرخ BAUD 9600 بیت در ثانیه انجام می شود. بنابراین برای MSP430 برای ایجاد چنین نرخ باود و برای شروع ارتباط سریال ، از دستور Serial.begin (9600)؛ استفاده می کنیم. در اینجا 9600 نرخ باود است و قابل تغییر است.

اکنون پس از تنظیم نرخ baud ، برد MSP آماده دریافت داده های سریال است. این داده ها با دستور data = Serial.read ()؛ جمع آوری می شوند.

هنگامی که یک کارت به ماژول خواننده نزدیک شود ، خواننده داده های سریال را می خواند و آن را به MSP ارسال می کند ، MSP برنامه ریزی می شود تا آن مقدار را در LCD نشان دهد.

ما کد پروژه را در محیط Energia IDE مینویسیم. اگر تازه کار هستید، آموزش برنامه نویسی MSP430 با Energia را بخوانید. کد کامل پروژه در انتهای صفحه قرار داده شده است. در اینجا بعضی از قسمت های کد را بررسی میکنیم.

در ابتدا کتابخانه کریستال مایع را برای نمایش شماره کارت RFID فراخوانی میکنیم و پین های مورد استفاده برای اتصال LCD را تعریف میکنیم. سپس آرایه ای با اندازه 12 ایجاد میکنیم.

#include <LiquidCrystal.h>
LiquidCrystal lcd(P2_0, P2_1, P2_2, P2_3, P2_4, P2_5);
char input[12];

در عملکرد void setup ()، ال سی دی را راه اندازی و ارتباط سریال را با تعیین نرخ Baud 9600 فعال کنید.

void setup() 
{
  lcd.begin(16, 2);
  Serial.begin(9600);   
...
..

در عملکرد void loop ()، ما بررسی خواهیم کرد که اطلاعات سریال در دسترس است یا خیر. در صورت وجود ، داده ها را در آرایه ورودی [count] از Serial.read () ذخیره میکنیمو آن را با استفاده از loop در LCD نمایش میدهیم.

while(Serial.available() && count < 12)   //اگر داده سریال در دسترس بود
      {
      input[count] = Serial.read();      //مرتب سازی اعداد شماره کارت
              Serial.print(input[count]);                                
             lcd.print(input[count]);
                 delay(300);
                      count++;    
                 if (count==12)
                 {
                 lcd.print("                      ");
                 count = 0;   //آماده برای دریافت شماره کارت بعدی

به این ترتیب است که می توانیم شماره RFID را بر روی LCD با استفاده از MSP430 Launchpad بخوانیم و نمایش دهیم. اکنون می توانید این پروژه را گسترش دهید و آن را به عنوان سیستم حضور و غیاب ، سیستم رای گیری ، سیستم امنیتی و … پیکربندی کنید.

موارد موجود در فایل : سورس کامل ، شماتیک

5 (4 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *