- Impostare 'Nessun fine-riga' nel monitor
- Chiudere e riaprire il monitor seriale
mercoledì 1 settembre 2021
Arduino N° 105 - Convertitore decimale/binario ad 8 bit.
lunedì 30 agosto 2021
Pallone Solare - Realizzazione
mercoledì 21 luglio 2021
Arduino N° 104 - Shock sensor - Sensore di urto, retriggerabile.
- spegnere l'avviso di evento dopo un certo tempo impostabile (tipicamente 5 secondi);
- "retriggerare", cioè far ripartire il temporizzatore se un altro evento si presentasse prima dello scadere del tempo di ritardo;
- il temporizzatore è NON-bloccante ed il controllore può continuare a svolgere altre funzioni.
Simulazione:
mercoledì 14 luglio 2021
Arduino N° 103 - Distributore automatico di bevande
Fig.1: schema di base del distributore automatico di bevande; |
Simulazione:
mercoledì 7 luglio 2021
Arduino N° 102 - Capacitor Meter
Simulazione:
mercoledì 30 giugno 2021
Arduino N° 101 - Resistor Meter
Simulazione:
mercoledì 23 giugno 2021
Arduino N° 100 - Comando seriale remoto per LED RGB
Fig 1: schema pratico di montaggio; |
Il circuito può essere anche modificato per adattarlo alle proprie esigenze.
Il primo modulo (a sinistra, nella figura 1) viene usato come "Trasmettitore", il secondo (a destra, in figura) come ricevitore.
Tre ingressi analogici del modulo trasmettitore leggono i valori di tensione impostati in ingresso sui tre potenziometri, associati ai tre colori RGB.
I valori analogici vengono, poi, inviati sulla seriale e ricevuti dal secondo modulo, quello ricevitore, che li riconosce ed attua le tre uscite relative, formando il colore composito generato dai tre coefficienti primari utilizzati. Per fare questo, le tre uscite devono essere di tipo PWM; in particolare ho scelto le uscite PWM D3, ,D4, D5.
Le alimentazioni vanno separate ed associate ai rispettivi moduli; sul modulo TX verranno associati i potenziometri mentre su quello RX verrà associato il LED RGB.
Nel caso voleste alimentare più diodi LED il circuito di pilotaggio andrebbe modificato con un opportuno stadio driver/separatore, utilizzando tre BJT o MOSFET come amplificatori in configurazione "lineare".
La pagina di simulazione può essere molto esplicativa del funzionamento.
Le tre resistenze collegate in serie al rispettivo potenziometro servono per avere sul potenziometro tutta l'escursione della tensione per l'accensione del LED. Usando potenziometri rotativi da 300° l'accensione avviene entro una rotazione di circa 60-70°, lasciando altri 230° per la modulazione dei coefficienti tricromatici.
Fig. 2: Alimentazione separata per i due moduli; |
Fig. 3: polarizzazione separata dei tre led RGB; |
Simulazione:
mercoledì 16 giugno 2021
Arduino N° 99 - Uso del BUZZER attivo e passivo
Mi sono deciso a scrivere queste note dal momento che su vari gruppi di Internet si leggono cose abbastanza fantasiose ed approssimative, che denotano la scarsa conoscenza degli argomenti dell'Elettronica di base.
Parliamo dei cosiddetti BUZZER cioè dei cicalini o "ronzatori".
Intanto, il termine viene già usato in modo improprio e si confondono i cicalini con gli altoparlanti.
Dobbiamo infatti distinguere:
- Buzzer passivi;
- Buzzer attivi.
Fig 2: buzzer passivo, completo di circuito di pilotaggio a transistore; notate che è necessario pilotarlo con un segnale esterno ad onda quadra; |
Nota: non pretendiate potenze assurde! Per ottenere potenze maggiori in uscita è obbligatorio l'uso di uno stadio amplificatore in bassa frequenza!
Simulazione: Allarme, Sirena italiana
mercoledì 9 giugno 2021
Arduino N° 98 - Comando proporzionale Ventola
Controllo di velocità per ventola, comandata con telecomando ad infrarosso.
Fig. 1: Layout dei componenti; driver a MOSFET; |
Due coppie di codici permettono l'avanzamento UP/DOWN con passo LOW e FAST attraverso i quattro pulsanti di avanzamento lento (< >) e veloce (<< >>).
i condensatori sulla linea di alimentazione servono per non avere brutte sorprese di malfunzionamenti.
Il diodo di "libera circolazione" è molto utile per la salvaguardia del MOSFET.
Il LED fornisce una indicazione visiva dell'attuazione dei comandi, peraltro visibili aprendo il monitor seriale.
Il MOSFET, nella configurazione a Source Comune, pilota la tensione da fornire alla ventola e la relativa corrente.
Dalla disposizione dei componenti ricavate lo schema elettrico; vi aiuterà molto nella comprensione del circuito.
In alternativa, è possibile pilotare il motore con un circuito driver a BJT, come in fig. 2. Il firmware resta lo stesso ma bisogna modificare l'interfaccia di comando motore per avere un pilotaggio in corrente.
Fig. 2: Comando ventola con infrarosso e driver a BJT; |
Varianti:
E' possibile collegare la ventola a tensione di 12 volt, scollegando il filo rosso che la alimenta e collegando ad una tensione di 12 Vcc, massa comune con il circuito.
Nota 1:
Se avete un telecomando diverso è possibile cambiare facilmente i codici di attivazione leggendoli direttamente a monitor ed inserendoli nelle righe dei comandi.
Nota 2:
Il circuito è SOLO dimostrativo. L'uscita va ASSOLUTAMENTE collegata ad una sorgente di alimentazione separata. La figura la riporta collegata alla alimentazione di Arduino a puro titolo di esempio.
Simulazione:
Comando proporzionale ventola con MOSFET_V5.3mercoledì 2 giugno 2021
Arduino N° 97 - Accelerazione motore in DC_V3
In questo post propongo un dispositivo per il comando progressivo di un .motore in corrente continua, che ne determina l'accelerazione/decelerazione.
Nota:
Il circuito è SOLO dimostrativo. L'uscita va ASSOLUTAMENTE collegata ad una sorgente di alimentazione separata. La figura la riporta collegata alla alimentazione di Arduino a puro titolo di esempio.
Simulazione:
Accelerazione motore in DC_V3mercoledì 26 maggio 2021
Arduino N° 96 - Orologio senza modulo RTC
E’ stata una sfida, piuttosto che
un’esigenza di progetto. Per effettuare la taratura mi sono avvalso del segnale
campione dell’Istituto INRIM con il quale già in passato avevo avuto modo di
lavorare.
Lo sketch da me preparato usa la
funzione millis(), per effettuare misure piuttosto precise di tempo.
Una volta
preparato lo sketch bisogna impostare la base tempi necessaria a scandire i
secondi. Il valore scelto in origine era pari a 1000 mSec. Ho provato la
sincronizzazione aprendo due finestre separate ed affiancate, per una agevole
lettura; in una ho aperto la simulazione con Tinkercad, nell’altra ho aperto la
pagina dell’INRIM con la lettura dell’orologio campione. Una volta misurato lo
scostamento iniziale ho effettuato il trimming sul valore della costante di
tempo da impostare, ottenendo misure via via più precise.
Alla fine, il valore della base
tempi da impostare è risultato pari a 436 e lo stesso va inserito all’inizio
dello sketch nella costante T.
Attenzione! Il valore è associato
alla base tempi del simulatore. Facendo le prove “in presenza” esso va regolato
opportunamente, poiché la base tempi di Arduino potrebbe essere diversa.
Riferimenti:
INRIM Laboratorio di Tempo Istituto Nazionale Ricerche Metrologiche
Simulazione:
Digital Clock Without RTC Modulemercoledì 19 maggio 2021
Arduino N° 95 - Selettore 5 uscite
E' possibile modificare lo sketch per avere due note diverse nelle condizioni di "cambio stato" o mantenimento in memoria dello stato precedente, senza attivazione del relay.
Per commutare segnali a radiofrequenza è opportuno utilizzare dei relais coassiali, comandabili dalla logica di controllo.
Nota 1:
Volutamente non ho inserito i relais sulle uscite e lascio al lettore l'onere della ricerca della giusta configurazione, utilizzando 5 driver, a BJT o MOSFET, e 5 opportuni relay in tensione continua dotati, ognuno, di diodo di libera circolazione (o di flyback). Il contatto "puro", in uscita dallo stadio pilota, andrà collegato NON ai 5 volt di Arduino ma ad una alimentazione SEPARATA (12 volt, 24 volt ecc...) o, nel caso, al segnale da commutare.
Nota 2:
Alcuni relais sono già dotati di diodo interno; attenzione alla loro polarità!
Simulazione:
mercoledì 12 maggio 2021
Arduino N° 94 - Generatore di frequenze audio
Generatore ad onda quadra in banda audio.
Predisposizione digitale della frequenza, a passi di 100 Hz ed 1 Hz, avanti e indietro.
Frequenza impostata e generata, con indicazione numerica su display LCD 16X2.
E' possibile utilizzare una scheda Arduino, nelle versioni UNO, Nano ed anche Pro-mini.
Le versioni UNO e Nano sono direttamente configurabili attraverso la porta seriale; Per il Pro-Mini occorre essere un po' più esperti e fare uso di una interfaccia seriale di comunicazione; quest'ultima soluzione è consigliabile per un lavoro definitivo che non abbia più bisogno di correzioni o modifiche del firmware.
Fig. 1: generatore di frequenza audio; |
La tensione di uscita è di 5 Vpp.
Caricate l'uscita con una opportuna resistenza e con un potenziometro, per non sovraccaricare la stessa e per avere la regolazione dell'ampiezza del segnale di uscita.
L'inserimento di un filtro passa-basso di primo ordine, opportunamente dimensionato, elimina le armoniche superiori.
Simulazione:
Generatore di frequenze audiomercoledì 5 maggio 2021
Arduino N° 93 - Selettore a Relay - 3 uscite
Il dispositivo che qui viene descritto potrebbe essere realizzato con un semplice selettore elettromeccanico ma con l'aggiunta del display LCD, del buzzer e della scheda a microcontrollore potrebbe essere la base di lavoro di un dispositivo molto più complesso, nel quale l'uso della logica di controllo diventi essenziale per ridurre la componentistica.
Fig. 1: schema generale del selettore a 3 posizioni |
Particolarità del circuito: sono stati utilizzati tre piedini di ingresso analogico per i tre pulsanti di comando, in modalità pull-up.
Tre spie LED, che si accendono una per volta, sono collegate con una unica resistenza verso massa; le tre uscite comandano i tre relais per la commutazione dei carichi. In questo caso, le lampadine simulano il carico e sono collegate ai 5 volt, con massa comune.
E' possibile isolare completamente i contatti di scambio dei relais ottenendo dei contatti 'puri', adatti per il collegamento a tensioni 'esterne' alla logica di controllo. In questo modo, ad esempio, si potrebbe alimentare un carico a 230 Vca.
Se il relay non ne è provvisto, provvedete a collegare un diodo di 'libera circolazione' in 'antiparallelo' sulla bobina, del tipo 1N4004, 1N4007 o 1N4148.
Funzionamento:
alla pressione di uno dei pulsanti si attiva la relativa uscita, che viene rivelata da un segnale acustico sul piccolo altoparlante e dalla spia LED associata all'uscita stessa, che potremo numerare con 1,2,3.
E' possibile modificare lo sketch per avere due note diverse, nelle condizioni di "cambio stato" o mantenimento in memoria dello stato precedente, senza attivazione del relay.
La simulazione è disponibile per l'analisi e il download.
Nota 1:
Le lampade vanno ASSOLUTAMENTE collegate ad una sorgente di alimentazione separata. La figura le riporta collegate alla alimentazione di Arduino a puro titolo di esempio.
Nota 2:
Ovvio che non è necessario Arduino per realizzare un selettore manuale ma questo dispositivo potrebbe essere comandato via bluetooth, senza fili. Allora ecco aprirsi nuovi scenari e nuove applicazioni.
Per commutare segnali a radiofrequenza (RF) utilizzate la logica di controllo per comandare dei relais coassiali.
Simulazione:
martedì 4 maggio 2021
Driver Relay - 1 via. 2 posizioni
Pilotaggio di un relay da un pulsante.
Il pulsante comanda l'uscita del relay nelle due posizioni.
I due led segnalano la posizione assunta.
Ricordate di inserire il diodo di libera circolazione (o di flyback ) in antiparallelo sulla bobina del relay!
Il resistore di polarizzazione dei led è unico e provvede alla giusta polarizzazione di entrambi.
Il resistore in serie alla bobina del relay serve per dare la giusta tensione alla stessa.
Nel caso di alimentazione a 5 volt si deve eliminare, come anche nel caso di uso di un relay a tensione nominale di 9 Vcc.
Nota:
Alcuni relais a tensione continua sono polarizzati internamente; in questo caso non bisogna inserire il diodo esterno e bisogna controllare la polarità della bobina del relay, con un tester.
Simulazione:
Argomenti correlati:
Arduino N° 50 - Modulo di prova per 6 uscite digitali
venerdì 30 aprile 2021
Porte Logiche - Simulazione
Simulazione di porte logiche con integrato TTL SN7400, quadruplo NAND a due ingressi.
Fig. 1: funzioni logiche realizzate con porte SN7400; |
Simulazione:
Argomenti correlati:
Arduino N° 50 - Modulo di prova per 6 uscite digitali
prof. Achille De Santis
mercoledì 28 aprile 2021
Arduino N° 92 - Elettrovalvola bistabile con comando bluetooth
In questo post vi presento un'altra applicazione di Arduino per il comando di una elettrovalvola bistabile, con comando impulsivo in bassa tensione, pilotato attraverso un collegamento Bluetooth.
- Comando "locale" START/STOP, da quadro comandi;
- Comando "remoto" START/STOP da interfaccia bluetooth;
- Funzionamento "bistabile": lo stato attuale viene mantenuto anche in assenza di alimentazione.
La piccola resistenza da 10 Ohm, posta sui piedini di uscita della configurazione a ponte (v. fig. 1), rappresenta il carico e deve essere scollegata quando si collegherà al suo posto la bobina dell'elettrovalvola a 5 volt.
Una variante allo schema presentato potrebbe essere costituita dall'uso di un modulo "ponte ad H" di maggiore potenza, con l'integrato L298N che trovate facilmente già montato.
Nello schema presentato manca soltanto il collegamento della scheda Bluetooth HC-05/HC06 ai piedini 0 e 1 per i comandi via seriale bluetooth.
Volutamente, questa volta non presento lo sketch ma lascio al lettore l'onere del suo sviluppo. Vedremo come va a finire! Lo sketch ed il dispositivo sono stati comunque provati e collaudati, con esito positivo. Una buona guida è rappresentata da quanto già pubblicato e che trovate negli Argomenti correlati.
Nota:
I componenti presenti nello schema servono tutti! Cominciate ad applicare le regole basilari dell'Elettronica, per non dover poi dire: "Questo circuito è instabile e l'ho abbandonato"!
Nota importante:
La legge di Murphy è sempre in agguato ma vediamola in senso positivo!
Ricordate di lavorare sempre in sicurezza!
Simulazione:
Pilotaggio di motori in CC
Buon lavoro a tutti!