in data 06-10-2009 05:07 AM
Salve a tutti!
Vi pongo una domanda forse banale, ma come faccio a conoscere la massima frequenza di acquisizione di una scheda? Sto lavorando con un NI PXI-6071E.
Cosa comporta se nell'impostazione del DAQmx con un clock esterno inserisco in Rate(Hz) una frequenza minore di quella massima?
Grazie!
in data 06-11-2009 03:50 AM
Ciao nuvola,
dato che la scheda PXI 6071E prevede un campionamento massimo di 1.25 MS/s "aggregate" (se usi un canale 1.25 MS/s, con due canali 625 KS/s per canale etc...) la frequenza massima che puoi acquisire dipende dal numero di canali che stai acquisendo. Ovviamente poi devi tenere conto del teorema del campionamento che afferma che la frequenza di campionamento deve essere almeno il doppio della frequenza del segnale.
Quindi ricapitolando, se acquisisci un solo canale, potresti avere un segnale da 625 KHz, con due canali 312.5 KHz etc...
Se usi un clock esterno il concetto non cambia, l'unica differenza è che magari non sarà da 1.25 MHz come quello della scheda, ma avrà una frequenza minore. L'importante è che non superi 1.25 MHz, dato che quella è la frequenza massima di campionamento che la PXI 6071 accetta.
Spero che lo scenario ti sia un pò più chiaro adesso.
Ciao,
in data 06-11-2009 10:15 AM
Grazie mille, anche se c'è ancora qualche cosa che mi sfugge.
Ho un sistema capace di generare un segnale periodico e di variare il periodo del clock esterno, come posso fare per conoscere tale periodo o la frequenza?
Grazie!?
in data 06-11-2009 03:14 PM
Per misurare la frequenza o periodo di un segnale devi fare una misura usando uno o due counter della scheda.
Vai in Help -> Find Examples e nella sezione "Hardware Input and Output -> DAQmx -> Counter Measurement" troverai qualche esempio utile per iniziare a programmare.
Guarda anche questo link per avere una idea della misura da fare:
Frequency Measurements: How-To Guide
http://zone.ni.com/devzone/cda/tut/p/id/7111
Ciao,
in data 06-12-2009 04:54 AM
I tuoi consigli sono stati preziosi!
Ancora una piccola domanda, ho creato un .VI che attraverso il DAQmx (analog input) legge in continuo (ciclo for) un segnale ciclico generato da un simulatore. Vorrei inserire in parallelo il DAQmx (counter input) per il calcolo del periodo del clock esterno in modo che allo stop del ciclo si fermi tutto. Come posso fare? Per ora ho creato due cicli for distinti ma capita che quando uno si blocca l'altro continua a girare.
Grazie!
in data 06-12-2009 07:12 AM
un'altra curiosità:
Sto acquisendo il mio segnale ciclico imponendo un sample to read 3600 e un rate di 100000 in questo modo ho un dt=0.0001 e acqusisco per ogni ciclo 3600 valori. Come posso fare per aumentare il numero di acquisizioni per ciclo? se modifico rate(Hz) varia solo il dt, se vario sample to read mi acquisisce più cicli ad esempio imponendo un sample to read=7200 ottengo 2 cicli, io invece vorrei 7200 punti per 1 ciclo!
Grazie !!!
in data 06-16-2009 04:18 AM
Ciao nuvola,
se utilizzi due cicli in parallelo, uno per l'acquisizione e l'altro per il counter puoi ad esempio usare una variabile locale per fermarli entrambi.
Immagino che in un ciclo ci sia il tasto di stop; clicca con il tasto destro del mouse sullo stopp nel block diagram e seleziona "Create-> Local variable".
Inserisci questa variabile nel secondo ciclo e vedrai che si fermeranno contemporaneamente. L'unica cosa a cui devi stare attenta è che devi modificare il mechanical action del tasto di stop, da "Latch" a "swithch" perchè la variabile locale non supporta la modalità di tipo latch.
Ciao,
in data 06-16-2009 04:24 AM
Non credo di aver capito bene l'ultima curiosità...
Se tu imponi un numero di samples to read pari a 3600 significa che ad ogni iterazione del ciclo while leggerai 3600 campioni, se invece imposti 7200 leggerai per ogni iterazione 7200 campioni.
Che cosa non ti torna?????
in data 06-16-2009 06:58 AM
Purtroppo non è così! Ho notato che con simple to read 3600 ottengo 1 ciclo con 3600 punti, con simple to read=7200 ottengo 2 cicli ogniuno formato da 3600 punti! se pongo simple to read =5400 ho 1 ciclo +1/2 ciclo!
Invece io vorrei poter avere più o meno punti nello stesso ciclo.
Grazie!
in data 06-16-2009 08:11 AM
Mi pare veramente strana come cosa...Non è che per caso puoi allegare il codice di cui stiamo parlando, in modo da darci una occhiata?
Grazie,