This web site requires Java Script.
You must enable Java Script on
your browser to navigate this site.
















Isolated/Stackable DAQ Module HMI SCADA Software

Isolated Stackable DAQ
Modules with Free Software

We offer a full line of low-cost Data Acquisition and Control modules which can be daisy chained together and connected to a single communications port of a PC or Laptop. Because these modules are stackable, allows the user to select any combination of features needed for their application, and to expand with additional features when necessary. Our HMI Software as pictured above is specifically designed to communicate with these modules and can be set up very quickly and easily by the novice with little or no programming skills. For more advanced programs with special requirements, our engineers can put together a custom software application for you. This can include the mapping of all of the data points to individual cells in your Excel Spreadsheet which will update automatically.


Digital I/O Modules

32 Channel Digital I/O Module Isolated DAQ Module WTX4
Up to 32 wide-range digital input channels with high voltage transient protection. User programmable pull-up or pull-down resistors for use with either NPN or PNP sensors. Up to 32 high current open collector output channels with automatic overload shutdown and pull-ups to 5V for TTL level outputs. Can also include a combination of other I/O types. read more...
10 Channel Digital I/O Card Digital Input Card WTDIN-M
8 wide range digital input channels with high voltage transient protection. 2 high current open collector outputs with automatic overload shutdown. read more...
10 Channel Digital I/O Card Digital Output Card WTDOT-M
8 high current open collector outputs with automatic overload shutdown. 2 wide range digital input channels with high voltage transient protection. read more...
14 Channel Digital I/O Card Digital I/O Card WTDIO-M
14 I/O channels individually configured for input or output. Each channel limited to standard TTL level signals, no protection. Automatic decoding of 4x4 matrix keypad. read more...


Digital I/O Definition

Digital I/O stands for digital input/output. A digital input module detects logic transitions coming from sensors that output some form of digital pulse. This could be a simple contact closure of a switch, or the output of a specifically designed sensor used on a production line to read product count, speed of machinery, position of travel, etc. The data from these sensors is formatted and delivered to a host computer via a USB or RS232 port for processing. A digital output module works in the opposite way, it receives commands from a computer and changes the logic state of its outputs in response. These outputs can be used to control the on/off states of equipment or machinery for instance.

Stackable Capability

Stackable refers to the ability to connect multiple units together and share a single communications port of a host PC, laptop, or Single Board Computer (SBC). The DAQ modules are offered in two different footprints as shown above, enclosed in a case with full electrical isolation, or a non-isolated bare OEM circuit board. Both of these versions are stackable and can be mixed together if desired. The communications bus uses a stratagem based on the Carrier Sense Multiple Access (CSMA/CD) protocol. Carrier Sense (CS) is the monitoring of the data bus for a period of inactivity before a DAQ module is allowed to begin its own transmission. Multiple Access (MA) means that once the bus is free, every DAQ module in the network has an equal opportunity to transmit a frame. And Collision Detection (CD) uses non destructive bit wise arbitration to preserve the integrity of a data frame when two or more DAQ modules try to transmit at the exact same time. And since the data frame that wins arbitration remains intact during a collision, there is no additional communications delay when a collision occurs no matter how often it happens.

Host Communications

To communicate with the DAQ modules, commands are sent to the individual units by including a header character at the beginning (the address) so that it can be routed to the appropriate unit. If using multiple units connected together, the DIP switch for each unit should be set to a different position so that it will be assigned a different header character. Each DAQ module has its own command set used to configure it, operate the functions, and to read data from it. These commands are listed in the product data sheets. A typical command string looks like this:


H = Header Character
C = Command Character
N = Channel Number (if applicable)
V = Value (if applicable)
{cr} = Carriage Return

If using our ModCom HMI software, the carriage return is not necessary because ModCom automatically inserts this at the end of each command string. ModCom has a communications dialog box which can be used to transmit individual commands to the DAQ modules and see the data coming back. This is helpful in learning the style of the command-set protocol and testing the hardware that's attached to the DAQ module. It is highly recommended that this testing be done prior to setting up any complex control programs.


Digital Input Features

Input Types

The input channels of the Digital Input modules can be connected to TTL level outputs, dry contacts of switches, optical sensors, proximity sensors, or quadrature encoders which are sometimes called incremental encoders or rotary encoders. The WTX4 series also incorporates a user programmable pull-up resistor which can be configured for either NPN or PNP type sensors by selecting the termination logic. Setting it to HIGH will enable it to be used with NPN type sensors and dry contacts, setting it to LOW will enable it to be used with PNP type sensors and TTL level outputs.

Input Protection

In many cases, the industrial environment is a very harsh and unforgiving opponent to a typical digital input sensing circuit. A large machine or motor that switches on and off will inadvertently induce voltage spikes onto any neighboring electrical wires even if it is not physically touching them. And if these wires are attached to sensitive electronics, damage could result. Fortunately, the digital inputs of the WTX4, WTDIN-M, and WTDOT-M series incorporate high voltage transient protection to insure that these voltage spikes do not cause any harm. In addition, the inputs are configured to accept a wide range of input voltages that represent each logic level. A logic high can be anywhere from +4V up to +40V, a logic low can be anywhere from +0.8V down to -40V. This allows for the connection to sensors with very diverse output voltages.

Switch Contact Debounce

A typical switch or button uses metal plates (called contacts) which can be moved together or apart in order to make or break the current path. During switch closure, when these plates first make contact with each other, they will bounce several times before coming to rest. This bouncing of the contacts will appear as multiple transitions to a digital input monitoring system, and in most cases, not be desirable.

Each of the input channels of the Digital Input modules incorporates its own de-bounce timer used to mask these multiple transitions by disabling the input for a short period of time after each logic state change. If an input channel is setup for SWITCH or BUTTON and it detects a change of state, the action is immediately reported to the host, its de-bounce timer is loaded with a value equal to 100mS, and the input is disabled until this time period has lapsed. Because each input channel's timer operates independently of each other, the Digital Input module can still report actions on additional inputs while its waiting for this timer to expire.

Polling or Auto Reporting

The logic state of each input channel can be read (or polled) by the host using the READ command, or each channel can be set up to automatically report a logic transition by using the SWITCH or BUTTON command. This automatic reporting allows the host to be performing other tasks or transmitting other commands while it is waiting for an external mechanical switch or button to change state.

Pulse Counting Function

The digital inputs can be set up to count pulses using the COUNT command. The WTX4 series also includes a feature allowing the user to choose whether to increment or decrement the 24-bit counting register with each pulse. In addition, the rollover point is programmable to any number from 0 to 16,777,215. Incrementing past the upper limit will automatically roll over to zero, decrementing past the lower limit of zero will automatically roll over to the upper limit.

Quadrature Encoder Function

A normal inductive pickup, optical sensor, or proximity sensor attached to a rotating shaft can keep track of the pulse count and/or RPM frequency but it can not determine the direction that the shaft is rotating. An incremental or rotary encoder with a quadrature output incorporates two individual signals which are 90 out of phase. These out-of-phase signals can be used to determine both the magnitude and direction of movement for precise position sensing applications. The input channels of the Digital Input modules can be set up using the QUADRATURE command to read and track the position of an incremental encoder using two channels as a pair for each encoder. These input channel pairs will automatically decode the two out of phase quadrature signals and be able to monitor the exact position as the shaft rotates in either direction. Moving in one direction will increment the count, moving in the opposite direction will decrement the count. As with the pulse counting function, the rollover point of the 24-bit counting register is programmable to any number from 0 to 16,777,215.

RPM Scanning Function

The input channels can also be set up to measure the rate of a rotating shaft by using the TACHOMETER command. Once this command is issued on a particular input channel, the pulse rate of the applied signal will be continuously sampled in the background, converted to RPM, and stored in memory. Each time that the TACHOMETER command is issued, the latest results will be returned to the host without any acquisition delay. However, although the results returned to the host will always be immediate, the update rate may be much slower depending on the frequency of the input signal. The lower the RPM, the more time it takes to sample and get an accurate reading. And since the Digital Input module can only sample one input channel at a time, a low RPM signal applied to one channel will slow down the update rate of any other channels of this sub unit which are configured to read RPM.


Digital Output Features

Output Current

The output channels of the WTX4, WTDOT-M, and WTDIN-M series uses an open-collector configuration which can sink up to 1.0 amps per channel allowing them to directly drive relays, solenoids, DC motors, magnetic latches, flow valves, etc. To attach the outputs to a device such as a relay or solenoid, connect one side of the coil to the positive side of an appropriate power source, the other side of the coil to one of the output channels of the Digital Output module, and the COM or GND terminal of the Digital Output module to the negative side (or ground) of the power source. Then use the LOW command to pull the output channel to ground which will complete the circuit and current will flow through the coil activating the relay or solenoid. The HIGH command can be used to release the output channel from ground and deactivate the relay or solenoid.

Output Timer Function

Each of the output channels of the Digital Output modules incorporate its own independent count-down timer which can be used to control the length of time that a HIGH or LOW function holds the output at a specific state before returning it to the previous state. This timer can be re-loaded on the fly before it times out which provides a valuable feature. Suppose the output channel is being used to turn on a piece of machinery but ideally you would want that machine to turn back off automatically if the host PC shuts down or for any other reasons the communications has failed. By activating the channel using the HIGH or LOW command including a time value and then re-transmitting that command repeatedly at a rate faster than the timer can expire, will keep the machine active only as long as those commands are being received from the host.

This same procedure can be used to turn on an external alarm or warning light if there are any communications problems by having the host continuously transmitting a deactivation command instead of the activation command mentioned above. When using this method, the DEFAULT command should be used to make sure the output channel is set to the deactivation state upon power up.

PWM Output Function

The WTX4, WTDOT-M, and WTDIN-M series incorporate a special function that will produce a PWM (Pulse Width Modulation) output using the PWM command. In this mode, the output is a continuous square wave with a variable duty cycle which is controlled by the host. Duty Cycle represents the percentage of high time to low time of each pulse and can be used to control the current flow through a load such as a DC motor or flow control valve, for instance. The duty cycle can be adjusted in 0.1% increments from 0 to 1000.

Output Overload Shutdown

Each of the output channels of the WTX4, WTDOT-M, and WTDIN-M series incorporate a resettable fuse which protects it from excessive current flow. If the current being sunk by an output channel exceeds 1.0 amps for an extended period of time, the output will automatically shut down to prevent damage to the output drivers. Once this happens, the current must be removed from the output channel before it will return to normal operation.