sealevel DIO-16 Reed Relay Isolated Digital Interface User Manual
- June 5, 2024
- SEALEVEL
Table of Contents
- Introduction
- Before You Get Started
- Card Setup
- Software Installation
- Windows NT Card Installation
- Linux Installation
- Physical Installation
- Programming the DIO-16
- Input Ports, Continued
- Interrupt Control
- Electrical Characteristics
- Specifications
- Example Circuits
- Appendix A – Troubleshooting
- Appendix B – How To Get Assistance
- Appendix D – Compliance Notices
- Warranty
- References
- Read User Manual Online (PDF format)
- Download This Manual (PDF format)
DIO-16
User Manual | 3096
Introduction
The DIO-16 provides 8 optically isolated inputs and 8 reed relay outputs. The inputs (rated for 3-13V) protect the PC and other sensitive equipment from spikes and ground loop current that can be generated in industrial environments, while the outputs provide high quality, long life, low current (10 Watt maximum), dry contact switch closures. Reed relays are well suited for low-current applications. The relays are normally open and will close when energized. The board is PCI bus specification 2.1 compliant.
The DIO-16 is designed to be used with a variety of Operating Systems including Windows 98/NT/ME/2000/XP, Linux, and DOS. The SeaI/O API (Application Programmer Interface) included in the software for the DIO-16 provides a variety of useful high-level function calls implemented as a Windows dynamic link library (DLL) and as a Linux kernel module and library. In addition to the API, SeaI/O includes sample code and utilities to simplify software development.
Other Sealevel ISA Digital I/O Products
Model No. | Model No. | Description |
---|---|---|
ISO-16 | ISO-16 | – 16 Optically Isolated Inputs |
REL-16 | REL-16 | – 16 Reed Relay Outputs |
DIO-32B | DIO-32B | – 16 Reed Relay Outputs / 16 Opto-Isolated Inputs |
REL-32 | REL-32 | – 32 Switched Relay Outputs |
PIO-48 | PIO-48 | – 48 TTL Inputs/Outputs |
Before You Get Started
What’s Included
The DIO-16 is shipped with the following items. If any of these items are
missing or damaged, please contact Sealevel for replacement.
• DIO-16 Adapter
Advisory Conventions
| Warning
The highest level of importance is used to stress a condition where damage
could result to the product, or the user could suffer serious injury.
---|---
**| Important
The middle level of importance is used to highlight information that might not
seem obvious or a situation that could cause the product to fail.
| Note**
The lowest level of importance used to provide background information,
additional tips, or other non-critical facts that will not affect the use of
the product.
Optional Items
Depending upon your application, you are likely to find one or more of the
following items useful for interfacing the DIO-16 to real-world signals. All
items can be purchased from our website
(www.sealevel.com) or by calling
864-843-4343.
DB-37 Male to DB-37 Female 6’ Cable – (Part Number CA112)
This cable extends the DB-37 connector on the REL-16.PCI to six feet and is
pinned one-to-one.
DB-37 Male/Female Terminal Block (Part Number TB02-KT)
Break out serial and digital connectors to 37 screw terminals for easy field
connection. The TB02 terminal block is designed with both DB-37 male and
female connectors, therefore; it can be used with any DB-37 board regardless
of the board’s port gender.
Cable and Terminal Block Kit (Part Number KT101)
For convenient and easier ordering, the KT101 includes the TB02-KT terminal
block and CA112 cable in a single kit.
Card Setup
The DIO-16 contains several jumper straps that must be set for proper
operation.
Address Selection
The DIO-16 occupies 4 consecutive I/O locations. The DIP-switch (SW1) is used
to set the base address for these locations. Be careful when selecting the
base address as some selections conflict with existing PC ports. The following
table shows several examples that usually do not cause a conflict.
Address | Binary | Switch Settings |
---|---|---|
1 | 2 | |
100-104 | 01 0000 00xx | On |
104-108 | 01 0000 01xx | On |
200-204 | 10 0000 00xx | Off |
280-283 | 10 1000 00xx | Off |
284-287 | 10 1000 01xx | Off |
2EC-2EF | 10 1110 11xx | Off |
300-303 | 11 0000 00xx | Off |
320-323 | 11 0010 00xx | Off |
388-38B | 11 1000 10xx | Off |
3A0-3A3 | 11 1010 00xx | Off |
3A4-3A7 | 11 1010 01xx | Off |
Address Selection Table
The following illustration shows the correlation between the DIP-switch setting and the address bits used to determine the base address. In the example below, address 300 is selected as the base address. Address 300 in binary is XX 11 0000 00XX where X = a non-selectable address bit and address bit A9 is always a 1.
DIP-Switch Illustration
Setting the switch ‘On’ or ‘Closed’ corresponds to a ‘0’ in the address while leaving it ‘Off’ or ‘Open’ corresponds to a ‘1’.
IRQ Header E2
Interrupts can be generated by Port A, bit 0 going low if enabled at jumper
location (E2). Interrupt request signals 2/9 through 7 (IRQ 2/9 – 7) can be
selected by placing the jumper in the appropriate position. Other inputs can
be ‘wire OR ed.’ to also generate interrupts if desired. Please consult the
factory for more information.
Software Installation
Windows 98/ME/NT/2000/XP Installation
**** Do not install the Adapter in the machine until the software has been
fully installed.
- Begin by locating, selecting, and installing the correct software from the Sealevel software driver database.
- Select the Part Number (P/N: 3096) for your adapter from the listing.
- Select ‘Download Now for the SeaI/O Classic for Windows. The setup file will automatically detect the operating environment and install the proper components. Next (depending on your browser) select the ‘Run this program from its current location or ‘Open’ option. Follow the information presented on the screens that follow.
- A screen may appear with the declaration: “The publisher cannot be determined due to the problems below: Authenticode signature not found.” Please select the ‘Yes’ button and proceed with the installation. This declaration simply means that the Operating System is not aware of the driver is loaded. It will not cause any harm to your system.
- During setup, the user may specify installation directories and other preferred configurations. This program also adds entries to the system registry that are necessary for specifying the operating parameters for each driver. An uninstall option is also included to remove all registry/ini file entries from the system.
Windows NT Card Installation
After accomplishing the above steps, bring up the Control Panel and double- click on the SeaIO Devices icon. To install a new card, click “Add Port”. Repeat this procedure for as many SeaIO cards as you wish to install.
Linux Installation
You MUST have “root” privileges to install the software and drivers.
- Begin by locating, selecting, and installing the correct software from the Sealevel software driver database.
- Select the Part Number (P/N: 3096) for your adapter from the listing.
- Select ‘Download Now for the SeaI/O Classic for Linux. The setup file will automatically detect the operating environment and install the proper components. Next (depending on your browser) select the ‘Run this program from its current location or ‘Open’ option. Follow the information presented on the screens that follow.
- Now compile and prepare the drivers for use: make install
- With the system off and unplugged, install your SeaIO PCI card.
- Plug the system back in and boot Linux. Log in as “root”.
- Load the driver by typing: SeaIO -load
- The driver has enabled the card and is ready to use.
To set up Linux to automatically load the driver; refer to a Linux manual concerning your specific distribution for help.
Physical Installation
The adapter can be installed in any 5V PCI expansion slot.
**** Do not install the Adapter in the machine until the software has been
fully installed.
- Turn off PC power. Disconnect the power cord.
- Remove the PC case cover.
- Locate an available 5V PCI slot and remove the blank metal slot cover.
- Gently insert the PCI adapter into the slot. Make sure that the adapter is seated properly.
- After the adapter has been installed, the cables should be routed thru the opening in the bracket. This bracket also features a strain relief function that should be used to prevent unexpected cable removal.
- Replace the screw you removed for the blank and use it to secure the adapter into the slot. (This is required to ensure FCC Part 15 compliance.)
- Replace the cover.
- Connect the power cord.
The DIO-16 is now ready for use.
Programming the DIO-16
Sealevel’s SeaI/O software is provided to assist in the development of reliable applications for the Sealevel Systems family of digital I/O adapters. Included in the software are driver functions for use in accessing the I/O as well as helpful samples and utilities.
Programming for Windows
The SeaI/O API (Application Programmer Interface) provides a variety of useful
high-level function calls implemented in a Windows dynamic link library (DLL).
The API is defined in the help file (Start/Programs/SeaIO/SeaIO Help) under
“Application Programmers Interface.” This help file also includes detailed
information dealing with the installation/removal of the software and
information about latency, logic states, and device configuration.
For C language programmers we recommend using the API to access the DIO-16. If
you are programming in Visual Basic, using the ActiveX control included with
SeaI/O is advised.
Samples and Utilities
A variety of sample programs and utilities (both executable and source code)
are included with SeaI/O.
Further documentation on these samples can be found by selecting
“Start/Programs/SeaIO/Sample Application Description.” Information about where
the files are physically stored on your disk is also included in this same
file.
Programming for Linux
SeaI/O for Linux consists of two major parts: a kernel module and a library.
The kernel module is a simple IO pass-through device, allowing the library to
handle the more sophisticated functions provided to SeaI/O users. It is
provided in a ‘tarball’ format and can easily be compiled and included in the
kernel build.
Application Programmers Interface (API)
Most modern operating systems do not allow direct hardware access. The senior
driver and API have been included to provide control over the hardware in
Windows and Linux environments.
The purpose of this section of the manual is to help the customer with the
mapping of the API to the actual inputs and relays for the 3096 specifically.
Complete documentation of the API can be found in its accompanying help file.
Digital I/O Interface
The DIO-16 provides two parallel input/output (I/O) ports. The ports are
organized as ports A, B, C, and D.
Port A is an input port interfaced to optically isolated inputs, while port C
is the reed relay output port.
Ports B and C are unused.
Base Address | Hex | Decimal | Mode |
---|---|---|---|
Port A Address | 300 | 768 | Optically Isolated Input Port |
Port B Address | 301 | 769 | Unused |
Port C Address | 302 | 770 | Reed Relay Output Port |
Port D Address | 303 | 771 | Unused |
Input Ports
Port A is an eight-bit input port connected to optically isolated input
sensors. Each sensor can be used to interface a voltage input and then sense
whether the voltage is on or off. Each sensor is isolated (with respect to a
common ground) from every other sensor and also isolated with respect to the
host PC ground. This means that signals such as low-level AC line voltage,
motor servo voltage, and control relay signals can be ‘sensed,’ or read by the
PC, without the risk of damage due to ground loops or ground faults.
Each sensor input pair has a current limiting resistor that is used to limit
the input current to the optoisolator. The optoisolator has two ‘back-to-back’
diodes internally. This allows AC or DC signals to be sensed, regardless of
polarity. When the applied voltage is high enough to cause the led in the
optoisolator to turn on, the output of the optoisolator goes low (0 volts),
and the signal is read as a low logic level (binary 0) by the PC. When the
input signal is too low to turn on the optoisolator, the output goes high, and
the port bit is read by the PC as a high logic level (binary 1).
The input impedance of each isolated input is approximately 560 ohms (factory
default). The optoisolator requires approximately 3mA to turn on. The maximum
input current is 50mA. There are two things to consider when selecting the
input resistor. The first is the turn-on voltage for the circuit to sense, and
the second is the maximum input voltage. Maximum input voltage must not
provide too much power to the input resistor and must also not overdrive the
optoisolator input current specification. The following formulas apply:
Turn on Voltage = diode drop + (turn on current) x (resistance) [Ex: 1.1 +
(.003) x R] Input Current = ((input voltage)-1.1V) / (resistor value)
Maximum voltage = 1.1 + square root of (.25(resistor value))
Input Ports, Continued
The following table shows common input resistors and the ranges associated with each.
Input Resistor | Turn-On | Input Range | Max Input | Max Current |
---|---|---|---|---|
220Ω | 1.8V | 1.8 – 7.0V | 8.5V | 27mA |
560Ω | 2.8V | 2.8 – 10.6V | 12.9V | 20mA |
1KΩ | 4.1V | 4.1 – 13.8V | 16.9V | 15mA |
2.2KΩ | 7.7V | 7.7 – 20.0V | 24.5V | 10mA |
3.3KΩ | 10.0V | 10.0 – 24.0V | 30.0V | 9mA |
4.7KΩ | 15.2V | 15.2 – 28.0V | 35.0V | 7mA |
The turn-off voltage for all resistors is less than 1V.
Increasing the input resistor accordingly can increase the maximum input voltage. Because socketed DIP resistors are utilized, they can easily be replaced with a different value. Sealevel, if necessary, can do this.
**** The input circuits are not intended for monitoring 120-volt AC circuits. In addition to being too high a voltage for the circuits, it is dangerous to have that high a voltage on the card.
Sensor Input Ports Pin Assignments (P1)
Port A Bit | P1 |
---|---|
0 | 2,20 |
1 | 3,21 |
2 | 4,22 |
3 | 5,23 |
4 | 6,24 |
5 | 7,25 |
6 | 8,26 |
7 | 9,27 |
Output Ports (Reed Relays)
Reed relays provide very high quality, long life, low current (10 Watt
maximum), and dry contact switch closures. Reed relays are not suited for high
current applications and can be destroyed by inductive load switching, where a
spark occurs across the contacts internally. The relays are normally open and
close when energized.
Output Port Pin Assignments
Port C Bit | Relay | P2 Pin |
---|---|---|
0 | K1 | 10,28 |
1 | K2 | 11,29 |
2 | K3 | 12,30 |
3 | K4 | 13,31 |
4 | K5 | 14,32 |
5 | K6 | 15,33 |
6 | K7 | 16,34 |
7 | K8 | 17,35 |
Power and Ground Pin Assignments
Ground | 18,36,37 |
---|---|
+5 Volts | 19 |
+12 Volts | 1 |
Relative Addressing vs. Absolute Addressing
The SeaIO API makes a distinction between “absolute” and “relative” addressing modes. In absolute addressing mode, the Port argument to the API function acts as a simple byte offset from the base I/O address of the device. For instance, Port #0 refers to the I/O address base + 0; Port #1 refers to the I/O address base + 1. Relative addressing mode, on the other hand, refers to input and output ports in a logical fashion. With a Port argument of 0 and an API function meant to output data, the first (0th) output port on the device will be utilized. Likewise, with a Port argument of 0 and an API function designed to input data, the first (0th) input port of the device will be utilized. In all addressing modes, port numbers are zero-indexed; that is, the first port is port #0, the second port is #1, the third #2, and so on.
Direct Hardware Control
In systems where the user’s program has direct access to the hardware (i.e.,
DOS) the table below gives the mapping and functions that the DIO-16 provides.
R = Read
R/W = Read or Write
Function Available | Port | Address Hex | Port Type |
---|---|---|---|
RD | A | Base+0 | Input Port (Opto Input) |
B | Base+1 | Not Assigned | |
R/W | C | Base+2 | Output Port (Reed Relays) |
D | Base+3 | Not Assigned |
RD = Read, RD/WR = Read or Write
Reading the Inputs
The inputs are active Low. If no voltage is applied across one of the
differential inputs it returns a one on that bit. If an AC or DC voltage is
applied it returns a zero on that bit.
Reading the Outputs
The relay ports return the ones that complement the value that is currently
being used to drive the relays.
Writing the Outputs
The output ports are the only ports that can be written. The relays on a
standard DIO-16 are normally open.
To close a relay one must be written to the appropriate bit.
Register Description
All ports are set to input after reset or power up.
Address| Mode| D7| D6| D5| D4| D3| D2|
D1| D0
---|---|---|---|---|---|---|---|---|---
Base+0| RD| PAD7| PAD6| PAD5| PAD4| PAD3| PAD2| PAD1| PAD0
Base+1| RD| {0}| {0}| {0}| {0}| {0}| {0}| {0}| {0}
Base+2| RD/WR| PCD7| PCD6| PCD5| PCD4| PCD3| PCD2| PCD1| PCD0
Base+3| RD| {0}| {0}| {0}| {0}| {0}| {0}| {0}| {0}
Base+4| RD| {0}| {0}| {0}| {0}| {0}| {0}| {0}| {0}
Base+5| RD/WR| IQRA| TRUST| {0}| {0}| {0}| {0}| IRC1| IRC0
Base+6| RD| {0}| {0}| {0}| {0}| {0}| {0}| {0}| {0}
Base+7| RD| {0}| {0}| {0}| {0}| {0}| {0}| {0}| {0}
Interrupt Control
When enabled, interrupts are generated on Port A bit D0.
IRQEN | Interrupt enable | 1 = enabled | 0 = disabled ( 0 on power up ) |
---|
IRC0
IRC1| Interrupt mode select, see table below
Interrupt mode select, see table below
Interrupt Mode Selection Table
Interrupt source is Base+0 bit D0. When selecting the Interrupt Type, always
disable interrupts prior to changing or setting states. This will help prevent
inadvertent or unexpected interrupts from occurring.
IRC1 | IRC0 | Interrupt Type |
---|---|---|
0 | 0 | Low Level |
0 | 1 | High Level |
1 | 0 | Falling Edge |
1 | 1 | Rising Edge |
When using the High and Low Level interrupts, an interrupt occurs when input D0 changes to either a High or Low state. This will cause the computer to remain in an interrupt state until the input state changes.
Interrupt Read
Reading the Interrupt Status port (Base+5) clears any interrupt pending.
IRQST | (D0) Interrupt Status | 1 = interrupt pending, 0 = none |
---|
Electrical Characteristics
Features
- Selectable I/O port addressing from 100H – 3FFH.
- 1 set SPST relays with each set having 8 relays.
- 1 eight-bit optically isolated input port.
- Highly reliable 10 VA DIP reed relays.
- Multiple adapters can reside on the same computer.
- All address, data, and control signals are TTL compatible.
Specifications
Input Ports
Turn On Current | 3 mA |
---|---|
Isolator Diode Drop | 1.1 VDC |
Resistor Power Max | .25 W |
Maximum Input Range | 3-13 VDC/VAC |
Output Relays
Contact Max Power Rating | 10 W |
---|---|
Contact Voltage Minimum | 100 VDC/VAC |
Contact Current Maximum | .5A AC/DC RMS |
Contact Resistance, Initial | .15Ω |
Rated Life | Low Load: 200 million closures |
Maximum Load: 100 million
closures
Contact Speed| Operate: .5 mS
Release: .5 mS
Bounce: .5 mS
Maximum Operating Speed| 600 Hz
Temperature Range
Operating | 0°C – 70°C |
---|---|
Storage | -50°C – 105°C |
Power Consumption
Supply line | +5 VDC | +12VDC |
---|---|---|
Rating | 270 mA | (Optional Use) |
Physical Dimensions
PCB Length | 4.9 inches (12.4 cm) |
---|---|
PCB Height | 4.2 inches (10.7 cm, including Goldfingers) |
Manufacturing
All Sealevel Systems Printed Circuit boards are built to UL 94V0 rating and
are 100% electrically tested.
These printed circuit boards are solder masks over bare copper or solder mask
over in nickel.
Example Circuits
Input Circuit
Output Circuit
Appendix A – Troubleshooting
Following these simple steps can eliminate the most common problems.
- Install the software first. After installing the software then proceed to add the hardware. This places the required installation files in the correct locations.
- Read this manual thoroughly before attempting to install the adapter in your system.
- Use Device Manager under Windows to verify proper installation.
- Use the SeaIO Control Panel applet or the Device Manager’s property page for card identification and configuration.
- The following are known I/O conflicts:
- The 278 and 378 settings may conflict with your printer I/O adapter.
- 3B0 cannot be used if a Monochrome adapter is installed.
- 3F8-3FF is typically reserved for COM1:
- 2F8-2FF is typically reserved for COM2:
- 3E8-3EF is typically reserved for COM3:
- 2E8-2EF is typically reserved for COM4:
If these steps do not solve your problem, please call Sealevel Systems’
Technical Support, 864-843-4343.
Our technical support is free and available from 8:00 AM-5:00 PM Eastern Time
Monday through Friday.
For email support contact support@sealevel.com.
Appendix B – How To Get Assistance
Begin by reading through the Trouble Shooting Guide in Appendix A. If
assistance is still needed please see below.
When calling for technical assistance, please have your user manual and
current adapter settings. If possible, please have the adapter installed in a
computer ready to run diagnostics. Sealevel Systems provides an FAQ section on
its website. Please refer to this to answer many common questions. This
section can be found at http://www.sealevel.com/faq.asp.
Sealevel Systems maintains a Home page on the Internet. Our home page address
is www.sealevel.com. The latest software updates
and newest manuals are available via our FTP site that can be accessed from
our home page.
Technical support is available Monday to Friday from 8:00 a.m. to 5:00 p.m.
eastern time. Technical support can be reached at
864-843-4343.
RETURN AUTHORIZATION MUST BE OBTAINED FROM SEALEVEL SYSTEMS BEFORE RETURNED
MERCHANDISE WILL BE ACCEPTED. AUTHORIZATION CAN BE OBTAINED BY CALLING
SEALEVEL SYSTEMS AND REQUESTING A RETURN MERCHANDISE AUTHORIZATION (RMA)
NUMBER.
Appendix C – Silk Screen – 3096 PCB
Appendix D – Compliance Notices
Federal Communications Commission (FCC) Statement
This equipment has been tested and found to comply with the limits for Class A digital devices, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment generates, uses, and can radiate radio frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications. Operation of this equipment in a residential area is likely to cause harmful interference in such case the user will be required to correct the interference at the user’s expense.
EMC Directive Statement
Products bearing the CE Label fulfill the requirements of the EMC directive
(89/336/EEC) and of the low-voltage directive (73/23/EEC) issued by the
European Commission. To obey these directives, the following European
standards must be met:
- EN55022 Class A – “Limits and methods of measurement of radio interference characteristics of information technology equipment”
- EN55024 – “Information technology equipment Immunity characteristics Limits and methods of measurement”.
This is a Class A Product. In a domestic environment, this product may cause radio interference in which case the user may be required to take adequate measures to prevent or correct the interference.
Always use the cabling provided with this product if possible. If no cable is provided or if an alternate cable is required, use high-quality shielded cabling to maintain compliance with FCC/EMC directives.
Warranty
Sealevel’s commitment to providing the best I/O solutions is reflected in the Lifetime Warranty that is standard on all Sealevel-manufactured I/O products. We are able to offer this warranty due to our control of manufacturing quality and the historically high reliability of our products in the field. Sealevel products are designed and manufactured at its Liberty, South Carolina facility, allowing direct control over product development, production, burn- in, and testing. Sealevel achieved ISO-9001:2015 certification in 2018.
Warranty Policy
Sealevel Systems, Inc. (hereafter “Sealevel”) warrants that the Product shall
conform to and perform in accordance with published technical specifications
and shall be free of defects in materials and workmanship for the warranty
period. In the event of failure, Sealevel will repair or replace the product
at Sealevel’s sole discretion. Failures resulting from misapplication or
misuse of the Product, failure to adhere to any specifications or
instructions, or failure resulting from neglect, abuse, accidents, or acts of
nature
are not covered under this warranty.
Warranty service may be obtained by delivering the Product to Sealevel and
providing proof of purchase. The customer agrees to ensure the Product or
assume the risk of loss or damage in transit, to prepay shipping charges to
Sealevel, and to use the original shipping container or equivalent. The
warranty is valid only for the original purchasers and is not transferable.
This warranty applies to Sealevel manufactured Products. Products purchased
through Sealevel but manufactured by a third party will retain the original
manufacturer’s warranty.
Non-Warranty Repair/Retest
Products returned due to damage or misuse and Products retested with no
problem found are subject to repair/retest charges. A purchase order or credit
card number and authorization must be provided in order to obtain an RMA
(Return Merchandise Authorization) number prior to returning the Product.
How to obtain an RMA (Return Merchandise Authorization)
If you need to return a product for warranty or non-warranty repair, you must
first obtain an RMA number. Please contact Sealevel Systems, Inc. Technical
Support for assistance:
Available Monday – Friday, 8:00 AM to 5:00 PM EST
Phone 864-843-4343
Email support@sealevel.com
Trademarks
Sealevel Systems, Incorporated acknowledges that all trademarks referenced in
this manual are the service mark, trademark, or registered trademark of the
respective company.
© Sealevel Systems, Inc. 3096 Manual
SL9026 03/2022
References
- Sealevel - I/O & Computing Products, Engineering and Manufacturing
- FAQs - Sealevel
- Software Driver Search - Sealevel