Სარჩევი:
- ნაბიჯი 1: საჭირო მასალების ჩამონათვალი
- ნაბიჯი 2: არდუინოს მომზადება + RC-522
- ნაბიჯი 3: Windows ინტერფეისი დაწერილი C#
- ნაბიჯი 4: შესაძლო გაუმჯობესება
- ნაბიჯი 5: დაუშვით ცერა თითი !
ვიდეო: სპონსორი გაუშვით C# და Arduino + RC-522: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:18
სპონსორების გარბენები საკმაოდ ხშირია. თუმცა, მათი მართვა ყოველთვის არ არის ადვილი ამოცანა. იგი გულისხმობს თითოეული გუნდის რამდენი წრის დარეგისტრირებას ეფექტურად. მე გადავწყვიტე გამოვიყენო RFID ის, როგორც ნიშანი თითოეული გუნდის იდენტიფიკაციისთვის. იმ ფაქტთან ერთად, რომ თქვენ შეგიძლიათ აიღოთ RC-522 RFID წამკითხველი ბარათი და arduino საკმაოდ იაფად, ეს შესაძლებელს ხდის ამ სისტემის აგებას საკმაოდ მარტივად.
ნაბიჯი 1: საჭირო მასალების ჩამონათვალი
- Arduino დაფა: ნებისმიერი დაფა გააკეთებს. მე ვიყენებ არდუინო ნანოს მისი ზომისთვის
- არდუინოს განვითარების გარემო
- RC-522: შეგიძლიათ შეიძინოთ/შეუკვეთოთ ადგილობრივად ან საზღვარგარეთ
- MiFare 13.56 MHz ტეგები. ჩვეულებრივ, ზოგიერთი ნიმუში შეიძლება მოყვეს თქვენს RC-522 დაფას. ტეგის ტიპს არ აქვს მნიშვნელობა. უბრალოდ შეამოწმეთ, რომ ისინი სწორი სიხშირეა.
- კომპიუტერი, რომელსაც აქვს Windows და აქვს Visual Studio დაინსტალირებული, თუ გსურთ კოდის შეცვლა.
ნაბიჯი 2: არდუინოს მომზადება + RC-522
ზემოთ მოყვანილი სურათი გვიჩვენებს RC-522 მოდულის გაყვანილობას არდუინოსთან. ნებისმიერი არდუინო გააკეთებს. ასე რომ, თუ თქვენ გაქვთ Arduino Nano ხელმისაწვდომი, შეგიძლიათ განიხილოთ მისი გამოყენება. Thingiverse– ზე შეგიძლიათ იპოვოთ შემთხვევები, რომ ეს ყველაფერი კრივი იყოს. მე ვცადე ერთი, მაგრამ მისი დაბეჭდვის ზღვარი ძალიან მცირე იყო და დასრულდა გამოუსადეგარი 3D ბეჭდვით.
მე ჯერ კიდევ ვმუშაობ ამის კარგ საქმეზე.
იმისათვის, რომ გამოიყენოთ თქვენი RC-522 დაფა, თქვენ უნდა დაამატოთ ბიბლიოთეკა Arduino რედაქტორს. სამწუხაროდ, ეს არ არის ბიბლიოთეკა, რომელსაც მართავს არდუინოს რედაქტორი, ასე რომ თქვენ მოგიწევთ მისი დამატება "ძველი სკოლის" მეთოდით გადმოტვირთვისა და ბიბლიოთეკების საქაღალდეში კოპირებისთვის. ნუ დაგავიწყდებათ, რომ გადატვირთოთ Arduino რედაქტორი, რათა ის ხელმისაწვდომი იყოს.
ბიბლიოთეკის ნახვა შეგიძლიათ
ამ დროისთვის, თქვენ გაქვთ მზად რედაქტორი. დროა ატვირთოთ სკრიპტი თქვენს არდუინოში. თუ გაანალიზებთ კოდს, აღმოაჩენთ, რომ არის 5000 მილიწამიანი ინტერვალი, რომელშიც თავს არიდებთ ერთი და იმავე გასაღების მრავალჯერ დაბეჭდვას. თქვენ შეგიძლიათ შეცვალოთ ეს ინტერვალი, მაგრამ თუ ძალიან მცირედ დააყენებთ, ერთი და იგივე გასაღები მრავალჯერ იქნება ნაჩვენები ერთმანეთის შემდეგ.
ასე რომ, ახლა დროა შეამოწმოთ მუშაობს თუ არა ეს ნაწილი. RFID– ს მე ვიყენებ სტანდარტული MiFare 1Kb fobs 13.56 MHz– ზე, რომლებიც ასევე ძალიან იაფად არის ხელმისაწვდომი.
გახსენით Arduino– ს რედაქტორის სერიული მონიტორი და უყურეთ გასაღებების გამოჩენას RC-522 მოდულში მიტანისას.
ნაბიჯი 3: Windows ინტერფეისი დაწერილი C#
თქვენ ნახავთ შეკუმშულ საქაღალდეს, რომელიც შეიცავს C# პროექტს. გადმოწერეთ და გახსენით. კოდი დაიწერა Visual Studio 2017 სამიზნეში. წმინდა ჩარჩო 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 პორტი, რომელიც მინიჭებულია თქვენს Arduino– ზე, რათა შესაძლებელი გახდეს კომუნიკაცია. სტანდარტულად, COM სიჩქარე უნდა იყოს 9600 bps, რაც შეესაბამება Arduino კოდში მითითებულ სიჩქარეს.
- დააწკაპუნეთ ღილაკზე "მოსმენის დაწყება" კომუნიკაციის გასააქტიურებლად
-
ამ მომენტიდან თქვენ შეგიძლიათ აირჩიოთ ორ ფუნქციას შორის:
- წაიკითხეთ RFID გასაღებები: ეს დაამატებს ახალ გასაღებებს rfidKeys.txt ფაილში
- რეგისტრაციის წრე (ნაგულისხმევი ვარიანტი): რეგისტრირდება ახალი წრე results.txt ფაილში. ყოველ ჯერზე, როდესაც მოქმედი გასაღები იკითხება, გამოჩნდება შეტყობინება და გაისმის სიგნალის სიგნალი რეგისტრაციის დასადასტურებლად. Results.txt დაემატება ხაზი. მოტყუების მცდელობის შემთხვევაში, შეტყობინება გამოჩნდება ცალკე ტექსტურ ყუთში, გაისმის სხვა სიგნალი და შედეგი ჩაიწერება fraude.txt. ამ შემთხვევაში, წრის დრო დადგება იმ მომენტში, როდესაც გამოვლენილია მოტყუება.
ნაბიჯი 4: შესაძლო გაუმჯობესება
მე შევქმენი ეს პროექტი ჩემს სკოლაში არსებული კონკრეტული სიტუაციისთვის. აშკარაა, რომ გამოყენებული ზოგიერთი პარამეტრი შეიძლება არ იყოს შესაფერისი თქვენი პროექტისათვის. ჯერჯერობით, თქვენ მოგიწევთ პარამეტრების მორგება C# კოდში და პროგრამის ხელახლა შედგენა, რაც საჭიროებს Visual Studio– ს ინსტალაციას (მძიმე 3.5 GB ინსტალაცია). თუ არსებობს გონივრული პასუხი, შემიძლია განვიხილო ეს პარამეტრები გარე ფაილიდან.
3D შემთხვევები, რომლებიც აღმოვაჩინე Arduino– ს პროექტის საცხოვრებლად, გამოსაყენებელი არ არის. მე დავიწყე ერთზე, მაგრამ მქონდა გარკვეული ჩავარდნები, რაც არის მიზეზი, მე ჯერ არ დავამატე ისინი. ვისაც სურს გააზიაროს ერთი შემიძლია დამიკავშირდეს, ასე რომ მე შემიძლია მივმართო თქვენს მუშაობას წინამდებარე ინსტრუქციაში.
ნაბიჯი 5: დაუშვით ცერა თითი !
ვიმედოვნებ, რომ თქვენ შეძლებთ გამოიყენოთ ეს პროექტი და მოუთმენლად ველი თქვენგან მოსმენას.