Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'RFID'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino i ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - roboty
    • Projekty - DIY
    • Projekty - DIY (początkujący)
    • Projekty - w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Zawody/Konkursy/Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie
    • Kosz

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Znaleziono 6 wyników

  1. Witam, ostatnio z racji na nadmiar wolnego czasu postanowiłem zrobić coś dla odmiany przydatnego, a jako że jakiś czas temu zainteresowało mnie ASG postanowiłem pójść w tym kierunku i początkowo pomysł padł na zrobienie atrapy bomby, która oprócz klasycznego trybu podkładania miała służyć za punkt do przejmowania, ale finalnie skupiłem się tylko na punkcie do przejmowania. Jako że nie jest to jeszcze ostateczna wersja projektu to nie opiszę tutaj jak działa kod, ale pokaże jak takie coś zmontować. Wszelkie linki i pliki będą znajdować się na końcu. Sposób działania: Przy podłączeni całości do prądu zapalają się wszystkie diody na czerwono i jest to czas na przybliżenie kart drużyny czerwonej, gdy już się to zrobi należy przyłożyć główny tag po czym sytuacja się powtarza, ale dla drużyny niebieskiej. po ponownym zeskanowaniu głównego taga zaczyna się właściwy tryb, który działa tak że gdy przykłada się kartę danej drużyny zapalają się po kolej diody, w przypadku gdy przyłożona zostanie karta przeciwnej drużyny diody zaczną gasnąć do momentu gdy zgasną wszystkie, i wtedy ponownie zaczną się zapalać, ale już w kolorze drużyny do której należy karta gdy jakiejś z drużyn uda się zapalić wszystkie diody, odpala się prosta "Animacja" na końcu której diody zapalają się na kolor wygranego do momentu zresetowania całości głównym tagiem. Instrukcja wykonania: Na początku musimy połączyć wszystkie komponenty według poniższego schematu: Taśma led: 5V <-> 5V GND <-> Gnd Din <-> D8 RC522: 3,3V <-> 3,3V RST <-> D9 GND <-> Gnd IRQ <-> Nie podłączony MISO <-> D12 MOSI <-> D11 SCK <-> D13 SDA <-> D10 Po podłączeniu wszystkiego musimy jeszcze zainstalować Arduino IDE z tej strony oraz zainstalować dwie biblioteki załączone na dole artykułu w sposób pokazany tutaj. Gdy mamy zainstalowane środowisko ide z bibliotekami, należy pobrać plik kod załączony na dole, po rozpakowaniu go wchodzimy w plik cardNumer.ino i wgrywamy go na płytkę, następnie klikając ctrl + shift + m uruchamiamy monitor szeregowy, gdy to już zrobimy przykładamy kartę bądź tag który ma być tagiem głównym do czytnika oraz zapamiętujemy numer wyświetlony na monitorze teraz należy uruchomić drugi program i skupić się na poniższym fragmencie // Te wartości musisz dostosować do włąsnych komponentów numPix to liczba diod, pTime to czas potrzebny do przejęcia punktu,master to numer karty głównej int numPix = 12; int pTime = 15; int master = 820; W miejsce liczby 12 wpisujemy liczbę diod która została podłączona do Arduino, w miejsce 15 wpisujemy czas potrzebny do przejęcia w sekundach, a w miejsce 820 wpisujemy numer głównego tagu który otrzymaliśmy wcześniej w monitorze. Teraz wystarczy wszystko wgrać na płytkę i powinno wszystko działać zasilane z usb. Na koniec wypadało by wszystko umieścić w obudowie. Potrzebne komponenty: Dowolne Arduino NANO moduł Rfid RC522 taśma lub pierścień ledów rgb adresowanych ja korzystam z tych Pierścień 8xLed przewody żeńsko - żeńskie przynajmniej trzy karty RFID Inne potrzebne rzeczy: Arduino ide z zainstalowanymi bibliotekami Adifrut neopixel i rfid lutownica Kod: kod.rar Biblioteki: Adafruit_NeoPixel.zip RFID.zip
  2. Każdy zapewne ma rzeczy które chce mieć schowane i zabezpieczone przed ciekawskimi osobami stąd też zrodził się u mnie pomysł na zaadoptowania do tego celu drewnianej skrzynki która stała u mnie od dłuższego czasu zawalając tylko przestrzeń. Przede wszystkim zależało mi na tym by z zewnątrz nie było widać żadnych modyfikacji. Poza skrzynką wykorzystałem arduino nano, shielda do nano, serwomechanizmu no i oczywiście modułu RFID, jako zasilania użyłem akumulatora Li-Pol. MECHANIKA Co do samej skrzynki to ma ona wymiary: 9,5 cm szerokości, 13 cm długości i 8 cm wysokości. Grubość w każdym miejscu wynosi 8 mm. Z przodu jest zamykana na prosty bardziej ozdobny niż przydatny zamek. Całe zamknięcie jest oparte na serwomechanizmie który podobnie jak wszystko inne jest przyklejony . Haczyk przykręcony do serwomechanizmu blokuje się w razie nieautoryzowanego otwarcia zaczepia o kawałek wystającej deski. ELEKTRONIKA Wszystkie wymienione wyżej elementy elektroniczne połączyłem za pomocą przewodów połączeniowych jedynie złącze od akumulatora jest przylutowane do shield dla arduino nano. KOD #include <SPI.h> #include <MFRC522.h> #include<Servo.h> #define SS_PIN 10 #define RST_PIN 9 MFRC522 rfid(SS_PIN, RST_PIN); const byte poprawna_karta[] = {0x47,0x35,0x8E,0x7A}; Servo myservo; void setup() { Serial.begin(9600); SPI.begin(); rfid.PCD_Init(); myservo.attach(5); myservo.write(0); delay(2000); myservo.write(70); } void loop() { if ( ! rfid.PICC_IsNewCardPresent()) return; if ( ! rfid.PICC_ReadCardSerial()) return; if (rfid.uid.uidByte[0] == poprawna_karta[0] || rfid.uid.uidByte[1] == poprawna_karta[1] || rfid.uid.uidByte[2] == poprawna_karta[2] || rfid.uid.uidByte[3] == poprawna_karta[3] ) { myservo.write(0); delay(2000); myservo.write(70); }else{ myservo.write(70); } rfid.PICC_HaltA(); rfid.PCD_StopCrypto1(); } FILM DZIAŁANIE Działanie kodu polega na odszukaniu karty(22 linijka), odczytaniu(24 linijka), porównaniu odczytanego z karty kodu z tablicą poprawna_karta[] i otwarcie w przypadku dobrej karty lub dalsze zamknięcie w przypadku złej. Wbrew pozorom zawartość skrzynki jest bardzo bezpieczna z czterech powodów, po pierwsze nikt nie zwraca uwagi na starą skrzynkę leżącą w tym samym miejscu od kilku lat(nie tak jak w przypadku nowej zupełnie skrzynki), po drugie nie widać śladów modyfikacji zwiększającej bezpieczeństwo(tak jak w przypadku tradycyjnego zamka) a także karta RFID(choć w moim przypadku bryloczek) można łatwo schować no i w końcu trudność otwarcia zamka nie posiadając karty. Jedyną wadą jest to że można lekko odchylić wieko jednak to kwestia spasowania haczyka.
  3. Cześć. Pracuję nad projektem automatycznych drzwiczek dla kota i psa. Mechanizm mam prawie gotowy, brakuje mi w nim tylko wyzwalacza. Myślę nad zastosowaniem czytnika RFID. Znalazłem 2, które może się nadadzą 1. Bez anteny https://botland.com.pl/pl/moduly-i-tagi-rfid/11153-modul-rfid-sm130-mifare-1356mhz.html 2. Z anteną https://botland.com.pl/pl/grove-moduly-do-komunikacji/4417-grove-czytnik-rfid-125khz-z-antena.html Potrzebuję tego, by czytnik wykrywał czytniki z odległości ok 50 cm. Nie mam pojęcia, czy czytnik nr 2 nada się do tego oraz jaką antenę dobrać do czytnika nr 1(mógłby ktoś dać linka do kupna). Być może obydwie moje propozycje nie nadają się do tego. Dlatego podrzućcie swoje propozycje i uwagi. Dziękuję z góry
  4. Cześć, Chciałbym zająć się projektem planszy szachowej, która zapisywałaby przebieg partii w formacie PGN na komputerze. Zastanawiałem się nad sposobem rozróżniania pionów na planszy i wpadłem na pomysł, żeby skorzystać z RFID, jednak mój pomysł okazuje się nieco kosztowny biorąc pod uwagę fakt, że musiałbym użyć aż 64 czytników. Czy czytniki i karty w dosyć bliskiej odległosci nie będą znacząco na siebie wpływały? Nie jestem mocno obeznany w temacie, więc może znacie lepsze sposoby na identyfikację pojedyńczych pionów? Czy arduino w takim projekcie to dobry pomysł czy może jednak przerzucić się na raspberry?
  5. Witam, Zainspirował mnie pomysł ze strony: https://create.arduino.cc/projecthub/kksjunior/windows-pc-lock-unlock-using-rfid-5021a6?ref=tag&ref_id=rfid&offset=0 aczkolwiek zmieniłbym parę rzeczy. Części do projektu: -Arduino Pro Micro -Moduł RFID RC522 -Dioda LED zielona -Dioda LED czerwona -2 Rezystory 220Ohm -Rezystor 67Ohm -Rezystor 270Ohm -Buzzer (opcjonalne) -Przełącznik na 3 piny (opcjonalne) Najpierw zaprojektowałem sam układ, który wygląda o tak: Gdy wszystko było gotowe zabrałem się do podłączania do breadboard'a testującego, ponieważ zawsze dobrze jest sprawdzić obwód zanim się go przylutuje na stałe. Chciałem jednak wziąć ten projekt o krok dalej, i zaprojektowałem płytkę PCB, i zamówiłem ją na https://jlcpcb.com : Pojawił się jednak mały problem, ponieważ mam tylko arduino nano i uno, ale potrzeba mikroprocesora atmega32u4, który można znaleźć tylko w arduino MEGA i pro Micro. Wybrałem Pro Micro, ponieważ chcę, aby ten obwód był jak najmniejszy. Po podłączeniu wszystkiego, działało to bez problemu. Dla zainteresowanych, oto kod: pc.rar Teraz tylko czekam, aż moja PCB przyjedzie.
  6. Wstęp: Na wstępie chciałbym zaznaczyć, iż jest to mój pierwszy projekt, w którym miałem możliwość wykorzystać software do projektu własnej płytki PCB i skonstruować coś co nie bazuje na płytce Arduino i nie jest plątaniną przewodów na płytce stykowej. Proszę o wyrozumiałość, a zarazem o konstruktywną krytykę i cenne wskazówki, które mogą być przydatne przy tworzeniu kolejnych projektów. Wykonany prze ze mnie projekt nie jest innowacyjny, ale dzięki niemu mogłem spróbować swoich przede wszystkim w wytrawieniu pierwszej płytki PCB. Opis: Wynikiem końcowym projektu jest niewielkie pudełko/sejf do przechowywania drobnych rzeczy, które można otworzyć po wpisaniu hasła, bądź przyłożeniu karty. Sercem układu jest mikrokontroler, który można spotkać w Arduino UNO R3. Ze względu na prostotę środowiska ArduinoIDE zdecydowałem się na implementację kodu właśnie w tym programie. W związku z tym wybór padł na mikrokontroler ATmega328P z wgranym bootloaderem dla Adruino. Takie rozwiązanie pozwoliło mi na wykorzystanie gotowych bibliotek do obsługi modułu RFID i klawiatury numerycznej. Zdecydowałem się na brak wewnętrznego źródła zasilania. Został wyprowadzony przewód USB, dzięki któremu urządzenie można podpiąć pod dowolne wyjście USB (powerbank, port USB w komputerze, ładowarka sieciowa). Urządzenie jest więc zasilane napięciem 5V DC. Wykorzystane elementy: Na projekt składają się wymienione wcześniej elementy, tj.: ATmega328P moduł RFID klawiatura numeryczna 4x3 konwerter poziomów logicznych oraz: stabilizator napięcia LF33CV rezonator kwarcowy 16MHz serwomechanizm rezystory 22Ohm oraz 10kOhm kondensatory 100nF diody LED (czerwona i zielona) + oprawki przewód USB + odgiętka na przewód przewody połączeniowe drewniane pudełko (brak linku, elementy znaleziony w piwnicy w trakcie porządków) dystans nylonowy Budowa: Po przetestowaniu działania urządzenia na płytce prototypowej znalazłem odpowiednie pudełko, w którym zmieści się układ i będzie stosunkowo estetycznie wszystko rozmieszczone. Wyciąłem miejsce na klawiaturę, miejsce na blokadę serwomechanizmu oraz wywierciłem otwory na oprawki na diody. W kolejnym kroku pokryłem pudełko matową farbą i wnętrze wypełniłem materiałem zbliżonym do okleiny na głośnikach i tubach basowych. Po wykonaniu płytki przystąpiłem do lutowania elementów. Klawiatura, moduł RFID, diody, serwomechanizm oraz złącze zasilania zostały połączone z płytką poprzez przewody połączeniowe z końcówką żeńską. Płytka PCB została umieszczona w górnej części pudełka na nylonowych dystansach. Pod płytką znalazło się miejsce na moduł RFID oraz klawiaturę i diody. Na koniec wyciąłem odpowiedni fragment deseczki balsowej z miejscem na serwomechanizm, aby ukryć przewody połączeniowe. Deseczkę balsową okleiłem tym samym materiałem co wnętrze pudełka. Oprogramowanie: Kod programu został napisany w środowisku ArduinoIDE z wykorzystaniem następujących bibliotek: Servo.h Keypad.h Password.h SPI.h MFRC522.h Kod programu: #include <Servo.h> #include <Keypad.h> #include <Password.h> #include <SPI.h> #include <MFRC522.h> //Servo Servo servo; //Password Password password = Password("1234"); //RFID const byte UID1[] = {0x70, 0xC3, 0xF9, 0x65}; const byte UID2[] = {0x35, 0xDC, 0xD7, 0x65}; const byte ROWS = 4; const byte COLS = 3; char keys[ROWS][COLS] = { {'1', '2', '3'}, {'4', '5', '6'}, {'7', '8', '9'}, {'#', '0', '*'} }; byte rowPins[ROWS] = {4, 3, 2, 0}; byte colPins[COLS] = {8, 7, 6}; Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); MFRC522 rfid(10, 5); MFRC522::MIFARE_Key key; void setup() { Serial.begin(9600); SPI.begin(); rfid.PCD_Init(); pinMode(A0,OUTPUT); pinMode(A1,OUTPUT); servo.attach(9); servo.write(0); keypad.addEventListener(keypadEvent); digitalWrite(A0,HIGH); digitalWrite(A1,LOW); } void loop() { keypad.getKey(); if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial()) { if (rfid.uid.uidByte[0] == UID1[0] && rfid.uid.uidByte[1] == UID1[1] && rfid.uid.uidByte[2] == UID1[2] && rfid.uid.uidByte[3] == UID1[3]) { servo.write(90); digitalWrite(A0, LOW); digitalWrite(A1, HIGH); } else if (rfid.uid.uidByte[0] == UID2[0] && rfid.uid.uidByte[1] == UID2[1] && rfid.uid.uidByte[2] == UID2[2] && rfid.uid.uidByte[3] == UID2[3]) { servo.write(90); digitalWrite(A0, LOW); digitalWrite(A1, HIGH); } } } void keypadEvent(KeypadEvent eKey) { switch (keypad.getState()) { case PRESSED: Serial.println(eKey); switch (eKey) { case '#': checkPassword(); delay(1); break; case '*': closeBox(); delay(1); break; default: password.append(eKey); delay(1); } } } void checkPassword() { if (password.evaluate()) { servo.write(90); digitalWrite(A0, LOW); digitalWrite(A1, HIGH); } else { servo.write(0); digitalWrite(A0, HIGH); digitalWrite(A1, LOW); } } void closeBox() { password.reset(); servo.write(0); digitalWrite(A0, HIGH); digitalWrite(A1, LOW); } Działanie programu: Aby odblokować serwomechanizm i otworzyć pudełko należy wpisać odpowiedni kod zdefiniowany w programie i zatwierdzić znakiem "*" lub przyłożyć odpowiednią kartę (zdefiniowane są dwie karty). Po odblokowaniu gaśnie dioda czerwona, zapala się dioda czerwona i serwomechanizm zmienia położenie. Aby zamknąć pudełko należy wcisnąć przycisk "#". Podsumowanie: Projekt uważam za prawie zakończony. Po złożeniu całego urządzenia zwróciłem uwagę na brak możliwości zmiany kodu oraz dodania nowej karty (możliwe jedynie poprzez przeprogramowanie ATmegi). Projekt płytki zapewne pozostawia sporo do życzenia, dlatego liczę na cenne wskazówki aby nie popełniać błędów w przyszłości. Za wadę uważam też brak dodatkowej filtracji zasilania (stwierdziłem, że skoro biorę zasilanie z USB to nie trzeba nic dodawać). Zaletą (albo i wadą ) urządzenia są małe gabaryty. Ja wykorzystuje je do przechowywania zdjęć wykonanych Instaxem. Załączniki: W projekcie załączam kod programu, wykorzystane biblioteki i projekt Eagle do płytki PCB. Zdjęcia: safe_box_eagle.zip safe_box_software.zip
×
×
  • Utwórz nowe...