06-08-2019 07:20 AM
Hello everybody,
I am using MyDAQ to generate some signal,1000 samples. During continuous generation changing a amplitude.
I monitor on a Graph data what are prepared for a buffer,DAQmx Write, and this part is good. Changes amplitude happen every 1s on graph, they are noticeable, because of chosen configuration: sample rate=1000, number of samples=1000.
Data is prepared for next loading into buffer when DAQmx Write starting to execute, it takes around 1ms.
For checking purpose analog output is connected to analog input on same device. And here is a problem, on a graph of analog input change of a amplitude appears after around 10s.
Both input and output is configured to have same: sample rate=1000, number of samples=1000.
Why is this big delay happening between signal generation and acquisition? What can be a solution? Does some parameter need to be changed?
Does analog output need to be synchronized and how on MyDAQ or on NI USB-6002 ?
Same behavior is on NI USB-6002.
Thanks for a support,
Nandor S.
Solved! Go to Solution.
06-08-2019 03:00 PM
What happening with a buffer of DAQmx Write in continues mode? Why it generates same data approximately 10 times and then accept changes from data input? How to avoid this behavior?
06-11-2019 08:14 AM
Hi Nandor,
we also can continue in Hungarian, if you speak the language.
Could you upload your VI, so I can take a look at it?
Best Regards,
NI TSE
06-11-2019 04:01 PM
Szia ,
Köszönöm a valasszon. Elküldöm a koodot a e-mailben.
Következő a logika: megvan a Inicializácio case ahól megvan a csatornák beálitása, bufer meg a sample clock. Utána elmegy a Generate case-be ahól feltőlti a bufert egy FGV_Prepared Data.vi-ből és küldi a jelet a kimenetre. Ha először tölti a bafert akkor meg elmegy a Start_Task case-be.
Amikor DAQmx Write elkezdi generalni a jelet a kimeneten az új adat a következőre készülödik ( "Prepare_Sig_For_Next_Gen" - case a útolsó while).
Probléma az hogy hiába cseréltem a amplitudát, 9 alakalomban generálja a régi adatokat. Első graph mutatja az beolvasot adatokat a DAQmx Write-ba, második graph mutatja a adatoka a bemenetről.
Nem értem hogy mért csinálya ezt, és mi történik a hadware bufera, hogy kellene megjavitani?
Tisztelettel
Nandor S.
06-11-2019 04:04 PM - edited 06-11-2019 04:09 PM
no message
06-12-2019 02:39 AM
Szia Nandor,
nem tiszta, mi alapján feltételezel 10 másodperces késleltetést az AO és AI között.
A Graphs.png-ből épp az következne első blikkre, hogy az adatgyűjtés siet, ami persze logikailag lehetetlen.
A Graph-ok időtengelyei nincsenek szinkronban, a 0 időpont az elsőn nem felel meg a 0 időpontnak a másodikon, ha a generálás és az adatgyűjtés nincs tökéletes szinkronban, nincs egyszerre triggerelve.
Ha elküldöd a VI-t, pontosabbat is tudok mondani.
Üdv,
NI TSE
06-12-2019 02:40 AM
Légyszíves csatold ide a kódod.
Üdv,
NI TSE
06-12-2019 03:32 AM
Szia Akos,
Kosz a valaszra!
Nem kesik ha nem ugyan azt kuldi a kimenetre.
Udv
Nandor Spacsek
06-12-2019 03:56 AM
Hi Nandor,
akkor mégegyszer, pontosan mi a kérdés?
Üdv,
NI TSE
06-12-2019 04:46 AM
Hello Akos,
Amikkor amplituda csere van vagy number of zeros, miert 8-9 alkalomal generalya a kimeneten a regi adatokat?
A felso grphon szepen lehet latni hogy mar kicserelte az adatokat amit tolti a DAQmx Write buferba.
Udv
Nandor S