Scanner RFID semplice alimentato a batteria (MiFare, MFRC522, Oled, Lipo, TP4056): 5 passaggi
Scanner RFID semplice alimentato a batteria (MiFare, MFRC522, Oled, Lipo, TP4056): 5 passaggi
Anonim
Image
Image

In questo tutorial ti mostro come ho realizzato un semplice lettore RFID UID che legge l'UID di una carta RFID Mifare.

Il programma è abbastanza semplice e su una breadboard il lettore è stato realizzato rapidamente. Poi ho saldato il tutto su un pezzo di perf board e ho progettato un involucro per esso.

Ha un caricatore LiPo integrato.

Forniture

Ho acquistato i componenti da Aliexpress:

  • Schermo vecchio (SPI)
  • Modulo RFID MFRC522
  • TP4056 caricabatterie IC
  • Arduino pro mini 3.3V 328P
  • Batteria LiPo

Passaggio 1: hardware

Hardware
Hardware
Hardware
Hardware

L'intero lettore è alimentato da una batteria LiPo da 3,7 V. La sua tensione viene immessa nel pin RAW dell'Arduino e il regolatore di tensione integrato dell'Arduino Pro converte la tensione a 3,3 V per l'Arduino e il pin VCC dell'Arduino. Lo schermo Oled e il modulo RFID sono collegati al pin VCC dell'Arduino.

Secondo la scheda tecnica, il regolatore di tensione dell'Arduino dovrebbe essere in grado di erogare un massimo di 150 mA, sufficiente per:

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

La tensione della batteria viene misurata da Arduino e convertita in percentuale della batteria.

Ho saldato i pin dell'intestazione femmina per tutti i componenti a una scheda perf.

Vedi lo schema del circuito, la maggior parte è autoesplicativa. Alcune osservazioni:

  • Cambia la resistenza su PROG del TP4056 per adattarla alla tua batteria, vedi la tabella allegata. Carica la batteria in 1 ora, quindi nel caso di una batteria da 400 mAh, dovresti usare una resistenza da 3k.
  • La tensione della batteria ha un massimo di 4,2 V, che è superiore alla tensione massima di 3,3 V, quindi viene applicato un partitore di tensione. Supponendo una caduta di tensione di 0,3 V, è necessaria una tensione minima della batteria di 3,6 V.
  • In una precedente versione del modulo leggevo lo stato dei pin CHARGE e STD BY del TP4056 tramite gli ingressi digitali dell'Arduino (collegato tramite una resistenza da 10K ohm). Anche se questo ha avuto successo, volevo mostrare lo stato di carica tramite i LED. Tuttavia, a causa del flusso di corrente dal TP4056 agli ingressi digitali di Arduino, i LED non si sono spenti completamente. Anche le connessioni tra Arduino e TP4056 hanno comportato un comportamento imprevisto del TP4056. Pertanto ho rimosso le connessioni tra il TP4056 e l'Arduino.

Passaggio 2: custodia

Allegato
Allegato
Allegato
Allegato
Allegato
Allegato

Ho progettato un recinto in Fusion360. I file STL sono nel mio Thingiverse.

Passaggio 3: software

Software
Software
Software
Software

Il file del programma è nel mio Github.

Il programma è semplice:

  • Inizializza tutti i componenti
  • Misurare la tensione della batteria tramite il divisore di tensione, vedere questo sito Web per un pratico calcolatore del divisore di tensione.
  • Converti la tensione in una percentuale e mostra questa percentuale. Supponendo una caduta di tensione di 0,3 V, è necessaria una tensione minima della batteria di 3,6 V, quindi 3,6 V = 0% e 4,2 V è 100%.
  • Leggi l'RFID e rallenta l'ID sullo schermo Oled.

Ho programmato Arduino tramite un programmatore FDTI a 3.3V

Passaggio 4: assemblaggio

Assemblaggio
Assemblaggio
Assemblaggio
Assemblaggio

Ho allineato l'Oled con l'apertura e l'ho incollato nella custodia con la colla a caldo. Quindi incollato l'MFRC522 nella custodia e posizionato l'interruttore di accensione/spegnimento e il connettore di ricarica micro USB.

Passaggio 5: ricarica e utilizzo

Ricarica e utilizzo
Ricarica e utilizzo
Ricarica e utilizzo
Ricarica e utilizzo
Ricarica e utilizzo
Ricarica e utilizzo

Durante la ricarica, il LED rosso è acceso. Quando la batteria è carica, il LED verde è acceso.

Quindi: accendi il modulo e usalo!

Consigliato: