Measurement Computing   Easy to Use | Easy to Integrate | Easy to Support catalog banner

Measurement Computing Data Acquisition Knowledgebase

Welcome Guest ( )

Synchronizing DaqBoards

Expand / Collapse
 

Synchronizing DaqBoards


In general, daqboards are synchronized to maintain higher sampling throughput and to time match channels. On boards that have sample hold circuitry or individual ADCs it would be to synchronize the channels. On multiplexed boards, such as the IOtech DaqBoard/1000, 2000 and 3000 series it would be to time match channel 1 with channel 1 on the second board, channel 2 with channe 2 and so on while maintaining higher throughput. Furthermore, using the IOtech DaqCOM programming object, the data buffer will contain data from both devices eliminating the need for an additional buffer read and the extra code to merge two buffers together. 

How this works is the software sets one Pacer Clock to output and the other to input. The enumeration setting for the master tells it to output its scan sequence clock, while the setting for the slave instructs it to start sampling when externally clock is received. The master outputs the clock when it starts so there is no possibility of the slave board running prematurely. Below is CSharp code that demonstrates using DaqCOM to establish communication with two boards setting them to synchronized - a complete CSharp Visual Studio 2005 example is attached to this article. This examples setups two boards with the master board set to trigger at 1.0 volts on channel 0.



               //Create Master Device object
                pAcq.Devices.Add(DeviceType.dtDaqBoard3001USB, "");
                pAcq.Devices[1].DeviceIdentity = "DaqBoard3001USB";
                pAcq.Devices[1].OpenMethod = DeviceOpenMethod.domOpenBySystemName;
                pAcq.Devices[1].Open();
                pAcq.Devices[1].ClockSource = DeviceClockSource.dcsInternalOutputEnable;

                //Create Slave Device object
                pAcq.Devices.Add(DeviceType.dtDaqBoard3035USB, "");
                pAcq.Devices[2].DeviceIdentity = "DaqBoard3035USB";
                pAcq.Devices[2].OpenMethod = DeviceOpenMethod.domOpenBySystemName;
                pAcq.Devices[2].Open();
                pAcq.Devices[2].ClockSource = DeviceClockSource.dcsExternalRisingEdge;

       



Rate this Article:
Tags:

Attachments


DaqCOM 2x Daq3k CSharp 2005.zip DaqCOM 2x Daq3k CSharp 2005.zip (1.66 MB, 915 views)

Add Your Comments


For comments email TechSupport@mccdaq.com.

Details
Article ID: 50408

Last Modified:10/17/2012 11:19:01 AM

Article has been viewed 5,205 times.

Options