Мазмұны:
- 1 -қадам: Қажетті материалдар тізімі
- 2-қадам: Arduino + RC-522 дайындау
- 3 -қадам: Windows интерфейсі C# тілінде жазылған
- 4 -қадам: Мүмкін болатын жақсартулар
- 5 -қадам: Бас бармақты көтеріңіз !
Бейне: C# және Arduino + RC-522 көмегімен демеушілік жүгіру: 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Демеушілік жүгіру өте жиі кездеседі. Алайда, оларды басқару әрқашан оңай жұмыс емес, ол әр команданың қанша айналымды тиімді жүргізетінін тіркеуді қамтиды. Мен әр команданы сәйкестендіру үшін токен ретінде RFID -ті қолдануды шештім. Егер сіз RC-522 RFID оқу құралы мен arduino картасын арзан сатып ала алатын болсаңыз, бұл жүйені оңай құруға мүмкіндік береді.
1 -қадам: Қажетті материалдар тізімі
- Arduino тақтасы: кез келген тақта жасайды. Мен Arduino Nano өлшемін қолданамын
- Arduino даму ортасы
- RC-522: жергілікті немесе шетелде сатып алуға/тапсырыс беруге болады
- MiFare 13.56 МГц тегтері. Әдетте кейбір үлгілер сіздің RC-522 тақтасымен бірге келуі мүмкін. Белгінің түрі маңызды емес. Тек олардың дұрыс жиілігін тексеріңіз.
- Егер сіз кодты өзгерткіңіз келсе, Windows жұмыс істейтін және Visual Studio орнатылған компьютер.
2-қадам: Arduino + RC-522 дайындау
Жоғарыдағы суретте RC-522 модулінің Arduino-ға қосылуы көрсетілген. Кез келген Arduino жасайды. Егер сізде Arduino Nano қол жетімді болса, оны пайдалану туралы ойлануға болады. Әр жерде сіз боксқа арналған бірнеше жағдайды таба аласыз. Мен біреуін сынап көрдім, бірақ оны басып шығаруға арналған шеттер тым кішкентай болды, нәтижесінде 3D-басып шығаруға жарамсыз болды.
Мен бұл үшін жақсы істі әлі де істеп жатырмын.
RC-522 тақтасын пайдалану үшін сізге Arduino редакторына кітапхана қосу керек. Өкінішке орай, бұл Arduino редакторы басқаратын кітапхана емес, сондықтан оны жүктеу мен кітапханалар қалтасына көшірудің «ескі мектеп» әдісін қосу қажет болады. Қол жетімді ету үшін Arduino редакторын қайта қосуды ұмытпаңыз.
Кітапхананы https://github.com/miguelbalboa/rfid сайтынан табуға болады.
Сізде редактор дайын. Сценарийді Arduino -ға жүктеу уақыты келді. Егер сіз кодты талдайтын болсаңыз, онда 5000 миллисекундтық интервал бар екенін көресіз, онда сол кілтті бірнеше рет басып шығаруға жол берілмейді. Сіз бұл аралықты өзгерте аласыз, бірақ егер сіз оны тым кіші етіп қойсаңыз, сол кілт бірінен кейін бірнеше рет көрсетіледі.
Сонымен, енді бұл бөліктің жұмыс істейтінін тексеретін уақыт келді. Мен қолданатын RFID - бұл 13,56 МГц стандартты MiFare 1Kb фобтары, олар өте арзан.
Arduino редакторының сериялық мониторын ашып, RC-522 модуліне әкелген кезде кілттердің пайда болуын бақылаңыз.
3 -қадам: Windows интерфейсі C# тілінде жазылған
Сіз C# жобасы бар қысылған қалтаны таба аласыз. Жүктеп алып, орамынан шығарыңыз. Код Visual Studio 2017 мақсатты бағдарламасында жазылған. Net framework 4.6.1. Кез келген жаңартылған компьютерде бұл болуы керек және оны орындай алады. Сізге Visual Studio бағдарламасын орнатудың қажеті жоқ. Код оны өзгерткісі немесе тексергісі келетіндерге арналған. Бағдарламаға өзгертулер енгізілмесе, жүгіру ұзақтығы 1 сағат 30 минутқа орнатылады. Қалыпты айналым уақыты 50 секундқа орнатылады, бұл 400 метрлік жолға арналған.
Орындалатын файлды SponsorRun / SponsorRun / bin қалтасында орналасқан Отладка қалтасынан табуға болады.
Бұл қалтада бұл жобада деректерді сақтау үшін қолданылатын мәтіндік файлдар да бар.
Мәтіндік файлдар - бұл:
- rfidKeys.txt: әр түрлі командалардың кілттерін қамтиды. Бірінші кілт бірінші командаға арналған және т.б. Сіз бұл файлды алып тастап, өз кілттеріңізді қоса аласыз (төменде бағдарламаның қалай жұмыс істейтінін қараңыз)
- teams.txt: әр түрлі командалардың аттарын қамтиды. Аты бірінші командаға арналған және т.б. Бұл файлды қарапайым мәтіндік редактормен өңдеңіз (блокнот жасай алады).
- results.txt: командалардың әр айналымының нәтижелерін қамтитын CSV форматындағы файл (осы уақытқа дейін ешқандай айналым тіркелмеген кезде болмауы мүмкін)
- fraude.txt: алдауға тырысатын командалары бар CSV форматындағы файл (әлі ешқандай алдау анықталмаған кезде болмауы мүмкін)
Бағдарламаның жұмыс тәртібі келесідей:
- Инициализация кезінде бағдарлама компьютердегі әр түрлі COM портын анықтайды. Байланысты қамтамасыз ету үшін Arduino -ға тағайындалған COM портын таңдау керек. Әдепкі бойынша, COM жылдамдығы 9600 bps болуы керек, бұл Arduino кодында орнатылған жылдамдыққа сәйкес келеді.
- Байланысты белсендіру үшін «Тыңдауды бастау» түймесін басыңыз
-
Осы сәттен бастап сіз екі функцияның бірін таңдай аласыз:
- RFID кілттерін оқу: бұл rfidKeys.txt файлына жаңа кілттерді қосады
- Тіркеу аймағы (әдепкі опция): results.txt файлына жаңа айналымды тіркейді. Жарамды кілт оқылған сайын, хабарлама пайда болады және тіркеуді растау үшін дыбыстық сигнал беріледі. Results.txt файлына жол қосылады. Егер алдау әрекеті орын алса, хабарлама жеке мәтіндік жәшікте пайда болады, басқа дыбыстық сигнал естіледі және нәтиже fraude.txt -ке жазылады. Бұл жағдайда айналымның уақыты алдау анықталған уақытқа дейін орнатылады.
4 -қадам: Мүмкін болатын жақсартулар
Мен бұл жобаны өз мектебімдегі нақты жағдай үшін жасадым. Әрине, кейбір параметрлер сіздің жобаңызға сәйкес келмеуі мүмкін. Әзірге сіз C# кодындағы параметрлерді реттеп, бағдарламаны қайта құрастыруыңыз керек, бұл Visual Studio бағдарламасын орнатуды қажет етеді (3,5 Гбайт көлемді қондырғы). Егер жауаптың ақылға қонымды көлемі болса, мен бұл файлдарды сыртқы файлдан оқуды қарастыра аламын.
Мен Arduino жобасына арналған 3D-корпустарды қолдануға болмайды. Мен біреуін бастадым, бірақ кейбір сәтсіздіктер болды, себебі мен оларды әлі қосқан жоқпын. Бөліскісі келетін кез келген адам маған хабарласа алады, сондықтан мен сіздің нұсқаулығыңыздағы жұмысыңызға сілтеме жасай аламын.
5 -қадам: Бас бармақты көтеріңіз !
Сіз бұл жобаны қолдана аласыз деп үміттенемін және сізден жауап күтемін.