nop
Se vedr la luce lo chiameremo nop.
Donato Taddei in privato, 08\08\2014, h. 15.00.

No, lo so  da barbari chiamare Mop un pargolo, ma per uno strumento "multisensore open-hardware 
parlante", Mop pu anche andare.
Ricordate la storia del professor Salfi e del progetto Veyes?
Se ne parler eventualmente a settembre ma io sto cercando di anticiparmi del lavoro perch da 
settembre vorrei partire subito con l'assssemblaggio e nel giro di un mesetto avere per le mani il 
prototipo da testare come si deve.
L'esplorazione del kit di Arduino comincia a dipanare le nebbie sulla configurazione e la 
componentistica necessaria.
E devo pure dire che ho molto apprezzato il fatto che negli esempi del codice, sono anche descritti 
i collegamenti dei circuiti elettrici, di modo che anche un non vedente possa farsene una idea, ma 
magari  solo capitato.
Ho raccolto tutto quanto maturato finora in una paginetta che sar una sorta di diario di bordo per 
chi fosse interessato a seuire questa telenovella a finale incerto.
http://donatotaddei.altervista.org/mop.htm
MULTISENSORE OPEN-HARDWARE PARLANTE
Un progetto aperto basato su tecnologia Arduino
Sommario
1.Premessa
2.Generalit sul progetto
3.Prima formulazione di massima
4.Sulla strada di Damasco: il multimetro parlante di mastro Gippo
5.Configurazione da verificare
6.L'immane scoglio della sintesi

Premessa
Questa pagina si pone come lo strumento di riferimento del progetto che da settembre dovrebbe 
entrare nella fase di realizzazione, test e messa a punto del primo prototipo. Potr dunque essere 
considerata un "canovaccio" per seguire la genesi e la definizione del progetto stesso, costituirne 
l'embrione della documentazione, essere fonte di approfondimenti. Una sorta di blog di servizio.
Generalit sul progetto
L'idea di base  che la tecnologia Arduino pu aprire ai non vedenti notevoli opportunit nel 
controllo dell'ambiente domestico, in particolare per quanto riguarda i pi comuni strumenti di 
misura basati su sensori, quasi sempre preclusi nell'uso autonomo per mancanza di riscontro 
alternativo al display. I rari strumenti di misura parlanti, qualora se ne riuscisse a trovare, 
sono incredibilmente costosi perch basati su rendite e logiche di nicchia. Una progettazione 
aperta, all'insegna dell'"Open hardware", purch economicamente sostenibile,  in grado di 
abbattere tali sovraccosti, favorisce il milioramento del prodotto accrescendo la sua utilit, 
sperimenta modalit ed approcci creativi, favorisce la "circolazione dei saperi" in merito a questi 
problemi.
In prima approssimazione si tratta quindi di assemblare in uno scatolotto quanti pi sensori  
possibile, di leggerne l'input a comando, e di fornirne output secondo differenti modalit, in 
primis riscontro vocale, ma anche riscontro sonoro mediante toni, connessione USB con pc, 
smartphone, display braille, e via connessione wireless e/o altro.
Prima formulazione di massima
Una prima formulazione di massima dei termini del progetto  scaturita dal confronto pubblico su 
mailing-list col professor Massimiliano Salfi, docente di informatica all'universit di Catania e 
referente del progetto Veyes (Virtual eyes). La riporto cos com' nella forma della richiesta di 
uno studio di fattibilit anche economica del progetto.
Caro Massimiliano, per essere sintetico e non sottrarti troppo tempo, sar semplicione e prosaico: 
Vorrei porre a un tuo studente, ferrato in costi e componentistica, il seguente quesito di 
fattibilit:
?Vincolo 1: il prezzo finale all'utente non deve superare di molto i 120 euro;
?Vincolo 2: lil lavoro di assemblaggio del primo prototipo  volontario e la remunerazione  
simbolica;
Tuttavia questa dovr essere quantificata e valutata per poter essere in seguito caricata sui 
successivi esemplari venduti, ed assicurare la replicabilit e la sostenibilit economica 
dell'operazione.
Viceversa l'inferno si sa  lastricato di buone intenzioni.
?vincolo 3: le spese per il materiale non devono superare i 100 euro;
Tanto per dargli un nome potremmo chiamare questo aggeggio multisensore open-hardware parlante.  
uno scatolotto, non necessariamente piccolissimo, contenente al suo interno un Arduino evoluto 
(come 1.5, che controlla il maggior numero possibile di sensori che vi si pu attaccare, fornendo 
una serie diversificata di output da farne uno strumento versatile e fruibile attraverso differenti 
modalit, potendo fungere sia come strumento autonomo tramite display e sintesi vocale, o in 
connessione con altri disposivtivi, come pc, smartphone, display braille, sia via USB che wireless. 
L'approccio deve essere quanto possibile all'insegna della "device indipendence".
Molti sensori sono normalmente presenti nei moderni smartphone ed ovviamente esistono app per 
utilizzarli.
I moderni smartphone sono tutti pi o meno forniti di sintesi vocale e ci invoglia gli 
sviluppatori a semplificarsi la vita prevedendo appunto la mediazione di questi dispositivi.
Non sta scritto da nessuna parte che poi tali app siano veramente fruibili da un non vedente, per 
cui poi bisogner magari inventarsi l'app fatta apposta per loro.
Non  pensabile che una persona debba girare con tre telefonini, uno per sapere se ha scordato la 
luce accesa nel bagno, l'altro per sapere la percentuale di umidit dell'ambiente, e un terzo 
perch  il solo capace di collegarsi via bluetooth a un certo dispositivo. Pertanto il quesito pu 
essere cos sintetizzato:
1.quante e quali funzionalit (tipologie di sensori) si riuscirebbero a infilare e gestire in un 
aggeggio siffatto, coi vincoli di cui sopra? un non vedente ha volte ha bisogno di sapere se c' 
corrente, se una preparazione ha raggiunto una certa temperatura, l'umidit di un ambiente, il ph 
di una soluzione, se un piano  a livello,ecc., l'altezza o profondit di una stanza, ecc.
2.in caso di fattibilit valutare la propria disponibilit odilatri alla realizzazione del 
prototipo, alle seguenti condizioni:
?Meglio se tramite una transazione Paypal io finanzierei per intero l'acquisto del materiale; pi 
precisamente io comprerei il diritto a partecipare alla progettazione, come un cliente esigente col 
sarto o col barbiere per un abito su misura o acconciatura particolare.
?L'eventuale sfruttamento commerciale della realizzazione va a chi assemblato il tutto, fermi 
restando i vincoli di prezzo all'utente di cui sopra.
?Mi riservo una percentuale del 15% sui primi 30 esemplari venduti.
L'idea : se la cosa va il tecnico per i primi 30 pezzi lavora quasi a gratis, sempre che io non 
rinunci alla percentuale, ma si ritrova 30 clienti per altre realizzazioni del genere, e di questi 
tempi per uno studente anche questa, come vendere frutta e verdura,  una prospettiva da 
considerare.
Preciso che la storia della percentuale ha innanzitutto uno scopo didattico:
dopo essere stato pi o meno taglieggiato per 30 anni da quelli che chiamo "mercanti di ausili 
dedicati" non ho certo velleit di lucrare su altri che hanno esigenze simili alle mie.
Intendo solo far riflettere chi si imbarcasse in una cosa del genere che per crescere e non restare 
belle intenzioni pi o meno buoniste  fondamentale porsi il problema della replicabilit e della 
sostenibilit economica. Se la cosa funzionasse sarei innanzitutto soddisfatto ed appagato di 
possederla e servirmene, sarei particolarmente contento se e anche altri la volessero e chi le 
assembla decidesse di farmi recuperare quanto anticipato per il prototipo.
Sulla strada di Damasco: il multimetro parlante di mastro Gippo
Tanto per capire di cosa sto favoleggiando ho finalmente fatto una ricognizione sistematica, finora 
rimandata per mancanza di motivazione, degli esempi e delle librerie di Arduino, segnatamente 
Arduino-1.0.5, individuando credo quasi tutto il materiale necessario.
La folgorazione  arrivata quando mi sono imbattuto in questo articolo A talking multimeter _ il 
blog di mastro Gippo se non erro componente o animatore del Crunchlab di San Don di Piave.
Considerazione poco tecnica: quando si crede di essere da soli ad andare in una direzione  quasi 
certo che altre magari solitudini stanno andando dove vuoi andare tu.
Il prototipo di mastro Gippo  l e dovrebbe essere pi o meno funzionante: permette di avere 
finalmente un multimetro parlante, ha intuito che p poco ergonomico smanettare qualche minuto a 
sincronizzare dispositivi solo per leggere un valore numerico, Ha individuato la componentistica 
necessaria a supportare l'output vocale tramite messaggi preregistrati, soluzione questa sempre 
praticabile, e in definitiva praticata sui mezzi di trasporto, negli aggeggi parlanti di qualche 
euro, ecc. e che pu o deve essere presa in considerazione per tutto il resto di strumenti che 
esula dal multimetro.
Configurazione da verificare
Non mi preoccuperei molto delle dimensioni del contenitore: dovr adattarsi al contenuto e non mi 
spaventa la grandezza di un telecomando o di una radio a transistors di altri tempi.
Credo di avere individuato alcuni componenti di cui mi piacerebbe verificare l'adeguatezza
1.Scheda Arduino Esplora, normale o mega se esiste;
Google racconta: Arduino ESPLORA ha luci e suoni uscite, e diversi sensori di ingresso, compreso un 
joystick, un cursore, un sensore di temperatura, un accelerometro, un microfono, e un sensore di 
luce a bordo. Essa ha anche il potenziale per espandere le proprie capacit con due connettori di 
ingresso e di uscita Tinkerkit e una presa per uno schermo LCD a colori TFT.
E appunto non dovrebbe essere difficile aggiungerci il distanzimetro a ultrasuoni (vedi 
arduino-1.0.5\examples\06.Sensors\Ping\Ping.ino).
Nella sezione degliesempi arduino-1.0.5\examples\06.Sensors e nel percorso 
arduino-1.0.5\libraries\Esplora ci sono esempi sucome gestire molti sensori.
2.SD shield per ospitare i messaggi preregistrati (Gippo docet)
3.this SimpleSDAudio library per suonare wav ed mp3 (idem)
4.se ho capito bene l'uscita USB dovrebbe essere implicita in questa configurazione osi dovr 
prevedere il relativo shield.
5.Li simbolo di maggiore Se ho capito bene si dovrebbe avere a bordo anche quando occorre per 
gestire toni, musichette, beep, perch ci sono casi in cui l'altezza o frequenza di un suono pu 
veicolare informazioni in maniera pi diretta che attraverso la lettura sintetica di una 
lunghissima sfilza di numeri, si pensi a un cicalino su una corrente pulsante, la cui intensit sia 
modulata da un beep
6.wifi shield per poter dare l'output in maniera accessibile da un web browser, atteso che, sotto 
tutti i sistemi operativi, sono proprio i browser quelli che garantiscono una maggiore 
accessibilit.
Inoltre questa  la tecnologia pi promettente per quanto riguarda il controllo a distanza di 
impianti e sistemi domestici, futuribili applicazioni domotiche, pi prosaiche interazioni con 
centraline multifunzione, impianti di giardinaggio, antifurti, ecc., tutta roba finora per noialtri 
senza display rara, cara e amara.
Questa scheda sarebbe sconsigliata per il notevole consumo di batterie, ma  relativo perch non si 
fanno misurazioni continue mentre valgono le considerazioni di cui sopra, si tratterebbe al pi di 
valutare se la scheda Gsm possa essere pi efficace od utilizzabile rispetto al wireless per il 
controllo di impianti domestici a distanza e non.
7.multimetro TP4000ZC basati su CyrusTek ES519xx chip
considerato che il multimetro parlante di Mastro Gippo nasce all'insegna dell'"Open hardware" nulla 
vieta di integrare nella confezione ancheil multimetro e relativo software
8.Ci troviamo facendo, siccome siamo prossimi alle stelle cadenti io se potessi ciinfilerei pure un 
phaccametro con i relativi filetti, per misurare l'qaacidit del mosto, del terreno, della passata 
di pomodoro.
L'immane scoglio della sintesi
Qui sembra cascare miseramente l'asino: la strada dei messaggi preregistrati  ampiamente 
percorribile: in 2 giga di scheda SD se ne stivano di file audio con messaggi, musichette, 
versacci, pernacchie.
L'"asino" per continua a ritenere che fino a quando Arduino non parler il controllo che un non 
vedente potr avere su questa tecnologia estremamente promettente rester sporadico, circoscritto a 
qualche tesi o prototipo e magari sar gi tanto da gridare al miracolo.
Tuttavia il "mastro" ha le sue ragioni e un motivo c' se per esempio nessuno ha pensato di 
portarci su Arduino la sintesi espeak, di cui si pu dire tutto tranne che non  compatta.
"Elementary Watson": in 32 k di memoria programmabile una sintesi vocale difficilmente ci sta, anzi 
molto difficile, quasi inverosimile, anche se ricordo che ai preistorici tempi del dos una volta mi 
sono imbattuto in una sintesi minimalista di soli 2 k che utilizzava lo speaker del pc, (le sound 
blaster erano di l da venire)! e il suo inglese era incredibilmente intelligibile per le 
dimensioni del programma.
In effetti qualcuno ci ha pure provato ma siamo mi sembra aduno stadio ben primitivo come si pu 
ascoltare da qui.
vedi Open source releases from TinkerLondon and Tinker.it
Saprei fare di meglio e in italiano come potete confrontare qui.
Potete dire che la voce non vi piace, ma  comprensibile e soprattutto ha bisogno di pochissime 
risorse, appunto perch non  una sintesi. In effetti l'approccio utilizzato  quello delle 
primissime sintesi vocali,ovvero la concatenazione di campioni.
Dovete ammettere per che non sono "pretese esagerate":
1.un decina di k per un indice
2.trasformare in minuscola la stringa da sintetizzare
3.effettuare una serie di trasformazioni fonemiche trasformando in maiuscola le lettere interessate 
(g per gola, G per agio, ecc.)
4.recuperare dal file dei campioni, verosimilmente ospitato sulla scheda SD, i difoni implicati 
nella frase scrivendo un normale file wav
5.suonare il wave prodotto mediante la libreria simpleSDAudio.
Ma figurati se poteva andare liscio!
Allo stato non mi  nemmeno ben chiaro se sia possibile accedere in modalit binaria a un file 
ospitato sulla SD
Fino a qualche versione fa si poteva accedere a un solo file per volta ma questo limite dovrebbe 
essere superato;
Non ho trovato traccia di funzioni simili a "fseek" che ti permette di leggere da un file a partire 
da una certa posizione e per una data lunghezza, ma nella peggiore delle ipotesi si pu sempre 
ovviare come ai tempi di Pappagone quando i file si leggevano byte per byte, o sperare in prossime 
pi performanti release della SD library.
