.. note::
Ciao, benvenuto nella SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community su Facebook! Approfondisci l'esplorazione del Raspberry Pi, Arduino ed ESP32 con altri appassionati.
**Perché unirti a noi?**
- **Supporto esperto**: Risolvi i problemi post-vendita e le sfide tecniche con l'aiuto della nostra comunità e del nostro team.
- **Impara e condividi**: Scambia consigli e tutorial per migliorare le tue competenze.
- **Anteprime esclusive**: Accedi in anteprima agli annunci di nuovi prodotti e alle anticipazioni esclusive.
- **Sconti speciali**: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
- **Promozioni e omaggi festivi**: Partecipa a omaggi e promozioni speciali durante le festività.
👉 Sei pronto a esplorare e creare con noi? Clicca su [|link_sf_facebook|] e unisciti oggi stesso!
.. _2.2.10_py:
2.2.10 Modulo RFID MFRC522
==============================
Introduzione
-------------------
La Radio Frequency Identification (RFID) si riferisce a tecnologie che utilizzano
la comunicazione wireless tra un oggetto (o tag) e un dispositivo di interrogazione
(o lettore) per tracciare e identificare automaticamente tali oggetti.
Alcune delle applicazioni più comuni di questa tecnologia includono catene di fornitura
al dettaglio, catene di fornitura militari, metodi di pagamento automatizzati, tracciamento
e gestione dei bagagli, monitoraggio dei documenti e gestione farmaceutica, solo per citarne alcuni.
In questo progetto, utilizzeremo RFID per leggere e scrivere informazioni.
Componenti necessari
------------------------------
In questo progetto avremo bisogno dei seguenti componenti.
.. image:: ../img/list_2.2.7.png
È sicuramente conveniente acquistare un kit completo, ecco il link:
.. list-table::
:widths: 20 20 20
:header-rows: 1
* - Nome
- ELEMENTI IN QUESTO KIT
- LINK
* - Kit Raphael
- 337
- |link_Raphael_kit|
Puoi anche acquistarli separatamente dai link sottostanti.
.. list-table::
:widths: 30 20
:header-rows: 1
* - INTRODUZIONE AI COMPONENTI
- LINK PER L'ACQUISTO
* - :ref:`cpn_gpio_extension_board`
- |link_gpio_board_buy|
* - :ref:`cpn_breadboard`
- |link_breadboard_buy|
* - :ref:`cpn_wires`
- |link_wires_buy|
* - :ref:`cpn_mfrc522`
- |link_mfrc522_rfid_buy|
Schema elettrico
--------------------
.. image:: ../img/image331.png
Procedura sperimentale
--------------------------
**Passo 1:** Costruisci il circuito.
.. image:: ../img/image232.png
**Passo 2:** Installa le librerie :ref:`Spidev e MFRC522`.
**Passo 3:** Configura SPI (consulta :ref:`spi_configuration` per ulteriori dettagli. Se hai già configurato SPI, salta questo passaggio.)
**Passo 4:** Vai nella cartella del codice.
.. raw:: html
.. code-block::
cd ~/raphael-kit/python
**Passo 5:** Dopo aver eseguito ``2.2.10_write.py``, devi scrivere un messaggio, premere ``Enter`` per confermare, quindi posizionare la scheda sul modulo MFRC522, attendere che appaia "Scrittura dei dati completata" e rimuovere la scheda, oppure riscrivere il messaggio su un'altra scheda ed uscire premendo ``Ctrl+C``.
.. raw:: html
.. code-block::
sudo python3 2.2.10_write.py
.. image:: ../img/write_card.png
**Passo 6:** Ora esegui ``2.2.10_read.py`` per leggere le informazioni del tag o della scheda su cui hai scritto i dati.
.. raw:: html
.. code-block::
sudo python3 2.2.10_read.py
**Spiegazione del Codice**
.. code-block:: python
reader = SimpleMFRC522()
Istanzia la classe ``SimpleMFRC522()``.
.. code-block:: python
reader.read()
Questa funzione viene utilizzata per leggere i dati della scheda. Se la lettura ha successo, verranno restituiti id e testo.
.. code-block:: python
reader.write(text)
Questa funzione viene utilizzata per scrivere informazioni sulla scheda, premendo il tasto ``Enter`` per terminare la scrittura. ``text`` è l'informazione da scrivere sulla scheda.
Immagine del fenomeno
------------------------------
.. image:: ../img/image233.jpeg