+ All Categories
Home > Documents > EOS-Book#0

EOS-Book#0

Date post: 26-Dec-2015
Category:
Upload: matteo-gaio
View: 27 times
Download: 1 times
Share this document with a friend
Description:
Elettronica Open Source
45
Transcript

1

EOS-Book #0Tutti gli Articoli sono di proprietà diEMCelettronica Srl e ne è vietata lariproduzione ed in generale la diffusione.Gli Abbonati Premium sono autorizzatialla stampa su carta per uso personale. Perogni eventuale richiesta potete scrivere [email protected]

Un progetto ambizioso:EOS-BOOK1 Ott 2012 di Emanuele

Nasce oggi EOS-BOOK, un progettoambizioso come naturale evoluzione diquanto fatto in questi anni su ElettronicaOpen Source. Un magazine di Elettronica?Una repository di progetti? Molto di più,scopriamolo e progettiamolo insieme!

Gli ultimi due anni sono stati molto importantiper Elettronica Open Source, abbiamo avuto unincremento esponenziale di visitatori e, sempregraditi, di apprezzamenti, una partecipazione allavita del Blog e del Forum sempre in crescitaed abbiamo stretto collaborazioni con importantiSponsor pur nel rispetto reciproco e mantenendola nostra indipendenza. Allo stesso tempo siamoriusciti a convogliare questo successo sul veroprotagonista del sito (blog+forum) e cioè sullacommunity. Si, voi che state leggendo ora!

Concorsi ed iniziative varie sono state moltofrequenti, non solo l'ultima MAKE4CASH citatoanche da Wired e concluso pochi giorni fa conla relativa premiazione, ma anche l'assegnazione

dell'oscilloscopio Tektronix con Oscillandia, didue Oscilloscopi Lecroy e che dire poi diFebbruino e Marzuino o di 300....Anche come demoboard siamo riusciti asoddisfare molti utenti, vedi il programmaReview4U.

Insomma se avete tempo di leggere tutti i link,noterete bene che abbiamo distribuito +10.000euro in denaro, strumentazione elettronica edemoboard. Mai visto niente di simile in Italiavero?

Inoltre abbiamo aumentato ( e di molto) la qualitàdei contenuti, con articoli tecnici e progetti dialto livello. Abbiamo intervistato i protagonistidell'elettronica, trascritto, tradotto e sottotitolatovideo tecnici e tantissime altre cose, pensateche solo sul blog abbiamo realizzato +5000articoli! Tutto questo è stato possibile graziead una squadra di collaboratori eccezionale, masoprattutto grazie a Voi che ci seguite numerosi!

Insomma siete stati sempre voi protagonisti! Equello che voglio dirvi oggi è che in futuro lo sareteancora di più !!

Provate ora ad immaginare quello che potremmofare con il vostro aiuto diretto, un crowdfundingrivolto alla costruzione di una communityaffiatata, partecipativa e soprattutto soddisfatta!

Immaginate una community veramente speciale,con continui scambi di informazioni, ma ancheun posto dove ricevere gratis demoboard eschede elettroniche, dove avere strumentazioneelettronica in omaggio, dove leggere articolitecnici approfonditi sugli argomenti cherichiedete!Immaginate di avere a disposizione un magazinedi elettronica con articoli e progetti open sourceche risolvono le vostre reali necessità.

Stò sognando ad occhi aperti, dite? Anche un paiodi anni fa dare in omaggio un oscilloscopio da3700 euro sembrava un sogno, eppure ci siamoriusciti ed ora un Ing. Elettronico (Marco Di Vivo)ha potuto dotare il suo laboratorio del fantasticoMSO2024 Tektronix.

2

Nasce il progetto EOS-BOOKAbbiamo fatto molto, ma sappiamo che possiamofare molto di più! EOS-Book è un progettodinamico che al suo interno comprende una seriedi iniziative in continua evoluzione.

Vi elenco i punti iniziali, perché sono appuntodinamici, maggiore sarà la partecipazionemaggiori saranno le iniziative:

1) PREMIUMUn'area del blog PREMIUM con articoli tecnicidi alta qualità, che offrono un elevato valoreaggiunto e quindi NON reperibili online, che vifaranno risparmiare molto tempo in ricerche e dapprofondimenti.

2) PROGETTI OPEN SOURCELibero accesso a tutti i codici sorgenti ed aiprogetti Open Source pubblicati.

3) ON DEMANDPossibilità di richiedere contenuti. Doveteapprofondire un argomento specifico? avetebisogno di tradurre un reference design oun'applicazione per comprenderne fino in fondo ilsignificato? Oppure avete visto un video in linguaoriginale e vi sarebbe molto utile poterne leggerei sottotitoli in italiano? Contattateci con la vostrarichiesta, vi metteremo subito in lista. Chi primaarriva prima sarà servito, ovvio ;)

4) EOS-BOOKUn magazine mensile in PDF vi verrà inviatodirettamente nella vostra casella di postaelettronica. Da stampare e leggere! Assolutamentesenza pubblicità!

5) REVIEW4UOgni settimana una demoboard o schedaelettronica in omaggio agli abbonati, attraverso ilprogramma Review4U. Non sarà una riffa, ma unaassegnazione in base al reale utilizzo.

6) NEWSLETTERUna newsletter PREMIUM con nuove iniziativeperiodiche rivolte agli abbonati. EOS-BOOK eREVIEW4U ma anche EBOOK specifici e.....

7) FEEDBACK DIRETTOIl progetto è dinamico! Non ti è piaciuto unarticolo o non ti ha soddisfatto un progetto?Segnalacelo faremo prima possibile una revisioneimpegnando ancora di più le nostre risorse al fine

di un ulteriore aumento qualitativo! E' quello chevogliamo anche noi!

Sei con noi in questo progetto?

Abbonati ora!

Al costo di un caffè o poco più potrai diventareUtente Premium e sostenere Elettronica OpenSource, affinché tutto questo sia possibile!

Abbonati e segnalami subito che progetto/articolo/argomento vuoi veder su EOS-Book, saraisicuramente tra i primi ad essere esaudito.

Come Abbonarsi:

Registrati al link indicato con i tuoi dati e compilala richiesta di Abbonamento Premium (mensileo annuale) -> http://it.emcelettronica.com/user/register

Per qualsiasi ulteriore informazione puoiutilizzare i commenti oppure contattarmi inprivato tramite il modulo contact del mio profilo.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accederedirettamente all'articolo sul Blog e parteciparealla discussione: http://it.emcelettronica.com/progetto-ambizioso-eos-book

3

RFID: un acronimo millepossibilità2 Ott 2012 di Piero Boccadoro

Il livello di maturità della tecnologia RFIDpermette a tutti noi, indipendentementeda cosa vogliamo realizzare, di trovare unvalido supporto tecnologico. Un aspettofondamentale è la possibilità di realizzarereti di interconnessione anche wirelessche servano agli scopi più disparati.

I tag RFID (acronimo che sta per Radio FrequencyIDentification) sono diventati rapidamente unarisposta affidabile e di grande utilità neicampi più disparati. Tempo fa ci siamooccupati della raccolta differenziata e della suagestione; oggi vedremo come questa tecnologiapotrebbe risultare estremamente utile anche nellosmaltimento dei rifiuti.

Uno sguardo al sistemaLa struttura del sistema, vista in maniera moltoschematica, è composta sostanzialmente da solequattro componenti:

• tag

• antenna trasmittente

• lettore

• middleware

mentre il funzionamento è sintetizzabile in pocheelementari fasi. Il tag (trasponder), infatti, siattiva quando passa all'interno della regione incui l'antenna è in funzione. Il tag interagiscecon la stessa fornendo una risposta che loidentifica come attivo; la risposta in questioneviene quindi rilevata e, tramite il lettore (che puòessere un semplice lettore oppure un transceiver),

inviata al middleware. Quest'ultimo è incaricatodi elaborare opportunamente l'informazione edinviarla al software di gestione.

Fisicamente...Alla base del funzionamento di questo sistemac'è un semplice fenomeno di accoppiamento,tanto più marcato quanto minore è la distanzatra gli elementi che compongono l'interosistema. La sorgente del campo elettromagneticoall'interno del quale il conduttore si trova divieneevanescente man mano che il conduttore stesso“esce dalla portata della sorgente”.

Questo fenomeno sottintende all'esistenza di uncampo di induzione che dimostra la mutuainterazione tra i componenti nella condizione dicampo vicino.

Quando la distanza aumenta, ovvero ci troviamonella condizione di campo lontano, si verificanofenomeni di accoppiamento che sono il fruttodell'irradiazione del campo elettromagnetico ingioco.

Nei sistemi RFID entrambi questi fenomenipossono essere sfruttati; esistono, infatti, sistemi abassa frequenza (LF), alta frequenza (HF) oppuread altissima frequenza (UHF). Nei primi dueil campo induttivo fornisce l'energia necessariaall'attivazione del chip sul tag. Quando cispostiamo ad altissima frequenza, invece, è ilcampo radiativo a determinare l'attivazione.

Possiamo pensare, nell'ipotesi esemplificativa,che il sistema funzioni sulla base di una logicabooleana che identifichi l'oggetto come “assente”oppure “presente”.

In questo caso, il lettore genera uncampo elettromagnetico con una frequenzaben determinata; quando il tag dovessepassare all'interno di questo campo, la quotaparte di energia cui è soggetto sarebbesufficiente a farlo entrare in risonanza.Questo principio viene largamente utilizzatonei dispositivi antitaccheggio presenti in tuttii centri commerciali, supermercati, negozi diabbigliamento che frequentiamo.

La risposta fornita dal trasponder induce unavariazione nel campo magnetico che vienegenerato dal trasmettitore ed è proprio questavariazione che può essere rilevata, se siamo a breve

4

distanza. Ecco per quale motivo il “passaggio” trale barre dell'antitaccheggio non è, tipicamente, piùgrande di 1 m e mezzo.

Le antenne che vengono utilizzate all'interno deilettori formano, dunque, dei portali che rilevanola presenza di oggetti metallici; essi operano nellarange di frequenze dei MHz. I valori dipendonodalle normative imposte; tipicamente, parliamodi radiazioni non ionizzanti e di locali adibiti aduso pubblico per cui facciamo riferimento allanormativa “bassa tensione” ed alle linee guidaper l'esposizione alle radiazioni non ionizzanti delsoggetto inconsapevole.

Quando l'oggetto viene pagato regolarmenteil tag viene disattivato direttamente in cassa:accade, tipicamente, che si veda strisciarel'oggetto acquistato su una particolare postazionepredefinita in cassa. Li è localizzato un fortecampo magnetico che stimola con un campomagnetico molto intenso l'intera struttura,rendendola non più funzionante.

Vedremo che sebbene sembri antieconomicodanneggiare volontariamente un sistemasofisticato, la larga diffusione ha permesso direndere i costi molto bassi. I dispositivi vengonoquindi progettati proprio per essere distrutti.

Il sistema funziona esattamente come si vede nellafigura qui di seguito.

Per prodotti che contengono metallo è necessariolavorare a frequenze basse, ancorché sempredell'ordine dei kHz. Questo perché, in questo caso,il tag di tipo e.m. viene realizzato con materialiche sono “resistenti” ai campi elettromagneticiin gioco. Questo significa che è necessarioche si preveda una realizzazione sulla base dicaratteristiche magnetiche fortemente non lineari.Gli stessi di cui stiamo parlando sono necessari pergenerare frequenze multiple del segnale del lettorefavorendone, così, la lettura.

Sebbene sia indispensabile per realizzarle inquesto modo, queste tag presentano unosvantaggio: è indispensabile mantenere unorientamento preciso perché il tag possa essere invisibilità. Per ovviare a questo problema, vengonorealizzati avvolgimenti multipli che possonorilevare diverse posizioni del tag in transito.

In questo caso, la disattivazione è permessa dauno strato di materiale magnetico che rimanemagnetizzato una volta che si trova all'interno diun campo magnetico opportuno.

Se nel caso dei tag precedenti abbiamo notatoche i dispositivi sono “sacrificabili”, tanto darimanere all'interno dei capi d'abbigliamento odei DVD appena acquistati anche dopo la vendita,e l'acquirente può tranquillamente non sapereneanche dove si trova, questo secondo tipo èriutilizzabile.

Oltre i sistemi ad 1 bitFinora abbiamo parlato di sistemi che sono ingrado di rilevare il tag qualora esso si trovi nella“raggio di azione” del lettore. Esistono, però,sistemi molto più maturi in cui la comunicazione èbidirezionale perché qui è presente un chip, che hauna sua memoria e la capacità di elaborazione percomunicare, talvolta utilizzando la crittografia,quantitativi maggiori di dati.

Come nella maggior parte delle comunicazioni,anche in questo caso esistono soluzionihalf-duplex e full-duplex: nel primo casol'interrogazione e la risposta sono operazioniche richiedono slot temporali separati. Nelsecondo, invece, le due parti sono in grado dicomunicare anche contemporaneamente; questaseconda modalità e resa possibile dall'utilizzodi frequenze distinte, ad esempio in relazionearmonica tra loro.

Nei sistemi evoluti che utilizzano n-bit, il lettorefornisce l'energia di cui necessita il tag grazie aduna spira trasmittente, più o meno allo stessomodo di ciò che avviene in un trasformatore.

5

Questi sistemi operano in campo vicinoed hanno come caratteristica un livello diefficienza nella comunicazione abbastanza basso;si intuisce che questo aspetto implica unaforte localizzazione spaziale, ovvero una scarsa“autonomia” o flessibilità. Distanze superiori almetro diventano davvero difficile da gestire. Peril dimensionamento corretto, in ogni caso, ènecessario riferirsi non ha distanze lineari mamultipli di lunghezze d'onda.

Mano a mano che la frequenza cresce, a parità disistema in uso, le dimensioni diminuiscono; cosìsistemi che utilizzino frequenze molto alte (VeryHigh Frequency oppure Ultra High Frequency)possono beneficiare della presenza di antennemolto efficienti disposte all'interno dei tag.

Questo tipo di dispositivi può essere stampatosotto forma di etichetta, proprio come accadenel caso dei DVD. La struttura risulta dispessore assolutamente trascurabile e può essere“camuffata” proprio dal codice a barre. Lalarghissima diffusione sul mercato, dovutaall'affidabilità dell'intero sistema, ha permesso,come dicevamo, una compressione tale nei costiche i tag possono non essere recuperati.

Cosa usare?Alcune delle soluzioni di cui abbiamo brevementeparlato risultano sensibili all'orientazione: questotipo di antenne sono certamente poco indicatenell'antitaccheggio perché l'orientazione non è unparametro che si può tenere sotto controllo. Eccoper quale motivo, in questo caso, si cerca direalizzare antenne omnidirezionali.

Tra i parametri notevoli di cui è necessariotener conto, cioè il guadagno, ovverouna misura della capacità dell'antenna di“illuminare” una determinata porzione di spazioconfinante. In questo caso particolare, lobiche dimostrino direzionalità sono da evitareproprio perché l'antenna deve essere in grado

di distribuire l'energia elettromagnetica datrasmettere piuttosto che concentrarla.

Di contro, però, è normalmente vantaggioso unbuon confinamento spaziale per cercare di ridurrele interferenze con sistemi simili.

Altro parametro tipico delle antenne ela polarizzazione che può essere lineareoppure circolare. Si tratta, semplicemente,dell'orientazione del campo elettromagnetico cheviene irradiato dall'antenna. Quando si scegliela polarizzazione circolare il tag è insensibileall'orientamento.

I tag al lavoroCome visto nell'immagine mostrata in precedenza,formati, geometrie, spessori e caratteristicheconformazionale e funzionali possono esseremolto diverse tra loro. Le antenne possono ancheessere disposte in geometria planare a disegnareschiere.

La struttura disegnata dal varco costituito dalleantenne è estremamente versatile e si presta benea diverse applicazioni; non solo antitaccheggio,quindi, ma anche controllo delle merci e degliaccessi. Ad esempio, un tag RFID può essereutilizzato per verificare chi e quando è arrivato sulluogo di lavoro.

Quando si ha a che fare con flussi, specie se si trattadi merce, è importante garantire la posizione deltag rispetto al lettore, per assicurare l'avvenutalettura.

In alcuni casi, specie quando il movimento avvienein maniera molto rapida, è possibile pensare ad unsistema che sfrutti un alto valore di di reattività,“guardando” in una zona precisa, in maniera daaumentare la probabilità di identificazione.

I tag RFID nella pratica: dallateoria i fattiTalune applicazioni possono essere relativeall'identificazione dei prodotti dei processi

6

industriali, al controllo dei veicoli in moto (magaridurante una revisione), all'identificazione degliimpiegati. Oppure, come dicevamo in apertura,alla gestione dei rifiuti.

Nell'identificazione degli animali, resasinecessaria nell'ottica di garantire la qualità ela provenienza delle carni, la sostituzione dellamarchiatura con l'utilizzo di tag RFID ha reso tuttomolto più semplice non soltanto per gli animali,per cui l'impianto non è affatto doloroso, maanche per chi deve effettuare i controlli. Il tag,infatti, è unico per ciascun animale, può essereletto solamente con lettore opportuno e garantisceinformazioni riguardo le vaccinazioni e lo stato disalute dell'animale.

Questa tecnologia può anche sostituire i collarielettronici o altre soluzioni per animali domestici.

Anche la gestione dell'inventario o di unmagazzino veniva effettuata manualmente; siintuisce come le operazioni di ispezione,l'aggiornamento delle banche dati ed anche larichiesta di approvvigionamento sono operazioniche possono essere notevolmente semplificategrazie all'utilizzo di questi tag.

In campo biomedicale, quindi ci spostiamosull'uomo e sulla questione della salute, è facileimmaginare che potremmo utilizzare la tecnologiaRFID per tenere traccia delle vaccinazioni, delgruppo sanguigno, delle intolleranze alimentarie delle allergie. L'immagazzinamento dei datibiomedici ma anche la teleassistenza nonché ildosaggio di farmaci ed il monitoraggio dellefunzioni vitali sono tutte funzioni che potrebberoessere automatizzate e svolte in pochi secondi.

Anche l'industria automobilistica, che non èdissimile da quei processi produttivi di cuiparlavamo in astratto in precedenza, potrebbeben beneficiare di tale introduzione, non foss'altroche il controllo continuo sul flusso produttivogarantisce una migliore qualità finale del prodottoed è in linea con le direttive per la certificazione,l'accreditamento e la garanzia della qualità.

Come si può usare nelladifferenziata?E veniamo, infine, alla gestione dei rifiuti. Ilriciclaggio rappresenta una parte importantedella gestione dei rifiuti. Nel 2009 nasce, su

iniziativa del ministero dell'ambiente e dellatutela del territorio e del mare, il sistema dicontrollo della tassabilità dei rifiuti, il quale tienetraccia dell'intera filiera dei rifiuti, ne controllal'efficienza e l'efficacia ed interviene qualoravengano rilevate delle anomalie.

Questo sistema si pone l'ambizioso obiettivo diridurre tempi e complicazioni delle procedureinerenti allo smaltimento e vuole anche ridurrei costi sostenuti dalle imprese. Questi ambiziositraguardi possono essere raggiunti proprio grazieall'uso dei tag perché essi possono permetterela gestione della logistica dei rifiuti, comegià succede in Europa. Addirittura, è possibilereperire soluzioni “off-the-shelf” (“sugli scaffali”).

La possibilità di identificare, leggere, scrivere edi mutua interazione tra tag può permettere unelevato grado di automatizzazione nella gestionedei rifiuti. Si potrebbe, infatti, utilizzare diversitag, ad esempio sui bidoni e sui camion in modotale che non appena il bidone si avvicina alretro del camion, i tag si “riconoscono” e restamemorizzato il dato di avvenuta “discarica”.

Questo stesso lettore potrebbe essereopportunamente rimpicciolito per essereindossato dall'operatore ecologico incaricato dellaraccolta e trasmesso automaticamente ad unsistema di gestione centrale che ne tenga traccia.

Così, l'identificazione della tipologia di rifiuto,connessa alla tipologia di bidone, potrebbeavvenire tramite etichette divise per tipo. Intal modo sarebbe possibile correlare l'avvenutaraccolta dello specifico settore di rifiuti,l'operatore che ha compiuto l'operazione ed ilgiorno in cui lo scarico del bidone ha avuto luogo.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accedere direttamenteall'articolo sul Blog e partecipare alladiscussione: http://it.emcelettronica.com/rfid-acronimo-mille-possibilità

7

Il tuo sistema è affidabile?Scoprilo grazie all'MTBF4 Ott 2012 di Piero Boccadoro

La materia dell'affidabilità dei sistemi, deiprocessi nonché dei prodotti è un campovastissimo all'interno del quale si sente lanecessità di fare ordine utilizzando figuredi merito studiate ad hoc. Così discendonouna serie di concetti che rendono questamateria strutturata e rigorosa. Quella dioggi è un'introduzione al “tempo mediotra i guasti" MTBF ma approfondiremoanche l'MTTF, l'MTTFd, il ROCOF el'MTTR ed i parametri RAM: affidabilità(Reliability), disponibilità (Availability),manutenibilità (Maintainability).

Quando si decide di realizzare un qualunquesistema, o prodotto, che è frutto di un processoproduttivo, esiste la necessità di garantirnela manutenibilità ma anche la durata neltempo. Così, la teoria probabilistica suggerisce lanecessità di introduzione di una serie di figuredi merito che ci permettano di caratterizzare nonsoltanto la vita ma anche la resa degli oggetti inesame.

Il sistema, o il prodotto, nel tempo potrebbeaver bisogno di essere revisionato e quindisarà necessario effettuare uno studio statistico,o caratterizzare in termini statistici, sui tempie sui modi di intervento. Ad esempio, se unaditta ha in gestione un impianto di illuminazionestradale, sarà altamente sconveniente, dal puntodi vista economico, effettuare verifiche ispettivegiornaliere per controllare che tutte le lampadeall'interno degli apparecchi siano in funzione enon effettivamente danneggiate. Piuttosto saràuna scelta intelligente quella di caratterizzareil sistema specifico sulla base di un'analisi

accurata di tutti gli interventi di cui può averbisogno. Sempre rimanendo nell'ambito di questoesempio, potremmo subito ragionare sul fattoche un impianto di illuminazione stradale avràbisogno della sostituzione delle lampade, dellapulizia periodica degli apparecchi, della revisionedell'impianto elettrico e per ciascuno di questiinterventi sarà necessario considerare il costodella manodopera, degli eventuali pezzi che sonoda sostituire e così via dicendo.

Affrontare questi interventi dal punto di vistastatistico garantisce, come tutti noi facilmenteintuiamo, che i costi generali di intervento siriducono perché è molto meno costoso poterandare sul posto a sostituire 10 lampade fulminatepiuttosto che mettere in campo tutto il sistemadi gestione della sostituzione di una lampada perciascuna che si sia fulminata volta per volta. Sesi comincia a considerare che una lampada durain media 10.000 ore (anche se questa è una cifraindicativa e assolutamente non precisa perchédipende da tanti fattori tra cui il tipo di lampada!),che gli apparecchi d'illuminazione vanno pulititanto più frequentemente quanto maggiore è laquantità di smog cui sono esposti (perché sel'impianto si trova in una galleria molto lungacertamente avviene prima), e via dicendo, si mettea sistema tutta una serie di fattori che rendono lagestione più efficace ed organica.

Ma questo discorso non vale, certamente,soltanto per l'esempio che abbiamo citato maanche per la manutenzione necessaria su unimpianto industriale che effettui una determinataoperazione, ad esempio una saldatrice.

È evidente, quindi, che queste considerazionipossono essere applicate a qualunque aspettodella vita produttiva del tessuto industriale cosìcome lo conosciamo oggi.

Vediamo allora quali sono le figure di merito chepossono aiutare a caratterizzare questi processi.

MTBF = Mean time betweenfailureLetteralmente vuol dire "tempo medio fra guasti";si tratta di una stima sul tempo che intercorretra il verificarsi di un "fallimento" (che noitraduciamo propriamente con guasto) ed il

8

successivo. In pratica è una misura dell'affidabilitàdel sistema, del processo o del prodotto. L'oggettodell'analisi è quasi irrilevante se si considera cheil concetto è quello della durata media. Questoindicatore può essere calcolato come la mediatemporale aritmetica tra i guasti del sistema inesame. Si tratta, tipicamente, di un modello cheprevede l'ipotesi che non appena il sistema si sia"guastato", venga immediatamente ripristinato.Questa ipotesi risulta esemplificativa ed utile inquesto momento, anche se, vedremo tra un attimo,che non è esattamente così perché esiste un'altrafigura di merito di interesse che prende il nomedi "mean time to repair" (MTTR) il cui scopo èproprio quello di caratterizzare il tempo medio cheintercorre tra il guasto e la successiva riparazione.

È chiaro che questi indicatori contribuiscono alprocesso di revisione, di controllo e, se vogliamo,di mantenimento dello standard qualitativo. Inquest'ottica è necessario, soprattutto, definire checosa per noi è un guasto ovvero che tipo disistema stiamo analizzando e come può guastarsi.Altra cosa che è necessario considerare e che ilsistema viene assunto riparabile ma questo non ènecessariamente sempre vero ed è per questo chebisogna considerare il tipo di guasto ed il tipo disistema, o di processo.

Per capire come un sistema può guastarsi ènecessario, prima di tutto, definire il concetto diguasto che però risulta piuttosto intuitivo perchéper guasto possiamo intendere qualunque tipodi alterazione o malfunzionamento o anomaliaoperativa rispetto alle condizioni di progettodel sistema. Ciò vuol dire che non appena ilprocesso dovesse produrre un prodotto anchesolo leggermente non conforme a quello risultantedall'operazione di un macchinario perfettamentefunzionante, allora sussiste il concetto di guasto.Ovviamente questo non è sempre rigorosamente

vero in questo modo perché, a seconda di unaserie di parametri tra cui il budget disponibile, èpossibile che ci siano alterazioni "tollerate" chegarantiscono comunque un prodotto conformealle specifiche anche se non rigidamente"perfetto".

Per verificare che un sistema o un processo stianofunzionando in maniera corretta sarà necessarioprevedere un'ispezione di tutti i prodotti che siritiene utile controllare. L'analisi che può essereeffettuata in questo caso può prevedere l'utilizzodi metodi di campionamento per attributi pervariabili.

La stima del valore MTBF rappresenta unelemento importante, quindi, nello sviluppo deiprocessi e così una serie di figure professionaliinquadrate nello studio e nella caratterizzazionedi questi parametri sono deputate a verificare evalidare i processi secondo metodi o standardche si riferiscono a campi specifici oppureche sono codificati. Alcuni esempi in tal sensosono rappresentati da MIL-HDBK-217F, TelcordiaSR332, Siemens Norm, FIDES,UTE 80-810(RDF2000). Scopo di questi metodi è quello diconcentrare gli sforzi di progetto per cercare dimigliorare quelli che sono i suoi punti deboli.

Tenendo a mente i concetti espressi fino a questomomento, ci si riferisce al MTBF come allasomma dei “periodi di funzionamento", ovvero gliintervalli di tempo che intercorrono tra l'inizio del"downtime" fino alla fine del "uptime", rapportatoal numero di guasti che sono occorsi.

Questa figura di merito può essere, spesso,indicata con la lettera θ e può essere anche definitain funzione del valore atteso della funzionedensità di probabilità di fallimento (ovvero comefunzione densità di tempo intercorso fino al guastosuccessivo) calcolando

per la quale funzione, ovviamente, vale la relazionecumulativa

Oltre l’MTBFCi sono molte grandezze caratteristiche e figure dimerito significative che possono essere utilizzatein sostituzione oppure in contemporanea conquella di cui abbiamo parlato; esiste il MTBSA(acronimo di Mean Time Between System Abort)

9

ed anche MTBCF (che sta per Mean TimeBetween Critical Failures) oppure ancora ilMTBUR (sigla che significa Mean Time BetweenUnit Replacement). Ciascuna di esse risultautile a seconda dell'applicazione, pertanto questanomenclatura viene utilizzata anche per effettuareuna differenziazione tra i tipi differenti di guastoche possono occorrere. In particolare è, ora, il casodi specificare che il guasto non è necessariamenteimpedente per il funzionamento o definitivo mapuò essere anche, come accennato in precedenza,una "deriva" del processo. Un esempio tipicopotrebbe essere la realizzazione della filettaturadi un tubo d'acciaio che ha necessità di essererigidamente uguale a se stessa per garantirelo standard ma il processo potrebbe produrrefilettatura leggermente anomale come risultato diuna macchina la cui precisione sta degradando neltempo.

Piuttosto che il calcolo dell’MTBF, a volte, sipreferisce utilizzarne l'indicatore MTTF, ovveroil cosiddetto "tempo medio al guasto". Questascelta viene spesso adottata nel caso in cuistiamo parlando di sistemi il cui funzionamentoviene completamente ripristinato a seguito diun guasto. Questo è concettualmente diversoda quello che succede con l’MTBF perchéquesto secondo indicatore "rileva" l'intervallo ditempo che intercorre tra guasti in un sistemache venga riparato. Esiste, infine, l’MTTFdche è fondamentalmente lo stesso indice maconsidera soltanto i guasti dei quali potrebberogenerare situazioni pericolose, ad esempio danniirreversibili ai macchinari oppure condizioni difunzionamento che non rispettano gli standardsulla sicurezza.

Calcolo degli indicatoriÈ importante, adesso, accennare alla metodologiadi calcolo dell’MTTF e dell’MTTFd. Per entrambidefiniamo B10 il numero di operazioni che ildispositivo sarà in grado di effettuare entro e nonoltre il 10% del campione di quelli che risulterannodanneggiati e con B10d l'analoga quantità riferitaal caso di potenziale danno. Se nop rappresenta ilnumero delle operazioni che il processo che segue,avremo:

MTTF = B10/(0.1 nop) e MTTFd = B10d/(0.1 nop)

Tasso di guastoCon il termine "tasso di guasto" si vuoleindicare la frequenza con la quale un componentedi un sistema, elettronico o meno, tende arompersi. Questa cifra di merito viene espressain termini di unità danneggiate per ogni ora (difunzionamento). Viene, generalmente, indicatacon la lettera λ e riveste un ruolo di grandeimportanza nell'affidabilità.

Il tasso di guasto di un sistema dipende,solitamente, dal tempo con un tasso che varianell'ambito del ciclo di vita del sistema stesso.Immaginando di rivolgere la nostra attenzione alcaso di un'automobile, il suo tasso di guasto perun certo numero di anni di servizio (supponiamocinque) può essere molto più grande rispettoal tasso di guasto riferito ad un periodo ditempo della stessa durata ma precedente. Peressere chiari, i primi cinque anni di utilizzola macchina subirà meno riparazioni rispettoai secondi cinque anni e così via nel tempo.È questo il motivo per cui negli interventi dimanutenzione programmata, nelle previsioni e neitagliandi si cerca di controllare i vari componentidell'automobile in funzione della sua età, calcolatadal momento dell'immatricolazione. È, infatti,altamente improbabile un danno alla cinghiadi trasmissione dopo 5000 km o che rendanecessaria la sostituzione degli pneumatici doposoli 2000 però, ecco, il termine usato è proprioquello giusto: è improbabile. E questo dipende dalfatto che, tipicamente, l'usura è di un certo tipoe si suppone che sia più o meno omogenea inmaniera trasversale rispetto al tipo di automobilein esame e che si possa standardizzare il tempomedio di funzionamento senza guasti, assimilandoche l'auto sia il sistema è che i suoi componentisiano i pezzi che possono danneggiarsi.

Nella pratica, il tempo medio tra i guasti, l’MTBF,viene spesso utilizzato in luogo del tasso di guasto.Questa approssimazione è valida ed utile quandoil tasso di guasto può essere assunto costante,il che corrisponde al caso in cui il sistema inesame sia comunque complesso e costituito dadiversi componenti. In alcuni campi applicativi,poi, questa assunzione risulta particolarmente

10

utile; esempi di questa affermazione sono gliambiti aerospaziale e militare.

Per questo particolare studio viene, spesso evolentieri, utilizzato un diagramma noto come"vasca da bagno", come riportato in figura

A tale curva si fa anche riferimento con il nome di"periodo di vita utile".

Il motivo per il quale si preferisce utilizzarel’MTBF è dato dal fatto che l'uso di numeri interipositivi grandi in modulo, di solito, risulta pocointuitivo o comunque non semplice; quindi, inluogo di cifre come 150.000 ore oppure 100.000km, si utilizzano i numeri più piccoli come 1,5oppure 3 all’ora.

L’MTFB è un parametro importante quando sivuole caratterizzare un sistema specie quandoil tasso di guasto ha necessità di essere gestitocon grande attenzione; un esempio sopra tutti èquello cui abbiamo già fatto cenno in precedenza,ovvero quando il guasto del sistema possaportare un impianto industriale a lavorare incondizioni potenzialmente dannose per la salutedei lavoratori. Ecco per quale motivo questafigura di merito compare spesso nei parametridi progetto che si desidera inseguire, quindidiventa una specifica. Da questo parametro,inoltre, dipenderà, ovviamente, anche la sequenzadegli interventi di manutenzione e di controllo.Specifiche politiche di gestione potrebbero portareanche all'istituzione di scadenze di controllo

intermedie che non siano soltanto verificheispettive esterne ma anche interne all'azienda.

Nell'ambito di particolari processi, detti processidi rinnovamento, in cui il tempo di riparazione diun guasto può essere trascurato e la probabilitàdel guasto rimane costante nel tempo, il tassodi guasto può semplicemente essere visto comel'inverso dell’MTBF.

Un criterio simile viene utilizzato nell'industriadel trasporto, specialmente quando parliamo diferrovie e trasporto su gomma; lì un parametro"cruciale" è rappresentato dall’MDBF, ovverola "distanza media (percorsa) tra i guasti".Questa figura di merito viene introdotta al finedi correlare le distanze percorse con i carichitrasportati ed i mezzi utilizzati.

I tassi di guasto sono fattori importanti quandosi voglia calcolare variabili come il premio diun'assicurazione, i costi di manutenzione delsistema, ma trova largo impiego anche nel campodel commercio più in generale e della finanzaperché risulta fondamentale per dimensionareuna grande quantità di parametri.

Vediamo di darne, però, una definizione piùformale; possiamo definire il tasso di guastocome "il numero totale di guasti tra oggettidi una popolazione rapportato al tempo dioperatività dell'intera popolazione nell'ambitodi uno specificato intervallo di rilevazione, incondizioni specificate. (MacDiarmid, et al.)

Anche se il tasso di guasto viene spessoconsiderato come la probabilità che il guastosi verifichi in uno specifico intervallo temporaleche non abbia visto guasti prima dell'istante ditempo di osservazione, questa grandezza nonrappresenta affatto una probabilità perché puòsuperare il valore unitario. Non si tratta dunquedi una variabile la cui cumulativa verifica sia lasomma della probabilità totale.

Inoltre, il fatto che questa grandezza sia espressain percentuale potrebbe essere percepito comeuna misura relativa, specialmente se dovesseessere calcolato per sistemi che siano ripristinabilio che non abbiano un tasso di guasto costante. Puòessere definito, grazie all'utilizzo della funzione"affidabilità" R(t), come il rapporto

λ(t)=f(t)/R(t)

11

in cui la funzione f indica il tempo cheintercorre fino al primo guasto mentre R(t)=1-F(t). Quest'ultima posizione è lecita in quanto Fè una funzione cumulativa. Se si fa riferimento,dunque, ad un intervallo di tempo Δt, si ha:

λ(t)=(R(t)-R(t+ Δt))/ (Δt R(t))

Così, la funzione λ dimostra di essere unaprobabilità condizionata alla funzione densità delguasto. La condizione è rappresentata dal fatto cheil guasto può non aver avuto luogo entro l'istantedi osservazione.

Il concetto di rischioDa quanto detto finora discende che esiste, edè pregnante, il concetto di rischio associato alfatto che il guasto si sia verificato. Così esistonodue figure in merito fondamentali che riescono adescrivere queste possibilità e sono: l’hazard rateed il ROCOF (Rate of OCcurence Of Failure).

Questa grandezza non è affatto omologa al tassodi guasto, benché molti facciano confusione.Il rischio, ovvero "hazard rate", è un concettodiverso dal ROCOF così come sono diversientrambi dal tasso di guasto perché il ROCOF puòessere utilizzato solamente per sistemi che sianoripristinabili e quindi riparabili.

Se si vuole calcolare il tasso di guasto ancheper intervalli di tempo più piccoli si ottiene la"hazard function", che indichiamo con h(t); questagrandezza diventa il tasso di guasto istantaneo (!)se l'intervallo temporale lo facciamo tendere a zero

calcoliamo, dunque, questa grandezza come limitedi h(t). È evidente che un tasso di guasto continuodipenda dalla distribuzione F(t) che, comeabbiamo già detto, è una funzione cumulativa ed èdeputata a descrivere la probabilità di guasto finoal tempo t.

Pertanto possiamo scrivere:

Così la "hazard function" può essere definita come:

I tassi di guasto possono essere espressiutilizzando qualunque unità di misura temporalema, come si intuisce da quello che è stato dettoin precedenza, è molto più comune l'utilizzo delleore piuttosto che di minuti o secondi, per viadelle grandi (in modulo) quantità in gioco. È

anche molto frequente che queste grandezze sianoespresse con notazione ingegneristica, ovvero inparti per milione (ppm).

I guasti nel tempoEsiste un'altra figura di merito, un ulterioretasso che è necessario considerare ed è il FIT,acronimo di Failures In Time, cioè "guasti neltempo"; si tratta del numero di guasti che cisi può aspettare che avvengano in 1 miliardodi ore di funzionamento del dispositivo. Ilnumero così grande suggerisce che l'industria chemaggiormente può beneficiare dall'introduzionedi questa figura di merito è proprio quella deisemiconduttori, per i quali il tasso di guasto èestremamente basso proprio perché si segue ildiagramma a vasca da bagno.

Esiste una relazione precisa tra il FIT e l’MTBF edè la seguente:

MTBF = 1,000,000,000 x 1/FIT.

Mean Time to Repair (MTTR)Questa cifra è significativa perché si utilizza perdare una misura della manutenibilità dei sistemiche è possibile riparare. Rappresenta il tempomedio necessario per effettuare la riparazione delcomponente danneggiato e può essere espressamatematicamente come il tempo totale speso pereffettuare operazioni di manutenzione correttivadiviso per il numero totale di interventi dimanutenzione nel periodo di tempo specificato.

Una delle grandezze che resta "esclusa" da questaanalisi è il tempo necessario per far pervenirei ricambi oppure perché gli operatori si portinosul luogo dove deve essere effettuato l'interventoe questo dipende dal fatto che questi fattorivengono tenuti in conto nelle dinamiche logistichee amministrative e possono rientrare nel bilanciodel "Downtime".

Esistono progetti (processi) che fanno parte diuna classe che prende il nome di "fault-tolerant",ovvero resistenti ai guasti. Si tratta di sistemiche possono essere realizzati grazie al principiodella ridondanza oppure che, in qualche modo,sono in grado di autoripararsi. Qui l’MTTR viene

12

tipicamente considerato comprensivo del tempodi "latenza" del guasto, ovvero il tempo necessarioperché il guasto venga rilevato (oppure divengaevidente).

L’MTTR è, come intuitivamente da tutto questodiscorso si arguisce, parte delle condizionicontrattuali proprio per l'azienda che nell'esempioprecedente aveva in gestione l'impianto diilluminazione stradale oppure di una societàdi revisione esterna che controlli il processodi fabbricazione di quell'automobile di cui siparlava prima. Una delle condizioni che sipotrebbe chiedere di rispettare è che l'interventoed il ripristino delle condizioni ottimali difunzionamento avvengano entro e non oltre le 24ore, cosa assai frequente quando il rischio per lasalute dei lavoratori diventa alto.

Ad ogni modo, sempre rimanendo nel contestodel contratto di manutenzione, potrebbe esseremolto importante effettuare una distinzione sullabase del fatto che l’MTTR misuri il tempo mediotra l'istante in cui il guasto viene scoperto perchéè palese fino al momento in cui il sistema vieneripristinato (Mean Time to Recovery) piuttostoche una misura del tempo trascorso tra ilmomento in cui inizia la riparazione e quello incui il sistema viene ripristinato (Mean Time ToRepair).

I parametri RAMCaratteristiche che sono fondamentali per isistemi, comunque essi siano conformati sitratta di: affidabilità (Reliability), disponibilità(Availability), manutenibilità (Maintainability).

Anche in questi casi, e per queste specifichearee, vengono definiti degli standard e dei criterial livello legislativo. Com'è noto esistono normee regole tecniche che possono rappresentarestandard dei jure o de facto oppure essere del tuttovolontarie. A seconda del tipo di norma alla qualesi fa riferimento i criteri possono essere diversi eper questo conviene far riferimento ad una normache specifica esattamente di che tipo di grandezzestiamo parlando.

Secondo le UNI 10147:

• affidabilità: è la probabilità che il sistemaoperi nei modi prestabiliti così come daspecifiche di funzionamento per un datoperiodo di tempo in date condizioni;

• disponibilità: attitudine di un sistema,in un dato istante, a svolgere lefunzioni prestabilite, come da specifichedi funzionamento, nelle condizionioperative prescritte, supponendo che sianostati assicurati gli opportuni interventidi manutenzione necessaria al suomantenimento in efficienza;

• manutenibilità: è la proprietà di un sistemaad essere mantenuto, definita come laprobabilità che un'azione di manutenzioneattiva possa essere eseguita durante unintervallo di tempo dato, in condizionidate mediante l'uso di procedure e mezziprescritti. In generale i requisiti qualitatividi manutenibilità sono riconducibili adaccessibilità, estraibilità e manipolabilità.

I parametri RAM, così come dalla UNI 10147,sono sempre soggetti a modifica e aggiornatinel corso del tempo. Le disposizioni cui si fariferimento oggi sono direttive ISO (InternationalOrganization for Standardization) cui tutti gli Statimembri devono fare riferimento e che devonoimpegnarsi a recepire e far applicare.

In chiusuraQueste, è chiaro, sono solo alcune delle grandezzeche intervengono quando si cerca di stabilire,studiare, caratterizzare un sistema o un processoma rappresentano una solida base grazie alla qualesi può provare a tenere sotto controllo quellacomponente aleatoria di cui parlava Murphyperché il significato delle sue parole non eradavvero la resa della scienza al caso ma uno sproneagli scienziati per ragionare provando a teneresotto controllo tutti i parametri che servono inmodo da non avere quelle sgradite sorprese che unpo' tutti tendiamo ad etichettare come "sfiga".

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

13

Di seguito il link per accedere direttamenteall'articolo sul Blog e partecipare alladiscussione: http://it.emcelettronica.com/tuo-sistema-è-affidabile-scoprilo-grazie-allmtbf

14

NFC: il grande esclusodell'iPhone 59 Ott 2012 di Piero Boccadoro

Per alcuni, è la "solita" rivoluzione". Peraltri, "solo" un marchingegno infernale.Non importa di quale "squadra" facciateparte: l’iPhone 5 è arrivato! E tra tuttele novità che la Apple ha introdotto paremancarne una che avrebbe veramentepotuto dar vita alla rivoluzione delmodo in cui oggi concepiamo l'interazionecon gli oggetti. NFC, ancora una volta,sembra voler dire (per la Apple) "Not-For Commerce". Vediamo invece cosasignifica la tecnologia NFC e cerchiamodi capire i motivi dell'esclusione da partedi Apple, potrebbe averci visto giusto,ancora una volta!

Di recente, il nuovo nato di casa Apple ha visto laluce ed oltre alle solite polemiche tra chi è devotoseguace della religione fondata da Steve Jobs echi invece ne è oppositore, vanno fatte alcuneconsiderazioni più oggettive.Tra le tante leggi del mercato, così come loconosciamo oggi, ce n'è una dalla quale non si puòproprio prescindere: quando un nuovo prodottonasce, deve fare qualcosa di più di quello che giàfanno i correnti e possibilmente far meglio il resto.

Così, una delle novità più attese per ilnuovo iPhone era la possibilità che venisseroimplementate alcune soluzioni nel campo delleNear-Field Communications.Samsung, Motorola e Nokia, tra le altre, che oggirappresentano aziende rivali e dirette concorrenti,lo hanno già fatto ma questa volta l'aziendaamericana ha deciso di "andare sul sicuro".Tuttavia non tutti i modelli di telefoni cellulari

e smartphone sono disponibili oggi con pienosupporto di questa tecnologia.

Quando il responsabile del marketing PhilSchiller, durante una breve intervista, ne haspiegato le caratteristiche, molti si aspettavanocerto che queste tre letterine fossero pronunciatema dopo aver spiegato le nuove caratteristichedel display e la potenza di calcolo del processorel'attesa non è stata ripagata. I fan, i giornalisti,i presenti, com'è facile immaginare, sono rimastidelusi. Apprendere che il nuovo iPhone nonincluderà alcuna tecnologia NFC pare davverorappresentare un'occasione persa.

Questa tecnica, per chi ne sentisse parlare per laprima volta, rappresenta un complesso sistemadi apparati ed informazioni che permettonol'interazione del cliente, o più in generale dellapersona, con una serie di servizi che vanno dalpagamento del conto in un ristorante o di uncapo di vestiario, alla prenotazione del ticket inun museo oppure in un albergo. Ma queste sonosoltanto alcune possibilità che si celano dietro lasigla NFC.

La gestione delle carte di credito, delleprenotazioni, dei coupon ma anche dei QRcodeoppure dei barcode può esser fatta grazie allalettura dei dispositivi con il semplice sistema dellaprossimità.E sebbene soltanto parlarne aiuta ad immaginareun mondo fatto di interazioni più veloci eavveniristiche, la "rivoluzionaria" compagniaamericana pare abbia deciso che per lei questarivoluzione, per ora, “non s’ha da fare”.

L'idea che sta alla base delle tecnologie NFCè semplice: sostituire il gesto della "strisciata"della carta al semplice acquisto tramite passaggiovicino ad un terminale. Lo scenario che quest'ideaprofila, come sempre, propone pro e contro; unindubbio vantaggio è rappresentato dal minortempo d'attesa alle casse per i clienti. Tuttavia,è chiaro che il numero di dipendenti cheun grande centro commerciale, o un negozioin generale, avrebbe bisogno di avere sarebbecomunque inferiore perché non ci sarebbe piùeffettivamente bisogno del cassiere! Sebbene latecnologia rappresenti, ad oggi, il futuro, sarebbe

15

comunque necessario, da parte dei commercianti,che venissero aggiornati i loro sistemi perrenderle compatibili con la lettura di questa nuovagenerazione di carte di credito. La diffusionesarebbe realmente possibile solo allora.Tante, e comunque unanimi, le reazioni allanotizia: da Tudor Aw, della KPMG (la societàolandese di consulenza, tra le più grandi edimportanti in Europa), il quale ha commentatoquesta notizia come "la più grande sorpresa"che la presentazione potesse portare, fino a FredHuet, della Greenwich Consulting, il quale si èespresso in maniera piuttosto netta affermandoche "la decisione potrebbe costare (cara) allaApple". Secondo quest'ultimo, infatti, "è solo unaquestione di tempo prima che gli smartphonesrimpiazzino le carte di credito" ridefinendole dalmodo in cui la concepiamo oggi. Per questo, laApple potrebbe aver perso un'occasione preziosaper garantirsi la leadership in questa fettadi mercato". L'occasione, infatti, sarebbe stataghiotta perché tutte le carte di credito attualmentepresenti sul mercato avrebbero potuto essereconvertite grazie all'iPhone. Dello stesso avvisoanche Sanjay Sakhrani, analista presso Keefe,Bruyette & Woods, secondo cui l’adozione da partedel colosso di Cupertino sarebbe stata la molla cheavrebbe smosso il mercato.John Donahoe, CEO di Ebay e PayPal, si èspesso lasciato andare ad un gioco di parole, cheoggi sembra una reinterpretazione delle sceltedella Apple, come se l'acronimo NFC volesse,in realtà, di dire "Not For Commerce". Questabattuta si va ad inquadrare in uno scenarioin cui effettivamente "il gran rifiuto" di Applestranisce ed allontana la prospettiva che i nostridispositivi cellulari possano diventare, di fatto,dei veri propri portafogli a batteria. La suaposizione, peraltro non nuova, è sempre stataquella di critico osservatore; "Quando (NFC) saràuna tecnologia pronta (per essere usata)? Mai!" hadichiarato. E gli ha fatto eco anche Anuj Nayar,sempre di Paypal, che, in un’intervista a CNET,ha dichiarato "la storia ci ha mostrato che, ameno che una tecnologia non sia davvero utileper far risparmiare tempo o denaro alle persone,mai seriamente adottata." Secondo lui si tratta di"una tecnologia a caccia di un problema perchéavvicinare il telefono ad un lettore non è realmente

più veloce che strisciare una carta. Anzi, è piùlento."

Corale, quindi, la preoccupazione che ladecisione possa effettivamente causare un ritardosignificativo nell'affermarsi di questa nuovafrontiera della spesa. Tuttavia questa scelta, comespiegato da Schiller in alcune interviste rilasciate,è stata fatta per far posto a Passbook, un app chesarà in grado di mettere insieme QR-code, tickets,coupons e tessere basate su smartcode sul nuovoiPhone. Formula che vince non si cambia, quindi;sarà ancora una volta un app a gestire tutto questo.E secondo alcuni analisti di mercato si trattacomunque di un passetto in quella direzione,sebbene non ci sia la possibilità di collegare cartedi credito e di debito.

Lo stato delle cose e cos’hannofatto gli altriMa parliamo di concorrenza: mentre più o menotutti ci affanniamo a descrivere meticolosamentecos'ha fatto o non ha fatto la Apple, un analistadella Enders Analysis, Benedict Evans, commentala notizia così: "NFC è in giro da tanto tempo manon è mai andato da nessuna parte". Secondo lui,infatti, "ci sono diversi modelli di telefoni cellularipiù che moderni in grado di supportare NFC &Co. ma in realtà nessuno di questi lo fa sul serio".In pratica, è come se tutti fossero consapevoli delfatto che quello è il futuro ma nessuno sapessecome arrivarci, o vedesse un sentiero davanti a sé.Però qualcuno un passetto nella direzione giustal’ha fatto: tra i dispositivi che potrebbero fare"al caso" dell’NFC, secondo Evans, ci sarebberoil Samsung Galaxy S3, la nuova serie di Nokia,Lumias, il Google Nexus, Sony Experia e pochialtri.

Una solida baseUno degli aspetti che avrebbe reso questo"investimento" più sicuro è certamenterappresentato dall'ormai consolidato iTunesStore. C'è un cospicuo numero di utenti, stimatointorno alle 400.000 unità secondo Eddy Cue,a capo della sezione “Internet Software andservices” della Apple, il che rende il colossodi Cupertino una delle aziende con il maggiornumero di carta di credito affiliate. Si contende

16

il primato con una grandi nomi, tra cui PayPal,Microsoft (Xbox), Sony (PlayStation Network) edAmazon.Secondo Evans, invece, questa non è una sceltainsensata perché l'iPhone può rappresentare "unprodotto affidabile che i consumatori possonocomprare senza la paura che sparisca dalmercato". Ciò costituisce un vantaggio anche perle aziende che vogliono investire in questo settore.Rispetto ai concorrenti la sua opinione è che"stiano inserendo supporti tecnologici all'internodei loro dispositivi cellulari solo per vederese funzionerà. Questo vuol dire che nessunorealmente crede in questa tecnologia. Tuttavia lepersone sanno che se la Apple inserisce l’NFC nelnuovo iPhone, allora sarà anche del nuovo iPad. Sepensate a Samsung, l’S3 è NFC compliant mentreil Note 10.1 no. La gente che lavora alla Apple nonintende aggiungere caratteristiche fintanto chenon si accerta che alle persone possano davveroservire. Non hanno intenzione di inserire unatelecamera frontale se il loro sistema non prevedela video chiamata, e non sa che funziona allaperfezione".Un atteggiamento prudente e responsabile,quindi, che punta a suggerire ai clienti un sensodi organicità e struttura nella progettazione ecommercializzazione di un prodotto che devepoter servire.

Ma a questo punto la discussione si spostasu un altro terreno di confronto, ovvero lecompagnie che lavorano con Android; secondoEvans il loro grado di libertà nello sperimentareè molto maggiore perché quello che fanno è"inserire all'interno dei loro dispositivi cellulariuna tecnologia e sperare che, nel tempo,nasca il supporto software necessario per ilfunzionamento. Il problema con una tecnologiacome l’NFC è che perché valga la pena di averla,deve essere diffusa."

In America, tuttavia, questa soluzione dipagamento è già supportata da diverse società dicapitali ed aziende, nomi affermati e validi sulmercato (stiamo parlando di Isis,una joint venturetra Verizon Wireless, AT&T e T-Mobile ma ancheAmerican Express , JPMorgan Chase e Capital OneFinancial).

Ma allora, se esistono società, almeno inAmerica, che permetterebbero la diffusione,magari garantendo investimenti per effettuare unaggiornamento dei sistemi diffusi all'interno deinegozi, il problema qual è? Dove che il circolovirtuoso dello sviluppo tecnologico si inceppa?

Si tratta del proverbiale "cane che si mordela coda" perché chi produce i cellulari nonvuole accollarsi il rischio (e quindi i costi) divariare il processo produttivo in modo tale dainserire nuova tecnologia senza la garanzia cheeffettivamente funzioni già. Nel frattempo, per inegozianti, i commercianti in genere, sarebbe uninvestimento inutile effettuare l'aggiornamentodei sistemi di pagamento senza che le personepossa effettivamente poi beneficiarne (e loroammortizzare i costi!). E se è così in America,figuriamoci quanto questo durerà in Italia…Non solo, ma questo lancio controverso ha"causato" l'annuncio della Isis con il quale siritarda ufficialmente l'avvento delle tecnologieNFC di almeno un anno.

Una questione di qualitàTuttavia, ad onor del vero, è necessario specificareche le tecnologie NFC non sono le uniche chepermetterebbero il pagamento in maniera cosìsemplice ed elementare. “NFC” è un acronimoche potrebbe avere mille declinazioni, tra cuiil Bluetooth e la tecnologia RFID. È vero,quindi, che limitare lo sviluppo di questo metodoall'integrazione di un chip dedicato sembraun po' insensato. Inoltre c’è che notare come"Secure Element NFC", ovvero il metodo diautenticazione ed interazione di cui stiamoparlando, potrebbe non essere del tutto sicuroperché, potenzialmente, tutti coloro che hannopreso parte al processo produttivo di ogni singoloapparecchio potrebbero, potenzialmente, avereaccesso a dati personali. Certo, il numero dipotenziali "intrusi" sarebbe comunque ristrettose il dispositivo cellulare fosse un brevettoproprietario di un'unica azienda ma il timorerimane.

C'è poi da considerare la reale possibilità che sianogli utenti stessi a farsi la seguente domanda: "ma èdavvero così difficile tirar fuori la carta di creditodal portafogli per pagare?"

17

E questa non è una domanda così stupida perché,come accade per tutta la nuova tecnologia, questotipo di persone andrebbero convinte del fatto chec'è un effettivo, reale, concreto vantaggio in questo"switching". E, almeno in Italia, siamo freschidi conversione al digitale terrestre che, in unconsiderevole numero di casi, ha comportato ungran numero di problemi e relativamente pochivantaggi. Sarebbe giusto, quindi, pensare a comefare a convincere la proverbiale "vecchina delpiano di sotto" dell'infinito vantaggio che questatecnologia le potrebbe portare.Un ulteriore aspetto che completa il quadro dianalisi sulla questione è il numero di terminalidi cui un negozio avrebbe bisogno per supportareil volume di traffico potenziale sulla rete.Immaginate se tutti i clienti di un ipermercatola domenica pomeriggio avessero un iPhone evolessero pagare tutti contemporaneamente su ununico terminale…sarebbe il collasso! È, quindi,importante che lo sviluppo tecnologico proceda dipari passo sia da parte di chi la tecnologia la deveproporre, sia da parte di coloro i quali dovrannousarla.

La domanda, quindi, diventa: oggi l'intero sistemaè stato "dimensionato" a dovere? E ancora, se larisposta alla domanda precedente fosse no, nonsarebbe il caso di "ingegnerizzare" il problemaprima di darne diffusione?

Comanda il mercatoA qualcuno potrebbe sembrare che la Applesia nella condizione di poter determinarel'andamento del mercato in maniera importante;tuttavia non è così perché il volume di venditecui fa riferimento è di circa il 20%. Inoltre,come dicevamo, altri hanno provato a dare unsegnale positivo riguardo all'utilizzo dell’NFC: adicembre 2010 Google ha rilasciato il suo NexusS, dichiarando che Android permetterà l'utilizzodi software NFC compliant. Nel frattempo Paypal,Visa ed eBay ci sono già dati da fare per svilupparei loro "portafogli virtuali". Questi progetti puntanoad unificare le carte di credito e di debito, i contibancari, gli stipendi, le bollette, i coupon in modotale da rendere l'intero traffico del pagamentotutto virtuale, anche quando si sia fisicamente inun negozio.Se Carey Kolaja, di PayPal pensa che "non siala tecnologia che vincerà la guerra dei portafogli

virtuali ma il riscontro dei clienti" è ragionevolepensare che la Apple continuerà ad aspettareprima di "aggredire" questa fetta di mercato.Il tipo di approccio non è, in realtà, moltodissimile da quanto è stato fatto con la tecnologiawireless 4G LTE: la compagnia rimasta, infatti,in attesa fino a che la copertura non fosse statasufficientemente vasta da permettere alla iPhonedi sfruttarla.

Tutto qui?In realtà, non è solo questo il problema del nuovomelafonino. Ci sono altre pecche a rendere gliutenti mediamente insoddisfatti. Se da un latoNokia, con la serie Lumia, ha introdotto, perla prima volta, la funzionalità del caricamentowireless, diversi sono gli utenti che male hannoaccolto un'altra novità dell'iPhone 5 in fattodi alimentazione: il nuovo connettore. Anchesulla modalità di ricarica wireless Schiller si èdovuto esprimere ed ha commentato che sarebbestato necessario "creare un altro dispositivo cheè comunque necessario collegare ad una presaa muro" e questo "nella maggior parte dellesituazioni, è più complicato". Schiller ha, inoltredichiarato che "Questo è il nuovo connettoreper molti anni a venire", frase che rappresentaun chiaro impegno dell’azienda a garantire ilsupporto a Lightning , così come è avvenuto peril precedente, ovvero Dock. Tuttavia, qualcuno deipiù delusi comincia a temere seriamente che unapromessa del genere abbia il retrogusto amaro delcontentino dato da un responsabile commerciale.

E mentre le code per l’acquisto si allungano, ladomanda che molti si staranno ponendo a questopunto, probabilmente è: che alla Apple non sianopiù così “foolish” e men che mai “hungry”?

Solo i dati delle vendite lo potranno decretare.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accedere direttamenteall'articolo sul Blog e partecipare alladiscussione: http://it.emcelettronica.com/nfc-grande-escluso-delliphone-5

18

Energy Harvesting: ilfuturo dell'alimentazione11 Ott 2012 di Piero Boccadoro

I sistemi di alimentazione abatteria hanno grossi limiti strutturali,principalemte dovuti alla lorodurata nel tempo. In natura peròesistono fonti di energia rinnovabili,inesauribili e disponibili per essereopportunamente convertite. Tra questesi annovera certamente "la vibrazione".Approfondiamo l'Energy Harvesting: eccocome fenomeni di movimento possonocreare energia.

Grazie alla riduzione della dimensione deicircuiti per effetto dei progressi effettuatinella microelettronica e nella tecnica litografica,svolgere compiti elementari sta diventandosempre meno "power demanding” per icomponenti elettronici e questo permette lacreazione di fonti ecologiche e durature per le retidi sensori wireless. Lo sviluppo va nella direzionedell'utilizzo di fonti come l'energia solare, latemperatura e le vibrazioni.

L'esempio delle Reti di SensoriGli ingegneri che lavorano nei settori "Ricerca esviluppo" oggi hanno il compito di creare reti disensori capaci di raccogliere dati che provenganoda diversi punti all'interno dell'ambito dilavoro. Le reti sono fatte da una serie disensori connesse tramite nodi; ciascuno di essiè in grado di raccogliere informazioni qualitemperatura, vibrazioni, radiazioni luminose, edi trasformarle in dati numerici da inviarea stazioni di elaborazione. L'utilizzo di questistrumenti può essere utile in diversi campiapplicativi, specialmente quando parliamo di

industrie ed areonautica. La produttività potrebberisultare estremamente migliorata se questisistemi diventassero parte del processo produttivoperché ridurrebbero i costi di monitoraggio, dimanutenzione e, probabilmente, anche il tempo diinattività dei macchinari.

Non soltanto il campo industriale ed il processoproduttivo potrebbero beneficiare di reti disensori ma anche sistemi orientati al monitoraggiodelle condizioni vitali dei pazienti, specie quelliper cui è necessario effettuare un controllocontinuo (si pensi ad un Holter).

Le batterie possono alimentare questi dispositiviper un tempo necessariamente limitato. Unasoluzione potrebbe essere quella di utilizzaresistemi di Energy Harvesting (EH), ovverosistemi che siano in grado di convertire unaqualunque forma di energia non elettrica,comunque presente nell’ambiente di studio oapplicativo, in elettricità. Si tratterebbe ditecnologia che potrebbe alimentare i nodi perun tempo virtualmente infinito e garantirebbe lasostenibilità anche ambientale. Sfortunatamenteperò, l'uscita di potenza di un sistema EHè generalmente limitata alle decine o allecentinaia di microwatt, mentre un sistemache trasmetta alle radiofrequenze, oppure unmicrocontrollore, possono consumare potenzanell'ordine dei milliwatt. Questo significa chediminuire il consumo di potenza è assolutamenteindispensabile per poter pensare ad un impiegoserio della tecnologia EH nelle reti di sensori.

D'altronde che questo fenomeno avvenga è anchenaturale: si tratta di effettuare una conversionegrazie ad un sistema costruito dall'uomo e, perdefinizione, un sistema qualunque è caratterizzatoda un rendimento che non sarà mai unitario!

19

Per una rete di sensori wireless (che da ora,per comodità indicheremo con l'acronimo WSN),il valore di energia richiesto per ottenere leinformazioni, prelevate dall'ambiente in cui sitrova il sensore, a valle della conversione, è di500µJ. I dati in questione, infatti, ad esempioun valore di temperatura oppure di umidità,devono essere convertiti in numerico grazieall'utilizzo di un ADC ed inviati tramite protocolli,eventualmente standard come Bluetooth o Zigbee.Il valore di energia in questione potrebbe essereridotto ad alcune decine di µJ nel prossimo futuro.

Pertanto i nodi funzionali di una rete alimentatada sistemi EH (ed il loro funzionamento) possonoessere schematizzati come segue:

• il dispositivo EH, che "cattura" l'energiadall'ambiente in cui si trova e la immagazzinaall'interno di una batteria;

• i circuiti integrati, costituiti da sensori etrasmettitori, caratterizzati da un consumoridotto (5µW);

• misurazione ed emissione vengono effettuatequando il sistema ha accumulato energiaa sufficienza per permettersi di effettuarel'operazione. Il dato, memorizzato in unbuffer, viene, quindi, inviato;

• il buffer è vuoto, il sistema ritorna in stand-by. Il ciclo di carica riprende, in attesa di unanuova misura.

Questo sistema di misura contiene ed utilizzamicrocontrollori e dispositivi elettronici chehanno la necessità, mediamente, di esserealimentati ad almeno 3 V. È necessario, quindi,che ci sia un convertitore in uscita all’EH perfare in modo che tale valore resti costante neltempo. Questo ulteriore stadio di conversione ha

lo scopo di massimizzare la "estrazione" di potenzadall’EH.

Diverse fonti ambientali, compreso la luce ed igradienti di temperatura, sono oggetto di indagineper il modo in cui è possibile convertirle in energia.Ci soffermeremo, però, in questo caso, su quellibasati sulla vibrazione, particolarmente indicatiper macchinari, motori e similari.

Questi sistemi sono detti “vibration energyharvesting” (in breve VEH) e si basano su unconcetto piuttosto semplice, ovvero quello dellarisonanza. La loro struttura di base è costituitada un sistema a molla che è soggetto ad unaforza di frizione. Il fenomeno della risonanza siinstaura una volta che avvenga la stimolazione"ambientale". Questa struttura in particolarerende possibile l'amplificazione di vibrazioni dipiccola ampiezza per effettuare la conversionein potenza in uscita. È importante notare chele vibrazioni ambientali, sia quelle naturali siaquelle ad opera dell'uomo, sono generalmentecaratterizzate da frequenze molto basse, ovveroinferiori ai 100 Hz, nonché da ampiezze contenute,generalmente dell'ordine di poche decine di µm.

Ecco per quale motivo si rende indispensabilesfruttare i fenomeni di risonanza per laconversione.

Lo scopo dei ricercatori nel campo dell’EH è,quindi, quello di sviluppare convertitori in gradodi convertire energia cinetica in potenza elettrica.L'effetto di questa conversione sul sistema puòessere modellato con una forza elettrica cheha l'effetto di rallentare gli spostamenti della

20

massa quando l'energia meccanica viene estratta econvertita in elettricità.

Tipi di convertitoriEsistono sostanzialmente tre tipi di convertitoriche permettono la trasformazione di energiada meccanica ad elettrica: sistemi piezoelettrici,elettromagnetici ed elettrostatici.

Quelli piezoelettrici utilizzano materialicaratterizzati da questo effetto (piezoelettrico,appunto) grazie al quale generano caricheelettriche, e quindi correnti, non appenasottoposti a stress meccanici. Il principio dellaconversione, in un materiale che goda di questaproprietà, vale anche al contrario ma risultameno utile nella conversione di energia. Laconversione elettromagnetica, invece, è basatasulla legge di Faraday-Newmann-Lenz, ovverosulla terza equazione di Maxwell: il movimentodi un magnete attorno al quale sia presenteun avvolgimento genera un flusso di correnteconcatenato diretto in maniera tale da creareequilibrio elettromagnetico. Il terzo tipo, infine,è quello elettrostatico che utilizza un elettrete(che in generale può essere un disco di Tefloncaricato elettrostaticamente) per indurre caricheall'interno degli elettrodi. Questo sistema ècaratterizzato da una disposizione opportuna deglielettrodi in cui uno di questi genera una variazionedella carica presente sull’elettrete ed induce lacircolazione di corrente.

Indipendentemente dal principio difunzionamento, qualunque sia il convertitorein oggetto, l'uscita di potenza di unVEH è limitata da principi fisici, comeaccennavamo prima, salvo che non intervenganocomportamenti non lineari. L'intensità di potenzaprodotta sarà, quindi, proporzionale alla massamobile e all'accelerazione al quadrato nonchéinversamente proporzionale alla larghezza dibanda.

Ciascuno di questi sistemi ha, comunque, unaserie di vantaggi e svantaggi che vanno tenutiin debita considerazione. Per fare questo, diamoun'occhiata alla seguente tabella:

Supponiamo di voler analizzare il comportamentodi dispositivi piezoelettrici ed elettrostatici.Questi, in particolare, presentano alti valori ditensione d'uscita e si dimostrano semplici da"rettificare" grazie all'utilizzo di un ponte a diodi.Le scarse perdite resistive rappresentano unulteriore attrattiva.

Per questi dispositivi è possibile ottenere unaconversione fino a 10µW/g dalle vibrazioniambientali (0.1G@50Hz) , quando la frequenzadi risonanza viene "accordata" alla frequenza diliberazione ambientale.

Pros & consL'effetto di risonanza rappresenta sia il principalevantaggio di questo sistema sia il suo limite piùgrande perché questi sistemi possono trasformareuna maggiore quantità di potenza quando lafrequenza di vibrazione ambientale si "adatta" (nelsenso che combacia) con la loro frequenza dirisonanza ma, nel migliore dei casi, hanno unabanda molto stretta che non eccede intervalli diqualche Hz.

Un ulteriore problema è l'insorgere di eventualieffetti non lineari; tali problematiche si affiancanoa quelle relative al tuning della frequenza dirisonanza. I limiti fisici al comportamento linearerappresentano, di certo, la principale ragione percui questo tipo di sistemi non è diffuso comesarebbe logico aspettarsi vista la loro attrattiva.Tuttavia esistono delle soluzioni che possonoda un lato aumentare la banda e dall'altrodiminuire gli effetti non lineari. Esistono, inparticolare, sostanzialmente due modi per riusciread aumentare la larghezza di banda: è possibile

21

sfruttare fenomeni non lineari (passivi) oppureeffettuare il tuning delle frequenze (attivi).

Alcuni degli effetti non lineari studiati sonopresenti in tutte le strutture meccaniche masolo adesso si comincia a pensare di poterlisfruttare per guadagnare qualcosa sull'uscitadei sistemi VEH. Gli effetti non lineari nonhanno necessità di essere "attivati" da una logicadi controllo perché sono fenomeni tipicamentepassivi, ovvero si verificano comunque. La sfida,pertanto, è quella di controllarne l'influenza inmodo tale da permettergli di diventare utilipiuttosto che semplicemente parassiti, se nonaddirittura dannosi.

Durante la fabbricazione dei sistemi è necessario,pertanto, prevedere queste "influenze" e ciò èreso possibile dal fatto che vengono inseritedelle molle che, grazie a comportamenti nonlineari, incrementano del 50% la resa del sistema.Anche se questi fenomeni risultano piuttostoutili allo scopo, la seconda tecnica, ovveroquella del “tuning delle frequenze”, promette direalizzare i risultati più interessanti. L'obiettivoè quello di modificare la frequenza naturale dirisonanza del sistema alterando la struttura dellemolle che possono essere cambiate in manieracontrollata da un circuito attivo che sia capace dicercare i parametri conformazionali ottimali permassimizzare l'uscita di potenza.

Esistono, sostanzialmente, due modi per studiare iVEH piezoelettrici: il primo consiste nell'utilizzarestrutture composte da tre strati dei quali due sonopiezoelettrici ed uno a base di Silicio. Il primorisulta collegato al circuito di controllo il qualeapplica una tensione "capace" di “modificare”lo stato stesso e quindi la sua frequenza dirisonanza. L'energia viene così "harvested” dallostrato piezoelettrico numero due. Il secondometodo è basato su variazioni del caricoelettrico; quando gli strati piezoelettrici hannoforti (grandi) coefficienti di accoppiamento, èpossibile modificare la conformazione degli stratiadattando il carico. Il risultato è quello di alterarela frequenza di risonanza.

Indipendentemente da quale dei metodi si scelga,è possibile ottenere il “tuning” della frequenza inun intervallo che si aggira intorno al 20% dellafrequenza "naturale".

Come abbiamo visto in precedenza, per sviluppareil sistema che effettua l’energy harvesting ènecessario l'utilizzo di un convertitore piuttostoche un sistema di immagazzinamento perchél'output di potenza è caratterizzato da alti valoridi tensione AC e bassi valori di corrente che nonpossono essere utilizzati per i componenti.

È necessario, dunque, fare power management;a questo risultato si può pervenire utilizzandodiversi convertitori DC/DC. Taluni riesconoaddirittura a raggiungere un'efficienza dell'80%(ed anche più) e vengono pilotati in manierapiuttosto semplice con un consumo di potenza chenon supera i 5µW. Un esempio è rappresentatodalla configurazione flyback.

Ed ecco un sunto di quanto detto ed un'idea dicome questo scenario presente potrebbe evolvere.

Tirando le sommeQuello che possiamo dire per certo dei sistemidi harvesting è che la riduzione del consumo dipotenza per lo svolgimento di funzioni elementariè possibile anche grazie alla sostituzione dellabatterie che non rappresentano più l'unicapossibilità (o meglio, la scelta obbligata) peralimentare un sistema. Il futuro di questi

22

dispositivi, e più in generale di tutta la tecnologiaper EH sarà quello di riuscire a ridurre ladissipazione di potenza, il consumo di energienon “verdi” e, sperabilmente, di fornire ulteriorispunti per lo sviluppo della tecnologia come laconosciamo oggi.E voi, che cosa ne pensate? Avete mai lavorato conun sistema che fa Energy Harvesting? Per cosa loavete adoperato? Con che risultati?

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accederedirettamente all'articolo sul Blog e parteciparealla discussione: http://it.emcelettronica.com/energy-harvesting-futuro-dellalimentazione

23

L’importanza dei resistoridi precisione neglistrumenti sismici16 Ott 2012 di Edi82

Gli strumenti sismici maggiormenteimpiegati per individuare un terremoto eper l’esplorazione sotterranea di oli e gassono i sistemi sismografici: essi utilizzanouna sorgente di energia che produce unoshock superficiale, come ad esempio gliesplosivi o la caduta di pesi per propagareun’onda d’urto all’interno della Terra.L’effetto è simile a quello creato da unterremoto di piccola intensità. Vediamo inquesto articolo l'importanza dell'utilizzodi resistenze ad alta precisione ed altastabilità nelle rilevazioni sismiche.

L’importanza degli strumentisismici per i geologiNonostante i geologi non conoscano esattamentedove si possano trovare i giacimenti di oli egas, sanno però che è più semplice trovarliin certi tipi di rocce; l’olio, ad esempio, siraccoglie in rocce porose tra strati di roccenon porose. Ogni discontinuità nella strutturadella Terra, come le interfacce tra gli strati dicalcare, scisto e sale, si può tradurre in energia,che viene riflessa in superficie dove dei geofonimolto sensibili sono in grado di individuarla,anche in un’area molto vasta. Mentre una rapidaserie di riverberi, provenienti da ogni interfacciastratificata, raggiunge la superficie, l’energia vieneamplificata e registrata.

L’utilizzo di strumenti sismici idonei, comel’equipaggiamento per la registrazione, serve, inprimo luogo, ad attenuare gli iniziali alti livelli di

ritorno dell’energia, poi passa attraverso una seriedi amplificazioni crescenti in modo da mantenereappropriati i livelli di sensibilità. In questo modoè possibile eseguire una registrazione di tutti glistrati, dai segnali più superficiali ad alta energiaa quelli più deboli, provenienti dagli strati piùbassi della Terra. Gli strumenti per la misurazionedevono cambiare sensibilità sequenzialmente edin modo rapido, così da evitare la dispersione didati provenienti da ogni strato.

Dovrebbero anche essere a prova di rumore pernon perdere i segnali più deboli. Dopo avermisurato e classificato temporalmente i segnali,è possibile produrre una mappa che rappresentiuna sezione trasversale del terreno per i primichilometri di profondità. Gli strumenti sismici cheamplificano e registrano i segnali riflessi su unricevitore a banda larga, utilizzano dei resistoriSMD (Surface Mount Device) a strato metallicocombinati e separati. In questo modo è possibileottenere un tracking preciso degli amplificatorisia all’interno di un sistema sismico individuale,sia tra diversi sistemi interrelati. Quando i segnalivengono successivamente ricostruiti, i geologipossono basare le loro analisi su dati precisi.Un sistema sismico richiede che i resistori diattenuazione siano dotati di una precisione dirisposta rapida per evitare la perdita di impulsi.Inoltre non devono essere sensibili ai cambidi temperatura e devono tracciarsi l’un l’altroin maniera esatta e presentare un disturbo dicorrente molto basso, al fine di evitare la coperturadel segnale riflesso. Il nucleo di un sistema sismicoè il suo modulo amplificatore.

Un amplificatore ad alto guadagno è selettivo nellefrequenze e richiede un range AGC (AutomaticGain Control) molto grande. Non appena laprima raffica di energia misurata con precisioneviene inviata verso il terreno, l’amplificatoredeve acquisire il segnale e poi aumentarel’amplificazione, poiché diminuisce l'intensità disegnale che riflette l’energia sismica. Una retedivisore resistiva permette l’attenuazione delsegnale nei vari passi che attenuano o passano isegnali al primo amplificatore, a seconda del rangedi input degli amplificatori.

24

Le resistenze di precisione adalta stabilitàInoltre degli interruttori di guadagno si attivanoautomaticamente in sequenza attraverso i proprirange per controllare la quantità di attenuazione.Il segnale, poi, va verso un altro attenuatoreresistivo, che può fornire il pieno segnale o unaattenuazione.

Questo attenuatore si collega ad una secondostadio di amplificatori; ognuna delle fasidi amplificazione successive contiene ancheun attenuatore resistivo che può fornireun’attenuazione precisa o il pieno segnale.I sistemi di monitoraggio dei terremoti e itracciatori di tsunami funzionano essenzialmenteallo stesso modo, ma l’impulso iniziale di shockviene prodotto dalla natura anziché generatodall’uomo.

Le resistenze Z1-Foil eccellono oltre i precedentistandard di stabilità per i resistori di precisione;le caratteristiche principali consistono nellastabilità di temperatura e di durata di caricoe nella resistenza all’umidità: tutti questifattori diventano sempre più critici a causadell’imprevedibilità del clima a livello globale.

Questi nuovi livelli di benchmark della prestazioneoffrono ai progettisti gli strumenti per realizzarecircuiti analogici non raggiungibili in precedenza.Prima dell’avvento della tecnologia Z1-Foil, leapplicazioni di precisione ad alta frequenzavenivano servite solo da resistori di precisione apellicola sottile, che però non sono così accurati,o stabili, come i resistori a filo avvolto, che a lorovolta peccano nella risposta ad alta frequenza. Lanuova tecnologia Z1-Foil permette ai progettistidi lavorare con componenti resistive che sonoallo stesso più precise rispetto ai resistori a filoavvolto e si prestano bene per le applicazioni adalta frequenza e ad alta temperatura.

In passato, gli ingegneri che utilizzavanocomponenti resistive cercavano di migliorare leprestazioni dei resistori riducendo le tensioniinnate nei componenti. Per esempio, nei resistoridi precisione a filo avvolto, provavano diversimetodi per avvolgere i fili con sufficiente tensionedi avvolgimento, per mantenere il filo in posizionementre riducevano gli stress sul filo stesso.

Questa situazione era piuttosto complicata, manon vi era un processo che impedisse alle tensionidi modificare il valore della resistenza dopoil riscaldamento e il ciclo compiuto attraversoapplicazioni in-circuit. I resistori a pellicolasottile non prevedevano una simile opzione,perché devono essere depositati direttamente suun substrato per formare un nuovo ammassoresistivo.

Quindi gli ingegneri che utilizzavano i resistoria pellicola sottile si dovevano concentrare sullaprotezione della pellicola con rivestimenti eincapsulanti. La tecnologia dei resistori a lamina(foil) permette invece di gestire le tensioni percontrobilanciare le forze con effetti opposti,utilizzandole quindi per produrre un resistoreestremamente stabile. In altre tecnologie, iproduttori si sforzano di ottenere il coefficiente ditemperatura della resistenza più basso possibilenei loro materiali resistivi, per i componenti piùstabili dal punto di vista termico.

La tecnologia Foil si concentra su un obiettivo:ottenere una lamina non con il più bassocoefficiente di temperatura della resistenza(TCR, Temperature Coefficient Resistance) macon il TCR più lineare rispetto ai range piùampi di temperatura, assicurando che essosia riproducibile entro tolleranze estremamenterigide. Questo TCR si ottiene in una laminarelativamente spessa e laminata a freddo, ingrado di mantenere la stessa struttura molecolaredelle lega originale dal quale è stata tratta.Questa è la base di un resistore foil, chedeve comportarsi come una struttura monolitica,con un coefficiente di espansione conosciuto elineare rispetto ogni range di temperatura che ilresistore può incontrare lungo l’arco della sua vitaprogettuale.

Un altro elemento fondamentale nella costruzioneè l’adesivo che mantiene la lamina sull’unicosubstrato piatto. Esso deve sopportare altetemperature, esposizione a basse temperature ashock e vibrazioni, scariche elettrostatiche, ecc., eallo stesso tempo non deve permettere alla laminadi staccarsi dal substrato. La lega Bulk Metal Foil èsviluppata utilizzando un TCR positivo conosciutoe un coefficiente di espansione lineare conosciuto(LCE).

25

Il "foil" viene legato ad un substrato piattodi ceramica che a sua volta è dotato di unLCE conosciuto, utilizzato per indurre una pre-tensione nella lamina. In questa struttura, sul"foil" vengono esercitate due influenze opposte:una è l’aumento del foil stesso nella resistenza,proporzionalmente all’aumento di temperatura;l’altra è il legame del foil con il substrato, checostringe il primo a seguire il secondo, chepresenta un LCE specifico, inferiore al LCE dellalamina.

Quindi, quando la struttura composita subisceun aumento di temperatura, lo strato resistivoche è costituito dal foil, prova ad espandersi inrelazione al proprio LCE, ma viene ostacolatodalle caratteristiche meno espansive del substrato.L’effetto che si verifica è il seguente: la lamina,nel tentativo di forzare la costrizione del substrato,subisce una forza compressiva che riduce la suaresistenza; in questo equilibrio perfetto di forze, ladiminuzione di resistenza dovuta ad un aumentodi temperatura compensa esattamente la crescitadella resistenza del foil a causa dello stessoaumento di temperatura.Il risultato è un resistore con un TCR vicino allazero di 0.2 ppm/°C da -55°C ad oltre +225°C.

La struttura è progettata in modo che non superila costante di Hook per i materiali e, comunque,mantenga l’equilibrio e la stabilità della resistenzalungo tutta la durata di carico e l’applicazionedel resistore. La struttura piatta bidimensionaledel resistore, con l’elemento di resistenza insuperficie (prima dell’incapsulamento) si prestaad un processo unico per regolare i resistori alvalore.

Tolleranze pari a 0.001% si possono ottenerein pacchetti sigillati ermeticamente. L’elementoresistore è foto inciso con una griglia cheincorpora collegamenti successivi proporzionatigeometricamente, che possono essere rimossimentre si aumenta in modo incrementale laresistenza, attraverso quantitativi più piccoliin successione, senza introdurre disturbo dicorrente.

La griglia è ulteriormente progettata con correntidi opposizione in percorsi adiacenti, in modo daminimizzare sia l’induttanza che la capacità perprestazioni ad alta velocità. Utilizzando questeinnovazioni tecnologiche di base, il resistore può

essere realizzato in diverse configurazioni, comenel caso dei resistori di potenza, dei resistori perla metrologia ermeticamente sigillati e molti altriimpiegati in differenti applicazioni tra le quali,spaziali e avioniche, mediche, dei controlli diprocesso, oppure ovunque siano richiesti resistorie reti ad alta precisione.

I resistori chip surface-mount FRSM, oltre adoffrire agli ingegneri i componenti resistivipiù stabili e precisi sul mercato, utilizzano latecnologia resistiva Z1 Bulk Metal Foil per ridurrela dimensione di un circuito e quindi il consumoenergetico.

Ma la riduzione della superficie dei circuiticomporta delle nuove difficoltà di progettazioneassociate con la gestione termica e le sueconseguenze involontarie, e in alcuni casi piùsensibili all’ESD. Un problema di questo tipo è laforza elettromotrice termica (TEMF), che segnalaerrori di tensione ogni qualvolta si incontranodifferenze di temperatura tra due derivazioni didue metalli diversi, come quando degli elementiresistivi interni vengono uniti alle terminazioniesterne di un resistore.

I differenziali di temperatura si sviluppanoattraverso un resistore a causa di unadissipazione interna di energia non omogenea,del riscaldamento dei terminali ad opera dicomponenti che irradiano calore, e di percorsidi dissipazione termica che viaggiano lungo ilcircuito in entrambi i percorsi conduttivi. Ancheil foglio ideato per il suo TCR insito e il suo LCEpresenta un TEMF molto basso, pari a soli 0.05uV/°C.

Questa sorprendente tecnologia non giunge comeil risultato della ricerca di un resistore piùaccurato, ma viene fuori dell’analisi dello stressdelle applicazioni di misurazione della tensione.

Oggi, questi resistori vengono utilizzati nelleapplicazioni più esigenti, incluse quelle avionichee spaziali; il più recente sviluppo del resistorecon chip di precisione surface-mount FRSM(tecnologia Z1 Bulk Metal Foil), permettedi raggiungere prestazioni di alto livello inapplicazioni con temperature molto elevate,offrendo una maggiore stabilità di resistenzaattraverso i cambiamenti di temperatura, e

26

quasi nessuna modifica in caso di esposizioneall'umidità.

Articolo liberamente tradotto da Technology First by Farnell-Vishay

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accederedirettamente all'articolo sul Blog e parteciparealla discussione: http://it.emcelettronica.com/l’importanza-dei-resistori-di-precisione-negli-strumenti-sismici

27

Embedded GNU/Linuxpartendo da zero:ricompilare il kernel18 Ott 2012 di arighi

L'obiettivo di questa serie di articoliè di fornire una guida passo passoper la creazione da zero di un sistemaGNU/Linux perfettamente funzionante,applicabile ad esempio in scenari di tipoembedded come base per la generazione diun semplice BSP (Board Support Package)[1], di un firmware Linux-based, o di unamicro-distribuzione totalmente custom.

IntroduzioneCreare un sistema GNU/Linux da zero costituisceun buon esercizio per comprendere alcuni aspettichiave del suo funzionamento interno.

Tuttavia, oltre all'aspetto didattico, ci sono ancherisvolti praticiinteressanti: conoscere i componenti e glistrumenti base che servono a

costruire un sistema GNU/Linux ci permettespesso, specie in ambito

embedded, di generare ambienti più compatti edefficienti rispetto

alle soluzioni general-purpose messe adisposizione dal fornitore del

prodotto o della board di sviluppo su cui stiamolavorando.

Per agevolare la lettura, l'articolo è strutturato inpiù parti distinte:

• preparazione del kernel

• preparazione del root filesystem

• integrazione e test su QEMU [2]

Tutti i passaggi illustrati di seguito sono statitestati su un sistema desktop GNU/Linux usandola recente distribuzione Ubuntu 12.04.1.

RequisitiIl primo requsito per creare un sistema GNU/Linux consiste nello scegliere un'architetturatarget. Dato che l'articolo ha un taglioprevalentemente orientato all'embedded e vistala predonimanza delle architetture ARM in talesettore, opteremo per un'architettura ARM.Una volta scelta l'architettura target abbiamobisogno di due componenti fondamentali:

1. una piattaforma di prova su cui testare ilnostro sistema

2. una toolchain che ci permetta di cross-compilare i binari che vanno a costituirel'intero sistema operativo

Board (virtuale) di sviluppo

Il mercato mette a disposizione una vasta gammadi board di sviluppo ARM-based, anche a bassocosto. Tuttavia chi si vuole cimentare nellacreazione di un sistema GNU/Linux su ARMpuò farlo completamente a costo zero, emulandovirtualmente la piattaforma di sviluppo.

Come software di emulazione ci baseremo suQEMU [4], che di fatto costituisce l'emulatoredi architettura per eccellenza nel mondo Linux.QEMU permette di emulare diverse piattaformeARM-based, ad esempio nella versione di QEMUinstallata su Ubuntu 12.04 abbiamo a disposizionele seguenti piattaforme:

$ qemu-system-arm -M .

Supported machines are:

beagle Beagle board (OMAP3530)

beaglexm Beagle board XM (OMAP3630)

collie Collie PDA (SA-1110)

nuri Samsung NURI board (Exynos4210)

28

smdkc210 Samsung SMDKC210 board (Exynos4210)

connex Gumstix Connex (PXA255)

verdex Gumstix Verdex (PXA270)

highbank Calxeda Highbank (ECX-1000)

integratorcp ARM Integrator/CP (ARM926EJ-S) (default)

mainstone Mainstone II (PXA27x)

musicpal Marvell 88w8618 / MusicPal (ARM926EJ-S)

n800 Nokia N800 tablet aka. RX-34 (OMAP2420)

n810 Nokia N810 tablet aka. RX-44 (OMAP2420)

n900 Nokia N900 (OMAP3)

sx1 Siemens SX1 (OMAP310) V2

sx1-v1 Siemens SX1 (OMAP310) V1

overo Gumstix Overo board (OMAP3530)

cheetah Palm Tungsten|E aka. Cheetah PDA (OMAP310)

realview-eb ARM RealView Emulation Baseboard (ARM926EJ-S)

realview-eb-mpcore ARM RealView Emulation Baseboard

(ARM11MPCore)

realview-pb-a8 ARM RealView Platform Baseboard for Cortex-A8

realview-pbx-a9 ARM RealView Platform Baseboard Explore for Cortex-

A9

akita Akita PDA (PXA270)

spitz Spitz PDA (PXA270)

borzoi Borzoi PDA (PXA270)

terrier Terrier PDA (PXA270)

lm3s811evb Stellaris LM3S811EVB

lm3s6965evb Stellaris LM3S6965EVB

tosa Tosa PDA (PXA255)

versatilepb ARM Versatile/PB (ARM926EJ-S)

versatileab ARM Versatile/AB (ARM926EJ-S)

vexpress-a9 ARM Versatile Express for Cortex-A9

vexpress-a15 ARM Versatile Express for Cortex-A15

z2 Zipit Z2 (PXA27x)

Nel nostro caso prenderemo in esame laVersatile Express (vexpress-a9) [5], visto cheè quella supportata perfettamente dal kernel"mainline" (la versione del kernel ufficiale,

reperibile da http://www.kernel.org), sia daQEMU, senza dover applicare patch aggiuntive.Inoltre, la Versatile Express monta un core Cortex-A9, una CPU ARM-based utilizzata su gran partedei tablet, smartphone e netbook di recenteproduzione.

Emulare la piattaforma di sviluppo è piuttostosemplice, basta lanciare il comando:

$ qemu-system-arm -M vexpress-a9 -kernel flash.img

Dove flash.img è un file contenente l'immagine delnostro kernel/firmware che vogliamo far girare.

Nei passi seguenti vedremo come generare taleimmagine.

Toolchain di cross-compilazione

La toolchain è un insieme di strumenti(tipicamente un compilatore, un linker e dellelibrerie) che ci permettono di generare leapplicazioni per il sistema target a partire daisorgenti. La GNU toolchain tipica è costituita dalcompilatore GCC, le binutils (strumenti per lamanipolazione dei binari) e le librerie glibc.

Per questa prima fase ci vengono in aiuto letoolchain pre-compilate (creare un sistema dazero non implica necessariamente di doverciricompilare anche gli strumenti per creare ilsistema stesso).

In rete si trovano molte toolchain pre-compilate,nel nostro caso utilizzeremo la Linaro ToolchainBinaries [3], una toolchain ottimizzata per le piùrecenti famiglie di CPU ARM (Cortex A8, A9, etc.).

Il setup della toolchain è costituito dai seguentipassaggi:

• download dei binari della toolchainda internet: https://launchpad.net/linaro-toolchain-binaries/trunk/2012.09/+download/...

• estrazione del pacchetto .tar.bz2:

$ tar xjf gcc-linaro-arm-linux-

gnueabihf-2012.09-20120921_linux.tar.bz2

• setup della variabile di ambiente PATH perrendere disponibili i binari della toolchaindalla shell corrente:

29

$ export PATH=$PWD/gcc-linaro-arm-linux-

gnueabihf-2012.09-20120921_linux/bin:$PATH

Fase 1: preparazione delkernelA questo punto abbiamo tutti gli strumentinecessari per iniziare a sviluppare sulla boardvirtuale.

Il primo passo consiste nel reperire i sorgenti"mainline" del kernel da http://www.kernel.org ericompilarli per la nostra archiettura target.

Al momento della stesura di questo articolol'ultimo kernel del ramo "stable" è il 3.5.4,procediamo quindi al download e all'estrazionedei sorgenti:

$ wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.5.4.tar.bz2

$ tar xjf linux-3.5.4.tar.bz2

$ cd linux-3.5.4

Il kernel Linux supporta un'ampia gammadi architetture e piattaforme eterogenee:fondamentalmente esso è composto da un layer dibasso livello

(./arch/*) che si interfaccia direttamente con ilparticolare hardware ed esporta ai livelli più altiinterfacce generiche indipendenti dall'hardwaresottostante.

Per l'utente o il programmatore di alto livelloLinux è sempre lo stesso, indipendentemente dadove gira la propria applicazione.

La prima fase della ricompilazione del kernelconsiste nel processo di configurazione. Essopermette di scegliere la particolare architetturache vogliamo utilizzare per il layer di basso livello,assieme a tutti i driver e le funzionalità di altolivello che vogliamo fornire alle applicazioni user-space.

Come abbiamo detto la piattaforma VersatileExpress è già supportata pienamente dal kernelLinux, quindi possiamo procedere direttamentealla configurazione senza dover applicare patch omodificare codice:

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-

vexpress_defconfig

Le variabili di ambiente ARCH eCROSS_COMPILE sono informazioni per ilcompilatore; esse permettono di selezionare laparticolare architettura (ARCH) e la particolareversione compilatore (CROSS_COMPILE) pergenerare il codice oggetto.

L'opzione "vexpress_defconfig" viene usata dalkernel nel processo di build: essa permettedi selezionare la configurazione di default(defconfig) stabilita dalla comunità di sviluppatoriche mantengono il codice per tale architettura.Le varie configurazioni *_defconfig per ARM sitrovano tutte in arch/arm/configs/*.

Infine resta da effettuare il passo di compilazionevero e proprio:

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-

La ricompilazione di un intero kernel richiededai 5 ai 10 minuti. Al termine, se tutto è andatocorrettamente, troveremo il seguente file nelledirectory dei sorgenti del kernel:

$ du -h arch/arm/boot/zImage

2.4M arch/arm/boot/zImage

Il file zImage rappresenta l'immagine della flashper la nostra board virtuale. In questo casoil singolo kernel richiede 2.4MB. Al momentoperò non abbiamo ancora nessuna applicazione,i 2.4MB rappresentano solo il "contenitore" dovefar girare le applicazioni utente.

Testare il kernel sulla boardvirtualeE' possibile testare il kernel appena generato sullboard virtuale QEMUlanciando il comando seguente:

$ qemu-system-arm -M vexpress-a9 -kernel ./arch/arm/boot/zImage \

-serial stdio -display none -append "console=ttyAMA0"

30

QEMU emula un ambiente identico ad una boardVersatile Express fisica, quindi per il kernel nonfa nessuna differenza, di fatto è come eseguirlosull'hardware reale. Con le opzioni `-serial stdio-display none` stiamo dicendo a QEMU dicollegare la seriale emulata direttamente allaconsole da cui lanciamo il comando. Con ̀ -appendconsole=ttyAMA0"` stiamo invece dicendo alkernel di ridirigere tutti i suoi messagi verso laseriale primaria. In pratica per noi sarà come avereaperto una sessione seriale sulla board.

Ecco il risultato pratico una volta eseguito ilcomando sopra:

Booting Linux on physical CPU 0

Initializing cgroup subsys cpuset

Linux version 3.5.4 (righiandr@thinkpad) (gcc version 4.7.2 20120910

(prerelease) (crosstool-NG linaro-1.13.1-2012.09-20120921 - Linaro GCC

2012.09) ) #2 SMP Tue Oct 2 10:21:53 CEST 2012

CPU: ARMv7 Processor [410fc090] revision 0 (ARMv7), cr=10c53c7d

CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache

Machine: ARM-Versatile Express

Memory policy: ECC disabled, Data cache writealloc

sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms

PERCPU: Embedded 7 pages/cpu @805a2000 s5824 r8192 d14656

u32768

Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512

Kernel command line: console=ttyAMA0

PID hash table entries: 512 (order: -1, 2048 bytes)

Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)

Memory: 128MB = 128MB total

Memory: 125168k/125168k available, 5904k reserved, 0K highmem

Virtual kernel memory layout:

vector : 0xffff0000 - 0xffff1000 ( 4 kB)

fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)

vmalloc : 0x88800000 - 0xff000000 (1896 MB)

lowmem : 0x80000000 - 0x88000000 ( 128 MB)

modules : 0x7f000000 - 0x80000000 ( 16 MB)

.text : 0x80008000 - 0x80425d84 (4216 kB)

.init : 0x80426000 - 0x804516c0 ( 174 kB)

.data : 0x80452000 - 0x80480520 ( 186 kB)

.bss : 0x80480544 - 0x8049e928 ( 121 kB)

SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1,

Nodes=1

Hierarchical RCU implementation.

NR_IRQS:256

Console: colour dummy device 80x30

Calibrating delay loop... 555.41 BogoMIPS (lpj=2777088)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

CPU0: thread -1, cpu 0, socket 0, mpidr 80000000

hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 1 counters

available

Setting up static identity map for 0x603242d8 - 0x60324330

Brought up 1 CPUs

SMP: Total of 1 processors activated (555.41 BogoMIPS).

NET: Registered protocol family 16

L310 cache controller enabled

l2x0: 8 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x02420000, Cache

size:

131072 B

hw-breakpoint: debug architecture 0x0 unsupported.

Serial: AMBA PL011 UART driver

mb:uart0: ttyAMA0 at MMIO 0x10009000 (irq = 37) is a PL011 rev1

console [ttyAMA0] enabled

mb:uart1: ttyAMA1 at MMIO 0x1000a000 (irq = 38) is a PL011 rev1

mb:uart2: ttyAMA2 at MMIO 0x1000b000 (irq = 39) is a PL011 rev1

mb:uart3: ttyAMA3 at MMIO 0x1000c000 (irq = 40) is a PL011 rev1

bio: create slab <bio-0> at 0

SCSI subsystem initialized

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

31

Advanced Linux Sound Architecture Driver Version 1.0.25.

Switching to clocksource v2m-timer1

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 4096 (order: 3, 32768 bytes)

TCP bind hash table entries: 4096 (order: 3, 32768 bytes)

TCP: Hash tables configured (established 4096 bind 4096)

TCP: reno registered

UDP hash table entries: 256 (order: 1, 8192 bytes)

UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)

NET: Registered protocol family 1

RPC: Registered named UNIX socket transport module.

RPC: Registered udp transport module.

RPC: Registered tcp transport module.

RPC: Registered tcp NFSv4.1 backchannel transport module.

jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.

msgmni has been set to 244

io scheduler noop registered (default)

clcd-pl11x ct:clcd: PL111 rev2 at 0x10020000

clcd-pl11x ct:clcd: CT-CA9X4 hardware, XVGA display

Console: switching to colour frame buffer device 128x48

v2m_cfg_write: writing 03c8eee0 to 00110001

v2m_cfg_write: writing 00000000 to 00710000

v2m_cfg_write: writing 00000002 to 00b10000

smsc911x: Driver version 2008-10-21

smsc911x-mdio: probed

smsc911x smsc911x: eth0: attached PHY driver [Generic PHY]

(mii_bus:phy_addr=smsc911x-fffffff:01, irq=-1)

smsc911x smsc911x: eth0: MAC Address: 52:54:00:12:34:56

isp1760 isp1760: NXP ISP1760 USB Host Controller

isp1760 isp1760: new USB bus registered, assigned bus number 1

isp1760 isp1760: Scratch test failed.

isp1760 isp1760: can't setup

isp1760 isp1760: USB bus 1 deregistered

isp1760: Failed to register the HCD device

Initializing USB Mass Storage driver...

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

mousedev: PS/2 mouse device common for all mice

rtc-pl031 mb:rtc: rtc core: registered pl031 as rtc0

mmci-pl18x mb:mmci: mmc0: PL181 manf 41 rev0 at 0x10005000 irq

41,42

(pio)

usbcore: registered new interface driver usbhid

usbhid: USB HID core driver

aaci-pl041 mb:aaci: ARM AC'97 Interface PL041 rev0 at 0x10004000, irq

43

aaci-pl041 mb:aaci: FIFO 512 entries

oprofile: using arm/armv7-ca9

TCP: cubic registered

NET: Registered protocol family 17

VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 0

input: AT Raw Set 2 keyboard as /devices/mb:kmi0/serio0/input/input0

rtc-pl031 mb:rtc: setting system clock to 2012-10-06 18:45:12 UTC

(1349549112)

ALSA device list:

#0: ARM AC'97 Interface PL041 rev0 at 0x10004000, irq 43

input: ImExPS/2 Generic Explorer Mouse as

/devices/mb:kmi1/serio1/input/input1

VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6

Please append a correct "root=" boot option; here are the available

partitions:

Kernel panic - not syncing: VFS: Unable to mount root fs on

unknown-block(0,0)

[<8001499c>] (unwind_backtrace+0x0/0xf8) from [<8031e7d0>]

(panic+0x8c/0x1cc)

[<8031e7d0>] (panic+0x8c/0x1cc) from [<80426d24>]

(mount_block_root+0x174/0x228)

[<80426d24>] (mount_block_root+0x174/0x228) from [<80426ecc>]

(mount_root+0xf4/0x114)

[<80426ecc>] (mount_root+0xf4/0x114) from [<80427018>]

32

(prepare_namespace+0x12c/0x180)

[<80427018>] (prepare_namespace+0x12c/0x180) from [<804269dc>]

(kernel_init+0x1e0/0x224)

[<804269dc>] (kernel_init+0x1e0/0x224) from [<8000f2ac>]

(kernel_thread_exit+0x0/0x8)

In output possiamo vedere i messaggi di un tipicoboot di Linux. Il kernel è partito correttamente,rilevando tutti i dispositivi hardware emulatidalla board virtuale, come se questa fosseeffettivamente una board fisica.

Al termine della fase di boot otteniamo tuttavia unkernel panic (cioè unerrore irreversibile che compromette ilfunzionamento del sistema). Il motivo ditale errore lo possiamo trovare nei messaggiimmediatamente precedenti al panic:

VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6

Please append a correct "root=" boot option; here are the available

partitions:

In pratica per il kernel non esiste nessun rootfilesystem. Come abbiamo detto il kernel è soloun contenitore in cui girano le applicazioni, unavolta terminato il processo di boot il kernel cercadi montare un filesystem radice (root) da uno deidispositivi a blocchi rilevati ed eseguire un binariodenominato "init". Se questo binario non vienetrovato il kernel non sa cosa fare e entra nellacondizione di panic.

Nella prossima puntata vedremo come creareun root filesystem adatto al kernel, continuandoa seguire stessa filosofia di questo tutorial:generando tutto completamente da zero.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accederedirettamente all'articolo sul Blog e parteciparealla discussione: http://it.emcelettronica.com/embedded-gnulinux-partendo-da-zero-ricompilare-kernel

33

Impariamo a usare leregex23 Ott 2012 di slovati

Le espressioni regolari, note anche conil termine "regex", sono uno strumentoefficiente e compatto per eseguire laricerca e sostituzione di stringhe dicaratteri all'interno di un testo. Leapplicazioni sono molteplici, non solo nelcampo della programmazione, ma anchenell'analisi ed elaborazione di grandiquantità di dati. Lavorate con file ditesto o HTML di grosse dimensioni e nonsapete come fare una particolare ricercao sostituzione al loro interno? Voleterecuperare con facilità delle informazionida un file di log di un web server?Avete già sentito parlare delle regex manon vi siete mai addentrati in questoaffascinante mondo talvolta considerato(a torto) troppo complicato? Se la rispostaè sì allora non potete perdervi questoarticolo introduttivo sulle regex.

Essere in grado di capire e utilizzare le regex,talvolta chiamate anche rx o re, è sicuramenteun punto a favore per ogni sviluppatore oappassionato di informatica. Ricordiamo che leregex sono riconosciute dalla maggiorparte deilinguaggi di script, come ad esempio Perl, Python,PHP, Javascript, Ruby, e sono ampiamenteutilizzate negli script utilizzati sui sistemi operativiUnix e Linux. Non solo, diversi IDE, editor (adesempio Notepad++, vi e vim), e ambienti disviluppo supportano oggi le espressioni regolari.Qual'è l'utilità delle espressioni regolari?

Come anticipato precedentemente, le espressioniregolari sono un modo estremamente compattoper eseguire la ricerca (come anche la

sostituzione) di specifici caratteri, combinazioni dicaratteri, o parole, all'interno di un testo anchemolto ampio. Un esempio di espressione regolare,con cui penso tutti i lettori abbiano avuto a che farecon l'utilizzo quotidiano del computer, è l'utilizzodelle "wildcard" per selzionare un gruppo di file.Possiamo ad esempio restringere la selezioneai soli file con estensione .txt tramite la notaespressione *.txt. Anche se molto semplice, questoè un esempio di regex. Ovviamente, le regex sonoin grado di fare molto di più..

Per imparare a utilizzare correttamente leregex, verificando direttamente la validità delleespressioni regolari scritte, è utile e consigliabileimpiegare uno strumento di test. Un esempiomolto valido è rappresentato dal tool regexpal,che non richiede alcuna installazione in quantosi tratta di un'applicazione disponibile onlinea questo indirizzo (si tratta in pratica di unprogramma di test per le espressioni regolariscritto in Javascript). In regexpal lo schermoviene diviso in due parti: in quella inferiore andràinserito il testo sul quale si desidera testare (cioèapplicare) l'espressione regolare, mentre nellaparte superiore si digiterà l'espressione regolarestessa. Nell'immagine seguente è mostratala schermata di benvenuto dell'applicazioneregexpal.

RICERCA DI STRINGHE

Cominciamo a esaminare le regex utilizzate per laricerca di stringhe di caratteri. Successivamentevedremo anche il caso della ricerca e sostituzione.Occorre inoltre tenere presente che le espressioniregolari sono case sensitive (a meno di utilizzareesplicitamente un modificatore che vedremo in

34

seguito), e pertanto c'è differenza tra letteremaiuscole e minuscole.

Ricerca letterale

E' il caso più semplice di espressione regolare,e consiste nella ricerca "letterale" di uno o piùcaratteri, numeri, o simboli. Espressioni regolaridi questo tipo sono ad esempio ca, s, 12, ecc.

Consideriamo ora il testo formato dalle parolecasa, cava, cane, sentiero, 1, 12, 123, 2012,e supponiamo di applicare a questo testo leregex citate precedentemente. Il risultato sarà ilseguente (potete verificarlo tramite regexpal).

Nota: le sequenze di caratteri che corrispondonoall'espressione regolare (che cioè la "matchano",perdonate il neologismo) vengono sottolineatie scritti in grassetto, mentre regexpal usa unmeccanismo di evidenziazione con colori giallo eblu alternati.

ca

casa, cava, cane, sentiero, 1, 12, 123, 2012

s

casa, cava, cane, sentiero, 1, 12, 123, 2012

12

casa, cava, cane, sentiero, 1, 12, 123, 2012

I metacaratteri

I metacaratteri sono dei caratteri speciali che,anzichè essere utilizzati essi stessi per eseguireuna ricerca letterale, svolgono una determinatafunzione. Un esempio di metacarattere è ilcarattere punto ('.'), la cui funzione è quella ditrovare corrispondenza (match) con qualunquecarattere tranne il newline. Applichiamo adesempio l'espressione regolare c..a al testoprecedente. Il risultato sarà il seguente:

c..a

casa, cava, cane, sentiero, 1, 12, 123, 2012

In pratica vengono accettate ("matchate") tutte lesequenze di 4 caratteri che iniziano con una 'c' eterminano con una 'a'.

Parlando di metacaratteri, sorge spontaneauna domanda: come posso fare a riconoscere

all'interno di una sequenza di caratteri proprio unmetacarattere? La risposta è la seguente: uso latecnica di "escaping". In pratica, faccio precedereil metacarattere da un backslash ('\') chel'interprete di espressioni regolari riconosce comeun escape (quindi sa che il carattere successivonon va interpretato come metacarattere, ma comeun carattere qualsiasi). Ad esempio, se vogliamotrovare il carattere punto all'interno di un testouseremo la seguente regex:

\.

Oggi è una bella giornata Andiamo a fare un giro in bici?

Come esercizio, provate a rimuovere il caratterebackslash nell'espressione regolare precedente.Cosa succede?

Oltre al punto, esistono altri metacaratteriutilizzati nelle espressioni regolari. Vediamoliassieme.

Il punto di domanda ('?') accetta zero oppureuna sola occorrenza dell'elemento che lo precede.Esempio:

pol?lo

polo pollo polio

L'asterisco ('*') accetta invece zero oppure piùoccorrenze dell'elemento che lo precede. Esempio:

10*

1 10 100 1000 10000 112

Simile al precedente è il segno più ('+'), che accettauna oppure più occorrenze dell'elemento che loprecede. Esempio:

bos+

bobos boss

Il quantificatore numerico singolo {n} trovaesattamente il numero n di occorrenze delcarattere che lo precede. Esempio:

0{3}

1101001000 10000

35

100000

La logica estensione di quest'ultimo tipo diquantificatore è rappresentata dal quantificatorenumerico con range {n, m} che trova il numerodi occorrenze compreso tra n (minimo) e m(massimo) del carattere che lo precede. Esempio:

0{3,4}

1101001000 10000 100000

Per rappresentare una scelta alternativa tradue o più possibili soluzioni si utilizza ilmetacarattere '|' (l'OR utilizzato da molti linguaggidi programmazione e di scripting). Esempio:

luca | giorgio

luca giovanni giorgio nicola

Come si fa ad applicare i quantificatori appenavisti a un gruppo di elementi? E' ad esempiopossibile applicare il quantificatore {n} non a unsingolo carattere ma a un gruppo di caratteri? Larisposta è affermativa: basta utilizzare le parantesitonde per raggruppare gli elementi. Esempio:

(co){2,3}

cococo cococo

Oppure, combiando tra loro più metacaratteri:

lu(n|l)alucaluna lupalula

I raggruppamenti ottenibili con le parentesi tondesono ampiamente utilizzati per memorizzaretemporaneamente dei pattern (vale a dire delleespressioni che corrispondono alla regex) chepossono poi essere richiamati successivamenteper eseguire una sostituzione (replace). Perrichiamare un match memorizzato in precedenzasi usa la notazione \x, dove x=1 per il primomatch, x=2 per il secondo, e così via. Per chiariremeglio questo concetto consideriamo il seguenteesempio. Supponiamo che si vogliano controllaredegli indirizzi e-mail, analizzando una listacontenente nome, cognome, e indirizzo di postaelettronica degli utenti iscritti a un determinato

sito. Supponiamo che la regola sia la seguente:sono validi tutti e soli gli indirizzi espressi nellaforma [email protected], dove sia nomeche cognome sono composti da un minimo di 2fino a un massimo di 10 caratteri. Si avrà allora:

(.{2,10}) (.{2,10}) \1\.\[email protected]

mario rossi [email protected] Piero Bianchi [email protected] luca giovanni [email protected]

Sempre nella categoria dei metacaratteri, un ruoloimportantissimo è svolto dalle classi di caratteri,rappresentate attraverso le parantesi quadre ('[' e']'). Quando un insieme di uno o più caratteri vieneracchiuso tra parantesi quadre, viene accettatouno qualsiasi tra questi caratteri, ma non più diuno. Esempio:

[abc]de

ade bde cde abde bcde acde

Se ad esempio vogliamo trovare tutti i numericompresi tra 0 e 9 possiamo usare la classe[0123456789]. Può essere noioso dover inseriretutto l'elenco dei caratteri ammissibili in unaclasse, e pertanto nelle espressioni regolari sonostate definite delle scorciatoie (shortcut) peragevolare questo compito. Ad esempio la classe[0-9] si riferisce a tutte le cifre comprese tra 0 e9 (molto più sintetica della precedente!), le classi[a-z] e [A-Z] alle lettere dell'alfabeto minuscolee maiuscole, rispettivamente. Le classi possonoinoltre essere combinate con i quantificatori, alfine di trovare più occorrenze di uno dei caratterielencati nella classe. Supponiamo di voler trovaretutti i numeri di due cifre compresi tra 10 e 99.L'espressione regolare corrispondente sarà:

[0-9]{2}

10 99 10 50 100

I caratteri all'interno di una classe (quelli cioèracchiusi tra parentesi quadre) possono ancheessere "negati", nel senso che ci interessa trovaread esempio tutti i carattere tranne quelli elencatinella classe. Per svolgere questa funzione siutilizza il carattere "caret" ('^') che va inseritodopo la prima parentesi quadra. Ad esempio lanotazione [^0-9] indica che siamo interessati a

36

tutti i caratteri tranne le cifre decimali da 0 a 9. Unesempio un pò più articolato è il seguente:

[^5-9][A-F]

1A 4F 505C9F

A seconda del particolare linguaggio di scriptingutilizzato per scrivere le espressioni regolari,possono poi esistere o meno altre classi di caratteri(shortcut) in grado di semplificare l'espressionestessa.

Ecco le più comuni:

\d cifra tra 0 e 9 (equivale a [0-9]

\D tutto tranne le cifre tra 0 e 9 (opposto di \d)

\w word (equivale a [a-zA-Z_]

\W non word

\xhh carattere esadecimale hh

\Oxxx carattere ottale xxx

\s carattere spazio

\S tutti i caratteri tranne lo spazio

\c carattere di controllo

Si noti come l'opposto di una classesia rappresentato tramite la stessa letteradell'alfabeto ma in maiuscolo anzichè minuscolo.Inoltre, gli opposti di una classe possono sempreessere ricavati (in modo alternativo) utilizzando ilcaret visto precedentemente.

Due metacaratteri particolari sono gli "anchor",rappresentati dai caratteri '^' (inizio riga) e'$' (fine riga). Il carattere caret non va confusocon quello visto in precedenza relativamente alleclassi. O meglio, per evitare confusione bastaricordarsi che il caret quando è all'interno delleparentesi quadre funge da negazione per i caratteridella classe, mentre quando è all'esterno delleparentesi quadre (e presumibilmente all'iniziodell'espressione regolare) identifica il caratteredi inizio riga. Supponiamo ad esempio di volertrovare all'interno di un testo tutte le righeche iniziano con l'articolo "La". L'espressioneregolare corrispondente sarà la seguente (se usateregexpal, ricordatevi di spuntare l'opzione "^$match at line break):

^La.*

La LallalaLoGli

RICERCA E SOSTITUZIONE

Le espressioni regolari possono essereefficacemente utilizzzate come uno strumentodi ricerca e sostituzione (search and replace).La sintassi dipende anche in questo caso dalparticolare linguaggio di scripting utilizzato,comunque la forma più generale (corrispondentea quella utilizzata dal Perl) è la seguente: /ricerca/sostituzione/modificatore. Il campo "ricerca"sarà una stringa di caratteri contenente nèpiù nè meno un'espressione regolare comequelle viste negli esempi precedenti, mentreil campo "sostituzione" sarà una normalestringa di caratteri. I modificatori li vedremosuccessivamente. Supponiamo di voler cercareall'interno di un testo tutti gli indirizzi deltipo http://www.*.com (ad esempio http://www.abc.com e http://www.def.com) e cambiarliin http://www.*.it (http://www.abc.it e http://www.def.it). Per testare un'espressione regolaredi ricerca e sostituzione conviene utilizzareun editor di testo in grado di supportarequesta funzionalità, come ad esempio Notepad++(liberamente scaricabile qui. Inseriamo in un filedi testo due righe con il seguente contenuto:

http://www.abc.com http://www.boh.com

Apriamo poi la finestra di Replace, spuntiamola checkbox "Regular expression" e inseriamo leespressioni:

http://www\.(\w+)\.com nella casella "Findwhat:" e

http://www.\1.it nella casella "Replace with:"

Premiamo quindi il tasto "Replace All" e lesostituzioni desiderate avverranno in un sol colpo.

In precedenza si è accennato ai modificatori. Laloro funzione è quella di modificare, appunto, ilcomportamento di un'espressione regolare. Unodi questi è rappresentato dalla lettera 'i', il cuisignificato è quello di ignorare le maiuscole

37

e minuscole (l'espressione diventa quindi "caseinsensitive").

Esistono altri tipi di modificatori, come adesempio:

m - gestisce le linee multiple

s - considera la stringa come una linea singola

x - consente di inserire commenti e spazi

g - global match

In questo breve tutorial abbiamo visto ifondamenti che stanno alla base delle espressioniregolari. Poichè queste rappresentano unostrumento essenziale per l'attività di sviluppo, èimportante conoscerle e saperle utilizzare. Il modomigliorare è quello di approfondire la praticaesercitandosi con i casi reali che si presentanonell'attività di sviluppo quotidiana.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accederedirettamente all'articolo sul Blog e parteciparealla discussione: http://it.emcelettronica.com/impariamo-usare-le-regex

38

Wireshark: comecatturare, ispezionare,e filtrare i pacchettiEthernet25 Ott 2012 di slovati

Wireshark, in precedenza noto conil termine Ethereal, è uno strumentosoftware (liberamente utilizzabile) per lacattura, l'analisi, e l'ispezione del trafficodi pacchetti Ethernet che viaggianoall'interno di una rete. In questaguida vedremo anche come sia possibile"sniffare" il traffico di rete wireless.

L'interfaccia Ethernet è oggi utilizzata nonsoltanto all'interno delle reti di calcolatori epersonal computer, ma si sta sempre piùdiffondendo anche nei sistemi embedded enei dispositivi basati su microcontrollore (unclassico esempio è rappresentato dalla notapiattaforma Arduino, dotata di un apposito shieldEthernet). Wireshark permette di catturare ipacchetti Ethernet in tempo reale, e visualizzarlia video in un formato comprensibile per l'utente.Come vedremo, i diversi tipi di pacchetti sonoevidenziati con colori differenti, ed è possibileapplicare filtri per selezionare soltanto i pacchettiche soddisfano determinati criteri di ricerca.Wireshark è pertanto uno strumento utile pereseguire l'attività di debugging, o anche perispezionare il traffico della rete a cui siamoconnessi (se ad esempio abbiamo il sospetto di unapossibile intromissione non desiderata..).

Anzitutto occorre installare sul nostro PCWireshark. Attualmente sono disponibili versionisia per Windows che per Mac OS X, liberamentescaricabili a questo sito. Per chi utilizza il sistema

operativo Linux (in particolare la distribuzioneUbuntu), Wireshark sarà disponibile e accessibileall'interno dell'apposito repository software.

Una volta installato Wireshark, occorreràselezionare un'interfaccia all'interno del menu:Capture->Interface List (può ovviamente trattarsidi un'interfaccia Ethernet di tipo "wired", cioècablata, oppure un'interfaccia Ethernet di tipowireless, a seconda del modello di PC che stimoutilizzando). In questo modo viene attivata lacattura dei pacchetti Ethernet sull'interfacciadesiderata. Subito dopo aver attivato l'interfaccia,verrà presentata all'utente una finestra in cuivengono visualizzati i pacchetti catturati intempo reale. Wireshark è in grado di catturaresia i pacchetti in entrata al PC (o meglioall'interfaccia di rete del PC selezionata), che quelliin uscita. E' importante notare che, selezionandoun'interfaccia di rete wireless e impostando lamodalità "promiscua" tra le opzioni di cattura,è possibile catturare anche i pacchetti cheprovengono da altri dispositivi (in pratica, è cosìpossibile "sniffare" il traffico presente sulla retewireless). La schermata che si presenterà saràsimile alla seguente:

Per interrompere la cattura dei pacchetti saràsufficiente selezionare sul menu principale:Capture->Stop (oppure, in alternativa, cliccaresull'iconcina con la croce bianca su sfondorosso, la quarta da sinistra). Le informazioniacquisite verranno mantenute e sarà poi possibilememorizzarle in un file oppure eliminarle

39

iniziando una nuova acquisizione. Come si puòsubito notare osservando la schermata di cattura,i pacchetti sono colorati in modo differente aseconda del loro tipo. Di default, Wiresharkvisualizza in verde i pacchetti appartenenti altraffico TCP, in blu scuro il traffico DNS, in azzurroil traffico UDP, e in nero i pacchetti TCP che hannoriscontrato dei problemi (ad esempio pacchettitrasmessi in out-of-order, oppure pacchetti chehanno dovuto subire una ritrasmissione). Laseguente immagine, riferita a una sessione diaccesso via browser al sito di Elettronica OpenSource, mostra alcune di queste colorazioni:

Poichè il volume e la tipologia di pacchetticatturati può diventare importante, è utile avere adisposizione uno strumento con cui sia possibileselezionare soltanto specifici pacchetti, quelli a cuisiamo particolarmente interessati. Ciò è possibileutilizzando la funzione filtro di Wireshark. Ilmodo più immediato per impostare un filtro èquello di scriverlo direttamente nella finestrella"Filter:" visibile subito sotto la barra dei menu,premendo poi il tasto Invio oppure Apply (alladestra della finestrella). Le seguenti due immaginisi riferiscono a due esempi di filtro: nel primo casosi sono voluti selezionare tutti i pacchetti relativial traffico DNS (digitando "dns" direttamentenella finestrella Filter), mentre nel secondo casosi sono voluti selezionare tutti i pacchetti che sireiferiscono all'indirizzo IP 192.168.0.1 (in questocaso il filtro è stato selezionato accedendo alla vocedi menu Analyze->Display filters):

Un'altra importante funzionalità di Wiresharkè la seguente: si seleziona un pacchetto traquelli catturati, e, premendo il tasto destro delmouse, si seleziona la voce di menu "FollowTCP Stream". Quello che si ottiene è una nuovafinestra nella quale viene visualizzata tutta laconversazione (cioè lo scambio di messaggio suinterfaccia Ethernet) tra il client e il server(si veda l'immagine seguente). Chiudendo poiquesta finestra, si potrà osservere che Wiresharkha applicato automaticamente un filtro, proprioquello che permette di selezionare soltanto ipacchetti di quella conversazione.

40

Per ispezionare il contenuto di un pacchetto, èsufficiente selezionarlo cliccandoci sopra: il suocontenuto sarà visibile nel riquadro nella partebassa dello schermo. Mentre si sta ispezionandoil contenuto di un determinato pacchetto, è anchepossibile applicare contestualmente un nuovofiltro. Per fare ciò, è sufficiente cliccare con iltasto destro del mouse, e premere la voce dimenu "Apply as Filter". Si hanno a questo puntoa disposizione diverse opzioni, con cui è possibilecreare un filtro basato sulla parte selezionata,oppure su quella non selezionata, oppure su altreopzioni ancora. Si veda al proposito un esempionell'immagine seguente:

Wireshark è uno strumento di analisi del trafficoEthernet molto potente e versatile, grazie ancheal supporto per plug-in relativi a differenti

tipi di protocollo. Qui si è voluta dare solouna panoramica di alto livello del tool, ma lesue potenzionalità e caratteristiche sono moltopiù estese e versatili. Ricordiamo inoltre cheè possibile, oltre che interessante, analizzaredei pacchetti di esempio riferiti a diversi tipidi protocolli comuni. Per fare ciò è sufficienteaccedere a questa pagina web di Wireshark in cuisono riportati numerosissimi esempi di casi reali.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accederedirettamente all'articolo sul Blog e parteciparealla discussione: http://it.emcelettronica.com/wireshark-come-catturare-ispezionare-e-filtrare-i-pacchetti-ethernet

41

Corso diMicroprogrammazione:sistemi di numerazione30 Ott 2012 di Piero Boccadoro

Oggi sulla griglia di partenza di questepagine c'è un esperimento che vedràprotagonisti i nostri utenti premium ed imicrocontrollori. Si tratta, come il titolosuggerisce, di un corso in cui sarannoaffrontate le principali tematiche cheappartengono a varie discipline, qualimatematica (binaria e non), sistemi ecircuiti sia combinatori sia sequenzialima anche elettronica ed informatica,sistemi embedded e sistemi e metodi dirappresentazione dei dati. Questi aspettisaranno tutti funzionali ad apprenderela programmazione su microcontrollori.Buona lettura.

Come tutti i corsi che si rispettino, anchequesto comincia affrontando gli argomentiaccennati partendo da concetti base che tutti noiapplichiamo o utilizziamo tutti i giorni, spessosenza neanche essere troppo consapevoli di checosa stiamo realmente facendo.

Sistemi di numerazione

Sarebbe troppo facile fare esempi dei momenti incui, nella vita quotidiana, noi si debba fare i conticon… i conti! E allora, val la pena di prenderesubito in considerazione i concetti di base, ovverole basi. Oltre questi giochi di parole esiste unfatto che assume rilevanza cruciale, ovvero chealla base di tutti i nostri conti c’è il fatto che è

stato stabilito un sistema di numerazione, definitotramite l'utilizzo di:

• Simboli (0,1,2 … )

• Ordine (0 < 1 < 2 < 3 …..)

• Operazioni (+,-,x…..)

Partendo dal sistema di numerazione a noipiù noto, ovvero quello con cui abbiamopiù familiarità, diamo un’occhiata ai sisteminormalmente usati in campo elettronico edinformatico ed approfondiamo, quindi le basinumeriche.

Nel caso in base decimale (ovvero in base 10)i simboli sono, ovviamente, 0 1 2 3 4 5 6 7 89. Vale la pena, però, di soffermarsi sull'analisidi un generico numero, ad esempio 2389. Essoviene descritto anche grazie allo scritto, ovveroè interpretato come duemilatrecentoottantanove.Inoltre, questo è un fatto che deriva daun'operazione che è stata effettivamente effettuatadalla nostra mente, ovvero 2000 + 300 + 80 + 9.

E se vogliamo, si tratta di: 2 * 1000 + 3 * 100 + 8* 10 + 9 * 1.

Ma potremmo anche dire, per essere più completie formali, che c'è da ricordare che un numeroelevato alla zero è pari a 1. Questo comporta il fatto

che l'operazione realmente compiuta è: 2 * 103 +

3 * 102 + 8 * 101 + 9 * 100.

Queste operazioni sono state "installate" nellanostra mente da piccoli ma sottintendono dueconcetti fondamentali, ovvero quello di base èquello di peso. Ed è proprio in quest'ultimarappresentazione che essi vengono fuori ed

abbiamo XY con X = Base e Y = Peso.

La base esprime il numero di simboli “base”utilizzati all'interno del sistema di numerazione.Lo scopo del peso, invece, è quello di indicarequale valore assume un simbolo, ovvero ciascunsimbolo, a seconda della posizione all'interno dellaquale si trova.

Le basi

Base 2 (anche nota come sistema Binario)

42

Un sistema binario usa i seguenti simboli: 0 1.Per questo motivo, un qualsiasi numero binariosarà rappresentato da una sequenza ordinata di0 e 1. Così, analizzando il numero binario 1101,grazie all’applicazione dei concetti introdottiprecedentemente, abbiamo:

1 * 23 + 1 * 22 + 0 * 21 + 1 * 20

che diventa

1 * 8 + 1 * 4 + 0 * 2 + 1 * 1

Il numero binario 1101 ha, quindi, una equivalenterappresentazione nel sistema decimale, che è paria 13.

Base 8 (anche nota come Ottale, in breve Oct)

Questo sistema è “composto” di simboli quali:0 1 2 3 4 5 6 7. Analogamente a quanto dettonel caso precedente, e sempre con riferimento aquanto introdotto, se abbiamo il numero ottale3416, allora sappiamo che

3 * 83 + 4 * 82 + 1 * 81 + 6 * 80

cioè

3 * 512 + 4 * 64 + 1 * 8 + 6 * 1

Base 16 (anche nota come Esadecimale, in breveHex)

Qui i simboli in uso diventano alfa-numerici, perovvi motivi, e sono: 0 1 2 3 4 5 6 7 8 9 A B CD E F. Questa base è, quindi, un pò complicataperchè utilizza un numero di simboli maggioredella base decimale ma è facile intuire che, di fattoi simboli A, B, C, D ,E, F hanno rispettivamente ilcorrispondente decimale in 10, 11, 12, 13, 14, 15.

Così, il numero esadecimale A85F è convertibilein decimale esattamente con procedura analoga aprima:

A * 163 + 8 * 162 + 5 * 161 + F * 160

cioè

10 * 163 + 8 * 162 + 5 * 161 + 15 * 160

da cui

10 * 4096 + 8 * 256 + 5 * 16 + 15 * 1

Queste considerazioni trovano una piacevole,e sicuramente più agevole, declinazione nellatabella che segue, grazie alla quale viene riassunta

la conversione tra le diverse rappresentazionitrattate fino a questo momento.

DecimaleBinarioOctHex

0 0000 0 0

1 0001 1 1

2 0010 2 2

3 0011 3 3

4 0100 4 4

5 0101 5 5

6 0110 6 6

7 0111 7 7

8 1000 10 8

9 1001 11 9

10 1010 12 A

11 1011 13 B

12 1100 14 C

13 1101 15 D

14 1110 16 E

15 1111 17 F

Facciamo brevemente due osservazioni:

1. con una sola cifra Hex, si rappresentano tutti inumeri rappresentabili in binario con 4 cifre;

2. le basi che è possibile utilizzare o immaginaresono infinite.

In virtù di questa seconda osservazione passiamoad analizzare un aspetto fondamentale, ovverocome sia possibile effettuare la conversione di undato espresso in una base (X) verso una nuovabase (Y).

Per effettuare la conversione da una base adun’altra è sufficiente utilizzare una qualsiasi

43

calcolatrice scientifica. E se non l’avete adisposizione, allora apprezzerete la possibilità diripassare il metodo. Si tratta di svolgere qualchebreve e semplice operazione.

La procedura è la seguente:

supponiamo di avere il numero 19 espresso indecimale e di volerlo convertire in binario. Tuttociò che c’è da fare è dividere il numero n volteper 2. Quello che otterrete è un numero con restoannesso ed a ciascuno dei risultati va associato ilpeso corrispondente (che rappresenta il numeroordinale progressivo della n-1sima divisione chestate eseguendo. È incredibilmente più facile afarsi che a spiegarsi:

Numero Nuovabase

RisultatoRisultatoPeso

19 2 9 1 0

9 2 4 1 1

4 2 2 0 2

2 2 1 0 3

1 2 0 1 4

Così il risultato è il numero binario 10011.

Ancora, supponiamo di avere il numero 31decimale e di volerlo convertire in esadecimale(hex)

Numero Nuovabase

RisultatoRisultatoPeso

31 16 1 15 (F) 0

1 16 0 1 1

Il risultato è il numero binario 1F.

Qualora abbiate la necessità di effettuareconversioni tra Base 2 e Base 16, esiste un metododi conversione “rapida”. Supponiamo, infatti, diaver un numero binario ad 8 bit e di volerloconvertire in esadecimale. Il trucco per avere unaconversione rapida è suddividere in blocchi da4 bit (che vengono chiamati nibble) il numero ericordarsi che con 4 bit si codifica una cifra hex.

Esempi di applicazioni di questo metodo sono:

10101001 -> 1010 1001 -> A 9

1110011110101001 -> 1110 0111 1010 1001 -> E 7 A9

Altre operazioni importanti

Scorrimento a Sinistra (Shift Left)

Se consideriamo il numero binario 0011, che è parial 3 decimale, possiamo effettuare un’operazionedi spostamento di una posizione a sinistra ditutte le sue cifre, ottenendo così 0110, che èpari al 6 decimale. Se applichiamo un ulteriorescorrimento a sinistra otteniamo 1100, che indecimale è 12. Cioè:

0011 -> 3; 0110 -> 3*2=6; 1100 -> 6*2 = 3*4 = 12.

Queste operazioni ci permettono di notare cheuno scorrimento a sinistra equivale ad una

moltiplicazione per un fattore 21; allo stesso mododue scorrimenti a sinistra equivalgono ad una

moltiplicazione per 22. Ciò si può generalizzaredicendo che uno scorrimento a sinistra di N

posizioni moltiplica il numero per 2N. Questaproprietà torna molto utile per spiegare quantovisto al paragrafo precedente.

Scorrimento a Destra (Shift Right)

Operazione duale della precedente è quella di shifta destra; se consideriamo il numero binario 1100,spostiamo di una posizione a destra tutte le suecifre ed otteniamo 0110, che è pari a 6 decimale.Un ulteriore scorrimento a destra ci fa ottenere0011 pari a 3 decimale. E, quindi, riassumendo:

1100 -> 12; 0110 -> 12/2 = 6; 0011 -> 12/4 = 6/2= 3.

A questo punto è facile osservare cheuno scorrimento a destra equivale ad una

moltiplicazione per 2-1 (1/2), due scorrimenti adestra equivalgono ad una moltiplicazione per

2-2 (1/4) e così via. Generalizziamo, quindi, ilconcetto dicendo che uno scorrimento a destra di

N posizioni moltiplica il numero per 2-N (1/2N).

Scorrimento Aritmetico o Logico

Nelle seguenti figure viene evidenziata ladifferenza fra i due tipi di scorrimento, ovvero fralo scorrimento aritmetico e quello logico.

44

La differenza appare evidente in particolare nelloscorrimento a destra, dove il bit di peso piùalto, ovvero il più significativo (MSB), vienemantenuto. Vedremo in seguito che tale bit puòrappresentare il segno del numero quindi lanecessità di mantenere tale informazione risultavitale fintanto che usiamo la matematica consegno.

Scorrimento Circolare (Rotazione)

Un altro caso particolare di scorrimento è quellocircolare, che viene anche detto “rotazione” (perovvi motivi):

In quello a sinistra il bit più significativo vieneriportato al posto di quello meno significativo(LSB). In quello a destra, invece, il bit menosignificativo viene riportato nella posizione cheprima occupava quello più significativo.

È appena il caso di far notare che applicare questaoperazione n volte, con n numero di bit di cui ècomposto il numero, equivale a non aver applicatol’operazione.

Rotazione a Destra (Rotate Right) e Sinistra(Rotate Left) con Carry

Questo tipo di operazione è un classico esempiodi operazione che viene, in genere, utilizzatadai microprocessori per effettuare operazionimatematiche, come avremo modo di approfondirepiù avanti.

Tutto chiaro fin qui? Bene! Allora...

...arrivederci alla prossima lezione

Quanto detto fino a questo momento potrebbesembrare semplicemente elementare ma si trattadi concetti, se vogliamo pre-concetti, nel verosenso della parola, che risulteranno piuttosto utilialla comprensione dell'intero corso.

Questo sarà molto più chiaro già dalla prossimalezione, in cui ci occuperemo dei sistemi digitalie quindi delle funzioni logiche. Ciò verrà fattointroducendo anche i concetti di tabella dellaverità e funzione logica.

L'autore è a disposizione nei commenti pereventuali approfondimenti sul tema dell'Articolo.

Di seguito il link per accedere direttamenteall'articolo sul Blog e partecipare alladiscussione: http://it.emcelettronica.com/corso-di-microprogrammazione-sistemi-di-numerazione


Recommended