nfc - Massari Electronics

  • TAG NFC approfondimento e idee di utilizzo

    La tecnologia NFC (acronimo di "Near Field Communication", ovvero "Comunicazione di prossimità") risulta essere una tecnologia sempre più presente nei moderni cellulari e smartphone. Per i pochi che non la conoscessero, la tecnologia NFC permette ad un comune cellulare dotato di apposita unità, di poter comunicare attraverso un protocollo software e hardware con altri dispositivi siano essi altri cellulari, dispositivi di pagamento elettronici o TAG; la caratteristica comune è che la comunicazione avviene a corto raggio (tipicamente massimo 2cm) e secondo protocolli definiti dallo standard NFC (e da quelli da cui si basa l'NFC stesso). In pratica per utilizzare l'NFC è sufficiente appoggiare il cellulare o smartphone al dispositivo NFC ready con cui comunicare (sia essi un POS per il pagamento elettronico, un TAG o un cellulare). Attualmente l'NFC per smartphone è supportato solo da alcuni cellulari Android, Windows Phone e Blackberry.

    In questo articolo non voglio descrivere l'uso di NFC con altri cellulari o con POS per il pagamento, ma l'utilizzo di NFC con i TAG, ovvero dei dispositivi di varia forma molto simili ad adesivi plastificati che permettono di memorizzare dati fruibili da tutti i dispositivi NFC e che si possono applicare sui vari oggetti.

    QUI PUOI ACQUISTARE TAG NFC COMPATIBILI COME QUELLI DESCRITTI

    PARLIAMO DI TAG NFC

    Tag è una parola che spesso associamo a social network, ma spesso viene usato per definire dispositivi che permettono di identificare oggetti. Questi possono essere i famosi codici a barre o i più moderni QR code o anche ai moderni sistemi RFID usati moltissimo in ambito industriale e commerciale. In questo campo il TAG è un dispositivo adesivo di spessore ridotto come la carta adesiva dotato essenzialmente di un'antenna e di un chip di memoria in grado di memorizzare dati utili all'identificazione dell'oggetto. In ambito RFID esistono due grandi tipi di TAG: quelli ATTIVI dotati di batteria e in grado di comunicare a distanza e quelli PASSIVI non dotati di batteria e che vengono alimentati direttamente dal lettore stesso durante la lettura. Questi tag PASSIVI possono utilizzare una trasmissione di potenza tramite induzione magnetica (simile ad un trasformatore senza nucleo) o tramite induzione elettrica (funzionante a maggiori distanze).

    Questa parentesi cosa centra con NFC? Semplice! L'NFC deriva come tecnologia da RFID, o meglio prende in uso la caratteristica comune, ovvero la comunicazione a corto raggio. Quindi l'NFC usa TAG molto simili a RFID, ma essendo solo a corto raggio i TAG sono quasi sempre passivi e a induzione magnetica con una frequenza di lavoro fissata a 13,56 MHz. Questo fa si che un TAG NFC non richieda alcun tipo di batteria e che funzioni ininterrottamente nel tempo, in quanto è il lettore stesso che appoggiandosi sul TAG lo alimenta con induzione magnetica e il TAG a sua volta mette a disposizione le sue funzionalità al lettore (che può anche scrivere dati al suo interno). I TAG NFC in commercio possono essere quasi tutti riscritti anche più volte e possono anche essere resi di sola lettura attraverso accorgimenti descritti in seguito. 
    Ricapitolando un TAG NFC non è altro che una piccola unità di memoria che può comunicare con un lettore (es. smartphone) per leggere/scrivere il suo contenuto. Semplificando possiamo paragonare un TAG NFC al classico QR code che permette di memorizzare dati in un dispositivo da applicare ad un oggetto.
    I vantaggi, però, rispetto al QR code sono molto evidenti:

    • Possibilità di riscrivere i dati più volte
    • Non richiede lettori ottici o fotocamere ma solo un dispositivo lettore NFC
    • Non richiede elaborazione dell'immagine (utile nei sistemi embedded a bassa potenza)
    • Non richiede particolari condizioni di luminosità
    • Non richiede il puntamento perfetto di una figura
    • Negli smartphone non è necessario attivare nessun software per leggere il TAG in quanto il lettore NFC viene abilitato direttamente a schermo attivo
    • Possibilità di occultare il TAG in posti non visibili
     

    TAG NFC, QUESTIONE DI MEMORIA

     La quantità di memoria è un punto fondamentale del TAG, cioè la quantità di dati che è possibile memorizzare al suo interno, tale dato dipende dal chip NFC che il TAG utilizza. Le famiglie di chip più famose e utilizzate sono:

    • Chip "Ultralight" con 46 Byte di memoria
    • Chip "NTAG203" con 137 Byte di memoria
    • Chip ad 1 KByte di memoria

    Ma di quanta memoria si ha necessità? Ovviamente dipende dal caso di utilizzo. I TAG NFC possono memorizzare informazioni varie quali testo, URL internet, numeri telefonici, coordinate geografiche e addirittura vcard (simili ad un biglietto da visita elettronico). Per quanto riguarda URL e numeri di telefono sono spesso sufficienti i primi due chip elencati sopra. Mentre per testi e vcard (molto esose di memoria) è quasi obbligatorio usare i chip NFC a 1KByte.


    GESTIRE I TAG NFC

    Con i moderni smartphone gestire i TAG NFC è una attività molto semplice. Sia gli OS Blackberry, Windows Phone e Andoid supportano nativamente, dietro esplicito consenso dell'utente e solo a schermo attivo, tutte le principali funzioni dei TAG NFC quali per esempio il puntamento ad una pagina web, l'invio di un SMS, l'effettuazione di una chiamata ad un numero specificato etc. Per scrivere i TAG NFC invece è necessario dotarsi di apposite App in grado di svolgere questa funzione. Di seguito ne elenco alcune per Android e Windows Phone.

    Android: 

    Windows Phone:

    Tutte queste App, chi più chi meno, vi permettono di gestire la scrittura di contenuti su NFC. Alcune App addirittura vi permettono di bloccare la riscrittura sul TAG, utile in luoghi pubblici per tutelarne il contenuto da riscritture successive.

    IDEE DI UTILIZZO DEI TAG NFC

    Di seguito descriverò alcune idee di utilizzo della tecnologia NFC. Spesso in internet si associano i TAG NFC ad utilizzi pubblicitari o per modificare le funzioni del telefono in automatico, qui invece voglio descrivere come l'NFC può fare da ponte tra oggetti fisici e virtuali in uno scenario di domotica, ovvero l'elettronica applicata per la casa e l'ufficio. In questo contesto il TAG diventa un oggetto fisico che ci permette di fare qualcosa, lo smartphone diventa il mezzo e un sistema elettronico dedicato si occuperà di attuare i comandi.

    Ovviamente tra il TAG e lo smartphone (mezzo) c'è l'NFC, mentre tra lo smartphone e il sistema di attuazione ci deve essere un canale che permetta di segnalare le operazioni, in particolare ad oggi possiamo usare chiamate, sms, siti internet, email. In questo contesto analizzerò in particolare un canale creabile tramite chiamata e un canale creabile tramite sito web locale, nulla vieta di fare le stesse cose tramite SMS o email. 

    • IL TAG APRICANCELLO

    Oggi in molti luoghi sono presenti cancelli automatici e per l'apertura fino a poco tempo fa era necessario dotarsi o di una chiave o di un telecomando. Entrambe le soluzioni con l'avvento dei cellulari e degli smartphone sono diventate scomode in quanto sia la chiave che il telecomando debbono necessariamente essere presenti in tasca o nel portaoggetti della macchina per poter essere usati. Invece da alcuni anni esistono sia sistemi embedded che sistemi software che permettono di aprire il cancello tramite una comune chiamata. Questo fa si che il cellulare o lo smartphone diventi un vero e proprio telecomando che ovviamente già oggi portiamo sempre con noi. Ma come funziona ciò? E LA SICUREZZA? Il funzionamento è tanto semplice quanto geniale in quanto tutti i dispositivi del genere reagiscono ad una chiamata senza rispondere ma analizzando il numero (ovvero il Caller ID), se questo corrisponde ad un numero preimpostato nella rubrica dei numeri abilitati ad aprire il cancello (i numeri associano la sim usata) allora il sistema provvede a chiudere un relè che a sua volta è collegato al contatto di apertura cancello. Il fatto che il dispositivo non risponda alla chiamata e riattacchi immediatamente permette di tenere impegnata la linea al minimo e permette di evitare i costi della chiamata in quanto la comunicazione non avviene mai. L'unica accortezza è ricaricare anno per anno la sim di un importo minimo per permettere di posticiparne la scadenza. Tale soluzioni è molto più sicura di qualsiasi telecomando in quanto il numero è nostro e non può essere clonato senza eseguire procedure che risultano più dispendiose che scavalcare il cancello (o abbatterlo direttamente).

    Per aprire il cancello, in conclusione, è sufficiente chiamare tramite il proprio cellulare autenticato il dispositivo. Questo implica di dover memorizzare un numero in rubrica da tenere sempre a portata di uso. Con il TAG NFC è possibile inserire il numero nel TAG e apporre il tag nel cruscotto della macchina o nel portachiavi. Quando vogliamo aprire il cancello in ogni parte del mondo (non solo a 50m massimi come con i classici telecomandi) sarà sufficiente appoggiare lo smartphone sul TAG e immediatamente effettuare la chiamata. Semplice e veloce.

    Sotto potete vedere lo scenario indicato e la strumentazione. Per quanto riguarda io applico già questo tipo di utilizzo tramite il sistema domotico MassaBUS presente in questo sito. E' sufficiente dotare il server domotico di un modem GSM anche di seconda mano (I modem TC35 Siemens usati si trovano facilmente e costano pochissimo, sono molto affidabili, vengono dismessi dagli utilizzatori perché non supportano la tecnologia GPRS che però in questo scenario di utilizzo non serve a nulla) e attuare l'attivazione del relè tramite una scheda di output. La lista dei numeri di cellulare può essere gestita per abilitare o disabilitare utenze (pensate ad un'azienda o ad un condominio con cancello automatico condiviso).

    • COMANDI TRAMITE SITO INTERNET 

    Prendiamo in considerazione sempre il server domotico o il sistema embedded che gestisce la casa (riscaldamento, antifurto, illuminazione), con NFC e smartphone possiamo cambiare o far cambiare lo stato delle impostazioni della casa in maniera semplice e veloce senza digitare alcun URL! Come? Innanzitutto è necessario implementare un server web nel sistema domotico e creare un applicazione "server-side" che si occupi di ricevere i comandi da URL tramite i metodi GET o POST ampiamente conosciuti da chi sviluppa per il WEB. L'applicazione server può essere realizzata con il linguaggio o metodo preferito (PHP, Perl, CGI...) e non fa altro che attuare i cambiamenti al cuore dell'applicazione domotica. Per la sicurezza consiglio di prevedere l'accesso solo tramite rete locale sotto rete wifi protetta. Nel TAG NFC è necessario salvare l'URL dell'applicazione web sul vostro server a cui potrete mettere i parametri tramite il metodo GET, in particolare il comando da eseguire. Poi se il TAG controlla qualcosa di critico o è esposto all'esterno è assolutamente consigliabile richiedere una password dopo la lettura del TAG. Esempio tipico è l'attivazione/disattivazione dell'antifurto a casa. Niente più codici da inserire nella tastiera dell'allarme o telecomandi da portarsi dietro ma un TAG NFC con memorizzato il comando. Quando l'utente leggerà tramite il proprio smartphone il TAG automaticamente il cellulare andrà nella pagina di ricezione comando dove chiederà di inserire la password di autenticazione. Ovviamente se il comando è solo previsto in locale tramite wifi per sicurezza è necessario che lo smartphone si colleghi in automatico alla rete wifi, cosa che però i moderni smartphone fanno tranquillamente autonomamente. La sicurezza è garantita dall'accesso nella rete wifi e dalla password per abilitare il comando nell'applicazione WEB.
    Sotto una foto mostra lo scenario di utilizzo.

     

    Qui potete trovare un esempio di applicazione PHP che viene eseguita lato server. Per semplicità la password è statica e memorizzata in sorgente, la pagina è un classico form con nome utente e password e il nome utente (con il comando) possono essere passati direttamente con il metodo GET dall'URL salvato nel TAG NFC. L'attuazione del comando può essere fatta via PHP con l'uso di socket TCP o il richiamo di applicazioni tramite shell.

    CLICCA QUI PER VISUALIZZARE IL CODICE PHP (FORMATO PDF)

    Di seguito è possibile scaricare il sorgente in PHP

    DOWNLOAD SORGENTE PHP

    BUON LAVORO!{jcomments on}