deitag LA GESTIONE Per dare un approccio concreto alla progettare & costruire Usare la tecnologia RfId (parte seconda)



Documenti analoghi
IRSplit. Istruzioni d uso 07/10-01 PC

ID RW01L.AB-A. Referente Paolo Bevacqua Versione Versione 1.0 Ultima revisione 20/04/2011. Powered by

Software di interfacciamento sistemi gestionali Manuale di installazione, configurazione ed utilizzo

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Radio Frequency Identification Systems

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Guida di Pro Spam Remove

Registratori di Cassa

FGCAEN Demo software per Mac OS X Leopard ) Lancio dell applicazione. 2) Apertura della comunicazione seriale

Dispensa di Informatica I.1

Domande e risposte su Avira ProActiv Community

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

Gestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare.

Manuale di Aggiornamento BOLLETTINO. Rel H4. DATALOG Soluzioni Integrate a 32 Bit

Modulo plug&play MKMB-3-e-3. Interfaccia Modbus/RTU per contatori Iskraemeco MT831 / MT860

Manuale Terminal Manager 2.0

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

INFORMATIVA SUL DIRITTO ALLA PRIVACY PER LA CONSULTAZIONE DEL SITO WEB

Quick Reference Giornale di Bordo (e-logbook)

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Servizio Telematico Paghe

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente

Introduzione alla programmazione in C

PROTOCOLLO INFORMATICO

C. P. U. MEMORIA CENTRALE

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

Dispositivo Modbus. Manuale di installazione e uso. Doc Rev.1 (03/15)

Servizio on-line di Analisi e Refertazione Elettrocardiografica

Installazione e caratteristiche generali 1

Manuale Utente MyFastPage

GENERAZIONE ARCHIVIO F24 AGENZIA ENTRATE

Software di gestione della stampante

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

INSTALLAZIONE SOFTWARE HELMAC

Procedure di utilizzo e di descrizione applicativa

Sostituto abilitato Entratel con più sedi: ricezione diretta e incarico ad intermediario abilitato

Gestione Turni. Introduzione

Lettore di badge Nexus

POSTECERT POST CERTIFICATA GUIDA ALL USO DELLA WEBMAIL

Software Servizi Web UOGA

FRANCESCO MARINO - TELECOMUNICAZIONI

INFO TECNICA SATO Italia

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

STRUMENTO PER LA COMPRESSIONE E LA CRIPTAZIONE DI FILE

Con SIGNUM è possibile intervenire con diversi livelli di personalizzazione e controllo sui dati letti. In particolare SIGNUM può essere usato:

Indruduzione... 1 Il modulo Bluetooth HC Il firmware... 3 Collegamento della scheda... 4 Software PC e l applicazione Android...

MANUALE PARCELLA FACILE PLUS INDICE

INFORMATICA 1 L. Mezzalira

introduzione I MICROCONTROLLORI

Guida Compilazione Piani di Studio on-line

Capitolo 1 Installazione del programma

Reti e Sistemi per l Automazione MODBUS. Stefano Panzieri Modbus - 1

Centro Acquisti per la Pubblica Amministrazione EmPULIA. Linee guida per gli Enti Aderenti. Procedure Negoziate: Richiesta di Preventivo. Versione 2.

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

GUIDA AL SOCIAL CARE

Titolare del trattamento dei dati innanzi descritto è tsnpalombara.it

Sistema Informativo di Teleraccolta EMITTENTI

Manuale Utente Albo Pretorio GA

Procedura di aggiornamento del firmware Display Remoto IntellyGreenPV

FIRESHOP.NET. Gestione Lotti & Matricole.

Dipartimento per le Libertà Civili e l Immigrazione

Fima Card Manager Proxy Contact & Contactless Card Solutions. pluscard.it

Sharpdesk V3.3. Guida all installazione Versione

Versioni x.7.9 Note Operative

Sistema Banca dati e Repertorio dei dispositivi medici Notifiche multiple di DM simili

Guida rapida Vodafone Internet Box

EW1051 Lettore di schede USB

ALLEGATO 15 Lettura ed identificazione con transponders

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Samsung Auto Backup FAQ

Inizializzazione degli Host. BOOTP e DHCP

Programma applicativo di protezione LOCK Manuale per l utente V2.22-T05

Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11 SP1

Mon Ami 3000 Lotti e matricole Gestione della tracciabilità tramite lotti/matricole

SEDA S.p.A. Divisione Emergenza. ZOLL Data Review

Protocollo Informatico (D.p.r. 445/2000)

Gestione dei documenti e delle registrazioni Rev. 00 del

Guida di Opzioni Fiery 1.3 (client)

Fratini Service di G. Fratini

BPIOL - Bollettino Report Gold. Manuale Utente

Mac Application Manager 1.3 (SOLO PER TIGER)

IL SISTEMA SMART RESPONSE

FIRMA DIGITALE RETAIL

LCMobile Restaurant. Guida su come usare il software per palmare LCMobile Restaurant.

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA

Sistema Operativo di un Router (IOS Software)

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Advisor Advanced /NX di 11. Introduzione

NOTE GENERALI DI PROGRAMMAZIONE icon100

Gestione automatica delle Fatture Elettroniche per la Pubblica Amministrazione (Fatture PA)

«Gestione dei documenti e delle registrazioni» 1 SCOPO CAMPO DI APPLICAZIONE E GENERALITA RESPONSABILITA DEFINIZIONI...

Corso di Informatica

Guida alla registrazione on-line di un DataLogger

Guida all installazione degli Hard Disk SATA ed alla configurazione del RAID

Transcript:

progettare & costruire di FRANCO TEDESCHI Usare la tecnologia RfId (parte seconda) LA GESTIONE deitag Terminata l analisi delle caratteristiche di base dei sistemi RfId, in questo articolo vedremo come gestire i dati rilevati dai tags per poterli organizzare e utilizzare in maniera operativa Per dare un approccio concreto alla trattazione, faremo riferimento ai prodotti commerciali della Softworks, esclusivista per l Italia del marchio FEIG Electronics; per questi dispositivi, insieme all hardware vengono forniti anche un programma per la configurazione/test della strumentazione e delle ottime librerie di supporto che permettono di integrare velocemente le funzionalità dei controller all interno di programmi applicativi C/C++, Visual Basic, Delphi, etc... In figura 1 è riportato il reader utilizzato. Si tratta del controller siglato CPR-MR50, con interfaccia USB per lettura e scrittura multitag di transponder a 13,56 Mhz in conformità agli standard ISO 14443A/B, ISO15693 ed EPC. E possibile acquistare questo prodotto anche on-line, sul sito della Inware www.elettroshop.com. Grazie all antenna paddle esterna, questo reader riesce ad operare fino ad una distanza di circa 25 cm. Il controller è adatto per una vasta categoria di applicazioni che vanno dal commercio, all autenticazione e security, tracciabilità dei documenti, logistica, industria, etc... Il lettore supporta inoltre funzioni di sicurezza quali Myfare ed my-d, attraverso un secutity access module opzionale: ciò permette soluzioni sicure per il ticketing o applicazioni contabili. La funzione di anticollisione permette inoltre l identificazione simultanea di più TAG, mentre il firmware upgradabile consente gli aggiornamenti software per future generazioni di transponder. INSTALLAZIONE DEI DRIVER DEL CONTROLLER E DEL SOFTWARE DI CONFIGURAZIONE Per poter utilizzare il controller, per prima cosa bisogna provvedere alla installazione dei driver; il costruttore fornisce sia driver per sistemi operativi Windows che per Linux: nel seguito faremo esplicito 24 Figura 1: il reader di Softworks.

Figura 2: la schermata di avvio del programma di gestione del reader. riferimento ad ambienti con sistemi operativi Microsoft. I TAG a cui faremo invece riferimento nell articolo sono quelli relativi allo standard ISO15693. Dopo aver collegato il reader alla porta usb di un PC, il sistema operativo procederà al riconoscimento dell hardware e richiederà di indicare il percorso dove sono disponibili i driver della periferica forniti dal costruttore. Dopo aver completato questa operazione è possibile installare il software OBID-ISOStart della FEIG Electronics; si tratta di un programma di configurazione che permette di operare sui parametri del lettore e definire le condizioni operative di funzionamento del dispositivo. Al primo avvio del programma, dopo avere eseguito la fase di riconoscimento automatico del Reader, è importante impostare la porta COM di default e settare i parametri di comunicazione. Nella schermata di avvio del programma, (figura 2) nella parte sinistra dello schermo sono mostrati cinque ambiti operativi: 1. Command 2. Configuration 3. Host Command 4. Scanner Mode 5. Test and measurement I protocolli di trasmissione tra Reader e Host sono invece visualizzati nella parte bassa dello schermo ogni volta che si esegue un comando: questo permette di controllare in che modo avviene lo scambio dei dati. MODALITÀ COMMAND In questa modalità è possibile eseguire dei comandi che agiscono direttamente sul controller, come ad esempio il Reset della CPU, l avvio del Flash loader, etc, oppure è possibile attivare gli ISO Host Command, ovvero i comandi che provvedono allo scambio dei dati con i tag che entrano nel campo del Reader. Il lettore distingue tra tre modalità di scambio: Addressed (con indirizzamento ossia trasferimento dei dati da o verso un determinato TAG), Non-addressed (broadcast) e Selected (con selezione). ISO HOST COMMAND: FORMATO DEL PROCOLLO I comandi di particolare interesse, che permettono la comunicazione fisica con i TAG sono [0x01] Inventory, [0x23] Read, e [0x24] Write. Per comprendere come sono strutturati questi comandi, è sufficiente fare riferimento al formato previsto dal protocollo ISO 15693 sintetizzato in figura 3. Il primo byte rappresenta la lunghezza, ovvero 25

progettare & costruire identifica il comando di Inventory; per quanto riguarda la Response-data, nel campo Data-sets viene riportato il numero dei tags rilevati, mentre nei campi successivi viene indicato il tipo, il DSFID e l UID, transponder per transponder (il significato di questi ultimi campi sarà illustrato fra breve). Figura 3: il formato standard ISO 15693. Figura 4: struttura del Request-data e del Response-data per il comando Inventory. Figura 5: struttura del Request-data e del Response-data per il comando Read. Figura 6: struttura del Request-data e del Response-data per il comando Write. il numero n dei byte del protocollo (minimo 6, massimo 255 bytes), compreso la checksum. Il secondo Byte definisce indirizzo della porta COM ovvero indica l indirizzo del device. Il terzo Byte rappresenta il codice del comando ISO. I byte Status e Dati del protocollo includono invece il messaggio di stato e/o il dato scambiato con il Reader. CRC16 è infine una checksum denominata Cyclic redundancy check. L algoritmo interessa i bytes del protocollo dall 1 all n- 2. Vediamo ora nello specifico i comandi ed il loro significato. [0x01] Inventory Questo comando legge l UID di tutti i transponders all interno del campo dell antenna: quando il Reader intercetta un nuovo tag, lo colloca nel Quiet state in modo che non sia più riconteggiato in caso di un secondo comando di Inventory. Il transponder manda in ogni caso una risposta se è uscito e rientrato dal campo dell antenna o il se Reader ha ricevuto un comando di [0x69] RF Reset. La Request-data e la Response-data sono strutturate come in figura4. Il byte 4 del protocollo vale 0x01 ed [0x23] Read Questo comando legge uno o più blocchi-dati memorizzati all interno del transponder. La struttura di Request-data e Response-data è indicata in figura 5. Nella Request-data si possono evidenziare (byte 5) MODE: impone la tipologia dello scambio che può essere Non Adressed, Addressed, Selected (byte 6 e successivi) UID: numero seriale del transponder, è necessario solo nel caso di Addressed mode (byte DB-ADR): numero del primo blocco che deve essere letto (byte sucessivi al DB-ADR) DB-N: numero dei blocchi di dati da leggere all interno del transponder Nella Response data invece (byte 5) DB-N: numero dei blocchi di dati letti all interno del transponder (byte 6) DB-SIZE: numero di bytes contenuti in un blocco di dati. Questo valore dipende dalle specifiche del costruttore dei transponders (byte 7) SEC-STATUS: Blocco di sicurezza, indica se un blocco è read-only oppure read-write (byte 8 n) DB: contenuto dei blocchi richiesti Se lo stato indicato nella Response Data è [0X95] si è verificato un errore di comunicazione. E bene tener presente che esistono transponders che non supportano la lettura di blocchi multipli, in questo caso vanno effettuate molte letture singole; inoltre nel non Addressed mode viene letta comunque la memoria di un singolo TAG. [0x24] Write Questo comando scrive uno o più blocchidati memorizzati all interno del transponder. La Request-data è strutturata come in figura 6. Nella Request-data si possono evidenziare (byte 5) MODE: impone la tipologia dello scambio che può essere: 26

non Addessed mode, Addressed, Selected (byte 6 e successivi ) UID: numero seriale del transponder, è necessario solo in caso di addressed mode (byte successivi all UID) DB-ADR: numero del primo blocco che deve essere scritto. (byte successi vi al DB-ADR) DB-N: numero dei blocchi da scrivere all interno del transponder (byte successivi alla DB-N) DB-SIZE: numero di bytes contenuti in un data block (byte successivi al DB-SIZE) DB: informazioni/dati da scrivere nei transponders; la loro dimensione dipende dalla DB-SIZE. Il numero dei bytes attesi è DB-N*DB-SIZE. Per quanto riguarda la response Data, se si tenta di scrivere in un area di sola lettura, se c è troppa distanza tra Reader e transponder o se avviene un tentativo di scrittura in una zona rumorosa il lettore risponde con lo status [0x03] Write-Error. Figura 7: l organizzazione della memoria del reader. LISTATO 1 Private Sub Command1_Click() Dim HReader As Long HReader = ISCReader1.NewComReader( 6, 8E1, 38400, 2000 ) If HReader <= 0 Then MsgBox ( Errore Apertura Dispositivo: + Str(HReader)) Else Call ISCReader1.ISO_CMD_Inventory(HReader, 0) End If Private Sub ISCReader1_ISOCMDAnswer(sResp As String, ireaderhnd As Long, ByVal cbusadr As Byte, istatus As Long) Text1.Text = CStr(sResp) Private Sub Command2_Click() Call ISCReader1.PRC_RF_OnOff(HReader, 0, 0) Unload Me 27

progettare & costruire Figura 8: l organizzazione della memoria dei trasponders. Figura 9: struttura dell UID. Per altri tipi di errore di comunicazione il Reader risponde con lo status [0x95] Iso 15693 Error. MODALITÀ CONFIGURATION I comandi di configurazione e di controllo sono utilizzati per impostare i parametri del lettore e per effettuare diagnosi attraverso l interfaccia USB. Le modifiche saranno salvate nella memoria del lettore, temporaneamente nella RAM, oppure definitivamente nella EEPROM. Il Reader è infatti dotato di due tipi di memoria, RAM ed EEPROM, organizzate in blocchi numerati (CFG0,...CFG9) di 16 bytes ciascuno (figura 7). I parametri di configurazione occupano 14 bytes; 2 bytes sono riservati alla checksum a 16 bit. Tra le operazioni possibili, ricordiamo quelle di configurazione del Reader ([0x80] 28 Read configuration, [0x81] Write configuration, [0x82] Save configuration, [0x83] Set default configuration). Una operazione particolarmente importante è quella che permette di commutare il reader dalla modalità Host attraverso cui è in grado di trasmettere i comandi ISO e scambiare dati, alla modalità Scan Mode. MODALITA SCAN MODE In questa modalità sarà attivata la finestra grafica in cui saranno visibili a video gli UID dei tag che entrano nella zona di lettura del reader. E anche possibile scrivere i valori acquisiti in un file di testo. Ricordiamo che affinché questa modalità sia attiva è necessario impostare nel blocco CFG1 l opzione Scan Mode ed effettuare il Write della configurazione nella memoria del controller. ORGANIZZAZIONE DELLA MEMORIA DEI TRANSPONDERS Secondo lo standard ISO 15693,i dati sono memorizzati in una memoria non volatile EEPROM (figura 8) dalla capacità di 1024 bit organizzati in 32 blocchi di 4 bytes ciascuno (1 blocco = 4 byte e rappresenta l unità di accesso minima). 28 blocchi contengono eventuali dati memorizzati dall utente, mentre 4 blocchi sono riservati per UID, condizioni di accesso in scrittura, AFI e DSFID. L UID di 64 bit è programmato durante il processo di produzione in accordo con lo standard ISO/IEC 15693-3 e non può essere manipolato in alcun modo. La numerazione inizia con LSB1 e termina con MSB64. All interno dell UID, (figura 9) sono codificate alcune informazioni quali tipo di tag (0x01 per gli ISO 15693) e codice del produttore (0x04 per Philips Semiconductors) come si può notare dalla Figura 8, EAS, DSFID e AFI sono byte riservati per funzioni specifiche: Electronic Article Surveillance consiste in un singolo bit che permette di effettuare un controllo antitaccheggio. Application Family Identifier codifica alcune famiglie (e sottofamiglie) di applicazioni con cui si possono strutturare le informazioni contenute nella memoria. Data Storage Family Identifier indica come il dato è strutturato all interno della memoria del tag. ORA METTIAMOCI ALL OPERA! Nel seguito mostreremo come creare dei semplici programmi che sfruttando alcune librerie specifiche, interagiscono con il Reader opportunamente configurato in modo da poter comunicare con i TAG. Questi programmi hanno il solo scopo di mostrare come le informazioni contenute nei tag possono essere acquisite, per essere poi elaborate a seconda delle specifiche esigenze. Abbiamo scelto di utilizzare il linguaggio Visual Basic in primo luogo per poter utilizzare il controllo ActiveX SwISCReader fornito dal distributore Softworks insieme all hardware a disposizione, ed in secondo luogo per le potenzialità di questo linguaggio per quanto riguarda la connessione ai database. Il controllo SwISCReader.OCX è

simile a un.dll, ma oltre alle funzioni condivise, fornisce anche una propria interfaccia che permette l interazione con la strumentazione attraverso alcune funzioni parametrizzate, consentendo di gestire da 1 a n Readers connessi al Pc tramite interfaccia seriale, USB o ethernet. Prima di utilizzare l OCX i dispositivi devono essere opportunamente configurati tramite il software di OBIDScan: in particolare devono essere impostati il metodo di funzionamento host mode e i parametri della porta seriale. Il primo esempio applicativo di cui mostriamo il codice nel listato 1, è un programma che implementa il comando ISO Inventory [0x23]. La figura 10 rappresenta la Form di interfaccia del programma. Ricordiamo che per poter utilizzare le funzionalità fornite dalla libreria SwI- SCReader in dotazione, è necessario installare preventivamente il controllo OCX sulla macchina, ed includerlo nel progetto Visual Basic. L istruzione HReader = ISCReader1.NewComReader( 6, 8E1, 38400, 2000 ) crea l handle al Reader, per poterlo riferire all interno del codice.questo comando crea un nuovo oggetto Reader per la seriale specificata parametro e ritorna l handle dell oggetto Reader ( HReader ) che permetterà la sua gestione. Nello specifico la procedura lega all oggetto Reader la porta seriale COM6 che viene aperta con i parametri Frame 8E1, Baud Rate 38400, Block Timeout 2000. La funzione Call ISCReader1.ISO_CMD_Inventory (HReader, 0) invia un comando ISO di inventory al Reader. Il comando Inventory attiva l evento di risposta ISOCMDAnswer() ed intercettandolo si possono rilevare i dati di risposta per i tags individuati nel campo dell antenna. In particolare, la risposta ( Resp ) contiene il numero di tags rilevati nel campo ed il loro UID. Il contenuto della stringa di risposta è del tipo nn xxyyssssssssssssssss xxyyssssssssssssssss... dove: nn = primi due byte che rappresentano il numero di tag rilevati in esadecimale dopodichè si ripetono sequenze di 20 byte dove i primi 2 di ogni sequenza identificano xx = il tipo di tag (Es. 00 per I-Code 01 per Tag-it, 03 per ISO) yy = family code per ISO tags ssss = Serial number L esempio applicativo successivo, il cui codice è riportato nel listato 2 implementa invece il comando ISO [0x23] Read, ovvero effettua una lettura del contenuto dei blocchi di memoria dei transponder. Si presuppone chiaramente, che i dati siano stati preventivamente scritti all interno dei TAG, il modo più semplice, se si vogliono fare dei test della routine, è quello CODICE MIP 2781295 29

progettare & costruire Figura 10: la form di interfaccia del programma. Figura 11: il risultato della lettura di un tag. LISTATO 2 Private Sub Command1_Click() Dim HReader As Long HReader = ISCReader1.NewComReader( 6, 8E1, 38400, 2000 ) If HReader <= 0 Then MsgBox ( Errore Apertura Dispositivo: + Str(HReader)) Else Call ISCReader1.ISO_cmdGen(HReader, 255, 23000201) End If Private Sub ISCReader1_ISOCMDAnswerGen(sResp As String, ireaderhnd As Long, ByVal cbusadr As Byte, istatus As Long) Text1.Text = CStr(sResp) Private Sub Command2_Click() Call ISCReader1.PRC_RF_OnOff(HReader, 0, 0) Unload Me di usare il software OBIDScan per memorizzare i dati desiderati all interno di uno o più TAG attraverso l apposito comando ISO [0x24]. La funzione Call ISCReader1.ISO_cmdGen(HReader, 255, 23000201) permette di inviare un commando ISO al trasponder e ottenere la risposta tramite l evento ISOCMDAnswerGen(). I comandi possibili i effetti, sono tutti i comandi ISO supportati dai tags in uso. Nella chiamata,hreader Indica l handle del Reader, 255 Indica l indirizzo del Reader, 23000201 è la ReqData ovvero la stringa che contiene il comando da inviare ai transponders seguito dagli eventuali parametri supportati. In particolare: CMD = 23 (comando Leggi ) 30 MODE = 00 (indica Non addressed mode ) UID = (nel caso di non addressed mode non si deve specificare un numero seriale per effettuare la lettura del tag) DB-N = 02 (lettura di 2 blocchi di memoria) DB-ADR = 01 (lettura a partire dal blocco di indirizzo 1 ovvero il primo blocco della memoria) Nell evento di risposta ISOCMDAnswer- Gen si riceverà la stringa Resp = 020400XXXXXXXX Dove: DB-N = 02 DB-SIZE = 04 (dimensione dei blocchi di memoria che dipende dal tipo di transponder) SEC-STATUS= 00 Stato dei blocchi. In questo caso non richiesto quindi = 0 DB = XXXXXXXX (contenuto dei blocchi di memoria, due caratteri per ogni byte, valore esadecimale) Per inviare altri comandi ISO, la stringa ReqData va costruita di volta in volta consultando le specifiche 15693. L evento ISOCMDAnswerGen, attivato da ISO_CmdGen, genera risposte che sono diverse a seconda del comando inviato: in ogni caso bisogna sempre riferirsi alla documentazione ISO 15693 per avere la corretta chiave di interpretazione della stringa. CODICE MIP 2772198