Jump to content
  • 0

Signal from Multiple DAQ Drifting

Ricky Ooi



I have multiple DAQs (2 sets of QUAD08 & 2 sets of USB1808). To make them sync to each other, I had connect the clock signal between the master device (B0 Master) and the rest of the devices. Image below shows the connectivity of the sync connection.



One of the QUAD08 (B0 Slave) is connecting to one of the motor encoder, whereas one of the USB1808 (B0 Master) is connecting to one of the analog sensor. When I run my program to begin the data collection, all the signal are perfect are sync to each other (shown in image below). However, after run for a long period (about 2 days later), I found that the signal is drift (shown in the 2nd image below).

Signal Synced:



Signal Drift:


To have clearer picture of this, I purposely log the "Current Index" value when I execute GetStatus function to process the buffer data. Below are the observation (the index below had been converted into row index where it ranged between 0 to 200):
No.        Master(USB1808)        Slave(USB1808)        Slave(QUAD08)        Slave(QUAD08)
1            100                                100                             99                              99
2            160                                160                             161                             160
3            200                                200                            199                             1
.   After 2 days later
nth        130                                 130                            150                             151
nth+1    179                                  179                            198                             199
nth+2    11                                    11                               35                               35

As you can see the row index for QUAD08 had been deviated very far away from USB1808. This resulting the signal cannot be sync properly. What I observed is that the deviation is getting bigger and bigger as the DAQ is running longer. However, when i re-run my program, the signal is syncing back, but it is also drift after running for a long period.

Can help to advice how should I solve this?       

Below are the the settings that I had deployed:

  • C# .NET
  • Sampling Rate: 400 Hz
  • Scan Option for Master = ScanOptions.Continuous | ScanOptions.Background
  • Scan Option for Slave = ScanOptions.Continuous | ScanOptions.Background | ScanOptions.ExtClock


Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Hello @Ricky Ooi.

The USB-1808X Slave module does not appear to be drifting unlike the two USB-QUAD08 Slave modules.  Are the wire lengths significantly different between the USB-1808X Master to USB-1808X Slave versus USB-1808X Master to (either) USB-QUAD08 Slave?

Obviously, the design and components are different between an USB-1808X and an USB-QUAD08.  Given that, you may need to stop and restart your application periodically in order to keep the drift deviation to a minimum.  There is no library function option to correct the drift.



Link to comment
Share on other sites

  • 0

Hi @Fausto,

You are right, the wire length between USB-1808X (Master & Slave)  and the wire length between USB-1808X Master and USB-QUAD08 Slave are different. Between both USB1808X are shorter. Due to the DAQ placement method in a console, we need to get longer wire to sync between USB-1808X and USB-QUAD08.

Edited by Ricky Ooi
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...