Campbell SDM-IO16 User Manual

16 channel input/output expansion module

Advertisement

Quick Links

SDM-IO16
16 Channel Input/Output
Expansion Module
Issued: 13.8.18
Copyright © 1998-2018 Campbell Scientific, Inc.
Printed under licence by Campbell Scientific Ltd.
CSL 479

Advertisement

Table of Contents
loading

Summary of Contents for Campbell SDM-IO16

  • Page 1 SDM-IO16 16 Channel Input/Output Expansion Module Issued: 13.8.18 Copyright © 1998-2018 Campbell Scientific, Inc. Printed under licence by Campbell Scientific Ltd. CSL 479...
  • Page 3 Quotations for repairs can be given on request. It is the policy of Campbell Scientific to protect the health of its employees and provide a safe working environment, in support of this policy a “Declaration of Hazardous Material and Decontamination”...
  • Page 5 PLEASE READ FIRST About this manual Please note that this manual was originally produced by Campbell Scientific Inc. primarily for the North American market. Some spellings, weights and measures may reflect this origin. Some useful conversion factors: Area: 1 in...
  • Page 7 • Periodically (at least yearly) check electrical ground connections. WHILE EVERY ATTEMPT IS MADE TO EMBODY THE HIGHEST DEGREE OF SAFETY IN ALL CAMPBELL SCIENTIFIC PRODUCTS, THE CUSTOMER ASSUMES ALL RISK FROM ANY INJURY RESULTING FROM IMPROPER INSTALLATION, USE, OR MAINTENANCE OF TRIPODS, TOWERS, OR ATTACHMENTS TO TRIPODS AND TOWERS...
  • Page 9: Table Of Contents

    Contents PDF viewers note: These page numbers refer to the printed version of this document. Use the Adobe Acrobat® bookmarks tab for links to specific sections. 1. Introduction..............1 2. Specifications ............. 2 2.1 General ...................... 2 2.2 Port Specifications (Output Mode) ............3 2.3 Port Specifications (Input Mode) ..............
  • Page 10 C. Command Code Listing ......... C-1 D. Details of use with PC208W and older dataloggers ............D-1 Figures 1. SDM-IO16 (with mounting brackets) ............1 2. Simplified Equivalent Port Circuits ............4 3. Connection Block Diagrams ............... 5 4. Use of Terminal Blocks ................6 5.
  • Page 11: Introduction

    SDM-IO16 16 Channel Input/Output Expansion Module The SDM-IO16 (see Figure 1) is a synchronously addressed peripheral. It has 16 ports that can be configured for input or output which expand the number of control ports of the datalogger. It is fully compatible with Campbell Scientific’s CR6, CR800, CR850, CR1000, CR1000X, CR3000, CR5000 and CR23X dataloggers.
  • Page 12: Specifications

    SDM-IO16 16 Channel Input/Output Expansion Module The SDM-IO16 is supplied with two removable mounting brackets that attach to the ends of the unit, as shown in Figure 1. The full functions and support for the error checked communications NOTE protocol require an operating system for the datalogger and Edlog template files that post-dates March 2002.
  • Page 13: Port Specifications (Output Mode)

    User Guide 2.2 Port Specifications (Output Mode) Output voltage (no load): Output ON/HI, Nominal 5 V (Minimum 4.5 V) Output OFF/LO, Nominal 0 V (Maximum 0.1 V) Output sink current: Output will sink 8.6 mA from a 5 V source Output source current: Output will source 42 mA @ 3 V, 133 mA short- circuited to ground...
  • Page 14: Power Considerations

    3. Power Considerations For most applications, especially for pulse counting or status inputs, it is more normal to use the datalogger supply to power the SDM-IO16, as shown in Figure 3(a). When being used for control and outputting current the SDM-IO16 power requirements can be large compared to most Campbell Scientific products when driving significant loads.
  • Page 15: Installation

    (b) Connection with External Supply Figure 3. Connection Block Diagrams 4. Installation For correct operation the SDM-IO16 must be installed where there is no risk of water ingress or condensation. The order in which connections are made is critical. Always CAUTION connect 12 V first, followed by ground, then the control ports.
  • Page 16: Terminal Connections

    Multiple SDM-IO16s can be wired in parallel by connecting the datalogger connections of one SDM-IO16 to the next. The transient protection of the SDM-IO16 relies on a low resistance path to earth. Ensure that the ground return wire has as low a resistance as possible. Where very long cable runs are likely, or where lightning damage is a possibility, the SDM- IO16 can be fitted with optional gas discharge tubes.
  • Page 17: Address Selection Switches

    Switch Setting Decimal Address Base 4 Address Figure 5. Address Selection Switch Each SDM-IO16 needs to be set to a unique address on the SDM bus, so that no two SDM peripherals share the same address.
  • Page 18: Programming The Datalogger

    SDM-IO16 to configure the ports before they are used. See the program examples in Appendix B.
  • Page 19: Programming The Cr800, Cr850, Cr1000, Cr3000, And Cr5000

    12-9, Mode Ports 8-5, Mode Ports 4-1, Mult, Offset ) Remarks The ports on the SDM-IO16 can be configured for either input or output. When configured as input, the SDM-IO16 can measure the logical state of each port, count pulses, and measure the frequency of and determine the duty cycle of applied signals.
  • Page 20: Sdmcd16Ac Instruction

    6.2.2 SDMCD16AC Instruction All but the oldest versions of the CR5000 operating system also support the SDMCD16AC instruction that can be used to control the SDM-IO16 for output mode only. This instruction should only be used if backward compatibility is required, as only the IO16 instruction supports error detection on communication between the peripheral and the datalogger.
  • Page 21: Instruction P188 (Cr10X And Cr23X)

    The factory setting is 0. Parameter 02 specifies the command number, which is the main way of controlling what the SDM-IO16 does in response to a specific call of P188. The range of commands is described in Section 6.4 below.
  • Page 22: Command Codes

    Parameter 07 specifies the input location number to hold a counter to indicate errors in communicating with the SDM-IO16. All communication between the SDM-IO16 and the datalogger is error checked. If, for any reason, there is an error then the datalogger will retry the instruction 3 times before continuing with the next instruction.
  • Page 23 1 an interrupt will be generated whenever the port changes state. The interrupt is generated by pulsing the I/O line on the SDM-IO16 until the datalogger responds by reading the port states of the SDM-IO16 in question using the SDM-IO16 command. The I/O line would normally be connected to a control port on the datalogger that activates an interrupt subroutine.
  • Page 24: Datalogger Instructions 104 And 29 (Cr10, Cr7, 21X)

    This can be useful if you need to use the SDM-IO16 in place of an SDM-CD16 or any of its later variants, or if you need to use one for output expansion only, using a datalogger that has an old operating system that does not support instruction P188 mentioned above.
  • Page 25 Execution Time = 150 ms to 190 ms per Rep Please note that these instructions use base 4 addressing. See the table with Figure 5 to see the matching setting of the address switch on the SDM-IO16 that equates to any base 4 address.
  • Page 26 SDM-IO16 16 Channel Input/Output Expansion Module...
  • Page 27: Program Examples

    In this example, the SDM-IO16 is used to control the temperature between 23°C and 28°C in each of five greenhouses. In each greenhouse the SDM-IO16 controls a heating unit, a refrigerating unit and an air mixing fan. Solid state relays might be used as the interface to these units.
  • Page 28: Port

    SDM-IO16 16 Channel Input/Output Expansion Module Cooling unit: Activate when temperature >27.5°C. Deactivate when temperature <24.5°C. Mixing fan: Activate whenever the heating or cooling units are activated. Activate for 5 minutes out of every 15 minutes. The program assumes that the temperature measurements have been made, and that the average temperature for each greenhouse is computed and stored in input locations 1 to 5.
  • Page 29 Appendix A. Program Examples ;Set flag 1 high to indicate we have run the setup code 3: Do (P86) 1: 11 Set Flag 1 High 4: End (P95) ;of IF block ;Measure the five temperatures, with 5 107 probes in this example 5: Temp (107) (P11) 1: 5 Reps...
  • Page 30 SDM-IO16 16 Channel Input/Output Expansion Module ;End heater control logic ;Start cooler control logic 17: If (X<=>F) (P89) ;if 'cooler on' threshold 1: 1 -- X Loc [ Temp_1 ] ;is exceeded 2: 3 >= 3: 27.5 4: 30 Then Do ;then...
  • Page 31 Set Flag 2 Low ;End fan control logic based on time ;Input locations 10 to 24 are now loaded ;with a '1' or '0' to set ports on the SDM-IO16 ;Omit this instruction if using an older datalogger ;see below...
  • Page 32: A Cr10X Program Which Measures Four Frequency Inputs (Anemometers) And Four Switch Closure Inputs (Rain Gauges

    SDM-IO16 16 Channel Input/Output Expansion Module 2: 94 Command Code Option ;set the ports from locations 3: 0000 Ports 16-13 ;port settings not used for 94 4: 0000 Ports 12-9 5: 0000 Ports 8-5 6: 0000 Ports 4-1 7: 27 Return Code Loc [ ErrCount ] ;for return code...
  • Page 33: Ports 17 18 19

    Set Flag 1 High 4: End (P95) ; of IF block ;Measure the four frequencies and write to four input locations ;applying a scaling to m/s 5: SDM-IO16 (P188) 1: 00 SDM Address 2: 40 Command Code Option ;read the freq of the signals on ports 1..4...
  • Page 34: A Cr10X Program That Uses The Interrupt Subroutine In The Datalogger To Record The Time Of Change Of Any One Of The Ports On An Sdm-Io16

    End Program A.4 A CR10X Program that uses the Interrupt Subroutine in the Datalogger to Record the Time of Change of any one of the Ports on an SDM-IO16 This program can also be used with a CR23X datalogger. ;{CR10X} ;An example that shows the use of the IO16 to detect the change...
  • Page 35 ;as a change of state of a port. Typically this will be 10 ms but will ;vary with the datalogger and other activity. ;Reading the port status will cancel further polling ;until the next change of state. 2: SDM-IO16 (P188) 1: 00 SDM Address 2: 91 Command Code Option ;read the port status into one location...
  • Page 36 SDM-IO16 16 Channel Input/Output Expansion Module 2: 2 Loc [ Portstat_ ] 8: End (P95) End Program This is a blank page. A-10...
  • Page 37: General Principles Of Pulse And Frequency

    B.1 Introduction It is necessary to understand the general method of input measurements of the SDM-IO16 to be able to easily comprehend the limits of frequency and duty cycle resolution. The microprocessor in the module runs an internal task that reads the status of all 16 ports at a fixed frequency of 4096 Hz.
  • Page 38: Resolution Of Frequency Measurements

    SDM-IO16 16 Channel Input/Output Expansion Module B.3 Resolution of Frequency Measurements The module measures frequency by counting the number of full signal cycles between requests for measurements by the datalogger and measuring the time between the start of the first and end of the last of these cycles. The resolution of a frequency measurement will be dependent on the number of pulses and the resolution of the internal timer (244 s).
  • Page 39: Debounce Filtering

    Appendix B. General Principles of Pulse and Frequency Measurements B.5 Debounce Filtering The module is able to digitally filter input signals to prevent false counting of pulses or inaccurate measurement of frequency for signals sources that do not have "clean" digital signals. Such signals are often generated by mechanical switch closures where the contacts often bounce on changeover resulting in a signal that, for instance, goes low as the switch closes but then goes high for an instant as the contact bounces, before finally going low again when the switch...
  • Page 41: Command Code Listing

    Appendix C. Command Code Listing Command Action Read port 1 accumulated counts into 1 location Read port 2 accumulated counts into 1 location Read port 3 accumulated counts into 1 location Read port 4 accumulated counts into 1 location Read port 5 accumulated counts into 1 location Read port 6 accumulated counts into 1 location Read port 7 accumulated counts into 1 location Read port 8 accumulated counts into 1 location...
  • Page 42: Read State

    SDM-IO16 16 Channel Input/Output Expansion Module Command Action Read port 8 duty cycle into 1 location Read port 9 duty cycle into 1 location Read port 10 duty cycle into 1 location Read port 11 duty cycle into 1 location...
  • Page 43: Details Of Use With Pc208W And Older Dataloggers

    PC208W files Datalogger Instruction 188 for the SDM-IO16 was developed after the release of PC208W version 3.3. Campbell Scientific will not release another version of PC208W but instead will offer the next generation datalogger support software which is LoggerNet.
  • Page 44 Required Operating System Version Datalogger --Listed version or later-- CR10X 1.17 CR23X 1.14 Campbell Scientific datalogger operating systems are easily downloaded from our website page, www.campbellsci.com/resource.html. Go to section Product Upgrades and click on the link for the appropriate datalogger.
  • Page 46 CAMPBELL SCIENTIFIC COMPANIES Campbell Scientific, Inc. (CSI) 815 West 1800 North Campbell Scientific Centro Caribe S.A. (CSCC) Logan, Utah 84321 300N Cementerio, Edificio Breller UNITED STATES Santo Domingo, Heredia 40305  COSTA RICA www.campbellsci.com info@campbellsci.com  www.campbellsci.cc info@campbellsci.cc Campbell Scientific Africa Pty. Ltd. (CSAf) PO Box 2450 Campbell Scientific Ltd.

Table of Contents