LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Incrociare dati provenienti da due while loop di acquisizione

Buongiorno.

Nel mio programma ho due cicli while che lavorano in parallelo all'acquisizione di dati.

Avrei bisogno di fare dei calcoli incrociando i dati provenienti dai due cicli.

Attuamente però riesco ad avere i dati solo se interrompo il ciclo e quindi interrompo l'acquisizione.

Volevo sapere se fosse possibile estrarre i dati dal ciclo ad intervalli regolari senza dover bloccare l'acquisizione.

grazie

0 Kudos
Message 1 of 4
(2,251 Views)

Ciao Luca,

una possibile soluzione è quella di popolare delle code nei due loop che generano i dati e di acquisire i dati dalle code in un terzo loop incaricato di elaborare i dati.

Un'introduzione a questa architettura è qui: https://www.ni.com/en/support/documentation/supplemental/21/producer-consumer-architecture-in-labvie...

Potresti dare qualche dettaglio in più? Oppure potresti mandare il vi su cui stai lavorando?

 

saluti,

Marco

 

0 Kudos
Message 2 of 4
(2,218 Views)

Ciao Marco, 

ti ringrazzio per la risposta.

Stò lavorando all'acquisizione ed elaborazione di dati provenienti da una connessione TCP. In particolare ricevo due stream di dati da indirizzi differenti e ho la necessità di allineare i dati e fare qualche calcolo. 

Appena possibile farò qualche test con la soluzione che mi hai proposto.

In sostanza, da una prima occhiata veloce, dovrei popolare le code dentro i miei due cicli di acquisizione e fare i calcoli prendendo porzioni di dati dentro il terzo ciclo. giusto?

 

 

saluti

luca

0 Kudos
Message 3 of 4
(2,213 Views)

Esatto.

Credo che la cosa un po' delicata possa essere quella di allineare i dati provenienti dai due cicli di acquisizione.

 

Marco

0 Kudos
Message 4 of 4
(2,208 Views)