24 canali con 8000 misure e con 3Byte sono giá 500kHz di dati. Se li vuoi memorizzare (eeprom interna o esterne sono troppo lente) hai un altra volta 500khz di dati che escono da Arduino e vanno alla memoria.
La tua osservazione è giusta se ti riferisci alla rifrazione, per masw remi e hvsr 500 hz sono sufficienti 8 occorre analizzare ferquenza massime si 20 80 hz. per la rifrazione si potrebbereo usare 12 arduini che in funzione della frequenza di acquisizione che si vuole utilizzare la durata può variare da 1/10 si secondo 8000 hz circa fino ed oltre i 500 msec Ma questa soluzione la sconsiglio perchè ( come ho scritto ) esistono acquisitori a 24 bit usb a 16 bit con gani settabile per ogni singolo canale da 1 a 100 x delle dimensioni di un smq e del peso di qualche ettogrammo.... costo 1000 euro ( meno di 24 arduini + 24 amlificatori, assemblaggio e molto più veloce 1 ghz multiplex.
L' arduino per questo é troppo poco potente.
si certo ma il bello è proprio qui, realizzare qualcosa di funzionale con un acquisitore al limite. in passato si lavorava con acquisitori a 8 / 12 bit , cioè con valori +/- 125 +/- 512 0pportunamente amplificati Ora si è andati a valori di +/- (2^24)/2 ma il rapporto segnale / rumore rimane sempre il medesimo sono sicuro se dovessero essere commercializzati acquisitori a 32 o 64 bit molti produttori costruirebbero strumenti del genere , in questo modo 20 bit sarebbe il segnale vero massimo 12 - 48 bit non sarebbe altro che rumore ............. e il rapporto segnale rumore sarebbe sempre uguale a quello di un 8 bit adeguatamente amplificato......!!!!!!!!!!!!!!
L'alternativa vedo un PC con una scheda audio professionale che ha abbastanza entrate e anche la risouzione richiesta. (costa qualche centinaio di Euro).
Certo, già realizzato il sismografo sound blaster, prestazioni in sensibilità e qualità del segnale ottimo
il link è una verisnte per stazione sismica
Problemi eccessiva velocità di acquisizione scheda audio minimo 8000, non è un problema si buttano via dei dati
e canali per avere un 12 canali ne occorrono 6, tener con un 4 core si potrebbero gestire 16 canali con notevoli problemi software, addomesticare una scheda audio non è facile, 16 ancora di più
Per la sismica a rifrazione non ci sono problemi, ma per il masw, remi, hvsr il problema più grosso è che la sound blaster e filtrata per frequenze sotto i 7 -10 hz, proprio i valori che interessano i metodi basati sui microtremori.( motivo che mi ha fatto desistere di portare avanti il progetto. si può ovviare o costruendo una set di 6 - 8 schede audio non filtrati, o co particolari tecniche che permettono di portare ad un paio di hz la frequenza minima ma che non mi convincono sulla bontà del risultato finale ...
Poi qualcuno mi deve spiegare perché sono un ADC con 8 bit e un amplificatore confrontabili a un ADC a 24 bit?
Non ho capito la tua domanda... prendiamo l'arduino 10 bit che amplificato con gain 1000 x ha una dinamica pari a 10 bit che amplificato di 10024 x ottiene una sensibilità finale pare a quella di un 20 bit ( andare oltre i 20 bit si acquisisce solo rumore ambientale e strumentale. ( tenere presente che se un 24 bit si tira su frequenza superiori a 2000 4000 hz perde dinamica di almeno 2/4 bit...
logicamente il 24 bit ha una maggiore " frofondità di campo " se vogliamo usare un termine della fotografia, ma con opportune opzioni software è possibile settare il 10 bit in modo da avere un giusto settaggio dell'amplificatore.
"Il problema con un Sismografo é che si hanno dei segnali"
attenzione , stiamo parlado di sismica indotta o microtremori e non di sismologia ( terremoti) In tutti i casi si può settare l'amplificazione istante per istante pilotando l'amplificatore ( aumentere l'amplificazione se si riducono le vibrazioni , il contrario se aumentano)
Il range di dinamica é la differenza tra l'ampiazza del segnale minimo e quello massimo.
giusto ( per i terremoti non va bene neanche il 24 bit ad ogni valore di scala l'amplificazione aumenta di 36 volte se ricordo bene, e i valori di scala sono una decina... va il conto e vedrai che >> si 2^24
Quant é la banda di frequenza che si misurano coi sismografi? per la sismologia, hvsr, da 0.1 a 30 hz masw e remi 2- 100 hz per rifrazione 5 - 500 hz
ho letto con interesse il tuo post Tu hai indicato i parametri tecnici di una configurazione di un sismografo superdotato.... Ti ricordo però che i primi sismografi avevano tecnologia a 8 bit costavano 40.000.000 lire e permettevano di fare una ottima sismica.
Esistono due maniere per affrontare il problema 1) il primo adottando le massime potenzialità che offre il mercato tipo la ferrari per poi non poter superare i 130 km/h sull'autostrada 2) usare strumentazioni meno soffisticate ( una Fiat 100 che può raggiungere i 130 km/h sull'autostrada) e dotarla di sitemi software hardware intelligenti che cercano di autosettarsi automaticamente per ridurre il divario tecnologico e sfruttare al massimo la tecnologia a disposizione.
faccio un esempio: se vogliamo registrare un terremoto possiamo usare un adc a 24 bit che ha una buona dinamica , ma anche al limite un acquisitore a 8 bit intelligente che durante l'acquisizione verifichi il valore massimo acquisito nell'ultimo secondo e in base a ciò piloti un amplificatore a guadagno variabile. E' sufficiente, in fase di registrazione salvare il valore letto moltiplicandolo per il gain applicato in quell'istante. In questo modo di ha una dinamica ( caso limite ) per un 8 bit e gain 4096 pari a un adconverter = a un 20 bit se utilizziamo un 16 bit con cain 1024 otteneiamo un acquisitore equivalente a un 28 bit ecc. Non dimentichiamo che oltrepassando la sensibilità di un 16 bit con gain 1 incominciamo a registrare i microtremori, quindi utilizzando una dinamica a 24 bit o equivalente superiore il rumore ambientale ed hardware incide di un fattore +/- 250 --- +/- 1024 , amplificare a 10 metri do un treno in partenza il suono di una banda, amplificando il segnale , amplificheremo anche il rumore e quindi le cose non cambiano...
Il discorso potrebbe diventare molto lungo, preferisco non andare oltre....
Torniamo al tuo progetto.
da qualche mese ache io sto sperimentando l'arduino per realizzare un progetto analogo.
Ho fatto dei test:
per stazione sismica a 1/3 canali non ci sono problemi * acquisizione e visualizzazione in tempo reale. fattibile 20 100 campioni per canale ( di più non servono ), massimo 3 canali.
vedere il video:
Per prove hvsr a tre canali acquisendo e poi visualizzando il segnale si può superare abbondantemente i 150 - 200 campioni al secondo, frequenza utilizzata normalmente per questa applicazione ( si può arrivare e superare i 1500 campioni al secondo per canale ( massimo 3 )
Per il remi e masw si possono raggiungere i 500 campioni x 6 canali , pertanto se si vuole un 24 canali occorrono 2 a 4 arduini
Per la rifrazione e riflessione la cosa è fattibile utilizzando di ogni arduino al massimo 3 canali, in questo modo la frequenza a canale potrebbe essere portata a 2000 + campioni a canale , occorrono 6 arduini
Da test fatti ogni arduino per frazioni di tempo brevi per rifrazione ( attivando solo 1 canale si possono acquisire oltre 8500 campioni a canale) , riducendo tale velocità si può allungare la durata dell'acquisizione.
Essendo Arduino un 10 bit è carente di dinamica ma si può ovviare con un gain variabile e una gestione software intelligente progetto che vorrei presentare ai tecnici dell'Arduino per produrlo di serie e metterlo a catalogo, sono molto sicuro che la cosa del genere sarebbe molto apprezzata da tutti noi.
Anche se quest'ultima applicazione è fattibile la mia idea è quella di fare qualcosa di diverso dal sismografo tradizionale.
Se ci si guarda attorno esistono anche unità di acquisizoni tradizionali a 16 bit - 24 canali con gain settabile per ogni singolo canale 1 - 100 del costo di un migliaio di euro e frequenza di campionamento elevatissima >> a quella necessaria, il tutto contenuto in un volume di 12 x 12 x 4 usb ( 24 arduini ( 1 per canale) + amplificatori + assemblaggio avrebbe il medesimo costo con prestazioni inferiori....
* Nota: attenzione, i valori orientativi indicati sono riferiti a routinne di acquisizione molto compatte e coadiuvate da un PC relativamente veloce per il trattamento dei dati e diversificate bassa velocità , media velocità , elevata velocità.
ok per verificato che si possono trasmettere > 1500 dumeri interi il problema perà è l'acquisizione di dati
se si fa un for next per acquisire 1000 campioni si ottiene una frequenza di campionamento da un canale pari a 9500 campioni al secondo
se aggiungiamo println... tale frequenza dimezza se poi aggiungiamp altri if la frequenza scende ulteriorment anche sotto a 300 hz per canale multiplex attivando 6 canali
esiste qualche sistema per aumentare la frequenza di campionamento ?
non confondiamo accelerazione di un moto con accelerazione terrestre L'accelerazione terrestre non viene misurata da un accelerometro perchè è costante ( a meno che non stiamo precipitando nel vuoto asse z ) quello che l'accelerometro misura è l'accelerazione di un corpo nelle tre direzioni x,y,z . se sono in auto fermo ed accelero . l'accelerometro misura l'accelerazione lungo l'asse di direzione , quando poi raggiungo la velocità di crociera ( v= costante) l'accelerometro si azzererà quando freno avrò un'accelerazione contraria proporzionale alla frenata quando l'auto si ferma l'accelerazione è uguale a zero. Ciò accade in tutti e tre gli assi.
per quanto riguarda la rotazione di 90 gradi, l'accelerometro la può stimare solo se compiamo una curva di novanta gradi con un certo raggio, se la rotazione avviene sull0asse senza spostamenti lungo i tre assi, l'accelerazione =0
in tal caso occorre usare i/3 girroscopi. esiste in commercio un accelerometro a tre assi con tre girroscopi, in tal caso è possibile avere maggiori informazioni sul moto comprese le rotazioni sull'asse girroscopico.
se integri una volta l'accelerazione ottieni la velocità, se integri i dati della velocità ottieni lo spostamento nei tre assi e quindi istante per istante conosci la tua posizione .
Nel tuo caso visto che il percorso viene ripetuto più volte , puoi ad ogni giro ridistribuire l'errore dx,dy,dz in modo che le coordinate del punto di partenza coincidano con quelle del punto di arrivo e gli eventuali errori vengano compensati ( post processing )
come elaborato finale potresti tracciare un grafico con le progressive dei tempi, l'accelerazione,la velocità, lo spostamento per ogni istante e per ogni asse e le coordinate xyz.
ps attenzione devi conoscere le caratteristiche dell'accelerometro ed eseguire una serie di test per ottimizzare il programma.
Sono banali tecniche utilizzate nel campo della sismologia e/o dell'ing. sismica per monitorare le oscillazioni del terreno o dei fabbricati in caso si sisma o reale o indotto.
Carissimo brainbooster Per quanto riguarda la tua idea di usare degli avvolgimenti con tante spire, la cosa è possibile ma esistono delle difficoltà tecniche per avere una buona sensibilità, nella sismica occorre avere sensori con frequenza propria almeno sotto i 4,5 hz, conviene usare geofoni li puoi trovare anche a 10 - 15 euro da 14 hz. contattami che ti dirò dove. L'altro problema è quello costituito dalle molle che devono sorreggere le spire mentre il magnete all'interno deve essere fermo ( guarda lo schema su wikipedia cercando geofono.
Meglio usare accelerometri costano meno di 20 euro 3d da 1,5 g e riescono a leggere frequenze da 0.1 a 400 hz invece di 4.5 - 600 hz di un geofono classico, quelli 3d permettono di leggere le tre componenti di un sisma, attenzione , in tal caso il segnale acquisito dovrà essere integrato , altrimenti vedresti il grafico sismico in modalità accelerometrica e non come velocimetro, modalità quest'ultima normalmente utilizzata in campo sismologico
comunque se vuoi, puoi trovarmi su facebook dove gestisco un gruppo che tratta queste cose, sei il ben venuto.... http://www.facebook.com/home.php?
Questo invito è rivolto a tutti coloro che interessa l'argomento
certamente, sono disposto a condividere il progetto con tutti coloro che sono interessati per dare schemi e la sorgente per gestire arduino, sono 3/4 righe di comandi, compreso il software free da me realizzato per gestire i dati acquisiti.
Per questo motivo cerco persone interessate per portare avanti altre applicazioni nel campo della geologia e della geofisica.
Vorrei ringraziare tutti coloro che con i consigli mi hanno aiutaro a realizzare il sismografo dolquake a tra canali
Sono le prime acquisizioni, il programma è in fase di potenzamento e miglioramento, tutti coloro che sono interessati possono contattarmi.
Cerco aiuto per realizzare l'hardware, ho qualche problema di vista e con il saldatore litigo spesso.....
Sono invitati in particolare tutti i geologi, geotecnici ed ingegneri , per realizzare una serie di strumenti di geologia, geofisica, geotecnica, più siamo meglio è per tutti...
Vorrei sapere acquistando l'Arduino 2009 a parte il collegamento dei trasduttori cosa si deve fare a livello hardware ?
Il software allegato permette di impostare il n° di canali da attivare, la frequenza di campionamento e la durata dell'acquisizione in maniera semplice e veloce , e terminata l'acquisizione è possibile recuperare i dati acquisiti come file salvati nel pc ? oppure occorre mettere a punto un software personalizzato?.
In attesa d'imparare la programmazione dell'hardware vorrei poter utilizzare un software di base per iniziare ad acquisire i dati numerici, salvarli e poterli poi trattare in php , è possibile ?
vi ringrazio tutti per le sollecite risposte, pensavo ri ricevere una risposta magari fra tre mesi forse.......
Mi spiego meglio desidero acquisire delle misure di vibrazione e ho bisogno di un acquisitore dati, i parametri sono quelli illustrati nel primo post.
probabilmente Arduino acquisisce solo da 0 a 5 volt, io avrei invece bisogno +/- 2,5 volt, ma questo problema è sormontabile facilmente aggiungendo un 2,5 volt al segnale acquisito in modo che i + 2,5 volt diventano 5, o = 2,5 v e - 2,5 volt=0
rispondo a Federico Vanzati
il mio programma è in vb, imposto frequenza di campionamento e durata acquisizione
quando sono pronto ad acquisire clicco il pulsante acquisisci.....
a questo punto arduino inizia ad acquisire con un ciclo di attesa, verifica se dal canale 1 o da un trigger elettronico di chiude il circuito, se è no ripete, se si inizia ad acquisire e in qualche modo questi dati dovranno essere catturati e salvati in un arrari costituito da 6 colonne e tante righe quanti sono i dati acquisiti... l'array verrà salvato e poi a post processing i dati verranno elaborati e visualizzati.
occorre la massima sincronizzazione tra starter e inizio acquisizione.
Giuste le osservazioni di Calamaro ,
frequenza di campionamento 200 hz per canale , durata 4 minuti frequenza di campionamento 500 hz per canale , durata 4 secondi frequenza di campionamento 3000 hz per canale , durata 0,5 secondi
canali 6
le tre modalità di acquisizione solo una arriva a 3000 hz una a 500 hz e una 200 hz
questi sono i valori di campionamento sufficienti perchè nel primo caso le frequenze che desidero monitorare sono inferiori a 600 - 1000 hz nel secondo caso da 1 a 100 hz e nel terzo inferiori a 40 hz
Vi ringrazio tutti per i cortesi consigli ricevuti, spero di diventare anch'io un " arduinomane...." Vi terrò informati sullo sviluppo dei miei progetti, che saranno opensouce free ed inseriti in un sito che sto allestendo - sarete citatti tutti, è il minimo che posso fare...