فهرست مطالب:

Sponsor Run با C# و Arduino + RC-522: 5 مرحله
Sponsor Run با C# و Arduino + RC-522: 5 مرحله

تصویری: Sponsor Run با C# و Arduino + RC-522: 5 مرحله

تصویری: Sponsor Run با C# و Arduino + RC-522: 5 مرحله
تصویری: Output DC or AC Voltage using MCP4725 DAC with LCD and PWM to Voltage Converter with Arduino 2024, نوامبر
Anonim
Sponsor Run با C# و Arduino + RC-522
Sponsor Run با C# و Arduino + RC-522

اجرای حامیان بسیار رایج است. با این حال ، مدیریت آنها همیشه کار ساده ای نیست. این شامل ثبت تعداد دورهایی است که هر تیم به شیوه ای کارآمد اجرا می کند. من تصمیم گرفتم از RFID برای نشان دادن هر تیم استفاده کنم. در ترکیب با این واقعیت که می توانید یک کارت خوان RC-522 RFID و یک آردوینو را بسیار ارزان تهیه کنید ، ساخت این سیستم به راحتی امکان پذیر است.

مرحله 1: فهرست مواد مورد نیاز

  • برد آردوینو: هر برد انجام می دهد. من از آردوینو نانو برای اندازه آن استفاده می کنم
  • محیط توسعه آردوینو
  • RC-522: می توان در داخل یا خارج از کشور خرید/سفارش داد
  • برچسب های MiFare 13.56 مگاهرتز به طور معمول برخی از نمونه ها ممکن است با برد RC-522 شما ارائه شوند. نوع برچسب مهم نیست. فقط بررسی کنید که آنها فرکانس مناسب هستند.
  • اگر می خواهید کد را تغییر دهید ، رایانه ای با ویندوز و نصب Visual Studio نصب کنید.

مرحله 2: آماده سازی Arduino + RC-522

آماده سازی آردوینو + RC-522
آماده سازی آردوینو + RC-522

تصویر بالا سیم کشی ماژول RC-522 به آردوینو را نشان می دهد. هر آردوینو انجام می دهد. بنابراین ، اگر Arduino Nano در دسترس دارید ، ممکن است از آن استفاده کنید. در thingiverse می توانید مواردی را برای بوکس همه با هم پیدا کنید. من یکی را امتحان کردم ، اما حاشیه های چاپ آن بسیار کم بود و به چاپ سه بعدی غیر قابل استفاده ختم شد.

من هنوز روی یک مورد خوب برای آن کار می کنم.

برای استفاده از برد RC-522 ، باید یک کتابخانه به ویرایشگر Arduino اضافه کنید. متأسفانه ، این کتابخانه ای نیست که توسط ویرایشگر Arduino مدیریت می شود ، بنابراین باید آن را به روش "old school" بارگیری و کپی کردن آن در پوشه کتابخانه ها اضافه کنید. فراموش نکنید که ویرایشگر آردوینو را مجددا راه اندازی کنید تا در دسترس قرار گیرد.

کتابخانه را می توانید در https://github.com/miguelbalboa/rfid پیدا کنید.

در حال حاضر ، ویرایشگر را آماده کرده اید. وقت آن است که اسکریپت را در آردوینو خود بارگذاری کنید. اگر کد را تجزیه و تحلیل کنید ، متوجه خواهید شد که فاصله ای بین 5000 میلی ثانیه وجود دارد که در آن از چاپ چندبار یک کلید جلوگیری می شود. می توانید آن بازه را تغییر دهید ، اما اگر آن را خیلی کوچک تنظیم کنید ، کلید یکسانی چندین بار پس از یکدیگر نشان داده می شود.

بنابراین ، اکنون وقت آن است که بررسی کنیم آیا این قسمت کار می کند یا خیر. RFID هایی که من استفاده می کنم استاندارد Fob های MiFare 1Kb با فرکانس 13.56 مگاهرتز هستند که بسیار ارزان نیز در دسترس هستند.

مانیتور سریال ویرایشگر Arduino را باز کرده و هنگام مشاهده کلیدها به ماژول RC-522 ، آنها را مشاهده کنید.

مرحله 3: رابط Windows نوشته شده با C#

رابط Windows نوشته شده با C#
رابط Windows نوشته شده با C#

شما یک پوشه فشرده حاوی پروژه C# را پیدا کرده اید. آن را بارگیری کرده و بسته بندی آن را باز کنید. کد در Visual Studio 2017 با هدف. Net framework 4.6.1 نوشته شده است. هر رایانه به روز شده باید دارای این باشد و بتواند آن را اجرا کند. لزوماً نیازی به نصب Visual Studio ندارید. کد برای کسانی ارائه می شود که می خواهند آن را اصلاح یا بررسی کنند. بدون تغییر در برنامه ، مدت زمان اجرا 1 ساعت و 30 دقیقه تنظیم شده است. زمان دور معمولی 50 ثانیه است که برای پیست 400 متر است.

فایل اجرایی را می توان در پوشه Debug یافت که در زیر پوشه SponsorRun / SponsorRun / bin قرار دارد.

در آن پوشه همچنین فایل های متنی وجود دارد که در این پروژه برای ذخیره داده ها استفاده می شود.

فایلهای متنی عبارتند از:

  • rfidKeys.txt: حاوی کلیدهای تیم های مختلف است. کلید اول برای تیم اول است و غیره. می توانید این فایل را حذف کرده و کلیدهای خود را اضافه کنید (نحوه عملکرد برنامه را در زیر ببینید)
  • team.txt: شامل اسامی تیم های مختلف است. نام اول برای تیم اول است و غیره. این فایل را با یک ویرایشگر متنی معمولی ساده ویرایش کنید (ممکن است دفترچه یادداشت انجام دهد).
  • results.txt: یک فایل با فرمت CSV حاوی نتایج دورهای مختلف تیم ها (ممکن است وجود نداشته باشد ، در صورتی که هیچ دورانی ثبت نشده باشد)
  • fraude.txt: یک فایل با فرمت CSV حاوی تیم هایی که سعی می کنند تقلب کنند (ممکن است وجود نداشته باشد ، در حالی که هنوز تقلبی تشخیص داده نشده است)

نحوه عملکرد برنامه به شرح زیر است:

  • با راه اندازی اولیه ، برنامه پورت های مختلف COM را در رایانه شما تشخیص می دهد. برای ایجاد امکان ارتباط ، باید پورت COM اختصاص داده شده به آردوینو را انتخاب کنید. به طور پیش فرض ، سرعت سرعت COM باید 9600 bps باشد که با سرعت تعیین شده در کد آردوینو مطابقت دارد.
  • برای فعال کردن ارتباط ، روی دکمه "شروع به گوش دادن" کلیک کنید
  • از آن به بعد ، می توانید بین دو عملکرد انتخاب کنید:

    • خواندن کلیدهای RFID: این کلیدهای جدیدی را به فایل rfidKeys.txt اضافه می کند
    • ثبت دور (گزینه پیش فرض): یک دور جدید را در فایل results.txt ثبت می کند. هر بار که یک کلید معتبر خوانده می شود ، پیامی ظاهر می شود و یک صدای بوق برای تأیید ثبت نام به صدا در می آید. یک خط به results.txt اضافه می شود. در صورت تلاش برای تقلب ، پیام در کادر متنی جداگانه ظاهر می شود ، یک بوق دیگر به صدا در می آید و نتیجه به صورت fraude.txt نوشته می شود. در این حالت ، زمان دور به لحظه تشخیص تقلب تنظیم می شود.

مرحله 4: پیشرفت های احتمالی

من این پروژه را برای موقعیت خاصی در مدرسه ام ایجاد کردم. بدیهی است برخی از پارامترهای مورد استفاده ممکن است برای پروژه شما مناسب نباشد. در حال حاضر ، شما باید پارامترهای موجود در کد C# را تنظیم کرده و برنامه را مجدداً کامپایل کنید ، که این امر نیاز به نصب Visual Studio (یک نصب سنگین 3.5 گیگابایتی) دارد. اگر پاسخ معقولی وجود داشته باشد ، ممکن است این پارامترها را از یک فایل خارجی بخوانم.

قاب های سه بعدی که برای نگهداری پروژه آردوینو پیدا کردم قابل استفاده نیستند. من با یکی شروع کردم ، اما برخی اشکالات داشت ، دلیل آن است ، من هنوز آنها را اضافه نکرده ام. هر کسی که مایل به اشتراک گذاری است می تواند با من تماس بگیرد ، بنابراین من می توانم به کار شما در این دستورالعمل مراجعه کنم.

گام پنجم: انگشت شست را کنار بگذارید !

امیدوارم بتوانید از این پروژه استفاده کنید و من مشتاقانه منتظر شنیدن صحبت های شما هستم.