Mündəricat:

C# və Arduino + RC-522 ilə sponsorluq edin: 5 addım
C# və Arduino + RC-522 ilə sponsorluq edin: 5 addım

Video: C# və Arduino + RC-522 ilə sponsorluq edin: 5 addım

Video: C# və Arduino + RC-522 ilə sponsorluq edin: 5 addım
Video: Arduino Camera Shield Unboxing & Test с примером проекта 2024, Iyul
Anonim
C# və Arduino + RC-522 ilə sponsorluq edin
C# və Arduino + RC-522 ilə sponsorluq edin

Sponsor qaçışları olduqca yaygındır. Bununla birlikdə, onları idarə etmək həmişə asan məsələ deyil, hər komandanın səmərəli şəkildə qaçdığı dövrələrin sayını qeyd etməkdir. Hər bir komandanı təyin etmək üçün RFID -lərdən istifadə etmək qərarına gəldim. Bir RC-522 RFID oxucu kartı və olduqca ucuz bir arduino ala biləcəyinizlə birlikdə, bu sistemi olduqca asan bir şəkildə qurmağa imkan verir.

Addım 1: Lazımi materialların siyahısı

  • Arduino lövhəsi: hər hansı bir lövhə edəcək. Ölçüsünə görə Arduino Nano'dan istifadə edirəm
  • Arduino inkişaf mühiti
  • RC-522: yerli və ya xaricdən alına/sifariş verilə bilər
  • MiFare 13.56 MHz etiketləri. Normalda bəzi nümunələr RC-522 lövhənizlə birlikdə gələ bilər. Etiket növünün əhəmiyyəti yoxdur. Doğru tezlik olduğunu yoxlayın.
  • Kodu dəyişdirmək istəyirsinizsə Windows ilə işləyən və Visual Studio quraşdırılmış bir kompüter.

Addım 2: Arduino + RC-522-nin hazırlanması

Arduino + RC-522 hazırlanır
Arduino + RC-522 hazırlanır

Yuxarıdakı şəkil RC-522 modulunun Arduino-ya naqillərini göstərir. İstənilən Arduino edəcək. Beləliklə, bir Arduino Nano varsa, bundan istifadə etməyi düşünə bilərsiniz. Hər şeydə, hamısını birlikdə boks etmək üçün bəzi hallar tapa bilərsiniz. Birini sınadım, amma çap etmək üçün kənarları çox kiçik idi və nəticədə yararsız bir 3D çapla bitdi.

Bunun üçün hələ də yaxşı bir iş üzərində işləyirəm.

RC-522 lövhənizdən istifadə etmək üçün Arduino redaktoruna kitabxana əlavə etməlisiniz. Təəssüf ki, Arduino redaktoru tərəfindən idarə olunan bir kitabxana deyil, buna görə onu yükləmək və kitabxanalar qovluğuna kopyalamaq üçün "köhnə məktəb" metodunu əlavə etməlisiniz. Əlçatan etmək üçün Arduino redaktorunu yenidən başlatmağı unutmayın.

Kitabxananı https://github.com/miguelbalboa/rfid ünvanında tapa bilərsiniz.

İndi redaktor hazırdır. Ssenarini Arduino -ya yükləməyin vaxtı gəldi. Kodu təhlil etsəniz, eyni düyməni bir neçə dəfə çap etməkdən çəkindiyiniz 5000 milisaniyəlik bir fasilə olduğunu görəcəksiniz. Bu aralığı dəyişə bilərsiniz, ancaq onu çox kiçik təyin etsəniz, eyni düymə bir -birinin ardınca dəfələrlə göstəriləcək.

Beləliklə, indi bu hissənin işlədiyini yoxlamağın vaxtı gəldi. İstifadə etdiyim RFID -lər 13.56 MHz -də standart MiFare 1Kb foblardır və onlar da çox ucuz satılır.

Arduino redaktorunun Serial monitorunu açın və açarları RC-522 moduluna gətirərkən görünməsini izləyin.

Addım 3: C# -də yazılmış Windows İnterfeysi

Windows interfeysi C# -də yazılmışdır
Windows interfeysi C# -də yazılmışdır

C# layihəsi olan sıxılmış bir qovluq daxil etdiyinizi görürsünüz. Yükləyin və açın. Kod, Visual Studio 2017 hədəflənməsində yazılıb. Net framework 4.6.1. Hər hansı bir yenilənmiş kompüterdə bu olmalıdır və onu icra edə bilməlidir. Visual Studio qurmaq məcburiyyətində deyilsiniz. Kod onu dəyişdirmək və ya yoxlamaq istəyənlər üçün verilir. Proqrama dəyişiklik edilmədən, qaçış müddəti 1 saat 30 dəqiqə olaraq təyin olunur. Normal dövrə müddəti 50 saniyəyə təyin olunur ki, bu da 400 metrlik yolda.

İcra olunan fayl SponsorRun / SponsorRun / bin qovluğunun altında yerləşən Debug qovluğunda tapıla bilər.

Bu qovluqda bu layihədə məlumatları saxlamaq üçün istifadə olunan mətn faylları da var.

Mətn faylları bunlardır:

  • rfidKeys.txt: müxtəlif komandaların açarlarını ehtiva edir. İlk açar birinci komanda üçündür və s. Bu faylı silə və öz açarlarınızı əlavə edə bilərsiniz (proqramın necə işlədiyini aşağıya baxın)
  • teams.txt: fərqli komandaların adlarını ehtiva edir. Adı ilk komanda üçündür və s. Bu faylı ümumi bir düz mətn redaktoru ilə düzəldin (notepad edə bilər).
  • results.txt: komandaların müxtəlif dövrələrinin nəticələrini ehtiva edən CSV formatlı bir fayl (indiyə qədər heç bir dövrə qeydə alınmadıqda yox ola bilər)
  • fraude.txt: aldatmağa çalışan komandaları ehtiva edən CSV formatlı bir fayl (hələ heç bir aldatma aşkar edilmədikdə ola bilər)

Proqramın işləmə qaydası belədir:

  • Başladıqdan sonra proqram kompüterinizdəki müxtəlif COM portlarını aşkar edir. Əlaqəni mümkün etmək üçün Arduino -ya təyin edilmiş COM portunu seçməlisiniz. Varsayılan olaraq, COM sürət dərəcəsi Arduino kodunda təyin olunan sürətə uyğun gələn 9600 bps olmalıdır.
  • Əlaqəni aktivləşdirmək üçün "Dinləməyə başla" düyməsini basın
  • Bu andan etibarən iki funksiyadan birini seçə bilərsiniz:

    • RFID düymələrini oxuyun: bu rfidKeys.txt faylına yeni açarlar əlavə edir
    • Qeyd dövrəsi (standart seçim): results.txt faylına yeni bir dövrə qeyd edir. Hər dəfə etibarlı bir açar oxunduqda bir mesaj görünəcək və qeydiyyatı təsdiqləmək üçün bir bip səsi eşidiləcək. Nəticələr.txt -ə bir xətt əlavə olunacaq. Aldatma cəhdi halında, mesaj ayrı bir mətn qutusunda görünəcək, başqa bir bip səsi çıxacaq və nəticə fraude.txt -ə yazılacaq. Bu vəziyyətdə, dövrənin vaxtı aldatma aşkar edildiyi vaxta təyin ediləcəkdir.

Addım 4: Mümkün təkmilləşdirmələr

Bu layihəni məktəbimdəki müəyyən bir vəziyyət üçün yaratdım. Aydındır ki, istifadə olunan bəzi parametrlər layihəniz üçün uyğun olmaya bilər. Hələlik, C# kodundakı parametrləri düzəltməli və proqramı yenidən tərtib etməli olacaqsınız ki, bu da Visual Studio qurulmasını tələb edir (ağır 3,5 GB quraşdırma). Ağlabatan bir cavab varsa, bu parametrləri xarici bir fayldan oxumağı düşünə bilərəm.

Arduino layihəsini yerləşdirmək üçün tapdığım 3D hallar istifadə edilə bilməz. Bir işə başladım, amma bəzi uğursuzluqlar oldu, bu səbəbdən hələ əlavə etməmişəm. Paylaşmaq istəyən hər kəs mənimlə əlaqə saxlaya bilər, buna görə də bu Təlimatdakı işinizə müraciət edə bilərəm.

Addım 5: Barmaqlarınızı yuxarı qaldırın !

Ümid edirəm bu layihədən istifadə edə bilərsiniz və sizdən eşitmək üçün səbirsizliklə gözləyirəm.