Sistema NIM - ArduNIMPulser

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

Sistema NIM - ArduNIMPulser

Messaggio da marconmeteo » 23/07/2017, 11:41

Partendo da quanto a suo tempo fatto da Elio con il suo Pulser2 per Arduino: [Local Link Removed for Guests] ; (e di cui avevo partecipato ai semplici test) e in conseguenza della disponibilità di un modulo NIM di un amplificatore non funzionante e reperito per pochi euro sulla baia, ho deciso di provare a riprendere in mano quel progetto ed ecco la storia di quanto ho realizzato.
Inserisco intanto un paio di foto dell'oggetto al termine della realizzazione ed in fase di test.
IMG_3772.JPG
IMG_3771.JPG
IMG_3769.JPG
Premetto che il firmware per Arduino è opera di Elio, io ho solo aggiunto un display Nokia 5110 per visualizzare i valori della frequenza e larghezza degli impulsi (la scelta del display è stata dettata dal fatto che le dimensioni dovevano essere compatibili con il modulo NIM) e una serie di doppi pulsanti a levetta per la selezione dei parametri (Elio nel suo sketch utilizzava il monitor seriale di Arduino per impostare e leggere i valori, ma non potevo avere un modulo NIM sempre collegato al PC :D :D ).

Gli impulsi PWM in uscita da Arduino (sui terminali 9 e 10) sono inviati ad un circuito buffer e formatore, con selezione di impulsi positivi o negativi.
Successivamente vengono inviati ad un amplificatore ( per adattare il livello degli stessi a quanto previsto dalle norme NIM), quì possiamo prelevarli ad un apposita uscita, oppure prelevarli da un altra uscita, dopo averli inviati ad un attenuatore a passi (con impedenza 100 ohm, sempre da norme NIM).
ArduNIMPulser.jpg
NIMPulserSchema1.jpg
NIMPulserSchema2.jpg
Ovviamente il tutto può venire realizzato utilizzando un altra tipologia di display (ovviamente modificando i collegamenti hardware e lo sketch) e altri sistemi di comando (ad esempio encoder rotante e selezione parametri tipo menu; devo dire che ci avevo pensato ma lo ho ritenuto più scomodo nell'utilizzo immediato).
Nei prossimi post inserirò lo sketch e altre foto della realizzazione.

Un grazie ad Elio per il suo ottimo lavoro con il firmware, che lavora in modo ottimale !!
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.


[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: Sistema NIM - ArduNIMPulser

Messaggio da eliocor » 23/07/2017, 16:16

Bello!!!


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


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

Re: Sistema NIM - ArduNIMPulser

Messaggio da marconmeteo » 24/07/2017, 21:42

Grazie dei complimenti, spero che il lavoro possa servire da spunto ad altri.

Continuiamo con alcune foto della realizzazione, per iniziare, del pannello frontale:
IMG_3680.JPG

per poter fissare in posizione il display Nokia, ho utilizzato quattro bulloncini a testa svasata da 3 MA, fissati in posizione con colla epossidica bicomponente.
Il trucco per fissarli nella posizione corretta è quello di avvitarli al display negli appositi fori di fissaggio (attenzione che alcune versioni hanno fori da 2,5 mm) e fissare il tutto mettendo una piccola goccia di cianoacrilato sulla testa svasata di ogni vite; ad asciugatura della colla, togliere i dadetti di fissaggio del display, rimuovere quest'ultimo e rinforzare la base delle viti con l'epossidica. Il giorno successivo è possibile rimontare il display.
IMG_3683.JPG
IMG_3686.JPG

Continuiamo con il montaggio dei vari elementi (pulsanti, potenziometro, prese, ecc.) sul pannello
IMG_3684.JPG

e con il loro cablaggio.
IMG_3699.JPG

Cominciamo poi a fissare i nostri circuiti, in primis la scheda Arduino UNO; per facilitare la cosa ho ritagliato un pezzo di lastra di ABS fissata poi alla struttura del modulo NIM, utilizzando dei fori preesistenti (servivano a fissare lo stampato del circuito originario).
Tale lastra, di materiale plastico, consente un agevole fissaggio di qualsiasi scheda o particolare, senza preoccuparsi dell'eventuale isolamento.
IMG_3692.JPG
Successivamente altre foto del proseguio del lavoro di assemblaggio, ma come promesso, ecco il file dello sketch da caricare in Arduino:
Pulser_v3_0b17.rar
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.


[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
zoomx
Messaggi: 144
Iscritto il: 28/04/2017, 9:27

Re: Sistema NIM - ArduNIMPulser

Messaggio da zoomx » 25/07/2017, 11:48

Bello!

Ma non so cosa sia. Mi sembra un generatore di impulsi che, immagino, serva a simulare gli impulsi di un tubo Geiger o di altro sensore.

La libreria per lo schermino Nokia dovrebbe essere questa
[External Link Removed for Guests]
Con l'ultimo compilatore 1.8.3 e core Arduino 1.6.19 ho provato che ctype.h può essere omesso, come pensavo.



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

Re: Sistema NIM - ArduNIMPulser

Messaggio da marconmeteo » 25/07/2017, 21:04

Esatto zoomx, serve a generare impulsi, di forma e larghezza particolare, per il controllo e la taratura di contatori, scaler, ratemeter ed altro.
Puoi vedere il progetto realizzato a suo tempo da Enotria/Bosi quì: [Local Link Removed for Guests] ; e prendendo spunto da questo, quello che ho a suo tempo realizzato, sempre come modulo NIM: [Local Link Removed for Guests] ;

La libreria per il Nokia è proprio quella e ti ringrazio per aver messo il link (per chi ne avesse necessità) e confermo che ctype.h può essere omesso, io lo ho lasciato perchè era nella parte di codice realizzata da Elio e per completezza è rimasto.

Lo strumento può venire comodamente realizzato come apparato da laboratorio, in questo caso, non essendoci vincoli di spazio, utilizzerei un bel display 4 x 20.


[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: Sistema NIM - ArduNIMPulser

Messaggio da eliocor » 25/07/2017, 21:57

Devi tenere conto che sono abituato a scrivere codice per ambienti diversi da arduino e quindi sono necessari gli "#include" ad alcuni file di definizione.
Il fatto che su arduino tu possa evitare di farlo è proprio una delle ragioni per cui non mi piace in alcun modo tale "sistema di sviluppo": nasconde troppe cose a chi scrive il codice. Il che non è una buona cosa, specialmente se poi si passa a "cose" più serie.
Se puoi ti consiglio di passare a [External Link Removed for Guests] che sarà ancora in beta, ma è molto più affidabile e nella fase di compilazione non crea un unico blob con tutti i file/librerie come invece fa l'IDE di arduino: il risultato è una compilazione (via makefile like) fulminea del tuo codice.
Altro grossissimo problema degli ambinetii di sviluppo per arduino è che NON ESISTE un debugger e devi risolvere con dei print sulla porta seriale: buono per applicativi di minime dimensioni e basta!


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

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

Re: Sistema NIM - ArduNIMPulser

Messaggio da marconmeteo » 25/07/2017, 22:08

Grazie Elio, non conoscevo UECIDE, ho dato un occhiata veloce al link e sembra molto interessante....mi riservo di guardarlo attentamente con calma.


[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
zoomx
Messaggi: 144
Iscritto il: 28/04/2017, 9:27

Re: Sistema NIM - ArduNIMPulser

Messaggio da zoomx » 25/07/2017, 22:43

Ho un po' di roba Arduinica da finire che altrimenti non finirò mai, niente a che fare con radiazioni.
Aggiungo questa.
Per lo schermo pensavo un TFT con touch ma prima lo faccio con interruttori e schermo Nokia.
UECIDE lo devo provare. Ho provato VScode Microsoft (non è VStudio) con il plugin Arduino ma a quanto ho capito si appoggia al compilatore dell'IDE Arduino. L'editor è migliore ma non ci voleva molto.

Edit:
Primo lancio di UECIDE. Poiché compila come i veri compilatori, cioe prima tutto e poi solo ciò che cambia (per cui non ricompila più le librerie!) è ovviamente più veloce, cosa molto utile per il mio vecchio portatile ma anche per il desktop.
Il problema è che è indietro con i core esistenti, a volte poco come per Arduino, a volte tanto come per il core MSP430. Anche con le librerie mi sembra indietro ma questo è facilmente superabile. Lo sviluppatore, Matt Jenkins, mi sembra più orientato alla piattaforma ChipKit. Il che non è male. Però è solo.
Ci vorrebbe una sorta di integrazione con l'IDE Arduino in modo da sfruttarne i repository e la possibilità di aggiornamento alle ultime versioni. Attualmente quella dell'IDE di Arduino è fatta benino, ti vengono suggeriti gli aggiornamenti e c'è la possibilità di usare versioni precedenti. A patto che i pacchetti vengano costruiti bene e non capiti ciò che è capitato proprio poche settimane fa con una libreria Adafruit, la Playground, che non riusciva ad aggiornarsi e segnalava ad ogni lancio dell'IDE, di aggiornarsi.
Il forum non mi funziona, non mi appare nulla.



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

Re: Sistema NIM - ArduNIMPulser

Messaggio da marconmeteo » 27/07/2017, 22:38

Proseguo con la descrizione del Pulser:

Foto del PCB con i circuiti di buffer, formazione impulsi, amplificatore ed attenuatore.
IMG_3698.JPG

A questo punto si prosegue con il cablaggio fra i vari elementi.
IMG_3701.JPG

Realizzato ex-novo il pannello posteriore di alluminio.
IMG_3754.JPG

E terminazione del cablaggio.
IMG_3761.JPG
IMG_3762.JPG

Sul pannello posteriore, oltre ai due trimmer multigiri per la regolazione della forma degli impulsi, ho inserito la presa USB (collegata alla scheda Arduino) ed il pulsante di reset. Questi consentono l'aggiornamento del firmware, in futuro, senza dover aprire il modulo.
IMG_3763.JPG
IMG_3764.JPG

In seguito inserirò le foto di alcune prove strumentali.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.


[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

Rispondi

Torna a “Nuclear Instrumentation Module (NIM)”