Rilevatore Ultrasonico del Livello dei Liquidi – Seconda Parte

0

di Angelo Lezza

Un economico sistema di rilevazione elettronica del livello dei liquidi di un serbatoio, che nasce come soluzione ad un fastidioso problema personale

 

Nel precedente articolo avevo presentato un circuito minimale, ancora in fase embrionale, per la realizzazione di un Rilevatore Ultrasonico del livello di liquidi di un serbatoio. La versione iniziale prevedeva infatti l’utilizzo di un microcontrollore PIC16f877 a 8 bit che a dire il vero, oltre ad essere sin troppo performante quantomeno dal punto di vista del numero dei pin a disposizione (40 pin totali – di cui n. 33 per porte logiche), presenta un package di dimensioni più che “ingombranti” per una applicazione del genere ove, invero, viene effettivamente richiesto un numero ridotto di porte logiche. Il motivo che mi aveva spinto ad implementare tale configurazione era legato al fatto di poter contare sull’utilizzo di una scheda di sviluppo che uso spesso – Development Board pic16f877 – reperibile in commercio al costo di circa 10 Euro, che mi consente di poter eseguire le fasi di debug del codice assembly senza dover necessariamente realizzare prima, e modificare poi, il prototipo. In questi due mesi ho però avuto più tempo per poter testare il firmware del pic e, avendo superato la fase di debug ed ottenuto esiti in tal senso positivi, ho disegnato il PCB con alcune piccole modifiche e migliorie al circuito, che di seguito vi illustro. La prima modifica che vorrei proporvi è quella di effettuare una migrazione tra microcontrollori: rimuovere il Pic16F877 inserendo il fratello minore, ossia il Pic16F876, che pur avendo la medesima potenza di calcolo e molti altri elementi in comune col primo, ha dimensioni decisamente più ridotte: 28 pin contro i 40 del fratello maggiore. Essendo i due microcontrollori molto simili, tanto da essere documentati dalla casa costruttrice Microchip nello stesso datasheet, i concetti base indicati nella prima parte dell’articolo valgono ovviamente anche per questa seconda parte. Le impostazioni principali del software rimangono infatti invariate, occorre semplicemente fare attenzione alla configurazione dei registri delle porte logiche e all’eventuale differente utilizzo delle stesse; per il resto quanto già esposto rimane valido! Ma andiamo con ordine ed analizziamo lo schema elettrico dello stadio microcontrollore, come osservate in Figura 1.

Figura 1: Schema circuito stadio microcontrollore

Come potete notare la scheda del microcontrollore è rimasta più o meno la stessa ad eccezione di alcune lievi modifiche che di seguito sintetizzo:
1. Sostituzione del microcontrollore, a seguito delle motivazioni indicate in premessa;
2. Rimozione di due resistenze da 330 ohm poste ai capi degli indicatori Led;
3. Inserimento dei condensatori a massa, sui pin del quarzo del micro;
Dallo schema potete anche notare l’inserimento di un connettore per comunicazioni SPI, utile nel caso in cui si volessero trasmettere eventuali dati attraverso dei moduletti wi-fi. Tale circostanza è stata per il momento accantonata, seppur non definitivamente esclusa per il futuro, stante che i moduletti che avrei voluto utilizzare sono giunti dal mercato orientale mal funzionanti e tutto ciò non mi ha consentito di testarli così come avrei voluto. Pur tuttavia lascio nel PCB tale predisposizione, non si sa mai… Tra le modifiche più significative al circuito elettronico vi è quella della implementazione di un ulteriore stadio di alimentazione (riduttore/stabilizzatore di tensione), composto da un 7805 e pochi altri componenti annessi, il quale mi consente di alimentare la scheda direttamente a 12 volt.

Schema circuito stadio riduttore/stabilizzatore di tensione da 12 volt a 5 volt

Il riduttore infatti ha appunto il compito di ridurre la tensione di ingresso dai 12 volt iniziali e stabilizzarla ai 5 volt necessari al funzionamento del microcontrollore e dei sensori. Tale decisione dipende dal fatto che l’alimentazione stabilizzata a 5 volt riveste particolare importanza non solo per il circuito elettronico in sé, ma anche e soprattutto per il modulo A/D del PIC il quale, come ricorderete, viene direttamente alimentato dalla medesima tensione del circuito. Infatti, per la conversione A/D, mi sono avvalso (e a maggior ragione anche adesso mi avvalgo) della possibilità di utilizzare la tensione di riferimento interna al microcontrollore e compresa tra Vss (0 volt) per –VREF e VDD (5 volt) per +VREF, stante che le prove effettuate in tal senso mi consentono una accettabile stabilità.

Nuova configurazione delle porte del microcontrollore e del PCB

 

La sostituzione del microcontrollore mi ha permesso di realizzare un PCB di dimensioni più ridotte (circa 58 mm x 58 mm) e dal costo più contenuto.Il nuovo PIC 16F876 viene utilizzato nella medesima configurazione del Pic16F877 ma le porte logiche impegnate con queste modifiche risultano le seguenti:

RA0 = AN0 – Porta analogica per conv. A/Dsensore LM335 – temperatura RB2 = uscita alta – Led Rosso (troppo vuoto = 0 – 20% – allarme – suono buzzer intermittente)
RB1 = uscita alta – Led Giallo (troppo pieno = oltre il limite – allarme – suono buzzer intermittente)
RB0 = uscita alta – Led Verde (situazione ideale – contenuto recipiente = 20% – 100%);
RC1 = TRIG > HC – SR04
RC2 = ECHO > HC – SR04
RC0 = Controllo per comunicazioni SPI
RC3 = SCK per comunicazioni SPI
RC4 = SDI per comunicazioni SPI
RC5 = SDO per comunicazioni SPI
RC6 = Controllo per comunicazioni SPI
RC7 = Controllo per comunicazioni SPI

 

Lato superiore

 

Lato inferiore

Conclusioni

Rimango a disposizione per eventuali chiarimenti che potrete eventualmente richiedermi tramite il portale www.elettronicaemaker.it o tramite e-mail.

Total 0 Votes
0

Tell us how can we improve this post?

+ = Verify Human or Spambot ?

About The Author

Ho 47 anni, sono nato e vivo ad Agrigento, sposato con due figli. Dopo il diploma di Geometra ho continuato gli studi all'Università di Palermo dove nel 1995 ho conseguito la laurea in Architettura, indirizzo Tutela e Recupero del Patrimonio Storico Architettonico, mi sono subito abilitato all'esercizio della professione e dopo qualche anno ho anche conseguito un Master di II livello in Sistemi Informativi Territoriali. Pertanto il lavoro che svolgo e la formazione scolastica ed universitaria che possiedo non hanno un'attinenza diretta con l'elettronica! Pur tuttavia mi interesso di informatica e di elettronica sin da giovane effettuando, da autodidatta, un percorso di studi paralello a quello scolastico/universitario. Dal 2001 mi sono poi soffermato allo studio e alla programmazione dei microcontrollori Pic della Microchip. Sono radioamatore e per hobby amo trascorrere parte del mio tempo libero progettando e/o realizzando circuiti elettronici di mio interesse. Programmo correntemente i microcontrollori PIC in assembly. Ho scritto alcuni articoli di elettronica, uno di questi pubblicato sulla rivista FE n. 375/376 (chiave dtmf a 5 canali). Spero per il futuro di poter continuare a scrivere al fine di fornire alla comunità il mio piccolissimo contributo.

Nessun commento on "Rilevatore Ultrasonico del Livello dei Liquidi – Seconda Parte"

Leave a Comment

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.