From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Forum Italiano sui Prodotti NI

annulla
Visualizzazione dei risultati per 
Cerca invece 
Intendevi dire: 

acquisire 2 canali in single-point mode con sample clock esterno

Salve a tutti,
  come sempre ho un problema con un metodo di acquisizione di segnali e come sempre confido nella vostra pazienza, ma ancor prima nella vostra esperienza! Il mio sistema di misura è composto da un controller 8350, uno chassis 1042 e una scheda di acquisizione multifunzione della serie M PXI-6284; la versione di LabVIEW è la 8.0 e il sistema operativo è Windows XP Professional.
Il mio scopo è quello di dover salvare i dati di due segnali solo ed unicamente sul fronte di discesa/salita di un segnale di clock dato esternamente al sistema di acquisizione. Spero di essere stato chiaro: in parole povere vorrei salvare solo i singoli punti delle due forme d'onda che corrispondono al fronte di salita/discesa di un segnale di clock esterno.
E' qui che sorgono i maggiori problemi: è vero che ci sono decine di esempi sul sito, ma sono tutti riferiti all'acquisizione di un singolo canale e non appena provo ad estendere l'esempio a due canali nascono ulteriori problemi che in qualche modo mi sconfortano....Praticamente è da più di una settimana che giro intorno a tale problema e l'unica VI che più mi soddisfa è quella che ho postato, ma non sono ancora del tutto convinto, soprattutto perché la subVI "wait for next edge clock" si dovrebbe usare in un sistema real-time e il mio non è un sistema di acquisizione real-time.
Quello che mi tormenta è il fatto di non riuscire a provare in qualche modo se sto acquisendo correttamente i valori sul fronte di salita/discesa del mio segnale esterno, oppure è solo un'impressione.

Qualcuno mi saprebbe indicare se sto facendo bene oppure se devo cambiare strada??...(e ovviamente quale mi consiglierebbe di prendere :-)!)

Infinitamente Grazie
    Francesco
Scarica tutti
Messaggio 1 di 3
4.382Visualizzazioni

Ciao chicco7406

Vediamo cosa possiamo fare. Non mi è chiaro un aspetto: i valori che ti interessa acquisire sono unicamente quelli sul fronte di discesa e di salita entrambi della sorgente esterna di clock o su uno solo dei due?

Per capire un po' meglio le tue esigenze mi sapresti indicare quali erano i "maggiori problemi" che hai incintrato? Quale aspetto ti blocca dell'applicazione che hai postato? Vorrei cercare di capire su quale aspetto della catena di acquisizione focalizzare l'attenzione per migliorare il codice.

In ultimo, il subVI "wait for next edge clock" non è realizzato unicamente per utilizzo su sistemi Real-Time, è solo che una impostazione può essere settata solo su sistemi Real-Time.

Attendo tue notizie.

Hudson | AE NIIT

0 Kudos
Messaggio 2 di 3
4.374Visualizzazioni
Salve Hudson,
 grazie dell'interessamento. Rispondo subito ai tuoi quesiti: a me interessa acquisire solo sul fronte di salita o di discesa del mio segnale di clock dato esternamente, quindi solo su uno dei due fronti del clock e non su tutti i due.
Credo vada, in generale, rivista un pò tutta la VI perché:

1) la cosa che più non mi convince è il fatto che (prima effettivamente non lo avevo fatto presente, chiedo scusa!) quando inserisco il nome della sorgente di Start Trigger, devo inserire obbligatoriamente il nome del pin APFI0 (oppure APFI1) altrimenti l'applicazione non parte e mi genera errore...ma nella realtà, il segnale di trigger che io applico è lo stesso del segnale che dovrà funzionare come clock esterno.
Mi spiego meglio: l'applicazione deve partire con lo stesso segnale che verrà utilizzato come segnale di clock per il campionamento. Però nella VI il nome del pin che devo assegnare come costante alla subVI che gestisce il Trigger è diverso dal nome del pin a cui viene applicato il segnale di Sample Clock (ho usato infatti il pin PFI0). Questo mi genera errori?Come posso rimediarvi?

2) il fatto che la subVI "wait for next edge" si possa usare anche in applicazioni non real-time, mi tranquillizza un pò...perché, correggimi se sbaglio, questo dovrebbe assicurarmi che ciò che si trova all'interno della case structure, salverà solo quei valori che si trovano di volta in volta sul fronte di salita (o di discesa) del mio segnale di clock esterno!? giusto? (quindi se ciò è corretto l'ultima parte della VI dovrebbe funzionare bene!...altrimenti, non esitare a correggermi...sono qui per imparare e non per vincere un oscar!)

Spero di essere stato più chiaro di prima e di averti fatto intuire meglio quali sono i miei dubbi e i miei problemi.

Grazie di tutto...attendo tue notizie.
  Saluti Francesco
0 Kudos
Messaggio 3 di 3
4.369Visualizzazioni