Home
Accesso / Registrazione
 di 

voltmetro diy ballerino

4 risposte [Ultimo post]
ritratto di giggigio85
Offline
Ultima visita:
2 anni 20 settimane fa
Utente dal: 08/05/2011
Messaggi: 1

Ciao a tutta la community…seguo il sito di elettronica open source già da un po’ ma da non registrato e mi sono deciso a registrarmi principalmente per usufruire del forum e proporre un po’ di quesiti con la speranza che gente che ne sa più di me possa rispondermi. Inizio subito col porvi la prima domanda (…….sarà la prima di una lunga serie, fidatevi…XD).
Ho realizzato con un pic16f876 un voltmetro che utilizza un display lcd alfanumerico per visualizzare la lettura. Per l’alimentazione utilizzo un piccolo alimentatore credo a commutazione dato il suo peso minimo come anche il suo prezzo…non riesco a visualizzare una lettura stabile perché è come se l’ADC leggesse sempre un valore di tensione differente seppure questa è lasciata fissa. so programmare i pic perché sono un informatico, ma di elettronica ci capisco ben poco…..l’hardware me l’ha progettato un mio amico ma non so se c’è il problema è sulla progettazione o proveniente dall’esterno…..sapreste indicarmi delle dritte per risolvere il problema? THANX!! XD

ritratto di electropower
Offline
Titolo: User++
Utente++
Ultima visita:
33 settimane 4 giorni fa
Utente dal: 17/11/2010
Messaggi: 64
Per eliminare il rumore che

Per eliminare il rumore che tu descrivi sul segnale all’ingresso della periferica ADC ti occorre progettare un filtro, anche passa basso del primo ordine passivo potrebbe andarti bene. Ti dico questo perché con i convertitori di potenza e in particolare con la categoria switching ho a che a fare diciamo ogni giorno, rappresentano il mio ambito di progettazione e sviluppo, ma per la soluzione del filtro che ti ho citato non serve per forza essere un progettista del mio ambito poiché se vogliamo queste sono un po’ le basi dell’elettronica analogica e tutte le volte che si vuole ritagliare una fetta dello spettro del segnale o si vuole sopprimere un’armonica indesiderata o ancora si vuole ridurre la densità del rumore bianco, si deve ricorrere a dei filtri, non c’è niente da fare. Ti sembrerà paradossale, ma io ho iniziato da poco con la programmazione dei microcontrollori e dei DSP e finora, per la realizzazione dei miei gioiellini, ho sempre adottato IC dedicati, solitamente della LT, oppure costruivo in analogica tutto il controllore necessario alle mie esigenze. Poi ho iniziato a riscontrare le limitazioni che l’analogica impone, soprattutto quando si vogliono testare o sperimentare soluzioni nuove come ad esempio una modulazione PWM differente piuttosto che una strategia adattiva per il controllore ecc… Queste cose in analogica non le si fanno, perché richiedono di modificare di sana pianta tutto il progetto della PCB e non solo, quindi mi sono convertito al digitale. Detto questo, scusami se ho divagato un attimo, ma ritornerei al tuo problema. Certamente l’alimentatore wall side di cui disponi lavora ad una frequenza di switching che va oltre i 10kHz, ma per meglio esprimersi andrebbe misurata. Il problema essenziale è che quando colleghi il tuo alimentatore (che è switching di sicuro) alla rete elettrica, il tuo voltmetro digitale da te costruito percepisce o un’interferenza EMI condotta lunga la linea di alimentazione, o peggio ancora percepisce dall’etere la radiazione irradiata sempre dallo switching. Teoricamente, se tutto è progettato in conformità con la normativa che regola le questioni sulla compatibilità elettromagnetica (e quindi se l’alimentatore dispone delle certificazioni necessarie per la commercializzazione) non dovresti avere di questi problemi. Tieni conto inolte che il microcontrollore funziona tramite un segnale di clock ricavato da un oscillatore al quarzo esterno e un’eventuale interferenza può riversarsi anche su questo. Diciamo che, senza stare a fare un elenco delle possibili cause ti illustro al contrario una serie di accorgimenti che dovrebbero risolverti il problema.
1) Se puoi utilizzare un’altra tipologia di alimentatore, in particolar modo con trasformatore e non switching, tanto meglio perché punto 1 questi sono maggiormente indicati per la strumentazione e punto 2 il tuo penso che sia davvero di bassa fattura, quindi non andrebbe utilizzato per nessuna applicazione.
2) Se proprio vuoi utilizzare un alimentatore di tipo switching, allora devi rinforzare l’immunità del tuo circuito attraverso filtraggi di vario genere ma non solo, anche inserendo una ridondanza di capacità di bypass quanto più vicini possibili ai pin di alimentazione del tuo microcontrollore.
3) Penso di aver capito che il tuo progetto sia su millefori (altro motivo per utilizzare un aliementatore convenzionale) ma se hai intenzione di completare il tuo voltmetro realizzando una PCB, allora ti consiglio di prcedere nel disegno della scheda separando la parte digitale da quella analogica di condizionamento del segnale e di realizzare un piano di massa dedicato per ogni sezione. Dopodiché, con un induttore di qualche centinaia di uH colleghi i due piani in modo da formare, in continua, un unico riferimento di massa.

ritratto di electropower
Offline
Titolo: User++
Utente++
Ultima visita:
33 settimane 4 giorni fa
Utente dal: 17/11/2010
Messaggi: 64
Mi scuso, ma erroneamente mi

Mi scuso, ma erroneamente mi è capitato di pubblicare il commento senza terminarlo…vabbè, ne approfitto per dire qualcosina in più visto che le parole su questo argomento non mi mancano di certo…continuo con l’elenco interrotto sopra.
4) Non dimenticare le giuste capacità di bypass sulle linee di alimentazione del micro, degli opamp e di altri IC che utilizzi, da 100nF vanno più che bene
5) Poni particolare attenzione al riferimento di tensione dell’ADC. Se è esterno, mettici in parallelo tra il pin per il riferimento e la massa una capacità anche da 1uF elettrolitica, dovrebbe migliorarti la stabilità della lettura.
6) Non lasciare linee inutilizzate del microcontrollore in alta-impendenza, al massimo settale come uscita oppure se le vuoi lasciare come ingresso, fissa un livello logico tramite una resistenza di pull-up o pull-down (una per ogni linea).
Prova a riguardare il tuo progetto e a seguire i consigli che ho cercato di illustrarti. Se ancora non dovesse andare (già cambiando l’alimentatore le cose dovrebbero migliorare drasticamente) allora prova a postare lo schema elettrico e la realizzazione fisica perché almeno abbiamo qualcosa in più su cui fantasticare delle possibili soluzioni al tuo problema. Io credo che dovresti risolvere semplicemente mettendo delle capacità qua e la, siano esse di bypass o di filtro. A proposito di filtro, non sono entrato nel dettaglio in precedenza, ma per il filtro antialiasing da porre all’ingresso dell’ADC la soluzione più semplice consiste nel dimensionare una capacità da porre in parallelo al partitore resistivo che avrai utilizzato sicuramente (ci scommetto quello che vuoi perché è la prima soluzione che salta in mente quando c’è da condizionare una tensione…;)) per ridurre la dinamica della tensione misurata prima di porla all’ingresso del ADC. I calcoli sono abbastanza banali: fissi la frequenza di taglio superiore a 1kHz (ma puoi scendere ancora, solo che la dinamica temporale di misura ti si rallenterà di conseguenza), la trasformi in pulsazione moltiplicandola per 2*pigreco (quindi nel caso specifico di f=1kHz sarà 6.28krad/s) e ne fai l’inverso ricavando la costante di tempo. Dall’elettrotecnica, la costante di tempo è pari al prodotto tra la resistenza e la capacità. La resistenza la calcoli come parallelo tra le resistenze che costituiscono il partitore (quindi supponendo che tu le abbia siglate R1 e R2, il parallelo banalmente sarà (R1*R2)/(R1+R2)). A questo punto siamo alla fine del calcolo, perché basterà dividere la costante di tempo per la resistenza equivalente calcolata e il valore per la tua capacità è bello e calcolato. Ho supposto 1kHz come frequenza di taglio per pormi ad una decade sotto il presunto disturbo (perché come ti dicevo nel primo commento, la frequenza di switching minima per gli alimentatori del tipo da te adottato non scende sotto i 10kHz, anzi per evitare che lo switching si trasformi in un ronzio udibile ad alta frequenza, si va oltre i 10kHz, almeno a 50kHz. Nei flyback dei pc la frequenza è di 50kHz, ma in modelli più piccoli e anche di potenza più bassa si va anche oltre).
Prova a seguire un po’ quello che ti ho indicato e se dovessero esserci problemi non titubare nel chiedere, tanto si è qui per confrontarsi, per imparare e per condividere le proprie esperienze…è la filosofia di tutti i forum, d’altronde!! ;)

ritratto di Giovanni Giomini Figliozzi
Offline
Titolo: PowerUser
Utente Power
Ultima visita:
1 anno 13 settimane fa
Utente dal: 22/03/2011
Messaggi: 163
per rispondere correttamente

per rispondere correttamente al tuo problema bisognerebbe sapere Quanto balla il segnale che leggi col PIC. se si muove di poche unità potrebbe essere solo rumore, se balla pesantemente potrebbe essere altrove il problema. Nel dubbio per provare una cosa facile prova a mettere una capacità bella grossa sul filo dell'alimentazione verso massa, così almeno si riduce il rischio che ci siano rumori che provengano dall'alimentazione

ritratto di Mino_73
Offline
Titolo: User++
Utente++
Ultima visita:
7 settimane 5 giorni fa
Utente dal: 27/06/2008
Messaggi: 66
Consigli

Concordo con quanto detto da electropower, aggiungerei solo qualche altra nota.
non hai specificato la frequenza di campionamento e la banda del segnale ma
dal momento che utilizzi un display lcd per visualizzare il valore letto
puoi limitare la velocità di campionamento a valori anche molto bassi considerando che il display lo aggiornerai ogni 200ms circa.
Data la velocità di aggiornamento limitata poni un semplice RC di filtro settato con un taglio di qualche centinaio di Hz.
Per i condensatori di filtro sull'alimentazione e sul pin di riferimento dell'ADC, aggiungi ad ogni 100nF un 10nF e un'altro da 1nF (volendo esagerare per essere sicuri) in parallelo e vicino ai pin da proteggere dal rumore, in questo modo riesci a coprire bande di rumore più alte. Ogni condensatore, o componente passivo in genere, non agisce allo stesso modo al variare della frequenza, per questo è buona norma mettere delle capacità di valore più basso in parallelo ai soliti 100nF.
Già che ci sei per evitare danni al micro aggiungi un paio di diodi sui pin di ingresso dell'ADC, questi vanno messi in serie tra Vcc e massa polarizzati in inversa e con il segnale di Input all'ADC che passa tra i due diodi. Facci sapere se la situazione migliora o se scoppia tutto!! :-)

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 1 utente e 34 visitatori collegati.

Utenti online

Ultimi Commenti