Jump to content
  • 0

Problems using two DT9857-16 sync'ed together; Dasylab crashes...


Brooose

Question

I haven’t found anything in the knowledgebase.  I’m trying to sync two DT9857-16 together to acquire 24 channels.  I set the first to master, total channels 32, and the channel selection to 1-16.  On the other unit (with the other unit selected), I set that to slave, total channels to 32, and channel selection to 17-32, but then Dasylab crashes.  I have a 12” cat 6 ethernet cable between the “C” RJ45 ports on the back of the units.  It doesn’t like the 2nd unit to be set to channels 17-32.

 

Also, when using a relay block with control input, it takes in 15 channels and one control input and the documentation states that it outputs 16 channels, however, the relay will only go up to 15 channels for the output.  Is the documentation wrong? 

 

Here’s the Dasylab 2016 version I’m using:   14.0.1   build 705

                Driver dll:   sound 2016.0.0     is what the about windows states. 

 

Are there any examples where two DT9857-16 are used together?  I just have two of them to use 24 channels and have the rising edge of a signal going into the master device control the combi-trigger and then the relay with control input.  I’m also trying to save all of the recorded channels to one output file.

 

Thanks.

Link to comment
Share on other sites

Recommended Posts

  • 1

Hello @Brooose.

The recommendation would be to upgrade to DASYLab 2022.

https://www.mccdaq.com/products/dasylab.aspx

https://mcc.download.ni.com/downloads/DASYLab/DASYLab_2022_ENG.zip

You can download and install the evaluation version of DASYLab 2022 onto your target system or a non-critical system to test your worksheet.

If that is not an option, then I have attached the Data Translation DASYLab Driver v15.0.0 and help files.  On your target system, open the DASYLab Configurator and disable the Data Translation package.  Close the Configurator and browse to the '..\DASYLab 2016' directory on the target system.  If present, rename or move the existing 'DT_OL_DLAB_EN.dll' and 'DT_OL_DLAB_HELP_EN.chm' files to a temporary folder.  Extract the contents from the attached zip file into the '..\DASYLab 2016\pool\packages' directory.  Next, open the DASYLab Configurator and from the top menu select Package - Import Package.  Browse to the '..\DASYLab 2016\pool\packages' directory and select the new DataTranslation.16.0.0.501.EN.dlp file.  Beneath the Configurator's main menu, select the Packages tab and verify that this new Data Translation package, under Data Acquisition, is enabled.  If the new package version for Data Translation is enabled, then close the Configurator and save the settings if prompted. 

Next, open DASYLab 2016 and drop a Data Translation Analog Input module onto a blank worksheet.  Double click on the input module and configure it for one of your DT9857E devices.  You should see 'Driver-Version: 15.0.0' in the bottom left corner.  Close the input module and drag-n-drop a Digital Meter module onto the worksheet.  Connect the default terminal channel between the two modules and then run the worksheet.  If no errors appear, then you can proceed to open your original worksheet. However, verify that you have a backup of your original worksheet before making any new changes.  You will need to delete the DT modules from the worksheet and then add the new modules onto the worksheet.  Reconnect the terminals and save the worksheet (to a new filename if needed).  Run the worksheet with your two DT9857E modules.

If you have issues with the v15 DT driver package, then abort mission and revert back to DASYLab 2016's original Data Translation driver package.  This process will involve closing DASYLab 2016 and opening the Configurator.  Click on the Packages tab and select the new Data Translation package.  From the top menu select Package - Delete Package.  Afterwards, close the Configurator.  Browse back to the '..\DASYLab 2016' directory and delete the new 'DT_OL_DLAB_EN.dll' file, if still present.  Next, copy the original DT dll file back into this directory and then go back to the Configurator.  Via the Packages tab, select and enable the original Data Translation package.  Close the Configurator and then reopen DASYLab 2016.  Lastly, test your original worksheet to verify it works as it did previously with the original DT driver package for DASYLab 2016.

Regards,

Fausto

DataTranslation.16.0.0.501.EN.zip DT_OL_DLAB_HELP_EN.chm

Link to comment
Share on other sites

  • 0

Hello @Brooose

Attached is a simple 2 channel master slave example for the DT9857E (you may have to replace the analog input modules)

You need to have the DT_OL_DLAB_EN.dll loaded to use Data Translation devices.

With the DASYLab IDE open, click on Help >> Report and scroll down until you see the "Extended DLLx"s

image.png

Note that your DT driver does not have to be in the DLL1 position, it just has to be on the list.

Here is a screen capture of the 2 Analog input module configurations:

image.png

Regards,

Jeffrey

 

DT9857_master_slave.DSB

Link to comment
Share on other sites

  • 0

I do show that .dll as loaded.  I have the ethernet jumper connected to both Ain "C" ports.  I have the first analog in module set to slave and the other to master like the manual states.  My Dasylab gui doesn't have a 'time base settings' button.  There's a sample rate and block size box to enter values into.  

Does each 9857 need its own combi-trigger after the analog input?  Does each need its own relay?  

Link to comment
Share on other sites

  • 0

Per the User's manual, you should have your ethernet jumpers in the "B" connector for analog input (of each device).

see https://www.mccdaq.com/PDFs/Manuals/UM9857.pdf page 108.

Note it states, "If you want to synchronize the analog input channels of multiple DT9857E modules, you must connect a cable from the Ain Sync Bus connector (B or D) on one module to the Ain Sync Bus connector (B or D) on the next module."

Before you go on to Combi Triggers and Relays, were you able to get the 2 devices to operate in master/slave without a DASYLab crash?

Link to comment
Share on other sites

  • 0

I actually was using the B ports, I misspoke.  Since I left the total channels at 0 and both devices have channel block set to 1-16, it doesn't crash.

If I feed in the trigger signal (one of the master channels) to a combi-trigger and feed that output to a relay for each device, it runs for the 10 seconds and then says "the time information of block lengths of the input channels do not match.  These channels cannot be linked in this module."  

Link to comment
Share on other sites

  • 0
16 hours ago, Brooose said:

"the time information of block lengths of the input channels do not match.  These channels cannot be linked in this module."  

The module this error is coming from is not getting the data from the 2 (or more) preceding modules.  Depending on the amount and/or rate of data being sent this can be resolved in a few ways.

if data is being sent as a single value per channel (block size = 1), you can send the data to a Write Global Variable module, then immediately read from a Read Global Variable.  This works because the Write Global Variable module does not require the data to all be received at the same time, and the Read Global Variable always has a complete set of data to send to the proceeding module.

image.png

or adjust the data rates and block size so the data is sent to the receiving module with corrected timing.

Or,  insert a Signal Adaptation module just before the module issuing the error.  Be sure to set the Signal Adaptation module's Synchronization Method to "Linear Interpolation," and set the fastest sampled signal source/channel to channel 0 of the Signal Adaptation's channel 0.

image.png

For more information, please see the Help topic for the Signal Adaptation module, found in the DASYLab help. 

Note the Signal Adaptation module is found in DASYLab versions Basic and higher.

Link to comment
Share on other sites

  • 0

That message came from a 2nd combi trigger (for the slave unit).  I was splitting the signal coming out of one combi trigger into the relay 'X' input for each device.  The question is, do I need a combi trigger for each device?   Does the slave need a relay?

Normally with one unit, I have the device with one of the channels going into a combi trigger.  the signals go into a relay and the combi trigger output goes into the X input to the relay.  The relay then goes into an alignment block and then the write.  The trouble is getting the 2 devices to work together in the same concept.

Link to comment
Share on other sites

  • 0

You would only need a second combi trigger (or a second combi trigger channel) if you want to trigger the attached signal(s) differently or in a different way. 

1 hour ago, Brooose said:

Does the slave need a relay?

That really depends on what you are doing.  Here's 2 questions to help you answer that question.

Do you need to inhibit the flow of the slave'd unit's data, the same as what you are doing with the Master's data?  And, do you have more channels of analog data than one relay can handle (ie > 16 channels)?

if you answered yes to both questions than you do need 2 relays.

22 minutes ago, Brooose said:

When I try to load the .DSB file you included above, it says the stored time base is not available.  Select another one; a module cannot be loaded.   Then it starts to open and crashed Dasylab.

I was afraid something like that would happen because I do not have 2 of the same units you have.  This is why I provided the side by side picture of the analog input module's configuration.

Link to comment
Share on other sites

  • 0

We have the alignment block in between the relay and the write because we were told to a couple of years ago when we started using these.  

I want to trigger both devices from one TTL signal.  So, what do I put into the slave's relay 'X' input so it doesn't complain about it being disconnected?  

I'll be using 15 channels from the master and 10 channels from the slave.  

Is there a generic device or simulation mode I can use so that you don't need the same hardware I have?  I can make a setup to show you what I'm trying to do.

Link to comment
Share on other sites

  • 0

I tried exactly that; the top device being the slave and the 2nd the master, per the manual.  They're both set to 50000 sample rate with 5000 block size.  The write file is set to write 100 blocks per file (option in multifile dialog box).  That worked a little better.  I have the trigger coming from a waveform generator that makes a pulse every 20 seconds (going into channel 0 of the master device) and the devices record for 10 seconds.  The writes are using multi fille.   

using 'linear interpolation' in the alignment blocks and it runs for about 6 cycles before it gets the error "the data flow blocked by a subsequent module from one of the AIN devices (it varies which one gets the error first).  

When I changed the alignment to 'sync with computer clock'  (tried that on a whim) it runs for 3 cycles and gets the error "data has different block or time information".

I don't know why they run for a few cycles and then error out.  Is there some other log file or error indicator for exactly what the problem is?

Link to comment
Share on other sites

  • 0
39 minutes ago, Brooose said:

I have the trigger coming from a waveform generator that makes a pulse every 20 seconds (going into channel 0 of the master device) and the devices record for 10 seconds.

The signal adaptation module needs to have the fastest data signal on its input 0. you have a single pulse that shows up once every 20 seconds.

I have modified the data inputs and outputs to the worksheet attached.  please make the same changes to your  worksheet, and see if that resolves it.

1312025806_exampledasy2xDT9857E_B.DSB

Link to comment
Share on other sites

  • 0

fastest data signal as in highest frequency content?  (square wave having higher freq. content than a sine wave)

Should both alignment blocks have the same method?  Would 'synchronize with computer clock' be better?   Should the slave be set to ignore real-time if it's being triggered by the master?

Link to comment
Share on other sites

  • 0

I've tried the different settings in the alignment blocks.  Most of them run for about 5 cycles or so and then it just freezes up; the relays stay latched, but it doesn't retrigger or continue to save data.  This is really eating my lunch.  I need to get a solution going and this $1500 software isn't cutting it.  

Is there some other straight forward way to use these two devices together?

Link to comment
Share on other sites

  • 0

Since Dasylab isn't working for two units, would QuickDAQ be a better option?  At first glance, it seems to work with two units, but I need the two units to start acquiring on a pulse trigger with ~4 seconds of pretrigger, record for 15 seconds, save the data to a file with some sequence number, and rearm the trigger awaiting the next pulse.  I haven't found the pretrigger or the rearm functionality; can it do it?  

Link to comment
Share on other sites

  • 0

Hello  @Brooose.

Using the '1312025806_exampledasy2xDT9857E_B.DSB' example from Jeffrey's previous post above (on 10/12/2022 @ 11:25 AM), I removed both Modbus Analog Input modules from the worksheet.

image.png

 

Next, per the 'Help for Data Translation DASYLab Driver', there is a statement under 'Synchronize USB DAQ devices with a built-in synch port' which recommends that the first Data Translation Analog Input module added onto the worksheet should be configured for the slave device, while the second Data Translation Analog Input module be configured for the master device.  The help file goes on to state "This sequence is mandatory, because the DT DAQ device which is selected in the first Analog Input Module is started at first by DASYLab. Slave devices must be started before the master device."

image.png

 

As instructed, I added the first Data Translation 'DT AIN00' module onto the worksheet, configured it for the DT9857E-16 slave device, and connected the appropriate terminals.  Next, I added a second Data Translation 'DT AIN01' module onto the worksheet, configured it for the DT9857E-16 master device, and connected the appropriate terminals.

image.png

I saved the worksheet and then started the measurements.  The worksheet ran for a few hours until I manually stopped it.  Approximately 9 GB of data was collected for the 'data1' file and 6+ GB for the 'data2' file.

Please delete both Data Translation Analog Input modules from your worksheet.  Next, add and configure the first DT AIN module (DT AIN00) for your DT9857E slave device and then add and configure a second DT AIN module (DT AIN01) for your DT9857E slave device.  Save the worksheet and start the measurement.  Does that help?

Regards,

Fausto

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...