Giocando con Arduino 1

Tutto ciò che riguarda la radioattività e i rilevatori.
Rispondi
Avatar utente
Enotria
Senior
Messaggi: 283
Iscritto il: 08/10/2015, 17:15
Località: Ferrara
Contatta:

Giocando con Arduino 1

Messaggio da Enotria » 26/05/2016, 9:40

.

Cosa sia Arduino credo sia noto a tutti, ma non si sa mai, diciamo allora che è una scheda che contiene tutto quello che serve per costruire delle apparecchiature elettroniche di qualsiasi genere. E’ utilizzato per fare strumenti musicali, per automatizzare la casa, per costruire l’antifurto come vorremmo noi e, naturalmente, è perfetto per giocare con ratemeter e scaler.
Una volta abbinato ad una scheda specializzata nel captare gli impulsi della radioattività, può fare esattamente tutto quello che noi gli chiediamo.
La comunicazione fra noi ed Arduino è attuata mediante un programma che noi stessi scriveremo e con l’aggiunta eventuale di pochi altri componenti.

Dato che noi siamo interessati principalmente ai contatori Geiger e simili, fa subito comodo integrare Arduino con una scheda che, a sua volta, contiene tutto quello che ci serve per fare il NOSTRO strumento.
Di queste schede ve ne sono tante, quella che utilizzo io l’ho scelta perché si integra direttamente, senza alcun bisogno neppure di una saldatura in più, e contiene già la sonda rilevatrice, il generatore di HT (alta tensione), rivelatore di impulsi, beep sonoro, display su cui scrivere le nostre informazioni, ecc. ecc.
1.JPG


E’ la Radiation Sensor Board della Libellium, una scheda che viene fornita con o senza sonda, con o senza display ottico e che costituisce quindi un ottimo punto di partenza per i nostri elaborati.
La grande comodità per un cecato come me, è che non c’è nulla da saldare: display, scheda ed Arduino si incastrano esattamente uno sull’altro facendo un unico pacchetto funzionale, pacchetto a cui manca solo il vostro software per dire cosa e come fare.
2.JPG
A cosa vogliamo giocare oggi ?

Ultimamente si è parlato della misurazione della radioattività mediante il metodo della Media Progressiva e dei vantaggi che questa comporta sia in precisione, sia nella rapidità con cui otteniamo un risultato attendibile.

Allora, perché non facciamo un programma che trasformi il nostro Arduino in uno strumento rilevatore a Media Progressiva ? Così potremo capire e toccare con mano pregi e difetti di questo metodo.

Il programma è ridotto al minimo per non complicare inutilmente, vi sono molte annotazioni esplicative, il nome delle variabili è auto esplicante, ma devo presupporre che chi legge abbia comunque almeno una minima conoscenza di Arduino e della sua programmazione.

Il software da inserire è riportato in un file di testo, in modo che chiunque lo possa visualizzare:
Software.txt
Alcune note al riguardo:
- la base dei tempi è fissata in 10 secondi
- il pin di Arduino che riceve gli impulsi è il n. 2 e lo fa tramite un interrupt, cioè quando arriva l’impulso, qualunque cosa Arduino stia facendo, si interrompe e lo conteggia, poi riprende il suo lavoro. Questo per avere la massima velocità di acquisizione dei dati.
- le righe con “//” oppure con “/*” sono delle annotazioni esplicative
- le istruzioni che iniziano con “Serial” possono anche venire eliminate, le ho lasciate in caso voi vogliate divertirvi a modificare il programma, per vedere cosa succede se . . . .
- sul display la riga sopra visualizza i CPM e quella sotto i uSv/h, prima il dato immediato, poi il dato medio progressivo.
3.JPG
Nella immagine vedete che i CPM dei 10 secondi appena terminati sono 12 ed, evidentemente, hanno abbassato la media portandola a 15 CPM. Stessa cosa per le misurazione espressa in microSv/h.
Con il procedere dei conteggi, il valore della media progressiva tenderà a stabilizzarsi, perché la misurazione avviene su tempi sempre più lunghi.

Il miglioramento della precisione la si nota molto bene leggendo i dati sul monitor seriale del PC:
4.JPG
Dove si vede che mentre i dati delle singole letture di 10 secondi variano moltissimo, da 0.00 uSv/h fino a 0.45 uSv/h, con una indeterminatezza totale, la media progressiva già dopo 2 minuti di conteggio ci da un risultato praticamente costante di 0.20 uSv/h

Morale delle nostre prove:
- se avessimo usato un geiger normale, avremmo avuto tante risposte, ma tutte diverse e che non ci avrebbero consentito nessuna valutazione attendibile,
- se avessimo usato uno scaler, avremmo si avuto una misura certa, ma solo dopo molti minuti,
- con questo strumento, in soli due minuti, siamo arrivati al risultato.


Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.


Andrea

URL: [External Link Removed for Guests]

Ogni oggetto ha la sua storia,
. . . io non vendo oggetti,
. . . . . . io racconto storie. (Enotria)

Avatar utente
Studio 1
Messaggi: 736
Iscritto il: 09/11/2015, 16:48
Località: Vicenza
Contatta:

Re: Giocando con Arduino 1

Messaggio da Studio 1 » 26/05/2016, 22:28

Eccellente idea .... peccato che non si può applicare a strumenti tipo E600 o oggetti simili ....


[External Link Removed for Guests]" onclick="window.open(this.href);return false;
[External Link Removed for Guests]#_=_" onclick="window.open(this.href);return false;

Avatar utente
marconmeteo
Moderatore
Messaggi: 4336
Iscritto il: 08/10/2015, 21:20
Località: Marcon (VE)
Contatta:

Re: Giocando con Arduino 1

Messaggio da marconmeteo » 26/05/2016, 23:55

Studio 1 ha scritto:Eccellente idea .... peccato che non si può applicare a strumenti tipo E600 o oggetti simili ....
E che senso avrebbe? L'E600 fa già un sacco di cose che nemmeno riesci mai ad utilizzare del tutto. Questa bellissima soluzione di Andrea è per la costruzione di qualcosa di personale o, per chi volesse, per ridare vita a vecchia strumentazione.


[External Link Removed for Guests]

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo all'universo ho ancora dei dubbi" - Albert Einstein


IU3ARP

Avatar utente
eliocor
Senior
Messaggi: 430
Iscritto il: 10/10/2015, 23:28
Località: Europe
Contatta:

Re: Giocando con Arduino 1

Messaggio da eliocor » 26/05/2016, 23:56

Penso che sia molto simile al codice che 4 anni fa avevo scritto (per divertimento) per Arduino*:
[External Link Removed for Guests]

*) ma che è facilmente portabile su altri micro. Anche se le soluzioni adottate per il conteggio degli impulsi sono un po' al di fuori dello standard corrente.


٩(•̮̮̃•̃)۶ - Excusatio non petita, accusatio manifesta

Avatar utente
Poldo
Messaggi: 44
Iscritto il: 09/03/2016, 0:15
Località: Tre Case (MO)

Re: Giocando con Arduino 1

Messaggio da Poldo » 27/05/2016, 0:24

Enotria ha scritto:Morale delle nostre prove:
- se avessimo usato un geiger normale, avremmo avuto tante risposte, ma tutte diverse e che non ci avrebbero consentito nessuna valutazione attendibile,
- se avessimo usato uno scaler, avremmo si avuto una misura certa, ma solo dopo molti minuti,
- con questo strumento, in soli due minuti, siamo arrivati al risultato.
Che cosa vuoi dire, che un geiger che usa la media progressiva è anche meglio di uno scaler ?
Ma cosa costa tutto questo Arduino ?



Avatar utente
Enotria
Senior
Messaggi: 283
Iscritto il: 08/10/2015, 17:15
Località: Ferrara
Contatta:

Re: Giocando con Arduino 1

Messaggio da Enotria » 28/05/2016, 7:55

La media progressiva MP non è altro che una diversa forma di scaler, solo che nella sua forma classica tu devi, prima di iniziare la misurazione, decidere già quale tempo di conteggio dare, invece, nella media progressiva, la fine del conteggio lo decidi tu in corso di misura, appena vedi che il valore della misurazione si è stabilizzato.

Ti faccio notare che comunque, pur essendo due diverse metodiche di misurazione su base temporale lunga, hanno modalità di esecuzione opposte.
Nel caso classico, tu decidi il tempo, fai partire la misurazione e poi te ne vai a fare altre cose.
Nella MP, tu devi restare sul posto, a guardare come evolve la misurazione, per poi decidere lo stop.

Quindi la modalità migliore da usare dipende da cosa devi fare tu: se ti fa comodo fare contemporaneamente altre cose, ti va meglio lo scaler classico, se non hai altro da fare, fai prima con la MP.


Andrea

URL: [External Link Removed for Guests]

Ogni oggetto ha la sua storia,
. . . io non vendo oggetti,
. . . . . . io racconto storie. (Enotria)

Avatar utente
amarturini
Senior
Messaggi: 243
Iscritto il: 23/03/2016, 18:46
Località: Milano
Contatta:

Re: Giocando con Arduino 1

Messaggio da amarturini » 28/05/2016, 10:32

Beh, se usi lo scaler e, poniamo, usi 30 minuti di integrazione e poi usi un Geiger che usa la MP e lo lasci a misurare per 30 minuti dovresti ottenere la stassa misura, anche se il Geiger con la MP la raggiunge prima.
A questo punto, se ti fa comodo fare contemporaneamente altre cose, puoi usare anche il Geiger con la MP: è sprecato (non serve così tanto tempo), ma va bene lo stesso. Da questo punto di vista è più universale.

Ciao,
Alberto


Se io ho una moneta, tu hai una moneta e ce le scambiamo, ciascuno ha una moneta. Se io ho un'idea, tu hai un'idea e ce le scambiamo, ciascuno ha due idee.

Avatar utente
andreacos
Senior
Messaggi: 370
Iscritto il: 08/10/2015, 22:20
Località: Mestre

Re: Giocando con Arduino 1

Messaggio da andreacos » 28/05/2016, 11:05

Oppure memorizzando il valore della MP in una variabile lo puoi testare con il valore precedente e, dato un parametro di differenza per il quale si può sufficientemente dire che la media si è stabilizzata - una volta che questo è vero, bloccare il conteggio



Rispondi

Torna a “Altro”