Elettronica in 239 2019 PDF

Scarica in formato pdf o txt
Scarica in formato pdf o txt
Sei sulla pagina 1di 132

'

EDITORIALE

1 1' l '

' '
' '

Al momento la guerra commerciale scatenata


dall'amministrazione Trump nei confronti della Cina e di alcune
società cinesi come il colosso Huawei ha un solo vincitore:
l'architettura hardware open source RISC-V. Il timore di non poter
più accedere a licenze hardware (tipicamente ARM e x86) per
realizzare i propri processori, ha spinto le più importanti società
cinesi del settore ad imboccare l'unica strada possibile: quella
dell'open source hardware rappresentata dall'architettura RISC-V,
certificata come libera da vincoli di brevetto e concessa in licenza
in base a Creative Commons CC BY 4.0.
E così in pochi mesi si sono susseguiti importanti annunci:
Huawei ha presentato HarmonyOS, un nuovissimo sistema
operativo open-source, in grado di funzionare sia su hardware
ARM che RISC-V; Xiaomi sta testando un processare RISC-V
prodotto da Huam i; un importante
partner di Alibaba - il produttore
cinese di semiconduttori Pingtouge
- ha lanciato il processare a 16 core
XuanTie 91 O basato su architettura
RISC-V.
A tutto ciò bisogna aggiungere le
iniziative che numerosi player occidentali hanno in corso: dagli
importanti investimenti di, Qualcomm in SiFive, ai nuovi prodotti
di Western Digitai, agli strumenti di sviluppo professionale di IAR
System. Solo per citarne alcuni.
Anche I'European Processar lnitiative ha dovuto imboccare la
• strada dell'hardware open source.
Un'accelerazione che sta sempre di più mettendo all'angolo il
'
l l '

numero l dell'hardware per processori: la società inglese ARM


l

(acquistata da SoftBank nel 2016) e che già nel 2018 ha visto


un significativo calo degli introiti, nonostante le nuove pol itiche
commerciali introdotte.
La verità è che per i produttori di semiconduttori le royalties
dei chip x86 e ARM pesano troppo e rallentano i tempi di
Il elettronicain.it sviluppo; RISC-V mira a rompere il controllo proprietario
sulla progettazione dei processori liberando nuove risorse,
esattamente come l'open-source ha fatto col mondo software.
C'è sicuramente ancora molto da fare per completare questa
Fiera di Scandiano transizione, ma nessun'altra nuova architettura in passato ha
Futura Elettronica avuto le stesse possibilità di successo.
Maker Faire
Microchip
/ì _....--~
Mouser l
'
/
.•
J'
/
,-
;
.

RM Elettronica l
l .,.-'
:'
/
- /
"
. J-/;ut-v·
/
)~·-
L ""L/ '
'
'

. ,.r-·,.·· "
Arsenio Spadoni
~ [email protected]
In copertina:
Display otd style rivisti
in chiave ~noderna e
realizzati con pacchetti
d ; ~~stll!'~i.~~~~,o ~n ple"~="'iS""E~ass
~ ~~-· ....... j
l i .... %.

incise a lase~, illuminate


:• .
--d -
ol"ll. • .,..

r.n o.d; ... n te LE o·"'t fN",,


i' ; ç· liDi ,.. ·'o..,~- ~_..c.~l •
... \..:;E.)H,.;~y

' '
' '
' '
i:·:·::,,,., ... -......··W'·'·''·:.:.,.,
·_- ,., '.'.' '. :,,l : ;':.;;: . :,.., ,.-- ~ :, ,, i_: •• '
i'· . . . .:.
-. .: ·: '.' ,.,.:: : . .. :. . . . ,,.~ + ·,, :. '
-. ,;... ·_: ..... •••.::: ..:. ·'' : .;·;. •).:h ,..·, ·: :- ... '"''" ·l . ;;. : . ,.. ... . ·:. ::. ,;, l :; •
. . . . ., l··

.. ... .,.... ,.,


:. :: ,','. ::,·
:·,:... :.!·'

.: ..,...'.'. '.'.' f:'l'·

:....;,l'E
...:. • '.'1 ··:'''. " :."''.'

. . .. ...f.... 1,;

Audio
l Amplificatore
classe D single chip

::_"·' • ' ::1•.,, -,~, l'

'·· (;.··::t:
. :· ::. .. '.". :, ::..::.
....,.._, ..

55
l_ ·:, :;. ,','., ': "''i''''

,:; ..,. • •• ,; :: i:. i;

RUBRICHE
- . .,,
r ·i: ... · ·. ·...: ·"l

··......., -;:: -,,, ·,:,;.',';. ·':!:


... ":,...
- ··... ····::·::,:: .:::
,. :· . •:'

\. ::..... ' ·.· ,l.'.' ·:, ,',','.'


1;:: : .• ~· • : ·:: :;. ;;,
... ' ,:;, :: -'~ .. ....
,
':. ,.,,. :.•...

- ., : .. ·::";±!•
....,... ::: ,....: ''l
01 Editoriale
05 Q&A Questions & Answers
....,.,
·,•• •. ". :·;. ',',', ·.';;·;·:, ';',1,!

"".'''... ,,.... ·.. ;.


09 Embedded iOT
Digitai Transformation of Things
:' ·.'.,. ,;. : .. .
:.· .~ ..

ARTICOLI
13
••. :i ..,.. ,". ',',. '.'.:.".'."'.'.

.. ·. ", '·...'~ _'',.,", ';,


Componenti & Sistemi
. ,. . . .
.. ... .

,.,...,, .., '" ,, ..:


. .,.: ...,!:

17 Appuntamenti & Eventi


TTIC
122 Scienza & Tecnologia
23 Demotica per tutti
.... .,.,,,, ,.

126 Fonti Rinnovabili •

.. l;" ·;: ,::· :.:'' ,:i:


..':1, ...' ,,','. ;,','
: Realizziamo semplici applicazioni

....
:;l•;•::
,,,,,,... ::.· ..
,,., .:· .:
utilizzando le periferiche hardware di
comunicazione disponibili sulla
:· '-': ;', :; ;,: ·:: .. ,,.:..
CM3-Home.
. ,;: •:l'l; l:•:,

.. ' ,.,l
·:.: ': '.'.' ,',', .." :: • t;
.. :.,,,,:;,., ;:,.: ...

::·l ,-,,,... :: .•
· ...., .....f•il'

GADGET
.. :. -.'; ..','. ·:,=., ~.'.'
30 La fiamma
·- ...: :::: .,...,
che non brucia
,,,b;··;.

' . ; '. ',';,,'','.. .'l'

.. -.
.',', ·'.,
,.;,-
·:, ',;, :...
,,,;;,
.... ,.
Basato su Neopixel e uno speciale
Arduino ultra-sottile, simula la luce
• ••• '; • :; .::: : ,!!

prodotta dalla f1amma dei camini.


....., . ·j
"

&

Didattica
Demotica per tutti

'
2
...
l .....
' ' ., ,, .. l'·
·;i·:.. -, hl·, :i·:

·.. · ,, ,. .
' ,, l '.
,
• ' ,, ' ' ' l ' '
., Hl

,.. .
l ., !

'
'

CONTENUTI
Wireless Wireless
Telecontrollo MKR FOX 1200 SIGFOX
con GSM shield
Gadget
Slot-machine
professionale

101
Gadget
La fiamma
che non brucia

Didattica
Corso loT
•,
Home Project
Mercury Meteo
88 Stati on

-
113
GADGET
39 Slot-machine professionale
Realizziamo la popolare macchina da sala giochi in
versione casalinga, per divertirsi in compagnia, con
tanto di gettoniera e vincite in denaro, ma senza
trucco né inganno. Prima puntata.

HOME P JECT
AU· IO
88 Mercury Meteo Station
55 Amplificatore classe D single chip
Una semplice stazione meteo basata su Mercury
Finale di potenza stereo da l O+ l OW su 8 oh m System, che visualizza temperatura e umidità
basato su ll'integrato PAM861 O, idoneo a sistemi ambiente su una dashboard web.
che richiedono elevato rendimento e poco calore da
smaltire.
WIRELESS
GADGET 101 Telecontrollo con GSM shield
Emuliamo i telecontrolli della serie TDG utilizza ndo
63 Display Wi-Fi NlXI E Style il GSM Shield. Seconda e ultima puntata.
Rievochiamo le affascinanti valvole Nixie attraverso
dei display basat i su pacchetti di lastrine in plexiglass
incise a laser, illuminate mediante LED Neopixel.
Didattica
WIRELESS 113 Il mondo dell'Internet of Things
Sperimentiamo l'loT con l'impiego della rete a
73 MKRFOX1200 SIGFOX basso consumo LoRa, valida alternativa alle reti
La rete loT d'oltralpe che ha invaso il Mondo. WiFi e al GSM.

3

+++++
++ ++
++ ++
++ ++
++ ++
++ ++
+++++

della tua abitazione.


Set 3 lampade LED bianco naturale Set 3 la~pade LED bianco naturale Set l lampade LED candela
220 VAC -attacco E27 - 11 W 220 VAC- attacco E14- SW bianco naturale 220 VAC
attacco E14- SW
400
LUMEN ~IJA
ENERG ILIA
1000

400 (> l
LUME N LUMEN
<"t1f"f ' " " " p n . .- . ~,

ATT~CCO .
::E14;.:~
:"·:."·:--
'<
. "'
T. COLORE

T. COLORE l , COLORE 4000K


4000 K• • >
4000 K
~ - ~

cod.HT3705
cod. HT6011 cod.HT4505
€6,90 €4,90 • €4,90
Confezione contenente 3 lampade LED con emissione luminosa Confezione contenente 3lampade LED con emissione Confezione contenente 3lampade LED acandela con
bianco naturale, angolo di emissione >270°, temperatura luminosa bianco naturale, angolo di emissione >270°, emissione luminosa bianco naturale, angolo di emissione
colore 4000 K, attacco E27, basso consumo energetico temperatura colore 4000 K, attacco E14, basso consumo >270°, temperatura colore 4000 K, attacco E14, basso
eaccensione istantanea. Alimentazione: 175-250 VAC, energetico eaccensione istantanea. Alimentazione: 175-250 consumo energetico e accensione istantanea. Alimentazione:
dimensioni: 060x1 09 mm. VAC, dimensioni: 045x81 mm. 175-250 VAC, dimensioni: 045x81 mm.

Lampada tubolare con LED bianco Lampada LED con crepuscolare Lampada a LED solare con batteria interna,
a luce neutra- 230VAC- E27 attacco E27- 9.5W sensore crepuscolare e di movimento
2 SENSORI Lampada aLED 4W da esterno
ED •
- ... J ..,.

YW,
NERG • •• CREPUSCOLARI
800 con grado di protezi~ne IP44 Non
necessità di collegamenti alla
Il !a. a : Lampada abasso consumo
LUME N rete elettrica per funzionare in
quanto dotato di batteria interna
energetico. Accensione epannello solare per la ricarica.
istantanea, alimentazione: 230 Dispone di sensore crepuscolare e
Vac, luce naturale, dimensioni: sensore PIR di movimento. Portata
0100x185 mm, attacco E27. del sensore di movimento (PIR)
3-5 metri. Dimensioni 135x1 00x50
mm, peso 180 grammi.
cod. APT37N
cod. LAMPWSENSOR
€4,90 cod. SOL01
€9,90 € 14,90
lampada tubolare aLED con luce neutra con potenza di
9W, temperatura di colore 4000K, flusso luminoso 8001m.

Faro a LED da esterno (IP65) con sensore a microonde Faro a LED da esterno (IP65) Bianco neutro SOW- 4500 Lumen
e telecomando ·
Composto da 30 LED SMD ad alta luminosità con luce Faretto da esterno leggero eelegante, rifinito con
bianca naturale. Dispone di sensore di movimento vernice epossidica di colore nero. Lampada led a
amicroonde edi telecomando per le impostazioni luce bianco neutro ( 4000K) con una potenza totale
eil controllo adistanza. Può essere acceso/spento di 50 watt eun flusso luminoso di 4500 LUMEN ad
l • l l •

..
• t
l l '
,
llfllf
..
, t
• l
,,
"
manualmente tramite il tasto ON/OFF, può essere
impostato per accendersi automaticamente al
elevata efficienza energetica. Accensione istantanea
esenza sfarfallamento, resistente all'acqua ealle
passaggio di qualcuno. Flusso luminoso: 1400 lumen, alte temperature. Completo di staffa di montaggio
temperatura colore 4000 K, angolo di emissione 120°, regolabile.
alimentazione 230 VAC.

cod. LEDA7002NW-BM 4500 cod. FB50N


€ 29,90 LUME N € 34,00
QUESTIONS & ANSWERS

SG Broadcas Gli operatori di rete sono in grado di


migliorare la propria attività offrendo
Ho sentito parlare delle trasmissioni i propri servizi ai fornitori di contenuti
SG Broadcast. Di cosa si tratta esat- per fornire contenuti ad alta velocità
tamente? di trasmissione dati agli utenti mobili
contemporaneamente ad altre reti.
Gli operatori di rete mobile possono
R: Negli ultimi decenni, sono anche trarre vantaggjo dall'adozione
avvenute incredibili innovazioni con del 5G Broadcast scaricando i loro
la TV che passa dalla trasmissione carichi di rete. Questa evoluzione degli
analogica alla trasmissione digitale standard consente di migliorare le
consentendo a migliaia di canali topologie della rete cellulare odierna
unici di offrire contenuti dì qualità ai tramite l'implementazione di una rete
consumatori. Al giorno d'oggi, la TV di overlay High Tower ad alta potenza
è pronta per la prossima sftda ... ma con un raggio di ce!la di oltre 60 km, at
questa volta con in mente la connetti- fine di ottenere una copertura migliore
vità mobile garantita dal 5G. e più ampia specificamente per la
La trasmissione 5G è considerata consegna dei media. Ciò consente una
uno de! pilastri principali della nostra topologia di rete straordinariamente
era. Questa tecnologia può miglio- conveniente per le aree urbane e ruraiL
rare l'esperienza mobile e offrire ai l consumatorr a livello mobile di con-
consumatori un consumo multime- tenuti premium come eventi sportivi
diale illimitato. Questa idea esiste esigenze di emittenti, fornitori di con- in diretta trarranno vantaggio dalla
dall'introduzione di LTE ma è stata tenuti, operatori mobili e consumato- massima qualità video, bassa latenza
recentemente migliorata tramite il ri. Ma cosa significa esattamente 5G e disponibilità garantita di servizi di
grupp0 3GPP con le versionì 14 e 15 Broadcast per gli operatori di rete? streaming live.
come servizio Multicast Broadcast Per le emittenti televisive e i fornitori Ma il 5G Broadcast non è progettato
multimediale avanzato o "FeMBMS". dì contenuti, 5G Broadcast (EnTV) solo per la TV in diretta mobile, ma
Conosciuto più semplicemente con il crea un'opportunità per ampliare la anche per l'loT di r=nassa quando è ne-
nome di "EnTV'' o servizi di televisione loro portata in quanto consente loro cessario distribuire contenuti identici
avanzata, è progettato per rendere di indirizzare i dispositivi mobili diret- su un numero enorme di dispositivi
reale la fornitura di TV digitale sulle tamente, in chiaro, anche dove non è come gli elettrodomestici intelligenti.·
reti mobili esistenti, rispondendo alle necessaria una scheda SIM mobile. È inefficiente utilizzare unicast per
questo, ma ideale per la trasmissione.
Può rendere molto più efficienti gli
aggiornamenti del f1rmware OTA (over-
the-air) e la messaggistica di gruppo.
Inoltre, enti governativi e di servizio
pubblico sono aiJa ricerca di nuovi
modi di comunicare con i cittadini. La
trasmissione è stata adottata per for-
nire in modo più efficiente notifiche di
emergenza in tempo reale a _una vasta
gamma di dispositivi nell'ambito della
sicurezza pubblica.
Nel settore automobilistico, i veicoli di
prossima generaztone supporteranno
una maggiore sicurezza e una guida
più autonoma. Le connessioni da
dispositivo a dispositivo, come V2X
(Vehicle to Everything), consentiranno ·

5

ai veicoli di comunicare in modo effi- Tx Audio Output


ciente con la rete e l'ambiente circostan-
te. 5G Broadcast consente alla rete di
o Tx Audio lnput
R~ Audio tn put
...,.,..__ _ - - - ll
Rx Audio Output

fornire in modo più efficiente informa-


zioni in tempo reale, come software
Tx E·nab1e CMX7158 Reference Clock

e aggiornamenti sul traff1co, per non ___


...,_·Rx Ena:bte, ·D'uptex Audio Scrambler ~..3 to 3.6 V
dimenticare. il potenziale di intratteni- Buitt an f itmASic- Ted\nolo&Y
mento all'interno dei veicoli. Tx VOX Triggered
In breve, 5G Broadcast consentirà
4: E 'l a... - ~ -- - ,
Host
Rx VOX Triggered
alle emittenti e agli operatori mobili ~c
di ridefinire una nuova dimensione di
efficienza dal punto di vista dello spettro
e dei costi} esplorando una nuova era di
esperienza (mobile) di qualità. 3GPP ha
la visione di supporta re la distribuzione stanno per sostituire i tubi ad onda pro- Wave Tube Amplif1er, TWTA. Un segnale
di TV digitale nell'era del 5G e ha defmito gressiva (TWT), uno dei pochi dispositivi pilota a bassa potenza viene introdotto
una serie di requisiti 5G per le trasmis- a vuoto ancora utilizzati al giorno d'oggi ... nel dispositivo, il quale ne incrementa la
sioni multimediali e i servizi multicast. potenza. La banda passante può essere
Oggi, LTE l 5G Broadcast Release 14 ampia, ma esistono anche dispositivi ac-
e l 5 soddisfano la maggior parte dei R: Si, anche in questo caso il passaggio cordati (o a banda stretta). Le frequenze
requisiti 5G e si prevede che soddisfino dai tubo a vuoto ai dispositivi allo stato operative spaziano da 300M Hz a 50 GHz
tutti (come il pref1sso ciclico più elevato solido è inevitabile. Nel passato (ma an- ed il guadagno in potenza è dell'ordine di
(> 300) e il supporto di scenari di mobili- cora oggi) gli amplificatori a tubi a onda 40 decibel. Il dispositivo è costituito da
tà ad altissima velocità (250 km l h)) con progressiva o "Traveling Wave Tube" un lungo tubo a vuoto con un cannone
la sua continua evoluzione nella versione (TWT) vengono impiegati come stadi elettronico (un catodo incandescente che
l 6 e successive. Le prime sperimenta- d'uscita in molte delle soluzioni a larga emette elettroni) ad una estremità. Un
zioni di 5G Broadcast sono già in corso banda, dominando il mercato dell'elettro- solenoide avvolto intorno al tubo focaliz-
anche nel nostro Paese. nica ad alta potenza. l TWT possiedono za gli elettroni in un raggio, che è inviato
molte caratteristiche positive, comprese lungo l'asse del dispositivo, all'interno di
la capacità di gestire potenze di svariati un filo avvolto a spirale nel lume interno
kW, possibilità di funzionamento su del tubo, fmo a colpire un collettore
Uno scrambler audio una ottava ·o anche multipli di ottava d_i all'altra estremità. Un sistema di accop-
banda, alta efficienza in condizione di piamento direzionale (una guida d'onda
!full-duplex back off, buona stabilità in temperatura. o un elettromagnete} introduce il segnale
Gli svantaggi dei TWT sono la scarsa radio di bassa potenza da amplificare in
Volevo dotare una coppia di portatili VHF affidabilità sul lungo periodo, efficienza prossimità del catodo. La spirale interna,
di un sistema di camuffamento della ridotta, necessità di tensioni di lavoro in cui si induce una corrente, agisce ritar-
voce per evitare di essere intercettato. estremamente elevate ('V l kV o supe- dando la propagazione del segnale radio,
Come posso fare? riori). Più in dettaglio, il Travelling Wave che viaggia così alla stessa velocità del
Tube è un dispositivo elettronico usato raggio di elettroni. Il campo elettroma-
per generare onde radio o microonde gnetico prodotto dalla corrente indotta
R: Premesso che è vietato nelle di elevata potenza. Più propriamente si nella spirale interagisce con gli elettroni
trasmissioni radio amatoriali rendere in- tratta di un amplificatore, per cui il nome causandone una oscillazione avanti
comprensibile la modulazione audio, una completo dovrebbe essere Travelling ed indietro (modulazione di velocità), e
semplice soluzione alla tua esigenza è
rappresentata dal nuovissimo integrato
CMX7158 di CML (www.cmlmicro.com):
un audio scrambler con inversione di
frequenza full duplex e punti di inver-
sione programmabili. Un circuito ideale 1 2 3 4 567 8
per l'uso in sistemi audio multifunzione
e telefoni cellulari portatili, RTX palmari,
Bluetooth, PMR, LMR. Il dispositivo offre.
funzionalità aggiuntive per facilitarne
l'impiego tra cui la segnalazione DTMF e
Selcall, il rilevamento VOX su entrambi i
canali e un MIC AGC.

Addio ai TWT
Schema di TWT (Wikipedia).

In un articolo dedicato alle nuove tecno-


logie GaN, ho letto che questi dispositivi

6
QUESTIONS & ANSWERS

Web Forum
e supporto tecnico termine dei componenti a semicondut- attualmente aperto un ventaglio di nuove
tore, inizialmente, al posto dei TWT, sono opportunità.
Hai un problema con uno
dei circuiti pubblicati?
stati utilizzati dispositivi all'Arseniuro di
Vorresti effettuare una modifica?
Gallio (GaAs). Quando possibile, molti
progettisti hanno lavorato associando
Accedi al nostro Web Forum
più dispositivi GaAs per generare poten-
Ricarica veloce e di
dove i nostri tecnici
(ma anche gli altri lettori) ze d'uscita più elevate. Intere aziende potenza grazie al Power
ti aiuteranno a chiarire qualsiasi sono nate basandosi completamente
dubbio di natura tecnica. sulle tecnologie a combinazione. Ci sono Delivery
Collegati a: diversi tipi di tecnologie a combinazione,
www.elettronicain.i t/webforum
come quella multistadio (Spatial) e quel- Sento sempre più spesso parlare del
la strutturata (Corporate). Tutte queste sistema di carica Power Delivery (PD). Di
tecniche di combinazione soffrono delle cosa si tratta esattamente?
medesime problematiche, in quanto
questa oscillazione a sua volta induce le combinazioni introducono perdite, e
altra corrente nella spirale. Un secondo quindi sarebbero, in linea di principio, da R: La ricarica PD "Power Delivery"
accoppiatore posto vicino al collettore evitare. Il modo più semplice per au- o "PD Charger" è essenzialmente un
riceve il segnale amplificato. Un atte- mentare la potenza RF di un amplificato- protocollo di ricarica veloce che si awale
nuatore impedisce che parte del segnale re consiste nell'aumentare la tensione di della grande funzionalità e universalità
possa tornare indietro verso il catodo. lavoro, il che ha reso interessanti le tec- del plug USB-C. La ricarica con tecno-
Nei TWTA la potenza di picco è limitata nologie basate sui transistor al nitruro di logia di tipo PD ha aumentato il livello
dalla corrente sopportabile dal filo interno gallio (GaN). Se confrontiamo le diverse di potenza fino a l OOW, ed è conforme
a spirale. Per potenze eccessive il filo può tecnologie a semiconduttore, possiamo alle norme di sicurezza standard. Si
surriscaldarsi e deformarsi. Lo spessore vedere come con le tecnologie IC ad alta sono aperte così nuove possibilità di
del f1lo può essere incrementato per tensione generalmente la potenza au- ricarica per dispositivi più grandi, come
sopportare maggiore corrente, rendendo menti. La tecnologia al silicio-germanio laptop, ed elettrodomestici intelligenti,
però più difficoltosa la formazione della (SiGe) usa una tensione di funzionamen- in modo sicuro e veloce. L'erogazio-
spirale con il passo adatto per le frequen- to relativamente bassa, da 2 V a 3 V, ma ne di potenza non necessita di alcun
ze di lavoro. l TWTA a spirale hanno risulta molto interessante per i vantaggi aispositivo proprietario per funzionare,
potenze massime inferiori a 2,5 kW. Nei che offre nei processi di integrazione. quindi è possibile collegare un HDD di
TWTA a cavità accoppiata questo limite Per molti anni, il GaAs è stato ampia- backup, che normalmente necessita di
è superato sostituendo la spirale con una mente utilizzato degli amplificatori di un alimentatore esterno, direttamente al
serie di cavità disposte intorno all'asse potenza nel campo delle microonde, con proprio laptop con un solo cavo e avere
del raggio elettronico. Concettualmente tensioni operative da 5 V a 7 V. La tecno- un trasferimento dati molto più veloce.
si ottiene una guida d'onda a spirale, in logia a componenti LDMOS in silicio, che Oppure caricare velocemente il proprio
grado di generare ta modulazione per funzionano a 28 V, è usata da molti anni smartphone scaricando i dati, senza
velocità. La potenza massima ottenibile nelle telecomunicazioni, ma risulta utile alcuna interferenza. Oltre a ciò, il Power
è nell'ordine di 15 kW. Prima dell'evolu- principalmente sotto i 4 GHz, per cui non Delivery ottimizza la gestione dell'ali-
zione dei dispositivi a semiconduttore di è utilizzata in modo altrettanto diffuso mentazione su più periferiche, in modo
potenza, la tecnologia dei tubi ad onda nelle applicazioni a banda larga. L'arrivo che ogni dispositivo possa assorbire
progressiva TWTA è stata utilizzata nei della tecnologia GaN con funzionamento solo la potenza necessaria per ricaricar-
ponti radio analogici, per poter otte- da 28 V a 50 V su un substrato a basse si. Inoltre, una delle cose più interessanti
nere potenze elevate nel campo delle perdite e ad alta conduttività termi- del Power Delivery è che la direzione di
microonde. Data l'affidabilità a lungo ca, come il carburo di silicio (Si C), ha potenza non è più f1ssa.

7
GS: •

TM

Disponibili
ancbe moduli
con,funzione di:

MADE l N
ITALY
· ---~ --~~------~~~~-------~----

Rajant Corporation, fornito- l l


l'installazione di E51 è sempli-
re esclusivo di reti wireless
Kinetic Mesh, ha lanciato il suo
o l 1re ess ce e veloce.
Come tutti i nodi wireless
più recente nodo BreadCrumb, della Rajant, anche I'ES1 è
ES 1, ideato per integrarsi
nell'ecosistema dei suoi nodi . . . . er o gestito dal software proprie-
tario lnstaMesh per reti mesh
Rajant per formare o espan- peer-to-peer, che consente la
dere la copertura di una rete ridondanza e la resilienza in-
Kinetic Mesh resiliente e adat- tegrate della rete. ES1 è parte
tabile autonomamente. di una sene di prodotti per l'loT
L'ES 1 è ideale per applicazioni alternativi ad esempio all'uti-
IloT e trasporto leggero perché lizzo delle reti cellulari LTE, ca-
è compatto, leggero e econo- paci di coprire blackspot di rete
mico. ES 1 fornisce interfacce wireless o sviluppare risorse
per access point Ethernet e greenfield a un costo netta-
WiFi allo scopo di rendere pos- mente inferiore ne e fornendo
sibili applicazioni dati, voce e comunicazioni mobili e fisse ad
video. alta capacità di traffico, che si
Contiene due ricetrasmetti- integrano con l'hardware abili-
tori e fino a quattro porte per tato WiFi COTS e rappresenta-
antenne esterne e offre diverse opzioni di montaggio. L'ES 1 è no una valida soluzione di comunicazione idonea soddisfare i
incapsulato in un contenitore con grado di protezione IP67, ide- requisiti della lndustry 4.0 e applicazioni lloT in porti, aeroporti,
ale per il funzionamento in ambienti esterni che richiedono una oil & gas, impianti a energ1a solare, eolica e nelle smart city.
soluzione molto duratura. Sia che si stia costruendo una nuova
rete o che si stia espandendo su una esistente, l'inclusione e rajantcomles 1 •

DOWNHOLE

Wellhead Temp 130 "C

Wellhead Pteuure 16 bar

Totale Flow Rate 50 Kg/s

Oli F1ow Rate 0.0

GIS Flow Rate 0.0

Water Aow Rate 0.0

Fluìd Oenslty 0.0

Fluid Vtbc'ation 0.0

0
• •

9
> Huawei dà l'assalto all'l nte lligenza Artificiale
Huawei, il colosso cinese della telefonia mobile e delle reti gono 512 TeraFLOP per le opeazioni di integer precision cal-
radiomobili, lancia il processare per l'intelligenza artificiale culations (l NTB). Il lancio del nuovo processare ha molteplici
llpiu' potente al mondo': che ha battezzato Ascend 91 OAi. A effetti, il primo dei quali è, alla luce delle tensioni commerciali
contorno e per facilitare lo sviluppo di applicazioni con esso, tra USA e Cina, limitare la dipendenza dalla tecnologia ame-
Huawei ha presentato anche un framework di elaborazio- ricana e, contemporaneamente, rafforzare l'ambizione della
ne di intelligenza artificiale per tutti gli scenari; il framework Cina di avere produttori di chip in grado di sfidare i colossi USA
si chiama MindSpore. Tra le caratteristiche del processare come Qualcomm e Nvidia. Avere processori propri significa
Asce nd 91 O Ai, un assorbimento di potenza di l/appena" 31 O poter continuare a produrre ogni genere di apparato anche in
watt, contro i 350 previsti in sede di progetto dagli ingegneri caso di sanzioni come quelle cui abbiamo assistito nei mesi
Huawei, ed elaborazione per le operazioni di half-precision passati, con le quali è stato imposto ai principali fornitori di
floating point (FP16) alla velocità di 256 TeraFLOP che diven- chip (molti dei quali americani) di non rifornire più Huawei a
'l

VMware e Nvidia creano il cloud ibrido su AWS


per machine learning
VMWare accelera sull'intelligenza arti- risorse senza richiedere un sistema di intelligenza artificiale e che stanno
ficiale attraverso un'alleanza con Nvidia ·operativo host, ma lo fanno su un uni- implementando applicazioni di machine
per offrire servizi legati alle GPU (graphics co sistema operativo) VMware vSphe- learning quali il riconoscimento di imma-
processing unit, unità di elaborazione re verso il cloud, dove potranno essere gini e voce, la modellazione finanziaria
grafica) con l'obiettivo di alimentare ap- modernizzati per sfruttare le applicazioni avanzata e l'elaborazione det linguaggio
plicazioni nei segmenti di intelligenza di elaborazione ad alte prestazioni, ma- naturale utilizzando reti neurafi che si af-
artificiale, machine learning e flussi di la- chine learning, analisi dei dati ed elabo- fidano alle Gpu Nvidia per un training più
voro di analisi dei dati. l servizi, disponibili razione video. Vmware, controllata da rapido e inferenze in tempo reate.
sulla piattaforma VMWare cloud su AWS Dell Technologies, ha da poco accorpato Nel concreto, gli sviluppatori potranno
(Amazon Web Service) consentiranno ai Bitfusion, una startup specializzata nella spostare con un clic i carichi di lavoro
clienti di «migrare» applicazioni e con- virtualizzazione di dispositivi con accele- basati su Nvidia dai datacenter al cloud
tainer {i container sono piccole macchine razione hardware. La cooperazione con di VMWare, sfruttare la piattaforma
virtuali che girano su engine come Do- la Nvidia dovrebbe accrescere l'offerta Amazon AWS per aumentare o ridurre le
cker e consentono di isolare le singole alle aziende che investono in tecnologie risorse computazionali in base alle esi-
genze dei data scientist, accelerare l'ela-
borazione delle applicazioni, offrendo più
flessibilità nell'eseguire carichi di lavoro
accelerati dalle GPU come l'Al, il machine
learning e l'analisi dei dati in ambienti di
virtualizzazione per migliorare la sicurez-
za, l'utilizzo e la gestibilità.
VMWare ha inoltre lanciato la sua piat-
taforma di cloud ibrido che consente
ai clienti di lavorare coerentemente su
ambienti pubblici e privati e l'imminente
.., disponibilità della soluzione OpenStack,
..... .., VMware lntegrated OpenStack (VIO) 6.0
WAVEFRONT COST lNSIGHT
REOSHlFT 53 oltre che l'anteprima di Pulse JoT Center.

HCE RDS www.vmware.com

....

10

causa det sospetti sull'utiltzzo fraudolento della rete 5G,


nella quale Huawei si è ormai affermata come leader. Il
nuovo processare Ascend 91 OAi e la piattaforma Min-
dSpore, che è un framework proprietario per supportare
lo sviluppo di applicazioni Al, sono i pri mi due elementi di
un ecosistema annunciato da Huawei e dedicato all'Al. Tra
l'altro dal prossimo anno MindSpore verrà reso dtsponi-
bile in formato open source, per favonre la formaztone di
una community di sviluppaton. Sul ptano tecnologtco è un
aricchtmento dell'offerta di soluztont a disposizione det
progettisti, sperando che lo sviluppo cinese dell'Al non
diventi nuovo motivo di scontro tra USA e Cina.

www.huawei.com/en

11
Il tuo teleco mand o TV è rotto o non funziona più bene?
'
E arriva to il mom ento di sostit uirlo con i teleco mand i
universali a infrarossi comp atibili con le TV delle maggiori
marche prodo tte dal 2000 ad oggi. Dispongono di tutte le
funzioni del teleco mand o originale. Subito utilizzabili! - ·
;:;::::,:
~r=-; .._
~ ____
PRONTI ALL'USO

u
~ "'.-..
"-
·-c
z -:c
o
m a.

Cod. TVIR·SAM SUNG Cod. TVIR·SO NY Cod. TVIR·PH ILIPS Cod. TVIR·LG Cod. TVIR·PAN ASONIC

DA PROGRAMMARE Telecomando universale, programma bile da PC, per controll are qualunq ue
dispositivo di qualsiasi marca e modello . Include tutte le funzion i
dell'originale, configurazione facile e veloce. Mai obsolet o grazie ad
aggiorn amenti gratuiti. Oltre 260.000 modelli in continu o aggiornamento,
può comandare fino a due dispositivi audio/v ideo: TV, TDT,
S~T, DVD, AY, proietto ri, soundbar, VCR, media center
e imftian .. m.
dette igUori marche. Richiede il downlo ad
su PC-Win di softwar e gratuito per la selezione
e la p àet telecomando.

DISPONIBILE ANCHE
cod. JVFREEDOM1

Telecamera per guida autonoma con lA


Meglio dell'occhio umano: la nuova tele- getti nelle vicinanze. In particolar modo,
camera Bosch dotata di lA per i sistemi devono saper riconoscere all'istante
di assistenza e guida autonoma punta a se un determinato oggetto può influi-
diventare leader di mercato nel campo re sulla strategia di guida, e definire in
della tecnologia per telecamere. modo altrettanto veloce, come agire.
La tecnologia sviluppata per la guida Devono frenare, sterzare bruscamente
autonoma sta gradualmente fornendo o procedere normalmente? A differenza
sempre più assistenza ai conducenti, dell'occhio umano, la nuova telecamera
con l'obiettivo di fare in modo che in fu- Bosch MPC3 è stata ottimizzata per ge-
turo le auto siano in grado di prendere da, i sistemi di frenata di emergenza stire tali situazioni e funziona alla perfe-
totalmente il controllo della guida. automatici e la guida autonoma devono zione anche dopo ore di guida.
Le automobili con l'assistenza alla gui- essere in grado di percepire tutti gli og- www.bosch.it

l primi dispositivi di memoria NOR Mouser Electron ics e Grant lmahara


Flash con MAC address embedded lanciano la serie Engineering Big ldeasll
li

Microchip annuncia l'introdu- lerare il time-to-market per Mouser Electronics e l'inge- pi possano passare dall'idea
zione della famiglia SST26VF volumi di produzione di piccole gnere Grant lmahara unisco- iniziale al prodotto finale in
Serial Quad 1/0 (SQI) 3V Flash, e medie dimensioni. Le opzioni no le forze per il quinto anno assenza di enormi risorse
i primi dispositivi NOR Flash MAC address sono disponibili consecutivo in quest'ultima aziendali e infrastrutture tec-
sul mercato in grado di offri- con Flash di densità da 16 me- edizione della serie Empo- nologiche. La serie Enginee-
re opzioni MAC address em- gabit (Mb), 32Mb e 64Mb. wering lnnovation Together: ring Big ldeas è supportata da
bedded. Pre programmati con L'SST26VF aiuta ad eliminare Engineering Big ldeas. Que- alcuni fornitori di Mouser: Ana-
gli indirizzi EUI 48 e EUI 64, i la necessità per le aziende di sta serie, articolata in quattro log Oevices, lntel, Microchip
dispositivi non hanno mini- auto-approvvigionarsi e gesti- parti, esplorerà il processo di Technology e Molex. Il primo
mi di ordine, costituendo così re questi identificatori univoci trasformazione di un'idea in video della serie è dedicato alla
una conveniente soluzione di da IEEE-RA. un prodotto ed esaminerà il Nikola Motor Company.
archiviazione plug-and-play www.microchip.com percorso verso la commer- www.mouser.com
per applicazioni connesse che cializzazione: dalla scoperta,
utilizzano Ethernet, Blueto- alla progettazione e infine allo
oth, Wi-Fi, IEEE 802.15.4 e sviluppo. lmahara e Mouser
FireWire. esploreranno le fermate, le
La famiglia SST26VF di fles- partenze, le insidie e l'eccita-
sibili chip MAC address aiuta i zione di dare vita a un'idea.
progettisti a risparmiare tem- Esamineranno più da vicino
po e ridurre i costi e ad acce- come individui e piccoli grup-


Digi-Key annuncia una partnership esclusiva con Hel ix Semiconductors
Digi-Key Electronics annuncia vata densità di potenza ed ef- applicazioni di conversione di alla propria tecnologia MuxCa-
di aver ampliato il proprio por- ficienza in un design compatto, potenza. Helix Semiconductors pacitor, che consente soluzioni
tafoglio prodotti firmando una eliminando i trasformatori nelle detiene oltre 40 brevetti relativi più compatte ed efficienti nella
partnership di distribuzione conversione di potenza.
globale esclusiva con Helix Se- Il produttore offre attualmente,
miconductors. Questa nuova tramite Digi-Key, sei diversi tipi
partnership aggiunge ulteriori di schede di sviluppo e kit e 15
referenze agli oltre 8, 7 milioni regolatori. In particolare, Digi-
di prodotti disponibili da oltre Key distribuirà la famiglia MxC
800 produttori tramite Digi- 200 di Helix Semiconductors di
Key. La tecnologia di gestione circuiti integrati di alimentazio-
dell'alimentazione di Helix Se- ne DC-DC da 15 W.
miconductors consente un'ele- www.digikev.com

13

W7ED, un eccellente sostituto dell'interruttore meccanico


l sensori tattili capacitivi van- gli interruttori meccanici sono applicazioni in cui sono attual-
tano molti e notevoli benefici in molto semplici da progettare mente utilizzati gli interrutto-
termini di longevità e facilità di ed assemblare. Il nuovo sen- ri meccanici, il W7ED si fissa
utilizzo ma solitamente richie- sore tattile W7ED di Omron all'elettrodo tattile semplice-
dono particolare attenzione combina la semplicità dell'in- mente con una vite.
in fase di progettazione e una terruttore meccanico con le Il sensore Omron W7ED può
corretta configurazione per as- prestazioni più performanti e la essere utilizzato a partire da
sicurarne un'affidabile perfor- flessibilità tipiche del controllo una tensione di 5-15V DC.
mance applicativa. Per contro, touch. Adatto a quasi tutte le http:#components.omron.eu/

Rohde & Schwarz estende la gamma di Toshiba lancia 1/IC pre-driver di controllo


frequenza del suo generatore SMA 1008 senza senso re per motori BLDC
Il generatore di segnali RF generatore di segnale a micro- Toshiba Electronics Europe non richiede alcuno sviluppo di
e microonde analogico R&S onde analogico supporta tutti i GmbH ha annunciato il lancio software, essendo controllato
SMA 1008 è in grado di genera- campi di applicazione rilevanti di un IC pre-driver di control- da un circuito logico cablato.
re segnali a microonde fino a 67 nei settori aerospaziale e del- lo senza sensori per motori in Per garantire un funziona-
GHz con prestazioni RF leader la difesa, delle comunicazioni continua senza spazzole utiliz- mento sicuro, sono inoltre
del settore. Con la possibilità, wireless e dei semiconduttori. zati in applicazioni industriali e impiegate funzioni quali il rile-
in modalità overrange, di forni- L'R&S SMA 1008 è un investi- automobilistiche. Il nuovo pre- vamento della sovratensione e
re segnali fino a 72 GHz. L'R&S mento a prova di futuro per tut- driver TB9062FNG è in grado della sottotensione su VBAT,
SMA 1008 genera segnali con il te le applicazioni a microonde e di controllare i motori BLDC la protezione dalle sovracor-
minimo rumore di fase a banda uno strumento ideale per la ca- utilizzando solo un sempli- renti e i circuiti di protezione
laterale singola e, allo stesso ratterizzazione
. di componenti, ce ingresso a modulazione di termica.
tempo, con la massima potenza dispositivi e sistemi a microon- ampiezza di impulso (PWM), L'intervallo di temperature di
di uscita con armoniche estre- de. Lo strumento a 40 GHz co- senza richiedere microcontrol- funzionamento è compreso fra
mamente basse. Con le nuo- pre tutte le principali bande ra- lori ad alte prestazioni (MCU) -40 o Ce 125 o Ce il dispositivo
ve opzioni di frequenza, I'R&S dar e con i 67 GHz gli ingegneri e software. Il TB9062FNG è è alloggiato in un minuscolo
SMA 1008 è in grado di coprire dispongono di una sorgente di dotato di una funzione di ge- package SSOP24 (da 7,8mm x
intervalli di frequenza fino a 31,8 segnale che copre l'emergente nerazione automatica del duty 7,6 mm).
GHz, 40 GHz, 50 GHz e 67 GHz. Il banda Q/V utilizzata per colle- cycle che regola il duty cycle https://toshiba.semicon-
gamenti satellitari ad elevato all'uscita del blocco PWM in storage.com/
throughput. Con l'introduzione relazione alla tensione della
dello standard di rete mobile batteria (VBAT) in fase di avvio,
5G, le prime distribuzioni com- e una funzione di variazione
merciali useranno frequenze graduale della velocità che im-
fino a 39 GHz o anche superiori, pedisce gli stalli sopprimendo
mentre l'uso di frequenze oltre i le alterazioni improvvise del
40 GHz è ancora sotto test. duty cycle all'uscita del blocco
www.rohde-schwarz.com PWM. Il nuovo IC pre-driver

Micro RX651 in package ultra small per applicazioni loT


Renesas ha annunciato i nuovi consente di ridurre del 59% lo elevate doti di sicurezza a livello
Renesas RX651 32.sit MCUs with up to
2MB Flashi640KB SRAM in 64-Pin Packages microcontrollori RX651 a 32 spazio su scheda rispetto al di comunicazione e di elabora-
for Space..Constrained loT Edge DeVK:es bit in package ultra small 64 package a 100 pin LGA e grazie zione endpoint
.
quali i sensori
pin 8GA e in package QFP a 64 alla disponibilità di un package compatti ed i moduli di comuni-
pin. La nuova linea di prodotti LQFP a64 pin (10 mm x 10 mm) cazione nel campo industriale,
consente di espandere il popo- che consente di ridurre del 49% nel campo del controllo delle
lare gruppo di microcontrollori lo spazio su scheda rispetto al reti, nel campo dell'automazio-
RX651 MCU Group grazie alla package a 100 pin QFP. l nuovi ne degli edifici e nel campo dello
disponibilità di un package 8GA microcontrollori sono indirizzati smart metering nelle reti loT.
a 64 pin (4,5 mm x 4,5 mm) che alle applicazioni che richiedono www.renesas.com

14
...

Da Xilinx, Alveo U50, la prima scheda VIA Technologies annuncia iJ dispositivo


per qualsiasi clou d di bordo Mobile360 M820
Xilinx ha ampliato il proprio VIA Technologies annuncia VIA per le operazioni di trasporto e
portafoglio di schede di acce- Mobile360 M820, un sistema consegna, trasporto pubblico,
lerazione Alveo con il lancio del di bordo senza ventole, ultra- applicazioni industriali pesan-
modello Alveo USO. La sche- compatto, progettato per ag- ti nell'edilizia e nell'industria
da USO è il primo accelerato- giornare le flotte commerciali mineraria e veicoli di conse-
re adattabile a basso profilo esistenti con avanzati sistemi gna autonomi. VIA Mobile360
del settore con supporto allo di assistenza alla guida e di M820 è progettato per gestire
standard PCie Gen 4, ed è pro- sicurezza. In grado di suppor- i rigori delle operazioni a lungo
gettata per offrire prestazioni tare fino a nove telecamere termine sul veicolo ed è carat-
ultra-potenziate in un'ampia da Alveo USO offre migliora- di categoria automotive, VIA terizzato da un design robusto,
gamma di condizioni critiche menti pari a 10-20 volte in ter- Mobile360 M820 alimenta privo di ventola e conforme
dei carichi di lavoro nel campo mini di velocità di trasmissione una suite software completa agli standard globali di vibra-
dell'elaborazione, della connet- dati, di latenza e di consumi. In che include Advanced Driver zioni e urti.
tività di rete e dello storage, il presenza di carichi di lavoro ac- Assistance (ADAS), Surround www.viatech.com/
tutto su un'unica piattaforma celerati di rete e dello storage, View (SVS), Monitoraggio dri-
riconfigurabile. la scheda USO consente agli ver (DMS), Parking Assistance
Alveo USO offre ai clienti una sviluppatori di identificare e di (PAS) e Dynamic Moving Object
piattaforma programmabile di eliminare i colli di bottiglia della Detection (DMOD). Le opzioni di
accelerazione a basso profilo e latenza spostando l'elaborazio- personalizzazione del software
a basso consumo, progettata ne in prossimità dei dati. includono soluzioni specifiche
per architetture distribuite e Basata sull'architettura Xilinx
per l'accelerazione specifica di UltraScale+, Alveo USO è la
un dominio in qualsiasi appli- prima scheda all'interno del •
cazione di tipo server, locale, portafoglio prodotti Alveo ad
su cloud e a bordo rete. Per far
fronte alle sfide emergenti sui
essere caratterizzata da un fat-
tore di forma a mezza altezza e
l driver LED compatti di
carichi di lavoro dinamici come i
micro-servizi su cloud, la sche-
a mezza lunghezza.
www.xilinx.com
Maxim.garantiscono alta
efficienza e basse EMI
l progettisti di applicazioni di e dimensioni. Questi circuiti
B083070GWL, nuovo illuminazione ad alte presta- integrati gestiscono fino a
zioni per autoveicoli hanno otto HBLED direttamente
convertitore buck-boost ora un metodo più semplice dalla batteria del veicolo e
ed efficiente per pilotare i LED integrano molti componenti
ROHM ha comunicato la di- ad alta luminosità (HBLED) esterni per risparmiare sullo
sponibilità del convertitore con i driver MAX2S61 OA e spazio e sul costo della di-
DC/DC buck-boost con MO- MAX2S61 08 di Maxim lnte- stinta base (BOM), rendendoli
SFET integrato BD83070GWL. grated. l driver LED/conver- così delle eccellenti soluzioni
La sua impareggiabile effi- titori DC-DC sincroni buck, per i sistemi di illuminazione
cienza si abbina al consumo buck-boost offrono una solu- per autoveicoli e applicazioni
di corrente migliore della ca- zione completa con prestazio- di illuminazione industriale e
tegoria, per cui risulta l'ideale ni EMI leader del settore, sen- commerciale.
per dispositivi loT, wearable e della batteria. za compromettere efficienza www.maximintegratedcom
portatili. Una tendenza a cui ROHM ha
Negli ultimi anni, la prolifera- risposto con lo sviluppo di un
zione di dispositivi elettronici circuito integrato di potenza
alimentati a batteria ha au- che soddisfa le richieste del
mentato la richiesta di campo- mercato grazie ad un sistema
nenti più compatti, in grado di di produzione ad integrazione
fornire flessibilità di design e lo verticale che si avvale del pro-
spazio necessari per integrare prio know-how in materia di
nuove funzioni, riducendo con- design analogico e di processi
temporaneamente al minimo il di alimentazione specialistici
consumo di energia per esten- interni.
dere al massimo la vita utile https://rohm.com.eu

15

MAKER FAIRE
ROME
THE EUROPEA RO
EDITI N
Dal 18 al 20 ottobre 2019 torna Maker OPEA
Faire Rome - The European Edition, il
più importante evento italiano dedicato
all'innovazione. A Maker Faire Rome si
danno appuntamento gli appassionati di
tecnologia, gli artigiani digitali, le scuole,
le università, gli educatori, i centri di ricer-
ca, gli artisti, gli studenti, le imprese e un
pubblico di curiosi di ogni età pronti a fare FR19
un salto nel futuro!


'

.. •

~


,
.... , ..........
.. .......... . ...
• •

-·· y
. .....' ..."l'
.. •

~

... ............. ...

.... .
f,..
'
~

PROGRAMMA
Venerdì 18 ottobre 2019 - mattina:
ore 9.00/13.00 - EDUCATIONAL DAY In- tecnologie per l'educazione, struttura- logare il mondo della ricerca e dell'ac-
gresso in fiera gratuito riservato esclusi- to in talk e spazi espositivi. cademia con il mondo delle imprese
r
vamente alle scuole che avranno preven- Nel mondo della scuola, delle aziende e e dell'industria. L'evento di lancio del
tivamente effettuato la prenotazione. della ricerca le nuove tecnologie come nuovo Istituto sarà ospit,çtto all'interno
robotica, realtà aumentata e Al stanno di MFR 2019 in un'apposita area espo-

APERTURA AL PUBBLICO offrendo nuove possibilità per miglio- sitiva con set up dimostrativi e proget-
Venerdì 18 ottobre pomeriggio: rare l'educazione e la formazione. ti di eccellenza provenienti da tutto il
ore 14.00/19.00 Spark - Light on EdTech vuole raccon- mondo. Non mancheranno conferenze
Sabato 19 ottobre: ore 10.00/19.00 tare le novità del settore, condividere di disseminazione scientifica di alto li-
Domenica 20 ottobre: ore 10.00/19.00 nuove idee e offrire momenti di condi- vello ed eventi di matchmaking.
Ma come sarà l'edizione 2019? Ecco una visione culturale. L'obiettivo è quello di
piccola anteprima. creare un network strategico a livello ECONOMIA CIRCOLARE
Robotica e intelligenza artificiale, econo- europeo che permetta uno scambio La grande questione dell'economia
mia circolare, loT - Internet delle cose, diretto di best practice fra formatori, circolare e, in particolare, la bioeco-
manifattura digitale, foodtech, agritech, ricercatori, aziende, studenti e, più in nomy, il greenbuilding e il greentech
urbantech, mobilità smart, tecnologie per generale, tra le figure chiave delle tec- sono temi quanto mai attuali che MFR
lo sport e la salute, edilizia sostenibile, re- nologie applicate all'educazione. ha trattato, con successo, proponendo
altà virtuale e aumentata, spazio, artech dimostrazioni pratiche e ospitando di-
ed edtech; saranno questi alcuni dei temi ROBOTICA E INTELLIGENZA ARTIFICIALE battiti dei massimi esperti in materia.
protagonisti dell'edizione 2019. Nelle ultime due edizioni gli organiz-
zatori di Maker Faire Rome, confortati AEROSPAZIO
MAKER ART da un crescente interesse di pubblico, Anche quest'anno, poi, Maker Fai-
Un progetto che vuole indagare la rela- hanno puntato molto sulla robotica e re Rome ospiterà un'ampia sezione
zione tra arte contemporanea e nuove sull'intelligenza artificiale. Basti pen- orientata al settore spaziale, con lo
tecnologie, attraverso la creazione di sare che, su questi temi, si è passati da scopo di concentrare le discipline, le
percorsi sinergici e integrati tra maker un'area espositiva di 400mq nel 2017 attività e le realizzazioni attinenti o da
e artisti internazionali selezionati. L'o- agli oltre 1000 dell'anno scorso, con un essa derivanti. Il tema sarà l'esplora-
biettivo è la realizzazione di una vera e forte incremento del numero di proto- zione umana di Marte e, in particolare,
propria mostra di installazioni interat- tipi e conferenze dedicate. La qualità il ruolo che i makers avranno nei primi
tive all'interno della manifestazione, in degli espositori e dei relatori ha fatto insediamenti permanenti sul Pianeta
grado di coinvolgere il pubblico presente la differenza. E a conferma del forte Rosso. L'obiettivo di questa area, cura-
e di rappresentare i tanti e diversi modi interesse verso questi temi, per l'edi- ta dalla British lnterplanetary Society,
di interpretare la cultura dell'innovazio- zione 2019 si preannuncia un decisivo è quello di raccogliere esperienze, in-
ne tecnologica. balzo in avanti: è stata, infatti, avviata venzioni, innovazioni e conoscenze che
una stretta collaborazione con l'Istitu- possano avere un'applicazione pratica
SPARK-LIGHT ON EDTECH (a cura di DISclenza) to di Robotica e Macchine Intelligenti in questo nuovo contesto.
Una sezione dedicata al mondo delle (1-RIM), che avrà l'obiettivo di far dia- hup::,:tt Lu 1 ::~.rTIUKt!rJUtrerume.eu

l
17

..

SOLUZIO l BLE E ZIGBEE DI ON SEMICONDUCTOR


Avnet Silica e ON Semicondu ctor AGENDA 11:1 O Zigbee
organizzan o un seminario sulle 09:00 Registrazione e Benvenuto • Caratteristiche, funzionalità e speci-
soluzioni BLE, Zigbee e SubGHz di 09:15 Avnet Silica Presentatio n fica protocollo Zigbee
ON Semicondu ctor, comprensi vo di 09:30 Update su tecnologie e • SoCZigbee NCS3651 0: hardware e vantaggi
hands-on, dove potrai toccare con soluzioni wireless ON • Piattaforma di sviluppo per Zigbee,
mano e sperimenta re utilizzando i • Aggiornam ento prodotti wireless e librerie ed esempi
kit di sviluppo per BLE e Zigbee. roadmap 12:00 SubGhz
Vieni a scoprire le ultime novità • RFID Smart Passive Sensors • Aggiornam ento soluzioni Hardware
Wireless di ON semicondu ctor, con • Fast prototyping tools • Piattaform a di sviluppo
una panoramic a completa sui pro- 10:00 BLE 5.0 12:30 Pranzo
dotti e le tecnologie , e più in det- • Nuove caratteristi che e funzionalità 13:30 BLE 5.0 con RSL 1 O
taglio sul nuovo modulo BLE 5.0 • Modulo Si p RSL 10: hardware e vantaggi • Configurazione di un Beacon BLE ba-
RSL 1 O e sul So C Zigbee NCS3651 O. • SDK, utilizzo di pacchetto CMSIS ed sato su Eddystone

Il numero di posti è limita- esempi • Esempio di sviluppo di una rete mesh
to, registrati subito: https:,fbit. 10:50 Coffe e Break • Q&A
ly/2m9fRB b 15:00 Coffee Break
15:15 Zigbee con NCS3651 O
DATE & LOCALITÀ • Implementa zione di Zigbee Green
1 Ottobre 2019 Milano Power per soluzioni senza batteria
2 Ottobre 2019 Padova • Q&A
3 Ottobre 2019 Bologna 16:00 Conclusione


18

SAVE 2019 tutti gli interessati. Queste sessioni ver-


ticali consentiranno anche di profilare
nell'agenda degli operatori, un momen-
to di aggiornamento professionale, di
meglio gli interessi degli operatori, così confronto diretto aperto a esperti, per
SAVE - Mostra convegno Automazione da consentire un matching più accurato offrire la più completa rassegna di tec-
industriale e Strumentazione in pro- tra argomenti trattati, coinvolgimento e nologie e soluzioni nell'ambito della
gramma il 23 e 24 ottobre a Verona- è opportunità di business. L'evento orga- strumentazione e dell'automazione,
un evento verticale giunto alla tredicesi- nizzato da EIOM in collaborazione con le oltre che quale punto d'incontro per svi-
ma edizione che unisce una parte espo- più importanti associazioni e istituzioni, luppare business.
sitiva a una componente formativa: è da sempre un appuntamento fisso .~AfJU!JU ~.l.U l l
• Un'area espositiva con i leader di
settore dell'automazione industriale
e della strumentazione industriale
• Numerosi convegni, workshop, corsi
• Coffee-break e buffet offerti dagli
sponsor PADOVA BASTIA UMBRA (PG)
• Atti dei convegni scaricabili in PDF TUTTINFIERA 2019 EXPO ELETTRONICA
• Attestati di presenza e crediti formativi Quartiere Fierist ico - Padova Quartiere Fieristico- Bastia Umbria (PG)
Settori principali: Organizzazione: eBoot srl Organizzazione: Blu Nautilus
• Automazione industriale Telefono: 3286467529 Telefono: 054153295
www.eboot.it www.expoelettronica.it
• Strumentazione industriale
[email protected] info@expoelettronica. it
• Sensoristica V.._ -'"vvt;; IUII:;
V l V..J --- Ul~

A SAVE Verona sono previste decine di MARIANO COMENSE (CO) LECCO


sessioni verticali congressuali su te- FIERAMERCATO DELL'ELETTRONICA FIERA DELL'ELETTRONICA
matiche specifiche dell'Automazione Palatenda - Via Don Sturzo
Palataurus - Via Brodolini 35 - Lecco
industriale e della strumentazione in- Organizzazione: Eventi e Fiere
Organizzazione: Eventi e Fiere
dustriale (Alimentare, Acqua, Efficienza Telefono: 0362999186
www.eventiefiere.com
energetica, Software industriale, Ma- www. eventiefiere. com [email protected]
[email protected]
nutenzione). La tredicesima edizione si LI- - I~UVt:IIIIJI
UL- - - 1\IUVt:IIIUI t:
prospetta ancora più verticale e carat-
terizzata da una importante novità che PORDENONE
CHIETI SCALO
riguarda l'aggiornamento professiona- FIERA DELL'ELETTRONICA RADIOAMATORE 2.
le di alto profilo: saranno introdotte le Camera Commercio -Via Pomi lio - Chieti Scalo Quartiere Espositivo - Pordenone
Smart Conference, sessioni verticali con Organizzazione: CM Eventi Organizzazione: Pordenone Fiere Spa
focus specifici per andare incontro alle Telefono: 3208322538 Telefono: 0434232111
esigenze di target ancor più specializza- www.cm-eventi.it www. radioama tore 2. it
ti. L'aggiornamento tecnico a disposizio- [email protected] [email protected]
ne degli operatori è da sempre un pila- 1\.. .• 1\IV\1\;;IIIUit:

stro fondamentale di SAVE (con decine


LUCCA ERBA (CO)
di sessioni convegnistiche e altrettanti
FIERA DELL'ELETTRONICA+ LUCCA NERO ERBA ELETTRONICA
workshop tecnico-applicativi organiz- Polo Fiere -Via della Chiesa XXXII 237 Lario Fiere - Erba (CO)
zati dagli espositori) e da quest'anno Organizzazione: Prometeo Organizzazione: Lariofiere
a Verona verranno proposte sessioni Telefono: 057122266 Telefono: 031637414
ancor più verticali e specifiche: insieme www.prometeo. tv www. elettronicaerba. com
ai tradizionali convegni tematici, gl i in- info@prometeo. tv [email protected]
terventi dedicati all'aggiornamento pro- l'- UVt:IIIUI t ; L..J-L.'-+ 1\IUV 1 ·- -

fessionale saranno organizzati in Smart


Conference verticali, ampliando le te- PESCARA
CODEVILLA (PV)
FIERA MERCATO NAZIONALE
matiche trattate e aggregando gli argo- FIERA DELL'ELETTRONICA
DEL RADIOAMATORE DI PESCARA
menti su focus specifici, a beneficio di Expo Tucano SP 1 N o 38 Codevilla
Centro IBISCO Città S.Angelo (PE}
Organizzazione: Eventi e Fi ere
Organizzazione: ARI sezione di Pescara
. www.eventiefiere.com
www.anpescara.org
[email protected]
arifiera@aripescara. org
lJI\..cmbre
..J\, ....... v'l:; l 1u1 c v 1
..JVI" - ..JIbre VI 1..o.

L'elenco aggiornato di tutte le Mostre Mercato del 2019 è disponibile sul sito

19

~~----------------------------------~~--------------~--~

~
~ .
~
~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

~
ABBON AMENT O ~
ANNUA LE '~

COM E ABB ONA RSI

-7 an-l i
compilando il modulo riportato
nella pagina "Abbonamenti" del
nostro sito www.elettronicain.it.

-7 mai l
scrivendo a
[email protected]
con i dati riportati nel coupon a lato.

-7 :ast a
compilando il modulo di
abbonamento riportato a lato e
inviandolo al seguente indirizzo:
FUTURA GROUP srl
Mese dopo mese realizza i Proge tti Via Adige 11
.
descritti sulla rivista, rimani aggiornato 21013 Gallarate {VA) '

con i nostri Corsi, approfondisci


la conoscenza delle tecniche e dei -7 telef ono
telefonando a
compo nenti più avanzati con +39-0331-752668
i nostri Tutorial e le nostre News.
·------------------------------------------

desidero abbonarmi per un


anno alla rivista Elettronica In.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. Riceverò i seguenti omaggi:

• fZI DISCOUNT CARD Futura Elettronica


UNO, A SCELTA, TRA QUESTI VOLUMI
della collana "L'Elettronica per tutti".

D Entra nel mondo di Raspberry Pi 3+


D Fishino - Arduino e l'Internet delle
• • Cose in un'unica innovativa scheda

• • D
D
RandA - Raspberry Pi + Arduino
ARCUINO UNO - Programmazione
avanzata e Librerie di sistema
D Impara l'elettronica sperimentando
D Primi passi in elettronica
RISPARMIA FINO AL 25% D Arduino e le tecniche
di programmazione
SUL PREZZO DI COPERTINA dei microcontrollori ATMEL
D Raspberry Pi - il mio primo
Linux Embedded
10% DI SCONTO SUl TUOI ACQUISTI CON . D Alla scoperta di Arduino YUN
;

[] Programmiamo con i PIC


DISCOUNT CARD FUTURA ELETTRONICA [J t•ABC di Arduino

D Stampiamo in 30

l VOLUME A SCELTA DELLA COLLANA Resto in attesa del primo numero.


.. L.ELETTRONICA PER TUTTI ..
Cognome:

RICEVI LA RIVISTA A CASA TUA


COMODAMENTE E VELOCEMENTE Nome:

Via:

La possibilità
CAP:
di leggere
gratuitamente Città:

la versione digitale
Provincia: Telefono:
di Elettronica In
e-mail:

Data: Firma:

Resto in attesa di vostre disposizioni per il pagamento.


Ai sensi dell'art. 13 del D.Lgs. 196/2003, in tema di protezione dei
dati personali, FUTURA GROUP srl informa che i dati liberamente
forniti attraverso la compilazione del presente modulo saranno
trattati e conservati in conformità a tutte le normative vigenti. l
dati suddetti saranno trattati su supporto cartaceo e informatico,
mediante sistemi di protezione atti alla tutela della riservatezza. per
finalità connesse all'esecuzione dei rapporti contrattuali instaurati.
Inviare in busta chiusa a: Futu"
' ;J/.
"
Group !l
Dlllùmì •.~j ·
FUTURA GROUP srl
'
Via Adige 11 • 21 013 Galla rate (VA)
• Tel. +39-0331-752668
STRU ENTI DI ISURA
® PER OGNI ESIGE NZA!
PROFESSIONALE ._,. -

·Misura correnti AC e DC fino a 100 A, tensioni AC


. e DC fino a 600 volt, resistenze fino a 20 Mohm, -
.

,.:;

· . capacità fino a 20 mf, continuità e diodi. Dispone


----
.

di display LCD retroilluminato a 2000 con- Oscilloscopio palmare con multimetro


integrato dalle caratteristichejJrofessio- Cod.TP174
teggi, indlviduazione di tensione senza
contatto (NCV), autospegnimento, nali con larghezza di banda di 16MHz.
indicatore di batteria scarica e Dispone di ampio display manocroma-
data hold. Alimentazione tico (60x60mm) con una risoiuzione di
con 2 batterie tipo AAA 160x160 pixel molto facile da leggere
1.5V (incluse). grazie alla funzione di retroi11uminazione di
cui è dotato. Integra una memoria interna
che consente di salvare e visuanzzare sul
display fino a 1Osegnali; pufsante "Auto-
Set" pellavorare in modo semplice e ve-
loce. È dotato di porta USB che consente
di trasferire i dati dei segnali .dall'oscillo-
scopio al computer. Completo di software
di gestione per PC. Alimentazione tramite
batterie oppure adattatore di rete.
MULDMETRO DIGITALE
CON MISURA DI
TEMPERATURA,
' MINI FONOMETRO
CAPACITA, TACHIMETRO DIBITALE
DIGITALE CONLABE
ETRANSimR INTERFACCIA
Fonometro con risoluzione di
O, 1 dB dotato di display LCD
USI PER,RC :w .·:
. . :~· '~. ~ ·:;·,·!;~ ·" ~
·:;,. _ '

Cod.TP0060
crt,
IJU. (
retroilluminato con indicazione
digitale della misura. Rileva Tachimetro ·digitale con
intensità sonore comprese tra 30 e puntatore laser; dispone di
Misura correnti continue e alternate fino a 20 A, 130 dB. Memorizza i valori minimi porta USB per ~a gestione e
tensioni continue fino a 1000 V e alternate fino a e massimi rilevati. Leggero, com- il salvataggfn dei dati su PC.
750 V, resistenze fino a 200 Mohm, capacità da 2nF patto, semplice da usare, ideale Indicato per la misurazione,
a 20J.LF, frequenze fino a 20 kHz, temperatura da per monitorare i livelli di rumore senza contatto, della velocità
-40°Ca + 1ooooc con termocoppia inclusa, diodi, negli hotel, nelle sale conferenze, angolare di a~beri motore,
transistor e continuità elettrica. Alimentazione con nell'home theater, negli ospedali ruote dentate e pulegge, può
batteria a 9 V (inclusa}. La confezione comprende:
manuale, puntali, batteria, guscio di protezione e
€ 25,00 e in qualsiasi altro ambiente
sensibile al rumore. Funziona con
ijl8,DO anche essere utilizzato come
contapezzi. Funziona con 4
sonda di temperatura {termocoppia tipo K). Cod.TP0070 3 batterie tipo AAA (incluse). Cod.TP0030 batterie tipo M {incluse).

ANEifiDMETRD
!
i l
TERMOMETRO DIGITALE
DIIITALE PORTADLE
PER TERMOCOPPIE LUXMETRO PORTADLE
DPOKEJ O- 199900 LUX §
-

Cod.TP0063
Cod.TP0062
Cod.TP0064
Rileva temperature fino a 1300 oc. Dispone di Misura la velocità e la temperatura dell'aria. Lettura
ampio display LDC retromuminato a 4 cifre che Misura riiJuminazione prodotta da LED (luce visibile), lampade della velocità dell'aria in rn!s, km/h, fVmin, knots.
permette di leggere facilmente i valori. Visua- fluorescenti, ~ampade ad alogenuri metallici, lampada ar sodio ad mph. Lettura della temperatura in gradi Centigradi
iizzazlone in oc e in °F selezionabile. Mostra fa alta tensione o lampada ad incandescenza. Dispone di display e gradi Fahrenheit, display LCD retroilluminato a3
''"u'"' massima, minima e media rilevata. LCD retroillumjnato a 4 digit, unità di misura selezionabìfi : - cifre, memorizzazione dei v.~fori minimi, massimi e
Upo K inclusa permette di LUX l FC'" rndicaziane di min e max, indicazion~ di batteriit:scari"' medi rilevati, funzione di al@sgegnimento, '"'"'"·,· : . . ,.,.
una temperatura massima fino a 260C)C. ca, spegnimento automatico, data hold. Funziona con 3 niitterie
- -
-~
re di batteria scarica. Funzioriaocon 3 batterle
con 3 batterie tipo AAA (incluse).
!'lrol'll4ll tipo AAA (ìneluse}. ·"-,: tipo AAA (incluse).
l

di GUIDO OTTAVIANI

ei precedenti articoli dedicati alla


piattaforma CM3-Home per lo
sviluppo facilitato di applicazioni
domotiche, abbiamo introdotto l'har-
dware e proposto esempi di utilizzo
dimostrativi delle loro potenzialità.
Realizziamo Proseguiamo su questa li.nea e ana-
lizziamo l'interfaccia R5485, che è uno dei bus in grado di
semplicr applicazioni assicurare comunicazioni affidabili su distanze notevoli e
utiltzzando le in ambienti esposti alle interferenze elettromagnetiche
(EMI). Nella CM3-Home sono disponibili due porte R5485.
perrfer1che hardware La relativa specifica si riferisce allivello fisico di una
di comunicazione connessione seriale a due fili half-duplex e multi punto;
trattandosi di una trasmissione differenziale su linea
disponrbllt sulla
• bilanciata è intrinsecamente schermata dai disturbi di
CM3-Home. modo comune che si possono introdurre dai fili di collega-

23

'

Fig. l
Visualizzazione dei parametri
elettrici istantanei.

•\

~ Fig. 2
Andamento nel tempo della potenza
assorbita e della tensione di rete.

mento, il che permette di coprire distanze fino essere gestite da software come qualsiasi altra
ad 1 km anche in un ambiente disturbato come linea seriale. l segnali DE (Driver Enable) ne-

quello industriale. Proprio in questo tipo di am - cessari per pilotare correttamente il bus sono
biente e su grandi distanze possono verificarsi gestiti dall'hardware sul chip FTDI FT4232.
differenze di potenziale anche notevoli tra i Ciò detto, vediamo un esempio applicativo
dispositivi collegati, per questo la CM3-Home basato sulle porte seriali R5485.
è accoppiata al bus R5485 mediante optoi-
solatori. Sul bus fisico è necessario usare un DISPOSITIVO SERIALE GENERICO A RELÉ
protocol lo di comunicazione per scambiare dati In questo esempio sono descritte le procedure
tra i dispositivi; secondo il livello di complessità, per interfacciarsi con un protocollo molto sem-
tale protocollo si occupa dell'indirizzamento dei plice: la stringa di comunicaz ione contiene solo
pacchetti verso il dispositivo destinatario, della l'indirizzo del dispositivo e il comando ON/OFF.
correttezza della consegna e dell'eventuale Il dispositivo in esame è un KMTronic eight
ritrasmissione. channel R5485 relay controller, il cui sistema
Di seguito, esempi di diversi tip i di protocollo: di indirizzamento consente di collegarne fino
• collegamento con protocollo molto semplice, a 16 su uno stesso bus, ottenendo il controllo
con il solo indirizzamento dei dispositivi; di un massimo di 128 relé. In questo esempio
• collegamento in DMX512, che è un protocol- si usa lo stesso Serial Binding di OpenHAB
lo ancora molto usato nell 'illluminazione per già utilizzato nell'articolo precedente per le
lo spettacolo; comunicazioni seriali TTL. La porta da utilizzare
• collegamento in Modbus, forse il protocollo deve essere aggiunta all'ambiente java. Editare
più usato in ambiente industriale per la sua quindi letc/defau lts/openha b2 aggiungendo le
affi da bi lità e versatilità. porte che si intende usare:
Nella board CM3-Home le porte RS485 sono
visibili da Linux come ldevlttyUS BO (porta sini- EXTRA_JAVA_OPTS="-Dgnu .io.rxtx .SerialPorts =/dev/
stra) e /dev/ttyUS B2 (porta destra) e possono · ttyUSB0:/de v/ttyUSB2:/ dev/ttyS0:/d ev/ttyS2:/de v/

...

24
t

ttyACM0:/dev/ttyAMA0" Listato 1
Il file itemslkmt.items definisce gli item da
usare:
rule ''kmtA1_0N"
when
Swi tch kmt1 "K.MTronic A1" (kmtA) Item kmt1 received command ON
then
Switch kmt2 ''KMTronic A2'' (kmtA) toSerial.sendCommand("\u00FF\u0001\u0001")
• • • end
rule "kmtA1_0FF"
Switch kmt7 ''KMTronic A7'' (kmtA)
when
Switch kmt8 "KMTronic A8" (kmtA) Item kmt1 received command OFF
String toSerial ''To Serial [%s]" {serial="/dev/ then
toSerial.sendCommand("\u00FF\u0001\u0000'')
ttyUSB2@9600"} end
Group:Switch:OR(ON, OFF) kmtA ''KMTronic'' rule "kmtA2_0N"
when
Item kmt2 received command ON

Gli item di tipo switch sono necessari per then
toSerial.sendCommand("\u00FF\u0002\u0001")
creare i pulsanti e per gestire le regole. L'item
end
di tipo stringa è usato per trasmettere i dati rule "kmtA2_0FF"
seri ali. when
Item kmt2 received command OFF
Per visualizzarli sulla Standard Ul, Basic Ul o then
su ll'app m o bi le occorre configurare opportuna- toSerial.sendCommand("\u00FF\u0002\u0000")
end
mente il file sitemaps/cm3home.sitemap.
• • • •

• • • •
rule "kmtA8_0N"
Frame label=''RS485 KMTronic'' •
when
{ Item kmt8 received command ON
Text label="Relays'' icon=switch then
toSerial.sendCommand("\u00FF\u0008\u0001")
{ end
Switch item=kmt1 rule "kmtA8_0FF" •
when
Switch item=kmt2 Item kmt8 received command OFF
• • • then
Switch item=kmt8 toSerial.sendCommand("\u00FF\u0008\u0000'')
end
Switch item=kmtA
}

Questi relé R5485 sono pilotati inviando una essere eseguita con openhabian-config, ma
semplice stringa di tre caratteri ASCII: non funziona immediatamente nella versione
corrente . È necessario eliminare /etc/default/
Relay commands: locale prima di utilizzare il menu:
OFF command : FF xx 00 (HEX) or 255 xx 0 (DEC)
ON command : FF xx 01 (HEX) or 255 xx 1 (DEC) 30 System Settings
32 Set System Locale
Nel quale "xx" corrisponde con l'indirizzo del
relé da comandare come indicato in. DMX512
Bisogna tenere conto che l'ambiente java sul Il DMX512, spesso chiamato semplicemente
quale è basato OpenHAB usa set di caratteri DMX (Digitai MultipleX), è uno standard di co-
unicode, quindi la stringa deve essere compo- municazione digitale molto utilizzato principal-
sta usando il formato a 16 bit \u. Il file rules/ mente per controllare l'illuminazione di scena
kmt.rules definisce le regole da usare per com- nel settore dell'intrattenimento.
porre la stringa da inviare alla pressione dello In OpenHAB esiste un binding anche per il
specifico pulsante . protocollo DMX512 però, come in molte altre
Il set di caratteri installato per default su situazioni, si può usare anche lanciando del
Openhabian non gestisce i caratteri oltre il codice Python tramite il comando execute-
codice Ox3F. Deve quindi essere modificato in Commandline all'interno di un file rule. In un
en_ US 150-8859-1. Questa operazione può articolo successivo vedremo come fare, per ora


25
'

'
'
llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll[lllllllllll lllllllllllllll

analizziamo il codice Python necessario . while True:


L,esempio che segue apre la porta R5485 /dev/ for red in range (0,255,50):
ttyUSB2 e invia tre sequenze di comandi verso sendCmd(red,0,0)
tutti i 512 possibili dispositivi indirizzabili su for green in range (0,255,50):
un bus DMX512, come da specifica. Questo sendCmd(0,green,0)
esempio è stato testata con un dispositivo for blue in range (0,255,50):
VDPL300CB configurato per rispondere agli sendCmd(0,0,blue)
indirizzi da O a 5 (A001 ). ser.close()
Questo programma di test accende in sequenza
i LED rosso, verde e blu. DISPOSITIVO MODBUS PER LA MISURA
DELL'ENERGIA ELETTRICA
import serial Il Modbus è un protocollo master/slave nel
import time quale solo il master interroga e/o modifica i
valori dei registri degli altri dispositivi sul bus.
ser = serial.Serial(''/dev/ttyUSB2") Per descrivere un collegamento Modbus su
ser.baudrate = 250000 RS485 reale sarà usato un misuratore di
ser.bytesize = serial.EIGHTBITS energia Eastron SDM 120. Questo misura, con
ser.parity = serial.PARITY_NONE un,ottima precisione, i parametri fondamentali
ser.stopbits = serial.STOPBITS_TWO della rete elettrica: Tensione (V), Corrente (l)
ser.xonoff = False e Fattore di potenza ·(cos Fl). Da questi deriva
def sendCmd(red,green,blue): direttamente la potenza attivar reattiva/ appa-
ser . send_break(duration=0 . 25) rente e !,energia totale in modo bidirezionale,
ser.write(chr(0)) può essere cioè usato anche dove ci sia una
ser.write(chr(0)) fornitura di energia come, ad esempio, in un
ser.write(chr(red}) impianto con pannelli solari fotovoltaici.
ser.write(chr(green)) Lo scopo è di visualizzare i valori istantanei
ser.write(chr(blue)) principali, mostrarne l,andamento nel tempo,
ser.write(chr(0)) conteggiare i valori di energia totale oppure
• ser.write(chr(0)) usare tali valori per intraprendere azioni al
for i in range(512-6): superamento di certe soglie
ser.write(chr(0)) Una volta installato il binding Modbus possia-
ser.flush() mo passare a configurare il servizio.

"""""
Modl}us Si?• 1(11 $111'.~

. . Fig. 3
Configuration Parameters Bridge Selection
Configurazione
interfaccia fisica
t;.1odbus serial slave - modbus:seriai:RS485
Modbus.
/dev/ttyi.JSBO 1
.•

Fig. 4
Configura:z!i.o ne dei
polling del bus. ~·,.•k'•
1
t '

None

26
tllllllllllllilllllllllllllllllllllilllllllll11flllllllllllllrlll11111liiii1Jillllllllfllllllllllllrllllllllllllll

Modbus data ONLINE


; ..
.D Modbus data ~ i
.._.
modbus:data:Current
Modtltf.l dal (l

Modbus data
Modbus data
ONLINE
;. ~ -• '. '

Bridge Selection
,. Fig. 5
Dati letti
modbus:data:Voltage dall'energy
Regular poll - madbu~rpolhwVC:P
meter.

.. . Modbus data ONLINE


i
D .,
Modbus data Configuration Parameters
modbus:data:Frequency
Pl Fig. 6
Modbus data ONLINE l d11'' .. • :1 . ' ·~ !; Configurazione
D Modbus data
i del valore
modbus:data:Energy 32blt floatlr1g pomt (ftQat32)
di cotrente
•l ,·
,~,, .... , .. • ~)l
misurata dallo
' r ~('
strumento.
Modbus data ONLINE

D Modbus data
i .,. i .• . ! • • ~.~

modbus:data:Power

Modbus data ONLINE


;• i
Modbus data
rnodbus:data:CosFì

La struttura a livelli è univoca per tutti i binding questi interpreta un diverso parametro dell'e- •
del tipo 2.x. C'è sempre un gatewaylbridge che nergy meter definendo il tipo di variabile.
si collega all'hardware. A questo si collegano i Il valore di corrente, ad esempio, corrisponde
thingche interpretano i dati letti del GW. l thing a quattro registri a partire dal registro 6 che
possono avere più channel che corrispondono devono essere interpretati come una variabile
ai diversi elementi o metodi di lettura. l channel float a 32 bit {Fig. 6). ·
sono collegati con gli item che definiscono il Dal momento che siamo in un ambiente di
metodo di presentarli nelle GUI o utilizzarli programmazione ad oggetti, ognuno di questi
nelle rule. In pratica sono le variabili globali dati può avere diversi metodi e classi. Andiamo
dell'ambiente.
Analizzeremo la configurazione del Binding
Modbus 2.4 che rappresenta un esempio com-
pleto di questa metodologia. Il Modbus è un
protocollo complesso, che può essere usato in Modnusdata

molti modi con una grande varietà di dispositi- Dala lhlflg f',xtracts vah,<tl> from bn1al)' dat., r~~ved from M<'>dtur. slaw. SlrnìJ;;rly, '' it r~!SPOfi:,;ibleof tranl,lt•n{l
op;;nHAe; tQrnroallds to M!Xfbus write reque$\S

vi. La sua configurazione richiede quindi molti


St~tus c.gll!fli
parametri. La configurazione tramite PaperUI
Channels
rappresenta una sorta di wizard che ci aiuta
Value as Number
proponendo i parametri necessari e verifican- nl0dt.v~d3ra Vonaqe.nvn"itW
Num~r

done la corretta impostazione. Value as Swltch


modl:)u3.da!aVoita;}e ~wi~c!•
Per prima cosa definiamo l'interfaccia hardware sw,tch

vera e propria, vale a dire il gateway che collega Value as Contaet


!'ll!XibiiS <la'4 V{)llage:mnt!!CI

il livello fisico con l'ambiente OpenHAB {Fig. 3).


In questa sono configurati i parametri di col- Value as Dimmer
modou;; data 1/olt<J!.)t':d;mmt!f Fig. 7
l.ìtnuw:r
legamento del bus R5485 con il nostro dispo- Configurazione
sitivo, I'Eastron SDM 120 che abbiamo visto in
Value as DateT!me
madbu:;·eara·Vo!t~:datnume
Channet
Oali:>Tirn"
precedenza.
Value as Strlng •
Al gateway si collega il po//er(Fig. 4). In questo
caso sono letti 74 registri in modo raw dal Value as Rollershutter
rnOOPVS da1a·Volt<l!J1!' f0!'1C-fShutM
dispositivo ogni 500 ms.
Per attribuire un significato a questi registri Last suc.cessful read
moobus.dat:~·vooage lastRqad&.~-ss

definiamo una serie di thing(Fig. 5). Ognuno di Oaten•ne

' .


27
'
'

r •

lllllllllllllllllllllfilliiJIIIJIIJlffllllllfllll11111111lllllllllllllllllìJIIIIIIIJillill

ed'',>230="orange'',>220="green'',<=220=''orange"]
Impostazioni manopola
Text item=L1A
Text item=L1P valuecolor=[>3300="
red'',>3000=''orange'',>2500="green",<=2500="blue"]
Nome
Commta Text item=L1C valuecolor=[>0.8=''g
Fig. 8
Cor~figurazionedi
reen'',<=0.8="orange"]
Elemento O?EJnHAB
un widget per un # l.1A Text item=L1F valuecolor=[<49="or
A.\f,;,;;
i\i.Jlj ,W:.:E !!'ji.,J;!:;ll . .t'!iL l
.. ,...., n
&.,.. '
ange'',>49=''green'',>51="orange"]
Sola lettura
Disabilita lntera.zionu Text item=L1E
Min O Max 20 }

Pasto 0,1 Unità A }

Oppure può essere utilizzato in un HABpanel,


Display centrale configurando il widget corrispondente (Fig. 8). ,
el Visuall:z:za valore L'item, come abbiamo visto in precedenza, può
& Visualina nome (valore sotto)
essere utilizzato per la visualizzazione nel le GUI
Formato
configurando opportunamente il sitemap:
Se disponibile, utilizzare il formato fornito dal serve t

In alternativa, in una rule, come avete visto in


X Annulla precedenza:

var Timer set_timer = null


rule "Power"
a selezionare solo i channel che ci interessano when //every 3 seconds
(Fig. 7). Time cron " 0/3 * * ? * * *''
Ad ogni channel-metodo associamo un item then
che sarà la variabile globale, in formato stan- var Power = (L1P.state as DecimalType).intValue
dard, da usare nel nostro ambiente OpenHAB . if (Power <= 3000)
Vediamo la definizione a livelli che partendo { .....
• dal gateway arriva fino al singolo elemento del
eh annel. CONCLUSIONI
Bene, con questo ci fermiamo qui.
Number L1V "Tensione [%.1f V]'' { channel = Riprenderemo il discorso nel prossimo articolo,
"modbus:data:Voltage:number" } spiegando e provando in pratica ulteriori perife-
Number L1A "Corrente [%.1f A]" { channel = riche della nostra piattaforma per lo sviluppo di
'

''modbus:data:Current:number" } applicazioni domotiche.


Number L1P ''Potenza A [%.1f W]" { channel = A presto! []
"modbus:data:Power:number'' }
Number L1C ''Cos Fi [%.2f]'' { channel =
''modbus:data:CosFi:number'' }
Number L1F "Frequenza [%.1f Hz]" { channel =
"modbus:data:Frequency:number" }
Number L1E "Energia A [%.1f kWh]" { channel =
''modbus:data:Energy:number" } Cosa occorre?
l componenti utilizzati in questa presentazione sono
L'item, come abbiamo visto in precedenza, può disponibili presso Futura Elettronica.
essere utilizzato per la visualizzazione nelle GUI La board CM3-Home (cod. CM3HOME) è venduta a
Euro 169,00 (il modulo Raspberry Pi CM3 non è compreso),
configurando opportunamente il sitemap : la scheda WiFi (cod. RT5370N) è disponibile
separatamente a Euro 9,00.
Frame label=''Energia" l prezzi si intendono IVA compresa.

{
Il materiale va richiesto a:
Text label="Energia'' icon=pressure
{ Futura Elettronica, Via Adige 11, 21013 Gallarate (VA}
• Tel: 0331-799775 - http://www.futurashop.it
Text item=L1V valuecolor=[>240=''r

28

-

sere e n a 1ncasso
Vuoi gestire facilmente il clima domestico
_____anche quando sei lontano da casa
e risparmiare sui consumi energetici?
Con il nuovo termostato Wi-Fi puoi fare
tutto questo tranquillamente. Grazie
all' App gratuita per Android e iOS,
con un semplice tocco sullo smartphone,
puoi attivare da remoto il riscaldamento,
modificare la temperatura e impostare
la programmazione.
v Alimentazione: 230 VAC 50 Hz
v Precisione: circa 0,5° C
v Range di temperatura: da 5° C a 35° C (impastabile)
v Limite range di temperatura: 5-99° C
.
v Consumo: <0,3 Watt
ro
(f) v Sensore di temperatura: NTC (1 Ok) 1%
-:::J
(.)
Montaggio: a incasso
c
·-
-~
' v Dimensioni: 86 x 86 x 17 mm
·-
N
N
V' Peso: 234 grammi
Q)
L-
a..

PLACCA PER TERMOSTATO


WiFi FR695

.:...----- Placca da utilizzare in


abbinamento al termostato
Wi-Fi FR695 e alla scatola
da incasso modello 503E
(acquistabile separatamente).
Dimensioni: 116x74,9x7 ,6 mm tf4!9JJJ
~ -~~
cod. PLACCAFR695
• ft

• l

'1

r ,> .. •

• .i
-....... •
,,

-
\:· '

) • 1

..
di BORIS LANDO NI

ome ogni anno, l'avvicinarsi della sta-


gione invernale stimola la nostra fanta-
sia e ci ricorda che l'elettronica può fare
molto, non solo nel concreto (realizzan-
do automatismi per la climatizzazione
degli ambienti interni) ma anche nel
diletto e nel tempo libero; ecco quindi
nascere progetti in tema con la giovane
ma affermata festività di Halloween, ereditata dalla tradizio-
ne anglosassone (ed ancor prima Celtica ... ) basati su giochi di
luci e suoni per animare zucche, lanterne e quant'altro, ma
anche cose per le festività di fine d'anno, come gli addobbi
tecnologici per albero, case, vetrine.
Magari, vista la dilagante presenza delle attività commerciali
e della comunità cinese, verrà anche il giorno in cui l'elettro-
Basato su Neopixel e una nica s'inventerà qualche gadget per l'orientale "Festa delle
lanterne" ormai riproposta anche in Italia.
speciale Arduino ultra-sottile,
Ecco quindi che ar1che quest'anno abbiamo creato un gadget
simula la luce prodotta dalla luminoso, sfruttando gli immancabili LED Neopixel e rispol-
verando, per il loro controllo, un nostro "cavallo di battaglia"
fiamma dei camini.
che è il biglietto da visita Arduino-powered, vale a dire la
Business Card FT1120 della Futura Elettronica, la quale
sostanzialmente è una Arduino Leonardo in formato biglietto
da visita, sottile e interattiva, ma molto versatile, tanto da
poter montare, se non si vuole utilizzarla per l'applicazione
d'elezione, anche gli header Ardui no cui applicare eventuali
shield.
Ne è nato un gadget molto suggestivo, che montato su
un'opportuna cornice in plastica nera riportante internamen-
te la sagoma di una fiamma, con dietro applicato uno strato
di plexiglass bianco opaco, simula perfettamente il fuoco
e può quindi diventare un effetto per un pub o un bar stile
gotico o un po' dark e, perché no, il cuore di un finto camino.
La versatilità del progetto consente anche di creare forme
differenti dalla fiamma (vedremo più avanti come), e inseren-
do i led in una zucca si può ottenere un un gadget luminoso
per la festa di Halloween, dove dai fori, si diffonderanno le
fiamme, illuminando tutto intorno con effetti spettacolari.
Certo, quello che otterremo in tal caso non sarà una vera
fiamma fatta per scaldare, ma creerà un'atmosfera di calore
virtuale con il fascino della fiamma e del suo ondeggiare che
nelle giornate uggiose sicuramente apprezzeremo.
In fondo, come cantavano i "Nomadi" 50 anni fa, '~ .. il fuoco
di un camino non è caldo come il sole del mattino ... :' quindi
anche il camino vero potrebbe non soddisfarvi. ...

'
31
l

, l
'

. .. ".;':i -~ ... '·' .. . ):;,.. . . '',., .... : ....


: ': -~· . ;, '.'' .,. ... .
··' :· :

. ..
' ""

::'. :~:, ""' _,;·, . ",', .;


'! "::; -,::

TfmllllllliimiiDDIIJDIIOHIIlWIHlDiiJIHDJIIImriiiiU
. . ...
...
,:

~ '" -" . ,;. •• ·,, • l ,'; • •' : .; ' · ·:, • - ••

H.

l
IL PROGETTO
Utilizzi a parte, in cui siamo certi di aver poco
da insegnarvi, vediamo bene di cosa si tratta: il
sistema è composto da una Ardui no Business
j
Card FT1120 che abbiamo programmato con uno
sketch in grado, importando un'opportuna libreria,
di pilqtare degli spezzoni di strip a LED Neopixel
.'·· serve resetfa·~è Jl microcont:~6UÒfe contenenti un differente numero di diodi RGB e
,,Jeftivam:eot~.· Ct4kllodiu~ ~ircuito . . . .... inanualfue:ri~~~(ilreset auto~~tÙ:o· ·..
i
disposti opportunamente a formare la classica
· · ;~·lettrof1ico~ ·a·raiieiarl'architettura · ... "vien~g~$t.ito/datPE tram.ite ·l~ ;:.~:· ·. .·.· · sagoma della fiamma.
' ArduinQ'• leortardo(il' mJcra, è.un . ....... ' cònties'~ion·.~~u:se). F': ., .. . c. ..
Essendo la Bi-Card FT1120 un controller Arduino-
' ATI1legà:a.2u~} s~ 'cuiil tircuif,o · · ••... ' ' · Gli altri'tiri'(l't.J~· pulsantl, collàg~ti ' compatibile, strutturalmente simile alla Leonardo,
·..s·iiJa.sà(irfquesto ç:~sQsi.mula .''· ·. · ·· ·.·~I!JeJinée .P'0.7~ .·p(G, P04; epo~::. per la gestione dei LED Neopixel ci siamo affidati ,
. · •· . latastiera, .os:~·i~· una·· p,eriferica . ·. ·. ·. • ~ ..• PD1 ·H~ispetth/amente.Pi .~~·~: ~à, •· · all'ampia disponibilità di librerie sfornate allo sco-
: HIO), al rvomentp dellatonnes~ •. ·. ····~···. •,;"P4, p'slpermettono, se pf~moti; . po dalla community di sviluppatori Ardui no. l
. sign.ed,eii'USS,. dof:lò·~~~raperto .. , . ,. ,:; .di attivare te rispettive funii.~d.·:.:·t . Tra quelle presenti in Rete, per gestire le strip
:.·.: ama~o: il 'brò.ws.~r4 vi.~he·. di'gitat~ , ·. ·.. ,,,· ni:. Le Hnee dei pulsan~i .s(uÌ~;,· ·: · ·•· .... Neopixel abbiamo scelto la popolare libreria Fa-
.. iic~mahdo;,p'ero.gf1un.o. éf~i'fpsti .•. ·• ·. ·..··· ripetute sui contatti.06,,b&·•.D·4, · stled, che abbiamo modificato personalizzandola
: ,p~emu.tiap.re ifs,ito ln~ern.et, u\· :. ·· •· · 03, D2lateralì di ArdLJino; tigt:lùna in funzione delle esigenze di progetto; la scelta
. . dienfdrposta el~ttr.on·ica con · . ·.·.· · dispone, inoltre, di un·:re$istote ·ai di tale libreria è stata dettata dal fatto che ha
· . :pr~d~fìhito .t'indi'rizzo e-maU, la . ., , . ·. · .· . pufl~~p settato internamé:~:t~·al :. semplificato notevolmente la gestione dei LED
· · p~·gioa F~çebook, twittei, •...i tasti ~ . :..microcontrollore da s.aft{A,~'te~ . •· Neopixel e perché tra le varie demo che integra
. · sono'tomunqu.e:petso~alizzabm '.. •·.. ·..~· J due LED presenti nel circuito··.• ... offre l'effetto fiamma: quindi con essa abbiamo
·. i)erimpl·e·lnent~re:aftre·f~nzi'~ni; ........· veng()no·gestiti dat.mi.cror;ontro·l- risolto buona parte della progettazione software.
•e_noi lo a~biam·a f2t~tò' ·gest.enoo~ •.: · •. iQre·. pe~segnalare l~avvio· cteno .... Siccome la libreria non supporta il controllo del

.. nét 'firmwa:J.e; P2 ej:>4. La sa1~da ,.. . sl<etcb, UcariCamento .e_l'attivìtà numero di strip che ci occorreva per disegnare la
,...• è'una~rduinolebna(docp·npla~~ ..· . ;. s'utt'U.sarioqoeséuttfm..O casol02 sagoma della fiamma (o meglio, per illuminarla)
· · . zole.·.pé,rgspitat~ ,:~:i· str;ip ·pet•~s.up- ···: · ···. . èHrFK .LED ~· l:Il1. I'RXLED dlArdu- l'abbiamo però modificata per gestire più canali
. . . ·p.ti~1:are gli~nl~J~· (Ji'li il ·~onneitore'. :. , · ·ino·~ ;JnoJtrè b~·' .(r~·s~oJ lampS,ggia
;;. .... . - ... -· .. - .. .. .. .. . . .. ·-- .:: .... - .. '··. ·:. .. .
(strip) quindi non in serie; per l'esattezza, abbiamo J
per l'lç$P: tè rrianca·sezionè•ali-:· :... , · ·: qtiando/.dopé il .cplleg~menta e il 5 strip per dare la forma della fiamma e scorrere
·.·me·ntazihne , \Jin.~'~uind:'i ric~ve· sv .·. ···. · . '·.:ritohÒ~ci;knto ~j.;:patte. del PC, la diversamente l'una dall'altra e la Fasti ed è stata
· dal •conn.ettòre'rnierril.Jsa.LaVin ~ .•. ··· ·:•.· •: ~·chéd~ ·aij~ì~; lo:s~~tch·· ed èpron·- adattata in modo da gestire 5 linee di 1/0 della l
.· · . . §ui·cònnetfdfj•n~n._ ti.ien,e·. Pa;t~tai' r::.· ~··:···t~all'u.so>tB?. {giall(j)la.mpeggia . scheda Ardui no, che sono le digitali/O DB/ D9,
3)3 Volt·. s.oncrrt~·()r,tat~ .S'Al ·fontatto ... ·., .· i~V~~e og(ii Vbft~'' che;Si.' pnamé · · . D10 011eD12.
1
'
laterale 3\/3· e· stit\cif,h:~~atr.tlaJS\I .... ·· ~no etèi . t~~frii'1iPs ~è.r ·~cced~r~ Fin qui la gestione dei Neopixel; il firmware/ però,
·.. d:eÙ'USB
. .. ..
medi~nté ·~~ r~gol,
:; .. ... .. . . .
'
. . ..
att):r.e . · · ;alle :rìspet~i~~:
.. .
f. q~z·i,Eii)J.'. . .
- ' ' ,,,_ .,:,_ -···· .-;:. -- ·-
·· · , .~• · . si occupa anche di espletare altri compiti e nello
;, ·- . : .:: .
specifico della lettura di due dei pulsanti presen- 4

"' '

ti sulla scheda/ che nel progetto originale della


Business Card servivano ad attivare via USB le
funzioni di apertura browser web per il puntamen- •

to alla pagina web del titolare, l'apertura del client


di posta elettronica/ nonché dei Social Network
associati. Nello specifico utilizziamo il pulsante
della posta elettronica (lo chiameremo pulsante 1)
e quello per accedere al profilo Twitter (si chiame-
rà pulsante 2).
Per quanto riguarda le funzioni assegnate ad essi
dal firmware, sono le seguenti:
· P2 diventa il Pulsante 1 e serve sia per acce n-
dere il sistema, sia a circuito in funzione, per
il cambio di effetto; il tasto è quello che nella
scheda Bi-Card attiva l'apertura del cliente per
,_- ,,- •
'• ·''; -, . -··
l'e-mail;
..
l

32
j
l l
'

r '

IIIJIIDHIIDliiiJiflllfllmiiDIDIIIIIHlllfiOIIIIIllliiHIIIlllliDOIIfdlfllflllllll.lfiiiii~IIIIIIilfllll

· P4 diventa il Pulsante 2, che se premuto spe-


gne il gioco di luci, portando il microcontrollore CARATTERISTICHE TECNICHE
in standby; il tasto è quello per aprire il Social
Twitter. l
Tensione di alimentazione: ~ Visualizzazione:
L'insieme si può alimentare tranquillamente dal SVUSB 144 lED Neopixel
connettore microUSB {che in questo circuito è in
grado di veicolare ben oltre 1 ampere) sfruttando
il fatto chela Ardui no Business Card ha le piazzole Corrente assorbita: Effetti luminosi:
t: A
1. .:..1 r..., ì selezk.mabili
per gli header standard Ardui no, tra le quali trovia-
• è

mo quelle corrispondenti al +5V e a massa.


l LED Neopixel che complessivamente la scheda
deve pilotare sono 144 e questo numero non è
casuale, bensì risulta da un compromesso tra le tagliata ad ogni LED, vale a dire che ciascun LED
dimensioni desiderate per il sistema, quindi per la può essere gestito individualmente, ma anche che
fiamma, e le caratteristiche dei prodotti disponibili dalla striscia possiamo ricavare strip del numero
in commercio; nel caso specifico abbiamo deciso di Neopixel desiderato.
di ricavare le strip da un rotolo di LED Neopixel L'alimentazione della striscia è standard a 5 Vcc e
commercializzato dalla futura Elettronica {codice l'assorbimento massimo con tutb i LED accesi di
2846-1 MNE0144 di www.futurashop.it) che bianco alla massima potenza è 8,5A, ma questa
conta, appunto, 144 diodi neopixel. Si tratta di condizione nel nostro circuito non si avvererà
una striscia in rotolo indirizzabile contenente LED mai, perché al massimo avremo un assorbimento
RGB ad alta luminosità, flessibile e resistente alle inferiore a 1,5 ampere.
intemperie perché caratterizzata da grado di pro- Dal rotolo bisogna ritagliare 5 strisce e collegarle
tezione lP67, caratteristica, questa, che potrebbe non casualmente, bensì con un certo ordine che
essere interessante nel caso voleste realizzare un è quello che il firmware si aspetta; per l'esattezza
gadget da far funzionare all·esterno. abbiamo la seguente corrispondenza fra pin di
Ogni singolo LED (SMD5050) integra il chip di con- Arduino e numero di LED:
trollo. Ciascun chip comunica con il successivo tra- · 08 pilota la strip da 27 Neopixel;
mite una linea trasferendo le informazioni ricevute. · 09 pilota la strip da 31 Neopixel;
La distanza tra i LED è 7 mm e la strip può essere · 01 O pilota la strip da 41 Neopixel;

. ,. .

;: •• lj •

~·.Listato 1·
;- '

. . ',',-: ;, . - '. ,,, ·" .. "·.'.' '.' " ... -"- ·.

Il define dat~ Pil'ls fpt all ·3 .LED strip~


;; ·;; :~" '
#dèfine. STRIP1_DATA_PIN 8 . ~' ' '

#define $TRIP2_DATA_PIN 9
. #define ·sffiiP3,:DATA_PIN 10
#dèf'fne .STRlP4...:DATA_PIN 11 . i· : .

·.. #defi~e. STRIP5i DATA_PIN 12.


#ctefi~e puls~rf' .s .·. . ::;

. #define pÙlsoff .i · ....


. .. .. . . . .

. :1 fdefi.ne ·. COLOR...dRòER GRB · :·. ·


7 • ·- •

. :. , .. ":· '

. #defim~ NUM~LEDS~l '27 ·.· .. · ., .. " .


~ . ,,

· #define ·flUM.:.J. eos~z


3'1 ·
. #de fine NUM~LEDS_3 '41 ~. · · ·
#define NUM LEDS 4 28 .
ii •
. "' "'

#define. NUM=LEDS~5 1-7 . "-'' ,.: ".,;.

- ' ·•
.' · · · l l ' 'fas.t~r·· or .·~iQwer ' 'b,~:ttnÌiig. fire ... •.

#defi~ ~5
:··;;

. èOOi.ING · ··11 Less c,tiòl~ng ·~ ··talle;r· fla~es ~


Default 55, suggested, ran.ge 20~1.~0 • ·. . ··
· #def'irie. SPARKING ·50 · . 1/Higllér cha.nce ·= mor~. roaring, fire. Defa'u lt . 120~ ·suggest~d dmge 50~200 ..
#defin·~ BRIGttrNE'ss 12s. · l/Sei glooal btightness her~·. 0"-255 . · · ·
#défine FADE 40 · ... · · · . i/,Hotl·:s19wly· the; · te~s · fade to off " · · ·
•·:: ::
. . .. : ..

33
l
j

.. Schema di CABLA GIO m

17 28 41 31 27

Alimentatore USB •
+SV

+SV GND

c.

· D11 pilota la strip da 28 Neopixel; In esso potete notare le istruzioni che definiscono
· D12 pilota la strip da 17 Neopixel. il numero di LED componenti i singoli spezzoni di
strip, che sono quelle da andare a modificare nel
Si può personalizzare la disposizione dei LED RGB caso intendiate cambiare forma e lunghezza delle
ed anche il numero di quelli componenti ciascuna porzioni di striscia a LED; i valori attuali corri-
porzione, ad esempio per disegnare la zucca tipica spondono alle lunghezze predefinite delle strip
di Halloween con gli occhi luminosi, ma occorre riportate nel disegno in cima alla pagina.
mettere mano al firmware e alla rispettiva librera. Inoltre se volete (potete farlo tranquillamente)
In tema di firmware, sebbene la libreria Fastled aggiungere canali e quindi strip Neopixel rispetto
sbrighi buona parte dei compiti, lo sketch risulta alle cinque previste, dovete aggiungere le relative
comunque lungo per poterlo pubblicare intera- define e adeguare lo sketch, che potrete scarica-
mente in questo articolo, quindi ne riportiamo re dal nostro sito www.elettronicain.it insieme ai
solamente un estratto nel Listato 1 dove potete file del progetto e ai disegni per poter ricavare la
vedere le "define" del codice. fiamma dal plexiglass.

• l

34 •

'

155

Fig. 1
le parti in
plexiglass
componenti
il telaio.
358

,...,.___ _15_ 3_ __.,_, J....,...__ _189_:__,4_ __.,..,

REALIZZAZIONE PRATICA on-line su www.futurashop.it) presso la quale è


Ciò detto, passiamo ora alle note costruttive, pre- possibile reperire tutto il materiale occorrente,
mettendo che la scheda Ardui no Business Card si compreso il rotolo strip Neopixel da 144 LED e i •

acquista già pronta dalla Futura Elettronica (anche pannelli tagliati a laser con cui preparare il telaio

Fig. 2
Come montare
le strip di LED
Neopixel in
modo che una
volta accesi
riproducano
correttamente
l'aspetto della
fiarnma.

'


35
..

r '

l n

che abbiamo pensato per dare alla fiamma un TELAIO E ASSEMBLAGGIO


aspetto più accattivante e nel complesso elegante Il resto è tutto nella parte meccanica, ossia nel
abbastanza da fare del sistema proposto anche telaio, che noi abbiamo pensato come vedete
un gradevole elemento d'arredo da tenere su un dalle foto proposte in queste pagine (in particolare
tavolino da salotto o su uno scaffale per creare dalla Fig. 1): si tratta di una struttura in plexiglass
una certa atmosfera. spesso 3 m m formata da:
Ricordiamo che dal rotolo bisogna ritagliare cinque · una lastra scavata internamente secondo la
spezzoni, da 17, 27, 28, 31 e 41 LED RGB. sagoma della fiamma che è la parte più avan-
La parte elettronica si collega basandosi sullo zata (misura 155x360 mm con base allargata a
schema di cablaggio visibile in queste pagine, 189,4 mm);
molto semplice ed essenziale: in pratica si tratta di · una lastra rettangolare in plexiglass bianco del-
collegare con un filo elettrico in guaina (meglio di le stesse dimensioni, applicata dietro ad essa a
diverso colore per non confondersi) uno spezzone diretto contatto o spaziata tramite distanziali •
di strip a LED con il rispettivo pin di Arduino, quindi da 5o 6 mm (misura 1 mm in meno di quella
di portare, con della piattina rosso-nera da 2x0,5 frontale su ciascun lato);
mm di sezione, i 5 volt dalle piazzole GND e 5V la- · una lastra di fondo in plexiglass nero delle
terali della scheda (quelle destinate ad accogliere stesse dimensioni di quella frontale, cui si ap-
gli header Arduino) ai contatti omonimi della prima plicano, incollandole mediante nastro biadesivo
strip Neopixel e da questi ponticellare e ripetere morbido o silicone sigillante, le strip di LED
l'alimentazione verso le altre quattro, sempre come mostrato nella Fig. 2.
impiegando dei fili rosso e nero, rispettivam ente
per +5V e GND. Le tre lastre sono unite mediante quattro set di
Ricordiamo che la strip di minore lunghezza va colonnine distanziali cilindriche e altrettanti bulloni -
collegata con il contatto dati in ingresso DI N al 4MA con dado, che nel nostro caso specifico ab-
D12 della Ardui no Bi:-Card, quella da 27 LED va al biamo scelto a brugola con testa cilindrica, come
D8, lo spezzone da 28 LED va connesso con DIN vedete dalle foto del prototipo.
a D11, quello da 31 elementi va al D9 e, infine, lo Sempre nella nostra versione, abbiamo previsto
spezzone da 41 LED va collegato con DIN al D1 O un contenitore stampato in 3D con la nostra
• della scheda. stampante 3Drag, fatto di PLA nero; anch'esso,
L'alimentazione per l'insieme passa dalla scheda e come le lastre in plexiglass, si acquista presso
può essere prelevata da un alimentatore lineare o la Futura Elettronica. Questo involucro è stato
switching, ad uscita stabilizzata a 5V- 1,5A dota- avvitato dietro alla lastra posteriore che fa da
to di cavetto terminante con connettore microUSB. supporto alle strip Neopixel ed ha il coperchio po-

Fig. 3
Il contenitore
pensato per la
scheda, avvitato
sul retro della
piastra di fondo.

...

..

36
-

llmfDIHITimJDBIOIJIDll ron [liTimiiDlDlliiiimDIIIlrlliRfliiliD l rm.I Hillliliiiiiiiiiiflfl ll·o


/

steriore con due copri-pulsante flessibili ritagliati


in modo da premere sui tasti P1 e P2 della scheda
Business Card (Fig. 3).
• Quanto ai collegamenti, potete prendere spun-
to dalla Fig. 4,· dove vedete i fil i utilizzati per il
cablaggio alle strip di LED, che sono parte di
Fig. 4
una piattina multicolore; notate come i fili siano
' - Collegarnenti
fermati mediante del nastro adesivo ed escano aUe strip a LED.
posteriormente da una feritoia ricavata nella
lastra su cui sono montate le strip, così da rendere
agevole il cablaggio con la scheda, che a prescin-
dere dalla scelta o meno di dotarla del contenitore
..
stampato in 3D, sarà da collocare posteriormente
per non interferire con il resto della struttura, né
con la propagazione della luce prodotta dai LED
,
Neopixel. per caricarlo nella memoria della scheda Ardui no
Naturalmente il tipo di involucro da noi pensato e Business Card.
proposto in queste pagine dalle foto è un'idea ed Terminato il caricamento, sconnettete il cavetto
/
una delle tante possibilità; nulla vi vieta di ripen- dalla presa microUSB e il circuito è pronto per
sare la struttura ed anche la forma, ad esempio l'uso; collegate quindi il connettore dell'alimenta-
semplificando l'insieme e componendolo di due tore alla microUSB e premete il Pulsante 1 per far
sole lastre rettangolari o quadrate, una di fondo e accendere la fiamma: vedrete subito in funzione •
una frontale in plexiglass bianco, cu i poi appliche- la stupenda animazione di cui è capace, che verrà
rete della pellicola adesiva nera ritagliata con la enfatizzata se il dispositivo verrà acceso in un
sagoma della fiamma scavata. locale poco illuminato.
Insomma, potete lanciare a briglie sciolte la vostra
fantasia/ perché quello che conta è il cablaggio CONCLUSIONI
elettrico; il resto si adatta alle vostre esigenze. La nostra fiamma a LED Neopixel è un ottimo gad-
get da utilizzare in molteplici situazioni, facilmente
PROGRAMMAZIONE realizzabile e pienamente personalizzabile sia
DELLA SCHEDA E COLLAUDO sotto l'aspetto meccanico (si può cambiare a piaci-
Per quanto riguarda la programmazione del siste- mento la sagoma e di conseguenza la disposizione
ma (il firmware) lo sketch si carica come in qualun- delle strip a LEDL sia per quel che riguada l'elet-
que scheda Arduino, nel senso che si programma tronica; sotto questo aspetto/ come accennato/
utilizzando I'IDE Ardui no come fosse una scheda potete modificare il numero e la quantità di strip
. di terze parti; allo scopo bisogna aprire l'ID E Neopixel e rispettivi LED adeguando lo sketch.
(dev'essere almeno una versione 1.6.x) e impartire Buon lavoro! c
il comando di menu Strumenti>Scheda>Boards
Manager con il quale accedete al menu che riepi-
loga le schede disponibili, nel quale farete clic su
Arduino Leonardo.
A questo punto si deve connettere la Ardui no
Bi-Card al Personal Computer tramite un cavetto
- terminante con il connettore microUSB, aprire la Cosa occorre?
COM assegnata ad essa, fermo restando che du- Il materiale presentato in questo articolo è disponibile
rante la programmazione non bisogna alimentare presso Futura Elettronica. La scheda base del progetto
(cod. FT1120M) è in vendita al prezzo di Euro 14,90, la
la scheda con altre fonti di tensione/ altrimenti si
striscia Neopixellunga 1 metro da 1441ed ad alta densità
verificherebbe un conflitto fra l'alimentazione USB (cod. 1MNE0144) è disponibile a Euro 33,00, mentre le parti in
e quella esterna, con conseguente danneggia- plexiglass e il contenitore stampato in 3D (cod. FLAMEPART)
costa Euro 79,00. l prezzi si intendono IVA compresa.
mento della scheda e o del computer.
Ora andate ad aprire {File/Apri) lo sketch scaricabi- Il materiale va richiesto a:
,
le dal nostro sito www.elettronicain.it insieme agli Futura Elettronica, Via Adige 11, 21013 Gallarate (VA)
altri file del progetto e cliccate sul pulsante di invio Tel: 0331-799775 - http://www.futurashop.it

37
'
Mercury System è un sistema di sviluppo modulare, hardware/software,
specificamente progettato per permettere lo sviluppo di applicazioni loT
e in generale orientate alla connettività. Il sistema è composto dalla Base
Board (cod. BB11 O) che è il "cervello" di tutto il sistema e contiene l'unità
cod.BB110 logica principale (un microcontrollore) oltre ai vari bus di comunicazione
€ 23,00 ed interfacce e da un set eterogeneo di schede slave (SB) e schede
modem (MB) con le quali interagisce.

LE SCH EDE DEL SIST EMA MER CUR Y .··'.?.:\·r


. ....
.

SCHEDA DHT22
SCHEDA SLAVE PER SCHEDA A ULTRASUONI SCHEDA SCHEDA MODEM CON SENSORE DI
SENSORI E ATTUATORI INTERFACCIABILE CON 2 RELÈ BLUETOOTH TEMPERATURA E UMIDITÀ

cod.SB810 cod.SB310 cod.SB110 cod. MB31 O cod.SB330


€ 13,00 € 19,00 € 17,00 € 14,00 € 2o,oo
SCHEDA HSD (HIGH SIDE SCHEDA A INFRAROSSI SCHEDA PER STRIP A LED SCHEDA EXPANSION SCHEDA PER
DRIVER) A 4 CANALI 2 CANALI O RING NEOPIXEL DISPLAY 16X2 CONNESSIONE
PLANARE DI 2 SCHEDE

cod.SB140 cod.SB320 cod.SB120 cod.EB210 cod. EB110


€ 25,00 € 12,00 € 4 ,oo € 23,00 € 7,oo
SCHEDA PER CONNESSIONE SCHEDA CON SCHEDA CON SERVO SCHEDA PER SCHEDA CON RELÈ PER
Dl4 SCHEDE CONNETTIVITÀ WiFi A 6 CANALI GESTIONE ALIMENTAZIONE . CARICHI FINO A 1OA

cod. EB111 cod. MB21 O cod.SB130 cod. PB11 O cod.SB111


Prezzi IVA inclusa. € 12,00 € 12,00 € 16,00 € 17,00 € 17,00 ..
Futura Group srl
~- FUTURA www .futur asho p.it Via Adige, 11 • 21013 Gallarate (VA)
Caratter istiche tecniche di questi prodotti
-., ELETTRON/CA o~) Tel. 0331/799 775
e acquisti on-line su www.fut urashop .it
del PROF. MICHELE MENNITI

ono trascorsi due anni dalla presenta-


zione, sul numero 216 di giugno 2017,
Realizziamo la popolare del progetto per la realizzazione di
una slot-machine palmare; il successo
macchina da sala ottenuto da quella idea, sommato alle
giochi in versione numerose richieste da parte dei nostri
lettori, ci ha spinti a realizzare un ver-
casalinga, per divertirsi sione "professionale': con conteggio dei
in compagnia, con tanto punti e relative vincite in denaro. La nostra idea è sempre quella
di produrre tanta didattica per i meno esperti, spiegando tutte
di gettoniera e vincite le tecniche adottate, sia hardware che software, in modo che
in denaro, ma senza possano essere poi riutilizzate per altri progetti, e promuovere
così questo meraviglioso mondo dell'elettronica amatoriale
trucco né inganno. applicata.
Prima puntata. Però in questo caso continuiamo anche a perseverare nell'idea
di tentare di fare qualcosa di valido contro la ludopatia di cui

39
'
r .Se e~ elett i co j
.....

SCHEDA BASE ,.

+12V +SV +SV +12V


CN2
l2V RNS
3
5V . ------c~1~
~-----~~--
2
GND CB 21 19 2 3 4 5 6 7 8 9
1 •
VCC DCPRG 28 8 11 '
POWER 7 Rl
/ /."''/,
,..,.,,
auro---~
1
------ ----1118
7 12
..
'///, OUT 1-------- ---117
2
20
.----- IREF
r

< R3
+12V
'/.'/,
COM
9
••
J1 U2 '///,
5V 7 < R2 •
2
8
7
6
5
9
4 ..
3
1

COM
GND VPRG +SV..__.,..._
4 5 6 7 8 9 9
22 27
-N'v{'- C 1 '///, +12V
'///, '///, +5V
RN10 2 3

Cl
+
SJ1 SJ2 SJ3
'///, 7 20
) ) ) 10 16 es C10
VCC AVCC 4
VOD VMOT '///, '///,
5
L.....--------11 P03 '--- MS3 CN2
15 3 STEPPER
~--------------~P81
19 2 MSc M1 14 28
+5V ~----------------~P85 ~----- MSl 28 ~-------~ 1
16 5 13 2A
CN6 ~------------------~P82 . - RST 2A ~-------~
17 12
AUDIO L.....------------- --------1 P83 '"-- SLEEP lA -----------c .
sv 1'f 1 11
1 PBO -e-------------7 EN 18~---------~
AUDIO 2 12
3 r--------------- ------------ POO PDS - - - - - - - - - - - - - - STEP
GND 13 8
2 PD7 11-- - - - - - - - - - - 1 DIR
GND
S1
U1 y 9,15
1
RST 1---e---< /"
,w,/· ·/','

CN1
PULSANTI 9 C2
.
XTAL1 ------.. ......____,;
P4 11
1 r--------------~POS +5V +5V +12V
2
P3
r----------------~Po~
P2
3 r-------------------~PC5
28
6
.....
.,..Q1

R13
R14
Pl 27 10 C3
4 r----------------------~P04 XTAL2~~~~~ >
START 26 •
5 r-----------------~PC3 <
GND '///,
6
4
P02~------------------------------
'///,

3
18
P84~--------------------JA\
R12 r.
----+.-
~
T1
~-----------------~POl ~ )
1 GND AGNO

'///, .....8 22
,/.'/., ,/. '/, '///, '///,

,.

40


'
-

sono affetti molti giocatori appassionati a questo C2-C3 a formare l'oscillatore esterno. Il resistore di
tipo di apparecchiature, che non di rado dilapidano pull-up (uno degli otto resistori da 1O k contenuti
CARATTERISTICHE
cifre enormi in brevissimo tempo. nella rete resistiva SIL RN10) serve per garantire il
TECNICHE
Come tutti sanno il principio di funzionamento di livello HIGH al pin di RESET, mentre il pulsante S1
massima deiJa slot machine classica si basa su una ha la funzione portare questo pin a massa (LOW)
~ Funzioni:
serie di tamburi sui quali sono impressi svariati tipi per resettare il micro e riavviare il firmware. attivazione a gettoni.
di simboli. Al comando di start segue la rotazione Quando si usa il convertitore Analogico-Digitale estrazione e pagamento
vincite in gettoni
casuale di questi tamburi che, quando si fermano, del micro è bene prevedere un condensatore di
generano una combinazione più o meno vincente, stabil izzazione da 100 nF, da collegare tra il suo
ma spesso perdente; infatti è ben noto che queste pin 21 (AREF) e la massa; nel nostro caso abbiamo ~ Visualizzatore:
display alfanumerici
"macchinette" siano programmate all'origine per fatto un uso molto particolare deii'ADC/ ed abbiamo
generare vincite agli utenti, ma soprattutto incassi volutamente omesso questo condensatore; nella
ai gestori, e quindi sono molte più le perdite che le sezione in cui descriveremo il firmware chiariremo il ~ Segnalazioni:
Suoni di gioco
vincite. motivo di tale scelta. e visualizzazione su dispJay
Noi abbiamo adottato alcuni accorgimenti per Vista la complessità del circuito, lo descriveremo
dare la massima casualità possibile alla rotazione per sezioni, iniziando da quelle collegate con parti ~ Alimentazione:
dei nostri tamburi, che in realtà sono dei display esterne al PCB principale, e terminando con l/ampia +5Vcc 1 8A +12Vcc 600 mA
• f

alfanumerici di grandi dimensioni, e non a caso, ab- sezione dei display. Nella descrizione faremo
biamo sperimentato come il numero delle combina- riferimento ai pin fisici del microcontrollore e non ai ~ Comandi di gioco :
zioni vincenti sia decisamente più elevato di quello corrispondenti pin digitali o analogici di Arduino, dei A puisantì

delle macchinette presenti nei locali autorizzati ad quali parleremo poi quando tratteremo il firmware.
esporle al pubblico.

Come vedremo, coloro che realizzeranno il nostro Gruppo Pulsanti
progetto potranno intervenire sul firmware sorgen- l cinque pulsanti di gioco (START e P1, P2, P3, P4)
te, per aumentare o diminuire le possibilità vincita, sono collegati, mediante il connettore CN 1, rispetti-
agendo sulle combinazioni riconosciute e sui vamente ai pin 26, 27, 28 6 e 11, senza particolari
1

punteggi, in modo da rendere il gioco il più possibile accorgimenti; da firmware/ infatti/ per i quattro
stimolante. pulsanti P1 ~P4 saranno abilitati i resistori di pull
Per la realizzazione completa della nostra slot up interni, in modo che il micro possa leggere
machine abbiamo pensato anche ad un mobiletto correttamente la chiusura a massa di ogni singolo
realizzato artigianalmente, per la cui replicazione pulsante, quando viene premuto.
forniremo tutti i necessari dettagli; naturalmente
ognuno potrà poi decidere di apportare modifiche Stepper motore driver
o migliorie, anche in base al le proprie competenze Lo stepper motori un NEMA 17 da 1,5 A, che servirà
di DIY. per i movimenti di apertura e chiusura del cassetto
delle monete, necessita/ come ben sanno tutti
SCHEMA ELETTRICO coloro che si occupano di robotica o in generale
Il nostro circuito si basa su quattro display alfa- di meccanica elettronica, di uno specifico driver di
numerici giganti che generano una combinazione potenza, siglato M 1 nello schema elettrico.
dei 19 simboli programmati dal firmware caricato Per il nostro prototipo abbiamo utilizzato un model-
nel microcontrollore. Il pulsante di START avvia la lo basato sul chip A4988 della Allegro, ma ormai la
partita e, una volta uscita la prima combinazione, reperibilità a basso costo del modello più prestante
altri quattro pulsanti permettono di decidere su basato sul DVR8825 fa sì che sia quest'ultima
- quali display agire, per cambiare il simbolo e tentare la scelta migliore; in ogni caso i due driver sono
di fare punteggio o aumentarlo; altri due display corrispondenti pin-to-pin/ si tratterà solo di fare
numerici, sempre di grandi dimensioni, mostrano il una taratura adeguata della corrente prima del loro
credito/punteggio accumulato. utilizzo/ in base al modello prescelto.
Il cuore del nostro circuito è rappresentato dal mi- Per pilotare correttamente il driver, e quindi il moto-
crocontrollore ATMEL ATmega328P-PU (U1 ), ormai re/ servono tre pin del micro da collegare ai segnali
notissimo per essere il componente principale della ENABLE, STEP e DIR; il primo (p in 1) è collegato al
scheda di prototipazione Ardui no/Genuino UNO . pin 14 di U1 ed è mantenuto a livello HIGH median-
...
E configurato nella versione stand-alone, senza te uno dei resistori di RN 1O; lo STEP (p in 7) è colle-
bootloader, con il quarzo Q1 ed i due condensatori gato al pin 12 di U1, mentre il DIR (p in 8) è collegato

41
..
r

al pin 13 di U1. Approfondiremo il funzionamento di tipo JST a 5 pin.


questi tre pin nella parte dedicata al firmware. Per semplicità di collegamenti, ed anche conside-
l pin RESET (5) e SLEEP (6) sono cortocircuitati tra rando lo scopo hobbystico del progetto, abbiamo
loro, come previsto dal datasheet dell'integrato per preferito usare la comunicazione seriale e non
la nostra tipologia di utilizzo. quella parallela, che sarebbe stata più veloce ed
l pin M51-M52- M53 (2,3,4) servono per settare efficiente, ma anche più complicata da gestire.
la risoluzione degli step, in condizioni normali essi In genere la gettoniera è già programmata per
sono tutti impostati su LOW {jumper a saldare libe- accettare le monete dell'eurovaluta, ma per i nostri
ri), tale condizione è definita "full step"; i pin 11, 12, scopi la riprogrammeremo, spiegando l'operazione
13 e 14, collegati al connettore CN2, sono destinati punto per punto.
agli avvolgimenti del motore. Per il momento vediamo il settaggio del dip switch
Per il resto unico particolare degno di nota è il con- SW1 e l'interfacciamento con il nostro circuito.
densatore C9 da 100 ~F, fortemente consigliato dal Come visibile nella Tabella 1, il dip switch ha4
'l

datasheet per proteggere lo stesso driver contro interruttori: SW1-1 setta il livello logico degli
eventuali spike dovuti al motore. impulsi in uscita dal pin 2; SW1-2 imposta il tipo di
Il minuscolo trimmer presente sulla scheda del dri- sicurezza (alta o bassa) verso le monete che non
ver serve per la taratura in corrente, vedremo que- rispettano totalmente i requisiti acquisiti durante la
sta cosa nella sezione della realizzazione pratica. programmazione; SW1-3 imposta il tipo di trasmis-
sione (seriale o ad impulsi); SW1-4 imposta il livello ...
Gettoniera logico necessario per inibire la gettoniera.
Questo oggetto (venduto da futurashop.it con il Nel nostro caso tutti gli switch sono su OFF,
codice GETION 1), le cui caratteristiche sono esattamente come visibili nella Fig. 1, per cui: gli
elencate nel riquadro dedicato, è visibile in Fig. 1; impulsi in uscita sono a livello logico LOW (il segnale •

è semplice da usare e perfettamente funzionante. passa da 5 V a O V), la sicurezza è bassa, quindi


Nelle varie inquadrature abbiamo ingrandito i tre saranno accettate anche monete leggermente fuori
.
particolari che dovremo utilizzare per programma- standard, la trasmissione sarà di tipo impulsivo (ad
zione e collegamento della gettoniera, ossia il dip- ogni tipo di moneta, in fase di programmazione,
switch a 4 poli, il display a due cifre e il connettore sarà associato il numero di impulsi che la gettoniera

Fig. 1
La gettoniera
programmab ile
GETTON1 e il cavo
di collegament o.

CN3 5
lnhibit

N.e.

GND

Signal

+12V

1

..

42
-
(

dovrà inviare al microcontrollore), la gettoniera sarà SWl 1 2 3 4


inibita {rifiuterà qualsiasi tipo di moneta) quando il Posizione Tipo Impulso Sicurezza Trasmissione Inibizione
suo pin 5 si troverà allo stato logico LOW.
ON LOW ALTA RS232 HIGH
Il connettore da utilizzare per collegare la gettonie-
ra alla nostra scheda è quello JST a 5 pin.
OFF HIGH lO W
La gettoniera viene fornita di un cavetto specifico
per questo connettore, i capi opposti liberi dei fili Sezione audio
Tabella 1
vanno collegati al connettore CN3 della scheda. Una slot machine che si rispetti deve avere ovvia- Le impostazioni del
Il connettore CN3 è stato collegato sul PCB in modo mente una sezione audio con tanto di generatore di dip-switch della
gettoniera.
che il cavetto possa essere realizzato senza incroci suoni e segnalazione delle vincite. Abbiamo cercato
di fili, quindi pin-to-pin. una soluzione relativamente economica, natural-
Ai pin 1 {filo rosso) e 3 (filo nero) va collegata mente ognuno potrà poi decidere come realizzarla,
l'alimentazione di 12V, con il positivo al pin 1; il sapendo di avere a disposizione, sul connettore
pin 2 (filo bianco) è quello che emette gli impulsi al CN6, l'alimentazione da 5 V ed un pin di abilita-
ricevimento delle monete ed è collegato al pin 4 di zione collegato al pin 2 di U1. Abbiamo utilizzato
U1 (corrispondente aWinterrupt O); il pin 4 {filo mar- una board basata sul chip ISO 1820, la cui uscita
11
rone) non serve per i nostri scopi ma lo col leghiamo Speaker" è stata collegata in parallelo agli ingressi
ugualmente al CN3 per non !asciarlo libero; il pin L-R di un modulo finale audio stereo basato sul chip
5 (filo blu) viene mantenuto a livello HIGH dal resi- PAM8403, alle cui uscite abbiamo applicato una
stare R13, quando il pin 18 di U1 viene impostato coppia di ottimi altoparlanti da 3W.
da firmware a livello logico HIGH, il transistor T1 Nell'apposito riquadro sono riepilogate tutte le ca-
(un NPN BC54 7) va in conduzione e il pin 5 si viene ratteristiche tecniche dei componenti della sezione

a trovare ad un livello logico LOW, prossimo a OV, audio.
quindi la gettoniera viene inibita. l 5 volt (p in 1 e 2 di CN6) alimentano direttamente
Poiché, come vedremo nella sezione firmware, la il modulo di potenza mentre per la scheda au-
gettoniera viene disabilitata quando si raggiunge il dio è stato necessario ridurre la tensione a 3,3 V
.
numero di crediti acquisibili mediante monete, ab- mediante un piccolo regolatore di tensione lineare,
biamo aggiunto un'indicazione visiva di tale stato: il montato direttamente sulla scheda audio con un
LED LO 1, la cui corrente viene limitata dal resisto re condensatore elettrolitico da 1O ~F con funzione
R14. di filtro. Il pin 3 di CN6 è collegato al pin 2 di U1 e
Il LED si accende nel momento in cui il pin "INHIBIT" serve per abilitare l'ascolto delle registrazioni mes-
viene posto a zero logico, quindi mediante con- saggi, pilotando l'ingresso PLAYL della scheda audio
trollo del firmware (inibizione comandata) oppure per un intervallo di tempo ben determinato.
ogni volta che si inserisce una moneta, per evitare In pratica la nostra scheda audio dispone di circa
che due monete passino in successione troppo otto secondi di registrazione, abbiamo utilizzato il
ravvicinata, falsando il numero di impulsi (inibizione classico "ta-da" dei suoni di Windows, registran-
automatica). done uno ogni 1,5 secondi (in pratica il suono più
una pausa per arrivare ad un totale di 1,5 secondi)
Switch di finecorsa il tutto per quattro volte; negli ultimi due secondi
Per il controllo del movimento del cassetto con- abbiamo invece registrato una serie di "ta-da"
tenente le monete inserite per giocare, abbiamo ravvicinati. L'ingresso PLAYL esegue la registrazio-
previsto uno switch di fine corsa, che permetterà al ne memorizzata nel chip per tutto il tempo in cui è
firmware di posizionare correttamente il cassetto posto ad un livello HIGH. Il nostro firmware prevede
ad ogni accensione della macchina, pilotando in 5 tempistiche, in base a cosa vogliamo segnalare
modo idoneo lo stepper motor. al giocatore: 1,5 secondi (coppia di simboli ugua-
Lo switch, del tipo normalmente aperto, è collegato li), 3 secondi (tre simboli uguali), 4,5 secondi (due
al pin 3 di U1 mediante il connettore CN4; tale pin coppie di simboli uguali), 6 secondi (quattro simboli
viene collegato a massa quando lo switch viene uguali), 8 secondi (vincita). Per esempio se i display
chiuso dal contatto col cassetto. mostrano un tris di simboli uguali, il pin 2 di U1
Lo switch è stato fissato sulla base del mobile in viene impostato su HIGH per 3 secondi e quindi si
esatta corrispondenza col punto di totale chiusura ascolteranno due "ta- da"; subito dopo il pin tornerà
del cassetto delle monete, come vedremo nella a livello logico LOW interrompendo l'esecuzione
sezione dedicata al montaggio. della registrazione.

43 l

'
'

La parte audio della slot-machine è composta dai tre sottosistemi descritti


di seguito, che sono un registratore digitale, un finale BF e gli altoparlanti.
N.B.: i resistori vanno montati esattamente come
Scheda audio con ISD1820 (codice Futurashop 8300-YB390) illustrato in Fig. 2!
• Alimentazione 2, 7 V .,. 4,5 V. La stessa figura mostra tutti i collegamenti effet-
• Registra tramite microfono incluso nella scheda, alta qualità vocale. tuati per la sezione audio, compresi questi quattro
• Tempo di registrazione circa 10 s. componenti esterni alle schede.
• Riproduzione singola, ciclica manuale e automatica in loop.
• Uscita altoparlante. Sezione alimentazione
• Misure: 5,4 cm x 3,8 cm x 1,5 cm. L'intero circuit o assorbe circa 2 A nelle condizioni di

massimo consumo e necessita di tre diversi valori
Modulo finale PAM8403POT (codice Futurashop 2846-PAM8403POT) di tensione: 12 V per i display numerici, lo stepper
• Amplificatore audio in Classe D. motore la gettoniera, 5 V per i display alfanumerici,
• Potenza 3W al10% THD (Distorsione Armonica Totale) con un carico di 40 il microcontrollore, gli integrati della sezione display
e un'alimentazione di 5 V~ e l'amplificatore audio, 3,3 V per la scheda audio.
• Senza filtro, basso consumo di corrente a riposo. Abbiamo usat o un alimentatore switching da 12
• Efficienza fino al 90%. V 3 A (codice 8245-ADL-40-12 reperibile presso
• Protezione da cortocircuito. Futura Elettronica) per fornire questa specifica
• Protezione termica. tensione al circuito e, direttamente sulle sue uscite,
abbiamo collegato, mediante due spezzoni di filo,
L'altoparlante 2846-AP5243W uno schedino step-down (codice MP1584ENDCDC)
• Altoparlante miniatura con impedenza 4 ohm. in grado di ridurre la tensione a 5 V e fornire una
• Potenza 3 watt. corrente di 3 A, per alimentare il resto del circuito.
• Dimensioni magnete 44,7 mm. Per quanto riguarda i 3,3 V necessari alla scheda
• Dimensioni (m m): 52,8x52,8x26,6, peso: 102 grammi. audio, abbiamo usat o un regolatore LM78033 (3,3
'
V 0,5 A) in contenitore T0-92, con un condensatore
di filtro da 10 ~F 12-16 V.
• Le due alimentazioni da 12 V (pin 3) e 5 V (pin 2),
assieme al la massa comune (p in 1) sono state
~ Le Per interfacciare il pin 2 di U1 (alimentato a 5 V) con collegate al circuito mediante il connettore CN5 a
caratteristiche
l'ingresso PLAYL della scheda audio (alimentata tre pin.
tecniche della •
board 1501820, a 3,3 V) è stato necessario adottare un partitore In Fig. 3 abbiamo illustrato la realizzazione della se-
del modulo di di tensione costituito da due resistori, uno da 1O zione di alimentazione, mentre la Tabella 2 riporta
potenza audio
PAM8403POT kohm e l'altro da 15 kohm, in modo da ridurre il tutti gli assorbimenti in corrente nelle varie fasi di
e degli segnale a circa 3 V. uso del la macchi na. ·
altoparlanti.

..

Fig. 2
l cotlegamenti ..
delta sezione
audio.

3
78033

44
Il

3
12V
CNS

positivo di alimentazione. Infine i pin 20 (IREF, cor-


rente di riferimento per i segmenti} sono collegati a
massa mediante i resistori R3~R7 da 3,9 kohm, per

limitare la corrente per segmento a circa 1O mA (la
formula per il calcolo della resistenza è fornita dal
Fig. 3 datasheet dell'integrato).
La sezione di
alimentazione Infine i condensatori C47C8 hanno funzione di
12 V e 5 V. disaccoppiamento deWalimentazione.
l TLC5940 sono degli ottimi integrati per il pilotag-
gio di serie di display, ma sono anche piuttosto de-
licati, quindi abbiamo interposto tra ognuno di essi
ed il relativo display una coppia di ULN2803 (array
di transistor a darlington), in modo da far erogare
a questi ultimi la necessaria corrente di pilotaggio •
Sezione
...
displav dei segmenti. Per pilotare ogni display alfanumerico
E costituita da due gruppi di display, quattro alfanu- (KEM-23011-BSR o F23102BH ad anodo comune),
merici (DSP1 ~oSP4) e due numerici (DSP5-0SP6), che nel nostro caso ha 16 segmenti (Fig. 4) servono
ma la loro gestione è unitaria, cioè è demandata a tutte le uscite da OUTO ad OUT15
. del relativo
cinque integrati TLC5940 (U2, U5, U8, U11, U14} TLC5940; poiché ogni ULN2803 dispone di otto
collegati tra loro e pilotati dal microcontrollore U1, darlington, sono necessari due di questi buffer di
con l'ausilio di una specifica libreria. l segnali di ogni corrente per ogni TLC5940; gli ingressi dei dar-
TLC5940 vengono bufferizzati da due ULN2803 lington richiedono un resistore di pull-up, abbiamo
(U3, U4, U6, U7, U9, U10, U12, U13, U15, U16), quindi fatto ricorso a delle reti resistive tipo SI L;
indispensabili per poter usare display di grandi ognuna di esse è costituita da otto resistori da 1O
dimensioni come nel nostro caso. kohm, che hanno un capo in comune, che va colle-
Il pilotaggio dei TLC5940 avviene mediante quattro gato ai 5 V, mentre l'altro capo viene collegato alle

pin di U1 che generano altrettanti segnali: linee di collegamento tra TLC5940 e ULN2803; la
5 (GSCLK), 15 (XLAT), 16 (BLANK) e 19 (SCLK), col- configurazione standard prevedrebbe un resistore
legati a tu_tti i TLC5940 in parallelo, e precisamente: di limitazione per ogni segmento, ma noi abbiamo
GSCLK ai pin 18, XLAT ai pin 24, BLANK ai pin 23 fatto ricorso ad un piccolo stratagemma, cioè ab-
- e SCLK ai pin 25. Abbiamo poi il pin 17 di U1 (SIN) biamo messo un solo resisto re da 1O oh m 1 Watt
che invia i dati al TLC5940 (pin 26 U5) che pilota il sull'anodo di ogni display (in serie all'alimentazione
primo display alfanumerico di sinistra. Da U5 esce il da 5 V); questo metodo non garantisce la stessa lu-
segnale SOUT (pin 17} che va al pin 26 di U8 (SIN), e minosità su tutti i segmenti ma, considerando il tipo
questa sorta di collegamento seriale prosegue fino
al pin 26 di U2 (il TLC5940 che pilota i due display 1
Condizione ramo SV rai110 UV
numerici). Questo tipo di collegamento implica che i
Accensione v~OO mA 150mA
sei display debbano essere pilotati sempre contem- >-- -
poraneamente, infatti prima di ogni aggiornamento No GAME 180mA lSOmA
-
dei display occorrerà impostare tutti i 78 segmenti No GAME con- audio 1200 mA+ 1,8 A 140mA
~
-
Inserimento moneta 180mA 600mA Tabella 2
che compongono di 4 display alfanumerici (16x4} e l consumi della Slot
i 2 display numerici (7x2), come accesi o spenti sin- Start GAME 260mA 380mA
_,, Machine PRO.
golarmente per comporre i simboli da visualizzare. GAME 220mA lSOmA
- - .

Tutti i pin 27 (VPROG) dei TLC5940 sono collegati a GAME con audio 200 mA+ 1,8 A lSOmA
--
massa mentre i pin 19 (DCPROG} sono collegati al Vincita 1200 mA 400mA

l
45
r -Sche e e, ico
SCHEDA DISPLAY IJII,IJIIIIJIIIIIIIJJIJJIII IIIIIIIIJJIJJIIIIIJ 111111111111 l 111111111111111111 lll ii i iiiJ Ili l

+5V +5V
RNl
-'W/v- c 1t
C4 21 19 2 3 4 5 6 7 8 9 +5V
vcc OCPRG 28 8 18
auro 1 - - - - - - 7
18 01
17
'/.~/,
OUTl - - - - - I7 02
2 6 16
OUT2
3
- - - - 5
I& U6 03
15
20 9 13 l't 17
IREF OUT3
4
- - - 4
15 04
14 4 R8
> OUT4 - - I4 os . 01 c B A2 Al
5 3 13 7 11
OUTS - 13 O& 02 OSPl AN2
< R4 OUT6
6 ._ 2
I2 07
12 3
E
19 F l,
'///, OUT7
7 1
Il
COM
08
11
'
U5
9
'///, 5
N
,'
' J

G J \
M
26 8 8 11 8
SIN OUT8 I8 08 L
23 9 7 12 15
BLNK OUT9
6
17 07
13
- K
25 10 H G2 Gl
SCLK OUTLO - 5
I& U7 O&
14
J
24 11 16 18 12 2
XLAT OUT11
12
- -
4
15 05
15
18
GSCLK OUT12 - - - I4 04
16
17 13 3
SOUT OUT13
14
- - - - 2
I3 03
17
OUT14 - - - - - 1
12 02
18
15
OUTLS - - - - - - Il
COM
01
GNO VPRG +SV
2 3 4 5 G 7 8 9 9
22 27
• -..MN- c 1 '///,
'///, '///,
+SV RN2 +SV
RN3
-'W/v- c 1t
es
,,
21 19 2 3 4 5 b 7 8 9 +5V
vcc OCPRG 28 8 18
OUTO - - - - - - I8 01
1 7 17
'///, OUTl
2
- - - - -
6
17 02
16
OUT2 - - - - I&
U9 03
20 3 5 15 9 13 l't 17
• IREF OUT3
4
- - - 4
IS 04
14 4 R9 .
> OUT4 - - 14 05 01 c B A2 Al
5 3 13 7 11
OUT5 - I3 O& 02 OSP2 AN2

'///,
RS OUT6
OUT7
6
7
2
1
12
Il
07
08
12
11
3
19
E
F
,, ,
COM \l~
9 .
.
U8 '///, 5
'l,
N J
26
SIN OUT8
8 8
I8 08
11
G
8
M
L
'
23 9 7 12 15
- - 25
BLNK OUT9
10 6
I7 07
13
r-- K

- SCLK OUTlO - I& U10 O& J H G2 Gl


24 11 5 14 16 18 12 2
XLAT OUT11
12
- - 4
I5 05
15
18
GSCLK OUT12 - - - 3
14 04
16
17 13
SOUT OUT13 - - - - 2
13 03
17
14
OUT14
15
- - - - -
l
12 02
18
OUT15 - - - - - - Il
COM
01
GNO VPRG +5V
22 27 2 3 4 5 G 7 8 9
c1
t '///,
9

'///, '///,
-..MN-
RN4 .

,.

46

l
+5V +5V
RN5 ~
,
1
-"'Nv- c
C6 21 19 2 3 4 5 6 7 8 9 +5 v
vcc OCPRG 28 8 18
OUTO
1
- - - - - - 7
18 01
17
'///, OUTl
2
- - - - -
6
17 02
16 >
. OUT2 - - - - 1(, 03
20 3 5 U12 15 <
IREF OUT3
4
- - - 4
15 04
14 4
9 13 l'+ 17 R10
> OUT4 - - 14 05 01 c 8 A2 Al
5 3 13 7 11
OUT5 - 13 Q(, 02 OSP3 AN2
< R6 OUT6
6 2
12 07
12 3
E ,
'///, OUT7
7 l
Il
COM
08
11 19 F
' \l~

Ull
9
'///, 5
N
'l,
J
26
SIN OUT8
8 8
18 Q8
11
6
8
M
L
'
23 9 7 12 15
BLNK OUT9 17 07 - K
25 10 6 13
24
SCLK OUTlO
11
- 5
16 U13
Q(,
14
J H G2 Gl
XLAT OUTU - - 15 05 16 18 12 2
18 12 4 15
17
GSCLK QUT12
13
- - - 3
14 Q4
16
SQUT QUT13
14
- - - - 2
13 Q3
17
OUT14 ..... - - - - - 12 02 •
15 l 18
OUT15 - - - - - - 11 01
GNO VPRG COM
+5V
22
'///,
27
'///,
2 3 4 5 6 7 8
-N#- :l t 9
'/.'/,

+5V RN6 +5V


RN7
1
-"'Nv- c
Cl 21 19 2 3 4 5 6 7 8 9 +5 v
vcc OCPRG 28 8 18
. ~
,
OUTO
1
- - - - - - 7
18 Q1
17
'///, OUTl _. - - - - - 17 02 >
2 6 16
20
OUT2
3
- - - - 5
1(,
U15
03
15 13 l'+ 17 <
1REF OUT3 - - - 15 Q4 9
R11
4 4 14 4
> OUT4
5
- - 3
14 05
13 7
01 c 8 A2 Al
11
OUTS
6
- 2
13 Q(,
12 3
02 OSP4 AN2
< R7
OUT6 12 07 E
-
' '///, OUT7
7 l
Il
COM
08
11 19 F l'
' IJ
'
U14
9
'///, 5
N
J
, l' \
6
M
26 8 8 11 8
SIN OUTB 18 Q8 L
23 9 7 12 15
.. 4~ - - 25
8LNK OUT9
10
17 Q7 r-- K
6 13
- 24
SCLK OUT10 - U16
J(, Q(, J H G2 Gl
11 5 14
18
XLAT QUT11
12
- - 4
15 Q5
15
16 18 12 2
GSCLK OUT12 - - - 14 04
17 13 3 16
SQUT QUT13
14
- - - - 2
13 03
17
OUT14 - - - - - 12 02
15 l 18
OUT15 - - - - - - Il
COM
01
GNO VPRG +5V +5V
22 27 2 3 4 5 6 7 8 9 ~ 9 ,
-N#- c1 '///, J2
'///, '///, 5V
RN8 7
SIN
1
. GSCLK
- - 2
XLAT
- 3
SCLK
4
BLANK
5
SQUT
6
GNO
8

47
\
'> .,.•" ~J - - • ' - • - ~ - • .,. - ~ - ••• .- .... - •• :· • - -'_ ,-- - •• , - , - "'

.
"---- 1

,_~ . -· .
• 1
• - - J

r '

piano di MONTAGGIO

"'"

Disegno ridotto al 70%

o o

;; f;,
. ··l
1 F

:: ,,

'
DSP4
"' ,,, '
U1 U6

·"''

€fl=F=
-c::J- c ) -c::J- c es ) -c::J- c C6
) -c::J- c ) '
R7 C7
4
5 <fl=F=
R6
R4 C4 RS 6 cU=I=
7
' s"d1=:1=
-

~ "'"
___,_,:....,........_. :... ... .........,........... ..:. .:,:.. •. ,,. !t j, . . . . , . . •• · . ,:........., ....

..

~ A1 )( A2 /3 di uso che ne facciamo, lo si può considerare un ot-


timo compromesso per la semplificazione del circu-
F b
f ito. l due display numerici (SA 18-11 EWA ad anodo
Fig. 4
l segme nti dei comune) hanno invece 7 segmenti (Fig. 4), per cui
( g
displa y alfanu merici un solo TLC5940 è sufficiente per pilotarli entrambi;
e numer ici.
e infatti abbiamo riservato le linee OUTO~OUT6 al
OP DP primo display e le linee OUT7 ~oUT13 al secondo;
f 01 >( Q2"':> o ~ d o si sono resi necessari comunque due ULN2803,
.. \

48
<

o ~---=~~--~~--~-------~ o
~
E-

•DSP5

OSP6

__ RHI_O ~
lO o o o o o o o 010 o o o o o o o 01

111

ALIIID CH2 STEPPER


00
()16
C9 LDI

Elenco Componenti:
C1, C4, CS, C6, C7, CB, C10: LD1: LE D 5 mm rosso J2: .Strip maschio 8 vie 90°
100 nF ceramico DSP1-:-DSP4: Display
C2, C3 :22 pF ceramico PSA23-11SURKWA Varie
C9: 100 ~F 25 VL elettrolitico DSPS, DSP6: SA18-11EWA - Zoccolo 9+9 (10 pz.)
R1, R2: 100 ohm 2 W S1: Microswitch - Zoccolo 14+14 (6 pz.)
R3, R4, RS, R6, R7: 3,9 kohm CN4: Connettore JST-PTH - Strip femmina tornito 9 vie (4 pz.)
- R8, R9, R10, R11: 10 ohm 1 W 2 poli passo 2 mm - Strip femmina tornito 5 vie (4 pz.)
R12, R13: 10 kohm CN6: Connettore JST-PTH - Strip femmina tornito 1Ovie
R14: 220 ohm 3 poli passo 2 mm (4 pz.)
RN1-:-RN10: Rete Resistiva SIL 9 pin CN2: Connettore JST-PTH - Strip femmina 8 vie (2 pz.)
(8x10 kohm +comune) 4 poli passo 2 mm - Connettore Filo-Scheda
T1 BC547 CN3: Connettore JST-PTH 3 vie volante
U1: ATMEGA328P-PU (MF1471B) 5 poli passo 2 mm - Connettore Filo-Scheda
U2, US, U8, U11, U14: TLC5940-NT CNS: Connettore Filo-Scheda 6 vie volante
U3, U4, U6, U7, U9, U10, U12, U13, 3 vie da es - Circuito stampato S1471A
U15, U16: ULN2803 CN1: Connettore Filo-Scheda (200 x 123 mm)
01: Quarzo 16 MHz 6 vie da es - Circuito stampato S1471B
M1: Driver motore A4988/DRV8825 J1: Strip femmina 8 vie 90° (88 x 123 mm)
-
-----·-"

anche se alcuni transistor sono rimasti inutilizzati, lore di 100 oh m 2 Watt. Come abbiamo visto, tutti
e due reti resistive, i cui due resistori rimasti liberi i segnali di pilotaggio sono gestiti dal microcontrol-
sono stati usati per il pin di RESET del microcontrol- lore in virtù della specifica libreria TLC5940.h, sca-
lore U1 e per I'ENABLE del driver per lo stepper. ricabile, assieme al firmware stesso, dalla sezione
Come per i display alfanumerici, anche per questi download del sito www.elettronicain.it. Nella stessa
due display numerici abbiamo adottato il trucco del sezione abbiamo inserito diversi datasheet utili per
resistore unico sull'anodo (in serie all'alimentazione chi volesse approfondire lo studio dei componenti
da 12 V); in questo caso i due resistori hanno un va- che abbiamo utilizzato.

49

'
r •

Struttura portante Pannelli chiusura


l2cm
7 c:m coperchi o superiore 12 crn J Pann~~:~~~~e J1 cm
!iem
SScm

Pannello dtsptay 20 cm
SScm Pannello posteriore ss cm

2 pareti laterali base Inferiore ss cm 3Scm


2Scm
l'Ili Fig. 5
Costruzione del PanneUo pulsanti 15 cm
mobile in legno. 38cm
SScm 3Scm

Pannello anteriore 2S cm

Multistrato 1.5 cm •
MDF2,S mm 38cm

Bachellte
Multlstrato mogano S mm

Per la realizzazione pratica del nostro progetto necessari per la realizzazione di questo progetto,
bisogna innanzitutto far riferimento aWelenco sono scaricabili sempre dalla sezione download. Il
componenti riportato nello specifico riquadro. Natu- montaggio dei componenti è una operazione ab-
ralmente tale elenco riproduce fedelmente ciò che bastanza semplice, considerando che sono tutti in
abbiamo usato per il nostro prototipo; ovviamente tecnologia THT (a foro passante), quindi i vari pad di
se si adotteranno soluzioni diverse (p.es. per la saldatura sono piuttosto grandi e molto distanziati
gestione della cassettiera o per la sezione AUDIO o tra loro. Come sempre conviene iniziare dai com-
per quella di ALIMENTAZIONE), occorrerà sostituire ponenti più bassi, resistori e zoccoli degli integrati,
i relativi componenti. per passare poi ai resistori di potenza/ reti resistivel

condensatori, quarzo, transistor, il tastino ed i vari
IL MONTAGGIO DEl COMPONENTI connettori; tutti i componenti andranno montati sul
l file in formato gerber dei due PCB a doppia faccia/ lato componenti (faccia superiore) dei PCB. Bisogna

Pannello casse Pannello pulsanti


4cm dia m. Forìl,S<m
Ì('m
r'll
di am. f.oro~tm 7cm - Stm . ... Btm
~ ..... __ ~ ~
J-1 ~; ;; ~l r
~

6 su
Pannello display -
e

o
.,..;

l,Stm
. l

5
. . Pannello anteriore
4.5 etn

. .. -
i• '
- + ... .

!- .
:~
-• . l)l>t
-
-
•f- f. ·r· r. In

. r--. 4,S,m .
- l Skm 4 ! t m 1,Stn
Fig. 6 + ~
' • ..
.
·~
--- 1- f• f• ~- • 1- 1-
?,!cm ~·
- .. •
Misure di ta.s cm .. 2,S<:·· .
lavorazione dei ..._ ~·
- *
~

pannelli anteriori. ~.
-~
t--·

-
~

-
*

,.. 5 .
1,~ ~ m

,. ~ -

. ' ~ Q
,..;
.. .
~
. • .
'

,..~ ... f· -
.
~-
t·~~

~~" ~ f-• .·l-· f-· .. .


- ·~ ---. .. -· . .
.. -. .• 2 .~ cm

-
~

t- +· ~ ~ <

~a~m
§ h :ttt

""' ·- -•. -· -

--
IIS
. l
--
1Stm l l.Si:m

50

l
IU l IJB m Il

fare molta attenzione all'inserimento degli zoccoli/


in modo da far combaciare la tacca di riferimento •
con quella serigrafata sul PC BI essa rappresenterà
la posizione corretta per i numerosi chip/ anchlessi
dotati di una tacca di riferimento.
Gli ultimi componenti da montare sono i display
di grandi dimensioni/ sarà necessario distanziarli •
mediante delle strisce di header femmina/ di op-
- portuna altezza/ altrimenti non potranno sporgere
correttamente dal contenitore. Anche per il driver abbiamo usato due angolari in metallo per fissare ,_. Fig. 7
La struttura
dello stepper motor sarà conveniente prevedere i due PCB alle due pareti laterali, mantenendo la metallica per il
due file di header con funzione di zoccolo; peraltro superficie dei display leggermente sporgente; per la fissaggio di PCB e
pulsantiera.
tra le due file di contatti sul PCB sono presenti tre pulsanti era abbiamo usato un pannello di alluminio
jumper a saldare/ per chi volesse configurare il che abbiamo opportunamente forato per potervi
driver i modo diverso dallo standard da noi usato, fissare i cinque pulsanti arcade, tenendo conto della
quindi è necessario che siano facilmente raggiun- DI MA del relativo pannello in legno.
gibili. In ultimo occorrerà montare i due connettori Altre due bacchette sono state usate come rinforzo,
maschio-femmina di collegamento tra i due PCB. Il una sotto il pannello di alluminio (nella Fig. 7 si vede
microcontrollore U1, prima di essere innestato sul solo la piccola vite di fissaggio tra i pulsanti blu e
proprio zoccolo/ dovrà essere configurato e pro- nero), e l/altra sul frontale del mobile, come appog-
grammato con il firmware da noi fornito, altrimenti gio al pannello anteriore/ che sostiene la gettoniera.
il circuito non potrà funzionare. Il pulsanti andranno collegati tra loro e con il PCB in •
base allo schema visibile nella Fig. 8.
IL MOBILE IN LEGNO La gettoniera andrà appoggiata con una parete
Per montare i PCB e tutti gli accessori ad essi col- alla parete destra del mobile (Fig. 9) sul cui bordo
legati esternamente abbiamo disegnato un mobile anteriore saranno praticati i fori
. per il suo fissag-
facilmente realizzabile con un minimo di compe- gio, mediante due viti autofilettanti. Come visibile
tenze di fai-da-te. La struttura portante, costituita nell'immagine completa il supporto della gettoniera
dalle pareti laterali e dalle basi inferiore e superiore/ apparirà sfasato rispetto al bordo del mobile, ma
è stata realizzata in compensato multi strato da 1,5 questo è necessario affinché il meccanismo di
cm. l quattro pannelli frontali e quello di chiusura scorrimento del le monete sia perfettamente per- !! Fig. 8
n collegamento
posteriore, così come il rivestimento frontale del pendicolare alla base del mobile; infatti osservando dei pulsanti arcade.
cassetto delle monete, sono stati realizzati in le sole fessure di ingresso ed uscita delle monete,
MDF. Lo sportello anteriore di accesso all'interno esse saranno parallele al bordo del mobile. Al di
del mobile è stato realizzato in bachelite. Infine il
cassetto mobile delle monete è stato realizzato in
multistrato di mogano/ estremamente leggero, per
non sforzare troppo lo stepper motor. Nella Fig. 5
abbiamo riportato tutti i vari pezzi con le relative
• .
m1sure.
l quattro pannelli anteriori in MDF vanno oppor-
tunamente forati per gli altoparlanti, i display, i
pulsanti/ la gettoniera/ il cassetto delle monete
(con la chiusura a chiave) e lo sportelli no di accesso
all'interno del mobile. Servono un trapano a co-
lonna, due diverse punte di tipo l/sega a tazza" per
legno, un seghetto alternativo e una piccola raspa
per le finiture. Nella Fig. 6 vi mostriamo i quattro
pannelli con tutte le necessarie misure per la loro
foratura.
Una volta assemblata la struttura del mobile in le-
1 6
gno occorre preparare i supporti metallici per i PCB
con i display e per la pulsantiera; nel nostro caso CNl

51

'
~:y~::~€ ;y 'o ' " : " L "C ~ . • . • . - " • • • •

,_~
.. "" .
~-

'

Ili DI 1111! 1:[1 (i-

contiene un dado con lo stesso passo della barra, e


l'altro contiene un cuscinetto con foro centrale da
8 mm. Entrambi i supporti sono stati imbullonati al
cassetto. Sotto la base del cassetto abbiamo mes-
so tre spessori lisci in metallo, per rialzarlo rispetto
alla base del mobile, e poi abbiamo aggiunto una
~ Fig. 9 Bali Caster da 1,2 cm, per favorire lo scorrimento.
U fissaggio della
Nel purito di uscita esterno del cassetto stesso
gettonie ra sulla
parete laterale del abbiamo fissato due supporti ad "L': molto vicini alle
mobile. sue pareti laterali, per impedire movimenti laterali.
(Fig. 10). Lo switch di finecorsa andrà fissato in
modo tale che, a cassetto completamente chiuso,
si trovi in posizione normalmente chiusa, cioè la
levetta deve tenere premuto il pulsanti no, e i due fili
dei contatti andranno collegati al connettore CN4
(non c'è polarità da rispettare per i due fili).
Comunque il sistema del movimento del cassetto
può essere realizzato con diverse soluzioni, sempre
sotto della fessura di uscita interna delle monete basate su uno stepper motor (obbligatorio se si
(quella da cui escono quando vengono accettate) vuole evitare di modificare il firmware), questa da
abbiamo messo un invito di plastica col compito di noi proposta è una versione semplice e abbastanza
farle scivolare nel cassetto. efficace (Fig. 11 ). Il collegamento tra lo stepper
La parte di pannello anteriore tagliata per l'apertura motore il PCB avviene mediante un cavetto che ha
del cassetto delle monete sarà riutilizzata per fare il uno spinotto a 6 pin lato motore ed uno a 4 pin lato
frontalino del cassetto stesso, in modo che sia dello PCB. In Fig. 12 riportiamo il collegamento pin-to-
stesso materiale del pannello. pin, perché se non disponete del cavetto e dovete
Per quanto riguarda il movimento del cassetto , realizzarlo è bene rispettare le nostre indicazioni,
come detto, abbiamo adottato uno stepper motor, altrimenti il motore potrebbe non funzionare cor-
• al quale abbiamo collegato una barra filettata con rettamente. Occorre osservare bene l'immagine in
diametro di 8 mm e di lunghezza idonea, mediante quanto sul motore i fili si incrociano.
una boccola di accoppiamento . Il motore è fissato l due altoparlanti andranno fissati al relativo pan-
ad una staffa di supporto. La barra filettata passa nello dopo averlo opportunamente forato per le viti
attraverso due supporti realizzati con la stampante M3 con relativi dadi. Nella Fig. 13 potete osservare
30 (abbiamo messo a disposizione i file stl nella che abbiamo protetto gli altoparlanti con due griglie
sezione download del sito elettronicain.i~, uno in ABS; nella sezione download abbiamo inserito
anche il file stl per stampare due mascheri ne di
protezione, mediante una qualsiasi stampante 30,
idonee al modello di casse che abbiamo usato.
L'ultima parte da realizzare è lo sportello anteriore a
chiave, per l'accesso all'interno della Slot Machi-
ne, per il prelievo delle monete rimaste dopo le
eventuali vincite. Avendo preparato in precedenza
~ Fig. 10 il pezzo di bachelite, occorre fare un foro sul lato
l supporti
e lo switch
destro, in base al tipo di serratura a levetta di cui si
per il cassetto dispone; sul lato interno della battuta, accanto alla
delle
gettoniera, probabilmente sarà necessario incollare
monete.
degli spessori, per compensare la lunghezza della
filettatura della serratura stessa; bisognerà inoltre
• prevedere un fermo per la battuta, per evitare che
lo sportello possa /lentrare" nel mobile, invece di
fermarsi allo stesso livello del pannello anteriore.
Sul lato sinistro andranno opportunamente fissate
una o due piccole cerniere, per garantire un agevole

...

52
<

Fig. 11
Il sistema di
movimento
del cassetto.

movimento di apertura e chiusura dello sportello.


i'!';

Il sistema da noi adottato per la chiusura consiste


in una serratura passante a chiave, cilindrica con Cosa occorre?
chiavistello interno rotante. Il materiale presentato in questo articolo è disponibile
A questo punto mancano solo le rifiniture finali; per presso Futura Elettronica. L'alimentatore switching 12V
il nostro prototipo abbiamo adottato dei pannelli 3A (cod. ADL-40-12} è in vendita al prezzo di Euro 8,50, il
modulo step-down 5V (cod. MP1584ENDCDC} è disponibile
in plastica colorati per rivestire le pareti laterali e a Euro 2,50, la gettoniera programmabile (cod. GETTON1}
quella superiore del mobile ed una serie di profili costa Euro 69,00, il modulo audio 1501820 (cod. YB390} è in
in plastica per rifinire i tagli, i bordi e le giunzioni. Il vendita al prezzo di Euro 4,50, l'amplificatore audio 3+3 W
(cod. PAM8403POT} è disponibile a Euro 6,50, la coppia di
risultato complessivo è visibile nelle immagini che altoparlanti (cod. AP5243W} costa Euro 2,90 caduno, il motore
trovate nella prossima puntata, nelle cui pagine passo-passo (cod. STEPMOT03} è in vendita al prezzo di Euro
vedrete la slot machine completa. 18,00, la staffa per NEMA17 (cod. SMXNEMA17} è disponibile
a Euro 3,50, il giunto per NEMA17 (cod. GIUNT08X5NEW}
costa Euro 9,50 caduno, la barra filettata diametro Smm
CONCLUSIONI (cod. BARRA8} è in vendita al prezzo di Euro 8,00, la staffa per
Bene, con questo ci fermiamo qui, almeno per que- NEMA17 (cod. SMXNEMA17} è disponibile a Euro 3,50.
l prezzi si intendono IVA compresa.
sta prima puntata. Nella seconda e conclusiva vedre-
mo le fasi preliminari di impostazione dell'hardware,
.. Il materiale va richiesto a:
il firmware e il suo caricamento, quindi spiegheremo
l'utilizzo della nostra magnifica macchina da gioco. Futura Elettronica, Via Adige 11, 21013 Gallarate (VA)
Tel: 0331-799775 - http://www.futurashop .it
A presto!

• Fig. 12
~ Fig. 13
n collegamento
dello stepper motor.
CN2 H pannello con
gli altoparlanti
e le griglie di
protezione.

l
53
•••
•••••••• •
• verslon~:,O;;' :
: co~ ~ iVA JnchJS8· •
e 1.29 • - • • -- =

•••• ••••••

Box in plexiglass per


stampante 304040

Cod.FT1147K
c 34,00

Relè allo stato


solido per piatto riscaldato Fo o riscaldato
in kapton 40x40cm

Cod.BOX3D4040 Cod.FT1357K
C198, 00
C15,00 •
rmai la miniaturizzazione dei circu-
iti elettronici avanza inarrestabile
e coinvolge anche quei dispositivi
dell'elettronica tradizionale come gli
amplificatori audio, che non ne hanno
uno stretto bisogno, salvo quando deb-
bano equipaggiare riproduttori musicali
o tablet e console videogame portatili
che richiedono qualche watt di buona qualità per riprodurre
musiche a un buon livello sonoro senza occupare troppo spa-
zio né consumare rapidamente le batterie.
In quest'ottica si collocano integrati di recente introduzione
che funzionano in classe D, una particolare modalità che si
basa sulla co nversione dell'audio analogico in impu lsi PWM
la cui larghezza varia in analogia con l'ampiezza del segnale, i
quali vengo no poi amplificati in potenza da transistor (quasi

55
:-.~:_~-~-.. ~_.-. -- . ~- -. . -- -. -,__ -.- ..!.-. ~ ~ ~~ . : _......------.F- --=-- ..
~-~:r-;-:-:-~·;

-. . . . - .,
.:. ' ·.

'


schema
r

ELETTRICO
02
r-r"-... +V
PW R v 4 ~
sw
01 R1
2 r---.... A 1 Integrati amplificatori in classe D per piccole
v C22 C23
v

2 potenze sono la so luzione ideale per i dispositivi


1 audio funzionanti a batterie, dal momento che in
'///,
+V queste specifiche applicazioni, tanta più energia
'///, '///, '///,
~
, 26 8
FAOE si può risparmiare, tanto meglio è. Tra questi inte-
32 AVCC 29
PVCCR so grati figura il PAM861 O, che possiamo considerare
39 37
PVCCR ROUTN L2
C6 es es Cl 38 { 0000} il"frate llo maggio re" del più not o PAM8403 da noi
ROUTN
C14 C18 utilizzato in vari progetti del passato.
U1 ROUT
'///, '/.'/, '///, '///, 36 R-
+V BSRN 1 SCHEMA ELETTRICO
35 '///, R+
~r BSRP 2 Il circuit o che trovate in queste pagine è st ato
12 C15
PVCCL realizzando seguendo le raccomandazioni del
19
PVCCL Ll costruttore e sfrutta la fu nzione di Shutdown
C24 C25 33 { 0000}
ROUTP
34 C19 implementata nel chip, che consente di accendere
ROUTP
e spegnere l'amplificatore con un segnale logico,
IN '///, '///, ovvero uno switch digitale attraverso il piedino 29;
1 13 '///,
3o
RIN C11 RINN LOUTN
14
L4 lo spiegheremo tra breve.
10 LOUTN COOOOl
Ora diamo uno sguardo generale allo schema elet-
1 o
LIN C31 LINN C12 C20
trico che vede al centro il PAM861 OTR, un comple-
GNO C2 2 LOUT
2 RINP to amplificatore in classe D a due canali (prodotto
15 L-
BSLN 1
C4 9
LI NP 16 '///, L+ dalla Diodes, www.diodes.com) con ingress i sbi lan-
BSLP 2
C13 ciati e uscite a ponte, così da ottenere un'elevata
'///,
s potenza di uscita con bassi valori della tensione
VOL 17 L3
4 LOUTP { 0000} di alimentazione. La potenza erogabile in uscita
VREF 18
3 LOUTP C21 con alimentazione a 13 V è di 1OW per canale su
AVOD .
Cll altopar lanti da 8 oh m e gli stadi amplificatori sono
'/. '/, caratterizzati da una bassa distorsione armonica.
31 27
40
PGNOR V2PS
30
Il doppio filtro LC posto all'uscita a pont e dei finali
PGNOR VCLR in classe D serve tipicamente per linearizzare
11 23
• PGNOL ROSC
20 22 il segnale d'uscita, che è composto da impulsi
PGNOL cose
6 21 rettangolari ed è quindi spezzettato, condizione
REFGNO VCLL
AGNOl AGNO -questa- che crea distorsione armonica; inserendo
7 24,28 ClO C17 R2 es c 16 un filtro LC accordato per la frequenza del PWM, il
'///, '///, '///t '///, '///, '///, '///, '///,
segnale si linearizza ma si pone il problema della
rotazione di fase causata dal filtro stesso, che può
essere opportunamente compensata o collocata
fuori dalla banda passante.
sempre MOSFET) funzionanti in modo ON/OFF e Il filtro può essere minimizzato, ossia realizzato
perciò capaci di rendimenti elevatissimi per essere, con componenti di ridotto valore, grazie all'elevata
infine, filtrati da celle LC del second 'ordine formate frequenza del segnale PWM (tipicamente 250kHz)
da induttanze e condensatori, i cu i valori e le cui rispett o alla banda audio, che consente di mini miz-
dimensioni (di riflesso) sono tanto più contenuti zare la distorsione armonica dovuta alle pause tra
quanto maggiore sarà la frequenza del PWM . gli impulsi del segnale PWM.
La scelta di utilizzare un l/classe D" è ideale L'integrato contiene uno stadio preamplificatore
quando si tratta di limitare i consumi, dato che gli stereo (a due operazionali per canale) e un doppio
amplificatori funzionanti in questa classe hanno modulatore PWM, ciascuna sezione del quale •

rendimenti che possono superare il 90%, contro è composta da un comparatore ai cui ingressi
il 55% tipico di quelli in classe AB; ad esempio, se vengono confrontati il segnale BF preamplificato
prendiamo a riferimento i 1O watt che l'amplifica- e un'onda triangolare generata dall'oscillatore
tore qui descritto sviluppa per ciascun canale, con interno al componente. Ogni comparatore ha un'u-
un classe AB determinerebbero un consumo di scita differenziale che pilota un fi nale di potenza
circa 18W, mentre in classe D la potenza comples- a MOSFET configurato a ponte, le uscite del quale
sivamente rich iesta supera di poco gli 11 watt. - sono applicate a una coppia di piedin i "sollevata"

.
56
,.
r

.. da massa; i transistor del finale non richiedono


po larizzazione perché funzionano pilotat i dagli ~ ~
~ .....
39 3~
- 37 ~
..._ 3~
"""'"
~4
c:_
-31 130
impulsi prodotti dal comparatore. VCLAMPR
1l

o
RINN

RINP 21 129 so
Il preamplificatore di ingresso prevede il controllo
AVDD 28 AGND
31
del guadagno attraverso un blocco di regolazione 127 V2P5
VREF 41 Fig. 1
digitale del volume in 32 passi, che consente un'at- VOLUME 51 PAM8610 126 AVCC Il package
tenuazione compresa fra -75 dB (uscite pratica- REFGND 61 XATYWWLL 125 MUTE dell'integrato
PAM8610.
mente tacitate) e 32 dB (massimo volume) interve- AGND1 71 24 AGND

123 ROSC
nendo sul guadagno complessivo. Nel nostro caso FADÈ 81
L INP 91 22 cose
il controllo digitale non viene utilizzato e l'amplifi- 121
UNN 1Ol VCLAMPL
catore stereo lavora a guadagno fisso, determinato r.=
..... ~ fi3 ~ rs 11 r; re fi9 2c
dal potenziale che l'uscita AVDD (piedino 3) del ..J
o 0
...J
z z za.a.. n...J ..J
ZO 1-I- -'...JI- !-U O

regolatore LDO interno applica al 5 (VOL) ed anche <!lif


n.
55~
...J
..J
6
~ ..J 5~~
..J n. a.

a VREF (piedino 4). Più esattamente, l'amplifica-


tore, essendo AVDD pari a circa 3V, lavora con un
guadagno di 32 dB, pertanto dovendo erogare alla assorbe poch issimo perché lo stadio di potenza,
,
massima potenza su 8 oh m una tensione efficace l'oscillatore e il modulatore PWM sono spenti) sia
di circa 8,8 V e considerato che l'amplificatore è la tacitazione delle uscite (si ottiene con il piedino
formato da due stadi a ponte che quindi devono /FADE tramite un decader che abbassa il guadagno
fornire metà di tale tensione, 32 dB di guadagno degli stadi d'ingresso fino ad attenuare il segnale).
implicano il raggiungi mento della massima poten- Vista l'esigua potenza che deve dissipare, l'in-
za con circa 200 mV a ciascun ingresso. tegrato non rich iede alcun dissipatore di calore, •
Completa la circuiteria interna al PAM861 O una anche perché è un QFN che ha una parte metallica
logica che consent e sia lo spegnimento control- sotto il corpo (Fig. 1) per effettuare la dissipazione
lato dal piedino /SHDN (l'l C resta alimentato ma mediante le piste del PCB sottostanti. Se anche

CARATTERISTICHE
TECNICHE

12Vcc
- + , ~ Potenza di uscita:

2x10W su Bn

ALTOPARLANTE ALTOPARLANTE ~ Distorsione armonica alla


massima potenza:

' ...
®10%

~ Tensione di alimentazione:
7715Vcc

~ Massima corrente assorbita:


") 'J J.f.A
~t,.,s;..

~ Rapporto segnale/rumore:
-SOdB

-- ~ Rendimento: > 90%


AUDIO

l
57
'

Il componente chiave del nostro amplificatore è l'integrato SMD da cortocircuito alle uscite.e una protezione termica. Peraltro il .
PAM861 OTR della Diodes, che in un minuscolo package QFN da volume può essere gestào parallelamente dalla funzione FADE,
6x6 mm racchiude un completo finale BF da 2x1 OW su 8 oh m che consente di variare pt'Ogressivamente il volume fino al
in classe D, con tutti gli stadi visibili nello schema a blocchi pro- valore richiesto durante1'accensione, nello Shutdown o durante
posto in questo riquadro. Gli input sono configurabili sia come i cambi di guadagno impostati con il piedino VOL.
bilanciati, sia come sbilanciati: quest'ultima è stata la scelta Una delle funzionalità del PAM8610 è il soft-start, ossia cor-
per il nostro amplificatore, infatti gli ingressi negativi sono stati tocircuitando il pin SO a massa si spegne l'integrato ma in dis- ..
portati a massa accoppiati ciascuno con un condensatore (C2 solvenza sfumando la musica, mentre rilasciando il jumper SW,
per il destro e (4 per il sinistro). le uscite sono formate cia- che permette la chiusura a massa, l'amplificatore viene riacceso
scuna da un ponte a MOSFET le cui due sezioni sono pilotate in gradualmente. Ciò risparmia il botto tipico di quando l'accensio--
controfase da due driver, ciascuno dei quali riceve impursi logici ne avviene repentinamente, fornendo un effetto gradevole. Il
oppostt l'integrato iocorpora,u n controllo digitale del volume piedino 29 (SO) è postoi~~.rmalmente a livello alto daJ resistore
...
a 32 passi, che spazia da -75dB a +32dB in base alla tensione di pull-up R1 e quinoi la~2i~ndo aperto SW l'amplificatore è
continua applicata al piedino VOL (variabile tra Oe 3,1 V corri- acceso. Possiamo controllarlo anche con un segnale logico o
spondenti rispettivamente a -75d8 e 32 dB), una protezìone meglio con l'uscita open-collector o open-drain di un circuito.

r~----~-----------~~~~- - --~---- - --- ---- -----~-----~


l ~--------------~~~BSRN
l -
l ..-----~p PVCCR
l l i

l
l l Il

Driver ---~,H,.-:;-_.,~ ROUTN


l . . ,._ ,..--~111----4---1 1------1
J ~ Il l l
l
--~Av~'JA'~'V'A~.~~~~ --~~--~/1~~~~
l
PGNDR •
- ~ l- ">>
Il - PAM
RINN · (

....trv·Zl-vv----e--iv:/
R l N P C'-+--1\/ , v Modulation

l
(
l
BSRP
PVCCR

A~y ::~---e---~
l
l
•• -"~--4~ ROU TP
, e---+.-+-
:
Driver
l L-----~
~L( ~
l
l l
VO LUME ~---,~-I:J PG NDR
l Gai n
Feedback l
FADE Adjust System r-------------~
l
l
l pAvcc
l
ROSC
D AGND
l
l osc l
COSCC1'- -------------I l
~--------' l
AVDD q---------, on/off
Thermal
Short Circu i t l

-..
Depop Prote ction l
l
l
s D Cl-----l L D o Biases & l
References l
l
l
V2 PS [ l
~----------~~~~BSLN
MUTE 0 l .-----+-__..P PVC c L
l
l l l
l
l Driver LOUTN
· ·~----------1 1-----1

: Av"' Il
l l l o

--t~~......,~-- ~>
l

L l N N [1----JVAV/\A'Zl-"'.. PAM ' JO PGNDL


~-----------~(~, BSLP
- --e-- - - J j
Modulation
L lNP L Av~\r--.~~ + / v '--+-.. . .-!/ .---~(,--10 PVCCL
l i ,

l ~A~
v'!~
y--' 111----4 -- - - - ! l Il l
l Il Driver
l l l
l l

l
PGNDL
l
l Feedback 1---------------~ l
l System
l.
l
l
l l
L-- -- ---~------------ --- - ~--------------- ------ - ---
.. "

't. :"

,.

58
-,.
,

Il([(

dovesse surriscaldare, il PAM861 O comunque di- mente abbassato sfumando la musica e poi tutti
spone internamente di una protezione termica che i blocchi vengono spenti, ad eccezione dell'unità
gli impedirebbe di superare temperature pericolose. di controllo che fa capo, appunto, al comando di
Bene, dopo aver fatto una panoramica sulle Shutdown.
caratteristiche dell'integrato, vediamo come Invece al contatto 8 fa capo la funzione di FADE,
viene utilizzato nel nostro amplificatore stereo: la che consiste nel graduale abbassamento del
configurazione non si discosta molto dallo schema volume fino al minimo se lo stesso contatto viene
applicativo consigliato dal costruttore nel datashe- posto a massa, ovvero nel graduale passaggio al
et, infatti troviamo gli ingressi L ed R accoppiati volume richiesto durante l'accensione; nel nostro
mediante due condensatori ciascuno, giacché nati- circuito non utilizziamo tale opzione e quindi il pin
vamente sono bilanciati ma li utilizziamo nella con- 8 è posto fisso a livello alto.
figurazione sbilanciata. Ogni condensatore serve a Completiamo l'analisi circuitale con l'alimentazione,
separare la componente continua che polarizza il che va applicata ai punti PWR e che attraverso
preamplificatore d'ingresso dai contatti di input del la coppia di diodi D1-02, posti in parallelo per
circuito; C1 e C3 trasportano il segnale dai contatti ripartirsi la corrente e limitare, a parità di corrente
di ingresso rispettivamente RIN e LIN all'integrato, che li attraversa, la caduta di tensione (nel diodo
mentre C2 e C4 chiudono a massa RINP e RINN . reale la caduta diretta risente, seppure in misura
Il guadagno dei preamplificatori d'ingresso è deciso, limitata, della corrente diretta, quindi quella di due
oltre che dal blocco di controllo del volume, da un in parallelo è inferiore alla caduta di un diodo che
resistore interno all'integrato, posto in serie ai debba sopportare l'intera corrente del circuito),
piedini 1, 1O, 2, 9. raggiunge i condensatori di filtro C22, C23, C5 e
Gli stadi di uscita sono a ponte per ciascun canale, C6. Dai catodi di 01 e 02 (componenti montati per •
quindi hanno ciascuno due uscite, ognuna delle proteggere l'amplificatore dall'inversione di pola-
quali ha un condensatore di bootstrap (C1.2 tra rità) parte la linea di alimentazione positiva, che
LOUTN e BSLN, C13 tra LOUTP e BSLP, C14 tra porta ai piedini 26 (AVCC, ossia alimentazione degli
ROUTN e BSRN e, infine, C15 collegato fra ROUTP stadi d'ingresso) 12 e 19 (aUmentazione stadio di
e BSRP) che riporta allo stadio pilota dei MOSFET potenza per il canale sinistro, coppia di pin PVCCL)
di uscita. e 32/39 (PVCCR, coppia di contatti di alimentazio-
Per ciascuna delle uscite del ponte di ognuno dei ne del finale destro).
due canali è previsto un filtro LC che riconverte gli La distinzione dei piedini degli stadi finali destro e
impulsi PWM in segnale audio, portando ai contatti sinistro e della sezione d'ingresso è stata voluta,
di ROUT e LOUT segnali in controfase con cui viene come del resto la ripartizione delle masse, per
pilotato l'altoparlante di ciascun canale; per l'esat- evitare che l'abbassamento di tensione causato
tezza, per ROUT abbiamo l'uscita negativa su R- e dalla pulsazione dei MOSFET dello stadio di po-
la positiva su R+, mentre per LOUT l'uscita positiva tenza pilotato dagli impulsi del modulatore PWM e
è L+ e quella negativa fa capo ad L-. dovuto alla resistenza delle piste e dei piedini, per
Da notare che ciascuna uscita degli stadi a ponte quanto minimo possa rientrare nei preamplificatori
fa capo a due contatti, allo scopo di favorire la d'ingresso determinando fenomeni di instabilità e
distribuzione della corrente ed evitare il surriscal- disturbi.
damento dei singoli pad. Per tenere separate le linee di alimentazione
Proseguiamo con l'analisi dello schema elettrico e abbiamo progettato il circuito stampato in modo
andiamo all'oscillatore interno che genera la forma da far partire dai contatti dei condensatori di filtro
d'onda triangolare che verrà confrontata con il se- C5, C6, C22, C23, ovvero dai catodi dei diodi e dalla
gnale audio per generare il PWM: la sua frequenza massa del PWR (contatto 1) piste distinte per le
è determinata dal condensatore C17 (collegato al due alimentazioni, filtrando localment e, vale a dire
contatto Cose) e dalla resistenza R2 (connessa tra a ridosso ai piedini appena descritti, le tensioni
il contatto Rose e massa). mediante condensatori ceramici (gli elettrolitici non
Al piedino 29 fa capo la funzione di Shutdown, servono perché le frequenze in gioco sono alte e
attiva con piedino a livello basso; a riposo R1 quindi bastano dei ceramici da qualche centinaio di
mantiene il contatto 50 a livello alto consentendo nanofarad). Infatti per PVCCR abbiamo C7 e C8 e
il normale funzionamento, mentre unendo i punti per PVCCL i condensatori C24 e C25.
1 e 2 del connettore SW si manda in spegnimento Alle uscite dei due canali (L- ed L+ per il sinistro e
graduale l'amplificatore: il volume viene rapida- R-e R+ per il destro) si connettono direttamente

59
\
: -- ' - . - - . ~ ' - • ~ _.- -- - ~' - > -

'
'
- - -- ~ -~-~-- - - -- -- -- - -
\

· ·piano di MONTAGGIO
Elenco Componenti:

R1: 10 kohm (0603)


R2: 120 kohm (0603) mato della pasta flussante sui suoi contatti e aver
C1, C2, C3, C4, C7, CB : 1 ~F ceramico (0603) sciolto una goccia di lega saldante sul pad centrale,
C9, C10, C11, C12, C13: 1 ~F ceramico (0603) quindi appoggiando l'integrato con una pinzetta
C14, C15, C16, C1B, C19, C20, C21, C25: (orientato come indicato nel piano di montaggio) e
1 ~F ceramico (0603) scaldandolo da sopra, fino a vederlo adagiarsi sulle
C23: 100 nF ceramico (0603) rispettive piazzole.
C6, CB, C24, C22: 10 ~F ceramico (OB05) A quel punto si toglie il getto d'aria calda e si lascia
C17: 220 pF ceramico (0603)
raffreddare, per poi procedere alla saldatura degli
L1, L2, L3, L4: lnduttanza 1 mH (OB05)
altri componenti, ossia diodi (prestando attenzione
U1: PAMB610TR
D1, D2: 1N414BW-7-F alla polarità indicata), resistenze e condensatori,
appoggiandoli alle rispettive piazzole e stagnando .....

Varie: un lato alla volta. Le saldature riescono meglio se t

- Circuito stampato S1473 (26x31 mm) si spalma con un pennellino, prima di effettuarle,
del flussante in pasta sulle piazzole corrispon-
denti: servirà a far aderire e fondere prima la lega
saldante e ad evitare di unire i pin vicini quando si
gli altoparlanti: non serve alcun condensatore di di- salda l'integrato.
saccoppiamento perché tali uscite sono a ponte e Completato il montaggio, l'amplificatore è pronto
comunque lavorano in modo on/off, perciò a riposo per l'uso: non c'è alcuna regolazione da effettuare
non hanno potenziale alcuno; l'unica differenza e se non desiderate la funzione Shutdown non
rispetto a delle uscite tradizionali (dette anche serve realizzare alcun ponticello.
single-ended) è che non sono riferite a massa, L'alimentazione da applicare al circuito per avere
quindi gli altoparlanti vanno collegati tra i piedini di la potenza attesa dev'essere compresa tra 11 e
uscita e non verso massa. 13V; la corrente assorbita dipende dalla tensione
Tale collegamento è compunque possibile, tuttavia e dall'impedenza degli altoparlanti: a 13 V con
la potenza in uscita diventerebbe praticamente altoparlanti da 8 ohm, la potenza d'uscita è quella
un quarto di quella dichiarata dal costruttore, cioè massima (2x1 OW) e quindi la corrente assorbita
2,5W per canale. dall'alimentazione è intorno agli 1,1 A per canale,
• Inoltre, non si possono e non si devono unire i vale a dire 2,2 ampere complessivi.
negativi degli altoparlanti dei due canali, perché in- La massima potenza dissipata dall'integrato a
ternamente sono separati (non c'è alcun comune); 2x1 OW su 8 oh m è dell'ordine di 2,2 watt; con-
se si unissero i negativi, gli integrati potrebbero siderato che la resistenza termica tra semicon-
danneggiarsi. duttore e ambiente è 18,1 o C/W, il componente
può funzionare anche senza dissipatore, ovvero
REALIZZAZIONE PRATICA montandolo in modo che il pad metallico sotto al
Il circuito è tutto realizzato con componentistica suo corpo venga in contatto con le piste del PCB
SM D, ragion per cui, per quanto sia formato da mediante lo scioglimento di una goccia di stagno
pochissimi elementi, il montaggio richiede un durante la saldatura.
minimo di attenzione, nonché un sal datore a punta

finissima, della lega saldante in filo da 0,5 mm di
diametro e una lente d'ingrandimento. Inoltre, per r". ...
meglio propagare il calore dal PAM861 O alla pista l l
Cosa occorre? ..
sottostante è preferibile procurarsi una stazione
Il materiale utilizzato in questo progetto è disponibile presso
ad aria calda. Futura Elettronica.
Particolare cura è richiesta proprio dall'integrato L'amplificatore con PAM8610 (cod. YA049) è in vendita al
PAM861 O, che è incapsulato in contenitore QFN prezzo di Euro 4,50.
Lo stesso amplificatore, ma dotato di potenziometro
da appena 6x6 m m con ben 1O pin per lato (40 in per la regolazione del volume e jack per ingresso audio,
tutto, visto che è quadrato). Ottenuta la basetta, (cod. PAM8610) è disponbile a Euro 8,50.
che si ricava per fotoincisione partendo dalle tracce l prezzi si intendono IVA compresa.

lato rame (il circuito è a doppia faccia) scaricabili


Il materiale va richiesto a:
dal nostro sito www.elettronicain.it, si monta per
primo il circuito integrato, da centrare nelle piazzo- Futura Elettronica srl, Via Adige 11, 21013 Gallarate (VA}
Tel : 0331-799775 - http://www.futurashop .it
le dei relativi piedini, quindi saldare dopo aver spal-
..
l

60

CON IL PATROCINI O DI CON IL SUPPORTO DI IN COLLABORAZIONE CON

REGIONE/
ROMA UNITED STATES EM BASSY
TO ITAI.Y
ITALIAN TRADE AGENCY
ICE • Agenzia per 11 promozione all'estero 1
l'lntemazlonalluezlo!lfl delle Imprese ltall.lne
LAZIO L

IL Pl

[®] #MFR19
MAKERFAIREROME.EU

MAIN PARTNER PARTNER MEDIA PARTNER PROMOSSO

...J : ; FERROVIE UNi p AIA


E ORGANIZZATI DA

SANOFI t L I n'Ji'li~NE
'-Af.. ,,.
,,,.•
Camera di Commercio

,,.•••
FUTURA Roma
ELETTRONICA•
• 1\J'\J\!jW
futurashop . it

~lfìl n Five Years Out DESIGN THE WORLD


'

• • • •
'
• • • •
• • • •
Schede Arduino professionali progettat e per
velocizzare e semplificare lo sviluppo di applicazioni
loT basate su WiFi •

. ., . o . o

o . - .
• ••
llll l l l l ll ll • • •
o o •

Q - Q ,
... - .. o • o

o • o ..,...__. o - o

o o • o

l • o

- -- •

••
~ • <>

.
eu ,- ....
C/)

-u:::J ,-, ,A•·clulnc>' \ €4 ,90 •


·-c
-~ l
~Al·dLiillO \' ...---..
l
l MI<RFOX I Cod. MKRFOX1200
I MI<RWAN I ~ \ 1200
~~, 1300 l
' --. ....... ,
1 ~rdulno \
1 UNO 1
' .._._ ... ~ Ideale per
\ WIFI realizzare progetti
1 loT (Internet of Thing)
, REV2 ~
Offre le funzionalità di ,_, basati su Sigfox
Arduino Zero
e la connettività della
tecnologia LoRa rM
,- .....
€ 44,00 ; '
l Ardulno \
Cod. MKRWAN1300 l ~~~·~ l
\ •l 000 -~---..._

Il WiFi integrato
facilita la connessione
' ~-'
,
a Internet. Dispone
,-, di sensore IMU
, ~rduin~ \ (lnertial Measurement Unit)

1 MI<R 1
€ 45,00
\ VIDOR 1
' ,_,
4000 ,
€ 54,90 ..... -,
~
Cod. MKR1000
..
1 ~rdulno \
Cod. ARDUINOWIFI
Dispone di Wi-Fi
Dotata di modulo Wi-Fi
l MKR l con Cryptochip per
u-blox, rende la tecnologia \ WIFI l •
comun1cazaon1• • •
sacure,
FPGA accessibile ' •1010 , ideale per realizzare
a tutti --~ .... . progetti loT (Internet
of Thing) alimentati a
batteria con un fattore di •
forma compatto
Progettata per
velocizzare e semplificare
€ 78,00 la prototipazione di
applicazioni loT basate
€ 34,00
Cod. MKRVIDOR4000 sulla connettività Wi-Fi • Cod. MKRWIFI1 01 O
er chi è nato nell'era dei display allo
Rievochiamo le stato solido, siano essi a LED, 7 seg-
affascinanti valvole menti, a matrice di punti, ed anche a
cristalli liquidi, è difficile immaginare
Nixie attraverso dei come si visualizzavano scritte e numeri
display basati su prima del loro avvento; ebbene, coloro
che hanno intorno al mezzo secolo cer-
pacchetti di lastrine in tamente ricordano che i primi display
plexiglass incise a laser, elettronici utilizzati erano quelli basati
sulle "valvole nixie" ossia tubi elettronici (che è improprio
illuminate mediante chiamare valvole termoioniche giacché tale termine indicava
LED Neopixel. i tubi a vuoto capaci di aprire, chiudere o modulare il flusso di
corrente) contenenti degli elettrodi a griglia sagomati come i
caratteri da rappresentare, che diventavano luminosi grazie

l
63
' ' Schema elettrico
SCHEDA BASE rnumnrtioJnnnlmmltmu-IJJirnitimitiimntJIDmlllimimnimurmlt

+SV +3V3
PWR
stampato che ospita un certo numero di LED
IN OUT
+ Ul Neopixel miniatura che proiettano la loro luce nella
+· + direzione della lunghezza, facendo illuminare la
GND
figura incisa nel plexiglass. Ogni lastrina viene illu-
minata dal basso (ossia da una delle facce strette)
mediante due LED; tale quantità non è arbitraria
+SV +3V3 ma è stata scelta perché abbiamo visto che con un
CNl solo LED si illuminava in maniera soddisfacente il
numero 1, ma quelli più grandi come ad esempio
1'8 sarebbero risultati non molto chiari e comunque,
in proporzione, meno luminosi di quelli più piccoli.
Questo concetto è rilevante anche perché i numeri
grandi come 6, 8, 9, per esempio, sono posti dietro
gli altri e quindi, a causa delle inevitabili perdite da
assorbimento derivanti dalla posposizione rispetto
alle lastrine dei numeri piccoli, perderebbero
visibilità.
La composizione proposta in questo articolo conta
sei digit con i quali abbiamo realizzato il visualiz-
zatore per un orologio digitale, pilotando opportu-
l l
namente i circuiti contenenti i LED Neopixel; questi
ultimi sono collegati in cascata ed allo scopo sono
stati progettati per essere affiancati e collegati tra
loro mediante ponticelli di filo di rame.
A pilotare la cascata è una scheda di comando che
all'emissione termoionica e alla luce ottenibile incorpora un modulo WiFi con il quale, se è presen-
pilotandola mediante un campo elettrico sufficien - te una rete wireless, possiamo collegarci a Internet
temente intenso. Questi caratteri, ossia i rispettivi e in particolare a un servizio NTP (NETWORK TI ME
• filamenti, erano tanti quanti i caratteri da mostrare PROTOCOL) che consente di avere l'ora esatta
per ciascun digit (e quindi per ogni tubo) e risul- costantemente aggiornata, i cui dati saranno poi
tavano fisicamente disposti -all'interno del tubo elaborati e inviati ai display.
di vetro- tutti in fila uno dietro l'altro, con davanti Il sistema siffatto è quindi basato su un ESP8266
quelli meno ingombranti per ragioni di visibilità di montato su una semplice basetta che integra lo
quelli che si trovavano dietro. stadio di alimentazione necessario per ricavare il
'

Con il progetto di queste pagine vogliamo un po' 3,3V occorrenti al modulo, partendo da una tensio-
rispolverare il fascino delle nixie attraverso un ne d'ingresso di 5V (necessari invece per i led Neo-
circuito capace di coniugare il principio di visualiz- pixel). Il modulo WiFi si collega al sito us.poo!.ntp.org
zazione di quei componenti dal fascino indiscutibile in UDP da cui estrae l'ora e visualizza questa sul
con la tecnologia più recente, simulando il modo di display Nixie a LED.
costruire i caratteri delle nixie attraverso moder- Quindi l'elettronica è formata da due tipi schede:
nissimi LED Neopixel e piastrine di plexiglass incise quella di controllo, che è unica, e quelle contenenti
in modo da creare percorsi per la luce, visibile i LED Neopixel che fanno da base ai display; queste
osservando li frontalmente. ultime sono una per ciascun digit del display. Nel
nostro caso, siccome proponiamo la realizzazione
IL PROGETTO di un orologio con visualizzazione di ore, minuti
Vediamo dunque in cosa consiste ciò che propo- e secondi, i digit sono 6 e altrettante risultano le
niamo in queste pagine, che nella sostanza è un schede a LED (schede Neopixel). ·
sistema modulare composto da un certo nume- Ciascun modulo digit appare come mostrato dal
ro di cifre, ossia di digit, ciascuno dei quali è un rendering in Fig. 1. ed è formato da un circuito
modulo base composto da 1O lastri ne in plexi- stampato riportante dal lato componenti i LED
glass incise a laser con la sagoma di un numero, SMD Neopixel disposti in modo da proiettare la
montate accostate su un telaio (impacchettate, se luce alla base delle rispettive lastrine, ognuna
preferite ... ) alla base del quale è situato un circuito delle quali, come vedrete più avanti, è sagomata in

. 64
..

DIHmW llll(llllWiliiDIIIl lllllJlllW JIIWIJIU H DRlllWD J

fondo riportando delle tacche finalizzate al miglior


accoppiamento ottico possibi le e perciò disposte in
modo da affacciari ciascuna su un LED.

SCHEDA BASE
Anche detta scheda di controllo, è quella che gene-
ra i dati da inviare alla cascata di schede Neopixel Fig. 1
Rendering del
ed è in generale un circuito dotato di un bus di co-
modulo digit.
municazione compatibile con quello dello standard
Neopixel e perciò composto da un filo di dati, uno
di massa comune all'alimentazione ed un terzo che
porta l'alimentazione positiva. Lo stesso circuito
dev'essere dotato di un microprocessore (o meglio,
un microcontrollore) in grado di generare dati in
forma seriale secondo il protocollo Neopixel.
Nel nostro caso si tratta di una scheda (la vedete
nella Fig. 2) a bordo della quale si trova un modulo
WiFi basato suii'ESP8266 e dotato quindi di micro-
controllore embedded programmabile affinché si
connetta a Internet mediante un access-point WiFi parallelo alla linea di alimentazione; gli stessi 5V
puntando a un sito che fornisce il segnale orario vengono portati al connettore CN 1 e alle morset-
aggiornato, ne estragga le informazioni e prepari tiere di uscita, nonché all'ingresso del regolatore •

i dati corrispondenti sotto forma di pacchetti da U1 (un LD1117533TR) che è un LDO a tre terminali
inviare serialmente lungo il canale dati. utilizzato per ricavare una tensione stabilizzata di
Quindi la scheda che produce e invia i dati alla 3,3 volt (filtrata da C2 e C4) necessaria al modu-
catena di schede e moduli display non genera in lo con ESP8266 per funzionare correttamente.
proprio i dati stessi, ma li attinge da un sito web Notate che il 3,3V viene utilizzato solamente per
sfruttando illink WiFi, quindi estraendo le informa- alimentare il modulo ESP8266, mentre le schede
zioni significative e preparando con esse i pacchetti a LED Neopixel sono alimentate con i 5V prelevati
da inviare serialmente lungo il canale dati diretti ai direttamente dal morsetto di ingresso. Prestate
display. particolare attenzione quindi all'alimentatore utiliz-
Lo schema elettrico della scheda, riportato in que- zato che deve essere quindi rigorosamente da 5V.
ste pagine, evidenzia il modulo WiFi con la sigla U2;
tale dispositivo è interfacciato all'esterno tramite
la propria porta seriale accessibile dal connettore
. CN 1, che riporta anche tutti gli altri pin significativi.
Come vedete dallo schema, il connettore (pin-strip)
c. che pilota la cascata di schede display è com-
Fig. 2
posto da due morsettiere che riportano, oltre ai Scheda base •
f con ESP8266.
+5V e alla massa comune, le linee 100 e 102 (due
GPl O del modulo U2) che trasportano i dati; per
l'esattezza, nella nostra applicazione inviamo i dati
ai display tramite 102, ma l'altra potrebbe essere
utilizzata per creare un secondo canale Neopixel o
per collegare ad esempio un pulsante per cambiare
l'effetto luminoso .
..
- Gli stessi contatti delle morsettiere sono riportati
su CN 1, dove arrivano anche TX ed RX deii'UART, il
reset ed altro ancora.
L'intero circuito si alimenta con 5Vcc stabilizzati,
prelevati da un alimentatore qualsiasi (switching
o lineare) purché ad uscita stabilizzata, filtrati
adeguatamente dai condensatori C1 e C3 posti in

J
65

Schema el ttric
.. MODULO DISPLAY

+SV
JINl JOUTl
sv >------~ ~----------e--------4----------- - - - - - ----4.,_________....,____--< sv
LDl +V Cl LD2 +V Cc LD3 +V L019 +V ClS LD20 +V

'DI 'DI DO 'or DO


IN 1---- OUT
Rl
GND GND GND GNO GND
GNDo- ----~ ~------------------------- ----4a------------- -QGND
+SV +SV
JIN2 JOUT2
'
IN OUT
sv sv
GND GNO

' l

Per quanto riguarda il firmware del modulo quello da cui attingere i dati sull'orario, che nello
ESP8266, adotta la libreria è di Connor Nishijima specifico è us.pool.ntp.org.
modificata per i nostri moduli Neopixel; inoltre È il caso di farvi notare che la libreria da noi l/elabo-
comprende tutta la porzione di codice che serve ratali permette di visualizzare i numeri con diversi
per instaurare la connessione in UDP (User Data- effetti: ad esempio è possibile accendere una cifra
gram Protocol) con il sito web desiderato, ossia di un colore e le altre con un altro colore molto più

OND AS Nl 100 AS OND


o o o
("') §[!] [[!] ~$
9@ ;g$
_J
[!]~ §@§t!]
.-$ ~ _J

§t!] _J 9t!d§@5 §El


l@~
§t!J_J §f)
;;.::
•!:
-
z
(.l'l
<
C)
z
[!J o$§@ :J$
§@~§ .. §-r.. ,;
_J $:t!]
:J$ o$§@
_Jo$
r 1-
:::J
o
>
Il)
o
z
o _J (!)

o o FRONT o IS1428j o o


o o o
o-
.- o-
JOUT1 (.)

D Il)
N
.-
(.)
(.)

D N
(.)
J l N1 l l l l
.- Il)
IX)
.-
(.) D IX)
(.) CJ
(.) CJ .- u CJ
.- .-
CJ '<t
.-
(.) CJ (.)

r--
.-
(.) CJ r-- ~ CJ
(.) D o
.-
u D
~
,;: CJ ("') (.) CJ _.
.- ("')
-o
.-
u CJ (.) CJ
-o
CJ CJ
o
ll"
(.) (.)

JOUT2 CJ D
o o o o JIN2

Elenco Componenti:

LD1 + LD20: LED neopixel WS2812B-2427 Varie:


C1 + C19: 100 nF ceramicO (0603) - Pin strip maschio 3 vie dritto/90°
R1: 470 ohm (0603) - Pin strip femmina 3 vie dritto/90°

l
'
66
r •

·a o di montagg·o
SCHEDA BASE
o
-o

O~[)> C3 C4
o
z
(."
>
1.0
>
~ l.()

C1oD Doc2
-i
-< + '·
'"
o "~
~
+
-o
:e
0 o
- 1<,~
l l
l
'
Il
;o
"
0 ~
U1 N "
o
-
~
o
OU2 0 :z

o lS1456j
~

Elenco Componenti:
C1: 100 nF ceramico (0603) Varie:
C2: 100 nF ceramico (0603) - Strip maschio 2x6 vie
C3, C4: 10 ~F 6,3 VL tantalio (B) - Strip femmina 2x4 vie
U1: LD1117S33TR - Morsetto 2 vie passo 5.08mm {3 pz.)
U2: ESP8266 - Circuito stampato 51456 {60x26 mm)

tenue. Quando la cifra su cascun digit cambia si posto da 1O pannelli incisi a laser impacchettati
può scegliere come ciò deve avvenire: ad esempio e opportunamente vincolati, come vedete nella
si può avere l'effetto dissolvenza, oppure il flip Fig. 4, che mostra il rendering del digit visto late-
(vengono accese in sequenza tutte le cifre e poi si ralmente, con in evidenza le lastrine accostate.
accende solo quella desiderata). Ogni pannello è illuminato alla base da due LED
E ovviamente non può mancare l'effetto nixie, che Neopixel in miniatura (codice Futura Elettronica
consiste nell'accendere il numero da visualizzare di LED Neopixel W52812B-2427) e gestiti da una
un bel colore arancione tipico delle nixie e le altre scheda Ardui no o compatibile, mediante un'appo-
cifre (ossia le rimnenti lastrine in plexiglass) del sita libreria.
digit in un colore azzurrino ma a luce molto tenue, In queste pagine trovate lo schema elettrico della
ottenendo così un aspetto come quello che ha un scheda, il quale è composto sostanzialmente da
tubo di vetro contenente un filamento illuminato, due file di tre contatti ciascuna in parallelo per
attorno al quale si crea una sorta di aurea azzurri- gli ingressi, riportati sul lato lungo che su quello
na simulante i riflessi nell'involucro di vetro. corto ed altrettante per le uscite, analogamente
disposte; il bus di ingresso consta del filo dati
l MODULI DISPLAY proveniente da 102 della scheda di controllo e
Ciascun display elementare, ossia un digit, è com- dell'alimentazione comprendente la massa, in

·Fig. 3
la scheda display
vista dal lato dei
LED.

..

67

DD

dei LED Neopixel è che internamente dispongono


di un chip controller in grado di leggere la stringa
di dati seriali ricevuta e ripeterla in modo da farla
giungere agli altri elementi collegati in cascata,
eseguendo solo la parte di dati, ossia il comando,
identificata dall'indirizzo corrispondente al suo.
Quindi i 20 LED di ciascuna scheda digit sono tutti
collegati in parallelo per quel che riguarda l'alimen-
tazione e in cascata per quanto concerne i dati;
Fig. 4 l'ultimo LED della scheda ha l'uscita DO connessa
Il singolo digit
alle file di pin di uscita, in modo che i dati possano
visto di lato.
giungere alla scheda succesiva, dove sortiranno
effetto analogo, ossia verranno eseguiti da ciascun
LED i soli comandi pertinenti.

REALIZZAZIONE PRATICA
Bene, passiamo adesso alla costruzione del nostro
visualizzatore simil-nixie, che è modulare e quindi
prevede l'assemblaggio di tanti moduli digit quante
sono le cifre del nostro orologio: sei, in questo
caso. Bisogna anche realizzare il circuito stampa-
comune con quella dei dati. Il canale dati entra to della scheda di controllo e sei PCB base per i
nel contatto DI del primo LED Neopixel tramite un display; tutti sono a doppia faccia e vanno ottenuti
resisto re da 4 70 oh m e dal pied ino DO si preleva la per fotoincisione dopo aver scaricato le relative
stringa dei dati ripetuta, perché una caratteristica tracce lato rame dal nostro sito www.elettronicain.it
ricavando ne le pellicole da stampe su acetato o
carta da lucido.
Incisi e forati gli stampati, montat e per primi i com-
ponenti su quello di controllo, che è il più semplice
da preparare in quanto ha pochissimi componenti,
pur trattandosi di SMD, nonché dei pin - strip e tre
morsettiere per l'alimentazione e l'uscita. Per il
corretto orientamento dei componenti seguite il
piano di montaggio che vedete in queste pagine,
ricordando di utilizzare, per la saldatura, un sal da-
tore a punta fine di piccola potenza (una trentina di
watt) e del sottile filo di lega saldante, per esempio
Fig. 5 da 0,5 m m di diametro.
U digit visto in
esploso. Per montare il modulo con ESP8266 bisogna dota-
re quest'ultimo di due file di pin-strip maschi da 4
contatti l'una che andranno a innestarsi in due file
di strip femmina da saldare sul PCB della scheda di
controllo, ciascuna da 4 pol i.
Sistemata la scheda base passate a montare le
board con i LED Neopixel, prestando attenzione
sia al verso indicato nel piano di montaggio per i
LE D stessi, sia a non surriscaldare tali componen-
ti durante la saldatura: appena la lega saldante
si sciogl ie completamente, togliete il filo e la
punta del sal datore e passate a un altro contatto.
Chiaramente tutti i LED vanno montati sul circuito
stampato tenendo li con la faccia emittente la luce
verso l'alto.

l
'
68
\
..-

'

amrfil[lllllllllUlllllfllll lli.IIDilll'[ lllWllll[llllllUm[llll lRillllllllWI~(mllllliUJ llfllllll~lllllll

Fig. 6
ndigit
completato
visto dal
vivo,con in
evidenza il
pin·-strip a
tre poli per la
connessione
in cascata .

..

Per le connessioni tra circuiti dei digit suggeriamo Come appare sempre nella Fig. 6, la scheda display
di utilizzare dei pin-strip da saldare sulle piazzole è vincolata tra la cornice inferiore e la cornice di
relative ai lati corti (che sono quelli su cui affian- base, le quali sono strette tra loro a sandwich
cheremo i singoli display) e far sporgere come mediante viti 3MA più dado.
mostrano le foto del prototipo visibi li in queste Quindi, riepilogando, il pacchetto di lamine è
pagine e come appare nella vista in esploso pro- fermato superiormente da una cornice e da un
posta nella Fig. 5. Per utilizzare jumper maschio/ coperchio, mentre inferiormente è assemblato
femmina conviene adottare strip maschio da un e mantenuto in posizione grazie a una cornice
lato e femmina dall'altro. (zoccolo, Fig. 7) e a una piastra di base, fra le quali
Una volta saldati tutti i componenti sulle sei è fissata la scheda display contenente i LED.
schede, potete iniziare ad assemblare i digit, il cui La disposizione dei pin- strip JIN/JOUT (per portare
aspetto finale sarà quello mostrato nella Fig. 6.
Come vedete, ciascuno è formato da 1O lastri ne
di plexiglass incise a laser, acquistabili presso la
Futura Elettronica (online su www.futurashop.i~
impacchettate mediante delle cornici, che sono
una superiore (chiusa poi da un coperchio che
serve a bloccare la propagazione della luce verso
l'alto, inutile e che disturberebbe la visione in am-

bienti poco illuminati o se il sistema viene posto in
prossimità di superfici specchiate) ed una -inferiore. Fig. 7
Inferiormente c'è anche una seconda cornice, che La cornice
• + • . l
m ~ enore de
si trova posizionata fra il PCB e il pacchetto di digit, è più
lastrine e che sotto è ch iusa e forata in modo da che· altro uno
zoccolo dove
far incastrare il fondo delle lastrine stesse, le quali entrano le
sono lavorate in modo da avere un certo numero tacche delle
il""'strinc.
il'~ ~ ..,
di tacche che si affacciano sui LED Neopixel, in ·=J

maniera tale da riceverne meglio la luce prodotta.


Avete un/idea più chiara di quanto spiegato, guar-
dando le immagini nelle pagine precedenti.

69

, -S.chema di CABLAGGIO
IDJIDIIIIJDJIIIIDJIDIDlllltliiiO·o 'WIIIIUrHIJIDillliRIDIJIDJrllllllllllllm•

...

SCHEDA BASE SCHEDA DISPLAY SCHEDA DISPLAY


-

limentazione e dati tra i moduli digit) apposi- fornire lfalimentazione però a 3,3Vcc, occorre, per
tamente sce!ti del tipo con pin ad angolo retto, mandare il modulo in programmazione( porre 100
consente di accedere ai tre contatti per lato con cui (GPl O) a massa. Per questa ragione consigliamo di
realizzare le connessioni della catena di digit. utilizzare un circuito studiato appositamente per lo
Bene, una volta assemblati i singoli digit e in- scopo, che è il debugger dedicato aWESP8266, ac-
terconnessi mediante dei jumper tipo quelli per quistabile on-line da Futura Elettronica (la pagina
Arduino, è possibile fare una prova prima di cercare del prodotto è www.futurashop.it/ESPB266-DEBUG-
'
un telaio o un contenitore cui fissare lfintero GER-3085-ESPB266DEB) il quale dispone di jumper
display; ma prima di utilizzare il tutto occorre in parallelo ai pin dello stripf facilmente ponticel-
caricare il firmware nel modulo WiFi con ESP8266, labili con jumper da PC a passo 2 54 m m. Questo 1

operazione che si esegue connettendolo tramite circuito fa da base ed ospita il modulo basato
un converter TTL/USB a un Personal Computer suii'ESP8266, che quindi non deve essere con-
utilizzando i pin RX e TX del connettore CN 1 della nesso tramite fili e che può esservi montato sopra
scheda di controllo. senza il rischio di sbagliare qualche collegamento
e danneggiarlo. Basato sul chip di conversione
PROGRAMMAZIONE DEL SISTEMA USB-TIL CH340G, questo dispositivo permette di
Il modulo si programma utilizzando I'IDE Ardu ino caricare il firmware o il codice Ardui no sul modulo
come fosse una scheda di terze partii però richiede WiFi ESP8266. Sull'adattatore è presente, oltre al -
qualche piccolo accorgimento( ovvero per poterlo connettore femmina 2x4 pin dedicato aii'ESP8266,
• programmare( oltre a collegare il modulo me- anche un pulsante di reset, un regolatore di ten-
diante un converter TTL/USB di quelli in grado di sione a 3,3 volte connettore 2x4 pin maschio con:

Pera:trso deAa cartclla degli sketdt:


r~"' .-.
~..;~ . . . . .--... , - ... . . . ""··-....v-..•.-" ... . . . ..........._ _ _ M - _.. ____"_____________._............. -~--~ . -··-·- ··-··.....__--..- -.. - - - -......._..... ...- -...-- r-------.,
l C~ ~sers\[)avide \poa.Jments \Arduinol
l..... . ·~ ,..,.. .. . . "' . . . . . . . . . - . . . ·~ . . .~. . _..'"'. . . . . . .""......---.~..
~ . . . . . . . . ., , . , . . . . . ,
. . ., _ _ .......,,. . ._......,... _ _ _ . . _ _ , . . ._ _ , _ __ ...., . . . . ._ . . ............ _ _ ~· """'~-~-- . . . . . . ._
. . . .-·-.. "·-· · .---· .. . . . . __. . ~ ---... .... . . --·---------·-·······-----··--.. . . . _,. . . . ..J l~.~.,.;;=:.;;...J
....., .. . . . _ . . . . . . . . . . . . . . . ., ..........A . . . . . . . . .. . .
..,_,.._,~_ ~

Lingua defr:editor: }OefauJtdi sistet,ua • . .


~-.--... . """'"'""'~- .~._,.....,_.,_...,.~(-~....~....~........ -
... ,, . ·.. . •· .·.·. / " . ·. • l (rtchiede 11 riavvio di Arduino}
-··~·~-....................._.~~,;,A

Dlmenslonl font deB'edimr: [ì~~- . l


Mostra un output dettagliato durante:
,.-.....____ __ .., '\
[j compUaiione [5 carica
~ Fig. 8 Compiter warnings~ l~
f;!;)ne<. • .'!"•l
..--.--_J
Pm· trovare il [] Vwualizza i numeri di linea
debugger tra le
schede di terze IEJ Enable Code Folding
parti occorre l!] Veriika Ucodice dopo il caricamento·
definire il percorso
tEl Usa un edìtor esterno ..
di ricerca indicando
la cartella dove si ~} Controlla .aggiornamenti atl~avvto
trovar~o i driver. ~ Aggiorna .automaticamente flest-ensione degU sketch durante salvataggio (.:pde - >·.mo) n
fll Salva durante verifica 'o caricamento
Adrlitiooal Boards Manager URLs-! fhttP~i~-~;;Ì.p~g~Jii;h;p-j;;I~:j;;-~-~---~----------.,----~-----W-·W--J· r. .· .
!..---··----~-·--·--~~--·-·~--~---• --·--·-·w--~-·-~-···-·-·-~• '"' ' ~-•-"--•· ----- 1..
t :! . J
~Jire t~zioni poowno essere modHkat.e ~ìrettamente nel file
C::'f;sers\Dav!de\App0ata\Roaming\i\rduino1S\p.references.bct
(modlfkab1!e solo quando Arrlu!no ncn è ln esect.lli&H::)

• • . -- -~-· --- ---- -·-------~- -- -·-


~-
·~ -- ·--·-~- - - -- --·- , ___ - ------ -- --- ----- ""- -~--- -- --- --· -

70
r •

l lllll l l

rete wireless cui il modulo con ESP8266 si aggan-


cerà. Per poter visualizzare l'ora italiana dovrete
impostare il fuso orario tramite questa istruzione
T/ME- OFFSET = 2.
A questo punto staccate il cavo USB, sconnettete il
modulo dal Flasher (programmatore) e montatelo
sulla sua scheda, che dovrete aver già cablato con
tre fili alla prima scheda display, la quale poi la
replicherà alla seconda, alla terza ecc.
Verificati i collegamenti dell'insieme, alimentate la
scheda base e se tutto andrà bene, giusto il tempo
di instaurare la connessione Internet e vedrete
l'ora esatta apparire sul visualizzatore. 'l

Se tutto funziona come previsto, potete ritene-


re pronto il vostro orologio per essere montato
in contenitore adatto, che potrete scegliere a
piaci mento e posizionare come meglio credete;
ricordate solo che il modulo WiFi deve poter riceve-
re e trasmettere le onde radio, quindi se scegliete
3V3, GND, RST, 100, 101, EN, TXD e RXD. un contenitore di metallo dovrete realizzare su una
Una volta applicato il modulo al debugger, per sua parete un'apertura tale da consentire al modu-
procedere con la programmazione occorre innan- lo basato su ESP8266 di affacciarsi all'esterno.
zitutto scaricare i driver deii'ESP8266 Debugger (i
driver sono quelli del transceiver USB della Silicon CONCLUSIONI
Labs, raggiungibili sul web allink https:~www.· Bene, con questo è tutto. Vi abbiamo proposto un
silabs.comlproductsldevelopment-tools/softwarel progetto che ci ha permesso di rispolverare la te-
usb-to-uart-bridge-vcp-drivers) quindi aprire l'ID E oria di funzionamento dei visualizzatori elettronici
Arduino e installare il driver di terze parti mediante utilizzati all'epoca dei tubi a vuoto, ossia le Nixie,
il comando di menu Strumenti>Scheda>Boards Ma- simulando tali display con una struttura ottica
nager; con questo comando accedete alla finestra dove dei LED Neopixel illuminano un pacchetto di
corrispondente. lastrine colorate dove la luce viene propagata tra-
Ricordate, però, che popo aver scaricato i driver sversalmente attraverso scanalature incise a laser.
nella cartella di destinazione, li visualizzerete in Il display è modulare e può essere composto da
Boards Manager solo se preventivamente avrete molti più digit e pilotato anche con dati diversi da
definito il relativo percorso di ricerca; questo si fa quelli relativi all'ora: dipende da come impostate
impartendo, dal menu File, il comando Impostazioni, il firmware, che costituisce una base modificabile
quindi scrivendo nella casella Additional Board Ma- per generare dati localmente , invece di attingerli
nager URL il percorso dove i file si trovano (Fig. 8} dal web, oppure riceverli da Personal Computer via
e confermando con un eli sul pulsante OK, il che USB, tramite un opportuno convertitore.
riporta alla finestra principale dell'l DE Ardui no.
Installata la scheda, potete selezionarla e poi sce-
gliere la COM port ESP8266 Flasher and Program-
mer + ESP8266 WiFi Serial Transceiver module;
Cosa occorre?
connettetevi ad essa impostando il baud-rate al Il materiale utilizzato in questo progetto è disponibile
valore di 115200. presso Futura Elettronica. Il display Nixie a LED (cod. N lXI EL)
completo di parti in plexyglass e circuito con LED Neopixel è in
Ora andate ad aprire (File/Apri} lo sketch scari- vendita a Euro 29,00. Il PCB con LED Neopixel è fornito anche
cabile dal nostro sito www.elettronicain.it insieme separatamen te (cod. FT1428) a Euro 12,00.
agli altri file del progetto e cliccate sul pulsante di La scheda per ESP8266 (cod. FT1456) è disponibile in scatola
di montaggio a Euro 5,00 e non include il modulo ESP8266
invio per caricarlo nella memoria del modulo; resta (cod. ESP8266) disponibile separatamen te a Euro 5,00.
inteso che per potervi connettere con successo l prezzi si intendono IVA compresa.
alla rete WiFi dovrete aver modificato lo sketch
Il materiale va rjchiesto a:
inserendo, al posto dei valori predefiniti di SSID,
. network name e via di seguito, i parametri della Futura Elettronica srl, Via Adige 11, 21013 Gallarate (VA)
Tel : 0331-79977 5- http://www .futurashop .it ..

71

MINI TELECAMERA FULL HO MINI TELECAMERA CON DVR - FISSAGGIO A CUP
OCCULTATA IN UN'AGENDA Mini telecamera con DVR dotata di display LCD.
Estremamente leggera e compatta consente di regist rare
Il suo design curato minuziosamente in video e audio, scattare fotografie e memorizzare i file su SD
ogni particolare la rende identica ad card (acquistabile separatamente).
un'agenda vera e propria ma al suo Full HO La confezione comprende una clip per fissare la telecamera
interno si nasconde una telecamera Full
HD con microfono integrato. Dispone di
1080 agli indumenti e un cavo USB per collegare il mini DVR
al computer. Sul retro del dispositivo è presente un
sensore PIA per la rilevazione di movi-
mento (funzione Motion Detection) che
magnete che permette fissare il dispositivo ad un
oggetto metallico. Batteria ricaricabile integrata.
lOBO
consente di attivare la registrazione solo Istruzioni in italiano.
in presenza di movimento. La telecamera
è dotata di visione notturna e grazie alla ,00
tecnologia Starlight permette di effettua-
re riprese molto nitide anche in condizioni cod.FR713
di scarsa luminosità. Le immagini riprese
vengono salvate su una memoria SD
card e possono essere trasferite su PC MINI TELECAMERA ACTION
tramite il cavetto USB in dotazione.
Integra una batteria da ben 8000 mAh SPORT FULL HD
che permette registrazioni continue fino Mini telecamera act ion Full HO (1080P) a
a 30 ore, pertanto può essere collocato colori in grado di funzionare anche come
sia in casa che in ufficio, oppure tenuto in Webcam (no audio). Può registrare video,
mano, senza destare alcun sospetto. scattare foto con una risoluzione fino a 12
Istruzioni in italiano. Megapixel. Dispone di angolo di ripresa
di 140°, 5 LED IR per la visione notturna,
funzione Motion Detection , batteria al litio
ricaricabile integrata , attacco per cinghia
e staffa di supporto. l video e le fotografie
vengono salvate su una memoria micro SD
card HC (max. 32GB acquistabile separa-
tamente). Istruzioni in ita liano.
PENNE PER REGISTRAZIONE
AUDIO-VIDEO, FOTO
Sembrano delle semplici penne ma nascondono
un'efficace telecamera con la quale è possibile
effettuare riprese audio-video e foto ad alta
risoluzione. Ideali per uomini d'affari, investi-
gatori, studenti, meeting, conferenze, colloqui;
possono essere utilizzate anche come pen drive.
Istruzioni in italiano.
,00 CON
€ MEMORIA
INTERNA ,90
cod.FR707 OABGB
cod.CP756

Full HD
OROLOGIO/SVEGLIA WiFi DA TAVOLO
.00 CON TELECAMERA NASCOSTA E DVR
cod. FR708

BOt TIGLIETTA CON


DVR E TELECAMERA
Occultato dietro l'etichetta di una
vera bottiglia d'acqua da V2 litro,
perfettamente utilizzabile con acqua € 7),00
da bere, è presente un compatto cod.FR738
OVR con telecamera pinhole Full
HD, microfono e batteria ricaricabile.
1080
Grazie al motion detection è possi- Orologio/ sveglia digitale con connessione Wi-Fi, telecamera
bile attivare la registrazione solo in CMOS da 1 Mpx con ampio angolo di ripresa (120°), 6 LED
presenza di qualcuno. Le immagini infrarossi con attivazione automatica per la ripresa notturna e
riprese vengono salvate su una micro microfono. Permette di effettuare registrazioni audio e video
SD card (acquistabile separatamente) (AVI) con risoluzione 1280x720 pixel e salvarle direttamente
e possono essere trasferite su PC su micro SO card max. 32GB (acquistabile separatamente) .
tramite il cavetto USB in dotazione. Permette inoltre di scattare fotografie con una risoluzione di
Integra una batteria da ben 400 mAh 640x352 pixel. Consente la visualizzazione in tempo reale tra-
che permette registrazioni continue mite App da installare su smartphone iOS e Android . In caso
fino a 3 ore. Istruzioni in italiano. di allarme I'App invia notifiche e scatta istantanee.
Istruzioni in italiano.
igFox è una rete di telecomunicazioni
dedicata ai dispositivi loT e prende il
nome dall'azienda che l'ha sviluppata;
nata in Francia, è stata estesa in altre
nazioni grazie ad accordi con fornitori
di connettività (in Italia è Nettrotter,
www.nettrotter.io) che permettono
l'accesso alla rete globale SigFox
attraverso stazioni ricetrasmittenti (Base Station) conformi
La rete loT allo standard SigFox. È possibile verificare la copertura SigFox
alla pagina web www.sigfox.com/enlcoverage. In queste
d'oltralpe che ha pagine scoprirete come sfruttare la rete SigFox per imple-
invaso il Mondo. mentare applicazioni loT, ma prima è utile un richiamo sulla
teoria di funzionamento della rete, schematizzata in Fig. 1.
Premettiamo che SigFox permette una comunicazione bidi-
rezionale e la comunicazione deve sempre essere avviata dal
...
dispositivo. E stata concepita per lfinvio di messaggi di ridotte

73
'
-

IIIIJIIIIIIJIJJIJJIIIIIJIIIJIIIIIIIIIIIliiiiiiiiiiJIIIIIJIIIIJIIIIIJIIIIIJJIIJIIIIIIIJIIIIII

~----------------
Sigfox network '
uplink 1
l'
-'•-aJ:_,_u:r-r••-12--él-•+
-~ l
.________ l '
Fig. 1 downlink l ~-------+·~
Schematizzazione
della rete SigFox. l l
..
l l •

l l
connected 1 radio Sigfox 1 applìcation
objects l
________________
\ hubs doud
l
/. server

,
dimensioni e non è quindi adatta per usi a banda del canale di soli 100 Hz. Confrontandolo con la
larga (multimediali, trasmissione permanente, larghezza di banda di una rete GSM, che è di circa
ecc.). 200 kHz, è facile capire perché si usa il termine
L'attenzione posta all'efficienza energetica con- Ultra Narrow Band. Inoltre per il fatto di utilizzare
sente di realizzare dispositivi collegati alla rete in in Uplink una banda di frequenza non licenziata, la
grado di durare anni con la batteria standard. potenza massima è limitata a soli 25 mW. Compa-
La rete SigFox opera su frequenze sub-GHz, sulle randola con la potenza di un modulo GSM, che di
bande 15M: 868MHz in Europa/ETSI e 902MHz in solito si attesta sui 2 W, possiamo farci una idea di
USA/FCC. SigFoX utilizza una modulazione Ultra- come debba essere ottimizzata la trasmissione per
Narrow Band (UNB) e consente una copertura ottenere dei risultati accettabili.
,•
maggiore rispetto alla rete GSM. Ogni messaggio di Uplink ha una lunghezza di
Non vi è alcuna negoziazione dei parametri della 26 Byte e può contenere al massimo 12 Byte di
connessione tra il dispositivo e una base stati on ri- carico utile (Payload). Questa è la ragione per cui
cevente: il dispositivo, semplicemente emette nella i messaggi che nel progetto invieremo tramite la
banda di frequenza disponibile. Il segnale viene Board MKRFOX1200 possono avere una lunghez-
rilevato dalle base station più vicine, decodificato e za massima di 12 Byte. Ogni messaggio Inviato

trasmesso al back-end della rete. l viene automaticamente ripetuto tre volte su tre
La de-duplicazione dei messaggi ed altre operazio- differenti frequenze nell'ambito del range permes-
'
ni relative alla trasmissione sono gestiti dalla rete so. A una velocità di trasmissione di 100 bit/s, che
stessa. l messaggi vengono poi (eventualmente) equivale a 12,5 byte·per secondo, un payload di 12
inoltrati all'applicazione dell'utente e resi accessi- byte impiega circa 6,5 secondi per essere inviato,
bili tramite le API di SigFox. Ogni messaggio viene più un extra per l'intervallo fra le tre t rasmissioni. Il
autenticato utilizzando un meccanismo hash, e protocollo include un timestamp della trasmissio-
una chiave privata specifica del dispositivo; tale ne e l'ID unico del dispositivo nei suoi metadati.
caratteristica offre elevata protezione dagli attac- La limitazione di 140 messaggi al giorno deriva del
chi 1/replay': Il protocollo radio SIGFOX offre anche ciclo di lavoro dell' 1% che i dispositivi senza licenza ..
un'elevata resistenza alle interferenze (Jammer). devono osservare a 868 MHz: un giorno ha 86.400

SigFox è una soluzione per lunghe distanze (30~50 secondi e, non potendo occupare il canale per più
km in ambienti favorevoli, fino a 15 km in aree di 864 secondi al giorno, dividendo per i 6,25 se-
semi-rurali o urbane non densamente popolate) e condi richiesti per inviare un messaggio otteniamo
basse velocità di trasmissione dati (1o~ 100 bps e 138,24 messaggi/giorno.
fino a 12 byte per messaggio, max 140 al giorno).
MESSAGGI DI DOWNLINK
MESSAGGI DI UPLINK Con il termine Downlink si intende un messaggio
Con il termine Uplink si intende un messaggio che che ha origine dal Backend di SigFox ed è destinato •

origina dal device ed è diretto al backend di SigFox. al devi ce; tale messaggio non è obbligatorio, tanto
In Europa, per il messaggio di Uplink SigFox usa che alcuni moduli SigFox elementari non hanno
alcuni kHz della banda 15M (non licenziata) sulla neppure la sezione di ricezione. In altri termini, la
frequenza di 868 M Hz, trasmettendo con un data- trasmissione è del tipo Send and Forget, quindi non
rate di 100 B/s. quindi con una larghezza di banda prevede un feedback sull'effettiva ricezione. Nel

74
.
l

caso del modulo radio (ATA 8520) adottato sulla Questa limitazione è dettata dalla esigenza di
board MKRFOX1200 (con cui lavoreremo) si tratta ridurre il consumo di energia il più possibile sul
di un modulo bidirezionale e quindi potenzialmente lato del dispositivo mobile. Dopo la chiusura della
in grado di ricevere dei messaggi di Oownlink. In finestra temporale il chip Sigfox ritorna in stato di
Europa, per i messaggi di Downlink SigFox si usa sleep e non sarà in grado di rilevare i messaggi in
una banda licenziata nel range 869,4"':'"869,65 MHz arrivo. Inoltre, a causa del duty cycle imposto per
.. con una potenza massima di trasmissione di 500 legge del 10%, che la stazione base deve osservare,
mW e un massimo duty-cycle del 1O%; il data rate i dati del Downlink devono essere talvolta bufferiz-
del canale di Downlink è 600 bit/s. zati per un po' prima di poter essere trasmessi. In
Per quanto riguarda i messaggi di Downlink, si pratica ciò significa che un eventuale messaggio di
possono trasmettere al massimo 8 byte di dati Oownlink diretto verso il dispositivo potrebbe es-
e si possono inviare quattro messaggi al giorno. sere 'tenuto in pancia" dalla Base station per due
Quanto ai messaggi di Downlink non ci sono limiti motivi, il primo perché il device al cui è destinato
espliciti, però vengono garantiti solo quattro mes- non è al momento raggiungibile, il secondo perché
saggi al giorno, siamo liberi di richiederne quanti è stato superato il massimo duty cycle del 10% e
ne vogliamo ma la possibilità di riceverli è legata al quindi verrà inviato appena sarà possibile.
carico della Base Station, la quale se ha superato
la soglia massima non ne invierà altri finché non si UNA SOLA ATTIVAZIONE
ripristinerà la soglia. Un'altra caratteristica interessante di Sigfox è che,
una volta attivato un dispositivo, funzionerà in
FINESTRA DI 'RICEZIONE qualsiasi Paese in cui sia stata implementata una
Bisogna tenere assolutamente in considerazione rete SigFox nella banda di frequenza supportata

che la comunicazione deve sempre originarsi dal dal dispositivo. Questo è un grande vantaggio
dispositivo. Il quale invia un messaggio di Uplink.
Poi se il messaggio è "confezionato" in modo tale
(poi vedere come nel codice) per attendersi un
messaggio di conferma (ACK), si aprirà una finestra
temporale di 30 Secondi entro la quale il device è
disponibile a riceve un messaggio di Downlink.
1- 1- ....
z z z
---

r Fig. 2
Pinout del

+- modulo
MKRFOX1200.
-
Batteria esterna

~~
t-
z
-- -- --
75
\
, '

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJIIIIIIII1111111111JIIIIIIIIIIIIIIIIIIIIIIIIIIIJIIJIII

~ Bo-ards Managtr x
~-~~- ~
----";-- ~-~~~------ ------ ------------------------------------------------~l
Ty~ : All v ~ ~md
.. . .~-------....._.~-- _.... <--··---- . .__ ·-···· ______,_____.. . . ____ --·-~·~ ~. . . .- - -·- ---------..--.~------- -----------------------~

More info
--- - ....-- ~ -~.,-- - - -
SeJect vetSion v Ihs Rtmove
Fig. 3 -- ·- --~

Cal'icam ento de'l Ardwno SAMD Beta Boarda. {!2-bits ARM Cortex -MO+) by A.w:lulno
Core SAr~1D21 nella B.oards includecl in this. pa<:kageu
IDE Arduin. Arduìno. MKR Vi dor 4000.
Online help
More i nfo

~------------------------------------------------ -------------------------------------- •
Indus:trui no SAMO Bouds (32-bit.s ARM Cortex-NO +) by tndust:rui no
Boards l n~lude.d in this patkag• :
lndustruìn o D21G.
Online help
More info

·-dose
i
L-

rispetto ad altre tecnologie cellulari in cui le reti SCHEDA MKRFO X1200


sono gestite da società indipendenti. Per effet- SigFox ha delegato la produzione dei dispositivi da
tuare il roaming a livello internazionale, altre reti interconnettere alla propria infrastruttura di rete
devono essere interconnesse e gli operatori di a una serie di produttori di chip; uno di questi è
solito si scambiano l'un. l'altro i loro clienti per il Atmel, che con il dispositivo ATA8520 sta primeg-
roaming internaz ionale. Sfortunatamente, Sigfox giando. Ardui no da parte sua ha colto la palla al
deve utilizzare diverse bande in Europa e negli balzo ed ha realizzato un dispositivo della famiglia
Stati Uniti, quindi la connettività globale non è MKR il modulo MKRFOX1200 che possiamo
t uttora garantita. Comunque gli sviluppatori di chip vedere in Fig. 2. Con il modulo viene rilasciata

di connettività stanno già lavorando alla realizza- una sottoscrizione gratuita alla rete SigFox per un
zione di moduli Sigfox "multi-band" per una reale la periodo di due anni.
connettività globale. La board è basata sul microcontrollore SAMD21

Evet~t l MMOO U.l - o x


It ~ T~ ~p
. .E<I.... . - - - - - - --- - - - - -

a
~

Auto Fonn&t
Afttllll't ~td\
,.. 1
...
Cti'I•Shitt..M ~--------__.__._..
.. _ __...._ ___._ _ _ _ _ _........_ _ _ _ _ _.._..__ _
St!illl MClMOl
J
SfMl Plo.tttt Cttt~Sllilt• l '
t

l
8oar<f. ~Nduino MXRFOX t 200·
p.,,
' Gèt~ll'lta
A<dt• 1< • t,'') \ll·bit> ARM M• <· MO· 1!knl1<1~ l
Afduil'lo/Gtroìoo 2~ro {llroQ1'amM\iiQ Poro 1
n()Ota!M'Ier. •AVR e· ' M~ul~u,ol60{N.attve usa Potu 1

Fig. 4 lv Burli Bootloldtf ;\t·du~;oo MKR1000


11
Selezion e della ArcNinoM~O
• Ard\i•1'16 MI(.R fOX l2.0ò
Board MKR FOX H A!tkiÌI"'I M~ GSM 1.00
1200. .• t i nc ~u~ <SiqF~x. h > Afd\lino M!Cft WA."' noo
l~ l irtch•;:lit "' JU'd.uinoLowi'Owt> t. l\ • AdAfruit CtrtUìt Pll)'9iùUnd Exprt$S !
' f i.r>,: l " -1"' oQ."<ilo flt~lt..I'Sf'lt . )l'> Artfulno MO Pr<l {ProgtàllllflinO I>Oftl '

1 'ht>ç l u <J• •.sPl . h •
-
h nè lud.. ..-J.<t~ ~ruh .!S'!.,"'U.• h..,.
Arclu•IIO ~ Pro {Natr.-é VS& Port>
AIWioOMO
~

.d Arduinolttt~
~- l <ie! u . '!F.:'_~ ' A._., IV~ oo~ ·-.'1;
:: t d * t. h • ~f'::'_'Rbl' - J 11 , ::.u "'""" .. h l!! N Mt-,·'t: th:l.~ Azt:iumo 'Nn
2 ' • " " H M n~-o.: ' Arttllinof(.lenuim1 UtiCI
AldUII'I() IÀ!tl'l'~ 'Of OJ~un.lll
AM:rino NI\1\Q
Arduino.J(iènU1no MtO* or Mtoll 2S60
Arauino M~ AOK
AA!uino l fOI'IaTOO
AtduillO l «>>l6td0 eTH
A.rc.lùlno/Gtt~Uloo Miffl'l
ÀI'Ouìno isplòt~
A~inOM.ni
Anfl.lino Ethtmfl
ArdllinOfiO
Aldui'IO T a

..

76
-

!111111111111111111111111 l llllllllllllllllllllllllllllllllll 111111111111111111111111111111111111 111111111111111

r .t" • •"' , . • c ~ ~

(;)) slcetch_may04a l Ardurno 1.8.9 D x


File Edit Sketch Tools Help
AutoFormat Ctrl+ T
Archive Sketch
sketc l1_m a~·0 4
Fix Enc:o,dìng & Reload
Manage Librar•e:s ... Ctrl+ Shtft+ l Fig. 5
2 / / t: •.lt Selezionare
S.erlal Monitor Ctrl+ Shift+ M
la scheda
-- "
,

t:.
,
~
Seria l Plotter Ctri+Shift+l
dall'lDE
Arduino.
·-· \"'iFi101 / '.,'l iFiNINA Firmware Updater
-
~ -·- ..
... 1.) _ d -'-
- Ci .
l"f
l J l,./ p··"'t...
~
Bo.ard: "Arduino MKR FOX 1200" >
Port Seria! ports
Get Board lnfo COM4 (Arduino MKR FOX 1200)
l
l

p-rogrammer: "AVRJSP mkll" }

Bum Bootloader
l

e sul modulo di connettività SigFox ATA8520; il in modo corretto, è necessario selezionare come
modulo SigFox comunica con il microcontrollore tipo di scheda la 1/Arduino MKR FOX 1200" (Fig. 5}.
tramite l'interfaccia SPI.
La scheda può funzionare per oltre sei mesi con 2 PRIMO SETUP DELLA SCHEDA
batterie AA da 1,5 V; è anche possibile alimentare Per poter utilizzare la scheda MKRFOX1200 con •
la scheda tramite un alimentatore a 5 V. Il passag- la rete SigFox è necessario effettuare una prima
gio da una fonte di alimentazione all'altra viene registrazione sul Backend SigFox.
eseguito automaticamente. Per fare questo, bisogna caricare un primo sketch
Una buona potenza di calcolo a 32 bit simile alla che serve a ricavare due P.arametri essenziali per la
scheda Zero, il solito ricco set di interfacce 1/0, registrazione e poi una volta effettuata la registra-
comunicazione SigFox a bassa potenza e la facilità zione a verificare la corretta comunicazione tra la
d'uso del software Arduino (l DE) per lo sviluppo e scheda Ardui no e il Backend SigFox.
la programmazione del codice, sono elementi che Abbiamo quindi necessità di utilizzare due librerie:
rendono questa scheda la scelta d'elezione per i SigFox.h e ArduinolowPower.h
progetti alimentati a batteria in eu è richiesto un Includiamo sempre le librerie nel progetto perché
fattore di forma compatto. le stesse sono oggetto di continua evoluzione e
non è detto che versioni diverse funzionino senza
LA MKRFOX1200 E L'IDE ARDUINO modifiche sul codice degli esempi che includiamo
Il modulo MKRFOX1200 può essere programma- nel nostro articolo. E un malfunzionamento del
to tramite L'ID E Arduino, a patto che sia almeno primo schetch è molto frustrante per un lettore.
la versione 1.8.9. Per utilizzare il modulo MKR- L'inclusione delle librerie ci permette di distribuire
FOX1200 sarà necessario installare la board nell'l- del codice che dovrebbe funzionare senza alcuna
DE, quindi bisogna andare al menu Tooi/Board/Bo- modifica. Naturalmente se avete già alcune librerie
ard Manager e, nella schermata di Fig. 3, digitare presenti nella vostra installazione di Arduino, non
/J samd" nel box di ricerca: dopo un po' dovrebbe la sovrascrivete con quella che abbiamo allegato
apparire la Voce 1/Arduino SAMO Boards (32 bits all'articolo, ma provate in prima istanza ad usare
ARM Cortex MO +).Selezioniamo nella.combo box quella già presenti. Quando avrete testata il fun-
a sinistra l'ultima versione ed installiamola. zionamento del codice da noi rilasciato sarete liberi
Ora che SAMO Core è installato, è possibile col- di aggiornare le eventuali librerie.
legare la scheda al computer utilizzando un cavo Nel Listato 1 abbiamo riportato solo la parte
USB standard. La prima volta potrebbe essere essenziale; in pratica, dopo l'inizializzazione del
necessario installare i driver USB. dispositivo tramite la libreria Sigfox, vengono letti
In virtù della aggiunta precedente vedremo com- alcuni parametri: quelli che ci interessano ora sono
parire una lista di nuove Board (Fig. 4) relative al ID e PAC (questi due parametri sono personali e
processare SAMO Cortex MO. Affinché la nostra non vanno divulgati). Ottenuti i due parametri dalla
scheda SigFox venga riconosciuta e possa lavorare finestra di log di Ardui no (Fig. 6) dobbiamo recarci

l
' 77
r '

IIIIIIIIJJIII 11111111111111111111111111111111111 111111111111111 IIIIIIIIIIIIIIIIIIIIIIIJJJ

. . ,.,.;;

String version = SigFox.SigVersion();


String ID = SigFox.ID();
String PAC = SigFox.PAC();

Il pìsplay module informations


Se~i~f. println(''MKRFo~l2é0 , Sigfox first conffguration");
Sert~l. println(''SigFox '· FYI; version " + versi an);
Seri~l.println("ID = " ~ID); •

Serial.println("PAC = "+ PAC);


Serial.println("");

Se.r ial ..:print{"Module temperature: ");


Ser{a!~ println (SigFox. temperature Internai O);
. ~

Serial.println("Register your board on https://backend.sigfox.com/activate with p:r ovided ID and PAC");

delay(100);
.

Il Send the module to the deepest sleep


SigFox. e.nd();
,,.

su questo uri: https:,fbackendsigfox.com/activate pronti a testare la connettività. Resettiamo quindi


nella quale ci verrà richiesto di selezionare il nostro il modulo e riapriamo il monitor seria! e. Dal moni-
Paese. Selezionando quindi Italia, ci verrà indicato tor seriale ci viene chiesto di inserite un testo da
che il nostro fornitore di connettività sarà Nettrot- inviare come messaggio, digitiamo quindi un breve
ter e atterreremo sulla pagina di Fig. 7 in cui siamo testo (max 12 caratteri) nella finestrella superiore
invitati a selezionare il tipo di scheda. Qui clicchia- del monitor seria! e e clicchiamo su "Send': Se la
mo sullogo di Arduino. Ci verrà nuovamente richie- trasmissione è stata completata con successo,
sto di specificare la nazione, selezioniamo Italia dopo circa 50 secondi dovremmo ricevere una
• e clicchiamo nuovamente su illogo di Nettrotter. schermata simile a quella di Fig. 10, altrimenti nel
Dopo la selezione si presenta la maschera di Fig. 8 caso di fallimento come in Fig. 11. Naturalmente la
in cui dovremo inserire ID e PAC ricavati prece- situazione migliore si ottiene quando il dispositivo
dentemente. Successivamente ci verrà richiesto si trova aWaperto (outdoor), ma abbiamo effettua-
di registrare un account per accedere al Backend to diversi test anche in ambienti indoor, dove la
SigFox (Fig. 9): inseriamo quindi i dati richiesti e connessione riesce facilmente.
completiamo la registrazione cliccando sullink
presente nella email che ci verrà inviata. UN'OCCHIATA AL CODICE
Al termine avremo a disposizione un account Nel Listato 2 vediamo la sezione di setup dello
Sigfox che ci permetterà di accedere alla relativa sketch che useremo per testare !,invio di un sem-
...
Dashboard del Backend. E anche possibile regi- plice messaggio sulla rete SigFox. '
strare il dispositivo dallink https:!lbuy.sigfox.coml Il codice comprende nella parte superiore l'inizia-
activateldevkit!FR. lizzazione della porta seria! e, l,inizializzazione del
modulo SigFox e una eventuale notifica nel caso in
...
PRIMO TEST DI CONNETTIVITA cui non venga trovato. Poi siamo invitati ad inserire
Ora che abbiamo registrato il dispositivo, siamo una stringa (max 12 caratteri) nel campi di INPUT

l
send
~kRfoxl200 S1gfox first conf~guration
~. igfox F\i version 2.3
I D =- •
Fig. 6 PAC = ~;

Ricaviamo i ~odu1e tecperature: 16.00


parametri ID e PAC ~egister your board on https://backend.s~gfox.com/act1vate wi~h provided IO and PAC
~ype the message to be sent
dal log seriate.

..a Autoscrotl No Una ending 4


• 9600 baud ..

78
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJIIIIJJIIIJJJJJJJIJJJIIJJIIIJIIIIII

ARDUI NO
Atme( l\ V N E r· cooklng hGcks Fig. 7
Landing page
di Nettrotter.
SEEK ~nnoc mm

>> NXTioT '

ON Semlconductor

~ sigfox DEVICE OEVICE TYPE. USE.R GROUP &9 C+

Oev Klt ActJvatlon

Plck your country Devi ce lnf ormatlon Account detall!i

Fig. 8
Schermata di
inserimento
del dati del
dispositivo da
registrare .

-
.... =

Ac.cou~t cte.ttlon
• hWt l CC~ l Slfl\ 11"1

Fig. 9
Schermata di
registrazione
UTC account
SigFox.

del monitor Seriale e cliccare su INVIO. sketch che includa questa funzionalità è dovero-
In questo esempio non utilizzeremo le funziona- so commentare la riga di codice SigFox.debug(),
lità di LowPower del Modulo, però è necessario altrimenti il dispositivo non entrerà mai in modalità
notare che nel caso in cui si voglia realizzare uno LowPower.
..

79

.. 111JII11111111111JIIIIIIIIIIIIIIIlllllllll llllllllfl llllllllll llf1JIIIIIIllllllllll lllllll

Se nd
~KRFoxl200 Sigfox first con f igurat ion
Si gFox FW version 2.3
P1\· c :;: •:
~~. . c ··:~~~--
;.,;~, ..
.. :::: . _ . . . - -

Modu1e temperatu re: 17 . 00


Register your board on https: //backend.sig fox . com/ aetivate with provided ID and PAC
Type the message t o be sent
Sending He11o World!
Fig. 10 Getting the response will take up to SO seconds
The LEO will b1ink whi1e the operation is ongoing
Trasmission e dati Transmission ok
avvenuta con OK
successo. PA OFF
Response f rom serve,~ :
ex o
OxO
OxlO
Ox3E
oxo
OxO ~
OxFF
OxC9

• Autoscroll No li ne endlng • 9600 baud , ..

Commentando la riga, anche il LED di Bordo verrà Backend di SigFox. Accediamo quindi al seguente
disabilitato e non lampeggerà più per indicare uri: https:lbackend.sigfox.com/device/list con
l'operatività della trasmissione dati. le credenziali che abbiamo ottenuto precedente-
Altra istruzione degna di nota è quella che conclu- mente quando abbiamo registrato il nostro primo
de la preparazione dei dati da inviare e ne esegue dispositivo, e potremo gestire i nostri dispositivi.
l'invio. Al termine del blocco abbiamo la possibilità Cliccando sul voce di menu "DEVICE" ci viene
di inviare i dati sia con sendString ()che con sen- presentata (Fig. 12} la lista dei nostri dispositivi.
dStringAndGetResponse(}: con la prima funzione Abbiamo •
oscurato il nome e l'ID del nostro disposi-
non viene richiesto alcun ACK e la fase di invio dei tivo con delle X.
dati si accorcia di circa 30 secondi, la famosa fine- Nella griglia viene indicato il timestamp dell'ultimo
stra temporale che viene lasciata aperta nel caso pacchetto di dati ricevuti, l'indicatore di "Com-
in cui ci si attenda un ACK. municationStatus" per il quale nella Tabella 1
Se invece utilizziamo la seconda funzione, significa ritroviamo la legenda dei vari colori. Soffermandoci
che inviamo dei dati e nel contempo chiediamo con il cursore del mouse sopra il simbolo, ci verrà
che ci venga fornito un ACK di ritorno con un mostrata una spiegazione dello stato. Sulla parte
payload massimo di 8 bit. Naturalmente nel codice superiore è presente una sezione che ci permette
dovremo poi gestire eventuali dati contenuti del di ricercare velocemente il nostro dispositivo, utile
Downlink per modificare eventualmente il compor- nel caso ci fossero un numero molto alto di device
tamento del modulo. installati. l dati visualizzati nella griglia possono
essere modificati agendo sulla configurazione di
IL BACKEND DI SIGFOX visualizzazione accessibile cliccando sulla piccola
Ora che abbiamo inviato dei dati tramite il nostro icona con il simbolo dell'ingranaggio posto sul lato
..
dispositivo MKRFOX1200, andiamo a curiosare nel destro della tabella. E possibile inserire fino ad un

se nd
- -- --
KRFoxllOO Sigfoxfirst
-- ·- ..... --- . -~ · --------------
configuration
·----·- -----·- ---·- ·- --...1
SigFox FW version 2. 3
IO • ---
PAC • '::.--

1odu1.e te~perature: 16.00


egister your boerd on https: //backend . sigfox. com/ activete with provided IO and PAC
ype the message to be sent
Fig. 11 ending He\1.o Wor1.dl
etting the response wi1.1. take up to . SO seconds
Trasmission e dati he LEO wi11 b1.ink whi1.e the operation is ongoing ~
fallita. o t rans~ iss ion ~
K
A OFF
ou1.d not get any response from the server
heck the Si~Fox coverage in your area
If you are indoor, check the 20dB coverage or move near a window
-

• Au toscrotl No line ending • 9600 baud ~

80
L

!Jll HIIH IDilD filO IDJl 111111

Listato 2

void setup() {
Serial.begin(9600);
while (!Seria!)
. {};
if (!SigFox.begin()) {
Serial.println("Shield error or not present! ") ;
return ;
}
SigFox. Oebug() ;
delay(100) ;
SigFox. end() ;
Serial.println("Type the message to be sent") ;
while ( !Serial.available()) ;
String message;
while (Serial.available()) {
message += (char)Serial.read() ;
}
if (message.lengtb() > 12) {
Serial.println("Hessage too long, only first 12 bytes will be sent" ) ;
}
Seria!. println("Sending '' + message);
message. trim();
sendStringAndGetResponse(message);
Il sendString(message) ;
}

massimo di 8 paramet ri ordinandoli come ci ag- singolarmente, e possibile definire una caratteri-
grada. A questo punto andiamo ad indagare sulla stica che li accomuna tutti e poi assegniamo ogni
configurazione del nostro dispositivo. singolo dispositivo ad una particolare "DEVI CE
Per fare questo dovremmo cliccare sul la voce di TYPE'~ Naturalmente nel caso di un solo dispositivo
menu "DEVICE TYPE': si aprirà la schermata di installato la funzionalità di creare più DEVICE TYPE
Fig. 13. E' necessario cliccare una sola volta sul sarà inibita. La finestra delle proprietà del disposi-
primo elemento della lista, si aprirà un popup con tivo è visibile in Fig. 14. Assicuriamoci che i valori
due voci. Clicchiamo su lla voce "Edit". Purtroppo siano corretti.
questa operazione è assolutamente poco intuitiva:
sarebbe stato molto meglio aggiungere una o più KeepAiive
icone alla destra della riga per ottenere una User Il valore deve essere compreso tra O (disabilitato) e
Experience sicuramente più appagante. 30 minuti. Il KeepAiive consente di monitorare un
DEVI CE TYPE ci permette quindi di definire dispositivo che sta comunicando nella finestra tem-
la configurazione di una famiglia di dispositivi porale impostata. Questo è utile per monitorare lo
corrispondenti allo stesso servizio o applicazione stato di salute del dispositivo e per identificare se il
i quali presumibi lmente inviano tutti lo stesso dispositivo non funziona correttamente. Se sappia-
tipo di informazioni con lo stesso formato di dati. mo che il nostro dispositivo invierà dei dati con una
Quindi, invece di configurare ciascun dispositivo cadenza temporale superiore ai 30 minuti è inutile

sigfox DEVlCE OEV CE TYPE USER CROUP

Device - Ust
Fig. 12

Lista dei
dispositivi
presenti e

o D a indicazione
dello stato.

td• ·~- " N- ,.M. C~.cMW


• • •" Tol!iwl\totbt

..

l
81
r '

IIIIIIIIIIIIIIIIIIIIJIIIIIIIIIIIIIIIJIIIIIIIIIIIIIIIIIIJIIIIIIIIJIIIIIIIIIIIIIIIIIIIIJIIIIII'

STATO DELLA CONNESSIONE

Colore Descrizione
. . :_;

Il dispositivo è autorizzato a comunicare e il messaggio più recente è stato ricevuto nel periodo
Verde
KeepAiive definito nel suo tipo di dispositivo.

Il dispositivo è autorizzato a comunicare ma il messaggio più recente non è stato ricevuto nel
Tabella 1 Ambra
Legenda periodo KeepAiive definito nel suo tipo di dispositivo.
degli stati possibili
per un device.
~· . ..Il dìspositi\/o'?' autorizzato a comunicare ma l'ultirtl·p . ~essaggio non è.i tato ricevuto pe~: g·li ultimi
Rosso
periodi X KeèpAiive definiti nel suo tipo di dispositivo.

Nero Il dispositivo non può comunicare perché è OFF _CONTRACT, MUTE D o DELETED.
,.-; ..

Grigio . . .. Il dispositivo è.autorizzato a comunicare, ma non vF;g,alcun mantenim~,nto attivo definito·nel tipo
· ;, ·.:" :·· · . ,di dispositivo Gil dispositivo non ha ancora comnn· Ì~~t() il:.'tipo di disfKJ§H:ivo: In caso di trasferi-
11 .:,
: ;:,

mento di un dispositivo, anche lo stato della comuf1fcazione sarà gdgi(); · "

settare questo parametro e conviene settario a O. Payload parsing •

Abbiamo settato la visualizzazione del dati ricevuti


Alertemail dal dispositivo in modalità "Display in ASCII" in
E' importante inserire l'indirizzo email al quale modo di poter debuggare facilmente i dati che
vogliamo ricevere notifiche del fallimento delle provengono dal nostro MKRFOX1 200.
CaiiBack. Nel Caso in cui il Backend riscontri dei
problemi nel portare a termine una CaiiBack per- CALLBACKS
sonalizzata ci invierà Ulla notifica all'account che In programmazione, una CaiiBack (in italiano,
decideremo di configurare. Richiamo) si intende una funzione o un "blocco
di codice" che viene passato come parametro ad
Downlink mode un'altra funzione. Nel caso di SigFox, dobbiamo
• Il parametro per il momento lo settiamo come pensarla come una regola di instradamento e di
"DIRECT': Le alternative sono "NONE" (disabilitato), formattazione dei dati che possono essere inviati
oppure "CALLBACK ': verso un ulteriore sistema di elaborazione.
Dobbiamo pensare al Backend di SigFox come ad
Downlink data in hex un mero collettore di dati ed eventi. La sua Mission
Il parametro specifica il contenuto del dato che non è quella di storicizzare, elaborare e presentare
viene ritornato al dispositivo per confermare la grafici, oppure implementare delle sofisticate rego-
ricezione dei dati. le di Al (Intelligenza Artificiale). Quindi se vogliamo
Nel nostro caso viene ritornato id dalla stazione elaborare i dati che provengono dai nostri sensori,
base (tapld) allivello del segnale (rssi). Cliccando dovremo istruire il nostro Backend di SigFox a
sulla icona con il punto interrogativo è possibile "dirottare" le informazioni raccolte verso un nostro
vedere le altre opzioni disponibili. sistema di Backend. Uno di questi potrebbe essere

sigfox DEVI CE DEVIO:: TYPE USER GROUP

Devlce type - Ust

u.-.. -.___ ___


Il Fig. 13
Come aaa HL$LT t ILTEH

editare la
configurazio ne.
• K.-p. . N- •

D.senoeo~ sequence numner


Eoit

82

111JIIIIIIIIIIIIJJIIIIIIIIIIIIIIIIIIIIIIIII l IJIIJIJJIIIIIIIIIIJIJIIIJIJJIIIIIIIIIIIJJIII111111 IIJIIJJIIIJIIIIIII


1

DEVICE DEVICE TYPE USER GROUP &9 C+

Devke type MRKFOX1200- Edltion

llewial ~ lnfotmKion
-
._~,..t
.MRI(f0Xt200
Ot>~,l)t>-.r f irst ~1ifOX ~v1C1t 1
.. .
/_'

N:t;:rll.'\.. •
.., '<"~~!ts 30 Fig. 14
~~~ .... Editing delle
ytc-llf:ic·~·~ ._ ~ O
caratteristiche
dei dispositivi
MKRFOX1200.

E'?"fl' O'l"'"""t- t'l"' ~c:...0tf"~K -_,.~~..:: !lf..IH it'" dt~ft.f~1 '>"t">t 'i:;;.ow '9'"' l:> t<~: • (t11M}4b)te ·{Uj)ld]4~ (tuij Zbybts· {ra.ming} 1 ~
!oo-..."1', ~" ~·:. ., ~ lt~d)OOOO{rS!II} O

Se« !. .owt t -o•:I-.cU!l.t:k~"!S :7'0Ct! ~!ttè'3"o.Yii ,c. :»o.,.~'S(Ì' ;>:-~ :.au.r~ :ro•:!y t;~~~•oo• t:.t 'c- Cit~ · " t"'è r-~t
.,.:f.Cl<:P•'I.-.ç O.'JllliJ W\ ~CII ,.

- --------

ThingsBoard (che abbiamo già trattato per Anten- CaiiBack" (CaiiBack Personalizzata). Inseriamo i
nino e Maduino) che ha già un -gateway apposita- dati come in Fig. 15.
mente studiato per interfacciarsi con il Backend di Selezioniamo quindi come tipologia "DATA':
SigFox. "UPLINK" e come channei//EMAIL/1
Ma facciamo un passo alla volta, per il momento Compiliamo quindi il Recipient (destinatario) della •
accontentiamoci di implementare una semplicissi- email, il Subject (oggetto) e poi, cosa più importan-
ma regola di CaiiBack che non richieda alcuna in- te dobbiamo definire cosa inviare come corpo del
frastruttura particolare, semplicemente un account Messaggio.
e-mail. Dalla schermata relativa alla selezione Chiaramente vorremmo ricevere•
i dati catturati dal
//DEVICE TYPE': clicchiamo sulla voce 1/CALLBACKS// nostro sensore. Per fare questo dobbiamo format-
sul menu laterale a sinistra. Si aprirà una scherma- tare in modo opportuno il "Message': Il Listato 3
ta in cui è possibile definire delle CaiiBack perso- ci indica come deve essere costruito il corpo del
nalizzate. messaggio per poter fare in modo di inviare i dati
La lista delle tipologie di CaiiBack che possono es- desiderati. Come potrete notare ci sono delle parti
sere implementate comprendono anche dei Wizard libere (in verde) che potremo sostituire a nostro
per alcune piattaforme blasonate come //AWS ioT" piacimento e delle parti {codificate in rosso}, dei
//Azure Event hub': //IBM Watzon" etc ... cosiddetti Placeholder (segnaposto) che devono
Per il nostro test, clicchiamo sul pulsante //Custom essere scritti assolutamente in quel modo.

sigfox DEVI CE OEVICE Tì'PE USER GROUP


c.

Device type MRKFOX1ZOO • cattback new

c-..,.. EMAL •

o
Fig. 15
CaUBack
custom per
.
ncevere una
notifica via
S..:...e Dm From S.OFox ~Id: {~}
Email.
~1ct ld: , atvlce}
·119 nation: {sntion}
~JM~ :
~~u3t:
um
(l!!l)
Mhtlçt ~ : i !'lf') dl'
eru: i~~l) ~
!P CM 11'!'.} loltd: {Oate}

l
83
r '

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJIJIIIIIIIIIIIIIII11lllllllllllllllllliiiiiiiiiiiiiiiiiiiJ

Dei diversi segnaposto, il solo che contiene i dati


Listato 3
inviati esplicitamente nel carico utile (payload) dal
Definizione del messa.ggio di CaiiBack
nostro modulo è {data} gli altri sono dati aggiun-
ti dalla Dashboard di SigFox e che contengono Device Id: {device} · ·
Tap station: {station}
informazioni relative al dispositivo, tra i quali anche Latitude: {lat}
la posizione geografica, la quale viene estrapolata Longitude: {lng}
SNR: {snr} dB
con un complesso algoritmo di triangolazione RSSI: {rssi} dBm
'
basandosi sul segnale ricevuto da diverse base- HEX.. raw pay lo ad: {data} ·;

Station nei pressi del nostro device. Poi abbiamo


informazioni sul livello del segnale e sull'ID della
Base Station. Purtroppo non esiste un dB accessi-
Listato 4
bile che ci permetta di risalire dall'ID alla posizione
Definizione del corpo della CaiiBack
geografica precisa della Base Station. Una volta Bidirezionale
terminato clicchiamo su OK. Se non si sono verifi- {
cati errori atterreremo nella pagina di Fig. 16. "device":''{d evice}",
"data":"{dat a}",
Abilitiamo quindi la CaiiBack mettendo la spunta "station":''{station}"~

su Enabled. La CaiiBack che abbiamo inserito ci "rssi":"{rss i}",


"duplicate": "{dupliçate} ",
permetterà di ricevere una email di notifica ogni "lat":"{lat} ",
qualvolta il Backend SigFox riceverà un dato dal "lng":"{lng} ",
"ack":{ack}
nostro dispositivo MKRFOX1200. }

DOWNLINK, FACCIAMO UN PO'


DI CHIAREZZA
l messaggi di Downlink sono in effetti dei messag- spositivo ma è anche quella più complicata e per la
gi di ACKNOWLEDGE (ACK), questo significa che quale è necessario possedere un proprio sistema
per ricevere un messaggio sul nostro dispositivo di Backend che riceva delle CaiiBack da quello di
MKRFOX1200 Dovremo prima inviare un mes- SigFox. Per gestire il messaggio di Downlink trami-
saggio di Uplink richiedendo espressamente che ci te il nostro Backend è necessario modificare (Fig.
• venga inviato un messaggio di ACK. 14) il parametro Downlink mode in "CALLBACK" e
Qui si aj:>rono tre possibilità: possiamo configurare come passo ulteriore è necessario creare una
il Backend di SigFox in modo tale che non venga CaiiBack configurata come in Fig. 17 nella quale
mai inviato un messaggio di ACK (anche se richie- dovrà essere specificato il Type: "DATA" "BIDIR"
sto), possiamo configuralo per fare in modo che sia Channel: URL, del quale poi deve essere specifi-
il Backend di SigFox stesso ad inviare un messag- cato un endpoint, per esempio http:,fmysigfoxba-
gio di ACK in un formato definibile. ckendlget_ downlink e deve essere specificato un
Per esempio che contenga il livello del segnale corpo di dati in formato JSON da inviare alla nostra
ricevuto, una marca temporale che possa essere pagina (Listato 3) nel quale deve essere presente il
eventualmente usato per sincronizzare un RTC Placeholder {ack}.
presente sul device. Salviamo quindi la cali back e una volta atterrati
Oppure, terza possibilità possiamo configurare il nella pagina di riepilogo delle CaiiBack presenti,
Backend di SigFox per gestire il messaggio di ACK spuntiamo il flag "Downlink" sulla cali back BI DIR
tramite CALLBACK. Questa è la modalità che si appena creata. Come si può notare possono
presta maggiormente per un utilizzo reale del di- coesistere più CaiiBack attive, e nel caso ci fossero

sigfox DEViCE OEVIC€ TYPE USEQ GROVP

O&vice type 'MRKFOX1200'- catlbacks


Fig. 16
lista delle
CaltBack
presenti.

..

84
più CaiiBack Bidirezionali/ solamente una di queste ANALISI DEl DATI RICEVUTI
può avere la spunta su 1/Downlinkl: Sempre dalla Dashboard di Sigfoxl andiamo a
Quindi ci servirà un server su cui ospitare una pagi- visualizzare i dati ricevuti da un dispositivo spe-
na http:,lmysigfoxbackend/get_ downlink cifico. Selezioniamo quindi dal menù superiore la
Naturalmente se disponiamo di un server con voce Device, poi nella lista dei dispositivi presenti
lP statico potremmo inserire anche un uri di tipo clicchiamo sul campo ID del dispositivo per il quale
numerico/ per esempio: http:,lxxx.xxx.xxx.xxxlget_ vogliamo verificare i messaggi che sono transitati.
downlink su questo server va quindi preparata una El importante cliccare proprio su questo campo
pagina che possa acquisire i dati provenienti in post altrimenti non otterremo il risultato sperato. Se
dal Backend di SigFoxl potremmo quindi salvare i tutto è corretto atterreremo in una pagina come in
dati in un dB e trasporre su un grafico l/andamento Fig. 19.
degli stessi. La voce di menu INFORMATION ci fornisce un
Il fatto che nel corpo del messaggio ci sia il campo riepilogo delle caratteristiche del dispositivo/ tra
{ack}l permette di notificare che il dispositivo ha le quali anche delle informazioni relative al nostro
inviato dei dati richiedendo nel contempo anche un contratto/ il livello del segnale/ il produttore del
messaggio di Downlink. chip del modeml le caratteristiche del modulo
Evidenziamo nuovamente che questa informazio- radio ed altre informazioni utili. La voce LOCATIONl
ne che deve essere ritornata non va intesa come come si può intuire ci fornirà una indicazione della
una possibilità di controllare in modo puntuale geo localizzazione del dispositivo. Tenete conto
ed immediato il dispositivo rem oto/ ma piuttosto che la geo localizzazione è ottenuta triangolando il
come la possibilità di modificare almeno 4 volte al segnale con diverse BaseStationl quindi non aspet-
giorno il comportamento del nostro dispositivo: per tatevi la risoluzione di un GPS. La voce STATISTICS

esempio se a bordo del nostro dispositivo esiste ci fornisce informazioni statistiche suWutilizzo dei
un sensore di vibrazione/ potremmo modificare la dati. Mentre EVENT CONFIGURATION permette di
soglia di intervento del sensore che porti al risve- realizzare delle regole di instradamento per quanto
glio del modulo MKRFOX1200l oppure potremmo riguarda il verificarsi di alcuni eventi che si possono
modificare la frequenza di invio schedulato dei dati. verificare durante l'interscambio dati del dispositi-
Quindi quello che dovremmo realizzare è una inter- vo con la DashBoard. E' possibile ad esempio farsi
.. faccia che permetta di definire per ogni dispositivo notificare un messaggio via email/ oppure si può
quale debba essere il messaggio di ACK che verrà inviare un POST verso un servizio esterno. E Per
inviato in seguito ad una richiesta di ACK nel mes- ULTIMO, ma sicuramente non meno importante la
saggio di CaiiBack. In un successivo articolo vedre- voce MESSAGGESl selezionando la quale è pos-
mo come realizzare una Dashboard che permetta di sibile vedere la lista dei messaggi scambiati tra il
implementare queste funzionalità avanzate. dispositivo e La Dashboard. l dati che sono visibili

sigfox DEVICE DEVICE TYPE USER CiROUP

Device type MRKFOX1200 • Callback editlon

r.~ OATA ' e101R •

Fig. 17
Definizione dì
una CaiiBack
di tipo
BidirezionaJe.

---------- ---
t

85 l
'
'
r c.

llllllllllllllllllliiiiiiiiiiiiiiiiiiJIIIIIIIIIIJIIIIJIJIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII ~

'

slgfox DEVICE DEVICE TYPE USER GROUP &8 C+

tlcw
Oevlce type 'MRKFOX1200'- tallbacks

Fig. 18
CaiiBack
Bidirezionale
abilitata a restituire
messaggio di
Downlink. •

l
;

J
sigfoliC DEVICE DEVICE TY»E USER C.ROùP & f) C+

Oevlce XXXXX - Mess.ages

a •

~·~ e
. . Fig. 19 n,:-4
Ispezione dei dati
ricevuti e dei dati
di CaiiBack di tipo
l "'"'!<""'"'' o-Jmk ldatu• • Ackecl
Email. C s tat\a : :~oa:o: -----=l '
Data (H~) t C»>:&;"OOC:'I70
l .

•• :"ti.
triil o c
..
!>o l •

,..., ~·
lOOOOI
....
. -- o c
..
,~ -.
. . n •.,. u •
~~
~!5t
'·,.
· · ~•.Ct ~

,.,..t...,lh" P-l'Il''"·
W'J
...
i tw~ al
'.L..:.':l~.!.
\i
ttlil o c
Il o c
l

immediatament e nella tabella, sono un t imestamp immediat o. Speriment ate con il progetto che vi

che ci indica un riferimento temporale, poi abbia- abbiamo introdotto in questo articolo cercando di
mo, il dato in formato Esadecimale e decodificato a prendere confidenza con il modu lo SigFox e con
seguire abbiamo quattro icone, la prima da sinistra la relativa DashBoard. In un articolo successivo
ci indica visivamente la qualità del livello del se- vedremo come impiegare il modulo con dei sensori l

gnale, la successiva, i dati inviati alla CaiiBack. N estern i ed un display OLED.


el nostro caso avendo implement ato una Caii- Il codice e le librerie utilizzat e nell 'artico-
Back di tipo Email, verrà riportato come possiamo lo sono disponibili al seguente uri di Github:

vedere in Fig. 19 il riepi logo del messaggio inviato. h ttps:~github. comlopen-electronics/Sigfox C

La successiva icona rappresenta lo stato del
messaggio di Downlink (ACK) che è stato inviato al
dispositivo . ,;

l colori delle icone del messaggio di CaiiBack e di l

Down link si presenteranno di colore verde se l'esi-


to è st ato positivo oppure di co lore marrone scuro Cosa occorre?
se l'esito è stat o non favorevole. Il materiale utilizzato in questo progetto è disponibile
L'u lt ima icona ci permette invece di visualizzare la presso Futura Elettronica. La scheda Arduino MKR FOX 1200
(cod. MKRFOX1200) è in vendita al prezzo di Euro 43,90,
posizione del dispositivo nel momento in cui ha
l'antenna a dipolo necessaria per il funzionamen to (cod.
inviato il pacchetto di dati verso la Dashboard. ANTENNADIPOLO) è disponbile a Euro 5,50.
l prezzi si intendono IVA compresa. )

CONCLUSIONI
Bene, per il momento abbiamo t erminato. Il materiale va richiesto a:
Risulterà chiaro che la tecnologia SigFox si adatta
bene per l'acquisizione di dati remoti da dispositivi Futura Elettronica srl , Via Adige 11, 21013 Gallarate (VA)
Tel: 0331-799775 - http://www .futurashop .it
che non necessitino di un feedback di controllo l

..
86
Una semplice stazione
meteo basata su
Mercury System, che
visualizza temperatura
e umidità ambiente su
una dashboard vveb.

88
di FRANCESCO FICILI

on la crescent e diffusione e l'abbassa-


mento dei costi delle t ecnologie digitali,
negli ult imi decenni una serie di appara-
ti un tempo inaccessibili al grosso pub-
blico è divenuta alla portata dell'utenza
"consumer': L'esempio pri ncipe di questa
situazione è sicuramente il Personal
Computer, che è entrato nelle case delle
persone comuni tra gli anni '70 e gli anni '80 del secolo scorso,
dopo essere stato per più di un ventennio appannaggio del
mondo della ricerca e di quello aziendale. Tralasciando la
rivoluzione epocale messa in campo dalla diffusione dei Per-
sonal Computer, nel loro piccolo altri apparati elettronici sono
diventati accessibili per l'utente comune con la diffusione di
determinate tecnologie: uno di questi è la stazione meteo di-
gitale, che ha fatto la sua comparsa come prodotto consumer
nei primi ann i 2000. Si tratta essenzialmente di un disposit ivo
embedded dotato. di un display e di una serie di se nsori {sen-
sore di temperatura, sensore di umidità, sensore barometrico,
pluviometro, ecc.) in grado di visualizzare sul display stesso le
informazioni reperite dal set di sensori collegati, e, nei modelli
più evoluti, di fare anche delle previsioni. Tuttavia, anche un
oggetto dalla storia così recent e rischia di diventare obsolet o
se non rimane al passo con i tempi e in questo contesto, per
evolversi, la stazione met eo deve diventare connessa e in
particolare deve diventare un oggetto loT, in modo che la con-
sultazione di una particolare installazione possa avvenire da
qualsiasi parte del mondo, tramite un PC o uno smarthpone.
Quello che ci proponiamo di realizzare in questo articolo
è proprio una stazione meteo loT, che sia in grado sia di
visualizzare localmente i dati raccolti dai sensori, sia di inviarli,
tramite collegamento WiFi, verso un server in modo da poterli
poi visualizzare tramite un'opportuna interfaccia web.
Per lo sviluppo di questo progetto utilizzeremo il Mercury
System, un sistema che ha una predisposizione naturale per
la realizzazione di sistem i connessi ed loT e che abbiamo
presentato nell'articolo ad esso dedicato nel fascicolo n o 234.
Ci serviremo della classica 8811 O come unità di elaborazione
e di due schede slave: la MB21 O {Modem WiFi) e la SB330
{slave dotato di sensore di temperatura ed umidità).
La Base Board {BB 11 O) è già stata descritta nel predetto
fascicolo n o 234, quindi non ne ripeteremo la descrizione; qui
ci concentreremo sull'analisi delle due unità slave, che ancora
non conoscete.

89
'

La M 821 O è la modem board che grato WiFi ben noto nel panorama
permette di aggiungere funziona- hobbistico, le cui caratterisitche
lità WiFi al Mercury System. peculiari sono riportate nella CLOUD
È basata sul chip ESP8266, inte- Tabella 1.
Bro·wser
VIS. SERVER •
Tabella 1
Caratt..... t .~n che del modulo wifi ESP8266. l •
• DWEET.IO
NOME PARAMETRO DESCRIZIONE l HrrPPOST


l•
Processare L106 32-bit RISC
.
m1croprocessor core
'•
l

Clock 80MHz /

RAM 64KB istruzioni
Browser
+ 80KB dati utente
+ 16KB sistema

Flash 512 KiB ~ 4 MiB esterna


QSPI Flash tipicamente inclusa
MobieApp
Link IEEE 802.11 b/g/n WiFi ~ Fig. 1
Concept
lnterfaccia UART del sistema.

Altro Pin reset esterno

l dettagli hardware della MB210 firmware uPanel per ESP8266 in


sono riportati nell'immagine in congiunzione con il Mercury Sy-
Fig. A. stem. Per maggiori info~maz·ioni IL PROGETTO
La MB210 è anche disponibile in potete consultare la pagina web Ciò che si propon iamo di realizzare è un siste-
uPanel option, in modo da poter del sistema uPanel: http:~www. ma di principio simile a quello rappresentato in
sfruttare le caratteristiche del miupanel.com/?lang=it. Fig. 1. In sostanza i dati raccolti sulla piattaforma
embedded vengono invi ati tramite metodo http
POST verso un servizio di data sharing cloud. Nel
NOME · DESCRIZIONE nostro caso utilizzeremo dweet.io, un servizio di
loT messaging che permette lo stoccaggio gratuito
Power LED Indica quando la scheda è alimentata.
di piccole quantità di dati per 24 ore.
Seria! Activity LED Indica l'attività sulla connessione seriale della l dati immagazzinati del database di dweet.io pos-
board. sono essere successivamente recuperati in diversi
modi, ad esempio t ramite l'uso di una app specifica
Status LED Segnala lo stato della scheda.
oppure t ramit e un server aggi untivo (chiamato
WiFi Module Modulo WiFi basato su ESP8266. Visualizat ion Server nel nostro esempio). Noi ci
Mercury Modem Mercury connector utilizzato per interfacciare la avvarremo di questa seconda opzione, e nello
Connector scheda con la Base Board del Mercury System. specifico utilizzeremo Freeboard come servizio di
visualizzaz ione. Freeb oard è una dashboard web
esplicitament e pensata per applicazioni loT: può
essere di rettamente connessa a dweet.io (si tratta
WiFi infatti di prodotti della medesima azienda, ossia
Module la statunitense Bug Labs) e dispone di una serie
di widget , graf ici ed alt ri elementi che permettono
una visualizzazione appropriat a dei dati raccolti.
!! Fig. A Status LED

SETUP HARDWARE
Come accennato in precedenza, ci serviremo del
Mercury Modem ___ sist ema Mercury per la realizzazione della nostra
Connector Serial stazione meteo. l modu li Mercury System neces-
Actlvity LED
sari al progetto sono quelli di seguito descritti.
PowerLED • BB 11 O - Base Board Model A: questa scheda
-
cost it uirà l,unità logica del nost ro sistema e farà

90
..
girare l'applicazione principale. Naturalmente
ci serviremo del Mercury System Framework
per lo sviluppo della nostra app, in modo da
minimizzare lo sforzo nello sviluppo dei drivers
e degli staék di comunicazione e concentrarci
principalmente sulla logica applicativa. La ver-
sione deii'MSF necessaria per questo progetto
è la v1.1.0.
• MB21 O- Mode m Board WiFi: questa è la sche-
da che fornirà al sistema la connettività WiFi
necessaria per la comunicazione con il server
dweet.io.
• EB21 O - Expansion LCD: questa scheda ha
la duplice funzione di fungere da scheda di
espansione e di fornire anche la possibilità di
visualizzare i dati localmente su display LCD. e GPI02 e di un LED
• SB330- Slave Board Temperature & Humidity: (LD3) per nndicazione
questa è la scheda slave dalla quale verranno dello stato di potenza.
re periti i dati di temperatura·ed umidità. La Slave Board Temperature &
Humidity SB330 è basata sul microcon-
In Fig. 2 è riportato lo schema a blocchi dell'har- trollore PIC16F1829 (UI1), che costituisce la
dware componente la nostra stazione meteo. base di molte SB Mercury. Il micro è connesso al • ~ Fig. 3
L 1insieme della
Spendiamo qualche paragrafo per un rapido ap- Mercury Standard Connector tramite un collega- stazione meteo
2
profondimento sulle due schede montate a bordo mento 1 C ed è possibile impostare l'indirizzo della assemblato.
della board display EB21 O, la M 821 O e la SB330. scheda tramite il dispswitch (SW1 ), che viene letto
- La prima, come si può vedere dal relativo schema dal microcontrollore attaver~o le 4 linee digitali
elettrico, monta il chip ESP8266, popolare mo- (RC3-RC6). Il pie stesso è temporizzato tramite il
dulo WiFi utilizzato in una moltitudine di progetti quarzo X1 da 8 M Hz, permettendo di raggiungere
elettronici. Quest'ultimo è connesso al Mercury fino a 32M Hz (12 MIPS) tramite l'utilizzo del PLL
Modem Connector tramite la sua UART (attraverso interno. L'elemento sensibile dalla scheda è un
le due linee di TX/RX) e l'alimentazione (Vcc e GND). DHT22, popolare sensore di temperatura ed umi-
Il Pin CH _ PD (Enable/power down) è invece con- dità prodotto dalla Sensirion. Il sensore è connesso
nesso fisso a Vcc. La scheda dispone inoltre di due al pie tramite un collegamento di tipo BLPM (Bit
LED per indicazioni (LD1 ed LD2) connessi a GPIOO Lenght Pulse Modulation), ossia il valore logico è

Power
12C r! Fig. 2
Schema a
UART Power blocchi def
sistema .

91
' \
, schema elet'trico
MOOEM BOARO WiFi

R4 "'''

7 matori microchip della linea PicKit.


3
CHPO
vcc ' Un LED utente (LD1) completa la dotazione delle
periferiche della scheda.
Ciò detto, possiamo pensare a come realizzare il
U1 , sistema con tutte le unità descritte.
:' _, Nella Fig. 3 potete vedere il sistema ad asse m-
bi aggio.completo; da essa vedete che i due moduli
4 EB21 O ed 58330 vanno montati sulla Base Board
GPI02
e tutto il sistema può essere alimentato dalla
BB 11 O, senza la necessità di utilizzare una Power
s Board.
RST
8
,, --
Come sorgente di alimentazione può essere uti-
RX
1 lizzato un comune caricabatterie da smartphone,
TX l

G connesso al connettore miniU5B della BB 11 O.


GPIOO
In alternativa si può utilizzare il connettore CN6 (a
saldare o tramite connettore header con terminali
GNO a 90 o) oppure alimentare il sistema a batteria

tramite il connettore J5T CN3, entrambi sempre
.:

l l presenti sulla BB 11 O.
L'assemblaggio del sistema è molto semplice,
perché è sufficiente partire dalla EB21 O e montare
su di essa la BB 11 O e la 58330. A questo punto si
legato alla lunghezza di un determinato impulso, può montare la mode m board MB21 O innestando-
realizzata fisicamente tramite il pin RA2. La logica la sul connettore modem della BB 11 O e l'assem-
di decodifica è integrata nel FW del pie della 58330, blaggio risulta così completato. Come ultimo step
che viene fornito già preprogrammato e può della realizzazione bisogna settare gli indirizzi della
essere anche aggiornato sfruttando lo zoccolo di E821 O e della 58330, tramite i rispettivi dip-
programmazione CN3, predisposto per i program- switch {uno per la E821 O e due per la 58330).

IMPLEMENTAZIONE SOFTWARE
piano di montaggio Passiamo adesso allo sviluppo della parte em-
bedded del software della nostra applicazione,
MOOE~v1 BOARO WiFi . . ~~~--...:::....~~ ~ iniziando dall'identificazione dei requisiti necessari;
nello specifico, vogliamo che la nostra stazione
; : :. Elenco Componenti: meteo sia in grado di:
,::,

• visualizzare i dati di Temperatura, Umidità e nu-


R1, R2, R3: 220 ohm Varie
(0603) -Connettore 2x10 vie maschio mero di campioni raccolti localmente sul display
R4: 4,7 kohm (0603) passo 2mm LCD della E821 O;
LD1: LED giallo (0603) -Connettore 2x4 vie femmina • collegarsi ad una Network WiFi esistente, tra-
.· LD2, LD3: LED verde passo 2.54mm mite AP name e Password;
~~l (0603) -Circuito stampato S1461 • inviare i dati di Temperatura, Umidità e numero
U1 ESP8266 (38x38 mm) di campioni raccolti su un server remoto;
• registrare le occorrenze di errore nell'invio dei
dati e, superata una certa soglia re-inizializzare
11
LD3
CN1
l il sistema, riconnettendosi nuovamente alla
;,1
lij
lj.PWR
,,
network WiFi.
D
l
l

R3

o LD1 LD2N Come accennato in precedenza, per la realizzazio-


~B
(!) B; ne di questo progetto ci occorre l'ultima versione
D R2D
R1 deii'M5F (il Mercury 5ystem Framework, il Fra-
mework che semplifica lo sviluppo delle applica-
zioni con la piattaforma Mercury) disponibile, ed in
particolare la v1. 1.0, che potete scaricare dal sito
..

92
l
schema elettrico
l
SLAVE BOARO
.....
:' .
. ,. : . .. .. . . .
:: . .. . . .. : .... '· ...

.: ..· :. :: ..

web della Futura Elettronica (www.futurashop.i~ a ... : .. . . . .. ' ..


.~ . . . .. .
. ·, :, .•·. · · ··CN9 ··•
questo indirizzo: ., .: :. ·.. . '';_..: : . .
': ..
https:"www.futurashop.it/BaseBoardBB 11 OMercurv
Nella sezione l/Documentazione e Link Utili':
.'
.'
Oppure in altern·ativa da questo indirizzo web, che . '- .

contiene anche tutte le versioni precedenti: "- ...

... . . Ut. :...· .. .:


http:"www.francescoficili.comlprogettilmercurvsv- : '

,.· ..

stemlmsf-download +V .. ·
..: ...

Una volta scaricato ed installato I'MSF possiamo , CN1 . .


V.BAT ·.·· . LD1 t: .. .

procedere alla creazione di un nuovo progetto, che


chiameremo 1/loTMeteo': ' ·.·. ..
·.. - :.
.. ·: . ··. ··, .

. ·:
Per tutti i dettagli relativi all'installazione ed all'uso Rl ..... ·.· .
. :" .
del Mercury Software Framework, rimandiamo •• 1
: ~.: ··. . .. . ..
. . .. .. ,
:

• all'articolo di presentazione pubblicato sul numero


234 di Elettronica In.

SYSTEM CONFIGURATION
Una volta creato ed aperto il nuovo progetto, la . - :

prima cosa da fare è la configurazione del sistema,


aggiornando i file sys _cfg.h e app. h. Nel nostro • j

... .·.
caso la prima configurazione da modificare è quella
relativa al modulo modem MB-2·1O, che deve . ,. . CN2 . ·
VBAT ·
essere aggiornata per supportare il WiFi, come 2 .,____.
INTO Ql ·
illustrato in Fig. 4. 3 >::::::::-7---:--~~ JP1
.., . ·, ·'. .
:. ', .· . ·: .. .

.. ~o ·
• : • : : . •• l •• •• •

. RXbb RC7 •···


: . ·.. ;

· s~

~
TXbb
l1l Plano
. dilli"l mon t ag.g1o
~ ~0:
· &.(rK
" . . . •. ·. . .· . . . . .

SL~AVE BOARO .· :· . .:.;_ '. ·. . ; . . . .

. ,:;

: ::.

Elenco Componenti:
;~: ·1
, ,:::
: ~ . .··. (, RCS
:·. t · . RC4 · ·· ··.
,.,;.....------......,;....;..~ ,
i ' .

R1: 330 ohm (0603)


:· l
7
• ::1
:~ ",'. .--...;....;;_---
·· Rea .. :. "

R2, R3, R4: 4,7 kohm 8


,..;----4
· RC6 ·
·f:t
(0603) . .l . :

- . .

,,,.,
l:::j•
C1, C2, C3: 100 nF
ti· 1
.:;,! SWl .
::'
ceramico (0603) . : .. : - . ..,
.·:.. ...
. " .. . . : ·:. .. ,. . ' ..

,..,
C4, C5: 22 pF
:.: :::- '.
r:.;
·h
•. :·•
".·': c
ceramico (0603) ·. +V8AT
!!··
•::l:
.;::l
LD1: LED giallo (0603) .~j, . ..... ' .
:.;TI

SW1: Dip-Switch 4 vie ~;~ ,';:·.:~


..
,.,
•,.+:

"
U1: PIC16F1829-I/SO : ~;. : .....

,,,,
, ..
.,...
'·l::
01 ·. BC817 ,
""'.,'.
::: l
·~~', ';'

~~~;....;_~~--· RA2·:·.. ·
:':

X1: Quarzo 8 MHz


'[i
:''·· · '2
:~.•7
. ·· )
.... ·. a~ ·. ·. ·.··.,· . . :_ • l' •

Varie :::f.
. . . '... ·:. :: ... : ..

i1ll;; . ·''·.
.....
. ::c.
, ,.
- Strip maschio 2 vie :·:H
, , .:!

~~~· .: ·. ,: . . ·.
. . : :...· .. ~ . ·. ·.. ·. .' . . :· .
;;.,., H' .1
=.
·:!1

·· ·'
!f:'f'
- Strip maschio 6 vie '"''
H:i'
··~·
•.::1 :1' 1·

- Strip maschio/
: ::.!
::r:
. ..: .
,:,~ ·'·'
·.;,.·
:gil

; ,·::
femmina 8 vie ;;:l:
',i,'.'
;ii"::
;, ::;

- Strip maschio/ :~·,"~

L'altra configurazione da modificare è quella


:;r
'":
.!·.:

femmina 10 vie ,',i.~


,.,;.

'· ''
- DHT22
if ·~
;;:::
relativa al periodi di esecuzione del task applicati-
:!1.:·
vo, che porteremo a 1O ms, aggiornato la #define
.'f'
,q
MY _APP _TASK_PERIOD_MS in app.h al valore
;H:~ :n'"' :,: ,., ';, :. .'.:
1O, come illustrato in Fig. 5.

'
93
l

'

RACCOLTA DATI DAL SENSO RE Anche in questo caso riportiamo la descrizione


E VISUALIZZAZIONE SU DISPLAY dettagliata dei comandi ricavata dal Datasheet
Una volta aggiornata la configurazione possiamo della EB21 O in Fig. 7.
passare alla effettiva programmazione del softwa- A questo punto non rimane altro da fare che im-
re, aggiornando il file app.c. plementare la lettura, di cui riportiamo in Fig. 8 lo
La prima cosa che vogliamo fare è creare una fun- schema a blocchi (funzione GetSensorsData}:
zione che legga periodicamente i dati di tempera- Come si può vedere dal flowchart, dopo aver inizia-
tura ed umidità della SB330 e li stampi sul display lizzato opportunamente il display ed aver stam-
della EB21 O. A questo scopo ci serviamo dei co- pato la stringa di Welcome, la funzione esegue un
mandi Ox61 e Ox63 del command set della SB330, ciclo infinito in cui vengono letti i dati di tempera-
che forniscono il dato di temperatura (Ox61} ed tura ed umidità dalla SB330 e poi i valori, dopo una
umidità (Ox63} già convertito in formato ASCII opportuna formattazione, vengono stampati sul
(decisamente più pratico per i nostri scopi, dal mo- display della EB21 O.
mento che sia al display/ che al server invieremo Nel Listato 1 riportiamo lo snippet di codice utiliz-
i dati in quel formato}. La descrizione dettagliata zato dal microcontrollore della Base Board per la
dei due comandi è reperibile sul datasheet della lettura del dato di temperatura fornito dal senso re
S8330 ed in Fig. 6. Oltre a questi due comandi ci a bordo della Slave Board SB330.
accorreranno anche alcuni comandi relativi alla
gestione del display della EB21 O/ ed in particolare: PUBBLICAZIONE DEl DATI SUL SERVER
• Ox51 - Display Write String; Ora che abbiamo implementato lettura e visua-
• Ox52 - Display BL contrai; lizzazione dei dati sul display locale della stazio-
• Ox53 - Display Clear Screen; ne meteo, passiamo alla parte loT del progetto,
• Ox54 - Display Li ne 1; analizzando come viene effettuato l'invio dei dati
• Ox55 - Display Line 2. verso il server web per attenerne la pubblicazione

9 Listato 1 - Lettura del dato di temperatura dalla 58330


• ·. void readTou chinput$()
case GS_GET_TEMP:
l* Request Temperature read *l
I2cTxBuffer[0] = 0x61;
l* Query *l
I2cSts = Queryi2cData(I2cTxBuffer,1,I2cRxBuffer,T_LEN,SB330_ADDRESS);
l* Chec result *l
i f ( I2cSts .-== OP_COMPLETE)
.. ,..
{ ' ....

l* Check data consistency *l


if ((I2cRxBuffer(1] == '.') l l (I2cRxBuffer[2] == '.') Il (I2cRxBuffer[0] == '-'))
{
l* Update data string *l
memcpy(TempStr,I2cRxBuffer,T_LEN);
TempStr[T_LEN] = NULL;
}
l* Swìtch
. ,.
state with delay *l
OsTmr_StartTimer(&SwTimer,DELAY_SW_1);
GsState = GS_DELAY;
GsNextState = GS_GET_HUM;
}
else if (I2cSts == OP_TIMEOUT)
{
l* Switch state with delay *l .
OsTmr~StartTimer(&SwTimer;DELAY_SW_l);
GsState = GS_OELAY;
GsNextState = GS_GET_HUM;
}
else
{
l* Do no'thing *l
}
bteak;
..

94
...

'

A. 1-!odert. T:y"Pe Config



A A
• ~ •
10: 'A
• Il .. • ,.
l'.' 7J: ..... "Il." ìo.' 't<

•À
..l!_-
A

1'; -
·,.; ...
X

',a,
-"" ,.
• . il'. 1'. l'. A

A
.f: ..
f'.' Il.' .. • .. • • .,e..
.-; 11.' A ..... A ' ,.;
...
#','
... .. ..i!'
A.' 1i; ~.' _.;
~ ..
1' ..
. ' io. ..
" l'. - "' • .. • - •
A.' Il. "A ." '"i . ,.; ~ A
• - - - - .. .... - ... ... ... l'Ilo
l'. •.a,. ;a.· A.' ...... ,._ 11. ' Il\' !•.' .,.., ,.; 14: A.' "A.'
..
)l
l'li. •
• •.' ... ...
..
l" Il 1'.' .a,. ••
- _.. ..
IO.' •. "'. ' Il '
l
#de fine 1:10 MDH Ou
- ~ Fig. 4
#de fine GS11 GPRS l·!DM lu Configurazione
-
#de fine BT 1-IDl.f 2u del modem
- supportato.
..u.define
i'r l'1IFI HDM 3u

~ EXPORTED Defi~ea
~ Fig. 5
Periodo di
/ ·. . Ta:sk pexiod i:";~. ms ~- l esecuzione
#define lafY APP TASK PERIOD MS ( (UI}IT16 ) (lO} ) del task
applicativo .

...

e la visualizzazione on-line. magazzinerà per 24 ore; questi dati verranno poi


Come abbiamo visto nello schema di principio di visualizzati tramite un server aggiuntivo o un'app
Fig. 1, per la comunicazione verso il server viene apposita.
utilizzato un metodo HTIP POST, con il quale Anche in questo caso riportiamo lo schema a bloc- •
vengono inviati i dati dal server dweet.io, che li im- chi della funzione che implementa la comunicazio-

• ..,UI C: V - 'L.<Lli"J' fJ iiUU'II U ...n: t

Ox60 Reque~ None This command requests the preparation of the


Temperature Raw temperature data in binary format. The board
will prepa r~e lbyte of data containing the
decimai part and 1byte of data containing the
fractional part of the read temperature value
(e.g. 12.5°C will be sent as byte 1 = 22 and byte

OX61 Request None This command requests the preparation of the


Temperature temperature data in ASCit format. The board
ASCII will prepare 5byte of data containing the
temperature value i n ASCH format (e.g. 22.5°C
will be sent as 1:122.50' 1

d f t
Raw hu mi dity data in bi nary format~ The board w ili
prepare lbyte of data containing the decimai
part and lbyte of data contalning the fr actlonal ~ Fig. 6
part of the read humfdìty value (e.g. 60.7% will SB330
Command
Set.
OX63 Request Humidity None This command requests the pr eparatlon of the
ASCII humi dity data in ASCU format. The board wlll
prepare 4byte of data containing the humidity
vatue i n ASCU format (e.g. 60,7% w ill be sent as

- n requ ton
status checksum data in binary forma t. The che.cksu m
is calculated over the sensor data at each data
refresh {whìch happens each 2s).. lf the
checksum is ok., then the data is updated,
otherwise the previous values are kept. This
value ca n be used t o understand if the last value
rea d is f r esh or not.

l
95
r

La 58330 è una ..scheda dL15 .dispositivi sul bus~~, NOME DESCRIPTION


- .;; ::_

:.·., :s.lave del sis~~.~·~M~ercury, · (l0ìrt~jF.izzo Oè riserv~!~.:;p,~·ri. ,· UserLED . .!' Per impostazion.e,J~redefìnita pulsa
;;;,··:./in grado cu"r~:ggél~·.\ tem,p.è ~ ·•· · . :l~'~~m~atiòni 6~\V~f!tìiwf: ·.
" .. ;: .:-::~~ ;i'"'"':! pe'r'ic:Jb.iéamente a indicar~·~ èhe l'a scheda è atffv~~
,, ratura e umiaifiambien- ancàst}. .,
Temperature Sensor Sensore temperatura e umidità DHT22.
tale tramite l'utilizzo di un la 58330 può misurare__ _
sensore DHTZZ:.la scheda temperature nel range -t.O Mercury Connector Mercury connector per l·interfacciamento
è basata suull!tç16F189, . -, .,. ~+80
. - .. o C con una accura:-
-_ .. " ··,,·:: ~
alle atre board Mercury.
·;!;.. "··:Ch~ si tDnnet.t~;:~Uè Ba~e .· · ": tei~a;dl:t 0,5 o c ed ·uttii.iUtà"
· Address Dip Switch
·: "· .· aoards del M:~;t.ç~rv System ; "~:...· n'.f.e;.;~·,;:i:,.t't:nm•;··g:· e,.,'" o --. 1oo',,~~·.IO,t"·~o
'l',, ,.. '*'·,·,;,' ·.1 ', , l ' li!! ·.;:!!r,':,",';';.···'ii· ;·;,:~>·ii.'.,~.',YL;,','~~',',;;·,.',i,;,'
i'i~::rn
i:~~~.~!t. ·.;
• l"
Dip-switch per impostare !·indirizzo della
.,.. ~,' ~~ilo _ c,,,"i·~·,
- :: ~ . '-~~-
board nel bus Mercury System.
· tramite bus 1id~;;
.

l'indirizzo deJia-SB sul bus Le :Caratteristiche print:ìpaH MCU Microcontrollore PIC16F1829.


.

12C può essere settato


~ -;.
dettaSB330 sono
~ . i
riportate ~ Programmer Connettore per PicKit 3 Microchip
.. dinamicamenté,tramite .nél~a·1fabella 2. Connector Programmer/debugger; direttamente
": :: l'apposito ~l~f~~;{t~:tra 4 . . · ·!Jh~~~~~~u hardware '"' 1 .! 0'',;,.••, ..
collegato alla porta di debug del
se'·~'a'o sono ·riportati ".'"'", . . ..
l .,..:; r.fr.i·'·"''"''''
:i

posizioni, cons~ntendo di microcontrollore allo scopo di permettere


=
avere fino ad un massimo n'elVimmagine di Fig. B; programmazione e debug.

::; :;
_ Programmer
- UserLED - - .
-.,
:;· _,-
Connector
. ,.. --•
' l

!l ''L ''"'
Address
--••,••,,••
·-~
~.,u:•••
· • ' Ksr~~;:mi~E-\•
-· •J••--~·•me•·,•r•-m••~'·&~
m · ~~-~~
· e.w•
:· ,~ -::--.-•·•=:t~u~--~. ,.---- Dlp Swltch
PARAMETRO DESCRIZIONE NOTE
MCU
Board Type Slave Board (SB)

.:.;; Bus su pportati


1 ,, •••

Mercury
Connector
lndirizzamehto 4 dip-switch

Descrizione Temperature and


.
DHT22
! Fig. B

Humidity Sensor Temperature Sensor


periferica

ne con il server (MeteoStation), riportato in Fig. 9. si aumenta un contatore di errori e, superata


Come si può vedere, per prima cosa la funzione una certa soglia viene effettuato il re-join della
cerca di effettuare il Join di una network esistente network; Se non ci sono errori o se non è stata
(di cui sono naturalmente noti nome dell'access ancora superata la soglia massima, si passa
point e password) e successivamente avvia un direttamente all'invio dei nuovi dati tramite http
ciclo infinito nel quale: POST, e il ciclo ricomincia.
• si effettua l'invio dei dati sul server, tramite Per l'implementazione delle funzioni "Join Existring
metodo http POST, Network" e liSend Data with POST Method" ci
• si verifica se è stato scatenato qualche evento viene molto in aiuto il framework, ed in particolare
di errore; nel caso si sia verificato un errore le due API:

oxso Dlsplay Send Cmd Cmd (lbyte) Send a command to the LCD display (support

0><51 orspl~lY w·rlte Len (1 byte} Wrlte a string to the LCD displaiy '(th.e first byte
~ Fig. 7 string String ( 16 byte) must be string Jength in characters, and the
EB21 O Command Set. remarn . es the stri to wrrte .
Ox52 Display Bl control Bl (l byte) Control display backlight {O OFF, 1 ON).
Ox53 None
Ox54 D~i splay
Une 1 None M ove cursor t o display Une l .
Ox55 Display Une 2 None Mave cursor t o display Une2.

96
......

-
~ Fig. 8
Lettura dei dati di
tenlperatura ed umidità
della 58330 e stampa su
display EB21 O.

• NO

'

..

NO s
VES

.... ErrorCounter >


• ·> ,.

MAX- ERR- NUMB


~ Fig. 9
invio dei dati sul
server.

• MdmWifiHttp _ MdmJoinNetwork Nella Fig. 10 e nella Fig. 11 è riportata la descri-


• Md mWifi Http_ PostMethod. zione dettagliata delle due API, tratta dallo User
La prima permette di effettuare il Join di una Manual del Mercury System Framework.
network WiFi esistente, passando come parametri L'implementazione completa della funzione Mete-
il nome deii'Access Point e la password di accesso oStation è riportata nel Listato 2.
alla rete stessa, mentre la seconda implememta Infine è il caso di soffermarci su una configurazione
il metodo http post passando il data payload e importante per l'utente finale, che nel caso in cui
I'Host. si utilizzi il progetto di esempio fornito a corredo

l
97
'

r '

Mdm WifiHttp_Mdm]oinNetwork ...

Service Name MdmWifiHttp_,M dmJoinNetwork


lnputs const UINT8 * AccessPoint - Name of the AP to connect to
con~ t UINT8 * Passttvord- Password for AP connection
~ Fig. lO Outputs None
Descrizione dell'API
MdmWifiHttp_ Description API to init ialize the wifi modem in Join Network mode.
MdmJoinNetwork. Usage Exarnples Join an existing network :
.

MdmWifiHttp_MdmJoinNet work( ~~MyAccess:Pojnt'' ,"password");

Notes None

Mdtn WifiHttp_PostMethod

Service Name M dmWifiHttp PostMethod


lnputs const UINT8 * Poststring- Data st ring of POST method
~ Fig. 11 const UINT8 *Host - Host of POST method
Descrizione dell'API Outputs None
MdmWifiHttp_
Description APt to request a POST method servke.
PostMethod.
Usage Examples POST Method:

M dmWifi Http_PostMethod (PostData,HOST);


Notes None

dell'articolo, è la configurazione dei seguenti para- lizzati i valori del dato di temperatura ed umidità (T
metri (sottoforma di #define): e H, pari rispettivamente a 23.1 o C e 40.0%). Nella
• AP seconda riga invece sono visualizzati i campioni

• PWD inviati sul server (S, che è pari a 11) ed il numero di
Che devono essere impostati con la WiFi che riconnessioni eseguite in seguito ad errori di rete
l'utente intende utilizzare. Inoltre va configurato (R, pari a O).
anche il nome univoco della Thing, che deve variare Per verificare che il sistema stia correttamente
da applicazione in applicazione: comunicando con il server è possibile consultare -
questa URL:
• THING ..
https:~dweetiolplay/#!ldweetslgetLatestDweet_get_2
Di seguito sono riportati i valori predefiniti (da aggior-
nare) dell'applicazione d'esempio forn ita a corredo che fornisce la possibilità di controllare l'ultimo
dell'articolo, ossia i parametri AP, PWD e THING: dweet effettuato per una specifica thing. Inserite
la thing impostata nel vostro progetto e verificate
che i dati siano stati immagazzinati sul server.
~ H~teo Stata.on Co!lt!igut:acion
Dovreste ottenere un output simile a quello ripor-
/A Ac~ss point 1 pas•~o%d and tbinq •/
#clefine AP '
1
MyAp"
tato in Fig. 12 nella quale, come si vede, la thing
.Jdeti.ne PiJD "MyPas:!lwOrd"
l~tl.!le l'HIKG "Wt~•~tTtu.no"
utilizzata è "ff MeteoStation" e come content ha
tre coppie chiave-valore, ossia:

Una volta aggiornati i parametri potete provare • Temperature: 22.8 -7 Il dato di temperatura,
ad assemblare il sistema e programmarlo (per le che vale 22.8 gradi Celsius;
istruzioni relative alla programmazione del Mercu- • Humidity: 45.1-7 Il dato di umidità, che è al
ry System, rimandiamo alla getting started guide: 45.1 %;
MS _ GettingStartedGuide). • Sample: 127-7 Il numero di campioni fin qui
Come si può vedere, sulla prima riga sono visua- inviati, che ammonta a 12 7. -
..

• 98
~
~
l

l
l <

t
l

;: :. : . . ·: .. . . -' ·..

~t­ ; ~ -· .· . - ·~ .
·: .- Request URL
Funzione Metebstation ··. . -·
:

~- ., """·-..'. ui~tat.o· z:..;


l
.. _,_ ...:
•• f

c : :: • • •
. ', . ..
• •• :
.
•• : •
https: //dweet . io: 443/gèt/latest/d~lfet/f~r/ff_t--let~oStation
., - : . . ·, :: . '· .

c,··' ' ,., ~


.. •.•·•.· '.··. :.:·~·: ,.,: ··.•·.· '·, ' ' '
: ,.

Response Body
·S.:tair~ ·M$statetyl)e .M~St~'te . ~ Ms~iot~LNEJwQR~; . : ·. . -
': statte ' MsStàtefype' 'MsNextState: = MS~JOIN~NETWORK; ,' 1
'' ''

'~\·, .,
' ,',,'N.. •...\.;' ~t.atic s~irirnerType ' oelayt~~er :::· SW:.TIMER~INI;r_EN; {
....,o Errorcouriter .=:0.; ; · ··· - · ••this ••: "st.u:ceedednJ
.. ·.
..
by .. : "get t i ng"1
~·:
: '-:: 1
'

. switc~(MsState) ....
..the'' : " dt·teetslJ '*
{ .
· cas~ MS JOIN ~ETWOAA: .- ~
' '

·. .· ·..· ,. . ·•· .. .. ·. - . ~- : :... :· .... !! Fig. 12


l . - . - ... Dati
~ '.··. '' '''. :: .
~~. ·.J'o1n ~n existing ·.network *t :. ·, . . '·, { immagazzinati
·-..... · ···.·: '*
. .. :. ·. . . .... ·:
.·· .MdmWi f'iHttp~MdmJoillNetwork(AP;., PWD); · . . .. . Hthing": "ff_~et~oSt ation~ , su dweet.io.
·. I:E:o~ 1 ori *Y\ - · ···· · · ··
u create:~:r·: " 200. 9-04<t8T16 ~ 27: 89. 6!4Z.. ,
i~d.:,;$etLedStatù$(u;o{1 ,L·ED_STS_ON)·;:•. ··.
, · h~ ·Swit"ch state
Msst ate. : · MS~CAECK_JOIN~srs'; : .·.·.
*' ···. ·. ·. .·. ·.,. ·.· ·. · '•contenttl: {
-
,.., """""'":' ..... ..,.....;
~.,
"iemperaturel$ : 22.8~·
~ ... "".....,
······•·:.. ::.·.•·> break; ·. · · ·· nHunridity 45. 1., 1
' :

:: : ... lt
l! t•sample": 127
, ·. case MS:...CHECK_JOIN.;..STS: · , · . _. . · ··" }~ ;;,.,.:

- ~~~==:-:::::;~
"

·. l*: Check jojn status·:.*l :- . . . .. • ..


.. . .·· . i f (Md"'Wi fiHttp:_I sMdn1Jo.i rlNetworRCÒmpleted 0), l
t . ·'
''
:· . ..
{. . ··.

· · .}* lED -1 Blinl< n~w '*l' " ·.·. . .


. ..•. ·.·· ' .
··. J
l m .: ·:·:

}
·. : :Le:i(sett~(U31inkTime(teoi.t ~ se·; 9~,h~~ ~
r ..
· · . Le.ct.se.tt.edstatùs<te.D...1ft~o:_.st:s)3LINK) .;
-. . . :. . .. . . . .. ·: ·. . . l ·. 1 . . . . '. . . . . .. . . .

tr :. : l* Switch state *"'~ . . . .


· · · MsState =. MS ·SENO DATk• . : · · " · ·-
. : . - . :. ·~ -: . ..J ..

~
. .
. f .·· , 1' •
·~


l ··· ·· ·•·. . ·:. :·. break; ... · ' . ·:
. . :: ~ .: .
VISUALIZZAZIONE DEl DATI: FREEBOARD
~
l .· · · ·: .)~.· LOÒP,,*' Ora che abbiamo i nostri dati presenti su dweet,
~ '
.. case MS_SEND.;..OATA:
'

ci occorre un metodo semplice per visualizzarli.


. ., ··. ·. . l* Incremeiit and conver .samples .c ounter ·*l .
:s~mpl~c<>Unter++'; : . _ · ·• · . · ··
Per assolvere a questa funzion_e abbiamo deciso
l ::"

.· ultoa(Sampcntstr, ·.·· sa~JtP.leCounter, ·10); di avvalerci di freeboard: si tratta di una semplice


~
.. :;. ..: ..

.. l_.:·. . . ·, ..... . .. ·l

l .. ,... : dashboard specifica per applicazioni loT che ha la


s~rdJ.lg ; *t ·
l
~ .:· ~~ : aui!tt :, . .

· ·•... ·. tleprBuffèr(D~ta ,'sizeof<Data)) ;·.··~:· possibilità di attingere i dati da diverse sorgenti, tra
. . :;
Bui ldDataStr (Data).. ;.·. ;. ·; · . ·•..· ·... •·. ·. . . -
;. •1' cui anche dweet.io.
. .·. :.. ; .
· l* Set Size *1 .· ~ ·
" . Size" =· strlen(Datà) ;:. · i :. - ~. ... -· : .. Freeboard è molto semplice da utilizzare, ma
l . . . . .· · · · t* ~Send data-to· ·server . ~1 ·• · '.', ·. · comunque abbiamo voluto semplificarvi ulterior-
~
.MdlllWifiHttp~PostMethod(Oata ,H()STJ; ' .·
mente il compito: allo scopo abbiamo realizzato
l
,.. :t 'l! SWitch ·stat~ with>delay ·*'-- ·. · ·
l ·• ~. osrmr~StartTimef(&D'elayTimerr, t0eea); •.·:·.. ·· una configurazione di esempio in formato JSON,
Mss'tate ·:k MS;.:OEtAY; >' . . . .,. la quale può essere importata su un nuovo pan-
·. ·. 'MsNextstat'e' ·= :MS..:SENb_DATA;
break•
' J.
·' · · nello, in modo da semplificare anche questa fase.
l Bisogna solo avere l'accortezza di cambiare il
~ ; . case MS .....CHECK-- ERR:
,
., .
l* Check error event *l · ·
..:'
nome della thing utilizzata nella sezione .. DATA-
r .. , ., •. : .ìf (Receiv~f?yt(&Wi fiGener,lçE,rròr~) : : m SOURCES ...
r- ·, ..: .
· .." '' { '' ,, ' ' . ' '" ' ' ' ' . ' '

Nella Fig. 13 è riportato il pannello di esempio


·.. Erroreounter++
. . .
·' ... · · . :·· .. . :. . ..
. . . .. . . .. . .. . . .
·: ' :· : .:
che abbiamo realizzato per la nostra stazione
···-l*' If t.oo many consecutive · errors '*l . meteo basata sul Mercury System utilizzando
. ··.· ~· , ..•.].:{ (ErrorCounter··~ >:: · HA>(..ERR_NUMBf ~:< .; .•.. · · ,
- " ....... : ..' ·,. ·. "{ '.. '...... :'; .. ' Freeboard; potete utilizzarlo tale e quale oppure,
· . · l* Reset' ·ed·~:r cotJ'~t~,r a'rut fe~tart *l: se ve la sentite, modificarlo a vostro piaci mento
· .. •. Er""o. ·r c··o··un"t.' e·r · ·-·· e·· ,...... ··· • , ... .... ·... ·. ·· ·
:' .. ';. . . .
:
.... ·.
:
. 1 .·' . .
.. · .... · . . . . •
. - ·.
, ·:'..
'
. .. : ..
:,. . ;'
·. . .
·.
.'.:::
'
:. .
··... ·.·.. ·
. . . . .
..
...

per integrarlo e personalizzarlo .


·· l* Increment reconnection tounter *l ·. ··.

t ' "
CONCLUSIONI
'.....· .
[ : -

:. ~ ·: . In quest'articolo abbiamo sviluppato una sem-


,: ..
! ···.·.. else·· . '".., :
l

,, '
{,"'' '
~ . .
.. . . .
-,., plice, ma funzionale e completa stazione meteo
' '
..
connessa in Rete, che pur potendo funzionare in
·:...

. .. . .,·. :.... l* ,Swft~h sta.t 'e with:· :ctelay ·*'k .. -... . · , ·. .


• •. •.·.. ; ' ... ' OsTm:r..;startTimer(· &DelayJ"'i.mer~ 25~)';. modalità locale rappresenta un apparato integra-
=
o' :' :. •:..
l
·. ··. · •· ·.· ·.· ·: 'f1sState 'M5...:DELAY· .; :<· .. . . .
: .. : _:.
,; " ,.,,,,

= MS-"SENO
'- J ,. - o•'

bile neWioT.
·:. ·..... .MsNextState
.. .· .. . ' . ·~ : : :...DATA· ·. . .. . . . ~
·.· ..
. . . . .. : :· . :: .. .
l
~
.. ;
Lo abbiamo fatto sfruttando la potenza del
f
l

99 '

r
l
'
'

i:] Listato 2 (segue) .

}
}
else - -"

{
l* Reset error · ~ounter *l
ErrorCounter = 0; .
l* .Switch state. with delay ,*1
OsTmt_StartTimer(&DelayTimer,250);
. M~State = MS_OELAY;
· MsNextState = MS_SI:;ND_DATA;
} .
break; ·

case MS-.DELAY:
l* Check if the timer expired .*1 .
if (OsTmr_GetTimerStatus(&Del~yTimer) == SwTimerExpired) •
{
f* Switch state *l
MsState = MsNextState;
} .

· . break;

default:
break;
}

111
~ Fig. 13 •
o ..
~anneno
di esempio
realizzato con
Freeboard.

Mercury System, che ci consente di realizzare Cosa occorre?


applicazioni loT in maniera estremamente sem-
Il materiale utilizzato in questo progetto è disponibile presso
plificata, tramite l'utilizzo dei supporti hardware Futura Elettronica. la base board per il sistema Mercury
(nello specifico, la Modem Board che realizza (cod. 88110) è in vendita al prezzo di Euro 23,00, il modem
la connessione WiFi) e del Mercury Software WiFi (cod. M8210) costa Euro 12,00, la scheda con sensore
di temperatura e umidità (cod. 58330) è disponibile a Euro
Framework, una completa suite che semplifica lo 20,00, la Expansion board con LCD (cod. E8210) costa Euro
sviluppo software delle applicazioni. 23,00. Ulteriori board sono disponibili aWindirizzo
Mercury System consente, essendo modulare, di http://bitly/SistemaMercurv l prezzi si intendono IVA compresa.

realizzare molte altre applicazioni, quindi appena


Il materiale va richiesto a:
possibile ve lo riproporremo in nuovi progetti,
sempre riguardanti il mondo loT e della Rete. Futura Elettronica, Via Adige 11, 21013 Gallarate {VA)
Tel: 0331-799775 - http://www.futurashop.it
A presto! [J

..

100
Emuliamo i
i siamo lasciati, il mese scorso, dopo aver
telecontrolli presentato il progetto del telecontrollo
21N/2 OUT che emula il funzionamento
della serie TDG
del nostro TDG 133 con un hardware rivi-
utilizzando il GSM sitato e basato sul GSM Shield descritto
nel fascicolo n o 231 e su una scheda
Shield. Seconda e
Ardui no Mega 2560. La particolarità di
ultima puntata. tale sistema è che offre versatilità e flessibilità, consentendo,
rispetto al TDG 133 originario -dotato di due ingressi optoisolati
a livello di tensione e altrettante uscite a relé- di implementare
la gestione di un massimo di 8 ingressi (non optoisolati ma co-
munque digitali) e 8 uscite (assegnabili a schede relé modulari)

l.
101
,
llllHlllliiii,IJJIIJHIUJUiliHlUIHIDIIHDlllllllliiJIIIJIIIIHHIIIlliiiJirlllllliJll

semplicemente personalizzandone il firmware e • blocco con le stringhe usate nel telecontrollo,


sfruttando la grande disponibilità di 1/0 che la Ardui- identificabile dal commento "SYSTEM PAS-
no Mega 2560 offre. SWORD; SMS TEXT FOR ALARM, START-UP etc';
Dopo aver spiegato l'hardware (che vedete richia- vi troviamo la password di sistema (cinque
mato nella Fig. 1 privo dello shield che realizza le in- caratteri numerici, predefinita 12345'), le
terconnessioni e nella Fig. 2 dotato di tale shield ...) stringhe per allarme ingresso 1, le stringhe per
e descritto l'architettura del firmware e dello sketch allarme ingresso 2, la stringa per SMS inviato
che ne governano il funzionamento, riprendiamo allo start-up dello sketch; stringa per SMS
il discorso da dove lo avevamo lasciato, vale a dire mancanza alimentazione; stringa per I'SMS di
dalla spiegazione relativa ai parametri predefiniti in ritorno alimentazione.
fabbrica.
Più avanti nel codice ritroviamo tutte le stringhe di
PARAMETRI DI FABBRICA comando usate nello sketch e sono tutte me-
Quando si programma la EEPROM con l'apposito morizzate nella Flash del microcontrollore. Tutte
sketch o quando si ripristinano i parametri di fabbri- queste stringhe non devono subire modifiche da
ca con l'apposita stringa di comando i dati necessari parte dell'utente pena il mancato funzionamento
a compiere queste due operazioni vengono prelevati dei comandi di configurazione. Se si aggiungono
sia tramite delle direttive al compilatore di tipo "#de- nuovi comandi è necessario aggiungere il codice per
fine': sia dalla Flash del microcontrollore dove sono gestirli.
salvati in modo permanente.
Questi dati si trovano in testa al file CONFIGURAZIONE PARAMETRI
IIGSM_TDG133.ino': e sono, in sequenza, questi: DELLA LIBRERIA GSM
Due parole sulla configurazione di alcuni parametri
1. blocco con le direttive "#define" inerenti agli della nostra libreria GSM e relativa board: prima di
indirizzi base dei dati contenuti in EEPROM e tutto ricordarsi di impostare i jumper della board
identificabile dal commento "EEPROM FACTORY GSM al fine di instradare correttamente le linee
PARAMETERS ADDRESS'; TX e RX della UART di comunicazione tra ATMEGA
2. blocco con le direttive "#define" inerenti i parame- 2560 e modulo GSM. Lo sketch utilizza la UART 1 ..
• tri con i propri valori predefiniti; il blocco è identifi- software con possibilità di spiare la comunicazione
cabile dal commento EEPROM DEFAULT FACTORY
Il seriale tra il modulo GSM e la scheda Ardui no Mega
PARAMETERS'; in questa sezione trovano posto i 2560. Quindi i jumper da JP1 a JP7 presenti sulla
seguenti: board GSM devono essere posizionati in posizione
• flag generici; 1-2 come spiegato 'negli articoli dedicati alla board
• abilitazione notifiche via SMS e chiamate GSM. Comunque sia il file ,,lo_GSM.h" in.testa ha una
vocali; tabella con indicato come devono essere configurati
..
• tempo di inibizione; 1JUmper.

• tempo di osservazione; Detto ciò di seguito le impostazioni da apportare per


• numero massimo di SMS in caso di allarme; il corretto funzionamento della libreria (i parametri
• timeout invio SMS con stato ingressi e uscite; da configurare sono tutti nel file lo_ GSM.h"):
Il

• timeout funzione apricancello. • selezionare il modulo GSM che si intende usare


3. blocco con le direttive "const char" per la defini- tra quelli supportati (per l'applicazione abbiamo
zione in Flash dei parametri stringa come gli SMS usato il SI M COM SIMBOOC) e commentare tutte
da inviare in caso di allarme. le altre direttive sui motori GSM;
Vediamo in dettaglio: • selezionare la board Ardui no da abbinare, in
• blocco della nostra libreria GSM contenente i questo caso Ardui no Mega 2560;
codici PIN, PUK ecc. identificabile dal com- • selezionare la revisione hardware della board
mento GSM Librarv P/N, PUK etc'; l'utente
Il GSM; selezionare la revisione R. 1.3 attualmente
dovrà inserire il codice PINe il codice PUK della in produzione;
propria SI M, mentre tutti gli altri codici non • selezionare per la comunicazione seriale UART 1
sono usati in questa applicazione, tuttavia non la modalità di funzionamento software; volendo,
devono essere rimossi perché facenti parte potete anche selezionare la seriale UART 1 in
della nostra libreria di gestione del modulo hardware, ricordatevi però di configurare i jumper
GSM; in modo corretto;

' 102
..

liDI

• commentare la direttiva di attivazione del jack


audio per gli auricolari "EARPHONES_JACK";
• infine le macchine a stati da abilitare per il nostro
telecontrollo:
-comandi AT generici~ "ENABLE_ANSWER_GE-
NERIC AT CMD STATE'
- - -
- comandi AT sicurezza~ "ENABLE ANSWER SE-
CURITY AT CMD STATE'
- -
- - -
- comandi AT rubrica telefonicai ~ "ENABLE
-
ANSWER PHONEBOOK AT CMD STATE'
- - - -
- comandi AT invio e ricezione SMSi ~ "ENABLE
-
ANSWER SMS AT CMD STATE'
- - - -
- comandi AT chiamate vocali i ~ "ENABLE
ANSWER PHONIC CALL AT CMD STATE';
-
- - - - -
• il codice di debug è disabilitato, quindi commen-
Fig. 1
Il GSM Shield
applicato ad
tare la direttiva "DEBUG MODE: seri al e in risposta è:
- Arduino Mega
2560.
STRINGHE DI COMANDO SUPPORTATE # Command received by user -> PWD33225;12345
Lo sketch supporta innumerevoli stringhe di co- # Command "PWD" processed successfully
mando ereditate dall'attuale TDG133. Quasi tutte le
stringhe di comando sono state importate in questo Questo indica che il comando è stato recepito ed
sketch e ne sono state aggiunte di nuove apposita- eseguito correttamente. Ora la nuova password di •
mente pensate per questa applicazione. Le stringhe sistema è "33225':
possono essere inviate da SMS o Monitor Seriale. Passiamo al comando per memorizzare un numero
Per le principali daremo una breve descrizione di telefono nella rubrica alla locazione desiderata:
proponendo un esempio di utilizzo. l comandi
stringa trattati, per comodità, saranno tutti inviati NUMx+39nnnnnnnnnnn;text;pwd
al telecontrollo tramite il monitor seriale di Ardui no
lDE. Nel caso in cui le stringhe vengano inviate via Il codice comando è "NUM' e memorizza il numero
SMS ci si dovrà aspettare una eventuale risposta da di telefono "nnnnnnnnnnn" nella locazione di me-
parte del telecontrollo, sempre via SMS. moria indicata da "x' (1 <x:::; 255). La stringa "text'
Quando si inviano i comandi via SMS sul monitor serve per associare un testo al numero di telefono
seriale verranno comunque stampate delle stringhe inserito. Il testo al massimo può essere lungo
di testo ad indicare l'esecuzione o meno del coman- quattordici caratteri, ed è obbligatorio. Infine segue
do. la password di sistema. Un possibile utilizzo del
Iniziamo la trattazione con il comando per l'im- comando potrebbe essere il seguente:
postazione della password di sistema, che è il
seguente: NUM2+393474131177;''Rossi'';33225

PWDxxxxx;pwd In questo caso nella locazione 2 della rubrica tele-


fonica della SIM verrà salvato il numero di telefono
Le password sono solo di tipo numerico e sono "31,71, 131177' con prefisso internazionale " +3g'
composte da cinque numeri. Non sono ammessi abbinato al signor "Rossi: Quello che si vede sul mo-
caratteri alfanumerici. Il codice comando è !' PWD' nitor seriale come risposta da parte dello sketch è:
seguito da "xxxxX' che identifica la nuova password
che si vuole impostare, ad esempio "33225: In coda # Command received by user ->
si deve inserire obbligatoriamente la password di NUM2+393474131177;ROSSI;33225
sistema in uso preceduta dal carattere "/ # Command "NUM" processed successfully
Quindi il comando diventa:
Andiamo al comando di rimozione di un numero
PWD3325;12345 telefonico dalla rubrica:

Eseguito il comando, quello che si vede sul monitor NUMx;pwd

103

.. J

Il codice comando è lo stesso di prima ovvero "NUM' # The phone number read at the location: 1 is ->

seguito dalla locazione di memoria della rubrica che "+393491544888"


si vuole cancellare. Ovviamente è necessario inseri- # The text associated to the phone number is: "ADMIN"
re la password. Quindi la sintassi diventa: # The phone number read at the location : 2 is ->
"+393474131177"
l

NUM2;33225 # The text associated to the phone number is: "ROSSI''


# The phone number read at the location: 3 is ->

Andiamo ora al comando di richiesta della lista dei "+393474331076"


primi otto numeri in rubrica: # The text associated to the phone number is: "BIAN-
CHI"
NUM?;pwd # The phone number read at the location: 4 is empty
# The phone number read at the location: 5 is empty

Il codice comando in questo caso è" NUM?' seguito -....


come sempre dalla password. Eseguendo il coman- -....
do seguente: # The phone number read at the location: 249 is empty
# The phone number read at the location: 250 is empty

NUM?;33225
La stringa di comando inviata ha ritornato lo stato di
Si ottiene la seguente risposta: tutte le locazioni di memoria della rubrica telefonica;
infine è stato implementato un comando per ricer-
# Command received by user -> NUM?;33225 care un numero di telefono in rubrica conoscendo
# Command "NUM?" processed successfully il testo associato. Ad esempio se si vuole verificare
# The phone number read at the location: l is -> che il numero di telefono del Sig. Rossi è presente
"+393491544888" in rubrica e facente parte delle prime otto locazioni
# The text associated to the phone number is: "ADMIN" di memoria si può eseguire la seguente stringa di
# The phone number read at the location: 2 is -> comando:
.
"+393474131177"
# The text associated to the phone number is: "ROSSI" FNUM?;text;pwd
# The phone number read at the location: 3 is ->
"+393474331076" Il codice comando diventa" FNUM?' seguito dal
# The text associated to the phone number is: "BIANCHI" testo che si vuole ricercare nella rubrica "text' e
# The phone number read at the location: 4 is empty ovviamente dalla password. Quindi il comando
# The phone number read at the location: 5 is empty potrebbe essere il seguente:
# The phone number read at the location: 6 is empty
# The phone number read at the location: 7 is empty FNUM?;Rossi;33225
# The phone number read at the location: 8 is empty
Si ottiene la seguente risposta:
Come si può notare, la stringa di comando inviata
'
ha ritornato lo stato delle prime otto locazioni di # Command received by user -> FNUM?;ROSSI;33225

memoria della rubrica telefonica evidenziando che ci # Command "FNUM?" processed successfully

sono le prime tre celle occupate. Le restanti cinque # Found the phone number into the phonebook. The
sono libere. location is: 2
Se si desidera leggere tutte le locazioni di memo-
ria in rubrica si può usare la seguente stringa di Notare che il numero di telefono del Sig. Rossi è
comando: presente in rubrica e occupa la seconda locazione di
memoria. Se invece cerchiamo il Sig. Brambilla, ag-
ANUM?;pwd giunto in seguito, troveremo che occupa la locazione
dieci in rubrica e quindi abilitato alle sole funzioni di
Eseguendo il comando si ottiene la seguente apricancello.
risposta:
# Command received by user - > FNUM?;BRAMBILLA;33225
# Command received by user -> ANUM?;33225 # Command "FNUM?" processed successfully
# Command "ANUM?" processed successfully # Found the phone number into the phonebook. The

l
'
104

IIUIIUiliJIDIIU111JIIfiUIIliiiiiJI1111JBUIIIIIIIJJIIIIIIIII1llllUIUIIIIIIllliii1111111JIIIIlllllrrnl11111
.

location is: 10

Con questo sono concluse le stringhe di comando


per la configurazione e verifica dei numeri di telefo-
no da salvare in rubrica.
Abbiamo implementato due stringhe di comando
utili per cancellare rispettivamente un SMS dalla
memoria della SIM o di cancellare tutti gli SMS
presenti nella memoria della SI M. Solitamente sono
a disposizione fino a 30 locazioni di memoria per gli
SMS in ingresso.
Queste funzioni sono utili nel caso siano memoriz-
zati vecchi SMS sulla SIM che si intende riutilizzare
con il sistema ci controllo remoto. La sintassi dei
due comandi è rispettivamente:
Fig. 2
~~
, G'~M 5 1t11eij
....,jl'.• fd
, .

DSMSx;pwd .
con aoolicato
'
lo shield
DASMS;pwd SMS2468:0FF;33225
Telecontrollo 7
,; -f-u*o
il o. "'.. mont'~.;lioo
a!\.

Il codice comando per cancellare un singolo SMS è Quanto detto è valido anche per le chiamate vocali su At·duino
fv1ega 2560.
"DSMS' seguito dalla locazione di memoria "x: Come con la sola differenza che il codice comando è "VOC':
sempre segue la password di sistema. Mentre per

cancellare tutti gli SMS il codice comando è" DASMS' VOCxxxxxxxx:ON;pwd
seguito dalla password. VOCxxxxxxxx:OFF;pwd
Passiamo ora ai comandi di configurazione delle
funzioni del sistema di controllo remoto comin- Per ognuno dei seguenti comandi
.
si riceverà la
ciando dai comandi di abilitazione/disabilitazione consueta risposta da parte del sistema:
invio SMS di allarme o chiamata vocale ai primi otto
numeri in rubrica. Quindi al verificarsi di un evento # Command received by user -> SMS1357:0N;33225
sugli ingressi digitali avremo la possibilità di deci- # Command "SMS" processed successfully
dere a chi verranno recapitati gli SMS di allarme e # Command received by user -> SMS2468:0FF;33225
relative chiamate vocali. Cominciamo con la stringa # Command "SMS" processed successfully
di comando di configurazione invio SMS che si può # Command received by user -> VOC1357:0N;33225
presentare nei due modi seguenti a seconda che si # Command "VOC" processed successfully
attivi o disattivi l'invio deii'SMS: # Command received by user -> VOC2468:0FF;33225
# Command "VOC" processed successfully
SMSxxxxxxxx:ON;pwd
SMSxxxxxxxx:OFF;pwd Parliamo ora del comando per configurare la

gestione degli ingressi digitali di allarme. Gli ingressi
Il codice comando è "SMS' seguito dalle locazioni possono essere considerati attivi quando si legge
che si vuole attivare tra le prime otto a disposizio- un livello di tensione "HIGH' o un livello di tensione
ne "xxxxxxxX: Segue la stringa "ON' attiva o "OFF' "LOW' oppure sulla variazione" TOGGLE:
disattiva. Ovviamente il comando necessita della Quindi le tre possibili stringhe di configurazione
password per essere eseguito. saranno le seguenti:
Per impostazione predefinita le otto locazioni di
memoria sono attive. LIVx:A;pwd
Quindi supponendo di volere attivare le locazioni LIVx:B;pwd
1, 3, 5 e 7 si dovrà inviare la seguente stringa di LIVx:V;pwd
comando:
Il codice comando in questo caso è "L/V' seguito
SMS1357:0N;33225 dall'ingresso che si vuole configurare "x' e dal relati-
Mentre per disattivare le locazioni 2, 4, 6 e 8 si vo stato stabile "A" (HIGH), "8' (LOW) e "V' (TOGGLE).
. . '
1nv1era: Come al solito segue in coda la password. Quindi

l
105
r

supponendo di volere impostare l'ingresso 1 attivo Il codice comando è "IN/?' e ritorna la seguente:
alto si può così procedere:
# Command received by user -> INI?
LIV1:A;33225 # Alarm inhibition time for input 1: 10
# Alarm inhibition time for input 2: 5
Volendo è possibile sapere come sono configurati gli # Command "INI?" processed successfully
ingressi, per fare ciò è sufficiente inviare la stringa di
comando: Esiste ùn ulteriore comando di configurazione dei
tempi di inibizione degli ingressi digitali il quale ci -
LIV? permette di ignorare tale configurazione se neces-
sario. In altre parole quando l'ingresso torna a riposo
Il codice comando è "L/V?: nessuna password è è possibile trascurare il tempo di mascheramento
richiesta. La risposta da parte del sistema sarà: dell'ingresso impostato dalla precedente stringa di
comando appena descritta.
# Command received by user -> LIV? Quindi per ignorare i tempi di inibizione si possono
# Alarm activation leve! for input 1: HIGH sfruttare le seguenti:
# Alarm activation leve! for input 2: HIGH
# Command "LIV?" processed successfully TIZlx;pwd
TIZ2x;pwd
Entrambi gli ingressi sono configurati per essere
attivi con livello logico alto. Il codice comando è "TIZ1" o "TIZZ' seguito dal para-
11
Sempre per gli ingressi digitali è possibile configu- metro X' che identifica se ignorare o no il tempo di
11
rare un tempo "di inibizione" che indica al sistema inibizione. Se al parametro si assegna il valore 1" il
di ignorare le variazioni dell'ingresso per un periodo sistema ignorerà il tempo di inibizione viceversa se
di tempo pre-impostc~.to successivamente ad una si assegna" (J' il sistema sarà obbligato a considera-
attivazione dello stesso. re il tempo di inibizione.
Questo aiuta ad evitare attivazioni spurie e quindi Ultimo parametro di configurazione degli ingressi è
invio di SMS di allarme non voluti. Il tempo è impa- il cosiddetto tempo di osservazione che può essere
stabile da un minimo di Ominuti a un massimo di 59 visto come una specie di debouncing. In altre parole

minuti. Il valore predefinito è 5 minuti. La stringa di lo stato dell'ingresso si ritiene valido per l'invio di un
comando da utilizzare è: eventuale SMS di allarme se questo rimane stabile
per un tempo prefissato. l tempi impastabili vanno
INix:mm;pwd da 1 secondo a 59 secondi. Il valore predefinito
per questo parametro è 1 secondo. La stringa di
Il codice comando è "IN/' seguito dall'ingresso che comando da utilizzare è:
si vuole configurare "x' e dal tempo di inibizione
"mm': Per sapere come sono configu rati i tempi di OSSx:ss;pwd
inibizione degli ingressi, si può inviare la stringa di
comando:

INI?

Il prototipo con separata la


scheda che ospita il modulo GSM.

106
Dlltrn

Il codice comando è" OSS' seguito dall'ingresso che che si sta configurando. Il parametro "xi' indica il
si vuole configurare "x' più il tempo di osservazio- numero di SMS che si devono inviare al persistere
ne espresso in secondi "ss: In coda la password della condizione di allarme. l valori ammessi vanno
- come al solito. Se si vuole conoscere come sono da O a 99. Il valore O definisce nessun SMS mentre
configurati i tempi di osservazione si può usare la 99 indica infiniti SMS. Tutti gli altri valori compresi
seguente stringa di comando: tra Oe 99 indicano il numero massimo di SMS che
,
il sistema invierà al persistere dell'allarme. Chiude
OSS? la stringa di comando la password di sistema. Un
esempio di configurazione potrebbe essere:
la quale restituisce:
ALN1:5;33225
# Command received by user -> OSS?
# Alarm observation time for input 1: 10 La stringa di comando così impostata indica che
# Alarm observation time for input 2: 1 al persistere dell'allarme sull'ingresso 1 verranno
# Command "OSS?" processed successfully inviati al massimo cinque SMS ai numeri di telefono
selezionati. Invece per sapere quanti SMS il sistema
Passiamo ora ai comandi per configurare il testo che invierà in caso di persistenza dell'allarme si può
si vuole inviare quando si verifica una condizione di usare la stringa:
-
allarme sugli ingressi digitali. Le stringhe di coman-
do da usare sono: ALN?

TIN1A:xxxx;pwd In questo caso il codice comando è semplicemente



TIN1B:xxxx;pwd "ALN?' senza nessuna password. L'esecuzione del
TIN2A:xxxx;pwd comando ritorna la seguente:
TIN2B:xxxx;pwd
# Command received by user -> ALN?
.
l codici comando ci permettono di configurare la # Max num. of SMS to send if alarm occur (99 infinite;
stringa di testo da inviare in caso di allarme. 0 nothing). Input 1: 5
Abbiamo quindi: # Max num. of SMS to send if alarm occur (99 infinite;
• Ingresso 1 attivo alto{" 1A") 0 nothing). Input 2: 10
• Ingresso 1 attivo basso {"18') # Command "ALN?" processed successfully
• Ingresso 2 attivo alto {"2A")
• Ingresso 2 attivo basso {"28') Passiamo ad analizzare il comando per la gestione
delle uscite digitali. Le possibili stringhe di comando
La stringa di testo "xxxi' può avere una lunghezza sono le seguenti:
massima di 1 00 caratteri e non possono essere •

usati i segni di interpunzione "," e"/ Un possibi- OUTx:ON;pwd


le esempio di utilizzo di tale stringa di comando OUTx:OFF;pwd
potrebbe essere: OUTx:ss;pwd

TIN1A:Allarme allagamento sentina!!;33225 Il codice comando è "OUT' dove "x' indica l'uscita
digitale. Per portare a livello logico alto l'uscita
Si è quindi configurata la stringa di allarme per aggiungere la stringa" ON' al comando altrimenti,
l'ingresso 1 quando questo è attivo alto. La stringa per portarla a livello logico basso, la stringa" OFF: Se
associata allo stato di allarme è "Allarme allaga- invece si vuole invertire lo stato dell'uscita per un
mento sentina!!" Passiamo ad analizzare il comando periodo di tempo al posto delle stringhe "ON' e "OFF'
per impostare il numero di SMS che il sistema deve mettere un tempo in secondi "ss: Il valore minimo
inviare al persistere della condizione di allarme in accettato è 1 secondo mentre il valore massimo è
ingresso. La stringa di comando è la seguente: 59 secondi. Facciamo il seguente esempio:

ALNy:xx;pwd OUT1:0N;33225

Il codice comando è "ALN' dove "v'' indica l'ingresso La stringa di comando inviata accende l'uscita digi-

l
107
r •

111111111flllllllll IIIIIIIIIIIJIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIJIIII 111 lllllll-

tale 1. Se invece inviamo la stringa:

OUT1:30;33225

In questo modo abbiamo invertito lo stato di uscita


portando lo a livello logico basso per un periodo di
30 secondi scaduti i quali lo stato ritorna alto.
Se si vuole richiedere lo stato delle uscite si deve
' inviare la stringa di comando seguente:

STA?

L'esecuzione del comando ritorna la seguente:


(REGGIO EMILIA)
# Comrnand received by user -> STA?
# Relé status for output 1: ON
# Relé status for output 1: OFF
CENTRO FIERISTICO # Comrnand "STA?" processed successfully

Passiamo alla descrizione del comando che si


occupa di configurare quando inviare I'SMS di report
ovvero ogni quanto mandare lo stato degli Ingressi/
Uscite digitali (I'SMS viene inviato solo al primo
numero presente nella rubrica telefonica). Le tre
stringhe di comando sono le seguenti:

AUTOC:ON;pwd
AUTOC:OFF;pwd
AUTOC:hh:mm:ss;pwd

Il codice comando è "AUTOC' seguito dalla stringa


di attivazione del servizio ovvero "ON' attivo; "OFF'
non attivo. Oltre all'attivazione si può decidere
l ogni quanto inviare I'SMS di report usando la terza
stringa di comando con il parametro" hh:mm:ss: Tale
.\ parametro non identifica l'ora a cui si vuole mandare
I'SMS ma l'intervallo temporale tra un invio e il
MERCATINO DELLE PULCI successivo. Ovviamente in coda segue la password
RADIOAMATORIALI di sistema. Per fare un esempio se impostiamo
"10:30:3(1' vuoi dire che il messaggio di report viene
TELEFONIA · COMPONENTISTICA mandato allo scadere del tempo di 1O ore, 30 mi-
COMPUTER · HI·FI CAR · RADIANTISMO nuti e 30 secondi o se preferite ogni 37830 secondi.
CB e DM · VIDEOREGISTRAZIONE Quindi una ipotetica stringa di comando potrebbe
essere:
ORARI
Sabato 26 Ottobre 9 • 18,30 AUTOC:10:30:30;33225

Domenica 27 Ottobre 9 • 18 AUTOC:ON;33225

INGRESSO euro 5 Se si vuole sapere come è configurato il servizio


GRAnJITO per disabili e ragant fino a 14 anni deii'SMS di report si può usare la stringa di comando
seguente:
COMUNE DI
INF0:05221764302·857436
SCANDIANO www.fierascandiano.it
. AUTOC?

..

108
-

Ili l 11111

La quale se eseguita ritorna la seguente: funzione è abilitata" 1" o disabilitata" a: Dato


il comando precedente è possibile associargli
# Command received by user -> AUTOC? una stringa di testo a piacere, quella di default è
# SMS report status: ON "SYSTEM STARTUP: Quindi la stringa di comando per
# If enabled, the SMS report format is: TEXT configurare il testo da usare per I'SMS di start-up è
# If enabled, the SMS report of the Inputs/Outputs is la seguente:
sent every: 10:30:30 TSU:xxxxxxxxxxxx;pwd
# Command "AUTOC?" processed successfully

Notare che esiste un altro parametro di configura- da salvare in EEPROM. Massimo 100 caratteri.
zione per quanto riguarda I'SMS di report e riguarda Come al solito sono vietati i caratteri"," e"/ In coda
come devono essere rappresentati gli stati degli al comando è necessaria la password di sistema.
ingressi e delle uscite quando si compone I'SMS da Quindi una possibile stringa di comando potrebbe
inviare. In altre parole possiamo scegliere se usare essere:
una rappresentazione binaria oppure testo.
La stringa di comando che ci permette di configura- TSU:StartUp telecontrollo! Buona Giornata;pwd
re quanto appena detto è la seguente:
Passiamo al comando di configurazione della sola
FORS:x;pwd uscita digitale 1 usata per funzione di apricancello.
Questa è applicabile ai 200 numeri di telefono
Il codice comando è "FORS'dove il parametro "i' memorizzati a partire dalla nona locazione di me-
indica il formato: "1" formato testo; "a' formato moria nella rubrica telefonica (in realtà anche i primi •
binario. In coda la password di sistema. otto numeri in rubrica possono sfruttare questa
Detto ciò possiamo passare al successivo coman- funzione).
do il quale si occupa di configurare la possibilità di La stringa di comando per configurare tale funzione
memorizzare lo stato delle uscite nel caso in cui è la seguente:
venga a mancare l'alimentazione cosicché da poter
riproporre lo stato ultimo al ritorno dell'alimentazio- TAC:ss;pwd
ne. La stringa di comando che si occupa di ciò è la
seguente: Il codice comando è "TAC' seguito dal tempo "ss' di
eccitazione dell'uscita 1, il tempo impastabile va da
RIPx;pwd un minimo di "oa' a un massimo di "sg' secondi.
Quindi ogni qual volta si riceve una chiamata vocale
Il codice comando è" RIP' e il parametro "i' indica se da parte di un numero di telefono presente in lista si
si vuole attivare la funzione "1" oppure disattivarla ha che l'uscita digitale 1 verrà eccitata e rimarrà in
"a: Per sapere com'è configurato tale parametro tale stato fino allo scadere del tempo impostato.
possiamo usare la seguente stringa: Se si imposta come valore "oa' vuoi dire che ad ogni
chiamata si avrà un comportamento bistabile dell'u-
RIP? scita ovvero chiamo e eccito l'uscita, richiamo e
diseccito l'uscita. Anche questa stringa di comando
La quale se eseguita ritorna la seguente: richiede la password di sistema in coda.
Passiamo alla funzione "ECHO' ovvero alla pos-
# Command received by user -> RIP? sibilità di selezionare a quale numero di telefono/
# Recovery relé status: ON memorizzato nella rubrica telefonica/ si vuole inviare
# Command ''RIP?'' processed successfully gli SMS ricevuti ma non facenti parte delle stringhe
di comando supportate. La stringa di comando è la
Passiamo al comando per abilitare l'invio deii'SMS di seguente:
start-up (viene inviato al primo numero della rubrica
telefonica). La stringa di comando è: ECHO:x;pwd

AWx;pwd Il codice comando è" ECHO' seguito dalla locazione


di memoria in rubrica "x: identificando così il nume-
Il codice comando è "AW' dove "i' indica se la ro di telefono a cui si vuole inviare I'SMS. Se "i' val o

l
109
'
,
IIIIIJJIIIIIIIIIJIIJJIJIIIIIIIIIliiJIJIIIIIIIIIIIliiJIIIIIIIIIIJIJIIIJII 111111111111111111

zero significa che la funzione è disabilitata. Il codice comando è" PWRF' e "x' indica se la funzio-
Il prossimo comando serve per chiedere al sistema ne deve essere abilitata o disabilitata, in altre parole
la qualità del segnale GSM. La stringa da usare è: TI 1" attiva e "O' disattiva.
QUAL? Ovviamente esiste anche il comando per impostare
l'invio deii'SMS di ritorno alimentazione.
la quale ritorna: La stringa di comando in questo caso è:

# Command received by user -> QUAL? PWRRx;pwd


#GSM Quality signal (RSSI): 20
#GSM Channel bit error (BER): 0 Il codice comando è PWR/1' e "x' indica se la funzio-
TI

# Command "QUAL?" processed successfully ne deve essere abilitata o disabilitata, in altre parole
"1" attiva e "O' disattiva. Ovviamente per entrambe
Se invece si desidera sapere a quale operatore si è le stringhe di comando appena discusse c'è la possi-
collegati si può usare la stringa: bilità di configurare gli SMS che si desidera inviare in
entrambi i casi.
OPER? La stringa di comando per configurare SMS mancan-
za alimentazione è:
la quale ritorna:
TPWPF:xxxxxxxxxxxx;pwd
# Command received by user -> OPER?
# The SIM operator is: "TELECOM ITALIA MOBILE"
# Command "OPER?" processed successfully stringa da usare per comporre I'SMS. Come al solito
massimo 100 caratteri esclusi la e III Ricordar-
TI, TI

Mentre se si vuole sapere quale revisione dello si la password di sistema in coda alla stringa di
sketch è caricata nello Ardui no Mega 2560 si deve comando.
usare la seguente: Invece la stringa di comando per configurare SMS
ritorno alimentazione è:
REV?
• TPWPB:xxxxxxxxxxxx;pwd
La quale ritorna:

# Command received by user -> REV? stringa da usare per comporre I'SMS. Come al solito
# The TDG133 Rev: 1.0 massimo 100 caratteri esclusi la"," e "/
# Manufacturer: SIMCOM_Ltd Infine vediamo l'ultimo comando, che è quello per
# TA Model: SIMCOM_SIM800C ripristinare le condizioni di fabbrica. Ovvero riporta
# TA Revision:1418B04SIM800C32_BT tutte le configurazioni di sistema allo stato iniziale
# TA (IME!): 866104027073389 compresi i testi degli SMS da inviare. Oltre a ciò
# Command "REV?" processed successfully CANCELLA tutti i numeri di telefono dalla rubrica
telefonica. La stringa di comando da usare è:
La funzione, oltre a ritornare la revisione dello
sketch ci da delle informazioni sul motore GSM uti- RES;pwd
lizzato ovvero Marca, Modello, revisione FW e lMEl.
Parliamo ora del comando usato per impostare Il codice comando è "RES' seguito dalla password.
l'invio deii'SMS di mancanza alimentazione. Si ottiene come risposta la seguente lista di eventi
Il comando è implementato, quindi si può configura- (che abbiamo troncato per evidenti motivi):
re, ma dato che il sistema attualmente non ha una
batteria tampone per mantenere l'alimentazione # Command received by user -> RES;33225
necessaria all'invio deii'SMS perde di significato. # Command "RES" processed successfully
Tuttavia non si esclude che in futuro verrà piena- # Erased Phonebook memory entry: 1
mente supportato. Quindi la stringa di comando da # Erased Phonebook memory entry: 2
inviare è la seguente: - ....
- ....
PWRFx;pwd # Erased Phonebook memory entry: 250

...

' 11 o
....

.
r

Sia ben chiaro che una volta conclusa l'esecuzione ta a riposo;


del comando anche la password di sistema viene • LED 05 Rosso [//0 36- Pin 61] ; acceso indica
11
riportata al suo valore di fabbrica ovvero 12345: che l'uscita 2 è attiva, mentre è spento con l'usci-
Facciamo ancora alcune piccole considerazioni: ta a riposo;
... • LED 06 Giallo [//0 35- Pin 64]; si accende
• È possibile inviare più comandi simultaneamente quando l'ingresso digitale 1, a seconda della con-
avendo accortezza di interporre una virgola tra figurazione fatta, attiva la condizione di allarme,
un comando e il successivo. viceversa è spento;
Ad esempio: • LED 07 Giallo [//0 34- Pin 63] ; si accende
quando l'ingresso digitale 2, a seconda della con-
qual?,oper?,rev? figurazione fatta, attiva la condizione di allarme,
viceversa è spento;
Si ottiene come risposta: • LED 06 e LED 07 sono anche usati per indicare
lo stato di attesa del primo numero di telefono
# Command received by user -> QUAL?,OPER?,REV? da salvare in rubrica {Easy Setup}; in tal caso
#GSM Quality signa! (RSSI): 20 lampeggiano in modo alternato con un periodo
#GSM Channel bit error (BER): 0 di 500mSec {50% ON/50% OFF);
# Command "QUAL?" processed successfully • LED 08 Verde [//0 33- Pin 66] : segnala un
# The SIM operator is: "TELECOM ITALIA MOBILE" SMS o una chiamata vocale in uscita:
# Command "OPER?" processed successfully - all'invio deii'SMS si accende, viceversa è
# The TDG133 Rev: 1.0 spento;
# Manufacturer: SIMCOM_Ltd - durante una chiamata vocale il led lampeggia, •

# TA Model: SIMCOM_SIM800C diversamente è spento.


,.
# TA Revision:1418B04SIM800C32_BT • LED 09 Verde [//0 32- Pin 65]: indica larice-
# TA (IMEI): 866104027073389 zione di un SMS o chiamata vocale in ingresso:
# Command "REV?" processed successfully - quando si riceve un SMS il LED si accende,
viceversa è spento;
• Se i comandi vengono inviati da un telefono - durante una chiamata vocale il led lampeggia,
cellulare tramite SMS è possibile dire al sistema diversamente è spento.
r di non inviare nessuna risposta al mittente. Per
fare ciò si deve mettere in testa al messaggio la CONCLUSIONI
stringa di comando RISP' seguita da una virgola.
Il Finisce qui la descrizione del telecontrollo GSM
In questo modo il sistema non invierà nessun basato su Ardui no e GSM Shield; per gli scopi del
SMS di risposta alle richieste fatte progetto il firmware utilizza parte degli 1/0 dispo-
nibili, quindi chi desiderasse accrescerne le funzio-
GESTIONE DEl LED DEL GSM SHIELD nalità potrà sfruttare tutti e 8 gli input digitali e le
Sul GSM Shield ci sono dei LED che vengono usati altrettante uscite mettendo mano allo sketch.
dallo sketch attuale per dare informazioni visive
.. sullo stato dell'applicazione. Di seguito ne facciamo
una breve descrizione:
-
• LED 12 Rosso [//0 13- Pin 14]; anche detto Cosa occorre?
Trigger 3 ha il seguente comportamento:
Il materiale utilizzato in questo progetto è disponibile
l' - lampeggia veloce durante inizializzazione mo- presso Futura Elettronica. La board Arduino Mega
dulo GSM; periodo 250msc {25% ON/75% OFF}; (cod. ARDUINOMEGAREV3) è in vendita a Euro 43,00, lo shield
- lampeggia lento a regime, inizializzazione GSM GSM (cod. WWGSMSHIELD) costa Euro 54,90 (i moduli GSM
sono disponibili separatamente), il convertitore USB/TTL
conclusa; periodo 2S {25% ON/75% OFF}; (cod. FT782M) è disponibile a Euro 13,00.
- se viene eseguito un comando stringa il LED si Lo shield con area millefori per Arduino Mega (cod. FT1468)
accende fisso per tutta la durata del comando costa Euro 15,00. l prezzi si intendono IVA compresa.

e torna a lampeggiare lentamente a comando


Il materiale va richiesto a:
eseguito.
• LED 04 Rosso [//0 37- Pin 62] ; acceso indica Futura Elettronica, Via Adige 11 , 21013 Gallarate {VA)
Tel: 0331-799775 - http://www.futurashop .it
che l'uscita 1 è attiva, mentre è spento con l'usci-


111
'
,,..-_.. ..-·········
-~ . . .. ~..,......,.-~~- ., ...., . .

:0'-'- ::.:- •
.;;.;,; "'
·--~'\1,8-.::-

• . ~

.

Q:esign With SimplicitJ ·"'t:. .',; :; -- '"" "-.,

~~hino ·uNo, Fishino MEGA, Fishiri'o32, Fishi~ro GUPPY e Fisftirio SHAR k sono ~chede _. . , ,~·'"' "' ..
!'··" . ·' ·ii·-'~- : -:· ,,
,.:
:1,.,;,, 1,,

df sviluppo_Arduino-compatibile dotate di Wifi e lettore di sched e microSD.


Grazie ad un compl eto pacçh etto di librerie (~caricabile dal sito www.fishino.it),
$i. .ha la po~sibilità di gestirè!tutti i propri progetti da·l web in .maniera semplice e.,veloce! . _,.,.
. ~
-~

Fishino UNO ·Controller: ATmega328


--::--
• Controller: ATmega2560 Fishino MEGA
• Alimentazio ne: -
-da 7a 12 Vdc (tramite- plug) --
: • Alimentazione:
:-: - 3,6 Vdc (tramite batteria esterna ~

- 5Vdc (tramite porta USB)


--
::: allitio)
·Compatibile al100%
conArduino UNO
-
-da 3,5 a20 Vdc (tramite plug)
-§ .. - 5Vdc (tramite porta USB)
·Modulo WiFi ~ ·Circuito di rkarica per batteria af litio
·lnterfaccia per scheda MicroSD -
5 · Compatibile al l 00%
• Modulo RTC con batteria di - con Ardui no MEGA
=
- -
-· mantenimento : • Modulo WiFL
.::-;;
-
.-sezfone di alimentazione a3,3 V § ·lnterfaccia per scheda MicroSD
4.t.S . ~!,t+>- poteRziata
-
:: • Modulo RTC con batteria
~':· • • cod. •......':. Compatibile con shield e schede
- --
= di mantenimento
,,..,.

. ~.·- FISHINOUNOBOX \ .


miflefori -
~ •Stadio di alimentazione swi!ching ...
l'ì.:.,.;i:.. . L:!
.... 4 '"
.· .
.. ...... ·~·-·. ·· · ~~t
"gn.
· :\.f,.
>. 25 g
. ·. •••-.... • Peso ···· .. § (5Vdcé3,3Y,dc) .· . ·:.::·."·
·
l "l"".'/';;'~

~ .. ,. '
-
: ~ ·Dimensioni 76,5 x53,5 x 14mm ~ ·Compatibile con shield
• /;h -
:= eschede miliefori
-§ ·Peso 37 g cod. FISHINOMEGA
l:.
;;, .. , '
cod. FISHINO _l,.t~O
.... ;;··
€ 36l 00' .
.;-··"\ -·# -
: ·Dimensioni 101,5 x 53,5 X·15 mm
-- ·
€49, o
111111111
lillllllfllflll llllllllflliiiJ IIIIIIIIIIIIIJ IIIIlllllllllli iiJIJIIIIIIIII IIIIIIIIIIIIII lllllllllllllllf tlllllllllllllft iiJJJIIlllllll llllllflllllllll llllllllfllllltl llllllllllllllll l111111111 111111111 111111111 11111tff11 111111111 111111111

4.~!!! .~~+~ ---- • Controrter: ATmega328


Fishino32 . ~~ cod. ··'# § Fishino GUP" PY • Alimentazione:
~....• FISHIN032B OX ••••••
--- - 3,6 Vdc (tramite batteria esterna
0: € ·. .-- ----
·=· 90
T ::D

iJ: ----
allitio)
- da 6,5 a20 Vdc (tramite PIN VI N)
/,. ----- - 5Vdc (tramite porta USB)
·. ··#
·····:;,t;,•
-----
----
• Circuito di ricarica per batteria allitio
·Compatibile al100%
-- con Ardui no NANO
·Circuito di ricarica per batteria allitio --
·Compatibile con Ardui no UNO
---- • Modulo WiFi

·Modulo WiFi ---- cod. GUPPY


·lnterfaccia per scheda MicroSD
·Peso 10 g
• Controller: PIC Microchip a32 bit ·Modulo RTC con batteria --- -- € 33,90 ·Dimensioni 75 x20 x18,5 mm
·Alimentazione: di mantenimento ---
- 3,6 Vdc (tramite batteria • Clock 120MHz, riducibile via software =:- 11111111111111111111 1111111111111111111111111111111111111111111111 1111111111111 Il l lllllllf 1111 11 1111111 11 1l
esterna allitio) ·lnterfaccia per scheda microSD ----
cod. FISHIN032 -da 3,5 a20 Vdc (tramite plug o • Codec audio stereo ---
---
59,0 sull'ingresso Vin) ·Peso 29 g -
--- Fishino SHARK
- 5Vdc (tramite porta USB) ·Dimensioni 76,5 x53,5 x 14m m
----
lllllllllllll lllllllllllll lllllllllllll lllllllllllll lllllllllllll lllllllllllll lllllllllllll lllllllllllll lllllllllllll lllllllllllll -----
• Alimentazione:
-----
Fishino PIRANHA -3,7 Vdc (tramite batteria esterna allitio)
--- '
---
- da 3,5 a20 Vdc (tramite plug) ---
-da 3,5 a20 Volt sull'ingresso Vi n ---- cod. SHARK
- 5Vdc (tramite porta USB) --- € 67,00
·Circuito di ricarica per batteria allitio --
·Compatibile allOO% con Ardui no MKR1000 ----
--
• Modulo WiFi
·lnterfaccia per scheda MicroSD
-----
cod. PIRANHA ·Peso 10 g -----
• Formato standard Ardui no MEGA
·Processare PIC32MX470F512
·Tensione di alimentazione: 3+ 20Vdc
·Alimentazione abatteria, plug e/o via
€44,9 0 ---
·Dimensioni 62 x25 x 16m m ----
• 512 kB di ROM connettore USB
---
·128 kB di RAM ·Funzionamento interno a3,3 V
---
-- ·Frequenza di dock di 105MHz • Pin DIGITALI5V-tolerant
:: ·lnterfaccia USB nativa, sia device che host • Ricarica automatica di una batteria LiPo
-
:: • RTC incorporato • Spegnimento da software con processo re
Set contenente il necessario
-§ ·Lettore per schede microSD in standby
per realizzare applicazioni cod. FISHINOSTARTER :- • Modulo WiFi integrato • Wake-up tramite pin esterno oin tempi
con Fishino UNO. €6 1 O -:: • Codec audio prefissati
---
dell'Ing. MIRCO SEGATELLO

ella prima lezione di questo corso abbiamo parlato no abbastanza comune, così come in numerosi luoghi pub-
di dispositivi connessi nel senso più generico del blici o aperti al pubblico, ma cosa succede se non si dispone
termine, ma anche di quali possano essere le reali di un accesso alla rete con il WiFi? Il primo pensiero va all'u-
applicazioni deii'IOT (internet delle cose) con le tecnologie tilizzo di un modem GSM (GSM shield, se si utilizza Ardui no)
attualmente disponibili. Abbiamo anche dipinto un quadro munito di SIM dati e relativo contratto con operatore che,
dei possibili sviluppi di questa tecnologia e di quale sia la sua pur essendo sempre più a buon mercato, non è certamente
importanza nel mercato globale. gratuito. Inoltre, utilizzare una tecnologia pensata per far
Nella seconda puntata abbiamo presentato una semplice dialogare smartphone, sarebbe ridondante per la trasmissio-
applicazione basata sulla scheda Ardui no MKR1 000 che uti- ne di alcuni byte di un semplice sensore di parametri ambien-
lizzava una connessione WiFi per accedere alla rete Internet. tali e in generale per l'laT. Per questo alcune aziende molto
Disporre di una rete WiFi nella propria abitazione è oggigior- lungimiranti hanno pensato di sviluppare nuove tecnologie
Concentra tor Network Applicatio n
/Gateway Server Server

gas monitor
3G/4G
/Ethernet

trash container

vending m·
machine
-
m:

LoRa®RF TCP/IPSSL TCP/IP SSL


loRaWANTM LoRaWANTM Secure Payload

Fig. 1 - Schema della rete loRaWAN.

specifiche, con l'unico fine di ottimizzare l'accesso alla rete, di gestire sino a 1 milione di nodi. LoRaWAN è parte di una
da parte di un specifico tipo di oggetti che non necessitano categoria di tecnologie chiamata LPWAN (Low Power Wide
di uno streaming ad alto bit-rate né di una connessione Area Network), sviluppata per poter permettere a sensori
continua alla rete. Queste tecnologie sono più d'una ma le alimentati a batteria di inviare e ricevere messaggi, utilizzan-
più rilevanti di esse risultano certamente LoRa e SigFox; la do pochissima energia in modo da poter funzionare per anni
tecnologia di cui andiamo a occuparci in questa terza puntata con una singola batteria stilo, questo a patto di sacrificare la
del corso è la prima, ossia LoRa (contrazione di Long Range). velocità di trasmissione (non superiore a 50 kbps), e la quan-
tità di dati inviabili.
LoRA: POCHI DATI, MOIT roPERT LoRaWAN utilizza due tipi di chiavi simmetriche per la sicu-
Questa è proposta dalla LoRa Alliance (https:,ffora-alliance.org) rezza della comunicazioni, che sono uniche per ciascun devi-
ovvero un'associazione senza scopo di lucro, impegnata a ce; questo accorgimento rende impossibile l'intercettazione e
consentire l'implementazione su vasta scala di loT in reti a la manomissione delle comunicazioni.
bassa potenza (LPWAN) attraverso lo sviluppo e la promozio- Tipiche applicazioni si possono ricercare in dispositivi loT e
ne dello standard aperto LoRaWAN (Long Range Wide Area lo E (Internet of Everything}, ovvero piccoli sensori alimentati
Network). La rete LoRaWAN (schematizzata nella Fig. 1} è in a batteria che inviano solo pochi byte poche volte al giorno,
continua espansione ed attualmente conta oltre 100 ope- come ad esempio contatori di gas o acqua, lampioni per illu-
ratori con una copertura che al momento comprende il Nord minazione pubblica, monitoraggio ambientale, tracciamento
America, parte del Sud America, l'Europa e l'Australia; non c'è di veicoli ecc. Lo schema generale di una rete LoRa vede la
ovviamente copertura in mare aperto. presenza di una serie di dispositivi IOT che accedono tramite
Questa tecnologia permette di usare sensori wireless LoRa-
WAN loT (Internet of Things} in grado di comunicare a distan-
ze di 100 km in campi aperti, 15 km in ambienti semi-rurali e
fino a 2 km in ambienti densamente popolati con la capacità
..
'

Fig. 2
The Things Gateway
per LoRaWAN.


dei Gateway alla rete internet potendo così trasferire i dati al espandere la comunità globale di sviluppatori loT, così, ad
server centrale (Network Server) il quale a suo volta· può dia- esempio, l'area di Milano potrebbe essere coperta intera-
logare con gli Application Server. mente con meno di 20 gateway (Fig. 3). Per sapere se nella
Il network server più adatto per i nostri scopi si chiama vostra zona sono presenti Gateway potete recarvi nel sito
The Things Network (TIN) e nasce da una startup olandese https:!www.thethingsnetwork.org/ e consultare la relativa
che ha raccolto quasi 300 mila euro in una campagna di mappa oppure scaricate l'apposita app di nome LoRa dal Play
crowdfunding per lanciare una rete di Internet of Things Stare. Nulla vieta, anzi è auspicabile, installare un Gateway
aperta, libera, posseduta e gestita dagli utenti. The Things nella propria abitazione, magari autocostruito utilizzando una
Network (che vedete nella Fig. 1) utilizza il protocollo LoRa- scheda a basso costo come Raspberry Pi.
WAN (in futuro è previsto anche l'utilizzo del Bluetooth 4.2
per il corto raggio) e mette a disposizione tutta l'infrastrut- HARDWAR PER DI=R ME TARE
tura server necessaria al corretto funzionamento della rete Volendo sperimentare anche noi questa nuova tecnologia,
libera, insieme ad una serie di servizi utilizzabili dai propri abbiamo approfittato di una nuovissima scheda Ardui no
membri per interfacciarsi con i propri dispositivi. denominata MKR WAN 1300 (distribuita da Futura Elettro-
Per realizzare tutto ciò i codici, i firmware, i progetti e le co- nica- www.futurashop.it- con il codice MKRWAN1300) che
noscenze per la produzione dei dispositivi fisici necessari alla implementa all'interno tutte le funzionalità di una scheda
rete sono open source. MKR {MCU ATMEL SAMD21) con in più un modulo radio per
L'iniziativa è partita ad agosto 2015 con una prima speri- la connessione alla rete LoRa, per la precisione un Murata
mentazione ad Amsterdam in un progetto per la cura e la CMWX1 ZZABZ.
gestione delle imbarcazioni nei canali, e si è poi consolidata in Riassumiamo brevemente le caratteristiche salienti della
una serie di altre esperienze. Il progetto è cresciuto inoltre a scheda MKR WAN 1300:
livello internazionale e ad oggi annovera 300 città nel mondo, • microcontrollore ATMEL SAMD21 core a 32bit;
fra cui varie città italiane. • alimentazione da USB a 5V (anche per programmazione);
L'accesso alla rete LoRaWAN avviene tramite appositi The • alimentazione tramite pacco batteria (2x AA o AAA) con
Things Gateway (Fig. 2), spesso installati da privati nella connettore a vite; •
loro abitazione, e connessi alla propria connessione WiFi • il microcontrollore e quindi tutti i pin funzionano a 3V3 e
o Ethernet. La portata è di circa 5':" 10km e permette di non sono tolleranti nei confronti dei 5V;


Cantù (; \(_ Alz
Trada te J
' tn
- ~11 ')'i 0
Bcsana
Brian1a ~~rate
4
Ponte San
Puurà -- B_
~~-
l.!entate sul
SètJero Carate Brianza ,...- - •
Treviolo
,w.
-se
Se11esa ..../"
egno
\-- -
Lesmo_ Dattlnne- ' fnter.
........, , l

~~- --/
lti....... ~ \ S lco.
dCa
~ De-so rliB
Vtmercate (
\ Lw btate

Gdrbdg•~<lW \ Co
Mtla'1ese _ ~
j Parahi.:;go C niseiJo BalsaMo J
Cùstat1v Pr rno Càrugate
l
n, .... l ' 1-nZ"ago
.n, Cernusco
sul
nen
.
•~Gd11iate
----...... ~~-

Cor sico Parco 'd~J


Donato Fiume Torma
ldtn~ts.e
Parco agricolo
Sud ~~~ilano
Oper a
f' eve Et"J1anuele

l'Hl km
i
l Vigevano
f ~l gdi
~ Fig. 3 - Mappa dei Gateway LoRaWAN nella zona di Milano.
• il pin 5V è un'uscita a 5 V quando la scheda viene alimen-
tata attraverso il connettore micro USB o dal pin VI N;
• il pin VCC è un'uscita a 3,3 V. Se l'alimentazione viene for-
nita tramite Hconnettore micro USB o il pin VIN ed è ugua-
le alla serie delle due batterie (quando vengono utilizzate).

Per il corretto funzionamento deve essere utilizzata un'an-


tenna esterna connessa al connettore micro UFL e adatta a
ricevere la gamma di frequenza LoRa nel paese di utilizzo: nel
caso dell'Italia le frequenze assegnate fanno da 863 a 870
M Hz; nel nostro caso abbiamo utilizzato l'antenna contrad-
distinta dal codice 7300-ANTENNADIPOLO (Fig. 4) fornita da
Futura Elettronica ( www.futurashop.i~.
La nostra configurazione hardware per la prima prova consi-
ste quindi una scheda MKR WAN 1300 connessa alla porta
~ Fig. 4 • Configurazione ·Har·dware per· la nostra applicazione
basata su Lol:'.la. USB del PC. All'ingresso AO della scheda MKR WAN 1300
collegheremo un potenziometro a simulare un segnale ana-
logico di un sensore connesso alla scheda. Per la buona riu-
• LED integrato collegato al pin D6 {non D13 come su scita della connessione è necessario essere sufficientemente
Arduino UNO); vicini ad un Gateway, in zone abitate già 2 km possono
• LED di alimentazione collegato ai 5V acceso se viene for- rappresentare un limite, l'antenna deve essere posizionata
nita l'alimentazione tramite il connettore micro USB o VI N, all'esterno meglio se in posizione sopraelevata.
mentre rimane spento quando la scheda è alimentata a A livello software la prima cosa da fare è installare il suppor-
batteria; to alle SAM Boards (Fig. 5) e successivamente scaricare la
• il pin Vi n può essere utilizzato per alimentare la scheda libreria per l'utilizzo delle schede MKRWAN {Fig. 6).
con una tensione di 5 VDC (in questo caso la fonte di ali- Facoltativamente potete aggiornare il firmware del modem
mentazione USB viene disconnessa); LoRa caricando il file MKRWWANFWUpdate_standalone.ino;

More info •

.A.tdu.lao SAN &ba.rck~~ARMCort...-t.fl) by A.tda.tno


Sche.de indu1e! in qu.uto p.atthetto•
Ardulno Ou•.
Onling bete
More info
l
_ . ._ HO _ _ _ _ _ _ _ _ _ _ , _ _ _ _ __ _ _, _ _

_ _ _ _,_ _"""'!:!:: .,.~'---- ... ------~----


ll ~ Fig. 5
Atd~mo SAN,D Adrds (~ ARM ~rte>t· MO+) b y Arduifto Installazione supporto
Sch.Oa l nd~• in qu~ 9Gthatto ~
Arduino MKR 'Mfi 1010~ Arduino/ G.a.nwino Zero, Atduino iG•n~ lno Mt<:R 100r.t, Ardvino MI<RZEP.O,tdulno MKR FOX UOO~ .Ardu ino alfe SAM boards.
Mk~ WAN 1.300, Ardutno MKR. -GSM 1.40.0, J.J"duino M~ US 1.500, Atduino MO Pro, J.. rduìnc MO, Ardulno Tl•n, J.d.aftutt Clf'aJtt
Playgtcund ~•Js..
Onhn~ help
More info

1.6.l0 v l lns~

ArdutnoSAHO Beta Boalds (3l~&ltsARI.f Cottex--HO+) by At4utno


~n•d• indu.-e m q~~ pxth•tto:
'"' ·------t

- - - - -
l t4kRWA.N b1; Ard:llino
, St.app.ort library foto MKR W Ali 13 00 Provldu AP1J to oeomm unltatt utb t..orta an d i..oraWAJl netvtarkl
More info

. Fig. 6
Installazione libreria
~--------------------------------------------·~J
MKRWAN.


oo COM1S (Arduino MKR WAN 1300) - D x
------------------------------------------------------------------------~~· -~
Fig. 7
lnVi~ Aggiornamento
-------- - - - - - -
.
=====-==--=-=-:..::·::.:-·~==:__:.__:_= ~:. firmv1are modem
P~ess a ~Y to star~ Fi u~~ate
V~rsion ~ Ox31 l oRa.
Option l : OxOO
~~ion 2 : axoc
Dtvict ID : Ox 0447 {STM32tCt7 K:XX/CS ~xx )
- P.AM ~ Up to 20Ki! (elSZ:b rf!S!r-v~d by boo-c-load~r}
- Flash : Up ~o l92K1B (s i:~ f1t~t stcto~ : 32xl28)
- Opt1on RAM ·: 32:0
- Sysc~m RAM ~ eKta
Wri tt to :rt!ltor}t
Erasinq tn~o~~1
Wrote and verifi~~ add~ss OxOSOOOlOO {0\)
W~o~~ an4 V!rif1~ A~~~ss OxOSOl~aOO {~9 ~ )
Wrote and veri!i~~ ad~s~ OxOSOl2bOO {9S\)
Wrote ana v~r1t1~ add~ss O ~OSOl 2c OO {99'>
Wrota ~nd ver1fi~d add~ss OMOS012àOO (100\ )
Don!~

S'tattinq ~X!CUt.ion &t ad.d~s:s O.:KOSOOOOOO. • • don~,


FlA~hinq ok : )
ARD-0?8 LL~
~ Fig. 8
Serial l\1onitor
...

D Visualina orario con resempio


,~

!;ZJ Scorrimento automatico Entrambi (t"<JL &. CR) v ll S200 baud v RipulisCi ro.utput
- - loraSendAndReceive.

.....
~ CO~v11 8 (Arduino MKR •VAN 1300) - D x
~

-
J[ :~nvia ]
-
Your m.o dule ve re~ion is : AR - 078 l . lllS •
Your dev1ce EU! is: a8610a323324810a
5 orr~e thing wen~ wronq; are you indoor'? Mov·e ne a r a li'i ndo\'1 and r-e t.ry
-
0 O Visuali:zza orario -
j
_...,.__.. ~ ,...

Scorrimento automatico A capo {NL) . v 9600 baud v


L Ripulisci l'output
-

nel nostro caso il firmware è stato aggiornato dalla versione nitor; la finestra del monitor contiene la versione del modulo
1.1.5 alla versione 1.1.9 risolvendo alcuni bug (Fig. 7). LoRa e il device EU l univoco per ciascun dispositivo, come
Aprite e caricate l'esempio LoraSendAndReceive.ino (fornito visibile nella Fig. 8.
con la libreria MKRWAN) e leggete l'output tramite Serial Mo- Non avendo ancora specificato le credenziali di accesso, il

ADD APPliCATtON

Appllc1tJon ID
~ ... ~ ltiner of-.c.>ur apphcat1on on the netwot k

mkrwal"tt3oo-o1

Otscrlptlon
Al s • r _..;dJ!Ji€ descr;ptìon of your new <~PP

lavei sensor applk:atfon

Appllcatlon f!Ul
,'n )r .l,,_·tion E.Ut will be :ssued for The Things Netvvork block fot conven1€tìCe. 'l-'OU e<.m 3dd your own m the 3ppltc~tìon setttngs page.

EU11ssued bv The Thm25 Network

Handlt t reglstradon
~ ... • • • • 't ou • -a'1t t o ret!lster th1s application t o
~ Fig. 9
Aggiunta di un
nuovo dispositivo.
Il protocollo LoRaWAN necessita di valori numerici identi-
APPLICATION OVERVIEW ficatori dei dispositivi, delle applicazioni e dei gateway, per
cui per avviare una comunicazione è necessario disporre dei
Application ID mkrwan1300-0l
seguenti valori:
• Device EU l - Identificatore del dispositivo, unico per
Descri.ption level sensor application
ciascun dispositivo, assegnato dal produttore del modulo;
Created 4 minutes ago • Devi ce Address - Indirizzo del dispositivo (non univoco};
Handler ttn-handler -eu 1wnem handier) • Application EU l - Identificatore dell'applicazione {univoco};
• Gateway EU l - Identificatore del gateway (univoco}.

l devi ce LoRaWAN pòssono registrarsi sulla rete in due modi


APPLICATION EUIS differenti: il primo (quello che useremo nel nostro esempio
applicativo descritto in queste pagine} si chiama OTAA, Over-
the-Air-Activation e prevede che il device e il network si
<> -
....
scambino dinamicamente il Devi ce Address e una security
Key (Application Key).
La seconda modalità per effettuare la registrazione si chiama
ABP (Activation By Personalization) e prevede che le chiavi
DEVIC ES r.ggister dev·ce
delle sessioni vengano inserite manualmente dall'utente;
tuttavia questo potrebbe causare problemi di sicurezza.
A questo punto occorre registrarsi sulla rete creando un ac-
,=:~.:)
, ; O regrstered devices count sul sito https.·Jfwww.thethingsnetwork.org. Dalla console
principale avete la possibilità di registrare un gateway oppu-
Fig. 10 ~Configurazione di un nuovo dispositivo.
re, quello che interessa a noi, un dispositivo. Inserite il nome
dell'applicazione (application ID) a piacimento e una semplice
modulo non potrà connettersi alla rete e comparirà un mes- descrizione, quindi cliccate su Aggiungi applicazione (Fig. 9}.
saggio di errore; analogamente avverrà se il modulo, pur Nella nuova schermata inserite un Device ID a piacimento e il
essendo correttamente configurato, non tro'{erà disponibile Device EU l letto su Serial monitor di Arduino, quindi cliccate
alcun accesso alla rete. In Europa, LoRaWAN opera nelle su Register devices (Fig. 1 O); si aprirà la schermata di riepi-
frequenze 863-:-870 MHz, ovvero la banda ISM {Industriai, logo del vostro dispositivo, della quale ci interessano i campi
Scientific & Medicai) assegnata all'Europa coma banda di Application EU l e Application KEY generati dal sistema (Fig.
libero utilizzo, assicuratevi che la riga modem.begin{EU868) 11 ); per comodità, in basso troverete i due codici pronti per
contenga effettivamente la sigla EU868. essere copiati (Fig. 12}.

REGISTER DEVICE

Device ID
This is tne unique identH1erfor the dev1c€! in this app. The device ID \Vili be immutable.

mkrwan 1300-01

~ Fig. 11 Device EUI


Registrazione nuovo The device EU l is the unique identifier for this devi ce on the netv;ark You can change the EUIIater:
dispositivo.
~ AB 61 OA 32 33 24 81 OA

A,pp Key
The App Key w ili be u.sed to secure the communication between you device and the network

t.~isfield will be generated

App EUI


Fig. 12
Riepilogo della DEVICE OVERVIEW
configurazione del
nuovo dispositivo.

Application 10 mkrwan1300-01

Device lO mkrwan1300~01

Activation Method OTAA

Device EUl <> - A8 61 eA 32 33 24 81 eA

Application EUI <> -


App Key <> - .. .. ..... .. ..... .. .. ... ... ....... ..

Status tle\1€1 seen

Frames up O reset frame coumers

Fran1es down O

c COM5 (Arduino MKR WAN 1300) D x


! Invia !
- ------
·~------'--=----~- -----==============================- :==::=::::::_::::::::::::::::===:::::=:_____ !.-····-····:_---···J_
iYo ur module ve rsion i s : ARD- 078 1 . 1 . 5

Yo ur device EUI is : a 8 61 0a 3 2 3 324 8 1 0a

Enter a message to send t o netwo rk


(make sure that end-o f-line ' NL ' is enabled)

Sending : c iao - 63 69 61 6F
Message sent correctly!
No d o wnlink message rec eived a t thi s time .

Enter a message to send t o netwo rk


(make sure that end- o f - line ' NL ' i s enab led )

Fig. 13
Avvio sket ch e
----------------- ----------------- -- --------- - ---------- - .... -
0 Scorrimento automatico D Visualizza orario A capo (NL) v 115200 baud v Ripulisci l'outpu connessione alla rete
LoRa.

Ritornate sull'l DE di arduino e nel tab arduino - secrets in- sione. Per verificare che tutto funzioni correttamente inserite
serite i due codici appena copiati, quindi caricate lo sketch nell'apposito campo una piccola stringa {nel nostro caso
su Arduino MKR ed attendete che il dispositivo si connetta, "ciao") e cliccate sul pulsante Invia. Il debug su Serial Monitor
aprendo Serial Monitor potrete vedere lo stato della connes- visualizzerà lo stato dell'invio e la desiderata stringa "Mes-
sage sent correctly!" che ci assicura che il messaggio è stato
correttamente spedito e ricevuto (Fig. 13).
Dal portale di thethingsnetwork {TIN) aprite la tab Applica-
o SF12 125 Khz 250 bps
tion Data, dove visualizzerete delle righe contenenti il traffico
1 SF11 125 Khz 440 bps dati con la vostra scheda, cliccandoci sopra potrete visualiz-
2 SF1 0 125Khz 980 bps zare la stringa appena ricevuta codificata come codice ASCII
3 SF9 125 Khz 1760 bps in esadecimale. Scorrendo verso il basso potrete visualizzare
anche i metatada contenenti tutti i dettagli della connessione
4 SFB 125 Khz 3125 bps
come il gateway al quale si è connessi e l'intensità del segna-
5 SF7 125Khz 5470 bps
le. Lo sketch di esempio fa un unico tentativo di connessione
Tabella 1 - Valori del parametro dr {data rate). alla rete {dopodiché è necessario riavviare la scheda); dalle
Metadata

APPLICATION DATA {
11
time" ! "2619-03-95T13:53:93. 326342273Z .. "'
''frequency" : 868.5 ,
uplink downlink activation ack error "modulationu : "LORA" ,
Filters
-
"data rate" : ''SF7BW125''.J
.. coding_rate" : n4/5u ~
time counter port
.. gateway s 11
: (

... 15:13:50 o {
Il gtw-i dn ; n - ·-'="'--: -----=~·-.-.,=Il .J

... 15:13:50 o 2 co~~~r:,cd payloaa: 63 69 61 6F


"timestamp" : 1975228163 3

"time" ! "2919-83-95T13:S3:93 Z" ,


"channel·u: 2., ..
Uplink .. rssin : -115>
Payload
11
Snrrr : 1.75,
l
}
.. rf
- chain" :
53 69 61 6F
]
}

~ Fig. 14 - Stato deUa connessione. ~ Fig. 15 - Metadata della con1unicazione.

nostre prove abbiamo notato che l'intensità del segnale (rssi) TIN ha una politica di accesso che limita il tempo di trasmis-
deve essere superiore a -120d8, pena la disconnessione sione a 30 secondi in uplink e 1O messaggi di downlink al
dalla rete. Nella tab Downlink avete la possibilità di inviare giorno, poiché i gateway devono rispettare questi limiti, la
messaggi verso la scheda MKR, ricordate che i messaggi risposta dal gateway non è garantita, inoltre i tempi tra l'invio
sono codificati in esadecimale, quindi la scritta TEST diventa e la ricezione di conferma ricezione possono essere molto
54 45 53 54, dal codice ASCII di ogni singolo carattere. l lunghi. La classica applicazione è quindi l'invio ad intervalli
byte inseriti risultano programmati per l'invio che avverrà so- regolari (di minuti o ore) di piccolissimi pacchetti dati, meglio \..
lamente quando sarà ricevuto un qualche dato dalla scheda, se codificati in byte.
se programmate più invii solo l'ultimo sarà effettivamente Un classico esempio potrebbe essere l'invio del valore analo-
inviato (Fig.16 e Fig.17). gico acquisito da Ardui no ed inviato al server TIN ad intervalli
di alcuni minuti.
L'impostazione dello sketch rimane sostanzialmente lo stes-
so, con l'inizializzazione del modem e della connessione che
~ Listato 1 però possiamo migliorare aggiungendo la possibilità di rei-
terare il tentativo di connessione qualora dovesse fallire. Un
int s·ensorValue;
byte payload[2]; altro particolare su cui vogliamo soffermarci riguarda il baud
paylqad[0]=1owByte(sensorValue); rate di trasmissione, che in questo tipo di comunicazione è
payload~JJ=highByte(sensorValue);
moçt~pr~b:~gìhP.acket () ; . '. ,:,
molto importante perché legato in modo inverso alla mas-
· mod~r,f~··~~i[te'. (pa'yload, 2);
. .
sima distanza raggiungibile e comunque non superiore a 50
" ,]

,. .
.. : .
,;_ · ..;- ;:._-' '. •'
kbps. L'istruzione si chiama modem.dataRate(dr) nella quale il

DOWNLINK

Sch~unng FPort

rep1ace first l ;;bi. 1 Confirmed

Paytoad

byt es fields l 54 45 53 54

CFig. 16 - Invio di una stringa verso MKRWAN~



time counter port
... 17;00:29 1 payJoaè· s1a2 Invio dei bytes programmati
... 17:00:27 3 2 contirmed payload· 67 Ricezione
16:58:08 1Cscheduled ) pavload: s1a2 Bytes programmati per t•invio

... 16:57:59 1 schcdulecl payfoad: 80 81

... 16:57:18 o

Fig. 17 - Stato della connessione durante un invio.

parametro dr può assumere i valori riportati nella Tabella 1.


PAYLOAD FORMATS
Valori più alti di dr assicurano velocità di trasmissioni maggio-
ri e consumi minori ma si riduce la portata coperta. Per massi-
mizzare sia la durata della batteria che la portata e la capacità Payload Format
complessiva della rete, l'infrastruttura di rete LoRa può gesti- The payload format sent by your devices
re la velocità dei dati e la potenza di uscita utilizzati per la co-
Custom
municazione mediante uno schema ADR (Adaptive Data Rate).
Significa che migliore è la copertura del segnale più basso
sarà il Spreading Factor (vedi Tabella 1) ma è comunque
sconsigliato usare la modalità ADR per oggetti in movimento
continuo. Potremmo pertanto utilizzare l'istruzione modem. decoder converter validator encoder
setADR(true) per attivare la modalità ADR. Nell'esempio LoRa_
Levei_Analog.ino ad intervalli regolari di un minuto acquisiamo •
il valore analogico dal pin AO, codifichiamo il valore in un solo l function Decoder(bytes . port; {
byte {0-255 in decimale) e lo inviamo al server TTN. Nella 2 // Decode an upLin~ ~essage tram a buffer
3 l 1~ s to an object of fieLds.
console TTN, per evitare di dover leggere valori espressi in var decoded = 1 };
byte {di non immediata lettura), è possibile specificare come decoded l evel=bytes Le];
saranno codificati i dati ricevuti; nel tab payload formats è 7
sufficiente aggiungete la riga decoded {Fig.19). 8 return decoded
9 }

level=bytes[0];
~ Fig. 19 ~Decodifica dei dati ricevuti in formato decimale.

Se invece interessa inviare un dato di tipo integer codificato


con 2 bytes è necessario modificare le righe di codice come Mentre per la decodifica la riga sarà:
riportato nel Listato 1.

Ricordiamo anche che è anche disponibile l'app TIN Mobile


APPLICATION DATA per il controllo dei propri dispositivi direttamente dal proprio
smartphone.
7
uplink downlink activation ack error
CONCLUSIONI
Filtcrs

ti me counter port
v Per il momento ci fermiamo qui; l'applicazione proposta è un
esempio per spiegare l'utilizzo della connessione radio LoRa.
... 16:09:07 16 2 dev id: mkrwan 1300·01 payload: se leve!: 92.
Volendo realizzare un'applicazione più avanzata in cui è an-
• 16:08:07 15 2 dev id: mkrwan 1300·01 payload: 75 leve!: 111
che necessario prevedere un'alimentazione esterna a batte-
ria, vi rimandiamo ad un articolo dedicato che pubblicheremo
• 16:07.07 14 2 dev id: mkrwan 1300·01 payload: 75 leve!: 117 a breve. Appuntamento al prossimo fascicolo di Elettronica In,
dove concluderemo questo corso! D
• 16:06:07 13 2 dev id: mkrwan1300·01 payload: 75 evel: 117

• 16:05:06 12 2 dev id: mkrwan 1300-01 payload. 80 leve!: 141 ~ Fig. 18 - Visualizzazione del tab application data di TTN con
l'esempio loRa_Levei__Analog.
Arriva Falco Xplorer, il drone più grande mai réalizzato da Leonardo
Nel corso di un evento inaugurale al Sa- velivolo alla suite di sensori, dal sistema Alessandro Profumo : "Leonardo investe
lone deii'Aerospazjo di Parigi, Leonardo di gestione della missione alla stazione continuamente in nuove tecnologie per
ha presentato Falco Xplorer, l'ultimo di controllo di terra. Falco Xplorer sarà garantire sempre la migliore risposta
componente della famiglia di velivoli a offerto sia come piattaforma integrata alle diverse richieste del mercato. Falco
pilotaggio remoto (Remotely Piloted Air sia nell'ambito di contratti di servizio per Xplorer si basa sull'esperienza matura-
System - RPAS) Falco. Il nuovo drone, missioni "unmanned': In questo secondo ta negli anni grazie al lavoro svolto per
costruito sulla base del successo dei caso, Leonardo manterrà la proprietà e molti clienti internazionali. Contiamo di
precedenti sistemi tattici, ha una capa- la responsabilità delle operazioni svolte aumentare la nostra quota di mercato
cità di carico di 350 kg, oltre 24 ore di con i propri velivoli e fornirà al cliente le nei dro ni grazie alla capacità di compren -
autonomia e dispone di un collegamento informazioni e i dati raccolti. dere a pieno le esigenze dei clienti e di
dati satellitare per operazioni fuori dal- Il dronel interamente progettato e pro- rispondervi in maniera adeguata':
la copertura radio terrestre, il tutto con dotto in Europa, sarà destinato a clienti
un peso massimo al decollo di 1,3 ton- civili e militari. Attualmente è in fase di www.leonardocompany. c
nellate ~ Il drone è completamente pro- certificazione per il volo in spazi aerei
gettato e sviluppato da Leonardo, dal non segregati.
L'esperimento GERDA segna un nuovo record
L'esperimento GERDA; ai Laboratori fornirebbe informazioni essenziali sutla , ·
Nazionali del Gran Sasso. {LNGS) dell'I- natura dei neutrini: consentirebbe, per
stituto Nazionale di Fisica Nucleare esempio, di sapere se i neutrini sono
(INFN), che ricerca il rarissimo decadi- identici alle loro ant1particelle, di otte-
mento doppio beta seoza emissione nere indicazioni suJ meccanismo che dà
di neutrini, una sorta di Sacro Graal loro massa e sul perché nell'universo
per la fisica delle partice.lte elementa- attuale c'è molta più materia che anti-
ri, ha conquistato un altro importante materia. superiore all'età dell'universo~ •

traguardo scientifico raggiungendo


un nuovo record di sensibilità. Questo www.infn.it
risultato è stato ottenuto dopo aver
raccolto dati ininterrottamente per due
anni e mezzo e aver ridotto a un livello
bassissimo gli eventi che costituiscono
il cosiddetto "rumore di fendo': Il risulta-
to è pubblicato sul numero dì settembre
su Science. Il decadimento doppio beta
senza emissione di neutrtni, se rivelato,
\

Analog ica di lasse ondiale da un


Leader dei icrocon troller? .
Se conosci Microchip solo come fornitore di MCU, stiamo per sbalordirti

La storia di successo di Microchip non potrebbe essere completa senza menzionare


anche le nostre soluzioni analogiche. La nostra storia, come fornitore leader di
soluzioni ma che offre anche un supporto completo alla progettazione ed un ampio
portfolio di prodotti non include solo i nostri microcontroller.

Offriamo infatti anche prodotti lineari, mixed-signal, per power management, termici e
~ interfacce facili da implementare e di elevate prestazioni.

Quando utilizzati in combinazione, l'ampio portfolio Microchip può essere utilizzato in


numerose applicazioni con i più vari requisiti di performance.
,-
Avrai la possibilità, la flessibilità e la sicurezza di scegliere sempre la soluzione giusta
per il tuo progetto, indipendentemente dai vincoli di progettazione. Approfitta della
nostra esperienza e delle soluzioni di sistema complete per risparmiare tempo e
semplificare la tua attività di progettazione.

Inizia ora la tua storia di successo su:


www.microchip.com/Reai-Analog

a li nome e logo Microchip ed il !ogo Microchip sono marchi industriali registrati di rv1icrochip Technology lncorporated negli U.S.A. ed altri Stati. Tutti gli altri l
'
marchi industriali menzionati appartengono ai rispettivi titolari.
@ 2019 Microch1p Technology !ne. Tutti i dintti riservati. DS20006063A. ~..1EC2243A· !T..I.\-08-19
~.

• • • •
ustria investe m1 10n1 art
• •
tn l er nei truc
CNH Industriai ha annunciato oggi l'in-
tenzione di sottoscrivere un accordo stra-
tegico e su base esclusiva nel settore dei
veicoli commerciali pesanti con Nikola Cor-
poration, una società con sede a Phoenix,
in Arizona, US, per accelerare la trasform~­
zione del settore verso zero emissioni nei r
veicoli commerciali pesanti (di categoria
Class 8 per gl1 Stati Uniti) in Nord America
e in Europa.
l veicoli commerciali pesanti a zero emis-
sioni di Nikola, alimentati da tecnologia
proprietaria a fu el celi (celle a combustibile)
a idrogeno e batterie elettriche, saranno i
primi a entrare in produzione. L'innovativo
modello di.business di Nikola prevede una
modalità di leasing tutto compreso, ante-
prima assoluta per il settore, che include il
veicolo, il servizio e le spese di manuten-
zione e rifornimento, offrendo un costo
totale di esercizio a lungo termine equiva-
lente o inferiore a quello del diesel.
CNH Industriai, come lead investor nel
round D di sottoscrizione, acquisirà una
partecipazione strategica nel capita-
le di Nikola , a fronte di un impegno Progetto Europeo SmartNet: la tecnologia
pari a 250 milioni di dollari in Nikola,
comprensiva di un investimento in Siemens per la rete elettrica del futuro
cassa per 100 milioni di dollari e di
un conferimento, per altri 150 milio-
ni di dollari, in servizi, quali sviluppo
prodotto, ingegneria di produzione e
altro supporto tecnicot oltre alla for-
nitura di certi componenti chiave per
accelerare la tempistica di produzione
dei modelli Nikola TWO e Nikola TRE.
La valutazione ante investimento era
stata fissata a 3 miliardi di dollari.

www.cnhindustrial.com

Si chiude con successo il progetto euro- trato sullo sviluppo di funzionalità evolute
peo SmartNet, finanziato nell'ambito del e sull'acquisizione di nuove informazioni
programma Horizon 2020 e coordinato da necessarie a garantire, in una zona critica
RSE (Ricerca sul Sistema Energetico), alla come la Valle Aurina in Alto Adige, il coor-
guida di un consorzio di 22 partner, prove- dinamento tra Terna (gestore della rete di
nienti da 9 paesi europei. trasmissione), ed Edyna (società di distri-
Nel pieno della trasformazione digitale, la buzione elettrica locale, affiliata Alperia).
rete elettrica si evolve mettendo in eviden- Nello specifico, Siemens ha fornito le due
za da un lato la crescita della generazione soluzioni HVRS (High Voltage Regulation
• l
il di energia da fonti rinnovabili e delle risorse System) e MVRS (Medium Voltage Regula-
energetiche distribuite e dall'altro la pro- tion System) - nate, nella fase progettuale,
gressiva uscita di scena dei grandi impianti in collaborazione con il Politecnico di Milano
di generazione a combustibile fossile e gas con il nome di ISOLDE e INGRID - in grado
connessi alla rete di trasmissione: un trend di svolgere il ruolo di "smart transmission
pòsitivo che muove nella direzione di una and distribution systems" con lo scopo di
transizione energetica sostenibile ma che coordinate e gestire le flessibilità gene-
costringe l'intera infrastruttura a identifi- rate dalle risorse energetiche distribuite
care nuove soluzioni per garantire la sicu- (come per esempio gli impianti fotovoltaici
rezza e la stabilità della rete, sempre più su tetto, i cogeneratori, il mini eolico, etc)
flessibile e complessa. Il pilota italiano - affiancate alla generazione direttamente
grazie al know-how tecnologico Siemens e connessa alla rete di trasmissione.
alla collaborazione con i partner di proget-
to RSE, Selta, Edyna eTerna- si è concen- www.siemens. it

Potrebbero piacerti anche