Omega Products DIN-100 Installation Manual

omega.com
e-mail: info@omega.com
For latest product manuals:
omegamanual.info
User’s Guide
DIN-100 Series
DIN Rail Mount Digital Transmitters
Shop online at
Servicing North America:
U.S.A.: One Omega Drive, Box 4047
ISO 9001 Certified Stamford, CT 06907-0047
Tel: (203) 359-1660 FAX: (203) 359-7700 e-mail: info@omega.com
Canada: 976 Bergar
Laval (Quebec) H7L 5A1, Canada Tel: (514) 856-6928 FAX: (514) 856-6886 e-mail: info@omega.ca
For immediate technical or application assistance:
U.S.A. and Canada: Sales Service: 1-800-826-6342 / 1-800-TC-OMEGA
®
Customer Service: 1-800-622-2378 / 1-800-622-BEST
®
Engineering Service: 1-800-872-9436 / 1-800-USA-WHEN
®
Mexico: En Espan˜ol: (001) 203-359-7803 e-mail: espanol@omega.com
FAX: (001) 203-359-7807 info@omega.com.mx
Servicing Europe:
Benelux: Postbus 8034, 1180 LA Amstelveen, The Netherlands
Tel: +31 (0)20 3472121 FAX: +31 (0)20 6434643 Toll Free in Benelux: 0800 0993344 e-mail: sales@omegaeng.nl
Czech Republic: Frystatska 184, 733 01 Karvina´, Czech Republic
Tel: +420 (0)59 6311899 FAX: +420 (0)59 6311114 Toll Free: 0800-1-66342 e-mail: info@omegashop.cz
France: 11, rue Jacques Cartier, 78280 Guyancourt, France
Tel: +33 (0)1 61 37 2900 FAX: +33 (0)1 30 57 5427 Toll Free in France: 0800 466 342 e-mail: sales@omega.fr
Germany/Austria: Daimlerstrasse 26, D-75392 Deckenpfronn, Germany
Tel: +49 (0)7056 9398-0 FAX: +49 (0)7056 9398-29 Toll Free in Germany: 0800 639 7678 e-mail: info@omega.de
United Kingdom: One Omega Drive, River Bend Technology Centre
ISO 9002 Certified Northbank, Irlam, Manchester
M44 5BD United Kingdom Tel: +44 (0)161 777 6611 FAX: +44 (0)161 777 6622 Toll Free in United Kingdom: 0800-488-488 e-mail: sales@omega.co.uk
OMEGAnet®Online Service Internet e-mail
omega.com info@omega.com
It is the policy of OMEGA Engineering, Inc. to comply with all worldwide safety and EMC/EMI regulations that apply. OMEGA is constantly pursuing certification of its products to the European New Approach Directives. OMEGA will add the CE mark to every appropriate device upon certification.
The information contained in this document is believed to be correct, but OMEGA accepts no liability for any errors it contains, and reserves the right to alter specifications without notice. WARNING: These products are not designed for use in, and should not be used for, human applications.
DIN-100 SERIES USERS MANUAL
REVISED: 10/2004
Omega Engineering, Inc. P. O. BOX 4047 Stamford, CT 06907
Phone: 1-800-DAS-IEEE
FAX: 203-359-7990 URL: http://www.omega.com The information in this publication has been carefully checked and is
believed to be accurate; however, no responsibility is assumed for possible inaccuracies or omissions. Applications information in this manual is in­tended as suggestions for possible use of the products and not as explicit performance in a specific application. Specifications may be subject to change without notice.
DIN-100 modules are not intrinsically safe devices and should not be used in an explosive environment unless enclosed in approved explosion-proof housings.
TABLE OF CONTENTS
Warranty 4 CHAPTER 1 Getting Started
Default Mode 1-1 Quick Hook-Up 1-2
CHAPTER 2 Functional Description
Block Diagram 2-2
CHAPTER 3 Communications
Data Format 3-2 RS-485 3-2 RS-485 Multidrop System 3-3
CHAPTER 4 Command Set
Table of Commands 4-6 User Commands 4-6 Error Messages 4-12
CHAPTER 5 Setup Information and Command
Command Syntax 5-1 Setup Hints 5-10
CHAPTER 6 Digital I/O Function
Digital Outputs 6-1 Digital Inputs 6-2
CHAPTER 7 Power Supply CHAPTER 8 Troubleshooting CHAPTER 9 Calibration
CHAPTER 10 Extended Addressing Appendix A (ASCII TABLE ) Appendix B DIN-160 Data Sheet Appendix C DIN-140 Data Sheet Appendix D DIN-150 Data Sheet Appendix E DIN-100 Specifications Appendix F Modbus Protocol
2
Chapter 1
Getting Started
Default Mode
All DIN-100 modules contain an EEPROM (Electrically Erasable Program­mable Read Only Memory) to store setup information and calibration constants. The EEPROM replaces the usual array of switches and pots necessary to specify baud rate, address, parity, etc. The memory is nonvolatile which means that the information is retained even if power is removed. No batteries are used so it is never necessary to open the module case.
The EEPROM provides tremendous system flexibility since all of the module’s setup parameters may be configured remotely through the com­munications port without having to physically change switch and pot settings. There is one minor drawback in using EEPROM instead of switches; there is no visual indication of the setup information in the module. It is impossible to tell just by looking at the module what the baud rate, address, parity and other settings are. It is difficult to establish communica­tions with a module whose address and baud rate are unknown. To overcome this, each module has an input pin labeled DEFAULT*. By connecting this pin to Ground, the module is put in a known communications setup called Default Mode.
The Default Mode setup is: 300 baud, one start bit, eight data bits, one stop bit, no parity, any address is recognized.
Grounding the DEFAULT* pin does not change any of the setups stored in EEPROM. The setup may be read back with the Read Setup (RS) command to determine all of the setups stored in the module. In Default Mode, all commands are available.
A module in Default Mode will respond to any address except the six identified illegal values (NULL, CR, $, #, {, }). A dummy address must be included in every command for proper responses. The ASCII value of the module address may be read back with the RS command. An easy way to determine the address character is to deliberately generate an error message. The error message outputs the module’s address directly after the “?” prompt.
Setup information in a module may be changed at will with the SetUp (SU) command. Baud rate and parity setups may be changed without affecting the Default values of 300 baud and no parity. When the DEFAULT* pin is released, the module automatically performs a program reset and config­ures itself to the baud rate and parity stored in the setup information.
The Default Mode is intended to be used with a single module connected to a terminal or computer for the purpose of identifying and modifying setup
Getting Started 1-2
values. In most cases, a module in Default Mode may not be used in a string with other modules.
RS-485 Quick Hook-Up
Software is not required to begin using your DIN-100 module. We recom­mend that you begin to get familiar with the module by setting it up on the bench. Start by using a dumb terminal or a computer that acts like a dumb terminal. Make the connections shown in the quick hook-up drawings, Figures 1.1 or 1.2. Put the module in the default mode by grounding the Default* terminal. Initialize the terminal communications package on your computer to put it into the “terminal” mode. Since this step varies from computer to computer, refer to your computer manual for instructions.
Begin by typing $1RD and pressing the Enter or Return key. The module will respond with an * followed by the data reading at the input. The data includes sign, seven digits and a decimal point. For example, if you are using a thermocouple module and measuring room temperature your reading might be *+00025.00. The temperature reading is scaled in °C which has been preset at the factory. Once you have a response from the module you can turn to the Chapter 4 and get familiar with the command set.
All modules are shipped from the factory with a setup that includes a channel address of 1, 300 baud rate, no linefeeds, no parity, alarms off, no echo and two-character delay. Refer to the Chapter 5 to configure the module to your application.
Figure 1.1 RS-485 Quick Hook-Up.
Getting Started 1-3
RS-485 Quick Hook-up to a RS-232 port
An RS-485 module may be easily interfaced to an RS-232C terminal for evaluation purposes. This connection is only suitable for benchtop operation and should never be used for a permanent installation. Figure 1.2 shows the hook-up. This connection will work provided the RS-232C transmit output is current limited to less than 50mA and the RS-232C receive threshold is greater than 0V. All terminals that use 1488 and 1489 style interface IC’s will satisfy this requirement. With this connection, characters generated by the terminal will be echoed back. To avoid double characters, the local echo on the terminal should be turned off.
If the current limiting capability of the RS-232C output is uncertain, insert a 100to 1k resistor in series with the RS-232 output.
In some rare cases it may be necessary to connect the module’s DATA pin to ground through a 100 to 1k resistor.
Figure 1.2 RS-485 Quick Hook-Up with RS-232C Port.
Chapter 2
Functional Description
A functional diagram of a typical module is shown in Figure 2.1. It is a useful reference that shows the data path in the module and to explain the function of many of the module’s commands.
The first step is to acquire the sensor signal and convert it to digital data. In Figure 2.1, all the signal conditioning circuitry has been lumped into one block, the analog/digital converter (A/D). Autozero and autocalibration is performed internally and is transparent to the user.
The full-scale output of the A/D converter may be trimmed using the Trim Span (TS) command. The TS command adjusts calibration values stored internally in the EEPROM. The TS command should only be used to trim the accuracy of the unit with a laboratory standard reference applied to the sensor input.
The trimmed data flows into either of two digital filters. The filter selection is performed automatically by the microprocessor after every A/D conversion. The filter selection depends on the difference of the current A/D output data and the previous data stored in the output data register. If the least significant decimal digit from the A/D differs from the old output data by more than 10 counts, the large signal filter is selected. If the change is less than 10 counts, the small signal filter is used.
The two-filter system allows for different degrees of filtering depending on the rate of the input change. For steady-state signals, the small-signal filter averages out noise and small input changes to give a stable steady-state output. The large-signal filter is activated by step changes or very noisy input signals. The time constants for the two filters can be specified independently with the SetUp (SU) command. The filter values are stored in nonvolatile memory. Typically, the small-signal filter is set to a larger time constant than the large-signal filter. This gives very good noise rejection along with fast response to step inputs.
The scaled data is summed with data stored in the Output Offset Register to obtain the final output value. The output offset is controlled by the user and has many purposes. The data in the Output Offset Register may be used to trim any offsets caused by the input sensor. It may be used to null out undesired signal such as a tare weight. The Trim Zero (TZ) command is used to adjust the output to any desired value by loading the appropriate value in the offset register. The offset register data is nonvolatile.
The value stored in the offset register may be read back using the Read Zero (RZ) command. Data loaded in with the SP command will be read back with the sign changed. The output register may be reset to zero with the Clear Zero (CZ) command.
Functional Description 2-2
The output data may be read with the Read Data (RD) command. In some cases when a computer is used as a host, the same data value may be read back several times before it is updated with a new A/D conversion.
The DIN-170 general-purpose digital outputs are open-collector transistor switches that may be controlled by the host with the Digital Output (DO) command. They are designed to activate external solid-state relays to control AC or DC power circuits. The output may also be used to interface to other logic-level devices. The number of digital outputs available depends on the module type.
The DIN-170 Digital Input (DI) command is used to sense the logic levels on the digital input pins DI0-DI7. The digital inputs are used to read logic levels generated by other devices. They are also useful to sense the state of electro-mechanical limit switches. The number of digital inputs available varies with the module type.
Figure 2.1 Analog Input Block Diagram.
Chapter 3
Communications
Introduction
The DIN-100 modules has been carefully designed to be easy to interface to all popular computers and terminals. All communications to and from the modules are performed with printable ASCII characters. This allows the information to be processed with string functions common to most high-level languages such as BASIC. The ASCII format makes system debugging easy with a dumb terminal.
This system allows multiple modules to be connected to a communications port with a single 4-wire cable. Up to 32 RS-485 modules may be strung together on one cable; 122 with repeaters. The modules communicate with the host on a polling system; that is, each module responds to its own unique address and must be interrogated by the host. A module can never initiate a communications sequence. A simple command/response protocol must be strictly observed to avoid communications collisions and data errors.
Communications to the DIN-100 modules is performed with two-character or three-character ASCII command codes such as RD to Read Data from the analog input. A complete description of all commands is given in the Chapter 4. A typical command/response sequence would look like this:
Command: $1RD Response: *+00123.00
A command/response sequence is not complete until a valid response is received. The host may not initiate a new command until the response from a previous command is complete. Failure to observe this rule will result in communications collisions. A valid response can be in one of three forms:
1) a normal response indicated by a ‘ * ‘ prompt
2) an error message indicated by a ‘ ? ‘ prompt
3) a communications time-out error
When a module receives a valid command, it must interpret the command, perform the desired function, and then communicate the response back to the host. Each command has an associated delay time in which the module is busy calculating the response. If the host does not receive a response in an appropriate amount of time specified in Table 3.1, a communications time-out error has occurred. After the communications time-out it is as­sumed that no response data is forthcoming. This error usually results when an improper command prompt or address is transmitted. The table below lists the timeout specification for each command:
Communications 3-2
Mnemonic Timeout DI,DO,RD 10 mS
All other commands 100 mS Table 3.1 Response Timeout Specifications. The timeout specification is the turn-around time from the receipt of a
command to when the module starts to transmit a response.
Data Format All modules communicate in standard NRZ asynchronous data for­mat. This format provides one start bit, seven data bits, one parity bit and one stop bit for each character.
Single Module Connection
Figure 1.1 shows the connections necessary to attach one module to a host. Use the Default Mode to enter the desired address, baud rate, and other setups (see Setups).
RS-485
The RS-485 communications standard satisfies the need for multidropped systems that can communicate at high data rates over long distances. RS­485 is similar to RS-422 in that it uses a balanced differential pair of wires switching from 0 to 5V to communicate data. RS-485 receivers can handle common mode voltages from -7V to +12V without loss of data, making them ideal for transmission over great distances. RS-485 differs from RS-422 by using one balanced pair of wires for both transmitting and receiving. Since an RS-485 system cannot transmit and receive at the same time it is inherently a half-duplex system. RS-485 offers many advantages over RS­232C:
1) balanced line gives excellent noise immunity
2) can communicate with D1000 modules at 115200 baud
3) communications distances up to 4,000 feet.
4) true multidrop; modules are connected in parallel
5) can disconnect modules without losing communications
6) up to 32 modules on one line; 122 with repeaters
7) no communications delay due to multiple modules
8) simplified wiring using standard telephone cable
RS-485 does have disadvantages. Very few computers or terminals have built-in support for this new standard. Interface boards are available for the IBM PC and compatibles. As RS-485 system usually requires an interface.
The DIN-190 will convert RS-232 signals to RS-485 or repeat RS-485 signals. The DIN-190 connected as an RS-485 repeater can be used to
Communications 3-3
extend an existing RS-485 network or connect up to 122 modules on one serial communications port.
RS-485 Multidrop System
Figure 3.1 illustrates the wiring required for multiple-module RS-485 sys­tem. Notice that every module has a direct connection to the host system. Any number of modules may be unplugged without affecting the remaining modules. Each module must be setup with a unique address and the addresses can be in any order. All RS-485 modules must be setup for no echo to avoid bus conflicts (see Setup). Also note that the connector pins on each module are labelled with notations (B), (R), (G), and (Y). This designates the colors used on standard 4-wire telephone cable:
Label Color (B) GND Black
(R) V+ Red (G) DATA* (-) Green (Y) DATA (+) Yellow
This color convention is used to simplify installation. If standard 4-wire telephone cable is used, it is only necessary to match the labeled pins with the wire color to guarantee correct installation.
DATA* on the label is the complement of DATA (negative true). To minimize unwanted reflections on the transmission line, the bus should
be arranged as a line going from one module to the next. ‘Tree’ or random structures of the transmission line should be avoided. When using long transmission lines and/or high baud rates, the data lines should be termi­nated at each end with 200 ohm resistors. Standard values of 180 ohms or 220 ohms are acceptable.
During normal operation, there are periods of time where all RS-485 drivers are off and the communications lines are in an 'idle' high impedance condition. During this condition, the lines are susceptible to noise pickup which may be interpreted as random characters on the communications line. To prevent noise pickup, all RS-485 systems should incorporate 1K ohm bias resistors as shown in Figure 3.1. The resistors will maintain the data lines in a 'mark' condition when all drivers are off.
DIN-191 and DIN-192 modules have the 1K resistors built-in. Special care must be taken with very long busses (greater than 1000 feet)
to ensure error-free operation. Long busses must be terminated as de­scribed above. The use of twisted cable for the DATA and DATA* lines will greatly enhance signal fidelity. Use parity and checksums along with the ‘#’
Communications 3-4
form of all commands to detect transmission errors. In situations where many modules are used on a long line, voltage drops in the power leads becomes an important consideration. The GND wire is used both as a power connection and the common reference for the transmission line receivers in the modules. Voltage drops in the GND leads appear as a common-mode voltage to the receivers. The receivers are rated for a maximum of -7V. of common-mode voltage. For reliable operation, the common mode voltage should be kept below -5V.
To avoid problems with voltage drops, modules may be powered locally rather than transmitting the power from the host. Inexpensive 'calculator' type power supplies are useful in remote locations. When local supplies are used, be sure to provide a ground reference with a third wire to the host or through a good earth ground. With local supplies and an earth ground, only two wires for the data connections are necessary.
Communications Delay
All DIN-100 modules are setup at the factory to provide two units of communications delay after a command has been received (see Chapter 5). This delay is necessary when using host computers that transmit a carriage return as a carriage return-linefeed string. Without the delay, the linefeed character may collide with the first transmitted character from the module, resulting in garbled data. If the host computer transmits a carriage return as a single character, the delay may be set to zero to improve communications response time.
Communications 3-5
Chapter 4
ASCII Command Set
The DIN-100 modules operate with a simple command/response protocol to control all module functions. A command must be transmitted to the module by the host computer or terminal before the module will respond with useful data. A module can never initiate a communications sequence. A variety of commands exists to exploit the full functionality of the modules. A list of available commands and a sample format for each command is listed in Table 4.1.
Command Structure
Each command message from the host must begin with a command prompt character to signal to the modules that a command message is to follow. There are two valid prompt characters; a dollar sign character ($) is used to generate a short response message from the module. A short response is the minimum amount of data necessary to complete the command. The second prompt character is the pound sign character (#) which generates long responses (will be covered later in this chapter).
The prompt character must be followed by a single address character identifying the module to which the command is directed. Each module attached to a common communications port must be setup with its own unique address so that commands may be directed to the proper unit. Module addresses are assigned by the user with the SetUp (SU) command. Printable ASCII characters such as ‘1’ (ASCII $31) or ‘A’ (ASCII $41) are the best choices for address characters.
The address character is followed by a two-character command that identifies the function to be performed by the module. All of the available commands are listed in Table 4.1 along with a short function definition. All commands are described in Chapter 4. Commands must be transmitted as upper-case characters.
A two-character checksum may be appended to any command message as a user option. See ‘Checksum’ in Chapter 4 .
All commands must be terminated by a Carriage Return character (ASCII $0D). (In all command examples in this text the Carriage Return is either implied or denoted by the symbol ‘CR’.)
Data Structure
Many commands require additional data values to complete the command definition as shown in the example commands in Table 4.1. The particular data necessary for these commands is described in full in the complete command descriptions.
Command Set 4-2
The most common type of data used in commands and responses is analog data. Analog data is always represented in the same format for all models in the DIN-100 series. Analog data is represented as a nine-character string consisting of a sign, five digits, decimal point, and two additional digits. The string represents a decimal value in engineering units. Examples:
+12345.68 +00100.00
-00072.10
-00000.00
When using commands that require analog data as an argument, the full nine-character string must be used, even if some digits are not significant. Failure to do this results in a SYNTAX ERROR.
Analog data responses from the module will always be transmitted in the nine-character format. This greatly simplifies software parsing routines since all analog data is in the same format for all module types.
In many cases, some of the digits in the analog data may not be significant. For instance, the DIN-130 thermocouple input modules feature 1 degree output resolution. A typical analog data value from this type of module could be +00123.00. The two digits to the right of the decimal point have no significance in this particular model. However, the data format is always adhered to in order to maintain compatibility with other module types.
The maximum computational resolution of the module is 16 bits, which is less than the resolution that may be represented by an analog data variable.
The Digital Input, Digital Output, and Setup commands use hexadecimal representations of data. The data structures for these commands are detailed in the command descriptions.
Write Protection
Many of the commands listed in Table 4.1 are under the heading of ‘Write Protected Commands’. These commands are used to alter setup data in the module’s EEPROM. They are write protected to guard against accidental loss of setup data. All write-protected commands must be preceded by a Write Enable (WE) command before the protected command may be executed.
Miscellaneous Protocol Notes
The address character must transmitted immediately after the command prompt character. After the address character the module will ignore any character below ASCII $23 (except CR). This allows the use of spaces (ASCII $20) within the command message for better readability if desired.
Command Set 4-3
The length of a command message is limited to 20 printable characters. If a properly addressed module receives a command message of more than 20 characters the module will abort the whole command sequence and no response will result.
If a properly addressed module receives a second command prompt before it receives a CR, the command will be aborted and no response will result.
Response Structure
Response messages from the module begin with either an asterisk ‘ * ‘ (ASCII $2A) or a question mark ‘ ? ‘ (ASCII $3F) prompt. The ‘ * ‘ prompt indicates acknowledgment of a valid command. The ‘ ? ‘ prompt precedes an error message. All response messages are terminated with a CR. Many commands simply return a ‘ * ‘ character to acknowledge that the command has been executed by the module. Other commands send data information following the ‘ * ‘ prompt. The response format of all commands may be found in the detailed command description.
The maximum response message length is 20 characters. A command/response sequence is not complete until a valid response is
received. The host may not initiate a new command until the response from a previous command is complete. Failure to observe this rule will result in communications collisions. A valid response can be in one of three forms:
1) a normal response indicated by a ‘ * ‘ prompt
2) an error message indicated by a ‘ ? ‘ prompt
3) a communications time-out error
When a module receives a valid command, it must interpret the command, perform the desired function, and the communicate the response back to the host. Each command has an associated delay time in which the module is busy calculating the response. If the host does not receive a response in an appropriate amount of time specified in Table 4.1, a communications time­out error has occurred. After the communications time-out it is assumed that no response data is forthcoming. This error usually results when an improper command prompt or address is transmitted.
Long Form Responses
When the pound sign ‘ # ‘ command prompt is used, the module responds with a ‘long form’ response. This type of response will echo the command message, supply the necessary response data and will add a two-character checksum to the end of the message. Long form responses are used when the host wishes to verify the command received by the module. The checksum is included to verify the integrity of the response data. The ‘ # ‘ command prompt may be used with any command. For example:
Command Set 4-4
Command: $1RD (short form) Response: *+00072.10
Command: #1RD (long form) Response: *1RD+00072.10A4 (A4=checksum)
Checksum
Checksum is a two character hexadecimal value appended to the end of a message. It verifies that the message received is exactly the same as the message sent. The checksum ensures the integrity of the information communicated.
Command Checksum
A two-character checksum may be appended to any command to the module as a user option. When a module interprets a command, it looks for the two extra characters and assumes that it is a checksum. If the checksum is not present, the module will perform the command normally. If the two extra characters are present, the module calculates the checksum for the message. If the calculated checksum does not agree with the transmitted checksum, the module responds with a ‘BAD CHECKSUM’ error message and the command is aborted. If the checksums agree, the command is executed. If the module receives a single extra character, it responds with ‘SYNTAX ERROR’ and the command is aborted For example:
Command: $1RD (no checksum) Response: *+00072.10
Command: $1RDEB (with checksum) Response: *+00072.10
Command: $1RDAB (incorrect checksum) Response: ?1 BAD CHECKSUM
Command: $1RDE (one extra character) Response: ?1 SYNTAX ERROR
Response Checksums
If the long form ‘ # ‘ version of a command is transmitted to a module, a checksum will be appended to the end of the response. For example:
Command: $1RD (short form) Response: *+00072.10
Command: #1RD (long form) Response: *1RD+00072.10A4 (A4=checksum)
Command Set 4-5
Checksum Calculation
The checksum is calculated by summing the hexadecimal values of all the ASCII characters in the message. The lowest order two hex digits of the sum are used as the checksum. These two digits are then converted to their ASCII character equivalents and appended to the message. This ensures that the checksum is in the form of printable characters.
Example: Append a checksum to the command #1DOFF
Characters: # 1 D O F F ASCII hex values: 23 31 44 4F 46 46 Sum (hex addition) 23 + 31 + 44 + 4F + 46 + 46 = 173
The checksum is 73 (hex). Append the characters 7 and 3 to the end of the message: #1DOFF73
Example: Verify the checksum of a module response *1RD+00072.10A4
The checksum is the two characters preceding the CR: A4 Add the remaining character values: *1RD+00072. 10
2A + 31 + 52 + 44 + 2B + 30 + 30 + 30 + 37 + 32 + 2E + 31 + 30 = A4
The two lowest-order hex digits of the sum are A4 which agrees with the transmitted checksum.
The transmitted checksum is the character string equivalent to the calcu­lated hex integer. The variables must be converted to like types in the host software to determine equivalency.
If checksums do not agree, a communications error has occurred. If a module is setup to provide linefeeds, the linefeed characters are not
included in the checksum calculation. Parity bits are never included in the checksum calculation.
Command Set 4-6
Table 4.1 DIN-100 Command Set
Command and Definition Typical Typical
Command Response Message Message
($ prompt)
DI Read Alarms/Digital Inputs $1DI *0003 DO Set Digital Outputs $1DOFF * RD Read Data $1RD *+00072.00 RS Read Setup $1RS *31070142 RZ Read Zero $1RZ *+00000.00 WE Write Enable $1WE *
Write Protected Commands MBR Set Modbus Address $1MBR01 *
MBD Modbus Disable $1MBD * RR Remote Reset $1RR * SU Setup Module $1SU31070142 * TS Trim Span $1TS+00600.00 * TZ Trim Zero $1TZ+00000.00 *
DIN-100 User Commands
Note that in all command and response examples given below, a carriage return is implied after every character string.
Clear Zero (CZ)
The Clear Zero command clears the output offset register value to +00000.00. This command clears any data resulting from a Trim Zero (TZ).
Command: $1CZ Response: *
Command: #1CZ Response: *1CZF8
Digital Input (DI)
The DI command reads the status of the digital inputs on the DIN-171. The response to the DI command is four hex characters representing two bytes of data. The second byte contains the digital input data.
Command: $1DI Response: *0003
Command: #1DI Response: *1DI0003AB
Command Set 4-7
The second byte displays the hex value of the digital input status. The number of digital inputs varies depending on module type.
Digital Inputs DI5 DI4 DI3 DI2 DI1 DI0 Data Bits 543210
For example: A typical response from a $1DI command could be: *00FE. This response indicates that DI0 = 0 and all other digital inputs are = 1
All digital inputs that are not implemented or left unconnected are read as ‘1’
Digital input 0 serves a dual function. It is both a digital input and the Event Counter input.
When reading digital inputs with a checksum, be sure not to confuse the checksum with the data.
Digital Output (DO) The DO command controls eight bits of digital outputs on the DIN-172 module connector. The number of digital outputs implemented depends on the model used. The digital outputs allow the module to control external circuits under host command. The DO command requires an argument of two hex characters specifying the eight bits of output data.
Digital Outputs DO7 DO6 DO5 DO4 DO3 DO2 DO1 DO0 Data Bits 76543210
The electrical implementation of the digital output consists of open-collector transistors wired to the module connector. If a digital output is set to ‘1’ the corresponding transistor is turned on and sinks current. Note that when a digital output bit is set to ‘1’ the electrical output is near 0 volts. If a digital output is set to ‘0’ the corresponding transistor is turned off and sinks no current.
Assume a module has two digital outputs, and you wish to turn both outputs on (sinking current). Set data bit 0 and data bit 1 to ‘1’. Since the module has only two digital outputs, all the other bits are ‘don’t cares’. For example, this command will turn both outputs ‘on’:
Command: $1DOFF Response: *
To turn both outputs off you could use the command:
Command: $1DO00 Response: *
Command Set 4-8
Digital output settings are not stored in nonvolatile memory. If a power failure occurs, all digital outputs will be 0 upon power up.
The DO command is the only means of changing digital outputs. There is no software provision to read the state of digital outputs.
Read Data (RD)
The read data command is the basic command used to read the buffered sensor data. The output buffer (Figure 2.1) allows the data to be read immediately without waiting for an input A/D conversion. For example:
Command: $1RD Response: *+00072.00
Command: #1RD Response: *1RD+00072.10A4
Since the RD command is the most frequently used command in normal operation, a special shortened version of the command is available. If a module is addressed without a two-letter command, the module interprets the string as an RD command.
Command: $1 Response: *+00072.10
Command: #1 Response: *1RD+00072.10A4
Remote Reset (RR)
The reset command allows the host to perform a program reset on the module’s microprocessor. This may be necessary if the module’s internal program is disrupted by static or other electrical disturbances. Once a reset command is received, the module will recalibrate itself. The calibration process takes approximately 3 seconds. For example:
Command: $1RR Response: *
Command: #1RR Response: *1RRFF
In general, the state of the digital outputs and the event counter will not be affected by the RR command. However, if data in the microprocessor’s RAM (Random Access Memory) has been lost, the RR command will result in a full power-up reset.
Any commands sent to the module during the self-calibration sequence will result in a NOT READY error.
Command Set 4-9
Read Setup (RS)
The read setup command reads back the setup information loaded into the module’s nonvolatile memory with the SetUp (SU) command. The response to the RS command is four bytes of information formatted as eight hex characters.
Command: $1RS Response: *31070142
Command: #1RS Response: *1RS3107014292
The response contains the module’s channel address, baud rate and other parameters. Refer to the setup command (SU), and Chapter 5 for a list of parameters in the setup information.
When reading the setup with a checksum, be sure not to confuse the checksum with the setup information.
Read Zero (RZ)
The Read Zero command reads back the value stored in the Output Offset Register (Figure 2.1).
Command: $1RZ Response: *+00000.00
Command: #1RZ Response: *1RZ+00000.00B0
The data read back from the Output Offset Register may be interpreted in several ways. The commands that affect this value are: Trim Zero (TZ) and Clear Zero (CZ).
Setup Command (SU)
Each DIN-100 module contains an EEPROM (Electrically Erasable Programmable Read Only Memory) which is used to store module setup information such as address, baud rate, parity, etc. The EEPROM is a special type of memory that will retain information even if power is removed from the module. The EEPROM is used to replace the usual array of DIP switches normally used to configure electronic equipment.
The SetUp command is used to modify the user-specified parameters contained in the EEPROM to tailor the module to your application. Since the SetUp command is so important to the proper operation of a module, a whole section of this manual has been devoted to its description. See Chapter 5.
Command Set 4-10
The SU command requires an argument of eight hexadecimal digits to describe four bytes of setup information:
Command: $1SU31070182 Response: *
Command: #1SU31070182 Response: *1SU3107018299
Trim Span (TS)
The trim span command is the basic means of trimming the accuracy of a DIN-100 module. The TS command loads a calibration factor into nonvola­tile memory to trim the full-scale output of the signal conditioning circuitry. It is intended only to compensate for long-term drifts due to aging of the analog circuits, and has a useful trim value of ±10% of the nominal calibration set at the factory. It is not to be used to change the basic transfer function of the module. Full information on the use of the TS command may be found in Chapter 9.
Command: $1TS+00500.00 Response: *
Command: #1TS+00500.00 Response: *1TS+00500.00B0
Caution! TS is the only command associated with the span trim. There is no
provision to read back or clear errors loaded by the TS command. Misuse of the TS command may destroy the calibration of the unit which can only be restored by using laboratory calibration instruments in a controlled environment. An input signal must be applied when using this command.
Trim Zero (TZ)
The Trim Zero command is used to load a value into the Output Offset Register (Figure 2.1) to null out an offset in the output data. It may be used to trim offsets created by sensors. It may also be used to null out data to create a deviation output.
Example: Assume a DIN-151 bridge input module is being used with a load cell for weight measurement. An initial reading of the load cell with no weight applied may reveal an initial offset error:
Command: $1RD Response: *+00005.00
With no weight applied, trim the output to read zero. To trim, use the TZ command and specify the desired output reading:
Command: $1TZ+00000.00 (zero output) Response: *
Command Set 4-11
With no weight applied, trim the output to read zero. To trim, use the TZ command and specify the desired output reading:
Command: $1TZ+00000.00 (zero output) Response: *
The TZ command will load a data value into the Output Offset Register to force the output to read zero. The module will compensate for any previous value loaded into the Output Offset Register. If another output reading is taken, it will show that the offset has been eliminated:
Command: $1RD Response: *+00000.00
Although the TZ command is most commonly used to null an output to zero, it may be used to offset the output to any specified value. Assume that with the previously nulled load cell system we performed this command:
Command: $1TZ-00100.00 Response: *
The new data output with no load applied would be:
Command: $1RD Response: *-00100.00
The load cell output is now offset by -100. The offset value stored by the TZ command is stored in nonvolatile memory
and may be read back with the Read Zero (RZ) command and cleared with the Clear Zero (CZ) command.
The SetPoint (SP) command will write over any value loaded by the TZ command.
Write Enable (WE)
Each module is write protected against accidental changing of alarms, limits, setup, or span and zero trims. To change any of these write protected parameters, the WE command must precede the write-protected command. The response to the WE command is an asterisk indicating that the module is ready to accept a write-protected command. After the write-protected command is successfully completed, the module becomes automatically write disabled. Each write-protected command must be preceded individu­ally with a WE command. For example:
Command: $1WE Response: *
Command: #1WE Response: *1WEF7
Loading...
+ 57 hidden pages