Lettura corrente pin arduino

Salve ragazzi,

in questi giorni sono impegnato nella realizzazione di un metal detector.

In sintesi, il circuito alimentato ad 8V ha come output un'erogazione di corrente in un range da 0 a 100uA. Avvicinando un corpo metallico alla bobina, la corrente subisce suscettibilità. Attualmente riesco a comprendere e visualizzare tale parametro attraverso un amperometro ad ago.

La mia intenzione è quella di riuscire a leggere la corrente in output mezzo arduino, al fine anche di fissare un limite di rilevazione che stabilisca un rilievo metallico abbastanza certo in funzione della distanza e del corpo metallico in esame - anche attraverso la valutazione di un valore analogico - che mi dia come output l'accensione di un led o comunque un azione specifica decisa da me, per automatizzare il processo ed anche evitare false rilevazioni dovute ad interferenze etc.

Non so se è necessario avvalermi di un circuito aggiuntivo che abbassi la tensione e gestisca la corrente per essere letta direttamente dai pin di arduino oppure se è possibile cavarsela in qualche altro modo.

Ho fatto qualche ricerca ma con poco successo, dovrei mettere insieme più di qualche cosa.

Ringrazio anticipatamente tutti.

A presto,

Luigi.

Buongiorno, essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD ([u]spiegando bene quali conoscenze hai di elettronica e di programmazione[/u] ... possibilmente [u]evitando[/u] di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :)

Qui una serie di link utili, non inerenti al tuo problema: - qui una serie di schede by xxxPighi per i collegamenti elettronici vari: ABC - Arduino Basic Connections - qui le pinout delle varie schede by xxxPighi: Pinout - qui una serie di link [u]generali[/u] utili: Link Utili

Fatto,

mi scuso per non aver adempiuto prima.

Grazie.

Stavo dando uno sguardo all'INA219.

Da quanto ho capito non avrei neanche bisogno di abbassare la tensione, in ingresso al circuito in quanto supporta tensioni fino a 26VDC.

Il problema è che non riesco a capire se riesco a gestire una corrente così piccola in un range che va da 0 a 0.1 mA amplificandola - ma sembra di no.

Se devi leggere solo una corrente piccola, perche' non usi una semplice resistenza ?

Se fai passare la tua corrente attraverso una resistenza (di opportuno valore), avrai una tensione ai capi della resistenza ... mettiamo di usare una resistenza da 10K, dovresti avere intorno ad 1V massimo ai capi della resistenza con 100uA di corrente circolante ... se usi il riferimento da 1.1V interno del 328, con arduino dovresti poterlo leggere tranquillamente con un qualsiasi ingresso analogico ai capi della resistenza (se uno dei capi e' collegato a massa, ovviamente) ... ;)

Non vorrei dire porcherie però: non potrei abbassare la tensione del circuito metal detector mezzo resistenza a 5V e leggerla con un qualsiasi pin analogico dell'arduino senza riferimenti? Per evitare di avere tutti i pin poi a 1,1V.

Mi aspetto un "no" secco, però a questo punto sarei curioso di capire.

Grazie.

Dipende dal circuito, che non conoscendo, non ti sappiamo dire … ma non ti ritrovi tutti i pin ad 1.1V, e’ solo il riferimento interno dell’ADC (ovviamente, se devi usare anche altri pin analogici, quello si influisce)

Il tuo circuito non serve che lo sottoalimenti, se l’uscita e’ riferita a GND (se cioe’ uno dei capi del tuo milliamperometro e’ a massa) … basta che colleghi la resistenza da 10K fra massa ed uscita, al posto del milliamperometro, e poi metti le masse dei due circuiti in comune.

Ovviamente se il milliamperometro non ha un capo a massa, la cosa e’ diversa.

Hai lo schema elettrico di quel metal detector, tanto per poterti dare suggerimenti piu mirati ?

Ciao,

allego lo schema e il PCB con la componentistica.

In “M1” ai due contatti, va collegato il milliamperometro. Facendoci caso non mi sembra che uno dei due capi vada a massa, purtroppo.

In ogni caso aspetto di capire cosa ne pensi.

Grazie.

Senza titolo-1.jpg

1) Arduino non legge corenti ma tensioni 2) Arduino non leggge correnti o tensioni alternate.

Ciao Uwe

Capito, e' il circuito base di un sistema a battimento con doppio oscillatore, no, purtroppo li e' collegato in modo che non si possa portare un capo a massa, per cui leggere la tensione ai capi della resistenza causata dalla corrente che la attraversa non e' fattibile ...

uwe: non sarebbe alternata, quel circuito restituisce una frequenza che va da 0 ad 8V circa, sempre positiva rispetto a GND, ma e' comunque ad impulsi, per cui sarebbe difficile lo stesso ... potrebbe forse fare qualcosa usando l'ultima porta come buffer ed un'integratore in uscita (diodo, poi condensatore elettrolitico verso massa con resistenza in parallelo), ma sarebbe pur sempre un'indicazione di massima ed imprecisa ... si fa prima ad usare un circuito completamente differente, in effetti ...

Qualche idea per poter rilevare un segnale utile a definire un limite di rilevabilita’ dopo la definizione di parametri sperimentali da parte mia mezzo milliamperometro?

Non so con qualche amplificatore di corrente, qualcosa?

Oppure un output digitale ricavato con dell’elettronica? Pensavo ad esempio di tarare quell’uscita con una sorta di potenziometro… es oltre la soglia dei 50uA ottenere un output high da poter utilizzare con Arduino.

O niente di tutto ciò?

Grazie ancora di tutto il supporto.

@Etemenanki

quel circuito restituisce una frequenza che va da 0 ad 8V circa

Non ti seguo. I miei studi finora non mi hanno portato a una frequenza da 0 a 8V percui non so cosa sia. ;) ;)

Cosa sará quel integrato?

Ciao Uwe

uwefed: @EtemenankiNon ti seguo. I miei studi finora non mi hanno portato a una frequenza da 0 a 8V percui non so cosa sia. ;) ;)

Cosa sará quel integrato?

Ciao Uwe

E' un CD4030.

Scommetto che con un amplificatore operazionale - es abbassando la tensione ai capi dell'M1 [u]in parallelo[/u] e poi amplificandola fino a max 5V, leggendola poi in analogico - qualcosa si può fare, però non ho idea se magari c'è qualcosa di più semplice ed immediato.

Ottenere un output digitale sulla base di una "sensibilità" calibrata sull'elettronica per me potrebbe essere anche già abbastanza.

Ciao.

Oppure, altra alternativa che stavo cercando di valutare, un ADC esterno 16bit con possibilità di gain in seguito all'abbassamento di tensione che devo provocare.

Che dite?

luigidnl: Oppure, altra alternativa che stavo cercando di valutare, un ADC esterno 16bit con possibilità di gain in seguito all'abbassamento di tensione che devo provocare.

Che dite?

Non hai una tensione riferita a massa. Percui non puoi leggere in modo semplice la tensione su una resistenza messa al posto dello strumento analogico. Con un amplificatore instrumentale é possibile, ma alla fine opterei alla ricerca di un circuito migliore. Ciao Uwe

Farò così.

@uwefed Giusto per divertirmi però, nell'ambito delle tue conoscenze, potresti indicarmene uno valido allo scopo? Così me lo studio a faccio qualche prova quando ho tempo.

Grazie.

Vi lascio in allegato un alternativa che ho trovato, riferito sempre ad un metal detector BFO.

Dove viene indicato lo speaker misurerei la corrente, il punto è che prima della massa ci vedo un transistor e un condensatore.

Può essere valido come progetto ai miei fini rispetto al precedente?

Grazie.

bfosch.jpg

uwefed: @EtemenankiNon ti seguo. I miei studi finora non mi hanno portato a una frequenza da 0 a 8V percui non so cosa sia. ;) ;)

Cosa sará quel integrato?

Ciao Uwe

:D

Ho scritto io in modo poco chiaro ... una frequenza variabile in funzione della differenza fra le due frequenze (battimento), che pero' come escursione di tensione va solo da 0 ad 8V, non diventa "negativa" rispetto a massa, per cui tecnicamente non sarebbe "alternata"

luigidnl: Vi lascio in allegato un alternativa che ho trovato, riferito sempre ad un metal detector BFO. ...

Il transistor e' per amplificare il segnale prima di mandarlo allo speaker ... e' sempre lo stesso principio di funzionamento dell'altro, genera una frequenza variabile dovuta al "battimento" fra i due oscillatori, piu le due frequenze sono differenti a causa dello scostamento di uno dei due oscillatori dovuto al metallo rilevato, piu la frequenza e' acuta ...

Grazie mille di tutto, gentilissimi.

Continuo a cercare, se trovo qualcosa di diverso vi disturberò ancora per capire :)

Se non dovessi trovare niente, qualche amp-op che possa fare al caso mio? Giusto nel caso sbattermi sarà la mia unica alternativa.

Grazie ancora.