Table of Contents

Advertisement

Quick Links

I-8017/I-9017 Series
I/O Module User Manual
V3.0.3 July 2021
Written by Edward Ku/Cindy Huang
Edited by Anna Huang

Advertisement

Table of Contents
loading

Summary of Contents for ICP DAS USA I-8017 Series

  • Page 1 I-8017/I-9017 Series I/O Module User Manual V3.0.3 July 2021 Written by Edward Ku/Cindy Huang Edited by Anna Huang...
  • Page 2 Warranty All products manufactured by ICP DAS are under warranty regarding defective materials for a period of one year, beginning from the date of delivery to the original purchaser. Warning ICP DAS assumes no liability for any damage resulting from the use of this product. ICP DAS reserves the right to change this manual at any time without notice.
  • Page 3: Table Of Contents

    Table of Contents Table of Contents ........................3 Preface ............................6 1. Introduction ........................... 7 1.1. Specifications ......................... 10 1.1.1. I-8017HW/I-8017HCW/I-8017DW ..............10 1.1.2. I-9017/I-9017-15/I-9017C-15 ................12 1.2. Pin Assignments ......................14 1.2.1. I-8017HW ......................14 1.2.2. I-8017HCW ......................15 1.2.3.
  • Page 4 1.5.3. I-9017C-15 ......................26 2. Quick Start ........................... 27 2.1. MiniOS7-based Controllers .................... 27 2.1.1. Basic Function ....................27 2.2. Windows-based Controllers ................... 30 2.2.1. Basic Function ....................30 2.3. Linux-based Controllers ....................32 3. API introduction ........................33 3.1. i8017H_Init / pac_i8017HW_Init ...................
  • Page 5 5. Troubleshooting ........................84 5.1. Verifying Analog Input functionality on a WinCE or WES PAC device ......85 5.2. Service Request Requirements ..................89 5.3. What to do when the data read from the module seems unstable ......90 Appendix A. Error Code ......................91 Appendix B.
  • Page 6: Preface

    Preface The information contained in this manual is divided into the following topics: Chapter 1, “Introduction” – This chapter provides information related to the hardware,  such as the specifications, jumper settings and wiring. Chapter 2, “Quick Start” – This chapter provides information on how to get started, an ...
  • Page 7: Introduction

    1. Introduction I-8017W/I-8017HCW/I-8017DW/I-9017/I-9017-15/I-9017C-15 (Hereinafter referred to as I-8017HW series modules) are high performance analog input modules, up to 16-channel single-ended or 8-channel differential inputs. It features 14-bit resolution, 100Ks/s sampling rates. I-8017HW series modules can be used to measure voltage and current sources, except for I-9017C-15.
  • Page 8 The following table shows the differences between I-9017 series modules. Items I-9017 I-9017-15 I-9017C-15 Channels 16-ch Single-ended 30-ch Single-ended 15-ch Differential 8-ch Differential 15-ch Differential Range Voltage ±10 V, ±5 V, ±2.5 V, ±1.25 V Current +/- 20mA (Requires external 125 Ω resistor in +/- 20mA (Requires single-ended wire method, External 125 Ω...
  • Page 9 I-8017DW module is equipped with a D-sub connection, meaning that it can be connected using a 37-pin D-sub Connector, as shown in the image below: For more detailed information regarding 37-pin D-sub Connectors refer to the models indicated in the table below: Model Description DN-37-A...
  • Page 10: Specifications

    1.1. Specifications 1.1.1. I-8017HW/I-8017HCW/I-8017DW Model I-8017HW I-8017HCW I-8017DW Analog Input Channels 8-ch Differential/16-Single-ended ±1.25, ±2.5, ±5 V, ±10 V Voltage Input Range ±20 mA ±20 mA Current Input Range (Requires External (Jumper Select) 125 Ω Resistor) Resolution 14-bit Sample Rate Single Channel Polling Mode :90K S/s Single Channel Interrupt Mode: 50K S/s 8 channel Scan Mode : 16 K S/s...
  • Page 11 Model I-8017HW I-8017HCW I-8017DW Isolation Intra-module Isolation, Field-to-Logic 2500 Vrms Power Power Consumption 2 W Max. Mechanical Dimension (L x W x H, unit: mm) 30 x 115 x 102 30 x 114 x 85 Environment Operating Temperature -25 °C ~ +75°C Storage Temperature -30 °C ~ +80°C Humidity...
  • Page 12: I-9017/I-9017-15/I-9017C-15

    1.1.2. I-9017/I-9017-15/I-9017C-15 Model I-9017 I-9017-15 I-9017C-15 Analog Input Channels 8 Differential/ 15 Differential/ 15 Differential 16 Single-ended 30 Single-ended ±1.25, ±2.5, ±5 V, ±10 V Voltage Input Range ±20 mA ±20 mA Current Input Range (Requires OptionalExternal 125 Ω Resistor) Resolution 14-bit Sample Rate...
  • Page 13 Model I-9017 I-9017-15 I-9017C-15 Isolation Intra-module Isolation, 2500 Vrms Field-to-Logic Power Power Consumption 2 W Max. Mechanical Dimension (L x W x H) 144 mm x 30.3 mm x 134 mm Environment Operating Temperature -25 °C ~ +75°C Storage Temperature -40°C ~ +85°C Humidity 10 % ~ 90% RH, non-condensing...
  • Page 14: Pin Assignments

    1.2. Pin Assignments 1.2.1. I-8017HW I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.14...
  • Page 15: I-8017Hcw

    1.2.2. I-8017HCW I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.15...
  • Page 16: I-8017Dw

    1.2.3. I-8017DW I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.16...
  • Page 17: I-9017

    1.2.4. I-9017 I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.17...
  • Page 18: I-9017-15

    1.2.5. I-9017-15 I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.18...
  • Page 19: I-9017C-15

    1.2.6. I-9017C-15 I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.19...
  • Page 20: Jumper Settings

    1.3. Jumper Settings 1.3.1. Single-Ended/Differential Jumper Selection This jumper is used to set the discrete input circuits as either “Differential” or “Single-ended” inputs. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.20...
  • Page 21: Input Impedance Jumper Selection

    1.3.2. Input Impedance Jumper Selection This jumper is used to set the discrete input circuits as either “Differential” or “Single-ended” inputs. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.21...
  • Page 22: Voltage/Current Measurement Jumper Selection

    1.3.3. Voltage/Current Measurement Jumper Selection By default, I-8017HCW module is configured for current measurement. I-8017DW is configured for voltage measurement. I-9017 is configured for voltage measurement. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.22...
  • Page 23: Wire Connections

    1.4. Wire Connections 1.4.1. I-8017HW/I-9017-15 Input Type Differential Single-ended Jumper Position Voltage Current Tips & Warnings When connecting to a current source, an optional external 125 Ω resistor is required. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.23...
  • Page 24: I-8017Dw/I-8017Hcw/I-9017

    1.4.2. I-8017DW/I-8017HCW/I-9017 Input Type Differential Single-ended Jumper Position Voltage Current Tips & Warnings Differential Input Type: Current Input Wiring need to jumper at current input. Single-ended Input Type: Current Input Wiring need to jumper at voltage input, an options external 125 Ω resistor is required. 1.4.3.
  • Page 25: Block Diagram

    1.5. Block Diagram 1.5.1. I-8017HW/I-8017DW/I-8017HCW 1.5.2. I-9017/I-9017-15 I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.25...
  • Page 26: I-9017C-15

    1.5.3. I-9017C-15 I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.26...
  • Page 27: Quick Start

    2. Quick Start This chapter will be accompanied by demos to explain how to implement functions such as read AI and calibration process Demos can be downloaded in the following link: https://www.icpdas.com/en/download/show.php?num=2323 2.1. MiniOS7-based Controllers 2.1.1. Basic Function Basic function can be used to retrieve configuration information and verify the AI reading function. Basic information includes: ...
  • Page 28 Step 1: Please refer to the “Wire Connections”, connect a stable signal source (such as a battery) to I-8017HW Tips & Warnings Unused channels should be connected to GND to avoid floating. A battery output should provide a stable enough signal. A 125 Ohm resistor is required when measuring current input.
  • Page 29 Step 4: Run Base_Info.exe on the controller and verify that basic information and AI data from each channel are correct or not, as indicated in the diagram below The Library and FPGA version information Single-ended/Differential jumper position. The gain value is around 33000. If this value varies significantly from 33000, it means that the value is incorrect.
  • Page 30: Windows-Based Controllers

    2.2. Windows-based Controllers 2.2.1. Basic Function Basic function can be used to retrieve configuration information and verify the AI reading function. Basic information includes:  Version number and published date of the library.  FPGA version.  Single-ended/Differential jumper settings. ...
  • Page 31 Step 2: Plug I-8017HW in the Windows-based controller and connect the power supply to the unit. Step 3: Run pac_i8017HW_Basic_Info.exe on the controller and verify that basic information and AI data read from each channel are correct, as shown in the figure below: Library and FPGA version Single-ended/differential jumper position Verify the AI data...
  • Page 32: Linux-Based Controllers

    2.3. Linux-based Controllers Basic function can be used to retrieve configuration information and verify the AI reading function. Basic information includes:  Version number and published date of the library.  FPGA version.  Single-ended/Differential jumper settings.  Gain and offset values for each input range. ...
  • Page 33: Api Introduction

    3. API introduction ICPDAS supplies a range of C/C++ API functions for I-8017HW series modules. When developing a program, refer to either the 8017HW.h header file, or the API functions described in the following sections for more detailed information. ICPDAS also supplies a range of C# function that can be used to develop.NET programs, these functions are ported from the relevant C/C++ functions.
  • Page 34 The following is an overview of the functions provided in the 8017HW.lib and pac_i8017HW.lib. API for I-8017HW series and I-9017 series Description i8017H_Init Used to initialize the module pac_i8017HW_Init i8017H_GetFirmwareVersion Used to read the firmware (FPGA) version information pac_i8017HW_GetFirmwareVersion Used to read the version and build information for the i8017H_GetLibVersion currently installed Library pac_i8017HW_GetLibVersion...
  • Page 35 API for I-9017 and I-9017C-15: Description i8017H_Read_mA_GainOffset Used to read the calibrated current Gain and Offset values pac_i8017HW_Read_mA_GainOffset API for I-9017-15 Description i8017H_Select_SingleEnd Used to set the Single-ended/ differential mode of I-9017-15. pac_i8017HW_Select_SingleEnd API for I-9017-15 Description i8017H_Select_SingleEnd Used to set the Single-ended/ differential mode of I-9017-15.
  • Page 36: I8017H_Init / Pac_I8017Hw_Init

    3.1. i8017H_Init / pac_i8017HW_Init This function is used to initialize the module and must be called at least once before using any other function. Syntax For MiniOS7 short i8017HW_Init(int slot); For Windows (CE and WES) short pac_i8017HW_Init(int slot); For Linux short I8017_Init(int slot);...
  • Page 37 Examples [C/C++] int slot; i8017HW_Init(slot); [C#] int slot; pac8017HW.Init(slot); [C] (For LinPAC) int main(){ int slot, ret; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1); I8017_Init(slot); Close_Slot(slot); return 0; I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.37...
  • Page 38: I8017H_Getfirmwareversion / Pac_I8017Hw_Getfirmwareversion

    3.2. i8017H_GetFirmwareVersion / pac_i8017HW_GetFirmwareVersion This function is used to read the firmware (FPGA) version information for the module. Syntax For MiniOS7 short i8017HW_GetFirmwareVersion(int slot, short* firmware); For Windows (CE and WES) short pac_i8017HW_GetFirmwareVersion(int slot, short* firmware); For Linux short I8017_GetFirmwareVersion(int slot, short* firmware); // for LinPAC-8000 short I9017_GetFirmwareVersion(int slot, short* firmware);...
  • Page 39 Examples [C/C++] int slot; short firmware; i8017HW_GetFirmwareVersion(slot, &firmware); [C#] int slot; Int16 firmware = 0; pac8017HWNet.pac8017HW.FirmwareVersion(slot, ref firmware); [C] (For LinPAC) int main(){ int slot, ret; short firmware; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1);...
  • Page 40: I8017H_Getlibversion / Pac_I8017Hw_Getlibversion

    3.3. i8017H_GetLibVersion / pac_i8017HW_GetLibVersion This function is used to read the version and build information for the Library. Syntax For MiniOS7 short i8017HW_GetLibVersion(void); For Windows (CE and WES) short pac_i8017HW_GetLibVersion(void); For Linux short I8017_GetLibVersion(void); // for LinPAC-8000 short I9017_GetLibVersion(void); // for LinPAC-9000, LX-9000 Parameters None Return Values...
  • Page 41 Examples [C/C++] short version; version = i8017HW_GetLibVersion(); [C#] Int16 version; version = pac8017HWNet.pac8017HW.LibVersion(); [C] (For LinPAC) int main(){ int slot, ret; short version; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1); I8017_Init(slot); version = i8017HW_GetLibVersion();...
  • Page 42: I8017H_Getlibdate / Pac_I8017Hw_Getlibdate

    3.4. i8017H_GetLibDate / pac_i8017HW_GetLibDate This function is used to read the build date information for the Library. Syntax For MiniOS7 void i8017HW_GetLibDate(char libDate[]); For Windows (CE and WES) void pac_i8017HW_GetLibDate(char libDate[]); Parameters libDate[] A string indicating the build date of the Library. Return Values Refer to Appendix A: “Error Code”...
  • Page 43: I8017H_Getsingleendjumper / Pac_I8017Hw_Getsingleendjumper

    3.5. i8017H_GetSingleEndJumper / pac_i8017HW_GetSingleEndJumper This function is used to read whether the jumper is set to either Differential or Single-ended mode. Syntax For MiniOS7 short pac_i8017HW_GetSingleEndJumper(int iSlot, short* selectJumper); For Windows (CE and WES) short pac_i8017HW_GetSingleEndJumper(int iSlot, short* selectJumper); For Linux short I8017_GetSingleEndJumper(int iSlot, short* selectJumper);...
  • Page 44 Examples [C/C++] int slot, jumper; i8017HW_GetSingleEndJumper(slot, &jumper); [C#] int slot,jumper; pac8017HWNet.pac8017HW.SingleEndJumper(slot, ref jumper); [C] (For LinPAC) int main(){ int slot, jumper, ret; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1); I8017_Init(slot); I8017_GetSingleEndJumper(slot, & jumper); Close_Slot(slot);...
  • Page 45: I8017H_Readai / Pac_I8017Hw_Readai

    3.6. i8017H_ReadAI / pac_i8017HW_ReadAI This function is used to read the Analog Input value in float format from a specific channel of the module. Syntax For MiniOS7 short i8017HW_ReadAI(int iSlot, int iChannel, int iGain, float* fValue); For Windows (CE and WES) short pac_i8017HW_ReadAI(int iSlot, int iChannel, int iGain, float* fValue);...
  • Page 46 Return Values Others: Refer to Appendix A: “Error Code” for more details. Note I-8017HW series modules equipped with a 14-bit AD chip. This function will calibrate the data that read from the chip and convert it into 16-bit data. The following pictures show the scale of voltage and data and how to calculate the hexadecimal data into floating data.
  • Page 47 If(hexadecimal data >=0) floating data = (hexadecimal data / 32767) * 2.5 Else floating data = (hexadecimal data / 32768) * 2.5 If(hexadecimal data >=0) floating data = (hexadecimal data / 32767) * 1.25 Else floating data = (hexadecimal data / 32768) * 1.25 If(hexadecimal data >=0) floating data = (hexadecimal data / 32767) * 20 Else...
  • Page 48 Examples [C++] int slot, ch, gain; float fValue; pac_i8017HW_ReadAI(slot, ch, gain,& fValue); [C#] int slot, ch, gain; float fValue; pac8017HWNet.pac8017HW.ReadAI(slot, ch, gain, ref fValue); [C] (For LinPAC) int main(){ int slot, ch, gain, ret; float fValue; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret);...
  • Page 49: I8017H_Readai_Avg / Pac_I8017Hw_Readai_Avg

    3.7. i8017H_ReadAI_AVG / pac_i8017HW_ReadAI_AVG This function is used to read the average Analog Input value in float format from the module. Syntax For MiniOS7 short i8017HW_ReadAI_AVG(int slot,int iChannel,int iGain,unsigned short averageCnt, float* fValue); For Windows (CE and WES) short pac_i8017HW_ReadAI_AVG(int slot,int iChannel,int iGain,unsigned short averageCnt, float* fValue);...
  • Page 50 Parameters Slot Specific slot number (0 - 7), except range of slot is number 1 ~ 8 for LinPAC. iChannel Specifies the channel number For I-8017HW / I-8017HCW / I-8017DW / I-9017 => 0 ~ 8 in differential method; 0 ~ 15 in single-ended method.
  • Page 51 Examples [C++] int slot, ch, gain; unsigned short cnt; float fValue; pac_i8017HW_ReadAI_AVG(slot, ch, gain, cnt,& fValue); [C#] int slot, ch, gain; Uint cnt; float fValue; pac8017HWNet.pac8017HW.ReadAI_AVG(slot, ch, gain, cnt, ref fValue); [C] (For LinPAC) int main(){ int slot, ch, gain; unsigned short cnt;...
  • Page 52: I8017H_Readaihex / Pac_I8017Hw_Readaihex

    3.8. i8017H_ReadAIHex / pac_i8017HW_ReadAIHex This function is used to read the Analog Input value in 16-bit hexadecimal format. Syntax For MiniOS7 short i8017HW_ReadAIHex(int iSlot,int iChannel,int iGain,short* iValue); For Windows (CE and WES) short pac_i8017HW_ReadAIHex(int iSlot,int iChannel,int iGain,short* iValue); [C] (For LinPAC) short I8017_ReadAIHex(int iSlot,int iChannel,int iGain,short* iValue);...
  • Page 53 Parameters iSlot Specific slot number (0 - 7), except range of slot is number 1 ~ 8 for LinPAC. iChannel Specifies the channel number For I-8017HW / I-8017HCW / I-8017DW / I-9017 => 0 ~ 8 in differential method; 0 ~ 15 in single-ended method.
  • Page 54 Note I-8017HW series modules use a 14-bit AD chip. This function will calibrated the data that read from the chip and convert it into 16-bit data. The following pictures show the scale of voltage and data. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.54...
  • Page 55 I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.55...
  • Page 56 Examples [C++] int slot, ch, gain; short hval; pac_i8017HW_ReadAIHex(slot, ch, gain,& hval); [C#] int slot, ch, gain; int hval; pac8017HWNet.pac8017HW.ReadAIHex(slot, ch, gain, ref hval); [C] (For LinPAC) int slot, ch, gain; short hval; Open_Slot(slot); I8017_Init(slot); I8017_ReadAIHex(slot, ch, gain, &hval); I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.56...
  • Page 57: I8017H_Readaihex_Avg / Pac_I8017Hw_Readaihex_Avg

    3.9. i8017H_ReadAIHex_AVG / pac_i8017HW_ReadAIHex_AVG This function is used to read the average Analog Input value in 16-bit hexadecimal format. Syntax For MiniOS7 short i8017HW_ReadAIHex_AVG(int slot,int iChannel,int iGain,unsigned short averageCnt, short* iValue); For Windows (CE and WES) short pac_i8017HW_ReadAIHex_AVG(int slot,int iChannel,int iGain,unsigned short averageCnt, short* iValue);...
  • Page 58 Parameters slot Specific slot number (0 - 7), except range of slot is number 1 ~ 8 for LinPAC. iChannel Specifies the channel number For I-8017HW / I-8017HCW / I-8017DW / I-9017 => 0 ~ 8 in differential method; 0 ~ 15 in single-ended method.
  • Page 59 Examples [C++] int slot, ch, gain; unsigned short cnt; short hval; pac_i8017HW_ReadAIHex_AVG(slot, ch, gain, cnt,& hval); [C#] int slot, ch, gain; uint cnt; int hval; pac8017HWNet.pac8017HW.ReadAIHex_AVG(slot, ch, gain, cnt, ref hval); I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.59...
  • Page 60 [C] (For LinPAC) int main(){ int slot, ch, gain, ret; unsigned short cnt; short hval; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1); I8017_Init(slot); I8017_ReadAIHex_AVG(slot, ch, gain, cnt, & hval); Close_Slot(slot); return 0; I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.60...
  • Page 61: I8017H_Readgainoffset_Info / Pac_I8017Hw_Readgainoffset_Info

    3.10. i8017H_ReadGainOffset_Info / pac_i8017HW_ReadGainOffset_Info This function is used to read the calibrated Gain and Offset values for the I-8017 module inserted in a specific slot Syntax For MiniOS7 short i8017HW_ReadGainOffset_Info( int iSlot, int iGain, unsigned short* iGainValue, short* iOffsetValue For Windows (CE and WES) short pac_i8017HW_ReadGainOffset_Info( int iSlot, int iGain, unsigned short* iGainValue, short* iOffsetValue For Linux...
  • Page 62 Parameters iSlot Specific slot number (0 - 7), except range of slot is number 1 ~ 8 for LinPAC. iGain Specifies the input range 0: +/- 10.0V 1: +/- 5.0V 2: +/- 2.5V 3: +/- 1.25V 4: +/- 20mA *iGainValue [Output]Specifies the calibrated Gain value *iOffsetValue [Output]Specifies the calibrated Offset value...
  • Page 63 [C] (For LinPAC) int main(){ int slot, Gain, ret; unsigned short GainValue; short OffsetValue; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1); I8017_Init(slot); I8017_ReadGainOffset_Info(slot, Gain, &GainValue, &OffsetValue); Close_Slot(slot); return 0; I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.63...
  • Page 64: I8017H_Read_Ma_Gainoffset / Pac_I8017Hw_Read_Ma_Gainoffset

    3.11. i8017H_Read_mA_GainOffset / pac_i8017HW_Read_mA_GainOffset This function is used to read the calibrated Gain and Offset values for the I-9017/I-9017C-15 module inserted in a specific slot. Syntax For MiniOS7 short i8017H_Read_mA_GainOffset( int slot, short ch, unsigned short* GainValue, short* offsetValue For Windows (CE and WES) short pac_i8017H_Read_mA_GainOffset( int slot, short ch, unsigned short* GainValue, short* offsetValue For Linux...
  • Page 65 Parameters slot Specific slot number (0 - 7), except range of slot is number 1 ~ 8 for LinPAC. Specifies the channel Valid range : I-8017HCW/I-9017 = 0 to 7 I-9017C-15 = 0 to 14 * GainValue Specifies the calibrated Gain value * offsetValue Specifies the calibrated Offset value Return Values...
  • Page 66 [C#] Int slot; Int16 ch; UInt16 GainValue; Int16 OffsetValue; pac8017HWNet.pac8017HW. Ch_mAGainOffset (slot,ch,ref GainValue,ref OffsetValue); [C] (For LinPAC) int main(){ int slot, ret; short ch; unsigned short GainValue; short OffsetValue; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1);...
  • Page 67: I8017H_Select_Singleend / Pac_I8017Hw_Select_Singleend

    3.12. i8017H_Select_SingleEnd / pac_i8017HW_Select_SingleEnd This function is used to set the Single-ended/ differential mode of I-9017-15. Syntax For MiniOS7 short i8017HW_Select_SingleEnd(int slot, short selection); For Windows (CE and WES) short pac_i8017HW_Select_SingleEnd(int slot, short selection); For Linux short I9017_Select_SingleEnd(int slot, short selection); // for LinPAC-9000, LX-9000 Parameters slot...
  • Page 68 Examples [C/C++] int slot; short status; pac_i8017H_Select_SingleEnd(slot, status); [C#] Int slot; Int16 selection; pac8017HWNet.pac8017HW. Select_SingleEnd_Differential (slot, selection); [C] (For LinPAC) int main(){ int slot, ret; short status; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1);...
  • Page 69: I8017H_Get_D_Sub_Status / Pac_I8017Hw_Get_D_Sub_Status

    3.13. i8017H_Get_D_Sub_Status / pac_i8017HW_Get_D_Sub_Status This function is used to get connector status between D sub and 8017DW. Syntax For MiniOS7 short i8017HW_Get_D_Sub_Status(int iSlot, short* D_Sub_Status); For Windows (CE and WES) short pac_i8017HW_Get_D_Sub_Status(int iSlot, short* D_Sub_Status); For Linux short I8017_Get_D_Sub_Status(int iSlot, short* D_Sub_Status); // for LinPAC-8000 Parameters slot...
  • Page 70 Examples [C/C++] int slot; short status; pac_i8017HW_Get_D_Sub_Status(slot, status); [C#] int slot; Int16 selection; pac8017HWNet.pac8017HW.D_Sub_Status(slot, selection); [C] (For LinPAC) int main(){ int slot, ret; short status; ret=Open_Slot(slot); if (ret > 0) { printf("Open Slot%d failed, return value=%d \n", slot, ret); return (-1); I8017_Init(slot);...
  • Page 71: Calibration

    4. Calibration Each module calibrated and finished test before shipment, so usually it is unnecessary to calibrate the module again, unless the input impedance is changed or the accuracy is lost. In order to calibrate the module, the following preparations are required: ...
  • Page 72: Calibrate I-8017Hw Series Modules On Ipac-8000

    4.1. Calibrate I-8017HW series modules on iPAC-8000 Step 1: Wiring method Please refer to the "2.1.2. Wiring the iPAC-8000" chapter of the IP-8000 user manual to establish RS-232 connection between the controller and the PC, and connect the power supply to the controller.
  • Page 73 Step 2: Download, upload and execute calibration program The calibration program can be downloaded in ICP DAS website. Please refer to the following link: https://www.icpdas.com/en/download/show.php?num=2323 In order to upload programs, please refer to the "2.2.2. Installing the MiniOS7" and “2.5.2. Uploading and Executing iPAC-8000 programs”...
  • Page 74 Step 3: Calibrate After execute the program, select the range that needs to be calibrated and press the number corresponding to the range. Output stable positive source to channel 0, and type the value displayed on the voltage meter. Output stable negative source to channel 0, and type the value displayed on the voltage meter. Press ‘y’...
  • Page 75 After finish the calibration, press ‘t’ to test calibrated AI data with new gain and offset values, and check whether the AI value is correct or not I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.75...
  • Page 76: Restore I-8017Hw Series Modules To Defaults On Ipac-8000

    4.2. Restore I-8017HW series modules to defaults on iPAC-8000 Step 1: Download, upload and execute calibration program The calibration program can be downloaded in ICP DAS website. Please refer to the following link: https://www.icpdas.com/en/download/show.php?num=2323 In order to upload programs, please refer to the "2.2.2. Installing the MiniOS7" and “2.5.2. Uploading and Executing iPAC-8000 programs”...
  • Page 77 Step 2: Restore defaults After execute the program, press ‘r’ to restore defaults. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.77...
  • Page 78: Calibrate The I-8017Hw Series Modules On Wince And Wes Units

    4.3. Calibrate the I-8017HW series modules on WinCE and WES units Step 1: Wiring method Set the Differential/Single-ended jumper to the differential position, connect source and modules in differential mode and connect the voltage or current meter to the wiring, like the following figure: Then, plug module into the controller.
  • Page 79 Step 3: Calibrate After execute the program, please follow the steps one by one. Select the index where the module is. Select the name of module and click “Next” button. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.79...
  • Page 80 Change to “page Step 4,5”, Output stable positive source to channel 0 and type the value displayed on the voltage meter, then Click “Read” button. Change to “page Step 6,7”, Output stable negative source to channel 0 and type the value displayed on the voltage meter, then Click “Read”...
  • Page 81 Change to “page Step 8”, Click “Test” to read calibrated AI data with new and original gain and offset values , and check whether the new gain and offset values are correct or not. Click “SAVE” to save new gain and offset values. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.81...
  • Page 82: Restore I-8017Hw Series Modules To Defaults On Wince And Wes Units

    4.4. Restore I-8017HW series modules to defaults on WinCE and WES units Step 1: Download and execute calibration program The calibration program can be downloaded in ICP DAS website. Please refer to the following link: https://www.icpdas.com/en/download/show.php?num=2323 Step 2: Restore defaults After execute the program, please follow the steps one by one.
  • Page 83 Click “Restore Defaults” button. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.83...
  • Page 84: Troubleshooting

    5. Troubleshooting This chapter discusses how to solve some common problems you may encounter. This chapter contains:  How to verify the AI function on a WinCE or WES PAC Service/Request Requirements  What to do when the data read from the module seems unstable I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.84...
  • Page 85: Verifying Analog Input Functionality On A Wince Or Wes Pac Device

    5.1. Verifying Analog Input functionality on a WinCE or WES PAC device If the data read from the module is inconsistent with the input signal, and you would like to confirm the input function, the pac_i8017W_Utility.exe tool may be helpful. The utility can only be used with modules designed for controllers using the WinCE and WES platforms and is located in the I-8017W C# demo program folder for the controller.
  • Page 86 Step 2: Launch the pac_i8017W_Utility.exe Step 3: Read the information from the module a. Select the slot that the module is connected to from the slot index drop-down list. b. Click the Basic Information tab. The Basic Information page includes: ...
  • Page 87 Verifying the Gain and Offset Values In a normal situation, the Gain value should be around 33000 (33000 to 34000). If the value is greatly different from 33000, it means that the value is incorrect. To correct this situation, try the following: a.
  • Page 88 d. If necessary, click the Save button to save the data and the sampling time to the SampleData_Hex_mm_dd_hh_mim_sec.csv file. I-8017/I-9017 Series I/O Module User Manual V3.0.3 P.88...
  • Page 89: Service Request Requirements

    5.2. Service Request Requirements If you are using a stable signal source to output a signal to the module, such as a battery, and are receiving incorrect or unstable data, prepare the following three items and e-mail them to service@icpdas.com ...
  • Page 90: What To Do When The Data Read From The Module Seems Unstable

    5.3. What to do when the data read from the module seems unstable If the voltage can be measured correctly when testing using a battery, but not when using the real signal source, the error may be caused by any or all of the following factors: ...
  • Page 91: Appendix A. Error Code

    Appendix A. Error Code Code Definition Description NoError This indicates that there have been no errors ID_ERROR There is a problem with the module ID SLOT_ERROR There is a Slot index error CHANNEL_ERROR There is a Channel index error (0 - 15) GAIN_ERROR There is a Gain error (0 - 4) NOT_SUPPORT_ERROR...
  • Page 92: Appendix B. Read Ai Function Performance

    Appendix B. Read AI Function Performance Test with library version 0x3110. Platform MiniOS7 CE 5.0 CE 6.0 CE 7.0 Test Items One channel 94 ~ 95 71 ~ 82 112 ~ 115 format Eight channels 38 ~ 39 35 ~ 39 36 ~ 37 8017H One channel...
  • Page 93: Appendix B. Revision History

    Appendix B. Revision History This chapter provides revision history information to this document. The table below shows the revision history. Revision Date Description 1.0.0 January 2018 Initial issue  2.0.0 January 2018 Added content for the I-8017DW and I-8017HCW modules ...

Table of Contents