Sei sulla pagina 1di 69

{2

I protagonisti dellelettronica: 3 domande


agli autori di EOS
Il nome di questa categoria sar: I protagonisti dellelettronica, e sar mantenuta la tag 3Domande
per ritrovare facilmente tutte le interviste e quindi tutti i protagonisti dellelettronica.
Vista leterogeneit degli autori (professori, professionisti, makers) nasce lesigenza comunque di
dividere le domande in funzione della propria attivit.

PASSIAMO ORA ALLE DOMANDE.


La prima sar di presentazione e dunque uguale per tutti. Nella risposta ci si presenter ai lettori
parlando del proprio lavoro. Il testo della domanda da copiare nellintervista sar:

La prima domanda di presentazione alla community. Raccontaci di


cosa ti occupi e quale stato il percorso intrapreso per raggiungere la tua
posizione.
La seconda domanda, seppur generale, parler dellesperienza che lautore ritiene pi significativa, che ha dato una svolta alla sua carriera o nella quale ha dato il massimo. Ovviamente, per chi
lelettronica o la tecnologia non una professione, ma un hobby, parler di uno dei progetti che
ha affrontato con maggior impegno o di cui si sente soddisfatto. Il testo della domanda da copiare
nellintervista sar:

Qual stata lesperienza che, pi di tutte, ti ha lasciato il segno?

Infine lultima domanda sar specifica.


In particolare, per chi svolge una professione nellambito tecnologico potr essere:

Quale consiglio daresti a chi oggi deve prendere una decisione per il
proprio percorso di studi o professionale?

Mentre per chi lelettronica un hobby risponder alla domanda:

Quale progetto hai nel cassetto?

ELETTRONICA OPEN SOURCE

{3
Potete inviare la vostra intervista via email direttamente a sara@emcelettronica.com che provveder a schedularla sul Blog per una pubblicazione in prima pagina. Si prega quindi di allegare una
vostra foto di dimensioni 680340.
I protagonisti dellelettronica siamo noi!

Emanuele Bonanni

ELETTRONICA OPEN SOURCE

4}

C o me Ar dui no m a
o ltr e : in t r o d uz i o ne
ai L au n c hp a d
MS P 430 d i TI
di StefanoDS
3 Febbraio 2015

Per un appassionato di informatica, di elettronica e, in generale, di tecnologia, il mondo dei microcontrollori presenta aspetti molto affascinanti. Esso ne incorpora molti
temi differenti, che offrono ulteriori opportunit per allargarsi verso altri, potenzialmente infiniti, orizzonti del mondo reale. Oggi vorrei parlarvi di un tema importantissimo che forse la principale ragione dessere di Elettronica Open Source: quello didattico. I giovani, specialmente gli studenti di scuole e di facolt non tecniche,
spesso si relazionano con il mondo digitale senza una vera consapevolezza dei suoi
reali principi e meccanismi di funzionamento. Per la loro pervasivit ed estensione,
lelettronica e linformatica non possono essere conosciute nella loro interezza, ma,
apprendendone le basi, nulla ci sar poi precluso se vorremo approfondirle. Per chi,
come me, considera inoltre la programmazione come il latino del nuovo millennio,
una ginnastica logica per la mente, impararla con i microcontrollori di Texas Instruments stata unesperienza fantastica.

egli ultimi anni, vi stata una forse ina-

nuovo, anzi. Vi sono stati tre fattori, a mio pare-

spettata riscoperta, dato che i microcon-

re, che hanno contribuito a farli tornare di moda

trollori non sono certamente un prodotto

tra gli appassionati:

ELETTRONICA OPEN SOURCE

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI


Internet, sia come inesauribile strumento di

che in altri ambiti: desktop, web e mobile. Per

diffusione delle conoscenze, che per la pos-

raggiungerli, era innanzitutto necessario affina-

sibilit che offre di connetterli in rete;

re la mia conoscenza applicata del linguaggio

la diffusione di strumenti software compi-

C. Almeno dal punto di vista sintattico e in

latori, IDE, debugger quasi sempre gratui-

parte anche semantico C il padre di tutti i lin-

ti, aperti e di livello professionale;

guaggi di programmazione, ormai tutti orientati

infine, la discesa di prezzo delle schede di

agli oggetti, in uso oggi. Nel campo degli MCU,

sviluppo, che a volte ormai costano quanto

inoltre, non c proprio storia: per una serie di

una rivista cartacea di qualche anno fa.

ragioni efficienza, accesso allhardware e

Poi c stato sicuramente Arduino, al tem-

portabilit in primis C resta e rimarr, il loro

po stesso causa ed effetto di questi tre fattori.

linguaggio delezione. Apprendere C su un per-

Esso, ormai di fatto, per quasi tutti quelli che si

sonal computer, oggi, pu sembrare limitativo e

avvicinano a questo mondo sinonimo di micro-

frustrante, ma grazie allInternet delle cose e

controllore (da ora anche abbreviato in MCU)

ai microcontrollori, finalmente ci si pu avvicina-

ed percepito come la via daccesso pi facile.

re alla programmazione, interagendo con appli-

La comunit che vi ruota intorno e la quantit di

cazioni del mondo reale, concrete e stimolanti.

esempi presenti online, spesso solo da copiare

Una volta padroneggiato C, si ha la possibilit

e incollare, sono effettivamente rimarchevoli. Il

di affrontare gli altri linguaggi pi ampi e potenti,

suo approccio ultra-pratico, insieme al suo lin-

con una consapevolezza molto maggiore dei

guaggio semplificato, pur garantendo risultati

meccanismi che legano lhardware al sof-

immediati, rischia, tuttavia, di vanificare i bene-

tware rispetto a chi li approccia direttamente.

fici didattici di queste nuove tecnologie.

Anche se qualcuno lo sconsiglia come per-

Non sempre, infatti, lopinione comune e pi

sino Bjarne Stroustrup, il pap di C++ che ha

pubblicizzata la migliore: esistono strade al-

fatto evolvere C in questo senso sono con-

ternative, meno battute e pi tortuose, dove ci

vinto che arrivare alla programmazione ad og-

si pu avventurare e che portano a luoghi o ri-

getti e ricordo che il compilatore TI supporta

sultati inaspettati e preziosi. Prima di suggerir-

pienamente il C++ passando per quella pro-

vi come intraprenderla, tuttavia, vi vorrei esplici-

cedurale sia lapproccio pi solido, anche se si-

tare gli obiettivi che mi ero posto personalmente

curamente meno immediato. Solo toccando con

quando, sentendomi soffocato dalle limitazioni

mano le limitazioni della programmazione pro-

di Arduino, ho cercato unalternativa che mi per-

cedurale, infine, potrete apprezzare il significato

mettesse di raggiungerli. Il primo era quello di

e i motivi del passaggio al pi complicato Object

astrarmi da una singola architettura hardware;

Oriented Programming. Infine, qualche consi-

poi quello di superare la logica della mera pro-

glio didattico: esercitatevi molto sullaritmetica

totipazione rapida funzionale solo al proof of

binaria in particolare sulle operazioni bitwise

concept per arrivare a sviluppare applicazio-

ed esadecimale, non fatevi spaventare dalle

ni pi raffinate, affidabili e davvero pronte allu-

strutture e, soprattutto, dagli ostici puntatori.

so; per ultimo, quello di acquisire delle capacit

Ultimissimo suggerimento: approfondite bene

di sviluppo che potessero essere utilizzate an-

come funziona la memoria di un calcolatore,

ELETTRONICA OPEN SOURCE

{5

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI


e le differenze di funzionamento fra le diverse

ogni caso, sarebbe un problema da affrontare

aree (statica, stack, heap). Sar indispensa-

comunque, gi scegliendo altre schede Arduino

bile per comprendere le funzioni di allocazione

che non siano il modello base UNO. LMCU, in-

dinamica come la malloc() e la free() e il fondamentale rapporto fra puntatori e array.

vece, profondamente diverso e notevolmente


pi avanzato di quello Atmel usato sullArduino
UNO, per una serie di motivi:
Si basa su di un moderno microprocessore
RISC ortogonale a 16 bit: il compromesso
ideale tra la semplicit degli 8 bit e la complessit dei 32 bit;
La sua architettura stata progettata fin
dallinizio per renderlo leader assoluto nei
bassi consumi e oggi rivoluziona la progettazione e il debugging del low-power grazie
a Energytrace++ ;
Incorpora lunica grande rivoluzione architet-

Energia: lIDE simil-Arduino per programmare i Launchpad

Esaminiamo insieme, dunque, lopzione del microcontrollore Texas Instruments MSP430. Partiamo subito da un presupposto importante per
non farvi scoraggiare: essa compatibile con
Arduino perch ha il suo porting delle librerie

turale avvenuta di recente nei microcontrollori: grazie alla tecnologia FRAM non esiste
pi alcuna distinzione hardware fra RAM e
memoria di massa;
Ha un sistema di clock molto versatile e soprattutto rapidissimo nel risvegliarsi dallo
sleep;

e delIDE Wiring, chiamato Energia (scaricabile

Il codice generato dai compilatori molto

dal sito www.energia.nu). Questo un ambien-

compatto rispetto ad altri MCU a 8 bit, per

te assolutamente identico, cambia solo il co-

cui si necessita di meno memoria on-board;

lore dello sfondo che qui rosso invece che


verde e lunica differenza operativa riguarda
il numero e la disposizione dei pin che trovate
sulle schede. In termini pratici, un po come
imparare a guidare su una Fiat e poi passare a
una Renault, con la disposizione della leva del
cambio e dei tasti delle luci diversa. Questo, in

ELETTRONICA OPEN SOURCE

{6

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI

Come riconoscere le varie versioni della famiglia di microcontrollori MSP430

Altri benefici importanti, per chi si avvicina, ri-

sia da TI che da terze parti, che consentono

guardano i kit di sviluppo, chiamati Launchpad:

tra laltro una completa interfacciabilit wire-

Sono estremamente economici, nonostan-

less;

te la progettazione e la costruzione assolutamente impeccabili: le schede costano tra i


10 e i 16 dollari;
Incorporano nativamente lhardware necessario per il debug, senza bisogno di altri accessori quali emulatori JTAG;
Sono disponibili una serie di espansioni
molto interessanti chiamate Boosterpack
equivalenti agli Shield di Arduino prodotti

Una scheda di espansione wireless Boosterpack

ELETTRONICA OPEN SOURCE

{7

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI


Funzionano a 3.3v rispetto ai 5v di Arduino
Uno, hanno pin protetti e GPIO predisposti
per applicazioni capacitive (touch) e per il
pilotaggio diretto dei display LCD;

ro e open source GCC, per lMSP430, migliorato e mantenuto da Red Hat;


Esistono sia un IDE che un compilatore
IAR e altre alternative a pagamento per i

Hanno resistenze interne su tutte le porte,

progettisti professionisti che vi siano abituati;

abilitabili via software , un pulsante utente e

Da dentro CCS6 sono accessibili diretta-

(almeno) due LED disinseribili;

mente librerie in C e in Assembler per fun-

La scheda pi nuova incorpora, oltre alla gi

zioni speciali ad esempio matematiche e

citata FRAM, anche un supercondensatore

di crittografia plugin, RTOS, toolkit per cre-

che funge da batteria tampone e consente il

are applicazioni grafiche, oltre che decine di

debug dinamico del consumo, profilando

esempi sia di sketch in codice Wiring / Ardu-

il codice;

ino che in C;

Il super-innovativo Launchpad EXP430FR5969, con Il


primo microcontrollore a incorporare la memoria FRAM

Riguardo al software, oltre alla gi citata compatibilit con Wiring / Arduino, vanno segnalate:
La disponibilit di un ambiente di sviluppo
multipiattaforma Windows e Linux professionale e gratuito, Code Composer Studio 6, basato su Eclipse, il pi diffuso IDE
aperto;
Supporta il compilatore proprietario TI, gratuito per luso con le loro schede;
Dispone, in alternativa, del compilatore libe-

ELETTRONICA OPEN SOURCE

{8

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI

LIDE professionale Code Composer Studio 6, basato su Eclipse e disponibile per Windows e Linux

Per ultime, vanno spese due parole riguardo al

ma scritto in Java pi versatile e utiliz-

supporto e alla documentazione che, secondo

zato per qualunque linguaggio e tipolo-

la tradizione Texas Instruments, sono di primis-

gia di programmazione;
Si possono utilizzare i comandi e le librerie

simo livello:
I datasheet, sia per famiglia di MCU che per

Wiring / Arduino dallinterno di CCS6, aven-

singolo chip, sono precisi, chiari ed esausti-

do per in pi a disposizione il debug har-

vi;

dware passo-passo, tecnica indispensabile

Esistono uninfinit di application report


con codice aperto e libero, che, analizzando
e approfondendo i problemi da affrontare,
contribuiscono a facilitare lapprendimento;

quando si sviluppa codice nuovo e inevitabilmente difettoso;


LIDE pu visualizzare lAssembler compilato, accanto al C / C++, oltre che mischiarlo

Oltre a un testo di riferimento sulla piattafor-

nativamente: un ottimo modo per imparar-

ma, gi disponibile un manuale di avvici-

lo! Tra laltro lAssembler dellMSP430, in

namento alla stessa, che utilizza il linguag-

quanto processore RISC a 16-bit ortogona-

gio e le librerie Wiring / Arduino;

le ad architettura Von Neumann cio con

Quali sono i vantaggi che comporta sviluppare

modalit di indirizzamento universali e con

su di un IDE professionale quale Code Compo-

istruzioni e dati condivisi nello stesso spa-

ser Studio, rispetto a quello iper-semplificato di

zio di memoria veramente semplice e

Arduino, che qui porta il nome di Energia?

comprende appena 27 istruzioni native e 24

Imparando ad usare CCS 6, si apprende a

emulate;

utilizzare Eclipse, lIDE aperto multipiattafor-

Si pu passare in modo indolore alle archi-

ELETTRONICA OPEN SOURCE

{9

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI


tetture pi potenti Texas Instruments ha in

ormai antiche ma sempre attuali videolezioni

catalogo vari altri kit di sviluppo altrettanto

di Fondamenti di Informatica I e II dei Proff. Meo

economici, basati su piattaforma ARM a 32

e Mezzalama del Politecnico di Torino, che ve-

bit, fino al potentissimo M4 su cui viene

nivano trasmesse di notte dalla RAI e dal Con-

mantenuto lo stesso lambiente di sviluppo e

sorzio Nettuno e che ora sono disponibili in rete.

perfino la compatibilit Wiring / Arduino!

Il passo successivo quello di acquistare una

A questo punto vi potrete domandare come ci si

scheda di sviluppo, o direttamente dallo store

possa avvicinare a tutto questo e se sia realistico

di TI (che aggiunge 14 dollari per la spedizio-

rispetto alla semplicit di decomprimere lo zip di

ne in Italia), o da uno dei tanti distributori italia-

Arduino e di lanciarlo. proprio questo il mes-

ni. Il mio consiglio quello di prendere prima il

saggio che vi vorrei trasmettere, rispondendovi

Launchpad base e pi diffuso EXP430G2, (con

ovviamente in modo affermativo e offrendovi un

chip G22553) da dieci dollari, tenendo presente

percorso, un metodo che con me ha funziona-

per che non compatibile con lIDE su Linux

to. Richiede del tempo e parecchio impegno,

( lunico caso in cui serve un programmatore/

non c dubbio, ma le soddisfazioni che ne po-

emulatore esterno, mentre su Windows funzio-

trete trarre sono di vari ordini di grandezza su-

na correttamente). tuttavia il modello pi sem-

periori a quelle che sono possibili usando solo

plice e il chip a bordo ha piedinatura 20-PDIP,

Arduino. Non scoraggiatevi, perch vi garanti-

quindi facilmente trasferibile su breadboard

sco che tutto questo alla portata di qualun-

e millefori. Lalternativa, pi attuale e su cui TI

que lettore curioso di EOS, anche alle prime

punter sempre di pi in futuro, il super-inno-

armi. Lunico requisito indispensabile, va detto

vativo Launchpad EXP430FR5969 (16 dolla-

con onest, una buona dimestichezza con

ri) con FRAM, supercondensatore e debugger

linglese tecnico, altrimenti vi sono delle piatta-

(supportato sia in Windows che in Linux, per cui

forme pi popolari in Italia su cui pu valere la

consigliato a chi usa solo questultimo) sia del

pena di puntare. Come cominciare, dunque?

codice che delle performance di consumo, tra-

Il primo passo quello di capire come funzio-

mite il plugin Energytrace++. Il suo MCU con-

nano un elaboratore elettronico ed i suoi sotto-

tiene una grande quantit di memoria, ben 64

sistemi: essenzialmente la CPU e la memoria.

kB, da partizionare anche dinamicamente a

Un microcontrollore, infatti, non altro che un

piacimento, fra memoria di massa e RAM.

sistema completo su un unico chip con ri-

Dopo che avrete naturalmente installato CCS6

sorse e prestazioni certamente limitate che,

(ed eventualmente anche Energia) e scaricato

in aggiunta, dotato di alcune periferiche che

la sua guida slau157.pdf, la primissima cosa

gli permettono di rendersi utile nel mondo fisi-

che dovrete fare quella di scaricarvi dal sito

co. Il secondo passo quello di avvicinarsi al

TI i PDF dei datasheet relativi al vostro micro-

linguaggio C e alla sua particolare caratteristica

controllore e al vostro particolare Launchpad. Di

di ponte fra il linguaggio del calcolatore il co-

norma, sono tre documenti in totale: il primo

dice macchina o lequivalente Assembler e un

quello per la famiglia di MCU e qui i codici sono

idioma comprensibile a noi esseri umani.

davvero tanti, ma se avete seguito i miei con-

Per entrambi gli scopi, ho trovato utile seguire le

sigli si tratta rispettivamente dei MSP430x2xx

ELETTRONICA OPEN SOURCE

{10

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI


oppure degli MSP430FR59xx e i relativi docu-

infinita tra libri gratuiti in PDF ed HTML, fa-

menti sono lo slau144 e lo slau367 (con una

tevi un giro in rete e sceglietevi ci che pi

lettera finale che ne denota la revisione pi

vi aggrada. Lunico consiglio che non posso

recente). Il secondo datasheet riguarda il par-

non darvi quello di munirvi se non altro

ticolare chip, seguendo lo schema suggeri-

per ragioni sentimentali e di gratitudine nei

to si tratta rispettivamente del MSP430G2553

loro confronti, dello storico testo dei creatori

e del MSP430FR5969 e i relativi PDF sono lo

del Linguaggio C: Il linguaggio C. Principi

slas735 e lo slas704. Per conoscere invece lo

di programmazione e manuale di riferi-

schema hardware e le particolarit dei Laun-

mento, di Brian Kernighan e Dennis Ritchie

chpad, scaricatevi rispettivamente lo slau318

(Pearson Prentice Hall). Non un corso e

e lo slau535. Per ultimo, vi consiglio di prele-

non molto adatto per imparare, ma as-

vare la guida al compilatore C / C++ di TI, lo

solutamente imprescindibile come reference

slau132, dove potrete approfondire il funziona-

manual;

mento delle funzioni intrinseche ovvero quelle

Cercate di procurarvi in rete le Videolezio-

non direttamente accessibili da C e le note

ni di Fondamenti di Informatica I e II, dei

di implementazione specifiche per larchitettura.

Proff. Angelo Raffaele Meo e Marco Mezza-

Con questi pochi strumenti in mano, non avrete

lama del Politecnico di Torino Consorzio

limiti e potrete, partendo da zero, diventare dei

Nettuno. In particolare quelle introduttive di

veri e propri maghi della programmazione em-

Mezzalama, apparentemente elementari, of-

bedded! Un solo consiglio pratico, dato che or-

frono una panoramica del funzionamento di

mai i costi sono alla portata di tutti: sia che usia-

base della CPU, che a molti manca;

te un PC desktop che, soprattutto, un portatile,

Per accompagnarvi nella comprensione pro-

munitevi di un secondo monitor. fondamen-

fonda di C, vi consiglio assolutamente lim-

tale, quando si programma un microcontrollore,

perdibile: Thinking in C: Foundations for

tenere aperto sullo schermo principale lIDE, ma

Java & C++, di Chuck Allison, un seminario

anche avere i datasheet a portata di mano su

in Flash scaricabile gratuitamente su www.

quello secondario.

mindviewinc.com. Il suo scopo quello di

Ora che siete pronti a decollare, vi lascio qual-

prepararvi alla programmazione ad oggetti,

che indicazione sulle altre risorse da procurarvi

argomento che esula un po dai microcon-

per intraprendere questavventura:

trollori, ma in realt si tratta di un ripasso di

Se volete partire leggeri, con lapproccio Wi-

tutti i concetti pi ostici di C, proposto con un

ring / Arduino, compratevi il libro Getting

metodo ed una chiarezza eccezionali;

Started with the MSP430, di Adrian Fer-

Guardatevi i video del workshop Getting

nandez and Dung Dang (Newnes). stato

Started with the MSP430G2553 Value-

scritto da due giovani application engineer

Line LaunchPad e Getting Started with

di TI ed ha un taglio molto pratico, basato su

the MSP430 LaunchPad, disponibili su

Energia;

processors.wiki.ti.com. Da poco anche

Vi serve senzaltro un testo / corso di introduzione al C. Qui la scelta pressoch

disponibile la versione relativa al nuovo


MSP430FR5969;

ELETTRONICA OPEN SOURCE

{11

Come Arduino ma oltre: introduzione ai Launchpad MSP430 di TI


Durante tutta la trattazione dellarticolo, ho

pre su www.mindviewinc.com;

dato per scontato che aveste tutti una pre-

Infine vi segnalo una serie di risorse e di siti di

parazione almeno di base di elettronica, che

riferimento disponibili in rete, su cui potrete tro-

assolutamente indispensabile per lavo-

vare tutte le informazioni di cui avrete bisogno:

rare con i microcontrollori. Per chi non ne

Texas Instruments

sapesse proprio niente, suggerisco lottimo

Texas Store

Make Electronics: Learn by Discovery,

MSP430

di Charles Platt (O Reilly). Ha un approccio

Energia

ultra-pratico, pieno di figure e perfetto per

Laurtec.it (tra i tutorial, c n uno in italiano

sperimentare da subito con LED, interruttori

sullMSP430)

e con la scheda di sviluppo. Comunque in


rete si trova di tutto, come, daltronde, anche

CONCLUSIONI

anche su Elettronica Open Source.

Arrivati alla fine di questa lunga introduzione al

Esiste un testo di riferimento della piatta-

mondo dei microcontrollori a 16 bit MSP430 di

forma MSP430, che ne sviscera ogni segreto

Texas Instruments, non mi resta che augurarvi

e al tempo stesso uno dei libri migliori per

un grande In bocca al lupo se vorrete intra-

imparare a conoscere e a sfruttare a fondo

prendere anche voi questa meravigliosa avven-

tutte le caratteristiche di un microcontrollore

tura. Anchio, partendo da zero, mi sono sentito

in generale. Non aggiornatissimo perch

un po spaesato quando ho deciso di accanto-

le schede hardware a cui fanno riferimento

nare Arduino per qualcosa di meno limitante.

gli esempi scritti tra laltro per il compila-

Oggi, per, mi sento orgoglioso ed appagato

tore IAR, di cui disponibile una versione

per quello che ho appreso, e soprattutto capace

demo gratuita ma limitata sono obsolete

di affrontare qualsiasi argomento in ambito in-

e non pi disponibili. Il porting alle schede

formatico ed elettronico sempre con umilt, ci

nuove e al compilatore TI comunque ba-

mancherebbe ma senza paura e complessi di

nale oltre che essere un utilissimo esercizio

inferiorit. Allora, buon viaggio!

per fissare i concetti in mente. Si tratta di


MSP430 Microcontroller Basics, di John
Davies (Newnes);
Se vorrete poi passare alla programmazione
ad oggetti e spiccare il volo anche in ambito
desktop, web e mobile, vi consiglio i bellissimi testi Thinking in C++ (disponibile la traduzione in italiano) e Thinking in Java, di
Bruce Eckel, scaricabili gratuitamente sem-

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/come-arduino-ma-oltre-i-launchpad-msp430-di-texas-instruments

ELETTRONICA OPEN SOURCE

{12

13}

Mo t o r e Wa nkel
Al la ric e r c a d el l a
pr est azione
di Fabrizio Bianchini
5 Febbraio 2015

Quando parliamo di Elaborazione del motore dal punto di vista prettamente tecnico,
pensiamo subito ad un incremento della potenza, ma scendendo in dettagli prevalentemente fisici e di studio di un motore termico, osserviamo che i fattori in campo
sono molteplici. Questi concetti basilari sono assolutamente equivalenti anche per il
motore rotativo, poich esso una tipologia di motore termico e pertanto soggetto
agli stessi principi di un motore tradizionale a pistoni.

GRANDEZZE FONDAMENTALI

secondo (m/s).

ensando al mondo dei motori in senso stretto, la prima grandezza che ci viene in mente
senza dubbio la velocit. Come ben sap-

Quando la velocit subisce una variazione, pos-

piamo dalla fisica classica, la Velocit una

siamo parlare di Accelerazione, ovvero una

grandezza definita come Tasso di cambiamen-

grandezza vettoriale rappresentante la Varia-

to di posizione di un corpo in funzione del tempo

zione della Velocit nellunit di tempo. Par-

t. Se siamo amanti della matematica, preferia-

lando in termini matematici, possiamo definirla

mo definirla come Derivata del vettore posizio-

come Derivata della Velocit in funzione del

ne rispetto al tempo. Essa si misura in metri al

tempo t. Si misura in metri al secondo qua-

ELETTRONICA OPEN SOURCE

Motore Wankel Alla ricerca della prestazione


drato (m/s2).

Vapore, ovvero la Potenza necessaria a solle-

Per meglio comprendere queste due grandez-

vare 75 Kg (735 N) alla velocit di 1 m/s.

ze, possiamo osservare questo grafico: Nella


parte superiore abbiamo la rappresentazione

1 CV = 735 W = 0,735 kW

della Velocit v in funzione del tempo t. LAccelerazione, essendo derivata della Velocit ri-

Si definisce Coppia Motrice Il momento mec-

spetto al Tempo t, equivale alla pendenza della

canico applicato dal motore ad una trasmis-

retta (blu) tangente alla curva. La parte inferiore

sione. Essa subisce una variazione al variare

della figura invece, rappresenta il valore dellAc-

del regime di rotazione del motore. Il momento

celerazione in funzione del Tempo t. Banalmen-

meccanico (Torque) non altro che Lattitudine

te, facilmente osservabile come la definizione

di una Forza ad imprimere la rotazione ad un

stessa di Accelerazione, ovvero di Variazione

oggetto attorno ad un punto o ad un asse. Si

della velocit, sia perfettamente riscontrabile

misura in Nm (Newton per metro).

allinterno del grafico. LAccelerazione infatti

possibile pertanto utilizzare il valore della

(retta blu), cambia continuamente in funzione

Coppia Motrice per calcolare la Potenza di un

della Velocit stessa.

motore, seguendo la formula

P la potenza del motore espressa in W (watt)


al numero di giri desiderato
T la coppia generata espressa in Nm (newton
per metri).

la velocit angolare espressa in radianti al


secondo a cui si riferisce la potenza P.
( = 2f dove f = n giri al secondo)

LA BASE DI PARTENZA
Nellambito di unanalisi riguardante i motori,

Essendo abituati ad auto di serie, sia che esse

occorre definire anche i concetti di Potenza e

siano auto standard o supercar, la sensazione

Coppia Motrice.

che si prova quando ci si avvicina per la prima

Si definisce Potenza, la variazione di energia

volta ad unauto elaborata, quella di un profon-

trasferita nellunit di tempo. Nel SI (Sistema In-

do timore riverenziale, un sentimento che penso

ternazionale) essa si misura in Watt (W), ovvero

sia generato dallistinto di sopravvivenza insito

il rapporto tra unit di energia in joule (J) e unit

nellanimo umano. Vedere una coup come la

di tempo in secondi (s)

Mazda Rx-7, dotata di propulsore bi-rotore da


quasi 250CV nella sua ultima versione (13B
REW), allinterno di una concessionaria, attira

Per quanto riguarda il caso in questione, occor-

lattenzione per i suoi fari a scomparsa, le linee

re considerare la Potenza espressa in Cavallo

sportiveggianti, e il sound del motore rotativo

ELETTRONICA OPEN SOURCE

{14

Motore Wankel Alla ricerca della prestazione


che per coloro che non lo hanno mai ascoltato,

mo fatto bene il nostro lavoro e abbiamo saputo

decisamente particolare e insolito.

trovare quello che nei meandri della fisica, della


matematica e della ricerca ingegneristica stavamo cercando. Gi, ma cosa stiamo cercando
esattamente? Abbiamo il nostro motore rotativo
e unossessione che non ci fa dormire la notte,
cosa possiamo fare?

APRIAMO IL COFANO
La visione dello stesso esemplare di partenza,

Se abbiamo letto attentamente lintroduzione e

in seguito ai trattamenti ricevuti da un elabora-

larticolo precedente a questo, sappiamo che

tore, vi garantisco che non assolutamente la

grandezze intervengono nel funzionamento di

stessa cosa. come assistere alla metamorfo-

un motore rotativo e, pi in generale, nel funzio-

si del Dr.Jekyll in Mr.Hyde. Carrozzeria alleg-

namento di un motore termico.

gerita, gomme pi larghe per scaricare a terra

Sappiamo che la potenza di un motore data

la potenza del motore che pu superare age-

da:

volmente i 500CV, assetto sportivo, pacchetto


aerodinamico per diminuire la resistenza nella-

Potenza = Coppia Motrice x Numero di Giri

ria e, allo stesso tempo, aumentare la tenuta di

Motore

strada. Laitante coup stata trasformata in un


concentrato di tecnologia, divertimento e asso-

Detto questo, per i princpi base della moltipli-

luta pazzia.

cazione, siamo consapevoli di avere due strade


percorribili:
Aumento della Coppia Motrice
Aumento del numero dei giri del motore
Detto cos sembra complicato, e in effetti lo ,
specialmente se parliamo di un motore rotativo: come gi detto in precedenza, sappiamo
che un motore che soffre di cronici problemi
di affidabilit, ma il punto debole di un Wankel
senza dubbio la totale intolleranza al fenomeno
del Battito in testa. Questo mal funzionamento

Lessenza del Motorsport tutta qui: una ricerca

avviene quando la miscela aria/benzina Scop-

spasmodica e ossessiva dellincremento della

pia in un momento inopportuno, non controllato

prestazione, la volont di superare i limiti sfidan-

dalla centralina del motore. Queste detonazioni

do leggi della fisica che, non di rado, richiedo-

generano temperature elevate allinterno della

no il loro tributo con fumate azzurre o fiamme

camera di scoppio, le quali sollecitano in modo

che suonano come un richiamo allordine: si

eccessivo i componenti meccanici come il roto-

osato troppo. Se invece tutto fila liscio, abbia-

re e le tenute dapice, rovinandoli irrimediabil-

ELETTRONICA OPEN SOURCE

{15

Motore Wankel Alla ricerca della prestazione


ne in merito al tipo di lavorazione dei condotti:

mente in poco tempo.

le luci di aspirazione non devono mai essere


lucidate a specchio, ma preferibile una lucidatura che lasci la superficie leggermente Rugosa, mentre occorre lucidare a specchio le
luci di scarico.
Per meglio comprendere questo principio, occorre fare riferimento al numero di Reynolds (Re)
e al Diagramma di Moody. Re una quantit
proporzionale al rapporto tra forze inerziali e
forze viscose. Questanalisi consente di valutare se il flusso di scorrimendo di un determinato fluido a Regime Laminare (bassi valori
di Re) o Regime Turbolento (elevati valori di
Re). Nel nostro caso, riferendoci alle superfici
delle condotte, dobbiamo necessariamente teNellimmagine sopra vediamo un motore rotati-

nere in considerazione la Scabrezza Relativa,

vo smontato. I tre apici del rotore, ospitano un

data dal seguente rapporto:

segmento di tenuta su ognuno di essi, il quale ha


il compito di Sigillare le tre camere che vengono a crearsi durante le fasi di funzionamento del

la Scabrezza Relativa.

motore termico. Questi segmenti, dello spesso-

d la rugosit (Scabrezza assoluta).

re di 3mm sul motore 13B della Rx-7 e di 2mm

D il diametro della condotta.

sul motore Renesis 13B-MSP, sono soggetti a

Considerando il Diagramma di Moody, avre-

molta usura e stress, pertanto pi si sale con le

mo:

prestazioni e pi diventano soggetti a cedimento. Il cedimento di anche uno solo di


essi, causa la rottura del propulsore.
Detto questo, abbiamo gi notato nellarticolo precedente che il Wankel funziona
per certi versi come un motore a due tempi: dotato infatti di Luci di aspirazione e
di scarico, pertanto una delle procedure
pi utilizzate quella del Porting, che
consiste nel modificare la dimensione delle luci per aumentare il volume della miscela aria/benzina immessa e dei gas di scarico

LAbaco di Moody, ha la funzione di riportare il

espulsi.

Numero di Fanning (rapporto tra flusso con-

A questo proposito, occorre fare una precisazio-

duttivo e convettivo) in funzione del Numero di

ELETTRONICA OPEN SOURCE

{16

Motore Wankel Alla ricerca della prestazione


Reynolds. Matematicamente avremo:

scabrezza relativa nulla (caso particolare del

Fattore di Fanning:

tubo liscio). Il Diagramma di Moody infatti, non


altro che la rappresentazione grafica dellequazione di Colebrook-White. La generalizzazione di questequazione nel caso di moto puramente turbolento sar:

Dove:
Moto puramente turbolento
la matrice del taglio alla parete

la velocit del fluido


la densit del fluido
Associandolo al numero di Reynolds, avremo:

Per quanto riguarda il nostro motore, i condotA livello di perdita di carico hf nel condotto,

ti di aspirazione hanno un regime laminare e i

avremo:

condotti di scarico un regime turbolento. Ecco


spiegato il motivo per cui occorre differenziare
le modalita di lucidatura dei condotti stessi.

la velocit locale del fluido.

QUESTIONE DI ANTICIPO

L la lunghezza del condotto.

Una volta lavorate le luci di scarico e aspirazio-

g laccelerazione di gravit locale.

ne, con laumento della sezione e la lucidatu-

D il diametro medio del condotto.

ra atta a rimuovere imperfezioni e irregolarit,


occorre procedere ad una modifica della map-

Nella parte sinistra del diagramma, possiamo

patura della centralina elettronica, per andare a

vedere ununica retta nella zona di flusso lami-

regolare la fasatura del motore. Con il termine

nare del numero di Fanning, ovvero con valori

Fasatura daccensione o pi semplicemente

di Re inferiori a 2300. Nella parte a destra in-

Anticipo daccensione, si intende il momento

vece, avremo un fascio di curve rappresentanti i

in cui viene fatta scoccare la scintilla attraverso

valori di scabrezza relativa che avr la condotta

la candela e il carburante viene immesso allin-

presa in esame. Nel caso di tubo liscio (Smooth

terno della camera di combustione.

Pipe), lequazione rappresentante sar:

Dobbiamo ricordare che per ogni giro del rotore


allinterno del nefroide, abbiamo tre aspirazioni,
tre compressioni-scoppi e tre scarichi, pertanto
la fasatura di questo propulsore va costante-

Osserviamo bene questequazione: si tratta

mente ricontrollata ad ogni modifica introdotta,

dellEquazione di Colebrook-White avente

altrimenti si rischia di creare danni decisamente

ELETTRONICA OPEN SOURCE

{17

Motore Wankel Alla ricerca della prestazione


lore della temperatura dellaria. Sappiamo che:

importanti.
Attualmente, le candele allinterno di un motore
Wankel sono due per rotore, al fine di ottimiz-

Combustione = combustibile + comburente

zare la combustione allinterno della particolare camera di combustione creata allinterno del

Abbiamo appena parlato del combustibile, per

nefroide.

quanto riguarda il comburente occorre controllare la temperatura dellaria che verr immessa nella camera di combustione. In presenza
di unelevata temperatura dellaria, occorrer
agire sulla mappatura dellaccensione per ridurre lanticipo, questo perch unaria pi Calda
andr ad accelerare la combustione. In caso di
aria pi fresca, lanticipo potr essere aumentato.

SOVRALIMENTAZIONE
Una delle operazioni pi importanti su qualsiasi
Da questa immagine possibile osservare come

motore (anche sul rotativo), ladozione della

la fase di scoppio avvenga quando due apici del

sovralimentazione per incrementare la potenza

rotore si trovano idealmente a cavallo dei due

erogata. Esistono ad oggi, due tipi di sovrali-

elettrodi di accensione: questo principio deve

mentazione:

essere mantenuto anche dopo le modifiche al

Sovralimentazione meccanica

sistema di aspirazione e al sistema di scarico.

Sovralimentazione chimica

I motivi per cui occorre rifasare il motore sono

Per sovralimentazione meccanica si intende

davvero tanti e pi si sale come complessit del

loperazione che prevede lintroduzione forzata

rotativo e prestazioni, pi necessario prestare

della miscela aria/benzina nella camera di com-

attenzione a questo aspetto del funzionamento.

bustione. La percentuale di miscela immessa

La prima differenza che si nota tra un motore

con la sovralimentazione, non raggiungibile

stradale e un motore elaborato per le competi-

con un normale motore aspirato.

zioni, che lanticipo di accensione di questul-

Il metodo pi diffuso di sovralimentazione mec-

timo aumentato rispetto ad un motore ad uso

canica, senza dubbio quello che prevede la-

stradale, questo perch esistono dei carburanti

dozione di un turbocompressore, abbinato ad

ad uso sportivo che hanno un numero di otta-

un intercooler.

ni sensibilmente maggiore, proprio per evitare


il fenomeno del battito in testa. Grazie a queste tipologie di carburanti possibile aumentare lanticipo per incrementare le prestazioni del
propulsore.
Un altro elemento fondamentale, dato dal va-

ELETTRONICA OPEN SOURCE

{18

Motore Wankel Alla ricerca della prestazione


Il funzionamento piuttosto semplice: una gi-

zia, pertanto fin quando la pressione dei gas di

rante turbina viene azionata dai gas di scari-

scarico non sufficiente a mandare la turbina

co, la quale mette in rotazione attraverso un

stessa a regime, si ha un ritardo di risposta del

albero la girante compressore che immette

motore quando si va a premere lacceleratore.

laria direttamente nella camera di combu-

Per questo motivo, molti elaboratori prediligono

stione. Tra il turbocompressore e la camera di

ladozione di turbine in serie, poich ladozione

scoppio ci sono i collettori di aspirazione.

di una turbina pi grossa accentuer per forza

Nella foto possiamo vedere la turbina, i collet-

di cose questo fenomeno (turbina maggiore,

tori di aspirazione e lintercooler: quando il

inerzia maggiore).

compressore entra in funzione, innalza la pressione dellaria che, a sua volta, si surriscalda. Il
calore dellaria non solo dovuto alla compressione, ma dovuto anche al turbocompressore stesso; la girante azionata dai gas di scarico
pu arrivare a oltre 100.000 rpm, trasformando
parte dellenergia meccanica in energia termica. Lo scopo dellintercooler quello di riportare
la temperatura dellaria ad un livello accettabile
(laria fredda ha un volume inferiore a quella calda), per poi immetterla nella camera di combu-

Arrivati a questo punto, dobbiamo precisare che

stione. Essendo un vero e proprio scambiatore

per certe pressioni di sovralimentazione, i rotori

termico, lintercooler pu essere di tipo aria-aria

vanno necessariamente smontati, equilibrati e

o aria-acqua. Per un uso stradale, in genere

preparati per queste tipologie di utilizzo. Gene-

vengono impiegati intercooler aria-aria posti in

ralmente, per un uso cos estremo del rotativo,

corrispondenza di una presa daria, mentre per

molti elaboratori decidono di aumentare la cilin-

un uso sportivo o comunque su motori ad alte

drata complessiva dei loro motori, aggiungendo

prestazioni, preferibile lutilizzo di un elemento

rotori. Esistono auto dotate anche di sei rotori

aria-acqua, poich lo scambio termico dellac-

con doppia sovralimentazione, in grado di ero-

qua circa 4 volte superiore rispetto a quello

gare anche 1000 cavalli.

dellaria.
Un inconveniente di questa soluzione,
senza dubbio il fenomeno del cosiddetto
Turbo-Lag: meccanicamente parlando infatti, non sussiste collegamento diretto tra il propulsore e il turbocompressore, poich questultimo azionato dai gas di scarico provenienti
dal motore stesso, costituendo un collegamento
di tipo fluidodinamico. La girante della turbina,
fisicamente parlando, dotata di una sua iner-

ELETTRONICA OPEN SOURCE

{19

Motore Wankel Alla ricerca della prestazione


possibile adottare anche la sovralimentazione

ottenibile con iniettori maggiorati e, spesso,

di tipo chimico, la quale consiste nellimmis-

pompe della benzina ad alte prestazioni.

sione di maggior ossigeno nelle camere di


combustione. Questo procedimento pos-

CONCLUSIONI

sibile grazie alla miscelazione di un fluido

Questo viaggio nel motore rotativo termina qui,

ossigenato con la semplice aria.

personalmente nulla toglier mai il primato di

La formula di composizione dellaria nellatmo-

bellezza del sound e fascino a questi motori,

sfera infatti, ci dice che la percentuale di ossige-

specialmente se parliamo di quelli elaborati. Oc-

no solo del 20%. lossigeno che ci interessa,

corre per affidarsi a mani esperte e serie, se

pertanto allaumentare di questa percentuale,

si vogliono ottenere risultati apprezzabili e non

aumenteremo idealmente la potenza del moto-

continui problemi di affidabilit. un motore de-

re.

licato, in grado di dare enormi soddisfazioni, ma

Grazie al Protossido di Azoto infatti (N2O),

che pu trasformarsi in un incubo se posto in

possiamo arrivare ad ottenere un incremento

mani sbagliate. La scarsa presenza di officine in

di coppia motrice e potenza anche del 50%.

grado di fare manutenzione e gli elevati consu-

LN2O contiene circa il 35% di ossigeno e

mi, ne hanno scoraggiato la vendita e la produ-

viene immesso nella camera di combustione

zione in Europa, anche se attualmente il Wan-

grazie ad un circuito dedicato. Una volta a con-

kel stato ripreso per alcuni studi sui motori ad

tatto con lalta temperatura della camera stes-

Idrogeno. Staremo a vedere, nel frattempo

sa, esso reagisce liberando ossigeno. Lincremento di potenza istantaneo, ma dura poco e
sottopone il motore ad uno stress decisamente
elevato. Esistono motori rotativi che funzionano
con questo tipo di sovralimentazione, ma sono
per lo pi destinati al drag racing, dove i motori vengono disassemblati e ricostruiti continuamente. Per qualsiasi altro utilizzo, questo tipo
di sovralimentazione fortemente sconsigliata
sia per gli alti costi, sia per lelevata pericolo-

Listen the rotary engine scream!

sit dellimpianto stesso (in caso di incidente la


bombola potrebbe esplodere).

Link Primo Articolo sul Wankel

Sia che si parli di sovralimentazione meccanica


che chimica, ad una maggiore portata daria immessa, deve corrispondere un incremento della
portata del carburante, per mantenere la miscela aria/benzina nei parametri ottimali. Questo
Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/motore-wankel-alla-ricerca-della-prestazione

ELETTRONICA OPEN SOURCE

{20

21}

Electrical Energy Storage


Un chip per la carica
dei superCap
di daniele.vln
10 Febbraio 2015

I superCap hanno caratteristiche elevate di dinamicit che li rendono preferibili in


determinate applicazioni, e di supporto alle batterie in altre. In genere, non si trover
mai il componente ideale di superCap per la propria applicazione, ma sar necessario realizzare un gruppo di componenti (con collegamenti serie e parallelo) partendo
dalle celle basi disponibili in commercio. Tale scelta, che dal punto di vista teorico e
ideale non ha alcuna conseguenza, dal punto di vista pratico inizia a scontrarsi con
le tolleranze di produzione dei componenti. Di fatto, sar sempre necessario tener
conto dei parametri intrinseci della tecnologia, e non meno della tolleranza nei valori
di capacit.

a necessit di ridurre gli sprechi energeti-

quello di gestire il trasferimento di energia dalla

ci, soprattutto nei dispositivi portatili (come

sorgente (superCap, batterie, rete elettrica) al

smartphone, tablet, strumenti palmari, fo-

carico, provvedendo dove necessario a man-

tocamere, notebook) e lesigenza di controlla-

tenere nello stato di carica la sorgente stessa.

re i cicli di ricarica dei sistemi di accumulo ha

Per svolgere tali funzioni, un circuito di Power

portato allevoluzione dei circuiti di Power Ma-

Management deve necessariamente effettuare

nagement. Il principale scopo di tali circuiti

una sensing accurata dello stato di carica del

ELETTRONICA OPEN SOURCE

Electrical Energy Storage Un chip per la carica dei superCap


sistema di accumulo, dello stato della sorgen-

gestione delle sorgenti, gestione dellhot swap,

te (rete elettrica o eventuali generatori come ad

etc. In questo articolo entreremo nel dettaglio di

esempio celle fotovoltaiche), dellassorbimento

un Pmic prodotto dalla Linear Technology, che

richiesto dal carico. Ovviamente, al fine di adot-

fa fronte a determinate esigenze dei cicli di ca-

tare la strategia ottimale necessario aver pre-

rica dei superCap. Generalmente la carica di un

sente i limiti di utilizzo del sistema di accumulo

condensatore una cosa abbastanza semplice,

(massima corrente di carica, capacit, effetto

data dalla sua curva esponenziale che dipen-

memoria, etc.), ed adottare tecniche di sensing

de dalla capacit nominale, dalla tensione e dal

a bassa complessit, al fine di non ridurre laffi-

tempo. Purtroppo in una applicazione generica

dabilit del dispositivo, o aumentare il consumo

non sempre si hanno a disposizioni sorgenti di

dello stesso.

tensione costanti, oppure il sistema di accumulo

Basti pensare ad un veicolo elettrico, dove, al

realizzato da pi di un componente. Inoltre,

fine di aumentare lautonomia di percorrenza,

per le correnti/tensioni in gioco, bisogna stare

risulta necessario provare a recuperare energia

attenti agli effetti dissipativi. Di conseguenza,

da qualsiasi fonte disponibile (in gergo si parla di

nella tematica di questo articolo ci si pone come

energy harvesting), come ad esempio quel-

obiettivo lindividuazione delle caratteristiche

la che si genera in frenata, oppure la presenza

critiche che possono emergere in fase di proget-

di pannelli fotovoltaici, o di un motore a com-

tazione, e vedere quali parametri chiave sono

bustione per i veicoli ibridi. In tutti questi casi,

necessari a ricercare eventuali componenti che,

non adottare un circuito di Power Management

in modo simile a questo oggetto della LT preso

attento agli sprechi, o allottimizzazione del tra-

in esame, possano soddisfare le nostre esigen-

sferimento dellenergia dalle diverse sorgenti al

ze di progetto. Se fino a questo punto si parla-

sistema di accumulo, porterebbe a vanificare gli

to dei sistemi di accumulo (superCap o batterie)

sforzi, riducendo di fatto lautonomia del veicolo.

ora inizieremo a trattare argomenti di gestione

La forte integrazione, e la necessit di circuiti

dellenergia (in gergo Power Management) in

sempre pi piccoli, ha portato allo sviluppo ed

quanto tratteremo proprio sistemi (circuiteria,

evoluzione di circuiti integrati destinati a tali sco-

chip, soluzioni) atti a gestire in modo efficiente

pi. Tali circuiti prendo il nome di Power Mana-

lenergia disponibile.

gement IC (Pmic) e tutti i pi grandi costruttori

Il componente che osserveremo in quest artico-

(Toshiba, Linear Technology, Freescale, Micro-

lo il chip LTC3625 prodotto dalla Linear adatto

chip, Texas Instrument, etc) hanno a catalogo

alla ricarica dei superCap e con la funzionalit

una famiglia di integrati che soddisfano deter-

di bilanciamento automatico delle celle. In parti-

minate esigenze e/o applicazioni. Sfruttando

colare il dispositivo viene commercializzato con

processi tecnologici di alto livello, i produttori

la funzionalit di ricarica di due superCap posti

riescono a garantire una elevata integrazione

in serie, come riportato in figura 1, e la funzio-

ed elevate prestazioni in termini di efficienza e

ne di bilanciamento serve a garantire affidabilit

riduzione della potenza dissipata.

(dunque un ciclo di vita lungo) ai superCap so-

Le applicazioni dei Pmic possono essere le pi

prattutto in presenza di forti mismatch tra le due

disparate: gestione della carica di una batteria,

celle

ELETTRONICA OPEN SOURCE

{22

Electrical Energy Storage Un chip per la carica dei superCap


schema a blocchi di figura 3. Come gi detto
inizialmente, la caratteristica principale la funzione di bilanciamento che consente la ricarica
delle due capacit massimizzando la corrente
di ricarica (e quindi il tempo) ed evitando danni da sovratensione per lo sbilanciamento delle
capacit. Inoltre possibile settare la corrente
Figura 1 Applicazione tipica del componente LTC3625

massima di ricarica tra 500mA e 1A montando,


o meno, entrambi gli induttori esterni ai pin SW1
e SW2.

Figura 2 Disposizione dei PIN del dispositivo LT 3625

In particolare possibile caricare la serie dei


due superCap a tensione 4-4.5V oppure 4.85.3V (attraverso un segnale logico applicato al

Figura 3 Schema a blocchi del dispositivo LT 3625

pin Vsel). Ci vuol dire che la tensione massima

(fonte datasheet)

raggiungibile sui superCap 2.65V. Se si effettua una ricerca sui siti dei produttori, la maggior

FUNZIONE DEGLI INGRESSI DIGITALI

parte dei componenti commerciali (soprattutto

Il dispositivo dotato di un pin di Enable (EN)

superCap cilindrici simili ai normali condensa-

attivo alto, ossia portato allo stato logico 1 (Vin)

tori elettrolitici) hanno una tensione nominale di

abilita loutput e dunque le operazioni del com-

2.5-2.7V, in linea con lapplicazione proposta

ponente, mentre allo stato basso porta il com-

dalla LT. Pi interessante pu essere la tensio-

ponente in modalit shutdown, portando luscita

ne di ingresso supportata che varia da 2.7V a

in alta impedenza. Tengo ad evidenziare che

5.5V. Questo significa dire che il dispositivo

luscita del dispositivo deve essere necessa-

in grado di innalzare un livello di tensione (step-

riamente in alta impedenza, per evitare che la

up). In realt il chip non innalza alcuna tensione

carica accumulata nei due superCap si scari-

ma prevede uno stadio buck converter per for-

chi verso il dispositivo stesso. Il pin Vsel, come

nire tensione al superCap di coda (Cbot), e uno

gi detto, configura la tensione di regime che

stadio boost per fornire tensione al superCap di

deve essere raggiunta sui superCap. Il pin, inol-

testa (Ctop). Tali stadi vengono riportati nello

tre, presenta unimpedenza che dipende dallo

ELETTRONICA OPEN SOURCE

{23

Electrical Energy Storage Un chip per la carica dei superCap


stato del pin EN. In particolare si trova ad alta

peratura della giunzione (interna al dispositivo)

impedenza quando EN basso (dispositivo in

raggiunge i 150C. Viste le elevate correnti in

shutdown), mentre presenta una resistenza di

gioco (fino a 1A) consigliato un design del cir-

4.5Mohm (in modalit pull-down) quando EN

cuito stampato tale da dissipare il calore e ridur-

alto. Il pin CTL configura la modalit di ricarica

re dunque la temperatura di giunzione. Ovvia-

dei superCap (modalit a 1 induttore oppure 2

mente tale caratteristica dipende anche dai cicli

induttori).

di carica/scarica che subiscono i superCap. Per

In tabella vengono riassunti i vari stati che pos-

chi vuole approfondire la tematica della dissipa-

sono essere configurati ai pin di ingresso e la

zione del calore sui circuiti stampati vi riman-

loro funzione.

do a questo articolo interessante Componenti


elettronici: nuovi approcci alla dissipazione del
calore.

LIMITI DI UTILIZZO
Il dispositivo prevede una limitazione sul tipo di
superCap in base alla resistenza serie che la
tecnologia offre. Infatti viene data una formula
per cui la ESR della tecnologia deve essere
Tabella 1 PIN digitali di ingresso del dispositivo LT

inferiore al rapporto 100mV/Ibuck. Tutto que-

3625 (fonte datasheet)

sto dipende dal fatto che maggiore la resistenza serie e minore deve essere di fatto la corren-

FUNZIONALIT POWER-FAIL

te che viene utilizzata per caricare, affinch non

Attraverso i due pin PFI/PFO possibile adope-

vi siano grosse perdite di tensione sulla ESR,

rare la funzionalit di power-fail, ossia monito-

con conseguente riscaldamento del componen-

rare il comportamento del dispositivo. Il pin PFI

te stesso (e dunque eventuali degradi delle ca-

un pin di ingresso ad alta impedenza (bassis-

ratteristiche e prestazioni dello stesso).

sima corrente assorbita) al quale necessario


applicare un partitore resistivo che divide la ten-

APPLICAZIONI PROPOSTE DA LT

sione di alimentazione. Il pin PFO di uscita

Tra le varie applicazioni, la Linear Technology

viene mantenuto alto quando PFI>1.2V mentre

propone lutilizzo del proprio chip in un sistema

va a valore basso quando PFI<1.2 (il pin PFO

con pannello fotovoltaico e la circuiteria di

necessita di un resistore di pull-up per funziona-

MPPT (Maximum Power Point Tracker) al fine

re correttamente). In figura 3 viene schematiz-

di ricaricare la serie delle due capacit, sche-

zato il tutto con un opAmps che funziona di fatto

matizzato in figura 4. Dallo schema si possono

da comparatore.

vedere i seguenti accorgimenti progettuali:


viene previsto un diodo D1 al fine di evitare

GESTIONE DELLA TEMPERATURA

una corrente inversa verso il diodo. Seppur

Il dispositivo prevede lo shutdown della circui-

sembra superfluo, tale diodo necessario

teria che genera la Vout nel caso in cui la tem-

quando si riduce in maniera istantanea la

ELETTRONICA OPEN SOURCE

{24

Electrical Energy Storage Un chip per la carica dei superCap


tensione sul modulo fotovoltaico, in quanto

al primo articolo della serie per le curve). Ora

in questo caso il condensatore C4 si scari-

supponiamo di avere un generatore ideale di

cherebbe verso il pannello stesso.

corrente e dunque effettuare una carica del-

il componente LT1784CS5 il cuore del cir-

la capacit a corrente costante cosa succede

cuito MPPT, e di fatto si comporta da com-

alla tensione? Per lequazione caratteristica del

paratore rispetto ad una tensione di riferi-

condensatore la corrente dipende dalla derivata

mento di 1.2V ottenuta tramite D2 che pu

della tensione (o viceversa), dunque se la cor-

essere o uno zener o un voltage reference.

rente costante vuol dire che la derivata della

Ovviamente, il circuito di MPPT va a influen-

tensione costante, ossia la tensione varia li-

zare il pin PROG, che configura la corrente

nearmente durante la carica. Mi fermo qui con

di carica dei superCap, e dunque un carico

questo approfondimento in modo da suscitare

variabile per il modulo fotovoltaico.

la curiosit dei lettori pi attenti a cosa pu portare una gestione della carica a corrente costante, e quali potrebbero essere
le applicazioni.
Per ulteriori approfondimenti dellintegrato presentato in questo articolo vi
rimando al datasheet molto ricco di dettagli, dalla scelta degli induttori, alle caratteristiche interne del dispositivo, alle
curve di de-rating e comportamento
del dispositivo al variare degli ingressi,
della temperatura, dello stato del dispo-

Figura 4 Applicazione con celle solari del dispositivo

sitivo, etc. Nel corso dellarticolo ho introdotto

LT 3625 (fonte datasheet)

i termini buck converter e boost converter,


blocchi importanti del funzionamento del Pmic.

CONCLUSIONI

In generale, per le applicazioni di alimentazione,

In conclusione allarticolo colgo loccasione per

possono esistere diverse configurazioni di con-

approfondire un aspetto particolare dei conden-

vertitori di tensione che posseggono peculiari-

satori. Tutti conosciamo la curva di carica di un

t fondamentali per determinate applicazioni.

condensatore, con il suo caratteristico anda-

Per i pi curiosi consiglio la lettura dellarticolo

mento esponenziale. Tale curva la si ottiene se

[Convertitori] Quali usare e perch? in cui vie-

si effettua un ciclo di carica a tensione costante,

ne affrontata la teoria alla base dei convertitori

mentre landamento della corrente disegna una

e alcune applicazioni.

curva inversamente proporzionale (vi rimando

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/electrical-energy-storage-un-chip-per-la-carica-dei-supercap

ELETTRONICA OPEN SOURCE

{25

26}

La mia DOMOanTICA:
scelta forzat a,
soluzione facile
di Esperanto
12 Febbraio 2015

Scopo di questo articolo di condividere unesperienza reale che ha portato a sviluppare un sistema di controllo luci e servizi in casa, senza pianificare a priori tubi e le
allocazioni dei servizi e dei comandi. Nellarticolo vengono forniti, oltre alla descrizione, schemi, listati completi, indicazioni per limplementazione, immagini e proposte
per procedere Ad majora!

el 1970 (preistoria) ho pubblicato il mio pri-

elettrificato.

mo progetto di domotica. Si trattava di un

Nel 96 ho acquistato un cascinale fatto in pietra

sistema con rel a passo che permetteva

e non era facile mettere canaline e progettare

di riconoscere chi entrava e chi usciva da una

un impianto definitivo senza avere ancora una

stanza e accendeva/spegneva la luce di conse-

idea di come sarebbe stato dopo la ristruttura-

guenza. Poteva gestire fino a 16 persone!!!!

zione.

Nell80 ho progettato un sistema per trasmet-

Da qui capite la scelta del titolo, misto fra la mia

tere comandi via onde convogliate ai trenini.

Domo Antica e la moderna domo-tica.

Questo allo scopo di pilotare la locomotiva, non

Mettendo tutto insieme, ho iniziato a proget-

i binari come si usava allora. Lidea era di usarlo

tare un sistema di comandi a distanza per le

anche per controllare la casa ma cera poco di

varie utenze e avevo lambizione di farne un

ELETTRONICA OPEN SOURCE

La mia DOMOanTICA: scelta forzata, soluzione facile


prodotto commerciabile.

ne si fa allinizio come per i MAC number e poi

Finalmente il mercato era maturo per questo

si installa il tutto.

tipo di applicazioni ma, ovviamente, le indu-

La programmazione si fa da un normale termi-

strie avevano lavorato nella stessa mia di-

nale seriale.

rezione emettendo specifiche e protocolli e

LA IMPLEMENTAZIONE HW

con risultati e standardizzazioni di ben altro

Limplementazione HW si basa su (oggi) due

livello.

modulini con un PIC a bordo e poca elettronica:

Oggi c di tutto ma . costa uno sbandello.

quella di comunicazione/alimentazione e quel-

Allora ritornato il momento per proporre

la di protezione. Si, serve anche quella di pro-

qualcosa di semplice, economico e, soprat-

tezione perch il primo impianto lo avevo fatto

tutto, personalizzabile e da usare come base

col mio Sistema Trenini e ha funzionato per

per gli sperimentatori.

8 anni, fino a un temporale pi temporale de-

Vi spiego cosa ho fatto, dove sono arrivato e

gli altri

cosa potete fare voi. Saranno cose semplici

fotoboards

e banali per molti; per altri un punto di par-

Per correttezza, devo dire che i due moduli li ha

tenza e, per me, il piacere di avere condiviso

preparati un amico, titolare di una Azienda del

un lavoro con tanti di voi.

torinese e che magari potrebbe anche riprodurli


per altri (dipende dalle quantit e . devo chie-

IL COMPROMESSO

dere)

Tra fare tutto e fare niente ci sta in mezzo fare

Il primo modulo quello dei posti comando; ov-

qualcosa che basti.

vero gli interruttori. Il secondo modulo quello

In una applicazione casalinga normale, credo

degli attuatori; quello da mettere sulle utenze.

che 30 utenze e 30 punti di comando siano pi

NOTA: come la maggior parte dei sistemi elet-

che adeguati.

tronici, presenta qualche problema per le utenze

Ho volutamente ridotto i numeri a questi valori

a basso consumo. Questo per via della tec-

per usare un solo byte e semplificare il proto-

nologia impiegata. Primo punto su cui lavorare

collo.

(la risposta c e ne trovate a iosa su internet.

Avevo iniziato a realizzare un sistema comple-

Attenti a scegliere quella giusta); io ho messo,

tamente programmabile e autoconfigurante, ad

come carico, una lampadina da 20W che drena

uso di installatori non specializzati, (il progetto

la corrente da spenta e da accesa illumina una

disponibile e in parte debuggato), ma mi sono

nicchia delle travi di legno.

dato un obiettivo: chi rester dopo di me a


gestirlo, deve trovare il tutto molto semplice.

MODULO COMANDI

Dopo lunghe pensate, fare, disfare, documenta-

Il modulo comandi, visibile in figura ha fino a 8

re, sperimentare, ho deciso che la configurazio-

ingressi (1 byte) ma i gruppi interruttori standard

ELETTRONICA OPEN SOURCE

{27

La mia DOMOanTICA: scelta forzata, soluzione facile


ospitano tipicamente fino a 6 pulsanti.

Il PIC lo stesso e la parte comunicazione idem.

LE MODIFICHE VOLANTI
Le basette presentano un paio di cose che ho
dovuto mettere a posto:
mancavano le piazzole per i resistori di pull-up
sul MCLR (Master Reset del PIC) e per un resistore di drenaggio correnti parassite tra Anodo e
Gate del TRIAC. (nello schema sono presenti).
Ho aggiunto i due componenti volanti: 10k tra +
e MCLR e 150 ohm tra GATE e ANODO e il gioco fatto. Quindi, se li vedete nelle fotografie,
sapete di cosa si tratta.
Ogni ingresso collegato a un filo e pu essere

Io mi diverto a sperimentare, non cerco la perfe-

programmato per emettere uno di tre comandi.

zione e sfrutto al meglio quello che ho con taglia

La parte di comunicazione comune al modulo

e salda ;-).

attuatore ed progettato per trasmettere su un

Voi, sicuramente, le farete corrette. Magari an-

filo solo (BUS).

che per me

MODULO ATTUATORE

IL SOFTWARE

Il modulo attuatore un po sofisticato. Ha una

Il software stato il maggiore compromesso

parte di comando (TRIAC) e una parte di sen-

per entrare in servizio. Ho sviluppato diverse

sing (OptoIsolatore).

varianti del protocollo di comunicazione e del si-

Nella fase iniziale del progetto universale vole-

stema in toto ma, ogni volta, non ero sicuro di

vo implementare anche regolatori con variatore

avere soddisfatto tutti i desideri di un possibile

di luce.

utente generico.

Sentire la fase della 50Hz era un modo per con-

Quindi mi sono dedicato a me stesso; tanto

trollare in fase lattivazione del TRIAC (secondo

non avrei mai rubato un solo cliente a nessuna

punto su cui potete divertirvi a lavorare voi).

Azienda del settore.


Il mio ragionamento stato: devo accendere,
devo spegnere ma posso essere in vista dellutenza oppure no.
Esempio: entro in cucina e vedo bene se acceso o meno; vedo se ho acceso o se ho spento.
Esempio due: salgo in casa e non ricordo se ho
spento la luce del Box e non lo vedo.
Terzo punto: voglio usare meno pulsanti possibile per poter comandare pi utenze dallo stes-

ELETTRONICA OPEN SOURCE

{28

La mia DOMOanTICA: scelta forzata, soluzione facile


so punto.
Soluzione, ho scelto di implementare tre co-

void AccendiLED(void){

mandi:

output_bit( PIN_B0, 0);

Accendi,

LED = TRUE;

Spegni

Commuta.
Se vedo e se serve cambiare (entro al buio e voglio accendere o esco e voglio spegnere la luce
accesa) allora basta un pulsante che CAMBIA
lo stato.
Se non vedo e voglio essere sicuro di avere
acceso/spento, allora mi servono due pulsanti:
uno accende sempre, laltro spegne sempre.

void SpegniLED(void){
output_bit( PIN_B0, 1);
LED = FALSE;
}
void ToggleLED(void){
if (!LED)
AccendiLED();
else
SpegniLED();
return;
}
Piccole idee semplici funzionano meglio di
grandi idee complicate. Chiunque, poi, le pu
gestire.
Volete mettere la comodit di non dovere inseguire 100 chiamate di utenti che non riescono a

Il flusso degli stati delle luci pu essere rappre-

programmare il sistema perch non descrit-

sentato dal diagramma qui di fianco; se siamo

to chiaramente come programmare il tutto?? O

accesi e arriva un accendi restiamo accesi. Lo

dover spiegare perch fa solo 100 cose e non

stesso per il comando spegni se siamo spenti.

101?

Se riceviamo accendi (spegni) e siamo spen-

Un dettaglio non trascurabile: il SW che ge-

ti (accesi), eseguiamo il comando e cambiamo


stato.
Se riceviamo il comando TOGGLE, qualunque

stisce il tutto di poche decine di righe ed


uguale per attuatori e comandi. C molto
spazio di crescita.

sia lo stato attuale, passiamo nellaltro.

Qui sotto una immagine del CS modificato che

Vi anticipo le tre semplici funzioni. NOTA BENE

implementa sia il modulo comando che quello

i caratteri numerici sono piccoli e B0(zero) sem-

attuatore.

bra Bo(o minuscolo) quindi distinguete B0 da


Bo

ELETTRONICA OPEN SOURCE

{29

La mia DOMOanTICA: scelta forzata, soluzione facile


In un impianto tipo avremo dei pulsanti unici
come il bagno, dei pulsanti multipli come camera da letto con comandi alla porta e al letto
e utenze multiple come diversi punti luce nella
stessa sala o giardino.
Ok, si pu fare tutto.
Nota bene: nelle scatole comandi arriva solo
una 12VDC isolata, quindi pu essere usata anche per il pulsante di allarme del bagno!!
Sempre con cautela e una buona installazione,
comunque.
Prendiamo la piantina della casa e numeriamo
i punti comando da 1 a 30 e i punti attuazione
da 1 a 30.

COSTRUZIONE
Dato lo schema e dati i disegni, adesso tocca
a voi ma, qui di seguito, vi devo spiegare come
fare una installazione base.

Un esempio visibile nel disegno allegato. Io ho


anche preparato una tabella di programmazione che vi allego qui Doc-1.
Adesso realizziamo le nostre basette e le programmiamo scrivendo in ciascuna un numero
di identificazione:
Da 1 a 30 per i comandi e da 1 a 30 per gli attuatori.
Per programmare le basette ho usato il mio
PICKit2 e MPLAB di Microchip.
Ho cambiato ogni volta il numero a indirizzo
0x3000, ricompilato e trasferito sui chip.
Ovviamente le basette andranno messe nei
punti corrispondenti al vostro progetto. Ricor-

Richiamiamo il limite di 30 utenze e 30 comandi e pensiamo, ad esempio, a un appartamento di tre locali pi servizi, terrazzo o giardino e
utenze minori di cui potremo parlare.
Ovviamente se la casa indipendente ci potrebbe essere apri cancello, box, caldaia, ecc.
NOTA: nulla vieta che attacchiate alla nostra
rete un PC o uno dei tanti dispositivi di comunicazione (web, telefonino, radio, e chi pi ne ha
pi ne metta).

date la documentazione vale pi del progetto


stesso!!
Il mezzo di trasporto del segnale stato scelto
su tre fili di una terzina di tipo telefonico un +,
un e un filo di segnale. Basta passare questa
terzina in tutte le scatole dei pulsanti e in tutte le
scatole degli attuatori.
Non dovete pi decidere a priori dove mettere interruttori, deviatori, doppi deviatori,
decine di fili da passare nei tubi e che non
vanno mai bene. Tre fili per lalimentazione

ELETTRONICA OPEN SOURCE

{30

La mia DOMOanTICA: scelta forzata, soluzione facile


(fase, neutro e terra) e il nostro cavetto a tre

pulsanti ;-(( per ha funzionato anche lei ;-))

fili. Semplice no?

Pi sotto descrivo come usare la tabella ASCII

Dovete mettere un alimentatore da parete a

per codificare i comandi.

9/12 VDC tipo radio, segreteria telefonica o si-

Poi, installate a destinazione le basette degli

mili e, l vicino, mettere anche un acceso ai tre

attuatori, provate a controllare tutte le utenze

fili dellimpianto di comunicazione.

da PC. Questo vi permette di confermare il po-

Il negativo dellalimentazione va portato sul

sizionamento degli attuatori come da Progetto

filo del segnale con un resistore da 560/1000

Impianto (lo avete fatto, vero??)

ohm.

Se limpianto corretto, potete accendere,

La velocit di trasmissione stata scelta a 1200

spegnere o commutare ogni utenza da con-

baud. Basta e avanza e non rompe le scatole.

solle e potete vedere i comandi sulla consolle

A questo punto, attaccate il terminale con linter-

premendo i vari pulsanti.

faccia seriale sul punto di accesso e vi mettete

Montato tutto limpianto, verificato che tutto fun-

a giocare dalla consolle di Hyperterminal o col

ziona, mandate il comando di inibizione a tutti i

programma che ho allegato che ha una sempli-

dispositivi comando e passate a programmare

ce interfaccia grafica.

i singoli pulsanti perch facciano quello che vo-

Anche qui avete spazio per creare interfacce

lete voi.

molto pi potenti.

Es Comando 1 (entrata):

La prima prova che vi consiglio di fare di mon-

pulsante 1 accende/spegne cucina,

tare una piccola rete sul tavolo e imparare

pulsante 2 accende box e

giocandoci.

pulsante 3 lo spegne,

A banco facile verificare o sistemare tutto.

pulsante 4 accende giardino,


ecc.
Poi Comando 2(porta balcone da cucina):
pulsante 1 accende/spegne cucina,
pulsante 2 accende balcone,
pulsante 3 accende giardino (senza andare
allentrata).
Quindi: ogni posto comando pu mandare qualunque ordine a qualunque utenza e
potete cambiare quando volete. Mettete una

Qui sopra una fotografia di come ho realizza-

nuova luce sul portone esterno? Non lavevate

to la mini rete di prova. Vedete tre fili di rame

prevista? Lelettricista la mette gi dura perch

stagnato, saldati su dei chiodini e usati per in-

non ci sono pi spazi nei tubi e poi vorreste ac-

terconnettere facilmente tutte le basette da pro-

cendere da casa, dal box, dal bagno?

vare. A destra, sui fili vedete le resistenze di

Se c la 220 VAC e c il nostro filo, fin che ci

carico della rete e in basso una vecchia basetta

sono pulsanti c possibilit di farlo a costo zero.

dove potete osservare la matrice di diodi che

Si mette una basetta attuatore, si prende nota

codificava in modo estremamente rigido i vari

del suo numero e si programmano i pulsanti li-

ELETTRONICA OPEN SOURCE

{31

La mia DOMOanTICA: scelta forzata, soluzione facile


beri per il nuovo comando.

far prima o poi si ricorder delle mie paro-

So che poco ma ..funziona e si gestisce da

le

soli. Si risparmia pure rame nei tubi perch i fili


che girano sono solo tre di alimentazione e il trifilo dei comandi.

LINTERFACCIA DI COMUNICAZIONE
E PROGRAMMAZIONE
Nello schema vedete come si realizza una in-

I COMANDI

terfaccia tra seriale a due fili e bus seriale mono

I comandi SW sono semplici:

filo.

6 bit codificano gli indirizzi da 1 a x1F esade-

Il modo di arrivarci il pi vario che potete in-

cimale, due bit codificano il comando (accendi,

ventarvi purch, alla fine, arriviate a mandare/

spegni, commuta, servizio).(0x20, 0x40 e 0x60)

ricevere i comandi voluti.

lottavo bit collabora alla definizione dei coman-

Io ho usato un convertitore RS232/5V tipo

di di servizio.

MAX232; ho usato una interfaccia USB/RS232


quando sono spariti i PC con la seriale e alla fine

LA DOCUMENTAZIONE

ho anche usato il chip USB di Arduino uscendo

La documentazione che io suggerisco di svilup-

su Rx/Tx e tenendolo resettato.

pare deve essere la pi esplicita possibile.

Qui sotto una piccola interfaccia di conversione

Io ho generato delle tabelle descrittive dove, a

realizzata su millefori: i due fili vanno alle linee

parole, dico dove sono le utenze, gli interruttori,

TX e RX di Arduino (usato come convertitore

ecc.

USB <>Seriale

Ovviamente le parole mie parlano a me, oggi.

e, sopra, i due fili di massa e di dato (BUS). Per

Cosa diranno a me domani? E cosa possono

usare il convertitore USB/TTL collegate il pin

dire ad altri?

RESET con la massa con un jumper.

Nelle tabelle vedete una lista di utenze e una

Lo schema del convertitore RX/TX a BUS qui

lista di attuatori con i relativi indirizzi e vede-

sotto a destra.

te tabelline a sei caselle che rappresentano le


pulsantiere. In ogni casella ho scritto cosa volevo comandare e poi ho messo il corrispondente
carattere ASCII che serve a codificare quel comando Doc-1.
Infine qui vedete due esempi di rappresentazione fisica dellimpianto con immagini, generate
coi mezzi di 12 anni fa, in cui si collocano i numeri e le posizioni di comandi e utenze. Una in
quasi 3D e laltra in pianta. Doc-2 Doc-3
Ovviamente oggi lo rifarei con fotografie dei locali e sovrapposizione dei simboli. Pi veloce,
pi esplicativo per chiunque.
Vedete voi il come ma FATELO; chi non lo

ELETTRONICA OPEN SOURCE

{32

La mia DOMOanTICA: scelta forzata, soluzione facile


Vedete voi cosa volete fare. In un progetto Open

ampliarlo.

non si devono porre troppi vincoli, altrimenti di-

La parte comune del progetto il PIC con il

venta close.

suo software.

Il Sw riportato completamente qui di seguito e

Notate il connettore di programmazione e de-

i commenti dovrebbero bastare a capire cosa fa

bug che io uso con Pic Kit2 di Microchip. Niente

e come lo fa.

di particolare da dire su questa parte.

Poich si lavora su BUS, tutte le unit vedono


sia i dati degli altri che i propri e, per evitare conflitti, vanno puliti i buffer.
Si pu migliorare decisamente il tutto usando
protocolli e funzioni gi ben distribuiti e noti, si
possono usare interrupt e modalit simil-realti-

Vediamo la parte di COMANDO.

me, fate voi. La mia soluzione ha funzionato e

DomoPuls

funziona per le mie esigenze.

Su questa basetta sono stati messi i circuiti di

Potete anche usare codifiche a 2 byte ed esten-

interfaccia con i pulsanti. Tutte le linee di ingres-

dere il sistema a ben otre 30 utenze.

so sono tenute basse dai resistori da 56k. Gli

Serve? Se si, forse vi serve un sistema pi

ingressi sono protetti da un resistore in serie da

serio

100k che fa anche da partitore verso il segna-

Chi ha detto pi serio ???

le che arriva dal pulsante. Il condensatore da

non offendiamo, questo progetto .piccolo

100nF fa da filtro antibouncing insieme alla rou-

ma sincero e si merita un piccolo entusiasmo.

tine SW.

Soprattutto cos semplice e ha ancora tan-

I diodi BAV70 fanno da clamp e proteggono da

to spazio di calcolo che potete davvero farci

tensioni eccessive sugli ingressi del PIC.

di tutto.

Tutto molto classico ma importante. Il mio

Tenete presente che dallinterfaccia seriale in

precedente impianto, fatto tutto solo in HW,

poi, potete avere qualunque dispositivo di co-

schiattato a causa di fulmini. Non aveva la pro-

municazione e controllare questi sistemi anche

tezione su tutti gli ingressi come invece c in

da remoto. Io ho debuggato quello di un amico

questo schema.

in modo banale: suo PC attaccato al punto di

La tensione dei pulsanti va presa col comune

programmazione e, dallaltro lato, il mio PC con

sullalimentazione a 9/12VDC.

un SW qualunque di accesso remoto.

Vediamo la sezione BUS<> Rx/Tx.

Io ho usato TeamViewer che libero per uso

Come vedete, il morsetto 2 in uscita collega-

personale e hobbystico.

to al collettore di T2 e, tramite un partitore, alla


base di T1.

DESCRIZIONE CIRCUITO ELETTRICO


BASETTE

In condizioni di stand by, il pin TX del PIC alto

Come le altre parti, questo progetto molto

In condizioni di trasmissione, il pin del PIC va

semplice ma Funziona quanto basta per es-

basso e noi avremo un alto sulla resistenza di

sere un buon punto di partenza per chi vuole poi

carico della rete. Questo segnale alto sar pre-

e, pertanto, T2 non conduce.

ELETTRONICA OPEN SOURCE

{33

La mia DOMOanTICA: scelta forzata, soluzione facile


sente su tutti gli ingressi di tutti i dispositivi col-

chi Volt e, quindi, luscita bassa.

legati (BUS).

Quando la rete passa per lo zero il diodo emit-

Una tensione alta sul connettore di comunica-

tente si spegne e luscita va alta grazie al pull

zione attiver i transistori T1 di tutte le basette.

up da 10k.

Il transistore agir da inverter e porter un se-

Vedete voi se e come volete sfruttarlo. Con un

gnale basso al pin RX del PIC.

sw migliore del mio potete fare dei dimmer.

In questo modo i livelli sono ripristinati correttamente lato PIC.

EVOLUZIONI

Ovviamente anche chi trasmette vede il se-

Qui di seguito vi indico alcune evoluzioni che

gnale di rientro e questo spiega il perch nel

potrebbero essere sviluppate da voi per miglio-

SW c la funzione di pulizia del buffer di rice-

rare il progetto ed ampliarne le prestazioni:

zione.

Realizzare tutto su una basetta sola, togliere

Questo stesso pezzo di circuito (tutti i compo-

due ingressi (Es In 0 e In 1) che sono superflui e

nenti dai pin del PIC alla linea di comunicazione)

fare una basetta completa di tutto sfruttando al

potr essere replicato anche per la connessione

meglio gli spazi su entrambe le superfici e mon-

della consolle di programmazione del sistema

tare solo i componenti voluti.

installato.

Lo schema proposto visibile qui Single-Mod e

Se vi sar comodo potrete fare come me, con

qui sotto vedete una proposta di CS

una scheda di Arduino, sfruttando solo il chip di


conversione USB/Rx-Tx.
Vediamo la parte di ATTUAZIONE.
Sulla parte di attuazione abbiamo due circuiti:
uno di attuazione vera e propria e uno di servizio.
DomoOut
La parte di attuazione composta da un opto
DIAC che controlla il gate del TRIAC.
Per carichi fino a un centinaio di Watt non serve

Se non interessa si pu eliminare la parte relati-

dissipatore. Se volete sfruttare la piena potenza

va ai componenti dellOpto in ingresso e rispar-

gestibile col TRIAC, dovrete mettere un dissi-

miare superficie.

patore adeguato e TENERLO ISOLATO per

Ampliate il protocollo per gestire pi ingressi.

sicurezza.

Credo che un protocollo a due byte (comando

Il circuito di servizio utilizzabile per un control-

+ indirizzo) potrebbe soddisfare i pi esigenti.

lo in fase del TRIAC.

Suggerirei di limitarsi a 128 indirizzi mettendo

Questo circuito non altro che un optoisolatore,

sempre il bit pi significativo a 1 (0x80).

collegato alla rete, che manda al PIC un impul-

In passato ho sfruttato il bit di parit per differen-

so alto ogni volta che la tensione passa per lo

ziare. Ad esempio i comandi sono Parity Odd e

ZERO.

gli indirizzi Parity Even. Se ben gestito Fun-

In effetti, alimentato quando la rete supera po-

ziona.

ELETTRONICA OPEN SOURCE

{34

La mia DOMOanTICA: scelta forzata, soluzione facile


Potete sfruttare lopto in ingresso e fare un dimmer dove, tenendo premuto il pulsante accendi,
si aumenta la luminosit in modo ciclico (si accende col valore in memoria e poi si aumenta
fino al max per poi ricominciare dal minimo e si
memorizza sul rilascio. E un metodo classico.)

DESCRIZIONE SW
Di seguito diamo una descrizione dellimplementazione in C della attuale versione base del
SW che funziona su queste basette.
Si assume che chi interessato a questo
progetto abbia gi una familiarit con i sistemi di sviluppo SW e con la programmazione
dei dispositivi.
Per informazione, io ho usato un PicKit2 e il sistema di sviluppo Microchip MPLAB.
Vedremo quali sono le varie funzioni e a cosa
servono, in modo che voi possiate partire da qui
per ampliare, modificare, migliorare le funzionalit.
Qui trovete il listato intero domo_V200 e il file
coi Codici
Saltiamo a pi pari la descrizione della parte di
configurazione, FUSES, apertura porte e definizione di pin di Input o Output che sono banali e
vediamo cosa c di specifico di questo progetto.
La prima cosa, di comodo, che il SW uno
solo e va su tutte due le basette.
Questo permette grosse semplificazioni nella
gestione delle funzioni di comunicazione e nella
definizione di variabili, costanti, funzioni comuni.
In cambio necessario avere un elemento di
configurazione che permette al SW di capire su
che basetta si trova.
La funzione di verifica si vede qui sotto:

Se guardate gli schemi, vedete che il bit 1 della porta B collegato al positivo sulla basetta
TRIAC e a massa sulla basetta Pulsanti.
In funzione del livello logico che si legge su questo pin si capisce su che basetta ci troviamo.
Se la basetta una TRIAC si devono configurare le porte in modo da comandare il TRIAC e
leggere lopto coupler (InitPICTriac(); ) mentre
se siamo su una PULSANTI, dobbiamo configurare le porte per leggere i pulsanti di comando
(InitPICPuls(); )
In fase di sviluppo, erano state inserite due righe di stampa che permettevano di verificare il
funzionamento del riconoscimento. Sono commentate ma lasciate a disposizione per eventuale debug.
Per entrambe le basette, lindirizzo della basetta
alla locazione 0x3000, prima locazione disponibile di Memoria utente.
//byte 1 0 3 2 5 4 7 6 9 8 11 10 13 12 15 14
#rom 0x3000={0x0001,0x0000,0x0000,0x000
0,0x0000,0x0000,0x0000,0x0000}
Riconosciuta la operativit da attivare e letto
lindirizzo di impianto, la basetta pronta per
svolgere il suo compito.
Si entra quindi in un loop infinito che svolge due

ELETTRONICA OPEN SOURCE

{35

La mia DOMOanTICA: scelta forzata, soluzione facile


funzioni: 1) svolgere il proprio compito specifico

ne, attivino indebitamente delle utenze (potreb-

e 2) controllare eventuali messaggi da rete di

bero aprire un cancello o azionare il sistema di

comunicazione.

innaffiamento o accendere luci o altro).

Basetta PULSANTI:

Inviato il LOCK, la basetta si presenta sulla se-

1) scandisce tutti i pulsanti (da 1 a 6) e manda in

riale col messaggio Mio indirizzo #

rete leventuale byte corrispondente al pulsante

Dove # rappresenta lidentificativo della basetta

premuto.

che avete scritto allindirizzo x3000.

2) dalla rete potrebbe arrivare un comando di

Di seguito vengono stampate 6 righe con:

inizializzazione o di modifica della programma-

Assegnazioni Presenti

zione.

Indirizzo $ # dove $ rappresenta il pulsante e

La gestione del pulsante molto semplice:

# rappresenta il comando contenuto

se lingresso attivo (alto) e se quel pulsante

Poich questi messaggi sono indirizzati alla

programmato (non 0) prendo il codice corri-

consolle di programmazione ma vengono an-

spondente e lo trasmetto.

che ricevuti da chi trasmette e mandano in tilt

Poich io stesso ricevo il mio carattere, essen-

il buffer di ricezione, questultimo deve essere

do su un bus bidirezionale, devo liberare il buf-

ripulito e lo si fa attraverso la funzione FlushRx()

fer in entrata usando la funzione FlushRx(). Poi


resto in attesa di veder rilasciare il pulsante e

for (i=1;i<7;i++) {

lascio 50msec di inattivit per uscire dal rischio

printf(Indirizzo %d %c\n\r, i,MioCodice[i]);

di rimbalzi del contatto.

La funzione che verifica la pressione di un pul-

//pulisce buffer ricezione

sante VerificaPulsante(numero pulsante) che

FlushRx();

provvede a effettuare un minimo di antibounce.


Se, invece, vedo arrivare un carattere dalla rete

Da qui inizia la programmazione che realizza-

di comunicazione controllo che sia un comando

ta in modo molto semplice (ma funziona):

di programmazione indirizzato a me.

Ripropone Indirizzo e codice seguiti da >. Ri-

Se lo , chiamo la funzione ProgramDevice();.

pulisce il buffer di ricezione e aspetta un carat-

Ci sono ancora tre comandi che possono arri-

tere.

varmi e che causano un reset:

Ripete loperazione per sei volte.

il RESET generale di sistema,

Anche se apparentemente poco elegante, que-

il RESET individuale e

sta procedura funzionale ad un sistema molto

il RESET delle basette Comandi.

semplice, facile da gestire e comodo.

La Routine di programmazione esegue una se-

Lindicazione dellindirizzo serve a garantire che

rie di funzioni che servono a evitare comandi

tutto come volevamo e stiamo parlando con la

non voluti sulla rete.

basetta giusta. Lelencazione dei codici presenti

In primis, manda una sequenza di tre caratteri

permette di fare cambiamenti dove serve senza

LOCK. Ricevendo questa sequenza, gli attuato-

dover ricorrere a troppi ricordi e documentazio-

ri vanno in blocco. Questo serve per evitare che

ne (ma non dimenticate di aggiornarla!!!).

i caratteri, scambiati durante la programmazio-

Infatti, se state aggiungendo un nuovo coman-

ELETTRONICA OPEN SOURCE

{36

La mia DOMOanTICA: scelta forzata, soluzione facile


do, basta ribattere uguali quelli vecchi e inserire
il nuovo al punto giusto.
Se dovete eliminarne uno, basta ribattere quelli
che restano e battere 0 su quello da eliminare.
Un suggerimento: fate bene le cose e usate un
criterio fisso per legare pulsante e posizione del
comando. Esempi

12 sar 0x40 + 0xC e 0x4C corrisponde al carattere <L>.E cos di seguito. Non dimenticate, ma
verificate coi nuovi sistemi operativi, che si pu
mandare un codice ASCII qualunque tenendo
premuto il tasto <Alt> e digitando tre cifre decimali da tastierino numerico.
Quindi <Alt> 075 corrisponde a inviare <L>.
Se, con il sistema completamente attivo, digiterete dalla consolle <l> (elle minuscolo = 0x67), se
avete una utenza con indirizzo 12 decimale o 0xC
esadecimale, la vedrete commutare acceso/spento/acceso/spento.

Doc-1

Finita la programmazione, possiamo riattivare il


comando inviando il carattere di ripartenza che
Cos sar pi semplice programmare corretta-

viene generato tenendo premuto il tasto Alt e

mente. Io ho adottato la seconda tabella e i co-

digitando il codice sul tastierino numerico.

mandi sono ACCENDI sopra e SPEGNI sotto.

Questa funzione tipica del DOS e permette di

Poi il locale pi a destra, nella percezione che

inviare codici ASCII sulla seriale.

abbiamo, va su 5/6 e quello pi a sinistra va su

NOTA BENE, i codici inseriti nellarea di ROM

1/2.

sono organizzati a WORD con la parte bassa

Percezione significa che i pulsanti pi vicini

a destra. I numeri che vedete sulla riga supe-

sono quelli del locale da cui arrivo e quelli pi

riore, vi aiutano a capire quali sono le locazioni

lontani sono quelli del locale in cui entro. Se

in cui scrivete. Lindirizzo della basetta lunico

una utenza non visibile, penso a come la vedrei

valore che serve ed il secondo byte. Nel mio

quando sono davanti alla pulsantiera. In questo

listato 01.

modo i comandi diventano intuitivi nonostante la

LA FUNZIONE FlushRx() continua a liberare il

grande flessibilit.

buffer di ricezione fin che non trova un silenzio

Nel Box un esempio di dialogo di programma-

di almeno 10 msec. Poi resetta i registri del PIC

zione.

che memorizzano la condizione di errore che si

BOX COME PROGRAMMARE I COMANDI


Abbiamo detto nellarticolo che i comandi possono essere inviati a 31 indirizzi diversi.Questi indirizzi occupano i valori esadecimali da 1 a 0x1F.
Lo Zero riservato a comandi broadcast, ovvero
a tutti.Il comando di accensione identificato da
un 1 in posizione bit 5 (0x20), quello di spegni ha
un 1 in posizione bit 6 (0x40) e quello di Toggle
ha due 1 in posizione bit 5 e 6 (0x60).Quindi Accendi utenza 7 si codificher ACCENDI + INDIRIZZO = 0x20 + 0x7 = 0x27Nella tabella ASCII
potete vedere che 0x27 corrisponde al carattere
<> apostrofo. Quindi questo il carattere da digitare in fase di programmazione.Spegni utenza

era generata.
Basetta ATTUATORI
Abbiamo visto che la prima operazione capire
se la basetta Pulsanti o TRIAC.
Se riconosciuta come TRIAC o Attuatore, si
salta alla parte di main che sta dopo lelse.
Dopo avere configurato il PIC si passa a fare un
lampeggio di conferma.
Questa parte potete lasciarla o toglierla a vostro
piacere. Ovviamente a me fa comodo come il

ELETTRONICA OPEN SOURCE

{37

La mia DOMOanTICA: scelta forzata, soluzione facile


check panel dellauto ma, se collegate cancelli

spondenti lazione di alzare abbassare o inverti-

o innaffiatori o motori porta garage, potrebbe ri-

re il comando del TRIAC in funzione dellordine

sultare sconveniente questa doppia pulsazione.

ricevuto.

Eliminatela pure a vostro piacimento.

Alcune note: la semplificazione introdotta dalla


limitazione del numero di utenze ha semplificato

Fase START

di molto la gestione operativa. Infatti non ne-

La cosa successiva recuperare il proprio indi-

cessario implementare un complesso gesto-

rizzo di dispositivo dalla solita locazione x3000

re di protocollo per accettare o scartare i co-

o MioCodice[0].

mandi in funzione dellindirizzo corretto o meno.

Puliamo il buffer di ricezione e ci mettiamo in

I comandi sono immediatamente riconoscibili

ascolto.

perch gi predefiniti.
Nulla vieta a voi di ampliare il numero dei co-

Fase OPERATE

mandi e il numero degli indirizzi usando se-

Cosa possiamo ricevere? Le opzioni sono di-

quenze di pi byte.

verse: operative e di sistema.

Potete anche aggiungere funzioni speciali su


alcune basette; ad esempio la temporizzazio-

Fase SUSPEND

ne su utenze come apricancello (centinaia di

Tra le opzioni di sistema abbiamo comandi

msec), innaffiamento (ore) o luci scale (secondi

come:

o minuti).

LOCK LOCK LOCK (lo abbiamo gi conosciuto)


LOCK individuale

Fase PROGRAM

UNLOCK individuale

Se vedo arrivare un carattere dalla rete di co-

ResetAllDevices.

municazione controllo che sia un comando di

Tra le opzioni operative abbiamo i tre comandi

programmazione indirizzato a me.

che abbiamo scelto di implementare:

Se lo , chiamo la funzione ProgramDevice();.

ACCENDI

Ci sono ancora tre comandi che possono arri-

SPEGNI

varmi e che causano un reset:

COMMUTA o TOGGLE

il RESET generale di sistema,

La prima cosa da fare capire se il comando

il RESET individuale e

per noi o meno. Quindi mascheriamo i 5 bit

il RESET delle basette Comandi.

meno significativi e li confrontiamo con il nostro

Il passaggio tra le fasi descrivibile con il se-

indirizzo.

guente diagramma

Se non coincidono ci rimettiamo in ascolto.


Se coincidono, allora dobbiamo capire quale
comando ci stato impartito e dobbiamo quindi
mascherare i 3 bit pi significativi.
Le tre configurazioni di comando sono definite
nelle costanto TON, TOFF e TOGGLE.
E banale riconoscere nelle tre funzioni corri-

ELETTRONICA OPEN SOURCE

{38

La mia DOMOanTICA: scelta forzata, soluzione facile


Vista la presenza di un lettore di rete a 50Hz,

Fatto questo, adottiamo la stessa interfaccia

potete anche controllare il TRIAC in fase e otte-

che abbiamo usati sulle basette PIC per tra-

nere un regolatore dimmabile.

slare i dati da Rx/Tx a BUS bidirezionale.

Il progetto completamente aperto e avete HW

In allegato trovate un SW scritto per LabWin-

e SW sotto controllo.

dows/CVI. Molti sicuramente ne hanno almeno

Con questo si conclude la spiegazione del lista-

una versione Demo o Student. Comunque il SW

to SW. Spero sia stato utile e completo.

scritto in C e potete prendere la parte di interfaccia grafica e sostituirla con una vostra in

LINTERFACCIA DI GESTIONE DELLA


CONSOLLE

VisualBasic, Basic, VisualC o quello che avete

In allegato a questo articolo vi dico anche come

I commenti vi aiuteranno a capire cosa buttare

io ho realizzato rapidamente una interfaccia se-

e cosa tenere.

riale col materiale che avevo a disposizione.

Allinizio usavo banalmente Hyperterminal,

La scheda ARDUINO MEGA 2560 R3 ha un

quindi..

chip di front end che implementa linterfaccia

Velocit 1200, parity nessuna, bit 8, stop 1. Tut-

USB <> seriale. Avendo una di queste sche-

to qui.

de a disposizione non ho fatto altro che colle-

Copiate banalmente la parte di schema che va

gare il Pin di RESET della ARDUINO MEGA a

dai pin Rx e Tx del PIC al filo del BUS e utilizza-

massa e usare i due pin RX e TX.

telo lato ARDUINO. La tensione di alimentazio-

Nota bene RX e TX sono basati sulla comu-

ne si prende dai pin GND e 3V3.

nicazione del chip CPU e quindi risultano

Le fotografie e le videate dovrebbero essere ab-

invertiti per noi.

bastanza esaustive.

disponibile.

Mi spiego: il chip di front end MANDA i dati sul


pin da cui il chip CPU si aspetta di riceverli e

CONCLUSIONE

viceversa.

Il sistema presentato costituito da due tipi di

I progettisti di ARDUINO MEGA hanno etichet-

basette con un unico SW che si autoconfigura.

tato i pin per come saranno usati dal chip CPU;

Il suo funzionamento provato in una installa-

quindi linterfaccia TRASMETTE i dati che arri-

zione realmente operante.

vano dalla USB verso il pin RX della CPU.

Il progetto stato opportunamente ridotto a

Quindi nella nostra applicazione ci dobbiamo

soddisfare le necessit. Non serve fare over-

considerare SLAVE. Spero di non avere fatto

engineering e complicarsi la vita.

pi confusione del necessario. Comunque, se

Vale banalmente un concetto allinglese: KISS,

attaccate un oscilloscopio al pin Rx vedete i ca-

ovvero Keep It Simply Stupid o Tieni le cose a

ratteri che vogliamo trasmettere in rete e sul pin

livello elementare (quanto basta)

Tx vedrete quelli che riceviamo dalla rete.

in contrasto con una presenza invasiva che

ELETTRONICA OPEN SOURCE

{39

La mia DOMOanTICA: scelta forzata, soluzione facile


spesso ci vediamo attorno: quella dellUCAS,
lUfficio Complicazione Affari Semplici (quello
della porta accanto dove lavora sempre qualcun altro ;-))
La semplificazione progettuale dellimpianto
notevole perch bastato predisporre la terna
di fili FASE, NEUTRO e TERRA(Giallo/Verde)
insieme a un cavetto telefonico a tre fili. Linstallazione immediata. Soprattutto, cos come
presentato, un ottimo punto di partenza (o
come si suol dire un Building Block) su cui potete sbizzarrirvi a fare modifiche, ampliamenti o
aggiunte. Lo spazio disponibile in memoria del
PIC ancora tanto.
Per impianti gi completi, possibile pensare
a una interfaccia con un modulino RTX. Cos si
elimina anche il filo telefonico.
Se dovessero esserci richieste sufficienti a giustificare un piccolo lotto conveniente, posso
sentire se mi fanno i CS o addirittura le basette
montate.
La promessa solo di valutare lopportunit non
di farli realmente perch sapete bene che per
pochi pezzi i costi non ricorrenti sono eccessivi.
Se arriveranno sollecitazioni da parte vostra
le unir e vi avviser quando raggiungiamo la
MOQ (Minimum Orderable Quantity)

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/la-mia-domoantica-scelta-forzata-soluzione-facile

ELETTRONICA OPEN SOURCE

{40

41}

PGUI Interfaccia
grafica per Processing
di Ernesto Sorrentino
17 Febbraio 2015

Processing un ottimo linguaggio di programmazione, ambiente di sviluppo, per produrre e modificare immagini. La sua semplicit duso e la complessit dei risultati
che si possono raggiungere hanno reso questo software il pi utilizzato tra studenti,
artisti, designer e non solo. Personalmente lo ritengo anche molto utile per gestire
periferiche esterne al PC come le board di Arduino; proprio per questo motivo ho
realizzato una GUI per facilitare linterfaccia tra utente e periferiche; utile soprattutto
quando si esportano gli sketch in file exe per ottenere programmi da condividere con
chi non ha installato la IDE sul computer. Nasce cos la PGUI.

PGUI

GUI una classe per realizzare comandi


grafici con Processing, la scelta di optare a
una classe, invece che a una libreria come

alizzare display e led per visualizzare informazioni ricevute.

PROGRAMMAZIONE

gi presenti sulla rete, dovuto per dare la pos-

Alcune librerie dinterfaccia grafica conosciute,

sibilit allutente di modificare a piacimento le

creano un oggetto scrivendo pi istruzioni nel

funzioni basi e per far crescere il progetto nella

modulo Setup() invece, PGUI, ottiene il medesi-

filosofia dellOpen Source.

mo lavoro con una unica istruzione posizionata

Con questutility si possono realizzare pulsanti, slide, check e text box per interagire con
dispositivi esterni ed a sua volta si possono re-

nel modulo draw(). Vero che la funzione draw


ripete in loop la stessa istruzione ma nel caso
di un comando PGUI loggetto sar creato una

PGUI Int erf acci a gr af i ca per P r ocessi ng


sola volta e lascia attivo il solo controllo di stato,

to stesso. Questi parametri possono essere

questo per non appesantire il carico di dati

modificati a piacere durante lesecuzione

nella RAM.

dello sketch.

COMANDI

BUTTON

Gli oggetti che si possono realizzare partono da


quelli pi comuni come pulsanti e slide, fino ad
altri un po particolari realizzati per necessit in
fase di progettazione di alcuni sketch personali.
Tra questi ci sono:

Il comando button crea un pulsante con testo,

- button: per creare pulsanti di comando;

colori e dimensioni personalizzabili; il testo si

- slide: comando che genera un cursore re-

adatta in dimensioni e posizione automatica-

golabile;

mente nello spazio delloggetto. Ha la particola-

- check: per ottenere delle ckeck list da sele-

rit di cambiare colore al passaggio del mouse

zionare;

e nuovamente quando cliccato. Questoggetto

- tbox: una text box per inserire testi alfanu-

restituisce in una label nominata push il nume-

merici;

ro assegnato alloggetto ogni volta che clicca-

- display: area per visualizzare testi;

to.

- led: avviso luminoso;

Le impostazioni da immettere sono:

- zone: per impostare aree di controllo al passaggio del mouse.

mygui.button(n, bg, x, y, lon, h, col, t, k, a, w);

Di seguito analizzeremo nel dettaglio ogni singolo oggetto ma prima vediamo come imposta-

n = indice, numero a scelta, per riconoscere il

re lo sketch.

pulsante in uso;

Per richiamare una funzione dalla classe biso-

Questo il valore che restituisce push

gna creare unistanza come segue:

quando cliccato.
bg = valore da impostare identico al colore di
background scelto;

GUI mygui = new GUI();

Questo dato serve per rifiniture delloggetto.


successivamente scrivere nel modulo draw() li-

x = posizione x del pulsante da visualizzare nel-

struzione per richiamare loggetto, nel caso di

la finestra;

un pulsante:

y = posizione y del pulsante da visualizzare nella finestra;

mygui.button(1, bg, 10, 50, 100, 25, 0, Pulsan-

lon = lunghezza del pulsante;

te 1, 1.3, 1, 2);

h = altezza del pulsante;


col = scelta del colore del pulsante, il dato deve

Come si pu notare il comando per loggetto

essere espresso in esadecimale.

ha dei parametri da assegnare, sono dati per

Impostando 0 si utilizzer lo stesso colore

collocare,dimensionare ed altro ancora logget-

di background;

ELETTRONICA OPEN SOURCE

{42

PGUI Int erf acci a gr af i ca per P r ocessi ng


t = etichetta del pulsante (Stringa);

background scelto;

k = fattore riduzione dimensione etichetta;

x = posizione x dello slide da visualizzare nella

La grandezza del carattere delletichetta

finestra;

cambia in automatico in base alla quantit

y = posizione y dello slide da visualizzare nella

delle lettere e alla dimensione delloggetto

finestra;

ma possibile eseguire piccole correzioni

h = altezza dello slide;

impostando K con valori che variano da 0.1

ci = colore interno dello slide (espresso in esa-

a 2.0.

decimale);

a = abilita/disabilita pulsante (0 = off, 1 = on);

cs = colore del cursore (espresso in esadeci-

Ottimo per disabilitare funzioni che non deb-

male);

bano essere regolare utente.

ver = verso dello slide (0 = orizzontale, 1 = ver-

w = numero della finestra in cui visualizzare

ticale);

loggetto;

t = tipo di cursore (0 = solo punto riferimento, 1

Questo dato molto importante, serve per

= cursore pieno)

gestire pi oggetti in finestre diverse; come

val = valore iniziale del cursore allavvio;

vedremo poi nellesempio.

K = costante di divisione del valore letto;


vw = Abilita/Disabilita visualizzazione del valore

SLIDE

vicino allo slide (0 = disabilita, 1 = abilita);


a = abilita/disabilita lo slide (0 = off, 1 = on);
w = numero della finestra in cui visualizzare
loggetto.

CHECK

Slide un oggetto che genera dei cursori re-

Oggetto per realizzare delle check list con

golabili, possono assumere dimensioni, colori

possibilit di scegliere il numero di check, orien-

e orientamento differente tra loro. Restituisce

tamento e dimensione. Inoltre possibile sce-

in una label nominata cursor[n] (dove n il

gliere se incorniciare il check list e se avere un

numero identificativo dello slide) il valore impo-

check attivo di default. Restituisce in una label

stato dal cursore.

nominata check[n] (dove n il numero iden-

Le impostazioni da eseguire sono:

tificativo del check list) il check selezionato. Le


impostazioni da eseguire sono:

mygui.slide(n, bg, x, y, h, ci, cs, ver, t, val, K,


vw, a, w);

mygui.check(n, bg, x, y, r, N, v, c, sel, w);

n = indice, numero a scelta, per riconoscere lo

n = indice, numero a scelta, per riconoscere il

slide in uso;

check in uso;

bg = valore da impostare identico al colore di

bg = valore da impostare identico al colore di

ELETTRONICA OPEN SOURCE

{43

PGUI Int erf acci a gr af i ca per P r ocessi ng


background scelto;

col_t = scelta del colore del testo;

x = posizione x del check da visualizzare nella

k = fattore riduzione dimensione carattere; (va-

finestra;

ria da 0.1 a 2.0; consigliato 0.8);

y = posizione y del check da visualizzare nella

w = numero della finestra in cui visualizzare

finestra;

loggetto.

r = raggio del check;


N = numeri di check da disegnare;

DISPLAY

v = verso della serie di check (0 = orizzontale, 1


= verticale);
c = cornice (0 = off, 1 = on);

Il comando display crea un box dove visualiz-

sel = N del check attivo di default allavvio dello

zare messaggi e testi variabili. La grandezza

sketch(0 = nessuno);

del carattere varia automaticamente in basse

w = numero della finestra in cui visualizzare

alla lunghezza del testo. Si possono cambiare i

loggetto.

colori del testo e dello sfondo, incorniciare il box


e giustificare il testo (sinistra, centro o destra).

TBOX

Le impostazioni da eseguire sono:


mygui.display(n, bg, x, y, l, h, cor, col_d, col_t,

Comando per realizzare un text box. Questog-

t, k, pos, w);

getto riceve testi alfanumerici e li memorizza


in una label nominata tbox[n] (dove n il

n = indice, numero a scelta, per riconoscere il

numero identificativo del text box). La grandez-

display in uso;

za del testo e in numero di lette da inserire varia

bg = valore da impostare identico al colore di

automaticamente in base alla dimensione del

background scelto;

text box. Si pu assegnare il colore del testo e

x = posizione x del display da visualizzare nella

dello sfondo. Le impostazioni da eseguire sono:

finestra;
y = posizione y del display da visualizzare nella

mygui.textBox (n, bg, x, y, l, h, col, col_t, K, w)

finestra;
l = lunghezza del display;

n = indice, numero a scelta, per riconoscere la

h = altezza del display;

text box;

cor = cornice del display (0 = off, 1 = on);

bg = valore da impostare identico al colore di

col_d = colore interno del display (espresso in

background scelto;

esadecimale);

x = posizione x della text box da visualizzare

col_t = colore del testo (espresso in esadeci-

nella finestra;

male);

y = posizione y della text box da visualizzare

t = testo da visualizzare (tipo Stringa);

nella finestra;

k = fattore riduzione dimensione carattere; (va-

h = altezza della text box;

ria da 0.1 a 2.0);

col = scelta del colore della text box;

pos = giustificazione testo (0 = centro, 1 = sini-

ELETTRONICA OPEN SOURCE

{44

PGUI Int erf acci a gr af i ca per P r ocessi ng


stra, 2 = destra);

w = numero della finestra in cui visualizzare

w = numero della finestra in cui visualizzare

loggetto.

loggetto.

ZONE
LED

Questo comando lho realizzato per esigenze


personali in alcuni sketch. Crea unarea definita, in ampiezza e colore, dallutente e rileva il
passaggio del mouse restituendo true in una

Comando per simulare laccensione di un

label nominata zone[n] (dove n il nume-

led, utile per segnalare il cambio di stato di un

ro identificativo dellarea). Utile per far apparire

rel o di una funzione.

messaggi distruzione quando si porta il mou-

Pu assumere qualsiasi colore, la scelta pu

se sopra un oggetto. Lapplicazione per questo

avvenire in due modi; con numeri esadecimali

comando pi utile di quelle immaginabili. Le

si ottenine un colore personalizzabile mentre

impostazioni da eseguire sono:

con numeri interi su pu impostare un colore


predefinito dalla classe. Le impostazioni da ese-

mygui.zone(n, bg, x, y, l, h, cor, col, w)

guire sono:
n = indice, numero a scelta, per riconoscere la
mygui.led(n, bg, x, y, r, col, w);

zona in uso;
bg = valore da impostare identico al colore di

n = indice, numero a scelta, per riconoscere il

background scelto;

led in uso;

x = posizione x dellarea nella finestra;

bg = valore da impostare identico al colore di

y = posizione y dellarea nella finestra;

background scelto;

l = lunghezza dellarea;

x = posizione x del pulsante da visualizzare nel-

h = altezza dellarea;

la finestra;

cor = corince (0 = off, > 1 imposta il colore);

y = posizione y del pulsante da visualizzare nel-

col = colore dellarea (0 = trasparente, > 1 impo-

la finestra;

sta il colore);

r = raggio del led;

w = numero della finestra in cui visualizzare

col = scelta del colore:

loggetto.

0 = Vuoto;
1 = Nero;

SCREEN

2 = Bianco;

Questo comando non appartiene alla classe

3 = Rosso;

per tanto non richiede listanza con PGUI.

4 = Verde;

Questa istruzione permette di apportare modifi-

5 = Blu;

che, in tempo reale, alla finestra principale come

6 = Giallo;

cambio titolo, posizione, dimensione e altro.

7 = arancio;
# = personalizzato.

screen(x, y, o, t, sx, sy, l, w)

ELETTRONICA OPEN SOURCE

{45

PGUI Int erf acci a gr af i ca per P r ocessi ng


x = posizione X della finestra;

trascinare il mouse sul secondo punto e lasciare

y = posizione Y della finestra;

il tasto;

o = modalit OnTop (0 = Off, 1 = On);

apparir una linea rosso con sopra il valore,

t = titolo della finestra (tipo Stringa);


sx = dimensione orizzontale della finestra (0 =
dimensione invariata);
sy = dimensione verticale della finestra (0 = di-

espresso in pixel, della lunghezza della linea;


per disabilitare il tool premere ^ (shift + ) sulla
tastiera.

mensione invariata);
l = blocco della posizione del frame (1 = bloccata, 0 = sbloccata);
w = numero della finestra dove applicare le impostazioni.

NOTA
Per un corretto funzionamento ci sono due
punti da tener conto nello sketch:
1) nel modulo setup() inserire la label win-

TOOL MEASURE

dow col numero della prima finestra da visualizzare allavvio;


Come si vedr, nellesempio allegato, possibile creare pi finestre e rendere visibile una sola;
2) azzerare le label push, slide[n] e check[n]
dopo effettuato la lettura del valore.
Measure non un oggetto ma un tool per aiutare nellimpaginazione grafica. Uno strumento

Di seguito un piccolo esempio per realizzare

per misurare, in pixel, lo spazio tra due punti;

una check list :

utile per verificare la corretta


distanza tra pi oggetti. Per
utilizzarlo:
Durante lesecuzione dello
sketch premere (shift + )
sulla tastiera, si noter che il
puntatore del mouse cambia
forma;
cliccare, e tener premuto, il
tasto sinistro del mouse sul
punto di partenza da misurare;

ELETTRONICA OPEN SOURCE

{46

PGUI Int erf acci a gr af i ca per P r ocessi ng

CONCLUSIONE
La PGUI non ha certamente una grafica in HD
ma sicuramente semplice e funzionale nellutilizzo. In questo periodo ho realizzato tre tool
con questa GUI, che poster nei prossimi giorni,
e non ho riscontrato difetti ma per qualsiasi problema potete segnalarmelo per poi correggerlo
insieme. In allegato troverete sia la classe sia
un esempio di prova dei vari oggetti.
PGUI

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/pgui-interfaccia-grafica-per-processing

ELETTRONICA OPEN SOURCE

{47

48}

Eureqa, il sof tware


che scova le
interconnessioni
tra i dati
di Giovanni Di Maria
19 Febbraio 2015

Eccoci a parlare di un grandioso software matematico. Esso rappresenta un valido


supporto per gli studiosi e per i ricercatori che tentano di trovare una interconnessione logica e matematica tra i dati in loro possesso, producendo le relative equazioni e
formule matematiche generatrici.

el mercato dei software matematici esisto-

a disposizione e scegliere un modello di regres-

no svariati programmi che, da una serie di

sione (tra quelli proposti). Il software far tutto

dati pi o meno complessi, estrapolano e

il resto, generando formule e tracciando grafici.

trovano una formula matematica che lega tra

Essi sono anche identificati con il nome di Cur-

loro le informazioni. Queste applicazioni, quali

ve fitting softwaree applicano diverse tipologie

utili strumenti di analisi dei dati, offrono modelli

di interpolazioni come, ad esempio, Linear Fit,

di regressione che, nella maggior parte dei casi

No Linear Fit, Cubic spline, Polynomial Spli-

soddisfano ogni esigenza.

ne ed altri, ma sempre attinti da una collezione

Lutilizzo di questi programmi semplice: suffi-

di modelli prefissi.

ciente, infatti, inserire le informazioni numeriche

Eureqa diverso dagli altri fratelli. Dispone

ELETTRONICA OPEN SOURCE

Eureqa, il software che scova le interconnessioni tra i dati


di strumenti e, sopratutto, di metodologie di ri-

valori logici di ogni cella della matrice, legati alle

cerca intelligente che, spesso, lo rendono in-

relative posizioni, come da tabella seguente:

sostituibile e innovativo allo stesso tempo. Ma


vediamo di capire qualcosa in pi, presentando
immediatamente il programma.

PRIMA ESPERIENZA
Sono venuto a conoscenza di questo programma quando ebbi la necessit di trovare la formula generatrice di una matrice logica legata
ad un pattern bitmap. Data la seguente matrice,
composta di valori booleani (0 e 1):

occorreva generare unequazione, una formula


con la quale, immettendo i valori di coordinata
x e y, si ricevesse lo stato logico (0 oppure 1)
della cella di riferimento.
Utilizzando svariati software di curve fitting e di
regressione, non era stato possibile calcolare
il corretto risultato finale. Eureqa ha svolto, invece, egregiamente il suo compito, generando
unequazione funzionale e funzionante. Si ricorda che il curve fitting di una matrice (che
prevede, quindi, pi variabili) molto pi complesso rispetto a quello composto da una sola
variabile. Da questo momento decisi che il sof-

COS EUREQA?

tware Eureqa sarebbe entrato a far parte del-

Eureqa (con la lettera q) un programma ma-

le mie applicazioni preferite e che mi avrebbe

tematico che ha lo scopo di scovare e trovare

sempre accompagnato nelle mie ricerche e nei

le relazioni matematiche celate allinterno dei

miei esperimenti.

dati e delle informazioni. Se abbiamo una serie di dati, pi o meno complessa, e


vogliamo conoscere la (eventuale)

LA PROCEDURA EFFETTUATA

formula che lega tra loro queste informazioni,

La prima cosa sviluppata stata la mappa dei

questo software pu dare un valido contributo.

ELETTRONICA OPEN SOURCE

{49

Eureqa, il software che scova le interconnessioni tra i dati


Costituisce una versione pi potente ed evoluta

denza dei termini di test, il software continua a

dei programmi di Curve Fitting. Si tratta di una

funzionare ma con dei limiti che lo rendono uti-

nuova e innovativa tecnologia che scopre i le-

lizzabile parzialmente.

gami nascosti nei dati, semplici o complessi che

Al momento della scrittura del presente articolo

siano. Si chiama Eureqa in onore della famosa

la versione 1.10.0. E disponibile per piattafor-

esclamazione dello scienziato Archimede (Eu-

ma Windows, Linux e Mac.

reka) ma la lettera k stata rimpiazzata dalla


lettera q per riferimento alla parola equation.

LINTERFACCIA

A differenza di altri software simili, Eureqa uti-

Il programma presenta un ambiente applicativo

lizza una tecnica di apprendimento incremen-

estremamente semplice ed amichevole. E com-

tale ed automatico, una sorta di regressione

posto da alcuni macro-blocchi, corrispondenti ai

simbolica, al fine di definire, in termini squisi-

relativi stadi operativi. Tali stadi sono i seguenti:

tamente matematici, qualsiasi problema di ogni

Enter Data;

natura. Una volta definita la legge che spiega il

Prepare Data;

problema, ci si pu spingere pi in fondo ten-

Define Search;

tando, anche, la previsione di eventi futuri o non

Start Search;

previsti.

Results;

Eureqa un sofisticato software sviluppato dal-

Reports;

la Nutonian, azienda fondata nel 2011 da due

Secure Clouds.

straordinari scienziati, con lo scopo di sempli-

Spieghiamo brevemente il funzionamento e lo

ficare i dati scientifici rendendoli alla portata di

scopo di ogni blocco, dedicandoci poi allutilizzo

tutti.

pratico del programma.

Una volta inseriti i dati a disposizione il programma, un potente ambiente matematico con

ENTER DATA

una interfaccia dalla semplicit disarmante, co-

In questa finestra lutente pu inserire i propri

mincia ad intraprendere un processo di ricerca

dati numerici e le proprie informazioni matema-

progressiva, che pu durare da alcuni secondi a

tiche. Possono essere immesse le serie di dati

parecchie ore, sino a quando i segreti delle leg-

con un numero qualsiasi di variabili indipendenti

gi che governano le informazioni vengono ma-

e una quantit arbitraria dinformazioni. Le va-

gicamente svelate, tramite formule ed equazioni

riabili possono essere nominate con i canonici

matematiche.

simboli (x, y, z) oppure con dei nomi pi esplica-

Eureqa un programma commerciale I primi

tivi (velocit, massa, peso, spesa, ecc).

trenta giorni sono di prova, nei quali lutente pu


testarlo in tutte le sue sfumature. Dopo la sca-

ELETTRONICA OPEN SOURCE

{50

Eureqa, il software che scova le interconnessioni tra i dati

del software. Alcune di questi accomodamenti

PREPARE DATA
In questa finestra lutente, oltre a visualizzare
una rappresentazione grafica dei propri dati,
pu effettuare alcune operazioni di pre-proces-

sono i seguenti:
Smussamento e addolcimento dei dati in
input;

sing sugli stessi, in modo da adattarli meglio ed

Gestione dei dati mancanti;

affinarli a quelle che sono le esigenze tecniche

Normalizzazione dei valori;


Filtro dei dati.

ELETTRONICA OPEN SOURCE

{51

Eureqa, il software che scova le interconnessioni tra i dati


Segue anche un elenco di log nel quale sono

DEFINE SEARCH
Questa importante finestra definisce i parametri

mostrate le equazioni trovate con il relativo gra-

vitali di quelli che saranno, poi, i risultati finali.

do di bont, confermato anche da un chiaro gra-

Unimportante possibilit quella di includere,

fico.

o meno, alcune funzioni matematiche. Si pu


inoltre impostare un modello personalizzato, se
si desidera, oppure lasciare un modello libero
e aperto a qualsiasi possibilit con la classica
equazione y=f(x).
Inoltre lutente pu decidere anche il dominio
dellerrore e la priorit del suo calcolo (errore
assoluto, errore quadratico, massima differenza, coefficiente di correlazione e molti altri).
Tutte queste opzioni, tuttavia, non devono lasciar intimorire lutilizzatore. Nella maggior parte dei casi, infatti, si possono lasciare inalterate.

RESULTS
Senza dubbio questa la finestra pi interessante, nella quale appaiono i risultati tanto attesi, che il software cerca e trova faticosamente.
La videata suddivisa in quattro quadranti, riportando rispettivamente quanto segue:
Quadro delle migliori soluzioni trovate;
Grafico della formula selezionata;
Dettaglio statistico dellequazione selezionata;
Grafico della complessit dellequazione.

START SEARCH

Tutti e quattro i riquadri sono aggiornati costan-

Serve a visualizzare i comandi di inizio, fine e

temente, man mano che la ricerca procede ed

pausa della ricerca. Durante la perlustrazione

essa costituisce, sicuramente, la finestra che

delle formule generate sono mostrati anche dei


parametri statistici sulla ricerca stessa come, ad

lutente segue ed apprezza di pi.

esempio. il tempo impiegato ed il numero dei


processori utilizzati, nonch il numero di formule
originate al secondo e, infine, la stima di quanto
la ricerca da considerarsi matura o meno.

ELETTRONICA OPEN SOURCE

{52

Eureqa, il software che scova le interconnessioni tra i dati

REPORTS
Si tratta di una videata nella quale possono essere condotti tanti esperimenti e visualizzazioni,
nonch analisi sulle formule trovate da Eureqa.
In generale le possibilit di azioni sono molteplici e lutente pu eseguire le seguenti importanti
operazioni:
Generazione di un sommario grafico e
testuale di tutte le formule trovate dal software, esportabile anche in PDF, HTML
e videoscrittura;
Valutazione e test veloce della formula
scoperta, con immissione della variabile
indipendente e visualizzazione del relativo risultato finale;
Valutazione globale della formula con
un dataset, solitamente quello inserito
inizialmente, per una stima e controllo di
come lequazione si comporta con le varie tipologie di dati;

Lultima finestra permette di velocizzare le


operazioni di ricerca. Normalmente Eureqa utilizza la CPU del proprio PC (mono o multicore)
per effettuare le operazioni di ricerca. Usando i
Secure Clouds (a pagamento) possibile sfruttare anche le CPU remote di altri computers al
fine di sveltire le elaborazioni anche fino a 128
volte. Attualmente le tariffe sono di 0,31 $ per

Grafici vari;

ogni core per ora. Si possono prendere in af-

Test di velocit;
Calcolo di modelli statistici su un determinato dataset.

SECURE CLOUDS

fitto 16, 32, 64 o 128 cores per volta. Un incremento di prestazioni di 128 volte vuol dire che
una ricerca che dovesse impiegare sette giorni
in realt impiega solo 1 ora e mezza.

ELETTRONICA OPEN SOURCE

{53

Eureqa, il software che scova le interconnessioni tra i dati


le equazioni della vita, avendo a disposizione
solo le misurazioni pratiche.

UN ALTRO ESEMPIO PRATICO


Spostiamo il raggio dazione di Eureqa nel campo dellelettronica. E verifichiamo se la sua potenza di calcolo riesce a ricavare e scoprire
la formula matematica della frequenza di risonanza. Con un programma di simulazione elettronica (Microcap 11) si realizza un semplice
circuito RLC, con diversi valori per L e per C,

COME LAVORA EUREQA

registrando, di volta in volta, i dati raccolti.

Come accennato in precedenza, Eureqa utilizza la regressione simbolica per determinare le


equazioni matematiche che descrivono linsieme dei dati nella loro forma pi semplice. La
prima volta che apparve Eureqa fu provato con
linserimento dei dati grezzi dellandamento del
doppio pendolo. In poche ore il programma
riusc a scovare la seconda legge di Newton
senza essere programmato in tal senso.
Il software inizia a esaminare i dati e propone
le equazioni che soddisfano (in parte o in tutto)
landamento matematico degli stessi. Esegue,
quindi, una sorta di curve fitting. Molte formule
falliscono ma altre sono le candidate per essere

Con il software di elettronica sopracitato saran-

prescelte in seguito. Quindi le equazioni preferi-

no effettuate tante simulazioni di tipo AC, con

te sono nuovamente riviste e modificate migliaia

diversi valori per il condensatore e linduttan-

di volte (sia nella forma che nei parametri nume-

za. Sar, quindi, calcolata la tensione minima

rici) sino a quando raggiunto il miglior risultato

e, soprattutto, a quale frequenza si verifica tale

possibile. Ogni formula evolve continuamente in

picco negativo, determinando, in tale modo, il

unaltra pi precisa ed elaborata. Non c a prio-

momento della risonanza.

ri un modello standard e predefinito da seguire.

Tutti questi valori andranno poi a confluire allin-

La sua potenza realmente grande. Basta inse-

terno di Eureqa che, sicuramente, elaborer la

rire i dati numerici di qualsiasi legge meccanica,

formula finale della frequenza di risonanza (in

fisica o altro per ricevere, in poche ore la formu-

questo caso si parla di risonanza-serie).

la che lega tra loro le informazioni. Si tratta, in


sostanza, di uno scienziato virtuale che scopre

ELETTRONICA OPEN SOURCE

{54

Eureqa, il software che scova le interconnessioni tra i dati


Come si vede dalla tabella, i valori delle induttan-

LE SIMULAZIONI
Le prove possono essere anche effettuate su

ze utilizzate sono espressi in microHenry (uH),

un circuito vero e proprio ma, data la tolleranza

le capacit dei condensatori in nanoFarad (nF)

dei componenti elettronici e le limitate precisioni

e la frequenza, dopo le simulazioni al PC, diret-

degli strumenti di misura, i risultati finali potreb-

tamente in Herz. Tali valori sono stati poi inseriti

bero essere un tantino falsati. Le diverse simu-

nellapposito foglio di Eureqa. Sono stati combi-

lazioni, in totale sedici, sono state eseguite con

nati tra loro i valori di induttanza (100uH, 50uH,

i seguenti valori di L e C, ottenendo le relative

20uH e 10uH) e di capacit (100nF, 50nF, 20nF

frequenze di risonanza (in output) al nodo elet-

e 10nF) sviluppando sedici possibilit di circuiti

trico compreso tra il resistore e linduttanza:

diversi (4^2=16).

RICERCA CON EUREQA


Dopo aver dato in pasto le informazioni a Eureqa (finestra Enter Data) si iniziata la ricerca (premendo il tasto Run) senza particolari
configurazioni. Si , dunque, aspettata pazientemente, e con trepidazione, una intera notte di
elaborazione.

Le formule che il programma ha sfornato sono


numerose, di varia lunghezza, complessit e accuratezza. Non esiste uno
stop del software ma

ELETTRONICA OPEN SOURCE

{55

Eureqa, il software che scova le interconnessioni tra i dati


lutente che decide quando fermarsi. Se la formula trovata lo soddisfa, infatti, si pu interrompere lelaborazione. Lelenco delle equazioni
trovate (dopo circa dodici ore di lavoro) apparso nella finestra Results, ordinate per best fit.

CONCLUSIONI
Eureqa un grandioso programma che non pu
certamente mancare nella cassetta degli attrezLa migliore formula , ovviamente, la prima
dellelenco. Anche se, canonicamente, diversa da quella pi conosciuta e famosa, la sua
efficacia la medesima. Si provi a sostituire i
valori di C (in nanoFarad) ed L (in microHenry) per ottenere lesatta frequenza di risonanza.
Il programma dispone di grafici di confronto e
di visualizzazioni statistiche per determinare la
bont finale di una determinata soluzione. Con
essa possono essere visualizzate e contemplate le seguenti informazioni:
Grafico di Fit;
Grafico degli errori residui;
Bont R^2;
Coefficiente di correlazione;
Errore massimo;
Media errore;
ecc.

zi dei matematici e dei ricercatori. Il suo campo


dazione estremamente vasto e spazia dalla
geometria alla fisica, dalla chimica allelettronica
e dalla musica alla biologia. Sfruttando e impostando al meglio le impostazioni del software si
riuscir certamente a trarre il massimo da esso.
Le tempistiche dei risultati, tuttavia, dipendono,
in parte, anche dalla potenza del processore utilizzato.

SITOGRAFIA E APPROFONDIMENTI
http://www.nutonian.com/
http://formulize.nutonian.com/forum/
http://formulize.nutonian.com/documentation/
eureqa/

ELETTRONICA OPEN SOURCE

{56

Eureqa, il software che scova le interconnessioni tra i dati

https://www.youtube.com/watch?v=NhC1QbPQ5Q

https://www.youtube.com/watch?v=k7GCqfV5Uk4

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/eureqa-il-software-che-scova-le-interconnessioni-tra-i-dati

ELETTRONICA OPEN SOURCE

{57

58}

Ricevitore telecomandi
a 2 rel [Progetto
Completo fai-da-te]
di Emanuele
24 Febbraio 2015

Il ricevitore per telecomandi (radiocomandi codificati) a 2 rel un progetto completo


open source (fai-da-te) per attivare carichi remoti. Sar quindi possibile accendere
luci, comandare elettrodomestici oppure aprire la porta del garage o alzare la tapparella, tramite un radiocomando apposito. Il progetto molto versatile, infatti, con
delle semplici modifiche pu essere alimentato a 230Vac oppure a 12V o a 24V sia in
alternata che in continua. Inoltre, essendo sia hardware open source che software
open source, possibile intervenire nel codice e quindi adattare la decodifica al telecomando che si intende utilizzare. In questo articolo il progetto viene presentato con
la codifica per telecomandi UM86409 compatibile con MM53200. Il progetto, anche se
ormai datato, essendo stato prodotto in volumi per alcuni anni, molto utile a scopo
educational.

RICEVITORE RADIOCOMANDO CODIFICATO

Alla ricezione di un codice programmato, attiva in modo passo/passo o impulsivo (durata 2

n questo articolo viene presentato il progetto

secondi) un rel di potenza, in grado di pilotare

completo di una scheda ricevente per radioco-

carichi a 230Vac fino a 10A.

mandi con codice di sicurezza.

Possibilit di programmare, quindi salvare in


memoria NON volatile fino a 40 codici diversi.

ELETTRONICA OPEN SOURCE

Ricevitore telecomandi a 2 rel [Progetto Completo fai-da-te]


Il codice del telecomando viene acquisito e me-

re utilizzati anche moduli di altre marche come

morizzato completamente. Quindi, si attiver il

ad esempio il ricevitore radio Mipot, tramite de-

RELE corrispondente al canale attivato (cana-

gli opportuni (e semplici) interventi hardware.

le1 o canale2 (se presente)).


Salvataggio dello stato del rel e ripristino in

ALIMENTAZIONE DELLA SCHEDA

caso di mancanza rete elettrica.

SCHEMA ELETTRICO DELLA SCHEDA RICEVENTE RADIO

In questa parte di schema possibile notare il


microcontrollore di gestione, PIC16F630, ma
possibile adattare anche un micro equivalente.
Il ponticello JP1 permette la selezione della modalit di funzionamento dei due RELE. Possono
essere facilmente programmati per funzionare
in modo passo passo o impulsivo. Sempre tramite il ponticello JP1 possibile autoapprendere il codice del telecomando.
Considerando che il progetto viene fornito open
source, sar possibile inserire la codifica dei
radiocomandi che si desidera autoapprendere
successivamente.

Limmagine sopra rappresenta la parte ricevente radio, con il modulo Aurel, ma possono esse-

ELETTRONICA OPEN SOURCE

{59

Ricevitore telecomandi a 2 rel [Progetto Completo fai-da-te]


Lalimentazione della scheda affidata ad un

La lista parti (BOM) della scheda ricevente a

trasformatore di rete 230Vac in grado di tra-

due rel, per radiocomandi codificati, disponi-

sformare la tensione di ingresso in 24Vac che

bile con tutta la documentazione per la realizza-

verranno poi raddrizzati e stabilizzati tramite

zione fai da te del progetto.

diodi zener. Questo tipo di alimentazione pu

I componenti sono tutti facilmente reperibili.

essere facilmente modificato per ogni esigenza.


Se volete utilizzare un trasfomatore con un diverso passo potete usufruire dei vari fori appositamente realizzati sul pcb per aumentarne la
compatibilit.
Se si vuole alimentare la scheda a 12V o 24V
(ac o dc) basta semplicemente non montare
il trasformatore ed inserire delle resistenze al
suo posto, opportunamente dimensionate. Senza modificare il circuito stampato. Se invece si
necessita una maggiore regolazione e stabilit
controllore (non specificatamente richiesta per

LAYOUT E POSIZIONAMENTO COMPONENTI

la maggior parte delle applicazioni di radioco-

Tutte le indicazioni per la realizzazione dei cam-

mandi) si deve modificare lhardware inse-

pioni, la produzione oppure il semplice singolo

rendo un regolatore di tensione a 5V.

montaggio manuale della scheda sono disponi-

della tensione VCC di alimentazione del micro-

bili con la documentazione. I componenti sono

LISTA PARTI

sia tradizionali che smd ma di facile montaggio

ELETTRONICA OPEN SOURCE

{60

Ricevitore telecomandi a 2 rel [Progetto Completo fai-da-te]


manuale con un saldatore a punta fine.

routine per gestione di codifiche diverse. Poi la


routine di acquisizione telecomando, quella di
gestione eeprom per salvare i codici e poi fare il
confronto prima dellattivazione e per resettare
la memoria. Infine ci sono le routine di temporizzazione con gestione rel passo passo o impulsivo previa lettura del jumper relativo.
A titolo di esempio riporto il main_loop con la
prima parte del codice di gestione rel.
main_loop
call rumc ; Check RX
BC main_loop ; INVALID CODE
call testcode ; CONFRONTO CODE VALIDO
CON EEPROM
BC main_loop ; ERROR CODE

PROGRAMMA SOFTWARE PER LA


SCHEDA RICEVENTE
Il firmware disponibile open source e comprende, oltre al setup ed al main, varie routines.

bsf FLAG,imp1 ; Default impulsivo OFF passopasso ON


btfss JP1C ; JumperC on? RELE1
bcf FLAG,imp1 ; SI! impulsivo ON passopasso
OFF
bsf FLAG,imp2 ; Default impulsivo OFF passopasso ON
btfss JP1D ; JumperD on? RELE2
bcf FLAG,imp2 ; SI! impulsivo ON passopasso
OFF
;---ATTIVAZIONE RELE
btfss FLAG,imp1 ; Impulsivo RELE1
goto impulse ; SI!
btfss FLAG,imp2 ; Impulsivo RELE2
goto impulse ; SI!
goto passop ; NO! nessuno dei 2 rele E impulsivo!
..........

INSTALLAZIONE VELOCE
Una volta completato il progetto, potete seguire
questa semplice procedura per una rapida inTra le quali, la routine di codifica UM86409 (na-

stallazione.

tional) che facilmente sostituibile con altre

La scheda ricevente viene fornita con il Jumper

ELETTRONICA OPEN SOURCE

{61

Ricevitore telecomandi a 2 rel [Progetto Completo fai-da-te]


in posizione di PROGRAMMAZIONE (AB);

Come sempre, sono disponibile nei com-

Alimentare la scheda;

menti per ogni eventuale approfondimento.

Il LED si accende, siamo in PROGRAMMAZIONE;


Premere, nelle immediate vicinanze, il tasto di
un telecomando che si vuole programmare;

ALLEGATO

Verificare la corretta programmazione del telecomando, tramite lo spegnimento e la ri-accen-

Radiocomando2

sione del LED;


Togliere alimentazione alla scheda ricevente;
Togliere il Jumper dalla posizione PROGRAMMAZIONE (AB) ed inserirlo nella posizione
IMPULSIVO (AC) o eliminarlo, se si desidera
utilizzare il rel 1 in modalit PASSO/PASSO
oppure nella nella posizione IMPULSIVO (BD)
o eliminarlo, se si desidera utilizzare il rel 2 (se
presente) in modalit PASSO/PASSO;
Alimentare la scheda ricevente;

CERTIFICAZIONI
La scheda stata sottoposta alle prove tecniche di laboratorio relative alla marcatura CE.
Quindi prove di immunit ed emissione sia radiata che condotta. Eventuali piccole modifiche
non dovrebbero compromettere la stesura della
dichiarazione di conformit.
Il progetto ricevitore radiocomando a 2 rel
con il firmware open source per ricevere i radiocomandi con codifica um86409 e compatibili,
disponibile in allegato per il download. Potete
realizzarlo da soli (fai-da-te) scaricando tutti i
codici sorgenti (Schema elettrico, lista parti, layout, file gerber, codice sorgente sviluppato su
piattaforma Microchip).

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/ricevitore-telecomandi-a-2-rele-progetto-completo-fai-da-te

ELETTRONICA OPEN SOURCE

{62

63}

Lenti a cristalli liquidi:


mercato, misure e
tecniche di controllo
di Maurizio
26 Febbraio 2015

Il mercato del design delle lenti a cristalli liquidi in fase di crescita con alcune aziende, Optilux, Varioptic e Philips per citarne alcune, che offrono soluzioni avanzate e
personalizzate che permettono una miniaturizzazione di alcuni sistemi ottici. Dopo
una breve panoramica commerciale, continueremo il nostro percorso sulle lenti a cristalli liquidi analizzando nuove tecnologie di controllo. A differenza delle lenti di vetro
tradizionali, le lunghezze focali di alcune microlenti a cristalli liquidi possono essere
sintonizzate elettricamente (electrowetting) o meccanicamente tramite diversi meccanismi. Lapplicazione di un campo elettrico permette di ottenere effetti in termini di
lunghezza focale in funzione della configurazione e del tipo di anisotropia dielettrica.
Prenderemo in esame diverse soluzioni IC maggiormente impiegate per il controllo
elettrico delle lenti a cristalli liquidi. Concluderemo con lanalisi del MTF (Modulation
Transfer Function), un metodo standard per il set-up iniziale di un sistema ottico
per valutarne la risoluzione.

1. LENTI COMMERCIALI

a tecnologia delle lenti a cristalli liquidi


ha diversi vantaggi rispetto alla tecnologia delle lenti tradizionali. A differenza

delle lenti in dispositivi ottici che richiedono una

regolazione meccanica, una lente liquida non


contiene parti mobili. Di conseguenza, il consumo energetico una minima parte dellintero
sistema. Questa caratteristica particolarmente
importante nei dispositivi Mobile, dove la dura-

ELETTRONICA OPEN SOURCE

Lenti a cristalli liquidi: mercato, misure e tecniche di controllo


ta prolungata della batteria una caratteristica
molto apprezzata. La piccola dimensione della
lente liquida offre, inoltre, un importante vantaggio in termini di dimensioni e peso.
Il mercato della tecnologia a cristalli liquidi
in continua evoluzione a causa di una forte
concorrenza tra le varie tecnologie. Optilux (e

consumo energetico e alta resistenza agli urti.


Figura 1: La serie Caspian della Varioptic (Fonte: data
sheet serie Caspian)

non solo) offre soluzioni che aiutano a ridurre il


grande divario di prestazioni tra camera-pho-

2. TECNOLOGIA ELECTROWETTING

ne e fotocamere point & shoot. Optilux offre

La tecnologia a cristalli liquidi ci permette di imi-

attualmente lenti a cristalli liquidi ad alte prestazioni che combinano le capacit di auto-focus
e di stabilizzazione ottica dellimmagine. Tutti i
prodotti condividono le caratteristiche di bassa

tare la visione naturale attraverso una lente che


pu cambiare la sua potenza ottica senza modificarne la struttura fisica. La birifrangenza nei
cristalli liquidi pu, efficacemente, modificare
il suo indice di rifrazione per effetto della tensio-

potenza, robustezza e ingombro ridotto. Optilux

ne elettrica indotta.

818, per esempio, dotata di messa a fuoco

Utilizzano la tecnologia elettrowetting si pu

variabile progettato sia per autofocus e stabiliz-

eseguire una messa a fuoco utilizzando una

zatore ottico dimmagine. La lente ideale per

lente composta da due fluidi immiscibili di diver-

sensori dal formato 1/4 e 1/3, ma pu andare

si indici di rifrazione. Lelettrowetting stato

bene anche per grandi formati a seconda delle

studiato da ricercatori provenienti da diversi

esigenze.
La serie Caspian della Varioptic (Figura 1)
una famiglia di lenti di messa a fuoco automatica che combinano un obiettivo fisso, una len-

settori, come la fisica applicata, chimica fisica, elettrochimica e lingegneria elettrica.


Le tecniche maggiormente utilizzate sono costituite da una soluzione di acqua elettricamente
conduttiva e olio elettricamente non conduttivo

te liquida e un cavo flessibile in un supporto

(vedi Fig. 2); linterfaccia tra questi liquidi forma

standard. La lente liquida Arctic 316 unaltra

una diottria naturale a causa della differenza

soluzione per i sistemi che richiedono tempi di

dellindice di rifrazione dei due liquidi.

risposta rapidi e unampia gamma di messa a


fuoco, particolarmente adatto per
telecamere industriali in miniatura.
Arctic 39N0 della Varioptic, inoltre,
basato su una tecnologia innovativa
che permette la messa a fuoco senza parti in movimento; dispone di
20 diottrie di range dinamico, basso

Figura 2: Electrowetting

ELETTRONICA OPEN SOURCE

{64

Lenti a cristalli liquidi: mercato, misure e tecniche di controllo


Per controllare la forma della lente, viene appli-

do situato in una zona con due aperture che

cato un campo elettrico attraverso il rivestimen-

attraverso una pressione controllata, esercitata

to idrofobo; come risultato, la soluzione acquosa

attraverso dei motori servo o cristalli piezoelet-

comincia a bagnare le pareti laterali, alterando il

trici, viene modificata la tensione superficiale e,

raggio di curvatura tra i due fluidi e quindi la lun-

quindi, il raggio di curvatura. Esistono dei limiti

ghezza focale della lente. Aumentando il cam-

per i quali preferibile utilizzare la tecnica

po elettrico, la superficie della lente convessa

electrowetting; in particolare, problemi di na-

inizialmente pu essere resa completamente

tura trasmissiva in quanto la dipendenza dellin-

piana o concava. Come risultato, possibile im-

dice di rifrazione dalla lunghezza donda pu

plementare lenti che passano dal essere con-

causare dispersione della luce e quindi difficol-

vergenti a divergenti e viceversa (Figura 3). La

t nella correzioni delle aberrazioni. Inoltre, le

tecnica consente di modificare dinamicamente

aperture sono limitate da un massimo di alcuni

la rotazione di molecole in una cella a cristalli

mm a causa della forza di gravit che ostacola

liquidi per ottenere una variazione dellindice di

la raccolta della luce.

rifrazione. La rotazione differenziale delle molecole permette una messa a fuoco da infinito

4. DRIVER IC

a qualche cm. Nei sistemi fluidi miniaturizzati,

Il mercato offre diverse soluzioni IC per il con-

lelettrowetting rappresenta una delle miglio-

trollo delle lenti a cristalli liquidi (electrowetting),

ri tecniche per controllare lenergia superfi-

in particolare il driver HV892 della Microchip

ciale ed il pi efficiente di tutti i metodi di


modifica chimica di superficie.

(Figura 4 e 5) con controllo tramite uninterfaccia I2C, in grado di pilotare carichi capacitivi
fino a 200pF ed compatibile
con lenti a 40VRMS a 60VRMS.
Un convertitore boost charge
pump integrato fornisce lalta
tensione necessaria per lazionamento della lente. Non sono
necessari induttori o diodi esterni e due condensatori ceramici
sono gli unici componenti esterni

Figura 3: Esempio di andamento della tensione applicata


in funzione della lunghezza focale per una LC Lens.

3. CONTROLLO MECCANICO
Unaltra tecnica di controllo quella mecca-

necessari per un circuito di pilotaggio completo.


HV892 offerto in un package DFN 4x4mm 10Lead

nica dove le lenti a cristalli liquidi sono costituite


da un solo liquido che, a differenza della electrowetting, non vincolata nella scelta. Il liqui-

ELETTRONICA OPEN SOURCE

{65

Lenti a cristalli liquidi: mercato, misure e tecniche di controllo


ripristina tutti i registri e disattiva linterfaccia I2C per ridurre la corrente
al di sotto di 500nA (max). In modalit sleep, il circuito di reset di accensione rimane attivo. Se non viene rilevata alcuna attivit sullinterfaccia,
Figura 4: Circuito di controllo per LC Lens con driver
HV892 (Fonte: data sheet HV892)

il consumo di corrente inferiore a


3A.
Il MAX14515 opera con una tensione di alimentazione da + 2,7 V
a +5,5 V, ideale per le applicazioni
portatili che utilizzano fonti di batterie agli ioni di litio. Il MAX14515
specificato per temperature da -40
C a + 85 C in un package WLP (1
mm x 2 mm).

Figura 5: Diagramma a blocchi del HV892 (Fonte: data


sheet HV892)

Il MAX14515 utilizza un convertitore integrato


boost charge pump e H-bridge per fornire una
soluzione compatta con un minimo di componenti esterni per ottenere un piccolo ingombro
complessivo adatto a vincoli di spazio allinterno

Figura 6: MAX15415, tipica applicazione per LC lens

dei moduli di telecamera.

(Fonte: data sheet MAX15415)

Il MAX14515 (Figura 6) dispone di un DAC a 8


bit con una singola uscita differenziale ad alta
tensione controllata da uninterfaccia I2C. Le

5. MISURE DI SET-UP, MTF


Le misure che possono essere eseguire su di

uscite ad alta tensione sono in grado di erogare

una lente (in particolare LC Lens) possono es-

fino a 42VRMS (min) in un carico di lenti liquide

sere suddivise in due tipologie:

a 220pF @ 1.0kHz (min).

Il MAX14515 dispone, inoltre, di due moda-

propriet ottiche di una lente, quali lunghezza

lit di risparmio energetico (modalit di spe-

focale e distorsione;

gnimento e la modalit sleep) per ridurre al mi-

nimo il consumo di energia quando il dispositivo

pacit della lente di risolvere diversi livelli di det-

inattivo. La modalit di spegnimento pone il

taglio.

dispositivo in uno stato di bassa potenza che

In questultimo punto, la misura principale la

Test nodale, ovvero la misurazione delle

Test risoluzione, ovvero determinare la ca-

ELETTRONICA OPEN SOURCE

{66

Lenti a cristalli liquidi: mercato, misure e tecniche di controllo


Modulation Transfer Function (MTF) che de-

la lente di imaging, sensore della telecamera,

termina la quantit di contrasto dellimmagi-

schede di acquisizione dellimmagine e cavi vi-

ne in funzione della frequenza spaziale.

deo. La MTF risultante del sistema il pro-

Poich la domanda di maggiore qualit di siste-

dotto di tutte le curve MTF dei suoi compo-

mi ottici di risoluzione pi elevata diventata

nenti. Analizzando le curve MTF di ogni lente

prevalente, progettisti e scienziati hanno inizia-

imaging e sensore telecamera allinterno di un

to ad indagare lMTF come modo comune per

sistema, il progettista potr effettuare la selezio-

caratterizzazione un sistema ottico.

ne appropriata determinando la combinazione

Test MTF (Figura 7) offrono ai tecnici e inge-

migliore in termini di risoluzione.

gneri un metodo per misurare direttamente le


caratteristiche dellimmagine che sono legati a

6. CONCLUSIONI

prestazioni complessive del sistema in termini

Il prossimo passo sar implementare un proto-

di risoluzione e contrasto.

collo di design di una lente a cristalli liquidi e de-

Ci sono diversi metodi per la misurazione

finire un sistema di controllo e acquisizione dati

MTF: generazione di frequenza discreta o con-

per poter essere implementato come camera in

tinua, la scansione di immagini e lanalisi del

dispositivi Mobile. Concluderemo con la descri-

fronte donda. I recenti progressi nella mecca-

zione di alcuni aspetti hardware e software del-

nica di precisione e tecnologie elettro-ottiche

le microcamere commerciali che implementano

hanno prodotto molte varianti pratiche su questi

lenti a cristalli liquidi.

metodi che permettono la misurazione efficace


del sistema con elevata precisione.

BIBLIOGRAFIA
1) Optofluidics, Y. Fainman- L.P. Lee
McGrawHill
2) Fundamental of Liquid Crystal Devices, S. Wu Wiley
3) Smart Mini-Cameras, T. V. Galstian
CRC Press
Figura 7: Set-up per misura di MTF

Ogni componente di un sistema ottico ha una


funzione di trasferimento di modulazione associata (MTF) e, di conseguenza, contribuisce al
MTF complessivo del sistema. Ci comprende

Lautore e a disposizione nei commenti per eventuali approfondimenti sul tema dellArticolo.
Di seguito il link per accedere direttamente allarticolo sul Blog e partecipare alla discussione:
http://it.emcelettronica.com/lenti-a-cristalli-liquidi-mercato-misure-e-tecniche-di-controllo

ELETTRONICA OPEN SOURCE

{67

{68

A questo numero di EOS-Book hanno partecipato:

Unendo la passione per la progettazione elettronica e le news da mondo tecnologico, nel


Dicembre 2006 Emanuele da vita a LElettronica Open Source, un blog condiviso rivolto
alla fruibilit comune di risorse e progetti di elettronica e novit dal mondo dei semiconduttori e della tecnologia.
Chi accende una candela da te sillumina anche lui, ma non ti lascia al buio - Share for life!

Emanuele
Founder
& Tech Supervisor

Piero un appassionato studioso. Laureato in Ingegneria Elettronica e cultore dellOpen


Source, amante della tecnologia e con uno sconfinato desiderio di apprendere tutto ci che
non conosce. La sua tesi di laurea, pubblicata su queste pagine, ha segnato linizio della sua
collaborazione con questo blog.
Vola solo chi osa farlo!

Piero
Boccadoro
Technical Writer
& Moderator

Appassionato sin da piccolo per lelettronica, la matematica ed il fai da te. E programmatore


di computer, insegnante di informatica e di matematica. Appassionato di numeri, alla continua ricerca di grandi Numeri Primi. Ha scritto anche un libro sulla programmazione del PIC
16F84 con mikroBasic. E titolare dellazienda ElektroSoft, che si occupa di elettronica ed
informatica. Si cura a tempo pieno di formazione ed insegnamento.

Giovanni Di Maria
Technical Writer

Appassionato di meccanica ed elettronica fin da ragazzino, ha effettuato studi scientifici e si


occupa di computer gaming, modding di computer e automobili, prototipizzazione applicata
alle auto e ai computer. I suoi interessi spaziano in tutti i meandri della scienza, attualmente
collabora con la Serious Game Society in qualit di reviewer di Smart Games e, in proprio,
sperimenta continuamente le ultime scoperte inerenti al raffreddamento di componenti elettronici. E da sempre molto appassionato di Open Source, in quanto permette di avere un
Fabrizio Bianchini livello di sperimentazione e personalizzazione senza limiti.

Contributor

Laureato in bioingegneria ho lavorato come progettista sistemista elettronico per sistemi di


difesa aerea di terra e di volo. Ho operato per gli ultimi 20 anni come Direttore Tecnico dellarea di progetto in unAzienda del settore. Appassionato del mio lavoro proseguo come consulente su sistemi avionici e relativi banchi di collaudo a terra. Aperto a scambi culturali e a
contatti internazionali sono Esperantista dal 1968. Mi piace condividere esperienze tecniche.

Esperanto
Contributor

ELETTRONICA OPEN SOURCE

{69

Tecnico elettronico classe 76. Appassionato di elettronica, informatica, fotografia e arte culinaria. Lavoro nel settore elettronico dellautomotive mentre nel tempo libero mi piace realizzare scatti fotografici in still-life, studiare nuove tecnologie e progettare circuiti elettronici.

Ernesto Sorrentino
Contributor

Maurizio
Contributor

Maurizio Di Paolo Emilio, dottore di ricerca in Fisica e ingegnere delle telecomunicazioni, collabora con varie riviste tecniche e con lUniversit degli Studi dellAquila nel campo dei raggi
X. E autore di due libri editati dalla Springer (Data Acquisition System from fundamental
to applied design e Embedded system design for high speed data acquisition and control
system) e uno dalla LAP Lambert (Thermal effects in optical systems: compensation of the
thermal effects in core optics of the gravitational wave detector Virgo); oltre a numerose
pubblicazioni in materia di progettazione elettronica, Linux, PCB, sistemi di acquisizione
dati e sistemi Embedded.

Ho iniziato a muovere i primi passi nellelettronica gi in et adolescenziale con piccoli progetti. La scelta del percorso di studi stata naturale, ed ho conseguito la laurea in ingegneria
Elettronica. Le prime esperienze professionali da laureato mi hanno portato a conoscere il
mondo ferroviario. Attualmente mi occupo di progettazione di apparati elettronici in sicurezza
per il segnalamento ferroviario.

daniele.vln
Contributor

Smanettone reduce dalleuforia degli anni doro della prima informatica accessibile a tutti:
Sinclair, Commodore, Z80, 6502 e poi il revival coi primi microcontrollori di Nuova Elettronica. Oggi, grazie al ritorno in grande stile dellEmbedded Computing e alla magia di Internet,
ho di nuovo la voglia di sporcarmi col metallo, coi registri e con laritmetica binaria.

StefanoDS
Contributor

ELETTRONICA OPEN SOURCE

Potrebbero piacerti anche