Controller per Presepe: Nano R4, 6 uscite, ciclo giorno-notte e audio

Centralina di gestione delle luci e delle musiche per un presepe sempre al passo con lโ€™evoluzione tecnologica.

 

Ogni anno le festivitร  natalizie sono lโ€™occasione per rispolverare addobbi e statuette e preparare quelli che sono i simboli, piรน o meno religiosi, della festa che ricorda la nativitร .

Indubbiamente, i cambiamenti culturali, con il passare del tempo, modificano le abitudini, allontanandoci da quelle con cui molti di noi sono cresciuti. Tuttavia, esistono tradizioni che resistono ancora allโ€™omologazione dei costumi e allโ€™allontanamento da fede e religioni. Una di queste, in particolare nel periodo natalizio, รจ quella di preparare il presepe, arricchendolo magari ogni anno con qualcosa di nuovo, come i dispositivi che la tecnologia, e in particolare lโ€™elettronica, oggi offre a prezzi piรน accessibili rispetto al passato. Ecco perchรฉ, periodicamente, ci dedichiamo alla realizzazione di una centralina per la gestione del presepe.

Questโ€™anno abbiamo deciso di riproporla in una versione aggiornata, gestita tramite hardware Arduino, come giร  avevamo fatto nel dicembre 2016 (fascicolo n. 201).

Tuttavia, questa nuova versione presenta alcune significative innovazioni: รจ stata realizzata principalmente con componenti SMD e utilizza un lettore MP3 piรน moderno (ed economico), oltre a una board Nano R4. La particolaritร  di questa versione di Presepino risiede proprio nellโ€™uso di questa scheda, progettata per funzionare con una speciale evoluzione della Arduino Nano R4 sviluppata da Futura Elettronica.

A questo proposito, rimandiamo al relativo articolo presente in questo fascicolo per ulteriori approfondimenti.

Il progetto

Entriamo dunque nel vivo di questa scheda andando ad analizzarne le caratteristiche salienti a partire dalla CPU, che diversamente dalla precedente versione di Presepino (il cui nome si deve allโ€™adozione di unโ€™architettura Arduino basata su ATmega328) รจ contenuta in una scheda Futura Elettronica Nano R4.

La sezione audio, ossia quella deputata a produrre le musiche del presepe, รจ contenuta in una breakout board riproduttore MP3, nella quale รจ possibile caricare file di pari formato attraverso una connessione USB, contando su uno spazio di memoria EEPROM di 4 MB; il modulo in questione รจ il JR6001 (cod. Futura Elettronica MP3PLAYERUSB) ed ha il pregio di non richiedere la SD-Card che invece era necessaria nella precedente versione di Presepino per caricare i file audio.

In questa versione abbiamo utilizzato 5 delle 6 uscite disponibili (con la possibilitร  di attivare anche la sesta uscita personalizzando il firmware, ad esempio per gestire i motori di un mulino o la pompa di una cascata). Il codice che comanda le uscite per le luci (sole, stelle, cometa, fuoco per i pastori e luci delle case) prevede unโ€™accensione e uno spegnimento graduali, regolabili tramite i trimmer presenti sul circuito. Il box โ€œIl funzionamento delle usciteโ€ include un grafico esplicativo per chiarire il funzionamento descritto.

Oltre alle uscite per le strip LED, abbiamo anche unโ€™uscita Neopixel alla quale รจ possibile collegare catene di LED indirizzabili, per rendere il vostro presepe ancora piรน suggestivo e personalizzato. In aggiunta allโ€™implementazione delle luci, a seguito di richieste sono stati inseriti due ingressi, dedicati rispettivamente ad un sensore crepuscolare e un sensore PIR, gestibili distintamente e secondo una gerarchia che verrร  spiegata tra breve. Andiamo ora a vedere nel dettaglio la scheda di gestione del presepe, cosรฌ da vedere in cosa consiste lโ€™hardware.

 

Schema elettrico

Come accennato, il cuore del circuito รจ la scheda Nano R4, realizzata da Futura Elettronica. I suoi I/O D0 e D1 (corrispondenti alla seriale hardware dellโ€™Arduino UNO R3) non sono condivisi con la seriale USB, permettendone cosรฌ lโ€™uso per altre funzionalitร  aggiuntive. In particolare, in questa configurazione, li abbiamo utilizzati per gestire il modulo MP3.
Qui di seguito riportiamo i pin della board Nano R4 assegnati alle relative funzioni.

P1 = 7; //Pulsante Play
P2 = 8; //Pulsante Stop
PIR = 2; //Sensore PIR
TX = 1; //Pin TX verso MP3
RX = 0; //Pin RX da MP3
const int OUT1 = 6; //Sole
const int OUT2 = 5; //Cometa
const int OUT3 = 3; //Stelle
const int OUT4 = 9; //Fuoco
const int OUT5 = 11; //Luci
const int OUT6 = 10; //OUTEX1
CHANGESTATE = 13; //Led
NEOPIXEL = 12; //Neopixel
TRIM1 = A0; //Giorno
TRIM2 = A1; //Notte
TRIM3 = A2; //Alba
TRIM4 = A3; //Tramonto
TRIM5 = A4; //Extra
CREPUSCOLARE = A5; //Ingresso Crepuscolare
TRIM_VOL = A6; //Volume Audio

Guardando lo schema elettrico vediamo che la Nano R4 pilota i gate di sei MOSFET enhancement-mode a canale N (si tratta di DMN6068LK3-13, 60V di Vdso e 6A di corrente di drain) che materialmente commutano lโ€™alimentazione sui LED o strip a LED corrispondenti, attraverso i pin digitali impostati come uscite, secondo questa corrispondenza:

  • D3 pilota Q4 (tramite R14) il cui drain alimenta le luci che simuleranno le stelle;
  • D5 pilota Q5 (tramite R15) il cui drain comanda le luci della cometa;
  • D6 comanda Q6 (tramite R17) il cui drain alimenta le lampade che simulano la luce del sole e quindi le fasi di alba e tramonto;
  • D9 pilota Q3 (tramite la R11) il cui drain alimenta le lampade che simuleranno, pulsando opportunamente, il crepitรฌo della fiamma di un fuoco;
  • D11 pilota Q2 (tramite la R9) il cui drain controlla lโ€™uscita LUCI;
  • D10 comanda Q1 (tramite R7) il cui drain gestisce lโ€™uscita OUTEX1 ( cui potete collegare altre strisce a LED, motori o altri carichi).

Tra il gate di ciascuno di questi MOSFET e massa รจ collegato un LED, con relativa resistenza di carico, che ripete il comportamento delle luci eventualmente collegate alla rispettiva uscita (ossia tra il drain e il positivo di alimentazione) tramite la morsettiera corrispondente. Questo permetterร  di testare la scheda prima di collegare le lampade, ovvero di verificare lโ€™attivitร  delle uscite nel caso qualcosa dovesse non funzionare nel circuito presepe, una volta cablato.

Ciascuna uscita puรฒ alimentare lampade comuni oppure a LED, purchรฉ funzionanti a 12 volt e che assorbano una corrente individuale di 5 ampere, tenendo perรฒ presente che la somma della corrente assorbita dalle uscite non deve superare i 15 ampere.

Questa รจ anche la massima corrente che la scheda puรฒ gestire e puรฒ essere aumentata stagnando le piste che portano dalla morsettiera di alimentazione ai MOSFET e da questi alle relative morsettiere di uscita. Questi valori, considerato che il circuito nasce per pilotare strip a LED o comunque composizioni di LED, sono piรน che accettabili e per un presepe da casa sono sovrabbondanti, pur bastando anche per una struttura allโ€™aperto, grazie allโ€™efficienza luminosa dei LED.

Ciascuna delle uscite a MOSFET fornisce impulsi rettangolari TTL-compatibili di frequenza costante e modulati in larghezza, secondo la tecnica PWM: ciรฒ consente di variare il valore medio della tensione applicata dai MOSFET ai carichi loro collegati e di conseguenza la potenza e la luminositร , con unโ€™elevatissima efficienza, in quanto la resistenza in stato di ON (piena conduzione) dei MOSFET รจ di (appena 68 milliohm) e quindi la potenza dissipata, a paritร  di potenza trasferita, รจ limitatissima se confrontata a quella che comporterebbe un pilotaggio serie a tensione continua, dove il transistor dovrebbe sobbarcarsi la differenza tra la tensione di alimentazione e quella applicata al carico. I segnali PWM vengono generati dai moduli PWM interni al microcontrollore della scheda Arduino, opportunamente impostati dallo sketch per ciascuna uscita.

Lโ€™attuale configurazione circuitale prevede di alimentare le strip di LED collegandone positivo e negativo rispettivamente a + e โ€“ della relativa uscita, tuttavia siccome i MOSFET possono โ€œreggereโ€ tensioni drain-source in interdizione pari a 60 volt, รจ anche pensabile partire da unโ€™alimentazione esterna anche a 24รท36 volt c.c. in modo da ridurre lโ€™assorbimento a paritร  di potenza elettrica gestita e di rendere piรน versatile lโ€™installazione sfruttando linee di alimentazione o alimentatori esistenti.

Se lโ€™alimentazione delle lampade non viene prelevata dal circuito e si utilizzano strip LED come corpi illuminanti, il positivo delle strip va collegato al polo positivo dellโ€™alimentatore scelto, mentre il contatto negativo va collegato allโ€™uscita della nostra centralina.

รˆ importante, inoltre, che la massa dellโ€™alimentatore e quella della scheda siano collegate tra loro. In tutti i casi le strip a LED devono essere composte da diodi puri e semplici e non devono avere a bordo un regolatore di corrente. Le uscite della centralina sono sei, ma lo sketch che forniamo gestisce le prime cinque (ossia LUCI, FUOCO, SOLE, COMETA, STELLE), per simulare la luce del giorno, di quella delle stelle, dei fuochi della capanna/grotta e delle case dei pastori, ed infine di illuminare la stella cometa.

 

Le luci si accendono e si spengono gradatamente seguendo un ciclo che simula unโ€™intera giornata.

A queste uscite di base potete aggiungere, intervenendo sullo sketch, quella siglata OUTEX1, configurandola affinchรฉ funzioni come meglio credete, ad esempio per il controllo di accessori del presepe come una ruota a pale, il movimento di personaggi animati e via di seguito.

Per quanto riguarda le uscite di base, abbiamo suddiviso la sequenza completa in quattro fasi denominate giorno, tramonto, notte e alba, la durata delle quali puรฒ essere impostata mediante i trimmer, e lโ€™escursione corrispondente si puรฒ reimpostare intervenendo sullo sketch (ma in maniera uguale per tutte).

Ciรฒ vale dunque per il giorno e la notte, ma anche per le due fasi di transizione (tramonto e alba).


Le fasi di illuminazione

Queste ultime due sono le piรน suggestive:
durante il tramonto, la luminositร  del giorno (realizzata con i LED collegati allโ€™uscita SOLE) diminuisce gradualmente, mentre nel cielo iniziano a illuminarsi le stelle (uscita STELLE).

A un certo punto, prima che il ciclo si concluda, si accendono i fuochi delle case e della capanna (uscita FUOCO).
Quando tutte le stelle sono completamente illuminate, appare anche la stella cometa (uscita COMETA).

Durante lโ€™alba, invece, si spengono gradatamente tutte le luci notturne, mentre aumenta lentamente la luce del giorno sino a raggiungere la massima luminositร .


Gestione tramite Nano R4

Oltre alle uscite a MOSFET giร  descritte, lo sketch che gira sulla board Nano R4 implementa anche il controllo delle altre uscite e del modulo audio MP3.

Allโ€™avvio, lo sketch configura il pin D12 come uscita per lโ€™invio dei comandi seriali a unโ€™eventuale strip Neopixel collegata al pin-strip dedicato, che fornisce alimentazione a 5V e 12V.

Inoltre, attiva la seriale corrispondente alle linee D0 e D1 per comunicare con il modulo MP3 (U3).
Attualmente nello sketch non รจ prevista la gestione software del NeoPixel, ma lโ€™hardware รจ predisposto per eventuali ampliamenti.


Regolazione delle fasi e dei trimmer

La sequenza delle luci รจ strutturata in quattro fasi (giorno, tramonto, notte e alba).
La durata di ciascuna fase รจ regolabile tramite trimmer, la cui tensione viene letta dagli ingressi analogici A0โ€“A4 e A6 del Nano R4.

  • R1, R2, R3, R4 regolano le durate di giorno, notte, alba e tramonto.

  • R5 รจ associato a OUTEX1 (funzione personalizzabile).

  • R6 regola il volume del modulo MP3.

La durata dei cicli รจ proporzionale alla tensione del trimmer: portando il cursore verso massa, la fase si accorcia; verso +5V, si allunga.

Il duty-cycle dei segnali PWM alle uscite SOLE, STELLE, COMETA e FUOCO รจ gestito dallo sketch Arduino, con dissolvenze tra le fasi (es. nel passaggio giorno/notte e viceversa).

Il passaggio tra una fase e lโ€™altra รจ segnalato dallโ€™accensione breve del LED LD7.
Ogni fase puรฒ durare fino a 100 secondi, calcolati tramite la lettura ADC su 10 bit.


Sezione audio

Lโ€™audio del presepe รจ gestito dal modulo U3, una piccola scheda con decoder MP3, interfaccia USB 2.0 e amplificatore in classe D.
Dispone di 4 MB di memoria interna, dove possono essere caricati file MP3 o WAV via USB.

Nel circuito, U3 รจ alimentato dalla linea 5V tramite un diodo Schottky (D2) che evita ritorni di corrente verso il sistema quando collegato al PC.
Il consumo รจ di circa 10 mA a riposo.

Allโ€™uscita SP+/SPโ€“ si collega un altoparlante da 8 ohm / 3 watt, ma sono presenti anche uscite audio a basso livello (RIGHT e LEFT) per collegamenti stereo o amplificatori esterni.

La gestione del modulo MP3 avviene tramite la seriale software della Nano R4.
I file devono essere nominati come segue:

  • 00001.mp3 โ†’ Giorno

  • 00002.mp3 โ†’ Tramonto

  • 00003.mp3 โ†’ Fuoco

  • 00004.mp3 โ†’ Alba

Durante il cambio di fase, il volume del brano in corso viene abbassato gradualmente e quello successivo introdotto con fade-in, simulando un passaggio musicale fluido.


Controllo esterno: sensori crepuscolare e PIR

La centralina puรฒ reagire automaticamente alle condizioni ambientali:

  • Sensore crepuscolare (ingresso A5): abilita il sistema in base alla luminositร  esterna, tramite fotoaccoppiatore FC1.

  • Sensore PIR (ingresso D2): rileva la presenza di persone e avvia il ciclo completo del presepe.

Il PIR funziona solo con il consenso del crepuscolare.
In assenza dei sensori, รจ possibile simulare il loro stato tramite dip-switch o ponticello tra SIG e 5V.

Sono presenti due pulsanti fisici:

  • P1 per avviare manualmente il ciclo,

  • P2 per arrestarlo in qualsiasi momento.


Alimentazione e filtraggio

Il circuito funziona con unโ€™alimentazione 12โ€“14 Vcc, fornita tramite la morsettiera PWR.
La tensione รจ distribuita alle uscite MOSFET, al connettore NeoPixel e al regolatore U1 (7805), che fornisce 5V stabilizzati a Nano R4 e modulo MP3.

Un diodo D1 protegge da inversioni di polaritร .
I condensatori C1โ€“C8 svolgono funzioni di filtro contro i disturbi generati dal pilotaggio PWM dei LED, assicurando stabilitร  al microcontrollore e al modulo audio.

Realizzazione pratica

 

Il Funzionamento

La scheda NANO R4 รจ pronta allโ€™uso.

Riguardo al modulo MP3, per copiare i file, รจ necessario collegare tramite cavo micro-USB, il modulo al computer e attendere che venga installato automaticamente il driver nel sistema operativo cosรฌ da vedere lo stesso come drive disco.

Aprendo il โ€œDiscoโ€ si vedrร  una serie di file che dovranno essere cancellati in modo da liberare la memoria; a quel punto potrete copiare i quattro file che abbiamo preparato, ma che potranno essere sostituiti con altri file audio a piacimento, purchรฉ venga mantenuto il medesimo nome.

Ricordate che i file da caricare devono avere bassa qualitร , in modo da farli stare tutti nei 4MB di memoria dellโ€™MP3. Alla prima accensione consigliamo di portare i cursori di tutti i trimmer a circa 1/4 della corsa in senso orario, in modo da verificare la sequenza, per poi impostare ogni singolo tempo a piacimento. Ora non resta che fornire unโ€™alimentazione 12V al morsetto PWR e la scheda sarร  in funzione. Se tutto รจ funzionante, si potrร  procedere a collegare alle uscite ciรฒ che si vorrร  a gestire.

Il Dip1 di DS1 durante il normale funzionamento deve essere lasciato in posizione OFF.
Ricordiamo che nel caso vogliate fare a meno dei sensori crepuscolare e PIR in modo da riprodurre ciclicamente quanto previsto, sarร  quindi sufficiente portare il Dip2 su ON e fare un ponticello tra SIG e 5V del morsetto โ€œPIRโ€. Con questo articolo speriamo di aver offerto tutti gli strumenti e le indicazioni per dar vita a un presepe moderno, ricco di effetti luminosi e sonori, senza rinunciare al fascino della tradizione.

Buone Feste!

Lascia un commento

Il tuo indirizzo email non sarร  pubblicato. I campi obbligatori sono contrassegnati *

Menu