ZWorld Exp-A/D12 User Manual

Analog-to-digital conversion expansion boards

Advertisement

Quick Links

XP8500
Exp-A/D12
and
Analog-to-Digital Conversion Expansion Boards
User’s Manual
Revision B

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Exp-A/D12 and is the answer not in the manual?

Questions and answers

Summary of Contents for ZWorld Exp-A/D12

  • Page 1 XP8500 Exp-A/D12 Analog-to-Digital Conversion Expansion Boards User’s Manual Revision B...
  • Page 2 XP8500 and Exp-A/D12 User’s Manual Copyright Trademarks ® ® ™ ® Notice to Users Company Address Z-World...
  • Page 3 ABLE OF ONTENTS About This Manual XP8500 Chapter 1: Overview Chapter 2: Getting Started Chapter 3: I/O Configurations Chapter 4: Software Reference XP8500 Exp-A/D12 Contents s iii...
  • Page 4 Exp-A/D12 Chapter 5: Overview Chapter 6: Getting Started Chapter 7: I/O Configurations Chapter 8: Software Reference iv s Contents XP8500 Exp-A/D12...
  • Page 5 APPENDICES Appendix A: PLCBus Appendix B: Specifications Appendix C: Connecting and Mounting Multiple Boards Appendix D: Simulated PLCBus Connection Appendix E: Technical Circuit Details Index XP8500 Exp-A/D12 Contents s v...
  • Page 6 Blank vi s Contents XP8500 Exp-A/D12...
  • Page 7 The C Programming Language C: A Reference Manual Z180 MPU User's Manual Z180 Serial Communication Controllers Z80 Microprocessor Family User's Manual Intel™386 EX Embedded Microprocessor User’s Manual Intel™386 SX Microprocessor Programmer’s Reference Manual XP8500 Exp-A/D12 About This Manual s vii...
  • Page 8 Serial Interface Board SRAM Static Random Access Memory UART Universal Asynchronous Receiver Transmitter Icons Table 2. Icons Icon Meaning Icon Meaning Note Refer to or see Please contact High Voltage Caution Factory Default viii s About This Manual XP8500 Exp-A/D12...
  • Page 9 Angle brackets occasionally enclose classes of terms. a | b | c A vertical bar indicates that a choice should be made from among the items listed. Pin Number 1 Pin 1 Measurements XP8500 Exp-A/D12 About This Manual s ix...
  • Page 10 Blank x s About This Manual XP8500 Exp-A/D12...
  • Page 11 XP8500...
  • Page 12 Blank...
  • Page 13: Chapter 1: Overview

    VERVIEW HAPTER XP8500 Overview s 13...
  • Page 14 14 s Overview XP8500...
  • Page 15: Chapter 2: Getting Started

    ETTING TARTED HAPTER XP8500 Getting Started s 15...
  • Page 16 XP8500 Components Regulator Gain and Bias Resistors Figure 2-1. XP8500 Board Layout 16 s Getting Started XP8500...
  • Page 17 Connecting Expansion Boards to a Z-World Controller Use the 26-conductor ribbon cable supplied with an expansion board to connect the expansion board to the PLCBus on a Z-World controller. See Figure 2-2. The expansion board’s two 26-pin PLCBus connectors, P1 and P2, are used with the ribbon cable.
  • Page 18 Setting Expansion Board Addresses XP8500 Addresses Power 18 s Getting Started XP8500...
  • Page 19: Chapter 3: I/O Configurations

    I/O C ONFIGURATIONS HAPTER XP8500 I/O Configurations s 19...
  • Page 20: Operating Modes

    XP8500 Pin Assignments +5ANA AIN10 AIN9 AIN8 AIN7 AIN6 VREF+ AIN5 +5ANA AIN4 Figure 3-1. XP8500 Pin Assignments Operating Modes Absolute Mode Ratiometric Mode Figure 3-2. XP8500 Jumper Settings for Absolute or Ratiometric Modes 20 s I/O Configurations XP8500...
  • Page 21 Using Analog-to-Digital Converter Boards XP8500 I/O Configurations s 21...
  • Page 22 How to Set Up An XP8500 Conditioned Inputs (CH0–CH3) bias 0.01 µF +5ANA +5ANA – CH0–CH3 VRn- AIN0–AIN3 converter 10 kΩ VRn+ VREF+ VREF+ 10 kΩ +5ANA bias Figure 3-3. Schematic of XP8500 Signal Conditioning Ω π µ × × Ω...
  • Page 23 Bias Resistors Gain Resistors C H 3 Figure 3-4. Location of XP8500 Gain and Bias Resistors Table 3-1. Gain and Bias Resistors for a Selected Range of Input Voltages Ω) bias Input Range Gain Ω) Absolute Ratiometric Mode Mode -10.0 to +10.0 0.125 1.18 8.06...
  • Page 24 Excitation Resistors +5 V +5 V +5 V +5 V RP2 RP2 RP2 RP2 Figure 3-5. Optional XP8500 Excitation Resistors EEPROM Write-Protect Write-Enable Figure 3-6. XP8500 EEPROM Jumper Settings for Header J3 24 s I/O Configurations XP8500...
  • Page 25 Unconditioned Inputs (AIN4–AIN10) Ω AIN [4 –10] Converter 10 kΩ VREF+ +5ANA Figure 3-7. Schematic of XP8500 Unconditioned Inputs Ω Ω Internal Test Voltages Power-Down Mode XP8500 I/O Configurations s 25...
  • Page 26 Drift Ω 26 s I/O Configurations XP8500...
  • Page 27 Selecting Gain and Bias Resistors 0.01 µF +5ANA +5ANA – CH0–CH3 VRn- AIN0–AIN3 converter 10 kΩ VRn+ VREF+ VREF+ 10 kΩ +5ANA bias Figure 3-8. Schematic of XP8500 Signal Conditioning Step 1. Select Gain Resistor bias − Ω Ω XP8500 I/O Configurations s 27...
  • Page 28 Ω Step 2. Calculate Bias Resistance bias       − ×   bias bias bias Ω bias bias absolute mode bias × Ω bias bias bias ratiometric mode × Ω bias bias bias bias Ω bias Ω...
  • Page 29 Step 4. Bracket Input Range Ω Step 5. Pick Proper Tolerance Step 6. Confirm Performance Ω XP8500 I/O Configurations s 29...
  • Page 30 Out of range A/D converter's input voltage limit Op-amp output voltage deviation arising from resistor variations Out of range XP8500 Input (V) Figure 3-9. Effects on A/D Converter Input from Adjusting Resistor Values Then measure the voltages at VR0- and at the U2 op-amp output. Because the currents through the input resistor and R are essentially identical, the ratio of the voltages across the resistors is equivalent to the ratio of the...
  • Page 31 Step 7. Calibrate the A/D Converter Op-Amp Test Points Ω Ω) VR0- VR1- VR2- VR3- VR0+ VR1+ VR2+ VR3+ AGND AGND AGND AGND Figure 3-10. XP8500 LMC660 Op-Amp Test Points XP8500 I/O Configurations s 31...
  • Page 32 Step 8. Recalibrate the XP8500 32 s I/O Configurations XP8500...
  • Page 33: Chapter 4: Software Reference

    OFTWARE EFERENCE HAPTER XP8500 Software Reference s 33...
  • Page 34 Expansion Board Addresses • unsigned _ eioPlcADC4Addr(char BrdAddr) 34 s Software Reference XP8500...
  • Page 35 XP8500 Software Dynamic C Libraries Table 4-1. Dynamic C Libraries Required by Z-World Controllers Library Controller All controllers VDRIVER.LIB All controllers EZIOCMMN.LIB All controllers EZIOPBDV.LIB BL1000 EZIOTGPL.LIB BL1100 EZIOLGPL.LIB BL1400, BL1500 EZIOMGPL.LIB BL1200, BL1600, PK2100, PK2200, ZB4100 EZIOPLC.LIB BL1700 EZIOPLC2.LIB BL1200, BL1600, PK2100, PK2200 PLC_EXP.LIB XP8500...
  • Page 36 Initialization Software • VdInit() • void eioResetPlcBus() • void eioPlcRstWait() • long int eioErrorCode 36 s Software Reference XP8500...
  • Page 37 XP8500 Drivers • int plcXP85Init( unsigned Addr ) • int plcXP85In( unsigned int address ) • float plcXP85InC( unsigned int address ) XP8500 Software Reference s 37...
  • Page 38 • int eioAdcMakeCoeff( struct _ eioAdcCalib *cnvrsn, unsigned d1, unsigned d2, float f1, float f2 ) • int plcXP85RdCalib( int Addr, struct _eioAdcCalib *pCalib ) 38 s Software Reference XP8500...
  • Page 39 • int plcXP85WrCalib( int Addr, struct _eioAdcCalib *pCalib ) Other XP8500 Drivers • int adc4 _ init( unsigned int board _ adr ) • int adc4 _ read( unsigned int board _ adr, int chan ) XP8500 Software Reference s 39...
  • Page 40 • int adc4 _ set( unsigned int board _ adr, int chan ) previous into out. previous 40 s Software Reference XP8500...
  • Page 41 • int adc4 _ sample( unsigned int board _ adr, int chan, int count, int *buf, unsigned int divider ) XP8500 Software Reference s 41...
  • Page 42 • float adc4 _ convert( int data, struct adc4coeff *cnvrsn ) • int adc4 _ readcoeff( unsigned int board _ adr, int chan, struct adc4coeff *cnvrsn ) • int adc4 _ writecoeff( unsigned int board _ adr, int chan, struct adc4coeff *cnvrsn ) 42 s Software Reference XP8500...
  • Page 43 • int adc4 _ compute( struct adc4coeff cnvrsn, int data1, float volt1, int data2, float volt2 ) • int adc4 _ eerd( unsigned int board_adr, int address ) • int adc4 _ eewr( unsigned int board _ adr, int address, char data ) XP8500 Software Reference s 43...
  • Page 44: Sample Program

    Correcting Readings Sample Program Compile COMPILE <CTRL-Z> 44 s Software Reference XP8500...
  • Page 45 ADC4SMP1.C #if (BOARD_TYPE == CPLC_BOARD) || (BOARD_TYPE==L_STAR) #use cplc.lib // Program runs on PK2200 // and PK2100 controllers // only. #endif main(){ struct adc4coeff adc4conv0; // Structs needed struct adc4coeff adc4conv1; // only if you struct adc4coeff adc4conv2; // use calibration struct adc4coeff adc4conv3;...
  • Page 46 adc4_readcoeff(adc4_board, 2, &ADC4conv2); // read cal for chan2 adc4_readcoeff(adc4_board, 3, &ADC4conv3); // read cal for chan3 printf(“Chan0 Calibration, zero_offset = %d, invgain = %f\n”, ADC4conv0.zero_offset, ADC4conv0.invgain); printf(“Chan1 Calibration, zero_offset = %d, invgain = %f\n”, ADC4conv1.zero_offset, ADC4conv1.invgain); printf(“Chan2 Calibration, zero_offset = %d, invgain = %f\n”, ADC4conv2.zero_offset, ADC4conv2.invgain);...
  • Page 47 Advanced XP8500 Programming PLCBus-Level Communication Table 4-2. Effects of Nibbles Passed Over PLCBus to XP8500 Nibble Function 0000 A/D Clock = 0 0001 A/D Clock = 1 0010 A/D Write Data = 0 0011 A/D Write Data = 1 0100 A/D Chip Select = 0 0101 A/D Chip Select = 1...
  • Page 48 48 s Software Reference XP8500...
  • Page 49 -A/D12...
  • Page 50 Blank...
  • Page 51: Chapter 5: Overview

    VERVIEW HAPTER Exp-A/D12 Overview s 51...
  • Page 52 52 s Overview Exp-A/D12...
  • Page 53: Chapter 6: Getting Started

    ETTING TARTED HAPTER Exp-A/D12 Getting Started s 53...
  • Page 54 Exp-A/D12 Components Power +5 V EEPROM Prec. +2.5 V High-Side Switch (not used) -5 V Figure 6-1. Exp-A/D12 Board Layout 54 s Getting Started Exp-A/D12...
  • Page 55 Controller PLCBus Port Pin 1 Exp-A/D12 Controller With PLCBus Figure 6-2. Connecting XP8500 Expansion Board to Controller PLCBus Be sure power to the controller is disconnected before Be sure power to the controller is disconnected before adding adding any expansion board to the PLCBus.
  • Page 56 Setting Expansion Board Addresses Exp-A/D12 Addresses Power Ω 56 s Getting Started Exp-A/D12...
  • Page 57 Exp-A/D12 Getting Started s 57...
  • Page 58 Blank 58 s Getting Started Exp-A/D12...
  • Page 59: Chapter 7: I/O Configurations

    I/O C ONFIGURATIONS HAPTER Exp-A/D12 I/O Configurations s 59...
  • Page 60 Exp-A/D12 Pin Assignments V– VREF DCIN + – + – + – + – + – + – + – + – Figure 7-1. Exp-A/D12 Wago Connectors H1, H2, and H3 Using Analog-to-Digital Converter Boards 60 s I/O Configurations Exp-A/D12...
  • Page 61 How to Set Up An Exp-A/D12 A/D CONVERTER ANALOG VOLTAGE REFERENCE VOLATGE Route precision +2.5 V V+ connected to VCC to A/D converter chip V+ connected to + 5 V Route ratiometric voltage from U10 to A/D converter chip Figure 7-2. Exp-A/D12 Jumper Settings...
  • Page 62 AN[0-3] – – IN – +5 V Converter +V Reg AN[4-7]+ – AN[4-7] – -5 V –V Reg 202X +2.5 V VREF REF+ Ratiometric Reference 102X Figure 7-3. Exp-A/D12 Analog Inputs The Multiplexers The Op-Amps 62 s I/O Configurations Exp-A/D12...
  • Page 63 The A/D Converter Exp-A/D12 I/O Configurations s 63...
  • Page 64 Blank 64 s I/O Configurations Exp-A/D12...
  • Page 65: Chapter 8: Software Reference

    OFTWARE EFERENCE HAPTER Software Reference s 65 Exp-A/D12...
  • Page 66: Logical Addresses

    Expansion Board Addresses Logical Addresses 66 s Software Reference Exp-A/D12...
  • Page 67 Exp-A/D12 Software The Signal Table size size Constants and Data Types //add to address for S3B // 12-bit PLCBus address // A/D output value at 0v // Input channel to select // conversion mode: 1 of 18 // 0=no comp. 1=do compensate.
  • Page 68 A/D Conversion Modes Table 8-1. Exp-A/D12 A/D Conversion Modes Mode Gain A/D Converter Chip Reads... ANx+ unamplified, bipolar mode ANx– unamplified, bipolar mode difference between ANx+ and ANx–, bipolar 202X difference between ANx+ and ANx–, bipolar difference between ANx+ and ANx–, bipolar difference between ANx+ and ANx–, bipolar...
  • Page 69 General Exp-A/D12 Functions • int add _ sig _ table( int entry, int addr, int in _ ch, int mode, int comp ) • int plcad _ addr( int board ) A/D Conversion • float ad _ conv( int entry, int value ) •...
  • Page 70 • void set _ mux( int entry ) • int adch( int entry ) • void mxdel18() void mxdel9() void mxdel20() • int polarity( int mode ) Accessing EEPROM • int adee _ rd( int board, int addr ) 70 s Software Reference Exp-A/D12...
  • Page 71 • int adee _ wr( int board, int addr, int value ) Sample Program STDIO Software Reference s 71 Exp-A/D12...
  • Page 72 ( “ % f V o l t s % 5 . 2 f D e g r e e s \ n ” , a v g , t e m p C ) ; Dynamic C Technical Reference 72 s Software Reference Exp-A/D12...
  • Page 73 APPENDICES...
  • Page 74 Blank...
  • Page 75 PLCB PPENDIX XP8500 Exp-A/D12 PLCBus s 75...
  • Page 76 PLCBus Overview Table A-1. Z-World PLCBus Expansion Devices Device Description Exp-A/D12 Eight channels of 12-bit A/D converters SE1100 Four SPDT relays for use with all Z-World controllers XP8100 Series 32 digital inputs/outputs “Universal Input/Output Board” XP8200 —16 universal inputs, 6 high-current digital outputs...
  • Page 77 Yellow wire on top PLCBus Header Note position of connector relative to pin 1. From OP6000 KLB Interface Card Header J2 Pin 1 Figure A-2. OP6000 Connection to PLCBus Header XP8500 Exp-A/D12 PLCBus s 77...
  • Page 78 BUSRD1 BUSRD2 Spare, or read data Read this register to BUSRESET reset the PLCBus First address nibble BUSADR0 or byte Second address BUSADR1 nibble or byte Third address BUSADR2 nibble or byte BUSWR Write data 78 s PLCBus XP8500 Exp-A/D12...
  • Page 79 1 1 0 1 8 bits × 3 xxxx1101 xxxxxxxx xxxxxxxx x x x x 1 1 1 0 8 bits × 1 xxxx1110 x x x x 1 1 1 1 8 bits × 1 xxxx1111 XP8500 Exp-A/D12 PLCBus s 79...
  • Page 80 128 × 4 = 512 input bits 000j 10xj xxxj analog input modules, 128 registers 000j 11xj xxxj 128 spare registers (customer) 001j xxxj xxxj 512 spare registers (Z-World) j controlled by board jumper x controlled by PAL 80 s PLCBus XP8500 Exp-A/D12...
  • Page 81 Table A-5. Dynamic C PLCBus Libraries Library Controller All controllers VDRIVER.LIB BL1000 EZIOTGPL.LIB BL1100 EZIOLGPL.LIB BL1400, BL1500 EZIOMGPL.LIB BL1200, BL1600, PK2100, PK2200, ZB4100 EZIOPLC.LIB BL1700 EZIOPLC2.LIB BL1000 PBUS_TG.LIB BL1100, BL1300 PBUS_LG.LIB BL1200, BL1600, PK2100, PK2200 PLC_EXP.LIB XP8500 Exp-A/D12 PLCBus s 81...
  • Page 82 • void eioResetPlcBus() • void eioPlcAdr12( unsigned addr ) • void set16adr( int adr ) • void set12adr( int adr ) • void eioPlcAdr4( unsigned addr ) 82 s PLCBus XP8500 Exp-A/D12...
  • Page 83 • void set4adr( int adr ) • char _eioReadD0( ) • char _eioReadD1( ) • char _eioReadD2( ) • char read12data( int adr ) XP8500 Exp-A/D12 PLCBus s 83...
  • Page 84 • char read4data( int adr ) • void _eioWriteWR( char ch) • void write12data( int adr, char dat ) • void write4data( int address, char data ) • void set24adr( long address ) 84 s PLCBus XP8500 Exp-A/D12...
  • Page 85 • void set8adr( long address ) • int read24data0( long address ) • int read8data0( long address ) • void write24data( long address, char data ) • void write8data( long address, char data ) XP8500 Exp-A/D12 PLCBus s 85...
  • Page 86 Blank 86 s PLCBus XP8500 Exp-A/D12...
  • Page 87 PECIFICATIONS PPENDIX Specifications s 87 XP8500 Exp-A/D12...
  • Page 88 Operating Temperature Range -40°C to +70°C Humidity 5% to 95%, noncondensing Power (quiescent, no output) 24 V DC, 32 mA Inputs Eleven 12-bit analog inputs • 4 channels with signal conditioning • 7 unconditioned channels 88 s Specifications XP8500 Exp-A/D12...
  • Page 89 0.125 typ (3.2) 0.187 dia, 4x (4.7) (7.6) 2.125 (54) Figure B-1. XP8500 Board Dimensions Specifications s 89 XP8500 Exp-A/D12...
  • Page 90 Exp-A/D12 Hardware Specifications Table B-2. Exp-A/D12 Specifications 2.835" × 3.525" × 0.75" Board Size (72 mm × 90 mm × 19 mm) Operating Temperature Range -40°C to +70°C Humidity 5% to 95%, noncondensing Power Consumption 24 V DC, 100 mA •...
  • Page 91 0.15 typ 0.187 dia, 4x (3.8) (4.7) 3.525 (90) Figure B-2. Exp-A/D12 Board Dimensions Specifications s 91 XP8500 Exp-A/D12...
  • Page 92 Blank 92 s Specifications XP8500 Exp-A/D12...
  • Page 93: Boards

    ONNECTING AND PPENDIX OUNTING ULTIPLE OARDS XP8500 Exp-A/D12 Connecting and Mounting Multiple Boards s 93...
  • Page 94 Connecting Multiple Boards EPROM Z180 XP8500 XP8400 Controller Figure C-1. Connecting Multiple Expansion Boards Do not twist the ribbon cable or mount the expansion boards upside down! 94 s Connecting and Mounting Multiple Boards XP8500 Exp-A/D12...
  • Page 95 Relay 3 Relay 4 Relay 4 Relay 6 Relay 6 Relay 5 Relay 5 Relay 7 Relay 7 Z180 Controller Figure C-2. Use of Y Cable to Connect Multiple Expansion Boards XP8500 Exp-A/D12 Connecting and Mounting Multiple Boards s 95...
  • Page 96 Mounting Expansion Boards Bus Connectors Controller Modular PC Expansion Boards Board Holders DIN Rail Figure C-2. Mounting Expansion Boards on DIN Rail 96 s Connecting and Mounting Multiple Boards XP8500 Exp-A/D12...
  • Page 97 PPENDIX PLCB IMULATED ONNECTION XP8500 Exp-A/D12 Simulated PLCBus Connection s 97...
  • Page 98 BL1400 and BL1500 Table D-1. PIO Header to PLCBus Signal Map BL1400/BL1500 Expansion Board Header H3 Pin PIO Port Signal Header P1/P2 Pin PLCBus Signal +5 V +5 V /STBX 98 s Simulated PLCBus Connection XP8500 Exp-A/D12...
  • Page 99 PPENDIX ECHNICAL IRCUIT ETAILS XP8500 Exp-A/D12 Technical Circuit Details s 99...
  • Page 100: Voltage Reference

    XP8500 Voltage Reference Conversion Modes 100 s Technical Circuit Details XP8500 Exp-A/D12...
  • Page 101 Data Conversion Limitations on Output Range XP8500 Exp-A/D12 Technical Circuit Details s 101...
  • Page 102 Exp-A/D12 Input Stability Effects of the OP6300 on Stability between Multiplexer Settling Time Ω 102 s Technical Circuit Details XP8500 Exp-A/D12...
  • Page 103 XP8500 Exp-A/D12 Technical Circuit Details s 103...
  • Page 104 Blank 104 s Technical Circuit Details XP8500 Exp-A/D12...
  • Page 105: Index

    NDEX Symbols XP8500 Exp-A/D12 Index s 105...
  • Page 106 106 s Index XP8500 Exp-A/D12...
  • Page 107 XP8500 Exp-A/D12 Index s 107...
  • Page 108 108 s Index XP8500 Exp-A/D12...
  • Page 109 XP8500 Exp-A/D12 Index s 109...
  • Page 110 110 s Index XP8500 Exp-A/D12...
  • Page 111 Z-World Printed in U.S.A.

This manual is also suitable for:

Xp8500

Table of Contents