advertisement
![ADLINK Technology PCI-8136 User Manual | Manualzz ADLINK Technology PCI-8136 User Manual | Manualzz](http://s3.manualzz.com/store/data/056090615_1-c26a07a0d304bdc759a9e4fc31073c71-360x466.png)
PCI-8136
General Purpose
Multi-Function
I/O Card
User’s Manual
Manual Rev. 2.00
Revision Date: July 5, 2007
Part No: 50-11120-1010
Advance Technologies; Automate the World.
Copyright 2007 ADLINK TECHNOLOGY INC.
All Rights Reserved.
The information in this document is subject to change without prior notice in order to improve reliability, design, and function and does not represent a commitment on the part of the manufacturer.
In no event will the manufacturer be liable for direct, indirect, special, incidental, or consequential damages arising out of the use or inability to use the product or documentation, even if advised of the possibility of such damages.
This document contains proprietary information protected by copyright. All rights are reserved. No part of this manual may be reproduced by any mechanical, electronic, or other means in any form without prior written permission of the manufacturer.
Trademarks
NuDAQ, NuIPC, DAQBench are registered trademarks of ADLINK
TECHNOLOGY INC.
Product names mentioned herein are used for identification purposes only and may be trademarks and/or registered trademarks of their respective companies.
Getting Service from ADLINK
Customer Satisfaction is top priority for ADLINK Technology Inc.
Please contact us should you require any service or assistance.
Web Site:
Sales & Service:
TEL:
FAX:
Address:
ADLINK TECHNOLOGY INC.
http://www.adlinktech.com
+886-2-82265877
+886-2-82265717
9F, No. 166, Jian Yi Road, Chungho City,
Taipei, 235 Taiwan
Please email or FAX this completed service form for prompt and satisfactory service.
Company Information
Company/Organization
Contact Person
E-mail Address
Address
Country
TEL
Web Site
FAX:
Product Information
Product Model
Environment
OS:
M/B: CPU:
Chipset: BIOS:
Please give a detailed description of the problem(s):
Table of Contents
Table of Contents..................................................................... i
List of Tables.......................................................................... iii
List of Figures ........................................................................ iv
1 Introduction ........................................................................ 1
1.1
Features............................................................................... 2
1.2
Specifications....................................................................... 2
1.3
Software Support ................................................................. 4
2 Installation .......................................................................... 5
2.1
What You Have.................................................................... 5
2.2
Outline Drawing ................................................................... 6
2.3
Hardware Installation ........................................................... 7
Hardware configuration ................................................... 7
PCI slot selection ............................................................ 7
Installation Procedures ................................................... 7
Troubleshooting .............................................................. 7
2.4
Software Installation ............................................................ 8
2.5
CN1: Main Connector .......................................................... 8
2.6
CN2: External Power Input ............................................... 10
2.7
CN3 Pin Assignments: DB25 Connector ........................... 11
2.8
CN4 Pin Assignments: DB9 Connector ............................. 11
3 Signal Connections.......................................................... 13
3.1
Analog Input....................................................................... 14
3.2
Analog Output.................................................................... 16
3.3
Digital Input........................................................................ 17
3.4
Digital Output ..................................................................... 19
3.5
Pulse Input (Encoder Counter) .......................................... 21
3.6
Pulse Output (Pulse Generator) ........................................ 25
3.7
VCC Pin ............................................................................. 26
4 Operation Theory ............................................................. 27
4.1
AD Conversion and Preloaded Trigger.............................. 28
ADC .............................................................................. 28
Voltage Compare .......................................................... 28
Table of Contents i
4.2
DA Conversion................................................................... 29
DA Output by Trigger Source ....................................... 29
4.3
DIO .................................................................................... 30
Digital Input ................................................................... 30
Digital Output ................................................................ 31
4.4
Pulse Input and Position Compare .................................... 32
Pulse Input .................................................................... 32
Encoder Counter Value Capture (latch) ........................ 33
Encoder Counter Value Compare ................................. 34
4.5
Pulse Output ...................................................................... 35
4.6
Interrupt Control ................................................................. 37
5 Function Library................................................................ 41
5.1
List of Functions................................................................. 42
5.2
Initialization ........................................................................ 44
5.3
System Parameters ........................................................... 46
5.4
Digital I/O ........................................................................... 48
5.5
Analog I/O .......................................................................... 50
5.6
Pulse I/O ............................................................................ 55
5.7
Interrupt ............................................................................. 60
6 Appendix............................................................................ 65
6.1
Auto Calibration Utility........................................................ 65
6.2
Analog Output Error Test ................................................... 71
Warranty Policy ..................................................................... 75 ii Table of Contents
List of Tables
Table 2-1: CN1: Main Connector ............................................... 8
Table 2-2: CN2: External Power Input .................................... 10
Table 4-1: _8136_S_Get_Int_Status ....................................... 38
List of Tables iii
List of Figures
Figure 2-1: PCB Layout of the PCI-8136 ..................................... 6
Figure 3-1: Analog input circuit .................................................. 15
Figure 3-2: Analog output circuit ................................................ 16
Figure 3-3: Digital input circuit.................................................... 17
Figure 3-4: Digital output circuit ................................................. 19
Figure 3-5: Pulse input (encoder counter) circuit ....................... 22
Figure 3-6: Connection to line driver output ............................... 23
Figure 3-7: Connect to open collector output ............................. 24
Figure 3-8: Pulse output (pulse generator) circuit ...................... 26 iv List of Figures
1 Introduction
The PCI-8136 is a multi function DAQ card with 6-CH AD for signal measurement, and 6-CH 16-bit DA for precise voltage output.
It also has six-channels 32-bit differential encoder counters and six pulse train generators, both supporting three kinds of differential pulse types: Out/Dir, A/B phase, CW/CCW. The PCI-8136 has
17 NPN type digital input channels and 6 open collector type digital output. All digital I/O are photo coupler isolated. The PCI-8136 also has a 24-bit programmable timer for users to generate a constant timer interval.
The PCI-8136 provides Windows DLL for users to easily develop their own applications. It supports Windows 95/98/NT/2000/XP/
Vista platform. The development environment for Windows is compatible with Visual Basic, Visual Basic .Net, Visual C++, Visual
C++.Net, C++ Builder, and Delphi. Since this is a PCI 32-bit interface card, the PCI-8136 will only support Borland C++ 3.1 in a
DOS environment.
Introduction 1
2
1.1
Features
The PCI-8136 provides ADPIO functions for users. The ADPIO stands for Analog/Digital/Pulse Input/Output. The following list summarizes the main features of the PCI-8136.
X
X
X
X
X
X
X
X
X
X
X
X
32-bit PCI-bus, plug and play
6 channels 16-bit analog output
6 channels analog input
19 channels isolated digital input
7 channels open collector digital output
Programmable interrupt sources
6 differential types 32-bit encoder counters
6 differential type pulse generators
One 24-bit programmable timer
Software supports maximum up to 4 cards
Function library for DOS and Windows 95/98/NT/2000/XP/
Vista
Compact, half size PCB
1.2
Specifications
Analog Input
X
X
X
X
6 differential input channels
Input range:
Z Voltage: ±10 V
Z Current: ±20 mA (manually soldering 124ohms resistor)
Input impedance:
Z
Z
10
12
Ohms || 100pF (voltage mode)
124Ohms (current mode)
Sampling rate: 133 kHz multiplexing
Introduction
Analog Output
X
X
X
X
X
6 output channels
Output range: bipolar, ±10V
16-bit DAC resolution, 14-bit accuracy guaranteed
Settling time: 2 µ second
Voltage output drive: 5 mA max.
Digital Input
X
X
X
X
X
19 input channels for NPN type sensor
Input impedance: 4.7 K Ohms
Max. Current: 20 mA
Isolated voltage: 2500 V
RMS
Throughput: 10 kHz (0.1 ms)
Digital Output
X
X
X
X
X
7 Output channels
Output type: Darlington transistor with open collector type
(ULN2003A)
Sink current:
Z 90 mA/Ch (typical)
Z 150 mA/Ch (max.)
Z 500 mA/total
Isolated voltage 2500 V
RMS
Throughput 10 kHz (0.1 ms)
Pulse Input (Encoder Counter)
X
X
X
X
X
6 differential input channels
32-bit counter for AB-phase, CW/CCW, Pulse/Direction modes
2500 V
RMS
optical isolation
Maximum pulse input frequency: 2 MHz
32-bit encoder counter comparison
Introduction 3
4
Pulse Output (Pulse Generator)
X
X
X
6 output channels with differential line drivers
Pulse command type: CW/CCW, Pulse/Direction, A/B
Phase
Maximum pulse rate: 500 kHz with 1µ second pulse width.
Timer
X
X
One 24-bit programmable timer
Base clock: 33 MHz from PCI bus
General Specifications
X
X
X
X
X
X
Connectors:
Z 100-pin SCSI-type connector
Z DB25 female connector
Z DB9 male connector
Operating Temperature: 0
°
C - 50
°
C
Storage Temperature: -20 ° C - 80 ° C
Humidity: 5 - 85%, non-condensing
Power Consumption:
Z
Z
Slot power supply(input): +5V DC ± 5%, 900mA max.
External power supply(input): +24V DC ± 5%, 500mA max.
Z External power supply(output): +5V DC ± 5%, 500mA, max.
Dimension: 164mm(L) X 98.4mm(H)
1.3
Software Support
For the customers who are writing their own programs, we provide a programming library for Borland C/C++ 3.1 under DOS and DLL for Windows 95/98/NT/2000/XP/Vista. These function libraries are shipped with the board.
Introduction
2 Installation
This chapter describes how to install the PCI-8136 hardware and software correctly. Please follow the following steps.
X
X
X
X
X
Check what you have (section 2.1)
Check the PCB (section 2.2)
Install the hardware (section 2.3)
Install the software driver (section 2.4)
Understand the connectors' pin assignments (the rest of the sections) and wiring the connections
2.1
What You Have
In addition to this User's Guide, the package includes the following items:
X
X
X
X
PCI-8136 General Purpose Multi-I/O Card
DB9 and DB25 Bracket
External power cable for CN1
ADLINK All-in-one Compact Disc
If any item is missing or damaged, contact the dealer from whom you pur¬chased the product. Save the shipping materials and carton in case you want to ship or store the product in the future.
Installation 5
2.2
Outline Drawing
6
Figure 2-1: PCB Layout of the PCI-8136
CN1: Main Connector
CN2: External Power Input
CN3: DB25 Connector for analog input/output and remote I/O
CN4: DB9 Connector for remote I/O
Note: Remote I/O function is reserved for special requests
Installation
2.3
Hardware Installation
2.3.1
Hardware configuration
The PCI-8136 has a plug and play PCI controller on board. The memory usage (I/O port locations) of the PCI card is assigned by system BIOS. The address assignment is done on a board-byboard basis for all PCI cards in the system.
2.3.2
PCI slot selection
Your computer will probably have both PCI and ISA slots. Do not force the PCI card into a PC/AT slot. The PCI-8136 can be used in any PCI slot.
2.3.3
Installation Procedures
1. Read through this manual, and setup the jumper according to your application
2. Turn off your computer, Turn off all accessories (printer, modem, monitor, etc.) connected to computer.
3. Remove the cover from your computer.
4. Select a 32-bit PCI expansion slot. PCI slots are shorter than ISA or EISA slots and are usually white or ivory.
5. Before handling the PCI-8136, discharge any static buildup on your body by touching the metal case of the computer. Hold the edge and do not touch the components.
6. Position the board into the PCI slot you selected.
7. Secure the card in place at the rear panel of the system unit using screw removed from the slot.
2.3.4
Troubleshooting
If your system won't boot or if you experience erratic operation with your PCI board in place, it's likely caused by an interrupt conflict (perhaps because you incorrectly described the ISA setup). In general, the solution, once you determine it is not a simple over-
Installation 7
8 sight, is to consult the BIOS documentation that comes with your system.
2.4
Software Installation
Please refer to the Software Installation Guide.
2.5
CN1: Main Connector
The CN1 is the major connector for the Digital I/O, Pulse IO and
Analog output signals.
No. Name I/O Function No Name I/O Function
21
22
23
24
17
18
19
20
25
26
13
14
15
16
9
10
11
12
3
4
1
2
AGND SG
DAC0 O
DAC1
DAC2
O
O
Analog ground
Analog output, (0)
Analog output, (1)
Analog output, (2)
51 AGND SG
52 DAC3 O
53 DAC4
54 DAC5
O
O
7
8
5 VCC+5V O
6 COM+ P
+5V from 24V
+24V Input for Digital I/O
55
56
COM-
COM-
PG
PG
COM+
COM+
P
P
+24V Input for Digital I/O
+24V Input for Digital I/O
57
58
DI18
DO6
I
O
DI00
DI06
DI07
DO0
DI02
DI10
DI11
DO2
I
I
I
O
I
I
I
O
Digital Input 00
Digital Input 06
Digital Input 07
Digital Output 00
Digital Input 02
Digital Input 10
Digital Input 11
Digital Output 02
59
60
61
62
63
64
65
66
DI01
DI08
DI09
DO1
DI03
DI12
DI13
DO3
I
O
I
I
I
I
I
O
DI04
DI14
DI15
DO4
EA0+
EA0-
EB0+
EB0-
EZ0+
EZ0-
I
O
I
I Digital Input 04
Digital Input 14
Digital Input 15
Digital Output 04
I Encoder A-phase (+), (0) 71
I Encoder A-phase (-), (0) 72
I Encoder B-phase (+), (0) 73
I Encoder B-phase (-), (0) 74
67
68
69
70
I Encoder Z-phase (+), (0) 75
I Encoder Z-phase (-), (0) 76
DI05
DI16
DI17
DO5
EA1+
EA1-
EB1+
EB1-
EZ1+
EZ1-
Analog ground
Analog output, (2)
Analog output, (3)
Analog output, (4)
+24V Ground
+24V Ground
Digital Input 18
Digital Output 06
Digital Input 01
Digital Input 08
Digital Input 09
Digital Output 01
Digital Input 03
Digital Input 12
Digital Input 13
Digital Output 03
I
O
I
I Digital Input 05
Digital Input 16
Digital Input 17
Digital Output 05
I Encoder A-phase (+), (1)
I Encoder A-phase (-), (1)
I Encoder B-phase (+), (1)
I Encoder B-phase (-), (1)
I Encoder Z-phase (+), (1)
I Encoder Z-phase (-), (1)
Table 2-1: CN1: Main Connector
Installation
No. Name I/O
36
37
38
39
32
33
34
35
27
28
29
30
31
44
45
46
47
48
49
50
40
41
42
43
Function No Name I/O Function
EA2+
EA2-
EB2+
EB2-
EZ2+
I
I Encoder A-phase (+), (2) 77
Encoder A-phase (-),(2) 78
I Encoder B-phase (+),(2) 79
I Encoder B-phase (-),(2) 80
I Encoder Z-phase (+),(2) 81
EA3+
EA3-
EB3+
EB3-
EZ3+
I Encoder A-phase (+), (3)
I Encoder A-phase (-), (3)
I Encoder B-phase (+), (3)
I Encoder B-phase (-), (3)
I Encoder Z-phase (+), (3)
EZ2-
EA4+
EA4-
EB4+
I Encoder Z-phase (-),(2) 82
I Encoder A-phase (+),(4) 83
I Encoder A-phase (-),(4) 84
I Encoder B-phase (+),(4) 85
EZ3-
EA5+
EA5-
EB5+
I Encoder Z-phase (-), (3)
I Encoder A-phase (+),(5)
I Encoder A-phase (-),(5)
I Encoder B-phase (+),(5)
EB4-
EZ4+
EZ4I
OUT0+ O
I Encoder B-phase (-),(4) 86
I Encoder Z-phase (+),(4) 87
Encoder Z-phase (-),(4)
Pulse signal (+),(0)
88
89
EB5-
EZ5+
EZ5-
OUT1+
I
O
I Encoder B-phase (-),(5)
I Encoder Z-phase (+),(5)
Encoder Z-phase (-),(5)
Pulse signal (+), (1)
OUT0-
DIR0+
DIR0O
OUT2+ O
O
O
OUT2-
DIR2+
DIR2O
OUT4+ O
OUT4O
DIR4+
DIR4-
O
O
O
O
Pulse signal (-),(0)
Dir. signal (+),(0)
Dir. Signal (-),(0)
Pulse signal (+), (2)
Pulse signal (-),(2)
Dir. signal (+), (2)
Dir. signal (-), (2)
Pulse signal (+),(4)
Pulse signal (-),(4)
Dir. signal (+),(4)
Dir. Signal (-),(4)
90 OUT1O
91 DIR1+ O
92 DIR1O
93 OUT3+ O
94 OUT3O
95 DIR3+ O
96 DIR3O
97 OUT5+ O
98 OUT5O
99 DIR5+ O
100 DIR5O
Pulse signal (-), (1)
Dir. Signal (+), (1)
Dir. Signal (-), (1)
Pulse signal (+),(3)
Pulse signal (-),(3)
Dir. signal (+),(3)
Dir. signal (-),(3)
Pulse signal (+),5
Pulse signal (-),(5)
Dir. signal (+),(5)
Dir. Signal (-),(5)
Table 2-1: CN1: Main Connector
Installation 9
2.6
CN2: External Power Input
CN1 Pin No Name
1
2
EXGND
Description
Grounds of the external power.
EX+24V External power supply of +24V DC
±
5%
Cable Color
Black
Red
Table 2-2: CN2: External Power Input
Notes:
1. CN2 is a plug-in terminal connector with no screw.
2. Be sure to use the external power supply. The +24V DC is used by external input/output signal circuit.
3. Wires for connection to CN2
Z Solid wire: Ï•
0.32 mm to Ï•
0.65 mm (AWG28 to AWG22)
Z
Z
Twisted wire: 0.08 mm
2
to 0.32 mm
2
(AWG28 to
AWG22)
Naked wire length: 10 mm standard
4. The EX+24V is shorted inside PCI-8136 with COM+ in
CN1 (No. 6,7,8).
5. The EXGND is shorted inside PCI-8136 with COM- in
CN1 (No. 55,56).
10 Installation
2.7
CN3 Pin Assignments: DB25 Connector
The signals on CN3 are for Analog input and remote serial IO.
Note1: The DAC1-3 pins are the same with those on CN1
Note2: The Remote Serial IO #2 is reserved.
2.8
CN4 Pin Assignments: DB9 Connector
The signals on CN4 are for remote serial IO#1.
Note: The Remote Serial IO #1 is reserved.
Installation 11
12 Installation
3 Signal Connections
The signal connections of all the I/O signals are described in this chapter. Please refer to the contents of this chapter before wiring the cable between the PCI-8136 and IO Device.
This chapter contains the following sections:
Section 3.1 Analog Inputs
Section 3.2 Analog Outputs
Section 3.3 Digital Inputs
Section 3.4 Digital Outputs
Section 3.5 Pulse Inputs
Section 3.6 Pulse Outputs
Section 3.7 VCC Pin
Signal Connections 13
14
3.1
Analog Input
The PCI-8136 provides 6 A/D converter channels. The analog source is selectable for each channel to be ±10V DC (Default) or
±20 mA automatically.
To avoid ground loops and get more accuracy measurement of A/
D conversion, it is quite important to understand the signal source type. The PCI-8136 provides differential input modes that consist of two inputs per channel.
Signal PIN Connector Function
ADC0+ 20 CN3 (DB25) ADC channel 0 (+)
ADC07 CN3 (DB25) ADC channel 0 (-)
ADC1+ 21 CN3 (DB25) ADC channel 1 (+)
ADC18 CN3 (DB25) ADC channel 1 (-)
ADC2+ 22 CN3 (DB25) ADC channel 2 (+)
ADC29 CN3 (DB25) ADC channel 2 (-)
ADC3+ 23 CN3 (DB25) ADC channel 3 (+)
ADC310 CN3 (DB25) ADC channel 3 (-)
ADC4+ 24 CN3 (DB25) ADC channel 4 (+)
ADC411 CN3 (DB25) ADC channel 4 (-)
ADC5+ 25 CN3 (DB25) ADC channel 5 (+)
ADC512 CN3 (DB25) ADC channel 5 (-)
A differential source means the ends of the signal are not grounded. To avoid the danger of high voltage between the local ground of signal and the ground of the PC system, a shorted
Signal Connections
ground path must be connected. Figure 3.1.2 shows the connection of differential analog input sources.
Figure 3-1: Analog input circuit
Signal Connections 15
3.2
Analog Output
The PCI-8136 provides 6 16-bit Digital-to-Analog converter channels. The output voltage ranged from -10 V to +10V. To make correct connection, please refer to following figure:
16
Figure 3-2: Analog output circuit
The Analog outputs are all single ended with common ground
'AGND'. The following is the pin assignment information for DAC.
Signal PIN Connector Function
DAC0 2 CN1 (SCSI II – 100 Pin) DAC Channel 0
DAC1 3 CN1 (SCSI II – 100 Pin) DAC Channel 1
DAC2 4 CN1 (SCSI II – 100 Pin) DAC Channel 2
DAC3 52 CN1 (SCSI II – 100 Pin) DAC Channel 3
DAC4 53 CN1 (SCSI II – 100 Pin) DAC Channel 4
DAC5 54 CN1 (SCSI II – 100 Pin) DAC Channel 5
AGND 1 CN1 (SCSI II – 100 Pin) Analog Ground
AGND 51 CN1 (SCSI II – 100 Pin) Analog Ground
AGND 5 CN3 (DB25) Analog Ground
AGND 13
DAC0 18
DAC1 19
DAC2 6
CN3 (DB25)
CN3 (DB25)
CN3 (DB25)
CN3 (DB25)
Analog Ground
DAC Channel 0
DAC Channel 1
DAC Channel 2
Signal Connections
3.3
Digital Input
The PCI-8136 provides 19 digital inputs with 2500V rms isolation.
The system recognizes a logical '1' when no current goes from
COM+ to DIf, and, Logical '0' is returned when current goes from
COM+ to DIf. The max current passing trough DIf must be less than 20mA.
Here is the input circuit of digital input channels.
Figure 3-3: Digital input circuit
Example of input wiring:
Signal Connections 17
18
The following is the pin assignment information for digital input.
Signal PIN Connector Function
DI00 9 CN1 (SCSI II – 100 Pin) Digital Input Ch. 00
DI01 59 CN1 (SCSI II – 100 Pin) Digital Input Ch. 01
DI02 13 CN1 (SCSI II – 100 Pin) Digital Input Ch. 02
DI03 63 CN1 (SCSI II – 100 Pin) Digital Input Ch. 03
DI04 17 CN1 (SCSI II – 100 Pin) Digital Input Ch. 04
DI05 67 CN1 (SCSI II – 100 Pin) Digital Input Ch. 05
DI06 10 CN1 (SCSI II – 100 Pin) Digital Input Ch. 06
DI07 11 CN1 (SCSI II – 100 Pin) Digital Input Ch. 07
DI08 60 CN1 (SCSI II – 100 Pin) Digital Input Ch. 08
DI09 61 CN1 (SCSI II – 100 Pin) Digital Input Ch. 09
DI10 14 CN1 (SCSI II – 100 Pin) Digital Input Ch. 10
DI11 15 CN1 (SCSI II – 100 Pin) Digital Input Ch. 11
DI12 64 CN1 (SCSI II – 100 Pin) Digital Input Ch. 12
DI13 65 CN1 (SCSI II – 100 Pin) Digital Input Ch. 13
DI14 18 CN1 (SCSI II – 100 Pin) Digital Input Ch. 14
DI15 19 CN1 (SCSI II – 100 Pin) Digital Input Ch. 15
DI16 68 CN1 (SCSI II – 100 Pin) Digital Input Ch. 16
DI17 69 CN1 (SCSI II – 100 Pin) Digital Input Ch. 17
DI18 57 CN1 (SCSI II – 100 Pin) Digital Input Ch. 18
COM55 CN1 (SCSI II – 100 Pin) DIO Common Ground
COM56 CN1 (SCSI II – 100 Pin) DIO Common Ground
Signal Connections
3.4
Digital Output
The PCI-8136 provides 7 open collector outputs with 2500 V rms isolation. The maximum output switching frequency is 10 kHz, when the continuous output supply current is subject to 500mA/ total, 90mA/CH(typical), and 150mA/CH(max). In power-on state, the system issues a logical '0'.
Here is the output circuit of digital output channels.
Figure 3-4: Digital output circuit
Example of output wiring:
When output is set to “HIGH”, current goes from COM+ to
COM-
When output is set to “LOW”, the resistance value between
DO Ï•
and COM- becomes extremely large, so that no current was drawn from COM+.
The following is the pin assignment information for Digital Output.
Signal PIN Connector Function
COM+ 6 CN1 (SCSI II – 100 Pin) EXT +24V for Digital Output
COM+ 7 CN1 (SCSI II – 100 Pin) EXT +24V for Digital Output
COM+ 8 CN1 (SCSI II – 100 Pin) EXT +24V for Digital Output
DO0 12 CN1 (SCSI II – 100 Pin) Digital Output CH.0
DO1 62 CN1 (SCSI II – 100 Pin)
DO2 16 CN1 (SCSI II – 100 Pin)
Digital Output CH.1
Digital Output CH.2
DO3 66 CN1 (SCSI II – 100 Pin)
DO4 20 CN1 (SCSI II – 100 Pin)
DO5 70 CN1 (SCSI II – 100 Pin)
DO6 58 CN1 (SCSI II – 100 Pin)
Digital Output CH.3
Digital Output CH.4
Digital Output CH.5
Digital Output CH.6
Signal Connections 19
Signal PIN Connector
COM55 CN1 (SCSI II – 100 Pin)
COM56 CN1 (SCSI II – 100 Pin)
Function
DIO Common Ground
DIO Common Ground
20 Signal Connections
3.5
Pulse Input (Encoder Counter)
The PCI-8136 provides 6 differential pulse inputs with 2500V rms isolation. The pulse mode is software programmable to be ABphase, CW/CCW, or Pulse/Direction, and the counter speed goes up to 2 MHz. The relative signal names, and pin numbers are shown in the following tables.
Signal PIN Connector Function
EA0+ 21 CN1 (SCSI II – 100 Pin) Encoder CH.0 A-Phase (+)
EA022 CN1 (SCSI II – 100 Pin) Encoder CH.0 A-Phase (-)
EB0+ 23 CN1 (SCSI II – 100 Pin) Encoder CH.0 B-Phase (+)
EB024 CN1 (SCSI II – 100 Pin) Encoder CH.0 B-Phase (-)
EZ0+ 25 CN1 (SCSI II – 100 Pin) Encoder CH.0 Z-Phase (+)
EZ026 CN1 (SCSI II – 100 Pin) Encoder CH.0 Z-Phase (-)
EA1+ 71 CN1 (SCSI II – 100 Pin) Encoder CH.1 A-Phase (+)
EA172 CN1 (SCSI II – 100 Pin) Encoder CH.1 A-Phase (-)
EB1+ 73 CN1 (SCSI II – 100 Pin) Encoder CH.1 B-Phase (+)
EB174 CN1 (SCSI II – 100 Pin) Encoder CH.1 B-Phase (-)
EZ1+ 75 CN1 (SCSI II – 100 Pin) Encoder CH.1 Z-Phase (+)
EZ176 CN1 (SCSI II – 100 Pin) Encoder CH.1 Z-Phase (-)
EA2+ 27 CN1 (SCSI II – 100 Pin) Encoder CH.2 A-Phase (+)
EA228 CN1 (SCSI II – 100 Pin) Encoder CH.2 A-Phase (-)
EB2+ 29 CN1 (SCSI II – 100 Pin) Encoder CH.2 B-Phase (+)
EB230 CN1 (SCSI II – 100 Pin) Encoder CH.2 B-Phase (-)
EZ2+ 31 CN1 (SCSI II – 100 Pin) Encoder CH.2 Z-Phase (+)
EZ232 CN1 (SCSI II – 100 Pin) Encoder CH.2 Z-Phase (-)
EA3+ 77 CN1 (SCSI II – 100 Pin) Encoder CH.3 A-Phase (+)
EA378 CN1 (SCSI II – 100 Pin) Encoder CH.3 A-Phase (-)
EB3+ 79 CN1 (SCSI II – 100 Pin) Encoder CH.3 B-Phase (+)
EB380 CN1 (SCSI II – 100 Pin) Encoder CH.3 B-Phase (-)
EZ3+ 81 CN1 (SCSI II – 100 Pin) Encoder CH.3 Z-Phase (+)
EZ382 CN1 (SCSI II – 100 Pin) Encoder CH.3 Z-Phase (-)
EA4+ 33 CN1 (SCSI II – 100 Pin) Encoder CH.4 A-Phase (+)
EA434 CN1 (SCSI II – 100 Pin) Encoder CH.4 A-Phase (-)
Signal Connections 21
22
Signal PIN Connector Function
EB4+ 35 CN1 (SCSI II – 100 Pin) Encoder CH.4 B-Phase (+)
EB436 CN1 (SCSI II – 100 Pin) Encoder CH.4 B-Phase (-)
EZ4+ 37 CN1 (SCSI II – 100 Pin) Encoder CH.4 Z-Phase (+)
EZ438 CN1 (SCSI II – 100 Pin) Encoder CH.4 Z-Phase (-)
EA5+ 83 CN1 (SCSI II – 100 Pin) Encoder CH.5 A-Phase (+)
EA584 CN1 (SCSI II – 100 Pin) Encoder CH.5 A-Phase (-)
EB5+ 85 CN1 (SCSI II – 100 Pin) Encoder CH.5 B-Phase (+)
EB586 CN1 (SCSI II – 100 Pin) Encoder CH.5 B-Phase (-)
EZ5+ 87 CN1 (SCSI II – 100 Pin) Encoder CH.5 Z-Phase (+)
EZ588 CN1 (SCSI II – 100 Pin) Encoder CH.5 Z-Phase (-)
The input circuits of the EA, EB, EZ signals are shown as follows.
Figure 3-5: Pulse input (encoder counter) circuit
Note: The voltage across every differential pair of encoder input signals (EA+, EA-), (EB+, EB-) and (EZ+, EZ-) should be at least 3.5V or higher. Therefore, you have to take care of the driving capability when connecting with the encoder feedback or motor driver feedback.
Here are two examples of connecting the input signals with the external circuits. The input circuits can connect to the encoder or motor driver, which are equipped with: (1) a differential line driver or (2) open collector output.
Signal Connections
Connection to Line Driver Output
To drive the PCI-8136 encoder input, the driver output must provide at least 3.5V across the differential pairs with at least 6 mA driving capability. The ground level of the two sides must be tight together too.
Figure 3-6: Connection to line driver output
Connection to Open Collector Output
To connect with open collector output, an external power supply is necessary. Some motor drivers also provide the power source.
The connection between PCI-8136, encoder, and the power supply is shown in the following diagram. Please note that the external current limit resistor R is necessary to protect the PCI-8136 input circuit. The following table lists the suggested resistor value according to the encoder power supply.
Encoder Power(VDD) External Resistor R
+5V
+12V
+24V
0
Ω
(None)
1.8k
Ω
4.3k
Ω
Signal Connections 23
Figure 3-7: Connect to open collector output
24 Signal Connections
3.6
Pulse Output (Pulse Generator)
The PCI-8136 provides 6 differential pulse output channels. The pulse mode is software programmable to be Pulse/Direction, CW/
CCW, or AB-phase, and the output frequency goes up to 500 KHz.
The operations of pulse output channels are quite straightforward.
Call library functions to set pulse mode, send pulse at constant frequency, and stop pulse. Please refer to chapter 5 for detail function descriptions.
The relative signal names, and pin numbers are shown in the following tables.
Signal PIN Connector
OUT1+ 39 CN1 (SCSI II – 100 Pin)
OUT140 CN1 (SCSI II – 100 Pin)
DIR1+ 41 CN1 (SCSI II – 100 Pin)
DIR142 CN1 (SCSI II – 100 Pin)
OUT2+ 89 CN1 (SCSI II – 100 Pin)
OUT290 CN1 (SCSI II – 100 Pin)
DIR2+ 91 CN1 (SCSI II – 100 Pin)
DIR292 CN1 (SCSI II – 100 Pin)
OUT3+ 43 CN1 (SCSI II – 100 Pin)
OUT344 CN1 (SCSI II – 100 Pin)
DIR3+ 45 CN1 (SCSI II – 100 Pin)
DIR346 CN1 (SCSI II – 100 Pin)
OUT4+ 83 CN1 (SCSI II – 100 Pin)
OUT484 CN1 (SCSI II – 100 Pin)
DIR4+ 85 CN1 (SCSI II – 100 Pin)
DIR486 CN1 (SCSI II – 100 Pin)
OUT5+ 47 CN1 (SCSI II – 100 Pin)
OUT548 CN1 (SCSI II – 100 Pin)
DIR5+ 49 CN1 (SCSI II – 100 Pin)
DIR550 CN1 (SCSI II – 100 Pin)
OUT6+ 97 CN1 (SCSI II – 100 Pin)
OUT698 CN1 (SCSI II – 100 Pin)
DIR6+ 99 CN1 (SCSI II – 100 Pin)
DIR6100 CN1 (SCSI II – 100 Pin)
Function
CH.1 Pulse Signal (+)
CH.1 Pulse Signal (-)
CH.1 Direction Signal (+)
CH.1 Direction Signal (-)
CH.2 Pulse Signal (+)
CH.2 Pulse Signal (-)
CH.2 Direction Signal (+)
CH.2 Direction Signal (-)
CH.3 Pulse Signal (+)
CH.3 Pulse Signal (-)
CH.3 Direction Signal (+)
CH.3 Direction Signal (-)
CH.4 Pulse Signal (+)
CH.4 Pulse Signal (-)
CH.4 Direction Signal (+)
CH.4 Direction Signal (-)
CH.5 Pulse Signal (+)
CH.5 Pulse Signal (-)
CH.5 Direction Signal (+)
CH.5 Direction Signal (-)
CH.6 Pulse Signal (+)
CH.6 Pulse Signal (-)
CH.6 Direction Signal (+)
CH.6 Direction Signal (-)
Signal Connections 25
Here is the circuit of PCI-8136 pulse output (pulse generator) channels.
Figure 3-8: Pulse output (pulse generator) circuit
3.7
VCC Pin
There is one pin named VCC+5V on Pin5 of CN1. This voltage source is from external 24V. Please don't use this voltage source on any device which is connected to PCI-8136's isolation I/Os. If not, the grounds will be connected at both of the isolative sides and the noise will be introduced from this loop. So the isolation will be meaningless. The VCC's ground is the same with AGND inside the board.
26 Signal Connections
4 Operation Theory
This chapter describes the detail operation of the PCI-8136 card.
Contents of the following sections are as following.
X
X
X
X
X
X
Section 4.1: AD Conversion and Preloaded Trigger
Section 4.2: DA Conversion
Section 4.3: DIO
Section 4.4: Pulse Input and Position Compare
Section 4.5: Pulse Output
Section 4.6:Interrupt Control
Please refer to the following architecture diagram of PCI-8136
ADC: Please refer to Section 4.1: AD Conversion and Preloaded
Trigger.
DAC: Please refer to Section 4.2: DA Conversion.
DIO: Please refer to Section 4.3: DIO.
ENC: Please refer to Section 4.4: Pulse Input and Position Compare.
Operation Theory 27
28
4.1
AD Conversion and Preloaded Trigger
4.1.1
ADC
The PCI-8136 provides 6 differential ADC channels. Each channel consists of two inputs. One for a (+) signal and the other for a (-) signal. The input signal may have a voltage range from –10 ~
+10V or current range from –20mA ~ 20mA. The following figure show the A (voltage or current) to D (value read) converting table.
The zero voltage or current is at value 2000.
Related functions:
_8136_A_Initial (): please refer to section 5.5
_8136_A_Read_Value (), _8136_A_Read_Volt (): please refer to section 5.5
4.1.2
Voltage Compare
The voltage compare function allows users to set a compare value by software function. When one ADC signal reaches the pre-set value, an interrupt will be generated for corresponding channel.
Relative functions:
_8136_A_Set_Compare_Value (),
_8136_A_Set_Compare_Volt (),
_8136_S_Set_Int_Factor () : please refer to section 5,7
Operation Theory
4.2
DA Conversion
The PCI-8136 has a 6 channel 16-bit, bipolar (±10V DC) digital to analog converter. The D (value assigned) to A (voltage output) converting chart is showed bellow.
4.2.1
DA Output by Trigger Source
PCI-8136 allows users to set a pre-load value for each DAC channel. The value will be sent once any trigger condition for this channel occurs. The trigger source could be from encoder counter comparators or ADCs by setting the trigger map in the software functions. Users can set every channel's trigger sources independently. The compare method could be set in Set_Int_Factor() function.
Related functions:
_8136_A_Initial () : please refer to section 5.5
_8136_A_Write_Value (), _8136_A_Write_Volt (),
_8136_A_Output_Control (): please refer to section 5.5
_8136_A_Set_Preload_Volt (), _8136_A_Set_Trigger (),
_8136_A_Set_Trigger_Map (): please refer to section 5.5
_8136_S_Set_Int_Factor (): please refer to section 5,7
Operation Theory 29
4.3
DIO
4.3.1
Digital Input
The PCI-8136 provides 19 digital input channels with 2500Vrms isolation. The DI channel is logically “HIGH” when no current goes from COM+ to DIf, and, Logically “LOW” when current goes from
COM+ to DIf. The max current passing through DIf must be less than 20mA.
30
Related functions:
_8136_D_Input (), _8136_D_InputA (): please refer to section
5.4
Operation Theory
4.3.2
Digital Output
The PCI-8136 provides 7 open collector output channels with
2500Vrms isolation. Please carefully refer to section 3.4 for the circuit wiring.
DO COM+
ULN2003
DOut
DOx
PhotoCouple
Isolation
DGND
EXGND
Inside PCI-8136
Related functions:
_8136_D_Output (), _8136_D_OutputA (): please refer to section 5.4
Operation Theory 31
4.4
Pulse Input and Position Compare
4.4.1
Pulse Input
The PCI-8136 has 6 32-bit pulse input channels for encoder counter. It can accept 3 kinds of pulse signal:
1. Plus and minus pulse inputs (CW/CCW mode)
2. 90°phase difference signals(AB phase mode)
3. Pulse and direction inputs (Pulse/DIR).
90° phase difference signals may be selected to be multiplied by a factor of 1, 2, or 4x AB phase mode is the most commonly used for incremental encoder input. For example, if a rotary encoder has
2000 pulses per phase (A or B phase), then the value read from the counter will be 8000 pulses per turn These input modes can be selected by software function calls.
Plus and minus pulses input mode(CW/CCW Mode)
In this mode, pulse from EA causes the counter to count up, whereas EB causes the counter to count down.
32 Operation Theory
90° phase difference signals Input Mode(AB phase Mode)
In this mode, the EA signal is 90° phase leading or lagging in comparison to the EB signal. Where “lead” or “lag' of phase difference between two signals is caused by the turning direction of motors.
The up/down counter counts up when the phase of EA signal leads the phase of EB signal.
The following diagram shows the waveform.
Pulse and direction input (Pulse/DIR)
In this mode, the high / low status of EB will cause the counter value to increase or decrease (Direction), whereas the high/low status of EA will cause the count number to increase or decrease
(Pulse).
4.4.2
Encoder Counter Value Capture (latch)
The EZ (index signal) of each pulse input channel doesn't affect counter value. It can capture (latch) the current counter value by proper setting, and generate an interrupt signal when receiving a rising edge. The counter value capture function is very useful to sensing the position of a moving object.
Operation Theory 33
Related functions:
_8136_P_Initial (): please refer to section 5.6
_8136_P_Set_Input_Type (), _8136_P_Read (),
_8136_P_Clear (), _8136_P_Set_Index_Latch (),
_8136_P_Read_Index (), _8136_P_Read_Latch_Value (): please refer to section 5.6
4.4.3
Encoder Counter Value Compare
The PCI-8136 provides a position compare function for all six pulse input channels. Once the counter value is reached the preset compare value, an interrupt signal will be generated immediately. This function can effectively reduce the overhead of CPU's polling for current position.
Related functions:
_8136_S_Set_Int_Factor (): please refer to section 5,7
_8136_P_Set_Compare_Value (): please refer to section 5.6
34 Operation Theory
4.5
Pulse Output
The PCI-8136 provides 6 pulse output channels. They are used to send out constant-frequency pulse trains. When changing the output frequency of any channel, there is at most 265ms time delay.
There are also 3 kinds of pulse outputs: (1). plus and minus pulse inputs (CW/CCW mode); (2) pulse and direction input(Pulse/DIR);
(3). 90° phase difference signals(AB phase mode);
Pulse and direction input(Pulse/DIR)
In this mode, the high / low status of DIR defines the plus / negative direction, whereas OUT generates the pulse train.
Plus and minus pulses input mode(CW/CCW Mode)
In this mode, plus frequency (plus direction) goes on OUT, whereas negative frequency (negative direction) is generated from
DIR.
Operation Theory 35
90° phase difference signals input mode(AB phase Mode)
In this mode, the OUT signal is 90° phase leading or lagging in comparison with DIR signal. Where “lead” or “lag' of phase difference between two signals is caused by the direction of pulse train.
Related functions:
_8136_P_Initial (): please refer to section 5.6
_8136_P_Set_Output_Type (), _8136_P_Send (),
_8136_P_Stop (), _8136_P_Change_Speed (): please refer to section 5.6
36 Operation Theory
4.6
Interrupt Control
The PCI-8136 can generate an INT signal to the host PC according to 7 of factors, refer to _8136_S_Set_Int_factor () function for more details. Type 0 to type 2 are local digital Input interrupts.
The following table represents the interrupt setting for local digital
Input:
_8136_S_Set_Int_factor(Cardno, ChannelNo,
Int_Factor)
Channel
Channel 0 1 2 3 4 5
Int. factor bit(type)
0
1
2
3
4
5
6
DI 6/7 DI 8/9 DI 10/11 DI 12/13 DI 14/15 DI 16/17
DI 18 -
DI 00 DI 01 DI 02
EZ1 EZ2 EZ3
DI 03
EZ4
DI 04
EZ5
DI 05
EZ6
CMP1 CMP2 CMP3 CMP4 CMP5 CMP6
Timer -
ADC1 ADC2 ADC3 ADC4 ADC5 ADC6
Note: Once the first row of interrupt factor is set, both of the digit channels' interrupt are enabled. The interrupt comes when any one of the two digital channels' are triggered.
EZ is index signal , CMP is position compare true, Timer is card's internal timer, ADC is analog compare true.
For each channel number, the interrupt can be set according to above table.
Since interruptions can not be handled with a Windows System, the PCI-8136 has a Windows message system to handle interruptions. This card uses events to notice the user's program if an interruption is coming. Users can create a thread to retreive the interrupt events and then use _8136_S_Get_Int_Status () to get the interrupt status. The status bits for each axis is in the following table:
Operation Theory 37
38
_8136_S_Get_Int_Status(Cardno, AxisNo, Status)
Bits Description
0 Digital Input pin 6/8/10/12/14/16 interrupt
1 Digital Input pin 7/9/11/13/15/17 interrupt
2 Digital Input pin 18 interrupt
3 Digital Input pin 0~5 interrupt
4 Index signal interrupt
5 Position counter compare interrupt
6 Internal timer interrupt
7 Analog compared interrupt
Table 4-1: _8136_S_Get_Int_Status
Use Thread to deal with Interrupt under Windows NT/95
In order to detect the interrupt signal from PCI-8136 under Windows NT/95, users must create a thread routine first. Then use
APIs provided by PCI-8136 to get the interrupt signal. Each card has 7 events for these interrupts. Event 0 ~ 5 stands for channel
0~5 and event 6 stands for timer interrupt and alarm interrupt. The sample program is as follows:
Situation : Assume that we have one card and want to receive
Timer interrupt.
Steps :
1. Define a Global Value to deal with interrupt event
HANDLE hEvent[7]; volatile bool ThreadOn;
2. In Initializing Section (you must Initialize PCI-8136 properly first), set interrupt types and enable an event for each axis.
_8136_S_Set_Int_Factor(0,0, 0x40);
_8136_S_INT_Control(0,1);
_8136_INT_Enable(0,&hEvent[0]);
Note: For each card, you must assign a 7-events-array in
_8136_INT_Enable function.
Operation Theory
3. Define a Global Function (Thread Body). Use WaitForSingleObject() or WaitForMultipleObjects() to wait events.
Remember to reset this event after you get the event.
UINT IntThreadProc(LPVOID pParam)
{
U32 IntSts; while(ThreadOn==TRUE)
{
::WaitForSingleObject(hEvent[6],INFINITE);
_8136_S_Get_Int_status(0,0,&IntSts);
::ResetEvent(hEvent[6]);
} return 0;
}
4. Start the thread( Use a boolean value to control the thread's life )
ThreadOn=TRUE;
AfxBeginThread(IntThreadProc,GetSafeHwnd(),THREA
D_PRIORITY_NORMAL);
5. Before exiting the program, remember to let the thread go to end naturally.
ThreadOn=FALSE;
Note: If users need to deal interrupt under VB6.0. Please refer to section 5.7 for details.
We suggest user creates a thread and uses WaitForSingleObject () for each event in order to guarantee proper performance.
Operation Theory 39
40 Operation Theory
5 Function Library
This chapter describes the supporting software for PCI-8136 cards. User can use these functions to develop application programs in Visual Basic, Visual Basic .Net, Visual C++, Visual
C++.Net, C++ Builder, and Delphi language.
The function prototypes and some common data types are decelerated in PCI-8136.H. These data types are used by PCI-8136 library. We suggest you to use these data types in your application programs. The following table shows the data type names and their range.
Type Name
U8
I16
U16
I32
U32
F32
F64
Description
8-bit ASCII character
16-bit signed integer
16-bit unsigned integer
32-bit signed long integer
32-bit unsigned long integer
32-bit single-precision floating-point
64-bit double-precision floating-point
Range
0 to 255
-32768 to 32767
0 to 65535
-2147483648 to 2147483647
0 to 4294967295
-3.402823E38 to 3.402823E38
-1.797683134862315E308
to 1.797683134862315E309
TRUE, FALSE Boolean Boolean logic value
The functions of PCI-8136's software drivers use full-names to represent the functions' real meaning. The naming convention rules are:
In a C Environment:
_{hardware_model}_{action_name}. e.g. _8136_Initial ().
In order to recognize the difference between C/C++ library and
Visual Basic library, A capital "B" is put on the head of each function name of the Visual Basic function. e.g. B_8136_Initial ()
Function Library 41
42
5.1
List of Functions
Initialization
_8136_Initial
_8136_S_Close
Interface card initialization
Interface card close
_8136_S_Get_IRQ_Channel Get card's IRQ
_8136_S_Get_Base_Addr
System Parameters
Get card's base address
Set Timer click count _8136_S_Set_Timer_Value
Digital I/O
_8136_D_Output
_8136_D_Input
_8136_D_OutputA
_8136_D_InputA
Analog I/O
_8136_A_Initial
Digital output for one bit
Digital input for one bit
Digital Output for all bits once
Digital Input for all bits once
Analog I/O initialization
_8136_A_Set_Source
_8136_A_Write_Value
_8136_A_Write_Volt
_8136_A_Read_Value
_8136_A_Read_Volt
_8136_A_Output_Control
_8136_A_Set_Trigger
_8136_A_Set_Trigger_Map
Output DAC in voltage
Input from ADC in value
Input from ADC in voltage
Start or stop DAC output
Set DAC output by trigger
Select DAC trigger source
_8136_A_Set_Preload_Volt Set DAC trigger output voltage
_8136_A_Set_Compare_Value Set ADC compare value
_8136_A_Set_Compare_Volt Set ADC compare voltage
_8136_A_Output_Control
Pulse I/O
_8136_P_Initial
_8136_P_Set_Output_Type
Set pulse output mode
Pulse I/O initialization
_8136_P_Set_Input_Type
_8136_P_Read
Set pulse input mode
Read encoder counter
Section 5.2
Section 5.3
Section 5.4
Section 5.5
Section 5.6
Function Library
_8136_P_Clear
_8136_P_Send
_8136_P_Stop
Clear encoder counter
Send a constant pulse train
Stop pulse train
_8136_P_Change_Speed
_8136_P_Read_Index
Change pulse train frequency
Read index value
_8136_P_Set_Index_Latch Set index latch type
_8136_P_Read_Latch_Value Read a latched encoder data
_8136_P_Set_Compare_Value Set a encoder compare data
_8136_P_Get_Stock_Count
_8136_P_Set_Input_Logic
Interrupt
_8136_INT_Enable
_8136_INT_Disable
_8136_S_Set_Int_Factor
_8136_S_INT_Control
_8136_S_Get_Int_Status
Set interrupt event handler
Remove int. event handler
Set interrupt factor
Enable/disable interrupt
Get Int. status
Section 5.7
Function Library 43
44
5.2
Initialization
@ Name
_8136_Initial – Software Initialize for PCI-8136
_8136_S_Close – Software release for PCI-8136
_8136_S_Get_IRQ_Channel - Get card's IRQ
_8136_S_Get_Base_Addr - Get card's base address
@ Description
_8136_Initial :
This function is used to initialize PCI-8136 card. User must use this function before any operation in the program. This function will tell the number of cards it finds.
_8136_S_Close :
This function is used to close PCI-8136 card. It releases the resources declared by the driver. User must use this function before the program ends.
_8136_S_Get_IRQ_Channel :
Although PCI-8136 is a PCI interface card, this function can be used to get the IRQ channel which is assigned by PCI BIOS. This value has no meaning when operating this card. It is only a part of
PCI-8136's information
_8136_S_Get_Base_Addr
Although PCI-8136 is a PCI interface card, user can use this function to get the I/O Base Address which is assigned by PCI BIOS.
This value has no meaning when operating this card. It is only a part of PCI-8136's information
@ Syntax
C/C++ (DOS, Windows 95/98/NT/2000)
I16 _8136_Initial(I16 *existCards);
I16 _8136_S_Close(I16 CardNo); void _8136_S_Get_IRQ_Channel(I16 cardNo, U16
*irq_no ) void _8136_S_Get_Base_Addr(I16 cardNo, U16
*base_addr )
Function Library
Visual Basic 5.0 or higher
B_8136_Initial (existCards As Integer) As Integer
B_8136_S_Close (ByVal CardNo As Integer) As
Integer
B_8136_S_Get_IRQ_Channel(ByVal cardNo As Integer, irq_no As Integer)
B_8136_S_Get_Base_Addr(ByVal cardNo As Integer, base_addr As Integer )
@ Arguments
CardNo : card number designated to set (Range 0 - 3)
*existCards : a return value to indicate how many cards are found
Irq_no : IRQ channel for this card, return value
Base_addr : Base Address for this card, return value
@ Return Code
ERR_RangeError
ERR_PCIBiosNotExist
ERR_NoError
Function Library 45
46
5.3
System Parameters
@ Name
_8136_A_Set_DAC_Clk - Set DAC clock divider
_8136_A_Set_ADC_Clk -Set ADC clock divider
_8136_S_Set_Timer_Value - Set Timer click count
_8136_P_Set_Enc_Filter - Set encoder filter clock
@ Description
_8136_A_Set_DAC_Clk
There are 6 serial type DA channels in PCI-8136. This function is for settles the DAC transmission clock. Assign a clock divider number to change the DAC transmission rate. The maximum transmission clock is about 8.33 Mhz and the minimum is about
65Khz.
_8136_A_Set_ADC_Clk
There are 6 serial type AD channels in PCI-8136. This function settles the ADC transmission clock. Assign a clock divider number to change the DAC transmission rate. The maximum transmission clock is about 8.33 Mhz and the minimum is about 65 Khz.
_8136_S_Set_Timer_Value
There is a 24-bits counter in PCI-8136. This function settles the counter value and receives a fixed interrupt interval from this timer when the counting is finished. The timer clock rate is 33.3 Mhz. If user set the timer value to be 333000 then the interrupt interval will be 10ms.
_8136_P_Set_Enc_Filter
The encoder counter base clock is 33.3 Mhz. This function settles the encoder counter filter to fit the pulse rate from users. The maximum value for this filter is 127 and it means user's input pulse rate is smaller than 260 Khz.
Function Library
@ Syntax
C/C++ (DOS, Windows 95/98/NT/2000)
I16 _8136_A_Set_DAC_Clk(I16 CardNo, I16
Clk_Divider)
I16 _8136_A_Set_ADC_Clk(I16 CardNo, I16
Clk_Divider)
I16 _8136_S_Set_Timer_Value(I16 CardNo,U32
TimerValue)
I16 _8136_P_Set_Enc_Filter(I16 CardNo,I16 Filter)
Visual Basic 5.0 or higher
B_8136_A_Set_DAC_Clk(ByVal CardNo As Integer,
ByVal Clk_Divider As Integer) As Integer
B_8136_A_Set_ADC_Clk(ByVal CardNo As Integer,
ByVal Clk_Divider As Integer ) As Integer
B_8136_S_Set_Timer_Value(ByVal CardNo As Integer
, ByVal TimerValue As Long ) As Integer
B_8136_P_Set_Enc_Filter(ByVal CardNo As Integer,
ByVal Filter As Integer) As Integer
@ Arguments
CardNo : card number designated to set (Range 0-3)
Clk_Divider : Set transmission clock divider ( Range 0-127 )
TimerValue : Set timer value (Range: 28 bits)
Filter : Set Filter sample clock divider (Range 0-127)
@ Return Code
ERR_RangeError
ERR_NoError
Function Library 47
48
5.4
Digital I/O
@ Name
_8136_D_Output - Digital output for one bit
_8136_D_Input - Digital input for one bit
_8136_D_OutputA - Digital Output for all bits once
_8136_D_InputA - Digital Input for all bits once
@ Description
_8136_D_Output :
There are 7 open collector output channels in PCI-8136. This function controls these output bits by setting them on or off. This function can set each channel individually. Please refer to the pin assignment for bit numbers.
_8136_D_Input
There are 19 open isolated digital input channels in PCI-8136.
This function retrieves these input bits by setting them on or off.
This function can get each channel individually. Please refer to the pin assignment for bit numbers.
_8136_D_OutputA
There are 7 open collector output channels in PCI-8136. This function controls these output bits by setting them on or off. This function can set all output channels on/off by a value once. Each bit of this value represents the actual output bit. Please refer to the pin assignment for bit numbers.
_8136_D_InputA
There are 19 open isolated digital input channels in PCI-8136.
This function retrieves these input bits by setting them on or off.
This function can retrieve all input channels' status once. Each bit of this value represents the actual input channel. Please refer to the pin assignment for bit numbers.
Function Library
@ Syntax
C/C++ (DOS, Windows 95/98/NT/2000)
U16 _8136_D_Output( I16 CardNo , I16 Channel ,
I16 Control );
U16 _8136_D_Input( I16 CardNo , I16 Channel ,
I16* Control );
U16 _8136_D_OutputA( I16 CardNo , I16 Value );
U16 _8136_D_InputA( I16 CardNo , I32 *Value );
Visual Basic 5.0 or higher
B_8136_D_Output(ByVal CardNo As Integer, ByVal
Channe As Integer, ByVal Control As Integer)
As Integer
B_8136_D_Input(ByVal CardNo As Integer, ByVal
Channel As Integer, Control As Integer) As
Integer
B_8136_D_OutputA (ByVal CardNo As Integer, ByVal
Value As Integer) As Integer
B_8136_D_InputA(ByVal CardNo As Integer, Value As
Long) As Integer
@ Argument
CardNo : card number designated to set (Range 0 - 3)
Channel : channel number designated to set (Range 0 - 6)
Control : control value for the designated channel (Range 0 - 1)
Value : control value for all digital output (Range 0 - 0x7f )
Control : return value for designated channel (Range 0 - 1)
Value : return value for all digital input (Range 0 - 0x7ffff)
@ Return Code
ERR_RangeError
ERR_NoError
Function Library 49
50
5.5
Analog I/O
@ Name
_8136_A_Initial – Initialize ADC/DAC functions for PCI-8136
_8136_A_Write_Value - Output DAC in value
_8136_A_Write_Volt - Output DAC in voltage
_8136_A_Read_Value - Input from ADC in value
_8136_A_Read_Volt - Input from ADC in voltage
_8136_A_Output_Control - Start or stop DAC output
_8136_A_Set_Trigger - Set DAC output by trigger
_8136_A_Set_Trigger_Map - Select DAC trigger source
_8136_A_Set_Preload_Volt - Set DAC trigger output voltage
_8136_A_Set_Compare_Value - Set ADC compare value
_8136_A_Set_Compare_Volt - Set ADC compare voltage
@ Description
_8136_A_Initial :
This function enables serial ADC and DAC functions and sets the transmission clock divider. Tthis function must be used before using Analog IO.
_8136_A_Write_Value
This function generates a DC value from DAC channel. The DA converter resolution is 16-bits. The mapping value for 0 volt is
0x0000 , +10 volt is 0x7fff and –10 volt is 0x8000. There are six channels in one card. All channels are free to run individually.
_8136_A_Write_Volt
This function is for generating a DC value from DAC channel. The
DA converter resolution is 16-bits. A voltage value can be assigned to this function directly. The voltage value range is–10.0
to +10.0. There are six channels in one card. All channels are free to run individually.
Function Library
_8136_A_Read_Value
This function reads a digital value from ADC channel. . A word can be read from this function. The mapping value for 0V is 2000,
+10V is 4000 and –10V is 0. There are six channels in one card.
All channels are free to run individually.
_8136_A_Read_Volt
This function reads a voltage value from ADC channel. A voltage value can be read from this function directly. The range of the read-back voltage value is for –10.0V to +10.0V. There are six channels in one card. All channels are free to run individually.
_8136_A_Output_Control
This function will stop the outputting of any voltage from DA channel, and will immediately close DA channel. It can be open again by this function too.
_8136_A_Set_Trigger
This function enables/disables DA channel output by trigger source. The trigger source would be ADC comparator interrupt or encoder counter comparator interrupt.
_8136_A_Set_Trigger_Map
This function assigns each channel's trigger source. The trigger source is selected by one parameter. Each bit of this parameter represents one kind of trigger source. Bit 0-5 means trigger source is from encoder counter channel 0-5 and bit 8-13 means trigger source is from ADC channel 0-5. Set 1 is for enabling and 0 is for disabling.
_8136_A_Set_Preload_Volt
Once user set the DAC trigger function, the preload voltage must be set . When the trigger is active, the DAC channel will output this preload value.
_8136_A_Set_Compare_Value
This function is for DAC trigger output or simply for generating
ADC comparator interrupt. When user wants to output a preload voltage which is triggered by ADC level, the trigger level must be set by this function. The range is from 0 to 4000.
Function Library 51
52
_8136_A_Set_Compare_Volt
This function is for DAC trigger output or simply for generating
ADC comparator interrupt. When user wants to output a preload voltage which is triggered by ADC level, the trigger level must be set by this function. The trigger level is set by ADC voltage with a range from –10.0 to 10.0.
@ Syntax
C/C++ (DOS, Windows 95/98/NT/2000)
I16 _8136_A_Initial(I16 CardNo)
I16 _8136_A_Write_Value(I16 CardNo, I16 Channel,
I16 Value)
I16 _8136_A_Write_Volt(I16 CardNo, I16 Channel,
F64 Volt)
I16 _8136_A_Read_Value(I16 CardNo, I16 Channel,
I16 *Value)
I16 _8136_A_Read_Volt(I16 CardNo, I16 Channel,
F32 *Volt)
I16 _8136_A_Output_Control(I16 CardNo, I16
Channel, I16 Control)
I16 _8136_A_Set_Compare_Value(I16 CardNo, I16
Channel, I16 Value)
I16 _8136_A_Set_Compare_Volt(I16 CardNo, I16
Channel, F64 Volt)
I16 _8136_A_Set_Trigger_Map(I16 CardNo, I16
Channel, I16 Source)
I16 _8136_A_Set_Trigger(I16 CardNo, I16 Channel,
I16 Control)
I16 _8136_A_Set_Preload_Volt(I16 CardNo, I16
Channel, F64 Volt)
Visual Basic 5.0 or higher
B_8136_A_Initial (ByVal CardNo As Integer) As
Integer
B_8136_A_Write_Value (ByVal CardNo As Integer,
ByVal Channel As Integer, ByVal Value As
Integer) As Integer
B_8136_A_Write_Volt (ByVal CardNo As Integer,
ByVal Channel As Integer, ByVal Volt As
Single) As Integer
Function Library
B_8136_A_Read_Value Lib (ByVal CardNo As Integer,
ByVal Channel As Integer, Value As Integer)
As Integer
B_8136_A_Read_Volt (ByVal CardNo As Integer,
ByVal Channel As Integer, Volt As Double) As
Integer
B_8136_A_Output_Control (ByVal CardNo As Integer,
ByVal Channel As Integer, ByVal Control As
Integer) As Integer
B_8136_A_Set_Compare_Value(ByVal CardNo As
Integer, ByVal Channel As Integer, ByVal
Value As Integer) As Integer
B_8136_A_Set_Compare_Volt (ByVal CardNo As
Integer, ByVal Channel As Integer, ByVal
Volt As Double) As Integer
B_8136_A_Output_Control (ByVal CardNo As Integer,
ByVal Channel As Integer, ByVal Control As
Integer) As Integer
B_8136_A_Set_Trigger_Map(ByVal CardNo As
Integer,ByVal Channel As Integer, ByVal
Source As Integer) As Integer
B_8136_A_Set_Trigger(ByVal CardNo As Integer,
ByVal Channel As Integer, ByVal Control As
Integer) As Integer
B_8136_A_Set_Preload_Volt(ByVal CardNo As
Integer, ByVal Channel As Integer, ByVal
Volt As Double) As Integer
@ Argument
CardNo : card number designated to set (Range 0 - 3)
Channel : channel number designated to set (Range 0 - 5)
Value : the output value for DAC channel (Range –32768 to
+32767)
Volt : the output voltage for DAC channel (Range –10.0 - +10.0)
Value : the input value for ADC channel (Range 0 - 4000)
Volt : the input voltage for ADC channel (Range –10.0 - +10.0)
Control : enable or disable trigger ( 1 for enable/0 for disable )
Source : Set DAC trigger source
Function Library 53
Value 0-5 is for encoder 0-5
Value 8-13 is for ADC channel 0-5
@ Return Code
ERR_RangeError
ERR_NoError
54 Function Library
5.6
Pulse I/O
@ Name
_8136_P_Initial – Initialize pulse output engine and encoder counter
_8136_P_Set_Output_Type - Set pulse output mode
_8136_P_Set_Input_Type - Set pulse input mode
_8136_P_Read - Read encoder counter
_8136_P_Clear - Clear encoder counter
_8136_P_Send - Send a constant pulse train
_8136_P_Stop - Stop pulse train
_8136_P_Change_Speed - Change pulse train frequency
_8136_P_Read_Index - Read index value
_8136_P_Set_Index_Latch - Set index latch type
_8136_P_Read_Latch_Value - Read a latched encoder data
_8136_P_Set_Compare_Value - Set a encoder compare data
@ Description
_8136_P_Initial :
This function is for setting the encoder counter's clockand enabling pulse output functions. Tthis function must be used to enable pulse input and output.
_8136_P_Set_Output_Type :
There are 3 pulse output types in PCI-8136. This function is for configuring pulse output type by a value. Write a value 0 for pulse/ direction type. Write a value 1 for CW/CCW type. Write a value 2 for A/B phase type.
_8136_P_Set_Input_Type
There are 3 encoder counter input types in PCI-8136. This function is for configuring encoder counter input type. Write a value 0 for A/B phase type. Write a value 1 for CW/CCW type. Write a value 2 for pulse/direction type. When setting A/B phase type, the multiplier value must be assigned by this function.
Function Library 55
56
_8136_P_Read
This function reads the 32-bits encoder counter value immediately.
There are six encoder counters in one card. Assign the channel value 0-5 to read the encoder counter individually. There are three internal counters for receiving pulse output commands. When pulse output channel 0-2 is working, their output value will send to both CN1 and the internal feedback counter. These three command feedback counters are at channel 6-8. If the channel parameter of this function is assigned as the above three channels, it will read the command value at the same time.
_8136_P_Clear
This function clears the encoder counter value to zero immediately.
_8136_P_Send
This function sends a fixed frequency pulse train of each channel.
It will output a pre-configured pulse format which is set by
P_Set_Output_Type ().
_8136_P_Stop
This function stops the output pulse for each channel.
_8136_P_Change_Speed
This function changes the output pulse frequency on line.
_8136_P_Read_Index
There are 6 index signal inputs in one PCI-8136. This function is for checking the index status on or off. Each bit of this status value represents an index status.
_8136_P_Set_Index_Latch
The index signal is also a trigger source for latching the respective encoder counter value. There are two modes for this latch. Set 0 to be first trigger latch and set 1 to be last trigger latch. First trigger latch means only trigger once and last trigger latch means latch every time if index signal comes.
Function Library
_8136_P_Read_Latch_Value :
Once the encoder counter is latched, this function can retrieve the counter value at latched moment. It will not be clear until next index latched signal is coming.
_8136_P_Set_Compare_Value
There are 6 encoder counters in PCI-8136. Each encoder can set a compare value individually. This compare value is also a 32-bits value.
@ Syntax
C/C++ (DOS, Windows 95/98/NT/2000)
I16 _8136_P_Initial(I16 CardNo);
I16 _8136_P_Set_Output_Type(I16 CardNo, I16
ChannelNo, I16 PulseFmt);
I16 _8136_P_Set_Input_Type(I16 CardNo, I16 EncNo,
I16 EncFmt, I16 Mul);
I16 _8136_P_Read(I16 CardNo, I16 EncNo, I32
*EncData);
I16 _8136_P_Send(I16 CardNo,I16 ChannelNo,F64
FrqL);
I16 _8136_P_Stop(I16 CardNo,I16 ChannelNo);
I16 _8136_P_Clear(I16 CardNo, I16 EncNo);
I16 _8136_P_Set_Compare_Value(I16 CardNo,I16
EncNo, I32 CompValue);
I16 _8136_P_Read_Latch_Value(I16 CardNo, I16
EncNo, I32 *Value)
I16 _8136_P_Set_Index_Latch(I16 CardNo, I16
WhichIndex, I16 Type);
I16 _8136_P_Read_Index(I16 CardNo, I16 AxisNo,
I16 *Index);
I16 _8136_P_Change_Speed(I16 CardNo,I16
AxisNo,F32 Frq);
Visual Basic 5.0 or higher
B_8136_P_Initial (ByVal CardNo As Integer) As
Integer
B_8136_P_Initial (ByVal CardNo As Integer) As
Integer
Function Library 57
58
B_8136_P_Set_Output_Type (ByVal CardNo As
Integer, ByVal AxisNo As Integer, ByVal
PulseFmt As Integer) As Integer
B_8136_P_Set_Input_Type (ByVal CardNo As Integer,
ByVal EncNo As Integer, ByVal EncFmt As
Integer, ByVal Mul As Integer) As Integer
B_8136_P_Read (ByVal CardNo As Integer, ByVal
EncNo As Integer, EncData As Long) As
Integer
B_8136_P_Send (ByVal CardNo As Integer, ByVal
AxisNo As Integer, ByVal FrqL As Double) As
Integer
B_8136_P_Stop (ByVal CardNo As Integer, ByVal
AxisNo As Integer) As Integer
B_8136_P_Clear (ByVal CardNo As Integer, ByVal
EncNo As Integer) As Integer
B_8136_P_Set_Compare_Value (ByVal CardNo As
Integer, ByVal EncNo As Integer, ByVal
CompValue As Long) As Integer
B_8136_P_Read_Latch_Value(ByVal CardNo As
Integer, ByVal EncNo As Integer, Value As
Long) As Integer
B_8136_P_Set_Index_Latch (ByVal CardNo As
Integer, ByVal WhichIndex As Integer, ByVal
LatchType As Integer) As Integer
B_8136_P_Read_Index (ByVal CardNo As Integer,
ByVal AxisNo As Integer, Index As Integer)
As Integer
B_8136_P_Change_Speed (ByVal CardNo As Integer,
ByVal AxisNo As Integer, ByVal Frq As
Single) As Integer
@ Argument
CardNo : card number designated to set (Range 0 - 3)
ChannelNo : channel number designated to set (Range 0 - 5)
EncNo : encoder channel number designated to set (Range 0 - 5)
PulseFmt : Output pulse format
0 = Pulse/Direction
1 = CW/CCW
Function Library
2 = A/B Phase
EncFmt : Input pulse format:
0 = A/B Phase
1 = CW/CCW
2 = Pulse/Direction
Mul : for A_B type's mutiplier
0 = 0X A_B Phase
1 = 1X A_B Phase
2 = 2X A_B Phase
3 = 4X A_B Phase
EncData : read back encoder data
FrqL : Pulse output frequency (Range 0-500k Hz)
CompValue : Encoder Compare Value
*Index : Index Status (0 or 1)
Type : two trigger latch mode: 0 for first trigger, 1 for last trigger
WhichIndex : select index no. (0-5)
Frq : Pulse output frequency for change (Range 0-500kHz)
@ Return Code
ERR_RangeError
ERR_PCIBiosNotExist
ERR_NoError
Function Library 59
60
5.7
Interrupt
@ Name
_8136_INT_Enable - Set interrupt event handler(WINDOWS ONLY)
_8136_INT_Disable - Remove int. event handler(WINDOWS ONLY)
_8136_S_Set_Int_Factor - Set interrupt factor
_8136_S_INT_Control - Enable/disable interrupt
_8136_S_Get_Int_Status - Get Int. status
_8136_Callback_Function - Set a call back function for int
@ Description
_8136_INT_Enable
This function is only for Windows system. It allocates interrupt events in Windows system for passing message to application from kernel.
_8136_INT_Disable
This function is only for Windows system. It clear event resources which is allocated by INT_Enable() function.
_8136_S_Set_Int_Factor
This function settles the interrupt source for each channel. Every channel has 6 types of interrupt that can be set. It includes four digital input interrupt, index interrupt, encoder compare interrupt, timer interrupt, and voltage compare interrupt.
_8136_S_INT_Control
This function controls the hardware interrupt pin. The interrupt won't come if this function hasn't been used.
_8136_S_Get_Int_Status
This function must be used to check the interrupt types. There are
6 types of interrupt at one interrupt event. Sometimes two inpterrupts will come at once, it is important that each interrupt is checked individually in order to prevent the loss of any interrupt events.
Function Library
_8136_Callback_Function
This function can set a user-defined function to be an ISR. When one interrupt comes, this user-defined function will wake up. This function should be dealt with carefully, and not too much time should be spent on it.
@ Syntax
C/C++ (DOS, Windows 95/98/NT/2000)
U16_8136_INT_Enable(I16 CardNo, HANDLE *phEvent);
(Windows Only)
U16 _8136_INT_Disable(I16 CardNo); (Windows
Only) void _8136_S_INT_Control(I16 CardNo, U16 intFlag
)
U16 _8136_S_Set_Int_Factor(I16 CardNo, I16
ChannelNo, U16 IntFactor,OptionType)
U16 _S_Get_Int_Status(I16 CardNo,I16 AxisNo,U16
*IntStatus) void _8136_Callback_Function(I16 CardNo,void
*callbackAddr(I16 AxisNo, U16 IntSts))
Visual Basic 5.0 or higher
B_8136_INT_Enable (ByVal card_number As Integer, phEvent As Long) As Integer
B_8136_INT_Disable (ByVal card_number As Integer)
As Integer
B_8136_S_INT_Control (ByVal CardNo As Integer,
ByVal intFlag As Integer)
B_8136_S_Set_Int_Factor (ByVal CardNo As Integer,
ByVal AxisNo As Integer, ByVal IntFactor As
Integer, ByVal OptionType As Integer) As
Integer
B_8136_S_Get_Int_Status (ByVal CardNo As Integer,
ByVal AxisNo As Integer, IntStatus As Long)
As Integer
B_8136_Callback_Function (ByVal CardNo As
Integer, ByVal lpCallBackProc As Long) As
Integer
Function Library 61
62
@ Arguments
CardNo : card number designated to set (Range 0 - 3)
ChannelNo : channel number designated to set (Range 0 - 5)
*phEvent : event handler array contains 7 handler for each card in Windows interrupt system
*existCards : a return value to indicate how many cards are found intFlag : enable or disable interrupt signal (Range 0-1) intFactor : enable or disable interrupt for each type in each bit: bit0: Limit switch on bit1: Emergency stop on bit2: Home switch on bit3: Index signal on bit4: Encoder value compared bit5: Timer interrupt bit6: ADC pre-load value reached
*IntStatus : Read the interrupt status of one axis. To adjudge which interrupt is coming.
bit0: Positive Limit switch on bit1: Minus Limit switch on bit2: Emergency stop on bit3: Home switch on bit4: Index signal on bit5: Encoder value compared bit6: Timer interrupt bit7: ADC pre-load value reached
OptionType : Set ADC compare direction
1 = Rising Direction
2 = Falling Driection
Function Library
3 = Both Direction
*callbackAddr(I16 AxisNo, U16 IntSts) : function pointer type
@ Return Code
ERR_RangeError
ERR_NoError
Function Library 63
64 Function Library
6 Appendix
6.1
Auto Calibration Utility
1. Execute the utility under c:\program file\adlink\pci-
8136\utility.
2. Connect all AD channel to ground.
3. It will remind you when you press “Tune AD” button.
Appendix 65
4. After a minute a message will show that the adjustment is complete.
5. Connect all DA channels to AD channels one by one then press “Tune DA” button.
66
6. It will remind you to connect the AD channel to DA chan-
Appendix
nel one by one.
7. After a minute a messge will show that the adjustment is complete.
8. Please use multimeter to do measure and adjust.
Appendix 67
9. Use the 4 buttons outlined below to do fine adjustments.
Please use “Channel” item box to change DA channel.
68 Appendix
10.Please press “Save All Channel” to save parameter.
11. You will be asked if you would like to save the adjustment value. 11.
Appendix 69
12.A save finish window will appear.
13.Press “Exit” button to exit utility.
70 Appendix
6.2
Analog Output Error Test
This appendix is a reference for error values and their analog output. The error value depends on your card.
Channel 0
Channel 1
Appendix 71
Channel 2
Channel 3
72 Appendix
Channel 4
Channel 5
Appendix 73
74 Appendix
Warranty Policy
Thank you for choosing ADLINK. To understand your rights and enjoy all the after-sales services we offer, please read the following carefully.
1. Before using ADLINK’s products please read the user manual and follow the instructions exactly. When sending in damaged products for repair, please attach an RMA application form which can be downloaded from: http:// rma.adlinktech.com/policy/.
2. All ADLINK products come with a limited two-year warranty, one year for products bought in China:
X
X
X
X
X
The warranty period starts on the day the product is shipped from ADLINK’s factory.
Peripherals and third-party products not manufactured by ADLINK will be covered by the original manufacturers' warranty.
For products containing storage devices (hard drives, flash cards, etc.), please back up your data before sending them for repair. ADLINK is not responsible for any loss of data.
Please ensure the use of properly licensed software with our systems. ADLINK does not condone the use of pirated software and will not service systems using such software. ADLINK will not be held legally responsible for products shipped with unlicensed software installed by the user.
For general repairs, please do not include peripheral accessories. If peripherals need to be included, be certain to specify which items you sent on the RMA Request
& Confirmation Form. ADLINK is not responsible for items not listed on the RMA Request & Confirmation
Form.
Warranty Policy 75
76
3. Our repair service is not covered by ADLINK's guarantee in the following situations:
X
X
X
X
X
X
X
X
X
Damage caused by not following instructions in the
User's Manual.
Damage caused by carelessness on the user's part during product transportation.
Damage caused by fire, earthquakes, floods, lightening, pollution, other acts of God, and/or incorrect usage of voltage transformers.
Damage caused by unsuitable storage environments
(i.e. high temperatures, high humidity, or volatile chemicals).
Damage caused by leakage of battery fluid during or after change of batteries by customer/user.
Damage from improper repair by unauthorized ADLINK technicians.
Products with altered and/or damaged serial numbers are not entitled to our service.
This warranty is not transferable or extendible.
Other categories not protected under our warranty.
4. Customers are responsible for shipping costs to transport damaged products to our company or sales office.
5. To ensure the speed and quality of product repair, please download an RMA application form from our company website: http://rma.adlinktech.com/policy. Damaged products with attached RMA forms receive priority.
If you have any further questions, please email our FAE staff: [email protected].
Warranty Policy
advertisement
Related manuals
advertisement
Table of contents
- 9 1 Introduction
- 10 Features
- 10 Specifications
- 12 Software Support
- 13 2 Installation
- 13 What You Have
- 14 Outline Drawing
- 15 Hardware Installation
- 15 Hardware configuration
- 15 PCI slot selection
- 15 Installation Procedures
- 15 Troubleshooting
- 16 Software Installation
- 16 CN1: Main Connector
- 18 CN2: External Power Input
- 19 CN3 Pin Assignments: DB25 Connector
- 19 CN4 Pin Assignments: DB9 Connector
- 21 3 Signal Connections
- 22 Analog Input
- 24 Analog Output
- 25 Digital Input
- 27 Digital Output
- 29 Pulse Input (Encoder Counter)
- 33 Pulse Output (Pulse Generator)
- 34 VCC Pin
- 35 4 Operation Theory
- 36 AD Conversion and Preloaded Trigger
- 36 Voltage Compare
- 37 DA Conversion
- 37 DA Output by Trigger Source
- 38 Digital Input
- 39 Digital Output
- 40 Pulse Input and Position Compare
- 40 Pulse Input
- 41 Encoder Counter Value Capture (latch)
- 42 Encoder Counter Value Compare
- 43 Pulse Output
- 45 Interrupt Control
- 49 5 Function Library
- 50 List of Functions
- 52 Initialization
- 54 System Parameters
- 56 Digital I/O
- 58 Analog I/O
- 63 Pulse I/O
- 68 Interrupt
- 73 6 Appendix
- 73 Auto Calibration Utility
- 79 Analog Output Error Test
- 83 Warranty Policy