Scanner RFID simple alimenté par batterie (MiFare, MFRC522, Oled, Lipo, TP4056) : 5 étapes
Scanner RFID simple alimenté par batterie (MiFare, MFRC522, Oled, Lipo, TP4056) : 5 étapes
Anonim
Image
Image

Dans ce instructable je vous montre comment j'ai fait un simple lecteur RFID UID qui lit l'UID d'une carte RFID Mifare.

Le programme est assez simple et sur une maquette le lecteur s'est vite fait. Ensuite, j'ai soudé le tout sur un morceau de carte perforée et j'ai conçu un boîtier pour cela.

Il a un chargeur LiPo intégré.

Fournitures

J'ai acheté les composants sur Aliexpress:

  • Écran Oled (SPI)
  • Module RFID MFRC522
  • TP4056 chargeur IC
  • Arduino pro mini 3.3V 328P
  • batterie LiPo

Étape 1: Matériel

Matériel
Matériel
Matériel
Matériel

L'ensemble du lecteur est alimenté par une batterie LiPo 3,7V. Sa tension est transmise à la broche RAW de l'Arduino et le régulateur de tension intégré de l'Arduino Pro convertit la tension en 3,3 V pour l'Arduino et la broche VCC de l'Arduino. L'écran Oled et le module RFID sont connectés à la broche VCC de l'Arduino.

D'après la fiche technique, le régulateur de tension de l'Arduino devrait pouvoir délivrer un maximum de 150 mA, ce qui est suffisant pour:

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

La tension de la batterie est mesurée par l'Arduino et convertie en pourcentage de batterie.

J'ai soudé des broches d'en-tête femelles pour tous les composants sur une carte de perforation.

Voir le schéma du circuit, la plupart sont explicites. Quelques remarques:

  • Changez la résistance sur PROG du TP4056 en fonction de votre batterie, voir le tableau ci-joint. Chargez la batterie en 1 heure, donc dans le cas d'une batterie de 400 mAh, vous devez utiliser une résistance de 3k.
  • La tension de la batterie a un maximum de 4,2 V, ce qui est supérieur à la tension maximale de 3,3 V, donc un diviseur de tension est appliqué. En supposant une chute de tension de 0,3 V, une tension de batterie minimale de 3,6 V est nécessaire.
  • Dans une version précédente du module, j'ai lu l'état des broches CHARGE et STD BY du TP4056 via les entrées numériques de l'Arduino (connectées via une résistance de 10K ohms). Bien que cela ait été un succès, je voulais montrer l'état de charge par des LED. Cependant, en raison du courant passant du TP4056 aux entrées numériques Arduinos, les LED ne se sont pas complètement éteintes. Les connexions entre l'Arduino et le TP4056 ont également entraîné un comportement imprévu du TP4056. J'ai donc supprimé les connexions entre le TP4056 et l'Arduino.

Étape 2: Enceinte

Enceinte
Enceinte
Enceinte
Enceinte
Enceinte
Enceinte

J'ai conçu un boîtier dans Fusion360. Les fichiers STL sont dans mon Thingiverse.

Étape 3: Logiciel

Logiciel
Logiciel
Logiciel
Logiciel

Le fichier programme est dans mon Github.

Le programme est simple:

  • Initialiser tous les composants
  • Mesurez la tension de la batterie via le diviseur de tension, consultez ce site Web pour un calculateur de diviseur de tension pratique.
  • Convertissez la tension en pourcentage et affichez ce pourcentage. En supposant une chute de tension de 0,3 V, une tension de batterie minimale de 3,6 V est nécessaire, donc 3,6 V = 0 % et 4,2 V est de 100 %.
  • Lisez le RFID et ralentissez l'ID sur l'écran Oled.

J'ai programmé l'Arduino via un programmeur FDTI à 3,3V

Étape 4: Assemblage

Assemblage
Assemblage
Assemblage
Assemblage

J'ai aligné l'Oled avec l'ouverture et l'ai collé dans le boîtier avec de la colle chaude. Collez ensuite le MFRC522 dans le boîtier et placez l'interrupteur marche/arrêt et le connecteur de charge micro USB.

Étape 5: Charge et utilisation

Chargement et utilisation
Chargement et utilisation
Chargement et utilisation
Chargement et utilisation
Chargement et utilisation
Chargement et utilisation

Pendant la charge, la LED rouge est allumée. Lorsque la batterie est pleine, la LED verte est allumée.

Ensuite: allumez le module et utilisez-le !

Conseillé: