LabHelper is a general-purpose
data acquisition program for OS X. LabHelper interfaces with the following external serial A-D converters:
- The Sable UI2 has 8 channels of 16-bit A-D conversion (plus
or minus 5 volt range) and 4 channels for temperature inputs
using special thermistors; these can also be used for voltage inputs (0-5
volts), or current, or resistance measures. The UI2 has 8 digital outputs that can switch external
devices, and two analog voltage outputs. LabHelper X sets the UI2 to run
at 115,200 baud for fast communications. A USB to serial
converter is necessary to use the UI2 or any serial device; the Keyspan
units work well; others do not (for unknown reasons).
- DataTakers (several models) are quite sophisticated (but slower than the UI2). They have a variable number of analog input channels, depending on
which model is used and whether any extension modules are attached. They can
also read thermocouples directly (i.e., they return a temperature instead
of the microvoltage potential). Several digital outputs to switch external devices
are also available (depending on model). As for the UI2, a USB to serial
converter is required to communicate with a DataTaker; the Keyspan
units work well; others do not. Wiring of the cable between the computer and the DataTaker is more complex than with the UI-2 (but is clearly described in the DataTaker manual).
- The Advantech ADAM system is a series of inexpensive modules that can be combined as needed. To use this system, you need an ADAM-4019 module as the 'base' unit; it has 8 inputs that can read volts or thermocouples. If you need to control external devices that respond to digital signals, add an ADAM-4050. If you need more inputs, you can add 8 more voltage or thermocouple inputs with a second ADAM-4019, or 8 additional voltage inputs with an ADAM-4017. As for the UI2 and DataTakers, a USB to serial
converter is required to communicate with ADAM units; the Keyspan
units work well; others do not. You will also need an RS485 to RS232 converter, as the ADAM modules use the RS485 protocol; a converter costs $10-$20 (or more if you want...). Only two wires are needed to connect the computer to the ADAM units, and the power can be any DC voltage from 10-30 V. The ADAM system is versatile, inexpensive, but not very fast: the maximum sampling rate is 10/sec for all channels combined.
- The ADC-1 (now long discontinued) has 16 input channels, and most versions have a 50X
programmable gain option on a ±0.42 volt input range. The ADC-1 also has 6 output channels that
can be used to switch external devices. It's very slow, but these old units are still useful for some purposes.
A simulated A-D converter is used in the Test Mode option.
No A-D hardware is needed to explore the software.
LabHelper can also read text data (serial streaming) from instruments with this ability.
Numerical Resolution
LabHelper stores data in a floating-point format with a precision of roughly 8 decimal digits. This saves considerable disk and memory space
compared to storage at higher precisions, but provides somewhat lower numeric
resolution. For example, in 8-digit precision (but not 10-digit precision)
the numbers 12445.239 and 12445.23914 are 'identical'. This minor
limitation should pose few problems to the average user, especially because the accuracy of most data is considerably less
than can be represented in even 6 decimal digits. A 16-bit analog-to-digital
converter working optimally can resolve one part in 65,535, for example -- five decimal digits.
LabHelper was written in FBtoC
by Mark
Chappell (a.k.a. 'Warthog Systems', with apologies
to Gilbert
Shelton) with facilities provided by the University of California, Riverside. No warranty of any kind is offered or implied.
LabHelper X is NOT a commercial product and may not be sold or copied for
commercial purposes. If you have questions you may contact me at the
Biology Department, U.C. Riverside, Riverside, CA 92521. My
email address is: chappell@ucr.edu
Many
thanks are due to Chris Stazny and Andy
Gariepy of STAZ Software,
who generously provided vital assistance in many ways.
The late, great Robert Purves
was extremely helpful in interfacing serial devices, provided the code for the expression evaluator, and generally was a wonderful resource. I also got a lot of assistance from the folks in the FBtoC discussion group. |
|