in data 07-16-2009 09:45 AM
Ciao Andrea,
ti scrivo in italiano che facciamo prima.
tu hai ragione, io ho provato a fare un'acquisizione alla volta, ma poi in tempo di campionamento nn è più lo stesso. In sostanza io devo acquisire la frequenza di un encoder situato su di un banco prova auto, dal quale ricavarmi la coppia e la potenza. dalla frequenza ricavo la velocità e da essa l'accelerazione con il rapporto incrementale( corretto cn la retta di regressione), perciò il Tempo di campionamento deve essere precisissimo, altrimenti la derivata mi viene un casino.
hai qualche idea su come posso fare la misurazione, la quale deve fermarsi dopo una cert vrequenza, poichè sennò la macchina si fonderebbe.
grazie mille per la messaggistica quasi istantanea
in data 07-16-2009 10:18 AM
Ciao,
non c'è nessun problema, non ti devi scusare. E' solo che è bene tenere separati i forum in inglese da quelli in altre lingue :).
Tornando a noi...
Come dicevo pocanzi, se devi interrompere l'applicazione quando si supera un certo livello di frequenza puoi effettuare una lettura a singolo campione. Puoi usare l'esempio che trovi in "Help->Find Examples" e selezionando "hardware Input and Output-> DAQmx-> Counter measurements -> Period or pulse width->Meas Pulse Width-Buffered-Sample Clock-Cont.vi.
Sistema l'esempio mettedo il numero di campioni da leggere pari a 1 e modificando il tipo di task,ovvero scegliendo "Counter Input->Frequency" nella DAQmx Create Channel.
Se il tuo clock non è velocissimo non dovresti avere problemi di riempimento del buffer della scheda.
Ciao,
in data 07-16-2009 10:29 AM
Ciao Andrea,
se metto 1 campione nn va più bene il timing, poichè ne richiede uno IMPLICIT, poi anche se ndava bene, questo sistama può garantirmi lo stesso Tempo trascorso tra un campione e l'altro??? nn è un sistema real time o deterministico. ho provato anche cn il time loop, ma neanche lui mi garantisce un tempo di campionamento costante. allora sono riuscito a mettere un clock esterno in cambio di una misura di conteggio(da cui mi ricavo la frequenza), ma devo assolutamente avere un tempo di campio definito e sicuro.
hai qualche idea?? io nn so più cosa fare
07-17-2009 05:09 AM - modificato 07-17-2009 05:16 AM
Ciao maurino,
effettivamente la tua scheda non permette di settare un clock esterno.
L'unico modo che hai per usarla è in modalità implicit...
Mi viene in mente un altra soluzione: usare un timed loop cloccato esternamente e all'interno del loop fai una singola acquisizione di un campione.
Ciao,
in data 07-17-2009 05:29 AM
ciao,
se lo clocco esternamente, il timed loop mi garantisce di avere un tempo tra una acqusizione e l'altra semre costante, che dipenda solo dal clock esterno e nn dall'istantanea priorità che ha il sistema operativo Windows????
grazie
in data 07-17-2009 05:40 AM
in data 07-17-2009 05:51 AM
in data 07-17-2009 06:50 AM
Nel timed loop hai la possibilità di avere informazioni sulle iterazioni correnti, precedenti, etc...
Queste informazioni le trovi all'interno del loop cliccando con il tasto sinistro del mouse sul terminale che di default è "error".
Ti allego un immagine che chiarisce questo concetto.
Ciao,
in data 07-17-2009 09:32 AM
in data 07-17-2009 09:46 AM
Ciao,
puoi usare l'esempio di questo forum come punto di partenza:
http://forums.ni.com/ni/board/message?board.id=40&message.id=5146&requireLogin=False
Ciao,