Einfacher batteriebetriebener RFID-Scanner (MiFare, MFRC522, Oled, Lipo, TP4056) - Gunook
Einfacher batteriebetriebener RFID-Scanner (MiFare, MFRC522, Oled, Lipo, TP4056) - Gunook
Anonim
Image
Image

In diesem anweisbaren zeige ich Ihnen, wie ich einen einfachen RFID-UID-Leser gemacht habe, der die UID einer Mifare-RFID-Karte liest.

Das Programm ist recht einfach und auf einem Steckbrett war der Reader schnell gemacht. Dann habe ich alles auf ein Stück Perfboard gelötet und ein Gehäuse dafür entworfen.

Es hat ein eingebautes LiPo-Ladegerät.

Lieferungen

Ich habe die Komponenten von Aliexpress gekauft:

  • Oled-Bildschirm (SPI)
  • MFRC522 RFID-Modul
  • TP4056 Lade-IC
  • Arduino pro mini 3.3V 328P
  • LiPo-Akku

Schritt 1: Hardware

Hardware
Hardware
Hardware
Hardware

Das gesamte Lesegerät wird von einem 3,7 V LiPo-Akku betrieben. Seine Spannung wird in den RAW-Pin des Arduino eingespeist und der On-Board-Spannungsregler des Arduino Pro wandelt die Spannung auf 3,3 V für den Arduino und den VCC-Pin des Arduino um. Der Oled-Bildschirm und das RFID-Modul sind mit dem VCC-Pin des Arduino verbunden.

Laut Datenblatt soll der Spannungsregler des Arduino maximal 150 mA liefern können, was ausreichend ist für:

  • Arduino (45mA)
  • Oled (10 mA)
  • MFRC522 (26mA)

Die Spannung der Batterie wird vom Arduino gemessen und in einen Batterieprozentsatz umgewandelt.

Ich lötete Buchsenleistenstifte für alle Komponenten an ein Perfboard.

Siehe den Schaltplan für die Schaltung, das meiste ist selbsterklärend. Einige Anmerkungen:

  • Ändern Sie den Widerstand am PROG des TP4056 entsprechend Ihrer Batterie, siehe beiliegende Tabelle. Laden Sie den Akku in 1 Stunde auf, daher sollten Sie bei einem 400mAh-Akku einen 3k-Widerstand verwenden.
  • Die Spannung des Akkus beträgt maximal 4,2 V, was höher ist als die maximale Spannung von 3,3 V, daher wird ein Spannungsteiler verwendet. Unter der Annahme eines Spannungsabfalls von 0,3 V wird eine minimale Batteriespannung von 3,6 V benötigt.
  • In einer früheren Version des Moduls habe ich den Zustand der CHARGE- und STD BY-Pins des TP4056 über digitale Eingänge des Arduino (verbunden über einen 10K Ohm Widerstand) gelesen. Während dies erfolgreich war, wollte ich den Ladezustand durch LEDs anzeigen. Da jedoch etwas Strom vom TP4056 zu den digitalen Eingängen des Arduinos floss, wurden die LEDs nicht vollständig abgeschaltet. Auch führten die Verbindungen zwischen dem Arduino und dem TP4056 zu einem unvorhergesehenen Verhalten des TP4056. Daher habe ich die Verbindungen zwischen dem TP4056 und dem Arduino entfernt.

Schritt 2: Gehäuse

Gehege
Gehege
Gehege
Gehege
Gehege
Gehege

Ich habe ein Gehäuse in Fusion360 entworfen. Die STL-Dateien sind in meinem Thingiverse.

Schritt 3: Software

Software
Software
Software
Software

Die Programmdatei befindet sich in meinem Github.

Das Programm ist einfach:

  • Alle Komponenten initialisieren
  • Messen Sie die Spannung der Batterie über den Spannungsteiler, siehe diese Website für einen praktischen Spannungsteiler-Rechner.
  • Wandeln Sie die Spannung in einen Prozentsatz um und zeigen Sie diesen Prozentsatz an. Unter der Annahme eines Spannungsabfalls von 0,3 V wird eine minimale Batteriespannung von 3,6 V benötigt, also 3,6 V = 0 % und 4,2 V = 100 %.
  • Lesen Sie die RFID und verlangsamen Sie die ID auf dem Oled-Bildschirm.

Ich habe den Arduino über einen FDTI-Programmierer bei 3,3 V programmiert

Schritt 4: Zusammenbauen

Montage
Montage
Montage
Montage

Ich habe den Oled mit der Öffnung ausgerichtet und mit Heißkleber in das Gehäuse geklebt. Dann den MFRC522 in das Gehäuse geklebt und den Ein-/Ausschalter sowie den Micro-USB-Ladeanschluss platziert.

Schritt 5: Aufladen und Verwenden

Aufladen und Verwenden
Aufladen und Verwenden
Aufladen und Verwenden
Aufladen und Verwenden
Aufladen und Verwenden
Aufladen und Verwenden

Während des Ladevorgangs leuchtet die rote LED. Wenn der Akku voll ist, leuchtet die grüne LED.

Dann: Modul einschalten und verwenden!

Empfohlen: