We recommend viewing AduHidtest Tutorial Part 1
before viewing this continuation of the tutorial.
For low speed applications where data
is read at 500s/s or
lower, a polling method of retrieval is suitable. In polling
applications a read command is sent each time data is to be retrieved from the
ADU. Considering that USB bus specifications guarantee 1000 packets/second,
the theoretical maximum polling speed is 500s/s because sending the read
command, and then receiving the data, each take up one packet time. Polling
applications send and receive, data and commands, on the device pipe.
Select ADU devices feature a streaming function where
the user can send a
Stream Start (SS) command on the
device pipe and the ADU will send data on the separate
Stream Pipe at rates up to 1000 packets per second. The stream is stopped using the Stream Cancel
(SC) command.
Note: The stream pipe is a read only pipe.
For this tutorial we will use an
ADU73 Voltage Input to USB Interface and AduHidTest 4.0 to
demonstrate the streaming function, and how Excel can be used to examine
data. The ADU73 is a Voltage Input to
USB interface that provides two isolated 0-5VDC analog voltage inputs with
24-bit resolution.
Getting Started:
We will follow the 4 steps below to demonstrate the streaming function
using AduHidTest V4.0.
- Connect to the ADU73.
- Send Stream Start (SS) command to the
ADU73 device pipe.
- Receive data from the ADU73 on the stream pipe.
- Send Stream Cancel
(SC) command to the ADU73 device pipe.
STEP 1: Connect to the ADU73
We open AduHidTest and connect to our ADU73 using the By Serial#
option.
Figure 1: ADU73 Connected to PC
STEP 2: Send Stream Start command to
the ADU73 device pipe.
We send the Stream Start command (SS) via the device pipe to the ADU73.
Note: ADU commands are not case sensitive.
Figure 2: Sending "SS" Command
Upon receiving the SS command, the ADU will
begin sending data packets on the stream pipe at the
configured rate.
The ADU73 default sampling rate is 100 samples per
second, and with two channels, results in a packet rate
of 50 packets per second. The ADU73 can be configured to
sample at rates ranging from 2.5 to 1000 samples per
second. Consult the user manual of your specific ADU
device to determine available sample rates and
configuration settings.
STEP 3: Receiving Data on the Stream
Pipe
AduHidTest facilitates several methods of capturing data packets sent on
the stream pipe, including capturing a single packet, and streaming to text
or CSV files.
Clicking the Capture Single Packet button
displays one packet of data in the viewing window.
In the case of the ADU73, a single packet of data is
two 24-bit readings (00000000-16777215) representing the
two 0-5VDC analog inputs (AN0 and AN1) on the ADU73,
returned in ASCII format with a space delimiter. Analog
channels that are disabled return "00000000".
Figure 3:
Capturing a Single Packet of Data.
The packet data indicates that AN0=
(11184850/16777215) x 5 = 3.3333452V and
AN1= (05595093/16777215) x 5 = 1.6746775V
The single packet of data can also be displayed in HEX
format by clicking the HEX checkbox beside the Capture Single Packet
button.
Figure 4:
Viewing the Packet Data in HEX Format.
Figure 4 shows our ASCII packet converted to HEX.
The unused bytes are padded with nulls.
Note: All packets sent on the stream pipe of ADU
devices have 63 bytes of data. One additional byte is
used by the DLL to identify the pipe selected (
01h = Device Pipe, 02h = RS232 Pipe, 03h = Stream
Pipe). This byte is not displayed, nor is it received by
the host application software when using the AduHid.dll.
Streaming data can also be captured to text or .CSV
files for use with Excel or other spreadsheet software.
The file format of text or CSV is selected using
radio buttons in the stream pipe section of AduHidTest.
When the Begin Capture button is clicked,
the streamed packets will be saved in a unique filename
containing time and date. The filename is visible while
streaming in the stream pipe section of AduHidTest.
Figure 5: Capturing Packet Data to a TXT
File.
Once the data stream is stopped using the Stop
Capture button, data can be viewed.
Note: The Stop Capture button does NOT stop
the data streaming from the connected ADU. It only stops
the capturing of packet data to the file type selected.
In text format, the file contains date and time
capture started, and one line for each captured packet.
Each line shows time of capture in
Hours:Min:Sec:Milisec format, followed by complete HEX
data ( 63 bytes) and the ASCII representation of data.
Figure 6: Data Captured
to a TXT File.
Packets can also be captured to a CSV file, which use
comma as a delimiter, for use with Excel or other
spreadsheet software.
The CSV file can be directly opened in Excel and
contains time of capture and sample data conveniently
arranged in columns.
Note: The time of capture data is truncated by Excel
down to 100ms accuracy in its default settings.
Figure 7: Data Captured
to a CSV File.
After data is imported into Excel it can be graphed
for examination.
Figure 8: Data graphed in
Excel Spreadsheet to evaluate noise level.
In our example we select the data for AN0 and graph it
to measure noise levels. From the graph we can see the
noise level at 100 s/s is +/- 6 counts out of 16777215
counts giving a noise level of +/- 1.78uV on a 0-5V
analog input. This is an exceptionally low noise level,
and you should order one
immediately!
STEP 4: Send Stream
Cancel Command (SC) on ADU73 Device Pipe
To stop the connected ADU from streaming packets on the streaming pipe, a
Stream Cancel (SC) command should be sent on the
device pipe.
Figure 9: Sending the
Stream Cancel (SC) command to the ADU73 on the
Device Pipe.
End of Tutorial
DOWNLOAD AduHidTest Here:
Download AduHidTestV4.0 (64-Bit)
now, in ZIP Format
( 1.2MB ). ( Contains DLL Ver 2.2 )
Download
AduHidTestV4.0 (32-Bit)
now, in ZIP Format
( 1MB ). ( Contains DLL Ver 2.2 )
Back to Programming Page |