We’ve worked hard to release a series of example programs to help customers who wish to program our products using our .Net Class. This latest effort is for model DI-2108-P, 16-bit USB DAQ (data acquisition) instrument. The product is the first to support our new ChannelStretch™ technology, which allows synchronous channel expansion simply by connecting more instruments to a PC. That powerful feature is fully supported by our ready-to-run WinDaq software, but we realize that our vision for data acquisition may not fit yours. Especially in production applications, where the same measurement is made repetitively, one often needs a special-purpose application with narrowed parameters and focus. Enter the custom program, and .Net is an excellent and free platform for its development.
Multi-instrument synchronization is built into the DI-2108-P’s .Net Class, so accessing and using this powerful feature is easy and straight forward. The example presented here uses VB.Net (VS 2015.) To keep program bulk low we designed an example that uses a canned instrument I/O configuration so the process of synchronizing multiple DI-2108-P instruments is more highlighted and focused (note: those interested in an example that exposes all DI-2108-P features will find this example more useful for that purpose.) This program has the following features:
- Works with two or more connected DI-2108Ps
- Configures each instrument for one analog input (channel 1), and one digital input (port 0)
- Configures a slow, 10 Hz sampling rate so the GUI display is manageable
- Uses multi-threading for a responsive GUI
- Very heavily commented to enhance program comprehension
- Can easily be used as a foundation program for your own synchronous data acquisition application
- Logically broken down into only three basic sections:
- Instrument discovery, where multiple instruments are detected and synchronized
- Setup, where each discovered instrument is configured
- Acquire, where data is acquired in instrument groups to the display, fully synchronized
Note that while ChannelStretch™ requires that all synced instruments have identical sampling rates and enabled channel counts, the feature ignores channel type. So, although our example configures each instrument’s channels the same, nothing prevents you from mixing and matching channel functions as needed provided only that the same number of channels are enabled per device. Finally, ChannelStretch™ is not at all limited to the slow sampling rate we’ve used for this example. It supports a total throughput of over 480 kHz, so it’s suitable for your most demanding applications.
Explore our .Net class and its powerful synchronizing features for your own applications now. Download the full SDK that includes all example programs and DLLs. Or for a quick look without a complete installation, download just the synchronous example application by itself: