Spisu treści:

Uruchom sponsora z C# i Arduino + RC-522: 5 kroków
Uruchom sponsora z C# i Arduino + RC-522: 5 kroków

Wideo: Uruchom sponsora z C# i Arduino + RC-522: 5 kroków

Wideo: Uruchom sponsora z C# i Arduino + RC-522: 5 kroków
Wideo: RFID With An Arduino - Let's Make It - Episode 15 2024, Lipiec
Anonim
Uruchom sponsora z C# i Arduino + RC-522
Uruchom sponsora z C# i Arduino + RC-522

Biegi sponsorów są dość powszechne. Jednak zarządzanie nimi nie zawsze jest łatwym zadaniem. Polega ono na zarejestrowaniu liczby okrążeń każdego zespołu w efektywny sposób. Zdecydowałem się użyć RFID jako tokena do identyfikacji każdego zespołu. W połączeniu z faktem, że można kupić kartę czytnika RFID RC-522 i arduino dość tanio, daje to możliwość łatwego zbudowania tego systemu.

Krok 1: Lista potrzebnych materiałów

  • Płytka Arduino: wystarczy każda płytka. Używam Arduino Nano ze względu na jego rozmiar
  • Środowisko programistyczne Arduino
  • RC-522: można kupić/zamówić na miejscu lub za granicą
  • Znaczniki MiFare 13,56 MHz. Zwykle niektóre próbki mogą być dostarczane z płytą RC-522. Rodzaj tagu nie ma znaczenia. Po prostu sprawdź, czy mają odpowiednią częstotliwość.
  • Komputer z systemem Windows i zainstalowanym programem Visual Studio, jeśli chcesz zmodyfikować kod.

Krok 2: Przygotowanie Arduino + RC-522

Przygotowanie Arduino + RC-522
Przygotowanie Arduino + RC-522

Powyższy rysunek przedstawia okablowanie modułu RC-522 do Arduino. Każde Arduino zrobi. Tak więc, jeśli masz dostępne Arduino Nano, możesz rozważyć jego użycie. Na thingiverse można znaleźć kilka przypadków, w których można to wszystko połączyć. Wypróbowałem jeden, ale jego marginesy do drukowania były zbyt małe, co skończyło się bezużytecznym drukiem 3D.

Nadal pracuję nad dobrą sprawą.

Aby korzystać z płytki RC-522, musisz dodać bibliotekę do edytora Arduino. Niestety nie jest to biblioteka zarządzana przez edytor Arduino, więc będziesz musiał dodać do niej „starą szkołę” metody pobierania i kopiowania do folderu bibliotek. Nie zapomnij zrestartować edytora Arduino, aby był dostępny.

Bibliotekę można znaleźć pod adresem

Do tej pory masz gotowy edytor. Czas wgrać skrypt do Arduino. Jeśli przeanalizujesz kod, odkryjesz, że istnieje interwał 5000 milisekund, w którym unika się wielokrotnego drukowania tego samego klucza. Możesz zmieniać ten interwał, ale jeśli ustawisz go zbyt mały, ten sam klucz będzie wyświetlany wiele razy jeden po drugim.

Czas więc sprawdzić, czy ta część działa. Stosowane przeze mnie RFID to standardowe breloki MiFare 1Kb o częstotliwości 13,56 MHz, które są również dostępne bardzo tanio.

Otwórz monitor szeregowy edytora Arduino i obserwuj, jak klawisze pojawiają się, gdy przenosisz je do modułu RC-522.

Krok 3: Interfejs Windows napisany w C#

Interfejs Windows napisany w C#
Interfejs Windows napisany w C#

Znajdziesz dołączony folder skompresowany zawierający projekt C#. Pobierz i rozpakuj. Kod został napisany w Visual Studio 2017 z myślą o. Net framework 4.6.1. Każdy zaktualizowany komputer powinien to mieć i być w stanie go wykonać. Nie musisz koniecznie instalować programu Visual Studio. Kod jest przeznaczony dla tych, którzy chcą go zmodyfikować lub zbadać. Bez modyfikacji programu czas trwania biegu jest ustawiony na 1 godzinę i 30 minut. Normalny czas okrążenia jest ustawiony na 50 sekund, co dotyczy toru o długości 400 metrów.

Plik wykonywalny można znaleźć w folderze Debug, który znajduje się w folderze SponsorRun\SponsorRun\bin.

W tym folderze znajdują się również pliki tekstowe używane w tym projekcie do przechowywania danych.

Pliki tekstowe to:

  • rfidKeys.txt: zawierający klucze dla różnych zespołów. Pierwszy klucz jest dla pierwszego zespołu i tak dalej. Możesz usunąć ten plik i dodać własne klucze (patrz poniżej, jak działa program)
  • zespoły.txt: zawierający nazwy różnych zespołów. Imię oznacza pierwszą drużynę i tak dalej. Edytuj ten plik za pomocą zwykłego edytora zwykłego tekstu (może to zrobić Notatnik).
  • results.txt: plik w formacie CSV zawierający wyniki różnych okrążeń zespołów (może być nieobecny, gdy do tej pory nie zarejestrowano żadnych okrążeń)
  • oszustwo.txt: plik w formacie CSV zawierający zespoły próbujące oszukiwać (może być nieobecny, gdy nie wykryto jeszcze oszustwa)

Sposób działania programu jest następujący:

  • Podczas inicjalizacji program wykrywa różne porty COM na twoim komputerze. Aby komunikacja była możliwa, należy wybrać port COM przypisany do Arduino. Domyślnie prędkość COM powinna wynosić 9600 bps, co odpowiada prędkości ustawionej w kodzie Arduino.
  • Kliknij przycisk „Rozpocznij słuchanie”, aby aktywować komunikację
  • Od tego momentu możesz wybrać jedną z dwóch funkcji:

    • Czytaj klucze RFID: to dodaje nowe klucze do pliku rfidKeys.txt
    • Zarejestruj okrążenie (opcja domyślna): rejestruje nowe okrążenie w pliku results.txt. Za każdym razem, gdy prawidłowy klucz zostanie odczytany, pojawi się komunikat i zabrzmi sygnał dźwiękowy potwierdzający rejestrację. Do pliku results.txt zostanie dodana linia. W przypadku próby oszukania wiadomość pojawi się w osobnym polu tekstowym, zabrzmi kolejny sygnał dźwiękowy, a wynik zostanie zapisany w pliku fraude.txt. W takim przypadku czas okrążenia zostanie ustawiony na moment wykrycia oszustwa.

Krok 4: Możliwe ulepszenia

Stworzyłem ten projekt do konkretnej sytuacji w mojej szkole. Jest oczywiste, że niektóre z użytych parametrów mogą nie pasować do Twojego projektu. Na razie będziesz musiał dostosować parametry w kodzie C# i ponownie skompilować program, co wymaga instalacji Visual Studio (mocna instalacja 3,5 GB). Jeśli jest rozsądna ilość odpowiedzi, mogę rozważyć odczytanie tych parametrów z zewnętrznego pliku.

Obudowy 3D, które znalazłem dla projektu Arduino, nie nadają się do użytku. Zacząłem od jednego, ale miałem pewne niepowodzenia, dlatego jeszcze ich nie dodałem. Każdy, kto chce się nim podzielić, może się ze mną skontaktować, więc mogę odnieść się do twojej pracy w tej instrukcji.

Krok 5: Daj kciuki w górę !

Mam nadzieję, że możesz skorzystać z tego projektu i czekam na wiadomość od Ciebie.