Tektronix M3000,M4000 Series Computer To Analog Output Interfaces User's Manual 64990A User manual

M3000/M4000 Series
User’s Manual
A GREATER MEASURE OF CONFIDENCE
WARRANTY
Hardware
Upon receiving notification of a defect in the Keithley Hardware during the warranty period, Keithley will, at its option, either repair or replace such Keithley Hard­ware. During the first ninety days of the warranty period, Keithley will, at its option, supply the necessary on site labor to return the product to the condition prior to the notification of a defect. Failure to notify Keithley of a defect during the warranty shall relieve Keithley of its obligations and liabilities under this warranty.
Other Hardware
The portion of the product that is not manufactured by Keithley (Other Hardware) shall not be covered by this warranty, and Keithley shall have no duty of obligation to enforce any manufacturers' warranties on behalf of the customer. On those other manufacturers’ products that Keithley purchases for resale, Keithley shall have no duty of obligation to enforce any manufacturers’ warranties on behalf of the customer.
Software
Keithley warrants that for a period of one (1) year from date of shipment, the Keithley produced portion of the software or firmware (Keithley Software) will conform in all material respects with the published specifications provided such Keithley Software is used on the product for which it is intended and other­wise in accordance with the instructions therefore. Keithley does not warrant that operation of the Keithley Software will be uninterrupted or error-free and/ or that the Keithley Software will be adequate for the customer's intended application and/or use. This warranty shall be null and void upon any modification of the Keithley Software that is made by other than Keithley and not approved in writing by Keithley.
If Keithley receives notification of a Keithley Software nonconformity that is covered by this warranty during the warranty period, Keithley will review the conditions described in such notice. Such notice must state the published specification(s) to which the Keithley Software fails to conform and the manner in which the Keithley Software fails to conform to such published specification(s) with sufficient specificity to permit Keithley to correct such nonconfor­mity. If Keithley determines that the Keithley Software does not conform with the published specifications, Keithley will, at its option, provide either the programming services necessary to correct such nonconformity or develop a program change to bypass such nonconformity in the Keithley Software. Failure to notify Keithley of a nonconformity during the warranty shall relieve Keithley of its obligations and liabilities under this warranty.
Other Software
OEM software that is not produced by Keithley (Other Software) shall not be covered by this warranty, and Keithley shall have no duty or obligation to enforce any OEM's warranties on behalf of the customer.
Other Items
Keithley warrants the following items for 90 days from the date of shipment: probes, cables, rechargeable batteries, diskettes, and documentation.
Items not Covered under Warranty
This warranty does not apply to fuses, non-rechargeable batteries, damage from battery leakage, or problems arising from normal wear or failure to follow instructions.
Limitation of Warranty
This warranty does not apply to defects resulting from product modification made by Purchaser without Keithley's express written consent, or by misuse of any product or part.
Disclaimer of Warranties
EXCEPT FOR THE EXPRESS WARRANTIES ABOVE KEITHLEY DISCLAIMS ALL OTHER WARRANTIES, EXPRESS OR IMPLIED, INCLUD­ING WITHOUT LIMITATION, ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. KEI­THLEY DISCLAIMS ALL WARRANTIES WITH RESPECT TO THE OTHER HARDWARE AND OTHER SOFTWARE.
Limitation of Liability
KEITHLEY INSTRUMENTS SHALL IN NO EVENT, REGARDLESS OF CAUSE, ASSUME RESPONSIBILITY FOR OR BE LIABLE FOR: (1) ECONOMICAL, INCIDENTAL, CONSEQUENTIAL, INDIRECT, SPECIAL, PUNITIVE OR EXEMPLARY DAMAGES, WHETHER CLAIMED UNDER CONTRACT, TORT OR ANY OTHER LEGAL THEORY, (2) LOSS OF OR DAMAGE TO THE CUSTOMER'S DATA OR PROGRAM­MING, OR (3) PENALTIES OR PENALTY CLAUSES OF ANY DESCRIPTION OR INDEMNIFICATION OF THE CUSTOMER OR OTHERS FOR COSTS, DAMAGES, OR EXPENSES RELATED TO THE GOODS OR SERVICES PROVIDED UNDER THIS WARRANTY.
Keithley Instruments, Inc. 28775 Aurora Road • Cleveland, Ohio 44139 • 440-248-0400 • Fax: 440-248-6168
1-888-KEITHLEY (534-8453) • www.keithley.com
Sales Offices:BELGIUM: Bergensesteenweg 709 • B-1600 Sint-Pieters-Leeuw • 02-363 00 40 • Fax: 02/363 00 64
CHINA: Yuan Chen Xin Building, Room 705 • 12 Yumin Road, Dewai, Madian • Beijing 100029 • 8610-6202-2886 • Fax: 8610-6202-2892 FINLAND: Tietäjäntie 2 • 02130 Espoo • Phone: 09-54 75 08 10 • Fax: 09-25 10 51 00 FRANCE: 3, allée des Garays • 91127 Palaiseau Cédex • 01-64 53 20 20 • Fax: 01-60 11 77 26 GERMANY: Landsberger Strasse 65 • 82110 Germering • 089/84 93 07-40 • Fax: 089/84 93 07-34 GREAT BRITAIN: Unit 2 Commerce Park, Brunel Road • Theale • Berkshire RG7 4AB • 0118 929 7500 • Fax: 0118 929 7519 INDIA: Flat 2B, Willocrissa • 14, Rest House Crescent • Bangalore 560 001 • 91-80-509-1320/21 • Fax: 91-80-509-1322 ITALY: Viale San Gimignano, 38 • 20146 Milano • 02-48 39 16 01 • Fax: 02-48 30 22 74 JAPAN: New Pier Takeshiba North Tower 13F • 11-1, Kaigan 1-chome • Minato-ku, Tokyo 105-0022 • 81-3-5733-7555 • Fax: 81-3-5733-7556 KOREA: 2FL., URI Building • 2-14 Yangjae-Dong • Seocho-Gu, Seoul 137-888 • 82-2-574-7778 • Fax: 82-2-574-7838 NETHERLANDS: Postbus 559 • 4200 AN Gorinchem • 0183-635333 • Fax: 0183-630821 SWEDEN: c/o Regus Business Centre • Frosundaviks Allé 15, 4tr • 169 70 Solna • 08-509 04 679 • Fax: 08-655 26 10 SWITZERLAND: Kriesbachstrasse 4 • 8600 Dübendorf • 01-821 94 44 • Fax: 01-820 30 81 TAIWAN: 1FL., 85 Po Ai Street • Hsinchu, Taiwan, R.O.C. • 886-3-572-9077• Fax: 886-3-572-9031
4/02
M3OOU/M4UUU
SERIES
USER’S
MANUAL
New Contact Information
Keithley Instruments, Inc.
28775 Aurora Road
Cleveland, OH 44139
Technical Support: 1-888-KEITHLEY
Monday – Friday 8:00 a.m. to 5:00 p.m (EST)
Fax: (440) 248-6168
Visit our website at http://www.keithley.com
Part Number: 24809
Revision Level:
First Printing: March
A
1989
Copyright
WARNING
MetraByte Corporation assumes no liability for damages consequent
product. This product is not designed
in life support
All
rights reserved.
transmitted, in any form by any means, electronic. mechanical, photocopying, recording. or
otherwise, without the express
Information furnished by MetraByte Corporation
However,
infringements
granted by implication
No
no
responsibility
of
patents
part
of
this publication may
or
is
other rights of third parties which may result from
or
otherwise under any
with
prior
assumed
or
wriien permission
by
0
1989
to
its
the use
use;
its
components of a level of retiabi[ity suitable for use
critical applications.
be
reproduced. stored in a retrieval system. or
of
MetraByte Corporation.
is
believed
MetraByte Corporation
patent
tights
to
be accurate and reliable.
for
of
MetraByte Corporation.
of
nor for any
use.
No
this
license is
M3000/M4000 modules are not intrinsically safe devices and should not
environment unless enclosed in approved explosion-proof housings.
a
IBMB
PC/XT/AT
MetraBytem is
is
a
registered trademark
trademark
of
MetraByte Corporation.
of
International Business Machines Corporation.
be
used in an explosive

Safety Precautions

The following safety precautions should be observed before using this product and any associated instrumentation. Although some in­struments and accessories would normally be used with non-haz­ardous voltages, there are situations where hazardous conditions may be present.
This product is intended for use by qualified personnel who recog­nize shock hazards and are familiar with the safety precautions re­quired to avoid possible injury. Read and follow all installation, operation, and maintenance information carefully before using the product. Refer to the manual for complete product specifications.
If the product is used in a manner not specified, the protection pro­vided by the product may be impaired.
The types of product users are:
Responsible body is the individual or group responsible for the use
and maintenance of equipment, for ensuring that the equipment is operated within its specications and operating limits, and for en­suring that operators are adequately trained.
Operators use the product for its intended function. They must be
trained in electrical safety procedures and proper use of the instru­ment. They must be protected from electric shock and contact with hazardous live circuits.
Maintenance personnel perform routine procedures on the product
to keep it operating properly, for example, setting the line voltage or replacing consumable materials. Maintenance procedures are de­scribed in the manual. The procedures explicitly state if the operator may perform them. Otherwise, they should be performed only by service personnel.
Service personnel are trained to work on live circuits, and perform
safe installations and repairs of products. Only properly trained ser­vice personnel may perform installation and service procedures.
Keithley products are designed for use with electrical signals that are rated Installation Category I and Installation Category II, as de­scribed in the International Electrotechnical Commission (IEC) Standard IEC 60664. Most measurement, control, and data I/O sig­nals are Installation Category I and must not be directly connected to mains voltage or to voltage sources with high transient over-volt­ages. Installation Category II connections require protection for high transient over-voltages often associated with local AC mains connections. Assume all measurement, control, and data I/O con­nections are for connection to Category I sources unless otherwise marked or described in the Manual.
Exercise extreme caution when a shock hazard is present. Lethal voltage may be present on cable connector jacks or test xtures. The American National Standards Institute (ANSI) states that a shock hazard exists when voltage levels greater than 30V RMS, 42.4V peak, or 60VDC are present. A good safety practice is to expect
that hazardous voltage is present in any unknown circuit before measuring.
Operators of this product must be protected from electric shock at all times. The responsible body must ensure that operators are pre­vented access and/or insulated from every connection point. In some cases, connections must be exposed to potential human con­tact. Product operators in these circumstances must be trained to protect themselves from the risk of electric shock. If the circuit is capable of operating at or above 1000 volts, no conductive part of
the circuit may be exposed.
Do not connect switching cards directly to unlimited power circuits. They are intended to be used with impedance limited sources. NEVER connect switching cards directly to AC mains. When con­necting sources to switching cards, install protective devices to lim­it fault current and voltage to the card.
Before operating an instrument, make sure the line cord is connect­ed to a properly grounded power receptacle. Inspect the connecting cables, test leads, and jumpers for possible wear, cracks, or breaks before each use.
When installing equipment where access to the main power cord is restricted, such as rack mounting, a separate main input power dis­connect device must be provided, in close proximity to the equip­ment and within easy reach of the operator.
For maximum safety, do not touch the product, test cables, or any other instruments while power is applied to the circuit under test. ALWAYS remove power from the entire test system and discharge any capacitors before: connecting or disconnecting cables or jump­ers, installing or removing switching cards, or making internal changes, such as installing or removing jumpers.
Do not touch any object that could provide a current path to the com­mon side of the circuit under test or power line (earth) ground. Always make measurements with dry hands while standing on a dry, insulated surface capable of withstanding the voltage being measured.
The instrument and accessories must be used in accordance with its specications and operating instructions or the safety of the equip­ment may be impaired.
Do not exceed the maximum signal levels of the instruments and ac­cessories, as dened in the specications and operating informa­tion, and as shown on the instrument or test xture panels, or switching card.
When fuses are used in a product, replace with same type and rating for continued protection against re hazard.
Chassis connections must only be used as shield connections for measuring circuits, NOT as safety earth ground connections.
If you are using a test xture, keep the lid closed while power is ap­plied to the device under test. Safe operation requires the use of a lid interlock.
5/02
If or is present, connect it to safety earth ground using the wire recommended in the user documentation.
!
The symbol on an instrument indicates that the user should re­fer to the operating instructions located in the manual.
The symbol on an instrument shows that it can source or mea­sure 1000 volts or more, including the combined effect of normal and common mode voltages. Use standard safety precautions to avoid personal contact with these voltages.
The WARNING heading in a manual explains dangers that might result in personal injury or death. Always read the associated infor­mation very carefully before performing the indicated procedure.
The CAUTION heading in a manual explains hazards that could damage the instrument. Such damage may invalidate the warranty.
Instrumentation and accessories shall not be connected to humans. Before performing any maintenance, disconnect the line cord and
all test cables.
To maintain protection from electric shock and re, replacement components in mains circuits, including the power transformer, test leads, and input jacks, must be purchased from Keithley Instru­ments. Standard fuses, with applicable national safety approvals, may be used if the rating and type are the same. Other components that are not safety related may be purchased from other suppliers as long as they are equivalent to the original component. (Note that se­lected parts should be purchased only through Keithley Instruments to maintain accuracy and functionality of the product.) If you are unsure about the applicability of a replacement component, call a Keithley Instruments ofce for information.
To clean an instrument, use a damp cloth or mild, water based cleaner. Clean the exterior of the instrument only. Do not apply cleaner directly to the instrument or allow liquids to enter or spill on the instrument. Products that consist of a circuit board with no case or chassis (e.g., data acquisition board for installation into a computer) should never require cleaning if handled according to in­structions. If the board becomes contaminated and operation is af­fected, the board should be returned to the factory for proper cleaning/servicing.
TABLE
OF
CONTENTS Warranty CHAPTER
CHAPTER
1
2
CHAPTER 3
CHAPTER
CHAPTER
CHAPTER
CHAPTER CHAPTER
CHAPTER CHAPTER
Appendix Appendix
4
5
6
7
8 9
10
A
B
4
Getting Started
Terminal Designations 1-1
Default
Quick
Mode
Hook-Up
1-2
1-3
Functional Description
Block
Diagram 2-3
Communications
RS-232C 3-2
Multi-party Connection 3-3 Software Considerations 3-4
Changing Baud Rate
RS-485
3-6
3-5
RS-485 Multidrop System 3-7
Command
Table
User
Commands
Error Messages
Set
of
Commands
4-6
4-7
4-20
Setup Information and Command
Command Syntax 5-2 Setup Hints
Digital
110
Manual ModedDigital Controller Input Limit Switches
Power
Supply
5-9
Function
6-4
6-5
Inputs
6-1
Troubleshooting Cali brat
M4000
Slope Control
Input Data Scaling
Watchdog Timer Analog Readback
(ASCII TABLE M3000/4000
ion
Features
10-1
)
Data
10-4
10-6
10-7
Sheet
3
WARRANTY
MetraByte warrants each in materials and workmanship under normal conditions of use and service and will replace any component
tation charges prepaid within one year
no liability, expressed or implied, beyond its obligation to replace any component involved. Such warranty is in lieu of
WARNING
The
circuits and software contained in
proprietary. Purchase of these products does not transfer any rights any license to
the
circuits or software used or decompiling of the software program of the software program by any means
As
explained in the setup section, all setups are performed entirely from the
outside of the
M3000/4000
M3000
found
and M4000 series module to be free from defects
to be defective, on its return
of
its original purchase. MetraByte assumes
all
other warranties expressed or implied.
M3000
and
to
M4000
MetraByte, transpor-
series modules are
or
in
these products. Disassembling
is
explicitly prohibited. Reproduction
is
illegal.
module. There
is
no need to open the module
grant
because there are no user-serviceable parts inside. Removing the cover or
tampering with, modifying, or repairing by unauthorized personnel
matically void the warranty. MetraByte
tial
damages.
is
not responsible for any consequen-
will
auto-
RETURNS
When returning products Authorization Number and shipping instructions. Write the Return Authorization
Numberon the outside ofthe shipping box. MetraBytestrongly recommendsthat you insure the product they will not
be
for
accepted.
for
any
reason, contact the factory and request a Return
value prior to shipping. ttems should not
be
returned collect as
4
Chapter
1
Getting
Introduction
The MetraByte
analog output interfaces. They are designed to
computer and communicate with standard ASCII commands are used to control which is scaled to provide commonly used current and voltage ranges. An on-board
microprocessor is used
gent analog output functions.
M3000
sensitive applications where some
M3000
read back.
M4000
enhancements
versions provide a basic computer-to-analog output interface for cost­units feature step-function outputs, fixed input scaling, and no analog
versions perform alI
M3000/4000
to
:
is a series of completely self-contained computer-to-
be
mounted remotely from a host
RS-232
a
1
2-bit
provide the communications interface and many intelli-
of
the intelligent enhancements are not required.
of
the
M3000
functions plus many additional intelligent
and
DAC
RS-485
(Digital-to-Analog Converter)
serial ports. Simple
Started
Controlled output slew rates True analog readback
Programmable input data scaling Programmable starting value
Watchdog timer This manual has been written
Basic operating characteristics noted, the information in this manual applies to both versions. Commands and
functions exclusive

Terminal Designations

All
M3000
slight variations between currentholtage and
Pin
1
Pin
2
Pins 1 and 2 are the connections input data is scaled
Voltage outputs can source or sink current.
and
+I
-I
to
M4000
OUT or
OUT
or
so
the
units have similar terminal designations, although there are
+V
-V OUT
that the voltage at
to
of
M4000
OUT
to
be a guide for both the M3000 and
both models are identical and unless otherwise
are
so
noted in the text.
RS-232/RS-485
the analog output signal. On voltage models, the
+V
OUT
is
positive with respect to -V OUT.
models.
M4000
units.
1-2
M3000/4000 USERS
MANUAL
On current output models, the output current flows from the
-I
OUT
terminal, positive voltage level than the current.
Pins 1 and 2 are electrically isolated from the other pins. Pin
3
Pin 4 Pin
5
Pins 3-5 are digital input pins. They may be used as general-purpose inputs may be set-up to provide special functions that control the analog output. The
standard factory set-up configures the down control
negative true. A full functional description Pin 6
Grounding this pin places the module in Default Mode, described in detail below. Pin
7
Pin
8
Pins 7 and 8 are connections to the serial communications lines connecting the module to the host computer or terminal.
so
for a typical resistive load, the
-1
OUT
terminal. Current outputs can only source
D12 DI 1 /UP*
DIO/DN*
UP*
and
of
the analog output. The * designation indicates that the labels are
of
DEFAULT*
TRANSMIT
RECEIVE
or
or
DATA*
DATA
+I
OUT
DN*
pins to provide manual up and
these pins may be found in Chapter
+I
OUT terminal
terminal will be at a more
to
or
the
they
6.
On RS-232 models, the TRANSMIT pin
module. The RECEIVE pin
On RS-485 versions, communications lines.
respectively.
Pin
9
Pin
1OGND
Pins 9 and
30V unregulated power.
Default
All
M3000/4000
Read Only Memory)
EEPROM
rate, address, parity, etc.
tion is retained even
necessary to open the module case.
The
EEPROM
parameters may be configured remotely through the communications port without having
drawback in using EEPROM instead
to
V+
10
are the powerconnections. The M3000/4000 modules operate on
Mode
modulescontain an EEPROM (Electrically Erasable Programmable
replaces the usual array
provides tremendous system flexibility since
physically change switch and pot settings. However, there
DATA
is
the serial input into the module.
and
DATA*
DATA
to
and
DATA*
store setup information and calibration constants. The
of
The
memory is nonvolatile which means that the informa-
if
power is removed.
is
the serial output connection from the
are connections to the balanced
are sometimes labeled
switches and pots necessary to specify baud
No
batteries are used
of
switches; there is no visual indication of the
DATA+
so
all
of the module’s setup
RS-485
and
DATA-
it
is never
is
one minor
10-
Getting Started
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.
communications with a module whose address and baud rate are unknown.
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.
It
is difficult to establish
1-3
To
The Default Mode setup
Grounding the DEFAULT* pin
The setup may
of
the setups stored in the module. In Default Mode, all commands are available.
A
module in Default Mode will respond
included in every command for proper responses. The
address may be read back with the
address character is to deliberately generate an error message. The error message
outputs the module’s address directly after
Setup information
Baud rate and parity setups may be changed without affecting the Default values of
300
baud and no panty. When the DEFAULT* pin is released, the module automati-
cally performs a program reset and configures itself to the baud rate and parity stored
in the setup information.
The Default Mode
orcomputer forthe purpose
a
module
RS-232
Software
that you begin to get familiar with the module by setting
using a dumb terminal or a computer that acts like a dumb terminal. Make the
connectionsshown inthequick hook-updrawings, Figures
in the Default Mode
communications package on yourcornputerto put
this step varies from computer
inst ructions.
in
&
is
be
read back with the Read Setup
in
is
Default Mode may not be used in a string with other modules.
RS-485
not required
Quick
is:
300
baud, no parity, any address is recognized.
does
not change any of the setupsstored in EEPROM.
(RS)
a
module may
intended to
of
identifying and modifying setupvalues. In most cases,
command
to
any address. A dummy address must be
ASCII
RS
command. An easy way to determine the
the
“?”
prompt.
be
changed at will with the Setup
be
used with asingle module connected toaterminal
to
determine
value of the module
(SU)
command.
Hook-Up
to
begin using your
by
grounding the DEFAULT* terminal. Initialize the terminal
to
computer, refer to your computer manual
M3000/4000
it
it
into the “terminal” mode. Since
module. We recommend
up on the bench. Start by
1.1
or
1.2.
Putthe module
all
far
Connect a suitable voltmeter or ammeter to the output connections
monitor the output signal.
current-output modules, a sense resistor and a voltmeter may be used as shown in
Fig.
1.1.
Turn power on
connector. The output signal should increase in value as the UP* pin
release the UP* pin and ground the DN* (down) pin. The output signal should
decrease in value as the pin
If
an ammeter
to
the module. Momentarily ground the UP* pin on the
is
held
is
not available
low.
to
measure the signals from
of
the module to
is
held
low.
Now
1-4
M3000/4000
USERS
MANUAL
This demonstrates the “Manual Mode” method
quick check to see if the module
Use your terminal to type the command
is
connected and working properly.
$1
RD
of
controlling the output. It is also
and
terminate the command with a
a
carriage return. The module will respond with an * followed by the output data
reading. The data includes sign, seven digits and a decimal point. For example, a
typical reading might be
*+00015.00.
This is an output status reading and it should
closely correspond with the reading on your meter.
Now
type the command:
$1
A0+00010.00
The module should respond with
rnilliamps). This demonstrates the Analog Output
primary method
If
you have a voltage output module,try these commands:
$1
A0+00000.00
$1
AO+OOlOO.OO
$1
A0+01000.00
$1
A0+01234.00
and terminate with a carriage return.
I*’
and the output will change to
of
controlling the analog output.
(terminate with a carriage return)
(AO)
command, which
10
millivolts
is
(or
the
Far current output models these commands are more appropriate:
$1
A0+00004.00
$1
A0+00020.00
$1
A0+00010.00
Remember to terminate each command with a carriage return. Once you have a response from
the
module
you
can turn
to
the Chapter 4 and get
familiar with the command set.
All
modulesareshippedfromthefactory
of
1,
300
baud
delay. Refer
rate,
no
to
the Chapter
linefeeds, no parity, limits off, no echo and two-character
5
to
configure
with asetupthat includesachanneladdress
the
module to your application.
Getting
Started
1-5
-f--l
Current
Output
Ammeter
Figure
voltmeter
1.1
RS-232C
YQkqe
Output
Quick
M
3QQQ
Analog
Output
RS232C
Hook-Up.
Cumnt Output Output
Ammeter
Voltwe
voltmeter
FIGURE
1.2
RS-485
Quick
Hook-UP.
1-6
M3000/4000
USERS MANUAL
RS-485
An
Quick
RS-485
Hook-up
to a RS-232
port
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 will work provided the RS-232C transmit output and the
and
RS-232C
1489
receive threshold is greater than
style interface
IC’s
will satisfy this requirement. With this connection, characters generated by the terminal characters, the IocaI echo
If
the current limiting capability
1
kQ
resistor in series with the RS-232C output.
Cumnt
Output
on
the terminal should be turned
of
the RS-232C output is uncertain, insert a
Ydtqe
Output
1.3
shows the hook-up.
is
current limited to less than 50mA
OV.
will
be echoed back.
This
connection
All terminals that use
To
avoid double
off.
100
1488
to
-i-b
Ammeter
Vottmeter
FIGURE
1.3
RS-485
Quick
Hook-Up
using
an
RS-232
Port.
Chapter
2
Functional Description
The MetraByte
analog process control signals in response to simple digital commands from a host
computer. The M3000/4000 units are completely self-contained and are designed to
be
operated remotely from the host. Digital commands are transmitted to the M3000/
4000
units using standard RS-232 or RS-485 communications links. Commands and
responses are in the form
The
ASCII
modems as well as intelligent controllers and computers. Figure2.1 shows afunctional blockdiagrarn ofthe M3000/4000. The key block is the
12-bit Digital to Analog Converter (DAC). The DAC converts digital data derived from host commands info the desired analog output. All of the other components provide
a
supporting role for proper operation
An 8-bit the host and the DAC. The microprocessor receives commands and data from the
host computer through a serial communications components are used to interface the microprocessor to either communications standards. Commands received by the microprocessor are thor­oughly checked for syntax and data errors. Valid commands are then processed to
complete the desired function. A wide variety the DAC, read status information, and to configure the module to fit the user’s
requirements. Responses to the host commands are then produced by the micropro-
cessor and transmitted back to the host over the RS-232/RS-485 serial link.
CMOS
13000/4000 Computerto Analog Output interfaces provide accurate
of
simple English ASCII character strings for ease of use.
protocol allows the units to be interfaced with dumb terminals and
of
the DAC.
microprocessor is
used
to provide an intelligent interface between
port.
Specialized communications
RS-232
of
commands are available to control
or
RS-485
An Electrically Erasable Programmable Read-only Memory (EEPROM)
retain important data even setup information such as the address, baud rate, and parity as well data.
In response to host commands, the microprocessor produces the appropriate digital
data necessary to control the DAC. Digital data is transmitted
opto-isolators
current that
output current is then processed and amplified by signal conditioning circuits to produce the desired output voltage orcurrent. Output protection circuits are included
which provide electrical isolation. The DAC produces a precise analog
is
directly proportional to the magnitude of the digital data. The DAC
if
the module is powered down. The EEPROM contains
to
the
is
used to
as
calibration
DAC
through
2-2
M3000/4000
to protect the module from potentially damaging output faults.
USERS MANUAL
M4000
to monitor the output signal. The converts the signal level to digital data. The digital data is optically isolated and may be read by the microprocessor. This circuitry allows the M4000 user to directly monitor the output signal and ensure its integrity.
The
the raw 1Oto30voltssupplied
It produces
232 units, the power supply produces
tions standard.
circuitry. The power supplied
input power and communications connections. The transformer along with the opto­isoIators provide
circuitry. The isolation barrier is extremely helpful in breaking ground loops and isolating troublesome common-mode voltages that are often found in large systems.
The isolation barrier also provides damage protection for the module and the host in cases where the output lines may accidently contact
The combination sor produces a very powerful system for the generation of process control signals. The power
multidrop capability, data formatting in engineering units, limit checking, digital calibration, and a host of other features not possible with unintelligent analog output systems.
models also feature asimple Analog to Digital Converter (ADC) which is used
ADC
input is tied directly to the analog output and
last
major block in the diagram is the power supply. The power supply converts
bytheuserintoregulatedvoltagesusedinthe
+5V
necessary
It
also produces
to
an
isolation barrier between the output section and the rest
of
an accurate high-resolution DAC and a dedicated rnicroproces-
of
the microprocessor is used
to
operate the microprocessor and
+I5
volts to power the
the DAC and output circuitry
+1
EEPROM.
OV
necessary for the RS-232 communica-
DAC
and associated output
is
transformer isolated from the
AC
power lines.
to
provide software addressing
module.
On
RS-
of
the
for
During normal operation, the microprocessor constantly updates the
rate
of
1000 times per second, even
this characteristic to provide controlled output
are created by incrementally stepping the precisely calculated by the microprocessor. The small output steps created at
millisecond intervals are used to approximate ramp outputs. Slope rates are programmable and may be changed at any time with simple commands. Linear ramps may be initialized with a single command from the host computer. intervention or monitoring
is
required from the host; the M4000 does the rest.
if
the output
is
stable.
slew
rates. Linear output ramp signals
DAC
every millisecond with values
The
DAC
M4000
data at
fully utilizes
No
further
a
Functional
Description
2-3
Chapter
3
Communications
Introduction
The
M3000/4000
all popular computers and terminals. are performed with printable processed with string functions common
BASIC.
ware drivers are necessary for operation. The modules can be connected to auto­answer modems for long-distance operation without the need for a supervisory computer. The
For computers that support
modules have been carefully designed to be easy
All
ASCII
communications
ASCII
format makes system debugging easy with a dumb terminal.
characters. This allows the information
to
most high-level languages such as
RS-232C,
no special machine language
to
and from the modules
to
interface
to
be
soft-
to
The MetraByte system
tions port with a single 4-wire cable. Up togetheron
ten, although a string host on a polling system; that
and must be interrogated by the host. A module can never initiate acommunications sequence. A simple command/response protocol must be
communications collisions and Communications
character
A
complete description of all commands is given in the Chapter
command/response sequence would
one
ASCII
cable;
to
command codes such
Command:
Response:
A
command/response sequence
The host may not initiate a new command until the command
collisions. A valid response can be in one of three forms:
is
complete. Failure to observe this rule will result in communications
1
)
a normal response indicated by a
2)
an error message indicated by a
3)
a
communications time-out error
allows
124
of
124
multiple modules
with repeaters. A practical limit for
units is possible. The modules communicate with the
is,
the
M3000/4000
$1
RD
*+00123.00
to
be connected to a communica-
to
32
RS-485
each module responds
data
errors.
modules
as
RD
look
like this:
is
not complete until a valid response is received.
' ? '
to
' * '
prompt
are
Read
prompt
modules may be strung
RS-232C
to
its own unique address
strictly
performed with two
Data
from the analog output.
response
units is about
observed to avoid
4. A
from a previous
or
three-
typical
When a module receives a valid command,
the desired function, and then communicate the response back to the host Each
it
must interpret the command, perform
3-2
M3000/4000
command has an associated delay time in which the module is busy calculating the
response. specified in Table
communications time-out it
error usually results when an improper command prompt or address is transmitted.
The table below lists the timeout specification for each command:
Mnemonic Timeout
DI,
HX,
ID
All other commands
If
the host does not receive a response in an appropriate amount
WE
USERS
3.1, a communications time-out error
MANUAL
is
assumed that no response data is forthcoming. This
3mS
130mS
35
mS
has
occurred. After the
of
time
Table The timeout specification
when the module starts to transmit a response.
Data
All MetraByte modules communicate in standard
This format provides one start bit, seven data bits, one panty bit and each character.
3.1
Response Timeout Specifications.
is
the turn-around time from the receipt
Format
of
a command to
NRZ
asynchronous data format.
one
stop bit for

RS-232C

RS-232C
between computing equipment.
to virtually all popular computers without any additional hardware. Although the
232C
MetraByte system allows for several modules to be connected network structure.The advantages offered by the
1)
2)
3)
4) compatible with dumb terminals
is the most widely used communications standard for information transfer
RS-232C
standard
widely used by all computing equipment
no additional interface hardware in most cases
separate transmit and receive lines ease debugging
is
designed to connect a single piece
versions
of
the
M3000/4000
of
equipment to a computer, the
RS-232C
standard are:
will interface
in
a
daisy-chain
RS-
However,
1)
2)
3)
4)
5)
6)
7)
Single
Figure Default Mode to enter the desired address, baud rate, and other setups (see Setups).
RS-232G
low
noise immunity
short usable distance
maximum baud rate
greater communications delay less re lia ble-daisy-c hai n connection
wiring host software must handle echo characters
is
Module
1.1
shows the connections necessaryto attach one moduleto a host. Use the
suffers from several disadvantages:
-
50
to
200
feet
-
19200
in
multiple-module systems
slightly more complex than
Connection
RS-485
Communications
3-3
The use line.
of
echo is not necessary when using a single module on the communications

Multi-party Connection

RS-232C
4000
single communications port. The wiring necessary to create the daisy-chain isshown in Figure the RECEIVE input of the next module in the daisy chain. This wiring sequence must be followed until the output of the last module in the chain is wired tathe Receive input
of
the host.
echo address to avoid communications collisions
characters transmitted by the host are received
passed
ofthe host. Inthis module. command, it will respond by transmitting the response on the daisy chain network. The response data will be ripple through any other modules in the chain until reaches its final destination, the Receive input
is
not designed to be used in a multiparty system; however the
modules can
3.1.
Notice that starting with the host, each TRANSMIT output is wired
All
all
received data (see Setups). Each module must be setup with its own unique
on to the next station until the information
If a module in the chain is correctly addressed and receives a valid
be
daisy-chained
modules in the chain must be setup
to
allow many modules
(see
by
is
mannerallthecommandsgiven
bythe host areexamined byevery
of
to
be connected to a
to
the same baud rate and must
Setups). In this network, any
each module in the chain and
echoed backto the Receive input
the host.
M3000/
to
it
3-4
M3000/4000
The daisy chain network must be carefully implemented to avoid the pitfalls inherent
in its structure. The daisy-chain
communications link will bring down the whole system. Several rules must be
observed to create a working chain:
1.
All
wiring connections must be secure; any break
power, ground or communications breaks the chain.
2.
All
modules must be plugged into their connectors.
3. All modules must be setup for the same baud rate.
4.
All
modules must
USERS
be
MANUAL
is
aseries-connected structure and any break in the
setup for echo.
in
the wiring,
Software
If
the
messages on its Receive input along with the responses from the module. This can
be
handled by software string functions
begins with
A
properly addressed
characters in the command including the terminating carriage return. Upon receiving the carriage return, the module will immediately calculate and transmit the response to the command. During this time, the module will not echo any characters that
appear on its receive input. However, if a character tation period, it will be stored in the module's internal receive buffer. This character
will be echoed after the response string is transmitted by the module. This situation
will occur
carriage return. In this case the linefeed character will be echoed after the response
string has been transmitted.
The daisy chain
in the chain receives a character the module's internal UART. This method
nications since the UART eliminates any slewing errors caused by the transmission
lines. However, this method creates adelay in propagating the character through the
chain. The delay is equal to the time necessary to retransmit one character using the
baud rate setup in the module:
Considerations
host
device is a computer,
a
' * '
or
' ? '
if
the host computer appends a linefeed character
also
affects the command timeout specifications. When a module
it
must be able to handle the echoed command
by
character and ends
M3000/4000
module in a daisy chain will echo all of the
it
is
echoed by retransmitting the characterthrough
observing that a module response always
with a carriage return.
is
received during this compu-
on
the command
is
used to provide more reliable comrnu-
Baud Rate Delay
300
600
1200
2400
4800
9600
19200
38400
33.30 m
16.70mS
8.33mS
4.17mS
2.08mS
1.04rnS
520pS
260pS
S
Communications
3-5
One delay time is accumulated for each module in the chain. For example, modules are used in a chain operating at 1200 baud, the accumulated delay time is
4
X
8.33
rnS
=
33.3
mS This time must
calculate the correct communications time-out error.
For modules with RS-232C outputs, the programmed communications delay speci-
fied in the setup data (see Chapter
(00)
followed by an idle line condition for one character time. This results in a delay
of two character periods. For longer delay times specified in the setup data, this sequence
an RS-232C daisy chain since each module in the chain adds one character communications delay.
Changing Baud
It
is possible to change the baud rate
must
1. Use the Setup
in the chain. Be careful not to generate a reset during this process. A reset can be
caused by the Remote Reset
2.
the Read Setup same baud rate.
is
repeated. Programmed communications delay
Rate
be
done carefully to avoid breaking the communications link.
(SU)
command
(RR)
Verify that all the modules in the chain contain the new baud rate setup using
(RS)
command. Every module in the chain must be setup for the
be
added to the times listed in Table 3.1 to
5)
is implemented by sending a
is
of
an RS-232Cdaisychain on-line. This process
to
change the baud rate setup
command or power interruptions.
NULL
seldom
on
necessary in
each module
if
four
character
of
3.
Remove power from all the modules for at least 10 seconds. Restore power
to the modules. This generates a power-up reset in each module and loads in the new
baud rate.
4.
Change the host baud rate
5.
Be sure to compensate for a different communications delay as a result
new baud rate.
Using A Daisy-Chain With A Dumb
A
dumb terminal can be used to communicate
terminal is connected
commands typed into the dumb terminal double characters when typing commands,
turn
off
the local echo. The daisy chain will provide the input command echo.
in
the same manner
to
the new value and check communications.
Terminal
to
a
daisy-chained system. The
as
a
computer used as a host. Any
will
be echoed by the daisy chain.
set
the terminal
to
full duplex mode or
To
of
the
avoid

RS-485

RS-485
rnultidropped systems that can communicate at high data rates over long distances. RS-485 is similar switching from 0 to mode voltages from
transmission over great distances.
is a recently developed communications standard
to
RS-422 in that it uses a balanced differential pair of wires
5Vto
communicate
-7V
to +12V without
data.
RS-485
RS-485 receivers can handle common
loss
of
data, making them ideal for
differs from RS-422 by using one
to
satisfy the need for
3-6
M3000/4000
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 MetraByte modules at 38400 baud
3)
communications distances up to
4)
true multidrop; modules are connected in parallel
5)
can disconnect modules without losing communications
6)
up
to
32 modules on one line;
7)
no communications delay due to multiple modules
8)
simplified wiring using standard telephone cable
USERS
MANUAL
10,000
124
with repeaters
feet.
RS-485 does have disadvantages.
support for this new standard. Interface boards are available for the IBM
compatibles and other
gains popularity. An MetraByte offers interface converters
These converters also include power supplies to power up To
expand an RS-485 system even further, repeater
MetraByte to string up to 124 modules on one communications
RS-485
Figure
that every module has a direct connection to the host system.
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
that the connector pins on each module are labelled with notations (B), (R),
(Y).
Multidrop
3.2
illustrates the wiring required for multiple-module
modules must be setup for no This designates the colors used on standard 4-wire telephone cable:
Label Color
(6)
GND
(R)
v+
(G)
DATA* Green
(Y)
DATA Yellow
RS-485
RS-485
System
system usually requires an interface.
Black Red
Very
few computers or terminals have built-in
PC
and
equipment will become available as the standard
to
convert RS-232C and RS-422 to
to
32
MetraByte modules.
boxes
are available from
RS-485.
port.
echo
to
avoid
RS-485
bus conflicts (see Setup).
system. Notice
Any
number
Also
note
(G),
and
of
This
color convention
cable is used, it guarantee correct installation.
DATA* on the label is the complement
is
is
used to simplify installation.
only necessary
to
If
standard 4-wire telephone
match the labeled pins with the wire color to
of
DATA (negative true).
Co
rnmunications
3-7
I
3-8
M3000/4000
USERS
MANUAL
To minimize unwanted reflections on the transmission line, the arranged as a line going from one module to the next. ‘Tree’
of the transmission line should be avoided. When using long transmission lines and/
or high baud rates, the data lines should be terminated at each end with resistors. Standard values of
During normal operation, there are periods of time where all 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 systems should incorporate resistors will maintain the data lines in a ‘mark‘ condition when all drivers are
MetraByte Special care must be taken with very long busses (greaterthan
error-free operation. Long busses must be terminated as described above. The use of twisted cable for the
Use
parity and checksums along with the
transmission errors. In situations where many modules are used on a long line,
voltage drops in the power leads becomes an important consideration. The wire is used both as a power connection and the common reference for the
transmission line receivers
as
acommon-mode voltage
of
-7V.
should be kept below
A1
000
series converter boxes have the
DATA
of common-mode voltage. For reliable operation, the common mode voltage
-5V.
180R
1K
in
the modules. Voltage drops in the
to
or
220Q
ohm bias resistors as shown in Figure
and
DATA*
the receivers. The receivers are rated for a maximum
are acceptable.
1
Ki2
lines will greatly enhance signal fidelity.
‘#
form
of
or
RS-485
resistors built-in.
all commands
bus
should be
random structures
200
ohm
drivers are
RS-485
3.2.
The
off.
1000
feet) to ensure
to
detect
GND
GND
leads appear
off
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
All
MetraByte modules with
units of communications delay after a command has been received (see Chapter 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
If
the host computertransmits acarriage return as a single character, the delay may
be set
to
zero to improve communications response time.
Delay
RS-485
outputs are setup at the factory to provide two
5).
in
garbled data.
Chapter
4
Command
The M3000/4000 modules operate with a simple command/response protocol to control host computer or terminal before the module will respond with useful data. A module can never initiate a communications sequence. A variety exploit the full functionality sample format
Command
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
response message from the module. A short response data necessary to complete the command. The second prompt character is the pound sign character
The prompt character must be followed by asingle 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
may be directed
the Setup (SU) command. Printable ASCII characters such as
(ASCII
all
module functions. A command must be transmitted to the module
of
commands exists
of
the
modules. A list
for
each command is listed in Table
of
available commands and a
4.1.
Structure
($)
is
used to generate a short
is
the minimum amount of
(#)
which generates long responses (will
to
the proper unit. Module addresses are assigned by the user with
$41) are the best choices for address characters.
be
covered later).
so
that commands
‘1
(ASCII $31) or
Set
by
the
to
‘A’
The address character is followed by a two or three-character command that
identifies the function to be performed by the module. are listed in Table
transmitted as upper-case characters. Atwo-characterchecksum may be appendedto any command message (except the
ID
command) as a user option. See ‘Checksum’ later in this chapter
All
commands must be terminated by a Carriage Return character
all
command examples in this text the Carriage Return
by the symbol
Data
Structure
Many commands require additional data values to complete the command definition
as shown in the example commands in Table these commands is described in
4.1
‘CR’.)
along with
a
short
full
function definition. Commands must
4.1.
in the complete command descriptions.
All
of the available commands
be
(ASCII
is
either implied or denoted
The particular data necessary for
$OD).
(In
4-2
M3000/4000
USERS
MANUAL
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
4000
sign, five digits, decimal point, and
series. Analog data is represented as a nine-character string consisting of a
two
additional digits. The string represents a
M3000/
decimal value in engineering units. Examples:
+I
2345.68
+00100.00
-00072.10
-00000.00
When using commands that require analog data character string must be used, even
this results Analog
in
a SYNTAX
data
responses from the module will always be transmitted in the nine-
ERROR.
if
some digits are not significant. Failure to do
as
an argument, the
full
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, in the M3151 0 to 20mA output module, the data is scaled in mitliamps. The full scale output is +00020.00mA. The
left
three digits have no significance. However,
the data format is always adhered to in order to maintain compatibility with other
module types. The maximum computational resolution
the resolution that may be represented by an analog datavariable. This may
round-off errors in some cases. For example, a limit value may
4000
module using the
Command:
Response:
‘HI’
command:
$1
Hl+l2345.67
t
of
the module is 16 bits, which is
be
stored in a
less
than
lead
M3000/
to
The limit value is read back with the Read Hlgh (RHI) command:
Command:
Response:
$1
RHI
*+12345.60
It appears that the data read backdoes not match the value that was originally saved. The error is caused by the fact that the value saved
resolution values saved in the module’s
of
the module. This type of round-off error only appears when large data
EEPROM
are read back. In most practical applications,
exceeds
the computational
the problem is non-existent. The Digital Input, Hex Output and Setup commands use hexadecimal representa-
tions
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 underthe heading of ‘Write Protected
Commands’. These commands are used to alter setup data in the module’s
Command Set
4-3
EEPROM.
All write-protected commands must be preceded by a Write Enable before the protected command may be executed.
MisceIlaneous
The address character must be transmitted immediately after the command prompt character. After the address character the module will ignore any character below ASCII
the command message for better readability if desired.
The length of acommand message is limited to addressed module receives a command message
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
Response
Response messages from the module begin with either an asterisk
or
a
question mark ment of a valid command. The messages are terminated with a
to acknowledge that the command has been executed commands send data information following the
all
commands may be found in the detailed command description.
They are write protected to guard against accidental
Protocol
$23
(except, of course,
Notes
CR).
This allows the use
20
printable characters.
of
CR,
the command
Structure
' ? '
(ASCII
will
be aborted and no response will result.
$3F)
prompt. The
'
?
'
prompt precedes an error message.
CR.
Many commands simpIy return
' * '
prompt indicates acknowledg-
' '
prompt. The response format
loss
of
spaces (ASCII
more than
20
by
the module. Other
of setup data.
(WE)
command
$20)
within
If
a properly
characters the
' '
(ASCII
All
a
' * '
$2A)
response
character
of
The maximum response message length
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:
I)
a normal response indicated by a
2)
an error message indicated by
3)
a communications time-out error
When a module receives avalid command, 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.
specified in Table
communications time-out
error usually results when an improper command prompt or address
Long
When the pound sign
form' response. This type
If
Form
the host
does
a communications time-out error has occurred. After the
3.1
Responses
'#I
not receive a response in an appropriate amount of time
it
is assumed that no response
command prompt
of
response will echo the command message, supply the
is
20 characters.
*
'
prompt
a
?
prompt
it
must interpret the command, perform
data
is
forthcoming. This
is
transmitted.
is
used, the module respondswith a'long
4-4
M3000/4000
USERS
MANUAL
necessary response data and will add a two-character checksum to the end message. Long form responses are used when the host wishes
command received by the module. The checksum is included to verify the integrity
of
the response data. The
For example:
Command:
Response: *+00072.10
Command:
Response: *1 RD+00072.1 OA4 (A4=c hec ksu m)
Checksum
Checksum
It
verifies that the message received is exactly the same as the message sent. The
checksum ensures the integrity
Command Checksum A
two-character checksum may
module as a user option. When a module interprets a command, extra characters and assumes that it is a checksum. the module will perform the command normally. present, the module calculates the checksum for the message. checksum does not agree with the transmitted checksum, the module responds with a
‘BAD
agree, the command is executed.
responds with
is
atwo character hexadecimal value appended to the
CHECKSUM’
‘SYNTAX
‘ # ‘
command prompt may be used with any command.
$1
RD
#I
RD
of
the information communicated.
be
appended to any command (except ‘ID’) to the
error message and the command is aborted.
If
the module receives a single extra character, it
ERROR’
and the command is aborted.
(short
(long
If
the checksum is not present,
If
the two extra characters are
form)
form)
to
end
of
a message.
it
looks
If
the calculated
If
the checksums
For
example:
of
the
verify the
for
the two
Command: Response: *+00072.10
Command: Response: *+00072.10
Command: Response: ?1
Command: Response: ?1
Response Checksums
If
the long form ’#‘version of acommand istransmitted to a module, achecksum will
be appended
Command:
Response: *+00072.10
Command:
Response: *1 RD+00072.1OA4
to
the end
$1
RD
$1
RDEB
$1
RDAB (incorrect checksum)
BAD
CHECKSUM
$1
RDE
SYNTAX
of
the response. For example:
$1
RD
#1
RD
ERROR
(no checksum)
(with checksum)
(one extra character)
(short form)
(long
(A4zchecksu
form)
m)
Command Set
4-5
Checksum
The checksum is calculated by summing the hexadecimal values characters in the message. The lowest order two hex digits
the checksum. These equivalents and appended to the message. This ensures that the checksum is in the form
of
Example: Append a checksum
Characters: ASCII hexvalues: 23 Sum (hexaddition) 23+
Thechecksum isE7 (hex).Appendthecharacters Eand7totheend ofthe message:
#I
HX07FFE7.
Example: Verify the checksum of a module response
Calculation
of
all
the
ASCII
of
the sum are used as
two
digits are then converted to their
printable characters.
to
the command
#
The checksum is the two characters preceding the Add the remaining character values:
*lRDi00072.10
2A+31+52+44+26+30+30+30+37+32+2E+31
1
31
31
+
H
48
48+
#I
X
58
58i
HX07FF
0
30 37
30+
7
37+
*1
RD+00072.1 OA4
CR:
ASCII
F
46 46+
A4
+30=2A4
character
F
46
1E7
46=
The two lowest-order hex digits c h ec ksu m
The transmitted checksum is the character string equivalent to the calculated 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
the c hecksu m calcu tat io n
Parity bits are never included in the checksurn calculation.
M3000/4000
Table 4.1 shows all the M3000/4000 commands. For each case, atypical command
and response acknowjedgment. For clarity, Table
commands that are common to both the write protected commands from commands that are not write protected.
Each
commands are listed in alphabetical order according to command nomenclature.
Commands that are exclusive to the M4000 are noted near the right hand margin. For example:
.
User
is
shown. Note that some commands only respond with an * as an
M3000/4000
to
provide Iinefeeds, the linefeed characters are
Commands
usercommand isdescribed indetail following Table 4.1.
of
the sum are
A4
which agrees with the transmitted
not
inctuded in
.
4.1
separates
M3000
and
M4000
M4000.
commands from the
Table
4.1
also separates
AIIof
the
Manual
Slope
(MS)
(M4000)
4-6
M3000/4000
USERS
MANUAL
Table
Command Definition
M3000/4000
ACK Acknowledge
A0
DI Digital Input HX Hex Output RAO Read Analog Output RD Read Data RHI Read High Limit
RID
RLO Read Low Limit RMS Read Manual RMX Read Maximum RMN Read Minimum RS Read Setup
RSU
WE Write Enable
The following HI High Limit
ID Identification
LO
RR
su
TM
TM
X
N
4.1
M3000/4000
Commands
Analog Output
Read Identification
Command
Slope
Read Setup
M3000/4000 commands are Write Protected
Low
Limit
Remote Reset $1 Setup $1 SU310701 CO Trim Maximum $1 TMX+00020.17 Trim Minimum $1 TMN+00000.95
Set
Typical Command Message
$1 ACK $1 A0+00020.00 $1 DI
HXOFFF
$1
$1
RAO
$1 RD
$1
RHI
$1 RID $1
RLO
$1
RMS
$1
RMX
$1
RMN
$1
RS
$1
RSU
$1
WE
$1
H1+00015.00
$1
IDBOILER
$1
LO+00004.00
RR
Typical Response Message
'0007
*+00017.50 'iOOO12.34
'+00020.00
*BOILER
*+ooooo.oo
'+00004.00
'+00020.00
~+00000.00
'31
070140
'31070140
M4000 Commands RAD Read Analog Data $1 RPS Read Present Slope $1 RPS
RSL
RSV
RW
The following M4000 commands are Write Protected
MS Manual Slope $1 MS+00001
MX
MN Minimum
SL
sv
TRX Trim Readback Maximum $lTRX
TR N Trim Readback Minimum $1TRN
WT Watchdog Timer
WSL Write Slope To EEPROM $1 wsL+00100.00
Read Slope $1
Read
Starting Value $1
Read Watchdog Timer
Maximum $1 MX+00100.00
Slope $1sL+oooo1 Starting Value
RAD
RSL
RSV
$1
RW
.OO
$1
MN-00025.00
.oo
$1SV+00004.00
$1wT+00010.00
'+00012.34 '+00001 *+00001 '+00005.00 '+00010.00
.oo .oo
Command Set
Acknowledge (ACK)
The ACKnowledge command is a hand-shaking command used in conjunction with the Analog Output (AO) command.
See the Analog Output (AO) command for examples
It
is
used to confirm the data sent
of
ACK usage.
to
a
4-7
module.
Command: $lACK Response:
Command: #IACK Response:
Analog
The Analog Output analog output, whether it different ways, depending on whether the either case the analog output is specified in the standard MetraByte data format:
If
the analog output is scaled in milliamps, this particular command will direct the
M3000
an analog output immediately after the command
module performs the output function and responds with
acknowledgement that the command has been executed. The
command data before the module will execute the command. The data is acknowl­edged
command sequence:
Output
Command: $lA0+00010.00 Response:
to
produce 10mA.
'#
form
by
the host with the ACKnowledge (ACK) command. Here is a typical
of
(AO)
the
*
*I
ACKPA
(AO)
command is the primary command used to control the
is
current or voltage. The
'$'
t
In
this example, the '$'command prompt is used
A0
command requires the host to verify and acknowledge the
or the
A0
command can function in two
'#
command prompt
is
received by the module. The
a
'*I
to
provide a simple
is
used. In
to
obtain
Command: #I A0+00010.00 Response: '1 A0+00010.0095
The host command is echoed back along with a checksum as is true with any command when used with the
performed the A0 command. by sending
received by the module and verify that the data
the command
and
perform the A0
At this point the A0 command will be performed by the module.
an
ACK
command. This allows the host to examine the command as
data
and the checksum are correct, it directs the module to go ahead
by
sending the ACK command.
Command: $1 ACK Response:
*
'#I
command prompt. At this point the module has not
It
is
waiting for
the
host to acknowledge the command
is
correct.
If
the host is satisfied that
To
complete the sequence:
4-8
M3000/4000
If
the host determines that the data is not correct, it may
sequence by sending any valid command to the module (except for the ACK
command
of
course). Example:
USERS
MANUAL
abort
the handshaking
Command: Response:
In
this case, the host examines the response data and determines that a communi-
cations error must have occurred since the response data does not match the command data.
A0
command:
Command: Response:
This time the host verifies that the data complete
Only
The
module
ERROR (RMN)
sequence that may be generated with a M3252 0-20mA module:
the
Command: Response:
at this point will a change occur on the analog output.
output data specified in the A0 command must lie within the input range
or
message. The input range may
and Read Maximum (RMX) commands. This is atypical cornmand/response
The
task:
else the command is aborted and the module will respond with a LIMIT
#I A0+00010.00
*I
A0+00030.0097
command sequence may be aborted by simply sending a
#I
A0+00010.00
*I
A0+00010.0095
is
correct and commands the module to
$1 ACK
*
be
checked
using
the Read MiNimum
new
of
the
Command: Response:
Command: Response:
Command:
Response:
Command:
Response:
The data in the
by
the
LO
and
ERROR. Any
MANUAL MODE error may
(See
of
the Manual Modes has priority over the A0 command, and in some cases a
A0
HI
commands. Exceeding the user-defined limits will generate a LIMIT
LO
$1
*+ooooo.oo
$1
*+00020.00
$1 ?I
$1
*
command is also checked against user-defined limits specified
and
lit
commands).
RMN
(this
is
the lower range limit)
RMX
(this
is
the upper range
A0+00025.00
LIMIT
A0+00015.00
be
ERROR
generated. See Manual Mode section for details.
(the
input
exceeded)
(data is within range)
range
has
limit)
been
Command Set
4-9
Digital Input
The
DI
command reads the status of the digital inputs and the status of the analog
output. The response to the D1 command is four hex characters representing two bytes
contains the digital input
of
Command:
Response: Command:
Response:
The first response byte gives the status of the analog output on cont rolled-rate out puts
00
01
The second byte displays the hex value of the digital input data.
Digital Inputs D12 DIl/UP* D I O/D Data Bits 2
All
other bits read back
(DI)
data. The first byte contains the analog output status. The second byte
data.
$1
DI
*0003
#I
DI
*I
D10003AB
:
The output is steady-state.
Indicates the output is still slewing
1
as
'0'
M4000
0
N
*
units with
For example: A typical response from a response indicates that the output is still slewing and
The
DI
command
Modes
When reading digital inputs with a checksum, be sure with the data.
Hex
The Hex Output (HX) command controls the analog output data directly
bit DAC with inputs ranging from
command uses this data to control the
is
in effect.
Output (HX)
Command:
Response:
Command:
Response:
This command will set the DAC for future enhancements.
will
return the state of the digital inputs even
to
the Digital to Analog Converter (DAC). The
$0000
$1
HX07FF
*
#1
HX07FF
*I
HX07FFEE
to
half scale. The leading zero is included to allow
$1
DI
(-
full scale) to
DAC:
command could be:
all
digital inputs are
not
$OFFF
*0107.
if
one of the Manual
to confuse the checksum
by
sending hexadecimal
M3000/4000
(+full scale) . The
uses a
=
This
1.
12-
HX
The HXcommand controls the DAC directly without checking limits, scaling, ortrims.
It
is used by
situations where the absolute output value is relatively unimportant. The primary
the
factory for test purposes. However,
it
may be used
in
control
4-10
M3000/4000
USERS
MANUAL
attribute of the HXcommand is speed, since necessary for the A0 command.
High
The Hlgh Limit (HI) command sets a maximum limit to the analog output data. The
data specified by the
to the data specified
data exceeds the a LIMIT
millivolts, or other units). Output
Limit
In each
(HI)
HI
command is stored in nonvolatile memory and it iscompared
by
any subsequent Analog Output (AO) commands.
HI
limit, the A0 command is aborted and the module will generate
ERROR
Command: Response
Command: Response:
of
the two command examples, the HI limit has been set to
(AO)
Command: Response:
message.
$1
H1+00015.O0
:
#1
H1+00015.00
*1
H1+00015.0098
If
an attempt is made to exceed this limit with an Analog
command, a LIMIT
$1
A0+00016.00
?I
LIMIT
ERROR
ERROR
it
is
not encumbered by the computation
If
the
A0
15
(milliamps,
will result and the AOcommand is aborted.
The
HI
command and its complement, the LOW Limit
range command. This is useful in applications where unrestricted outputs may cause damage or improper operation of other equipment or processes.
The HI limit may be effectively disabled by setting it to it’s highest value:
The HI data may be read back with the Read HI The
command. The HI limit will not restrict outputs produced by the Hex Output
the Manual Mode inputs.
In M4000 applications,the
Maximum changed to an appropriate value.
I
Dent if icat i on (ID)
The IDentification (ID) command allows the user
nonvolatile memory which may be read back at a later time with the Read
IDentification no other
of
analog outputs that may be obtained with the Analog Output
Command: Response:
HI
command is write protected and must be preceded with a Write Enable
(MX)
affect
commands.
(RID)
on
module operation. Any message up
$1
H1+99999.99
HI
command.
(RHI)
data
is
not affected by the MiNimum (MN) and
If
the input range is rescaled, the HI data must be
It
serves only
as
a
(LO)
command restrict the
command.
to
write a message into
convenience
to
16
characters
(HX)
command or
to
the user and has
long
may be
(AO)
(WE)
the
Command Set
stored in memory. Useful information such as the module location, calibration data, or model number may be stored for later retrieval.
Message examples:
4-11
Command: Response:
Command: Response:
Command:
Response: Command:
$1
IDBOILER
*
#1
IDBOILER
*I
IDBOILER
$1
ID
12/3/88
*
$1
ID
3251
ROOM
ROOM
ROOM02
Response:
The ID command is write-protected.
Caution:
longer than
LOW
The LOW Limit (LO) command sets a minimum limit data specified by the
compared
If
the
will generate a LIMIT
Command checksums are not supported by the
16
characters will abort the command.
Limit (LO)
LO
A0
data is
command
to
the data specified by any subsequent Analog Output (AO) commands.
less
than the
ERROR
LO
limit, the A0 command is aborted and the module
message.
is
stored in nonvolatile memory and it is
(module location)
(module location)
(calibration date)
(model number)
ID
command. Messages
to
the analog output data. The
Command:
Response:
Command: Response:
In each millivolts, or other units). Output
of
the two command examples, the LO limit has been set to 4 (milliamps,
(AO)
command, a LIMIT
Command:
Response: ?1 LIMIT
The LO command and its complement, the Hlgh Limit
range
command. This damage or improper operation
The
of
analog outputs
is
LO
limit may be effectively disabled by setting it to it’s lowest value:
Command:
Response:
The
LO
data may be read back
$1
LO+OOOO4.OU
*
#1
L0+00004.00
*1
LO+00004.00A3
If
an attempt is made to exceed this limit with an Analog
ERROR
$1
A0+00002.00
ERROR
that
may
useful in applications where unrestricted outputs may cause
of
other equipment
$1
LO-99999.99
*
with
will result and the AOcommand is aborted.
be
obtained with the Analog Output (AO)
or
processes.
the Read
LO
(RLO)
(HI)
command restrict the
command.
4-12
M3000/4000
USERS
MANUAL
The Locommand command.
The
LO
limit
the Manual Mode inputs.
In M4000 applications, the LO data is not affected by the MiNimum
Maximum (MX) scaling commands. be changed to an appropriate value.
Manual Slope
The Manual Slope the
UP*
and
Command:
Response: Command:
Response:
These command examples set the manual slew rate The manual slope value only controls the output slew rate when using the manual
UP*
and
DN*
are controlled with slew rates specified commands. Therefore, manual and computer-controlled outputs have separate
slew rate controls.
is
write-protected and must be preceded with a Write Enable (WE)
will not restrict outputs produced by the Hex Output (HX) command or
If
the input range is rescaled, the LOdata must
(MS)
(MS)
command sets the output slew rate for manual control using
DN*
(down) input pins. The slope data
$1
MS+00004.OO
is
scaled in either mNS or
(MN)
or
o
V/S:
*
#I
MS+00004.00
*I
MS+00004.00A8
to
4mNS or 4V/S.
inputs. Output changes caused by the Analog Output (AO) command
by
the SLope
(SL)
or Write SLope (WSL)
The manual slope value may
co
m
m and.
The
MS
command is write-protected.
Maximum Minimum (MN)
The Maximum (MX) and MiNimum (MN) commands are used
ranges application.
(MX)
of
M4000
Command: Response:
Command: Response:
Command: Response:
Command: Response:
modules
$1
*
#1
*1
$1
*
#1
*1
be
read back with the Read Manual Slope (RMS)
to units
MX+00020.00
MX+00020.00
MX+00020.00AB
MN+00000.00
MN+00000.00
MN+00000.009F
that
may be more appropriate
m rn
to
rescale the input
to
a
particular
Command Set
The MiNimum (MN) command assigns an input data value corresponding to the -full
scale analog output value.
The Maximum (MX) command assignsan input datavaluecorresponding to the+full
scale
analog output value.
4-13
The MN and MX commands are covered thoroughly in chapter The MN and MXvalues
the Read MiNirnum (RMN) and Read Maximum (RMX) commands. The MN and MX commands are write-protected.
Read Analog Data (RAD)
All M4000 modules contain
used to directly monitorthe analog output signal. The ADC data is obtained with the Read Analog Data (RAD) command. The data is scaled
with the Analog Output command provides a check to assure the user
and no output fault conditions exist. Referto the M4000 section for more information.
Command: $1
Response: *+00012.30
Command: #1 RAD Response: *1 RAD+00012.30El
Read Analog
The Read Analog Output (RAO) command
most recent Analog Output (AO) command. It is particularly useful when the M4000 is used with very
of
the analog output.
Output
low
are
saved
in
nonvolatile memory and may be read back with
an
Analog-to-Digital Converter (ADC) which may be
in
(AO)
command. The ADC data obtained with the
that
the module
RAD
(RAO)
is
used
to
read backthe data sent by
output slope values. The RAO gives the eventual final output
10.
the same units
is
working properly
rn
as
used
RAD
the
The RAOsimplyreads backtheargumentofthe most recent AOcommandanddoes
not necessarily correlate with the actual analog output. See the
Command: Response: *+00017.50
Command: Response
Read Data
The Read Data (RD) command reads back the digital data being sent the time the RD command is performed. It
(RD)
:
$1
RAO
#1
RAO
*1 RA0+00017.50F3
is
used to obtain the status
RD
command.
to
of
the DAC
the output
at
4-14
signal at any time. The data obtained is scaled in the same units as used with the Analog Output
M3000/4000
(AO)
USERS
command.
MANUAL
Command:
Response:
Command:
Response:
The
RD
command
changed with the Manual Mode inputs or with the controlled output slew rates that
may be obtained Since the RD command
short form of the command addressed without a command, the RD command
in
Command:
Response
:
Command:
Response:
Note that the currently sending to the DAC. It provides no guarantee that the analog output signal is being generated properly and that no output fault conditions exist. However, for a module that has been installed and verified for proper operation, the is a reliable indicator
RD
$1
RD
*+00010.00
#1
RD
*1
RD+00010.009B
will
read back instantaneous DAC data even
M4000
command returns the digital
of
units.
is
the primary means
is
available for faster response.
$1
*+00012.34
#1
*1
RD+00010.003B
the output signal.
of
monitoring output data, a special
is
assumed by default:
data
if
the output is being
If
a
M3000/4000
that the microprocessor
RD
unit is
command
is
Read
The Read Hlgh Limit nonvolatile memory. The
Read IDentification
The Read IDentification
IDentification (ID) command. The convenience to the
In
previously stored by the ID command. See ID command.
Hlgh
this case the RID command has read back the message
Limit
(RHI)
Command: Response:
Command: Response:
Command: Response:
Command: Response:
(RHI)
command reads back the
HI
limit may be changed
$1
RHI
by
HI
the
*+00020.00
#I
RHI
*I
RH1+00020.00E9
(RID)
(RID)
user
to store information in the module’s nonvolatile memory.
$1
*BOILER
#I
‘1
command reads out
ID
RID
ROOM
RID
RIDBOILER
and
RID
ROOM54
the
commands are included as
Limit value stored
HI
command.
user data stored by the
in
the
a
(example)
(exam p I e)
“BOILER
ROOM”
Command Set
4-15
Read
The Read LOW limit (RLO) command reads back
nonvolatile memory. The LO limit may be changed by the
Read Manual Slope
The Read Manual Slope (RMS) command is used to read back the slope constant used in manual mode. This slope constant
output scaling is in units of
M4000 units, the Manual Slope value may be modified
LOW
Limit (RLO)
Command: $1 Response:
Command: #1 Response: '1
is
controlled using the Up and
Command: $1 Response:
Command: #1 RMS Response: *1 RMS+00004.00FA
RLO
*+00004.00
RLO
RL0+00004.00F5
(RMS)
mA/S
or
V/S
RMS
*+ooo04.00
Down
for current and voltage outputs respectively. In
the
LO
limit data stored in the
LO
command.
is
implemented only when the analog
pins on the terminal connector. The
by
the
MS
command.
Read Maximum (RMX)
The Read Maximum
+
full scale
MX command (M4000 only).
Read
The Read MiNimum (RMN) command reads out the scaling data corresponding to
-
full scale at the analog output. The MiNimum
command
at
the analog output. The Maximum data
Command:
Response:
Command:
Response:
MiNimum
(M4000
Command: $1 RMN Response:
Command: Response: *1 RMN+OOOOO.OOF1
(RMX)
(RMN)
only).
command reads out the scaling datacorresponding
may
be changed
$1
RMX
**00020.00
#1
RMX
*l
RMX+00020.00FD
data
may
be
changed with the MN
*+00000.00
#1
RMN
by
using the
to
Read Present Slope (RPS)
The Read Present Slope active in M4000 modules. The slope data is scaled in either mA/S or
(RPS)
reads back the output
slope
rate value currently
m
volts/S,
4-1
6
M3000/4000
depending on the output type:
USERS
MANUAL
Command:
Response:
Command:
Response:
The response data returned by these present slope rate is either
rate stored in EEPROM. See
Read Setup
The Read Setup
module's nonvolatile memory with the Setup
RSU
command is four bytes of information formatted
The response contains the module's channel address, baud rate and other parame-
ters. Refer to the setup command
setup information. When reading the setup with achecksum, be sure not to confuse the checksum with
the setup information.
(RS
or
(RSU)
Command:
Response:
$1
RPS
*+00010.00 #I
RPS
*1 RPS+OOOlO.OOFA
two
example commands indicates that the
1
OV/S
or
1
OmA/S.
M4000
RSU)
command reads back the setup information loaded into the
section for details.
(SU),
$1
RSU
*310701
CO
The present slope may differfrom the
(SU)
command. The response to the
and Chapter
as
eight hex characters.
5
for
a
list
of
parameters in the
Command:
Response:
The Read Setup
compatible with the MetraByte
(RS)
Command:
Response:
Command: Response:
#1
RSU
*1 RSU310701
command performs the same function, and is included to be
MI
$1
RS
*310701 #1
RS
*I
RS310701
CO
COF4
000/2000
CO9F
series.
Read SLope (RSL)
The Read SLope
in EEPROM. The slope data output.
Command: Response:
Command: Response:
The data returned by these two command examples indicate that the slew rate stored
in
EEPROM
(RSL)
is
either 1 OV/S.
command reads back the output slew rate constant stored
is
scaled in
$1
RSL
'*00010.00
#I
RSL
'1
RSL+0001
or 1 OmNS.
V/S
O.OOF6
This
or mA/S. depending on the type of
rate
is
not necessarily the rate currently
Command Set
4-17
used by the analog output. See
Read Starting
The Read Starting Value command reads the value of the desired start-up analog output which has been programmed
Command:
Response
Command:
Response:
Read Watchdog Timer
The Read Watchdog Timer activate the watchdog timer. The data
Command:
Response:
Command: Response:
In each of the two example commands, the response data indicates that the watchdog timer period is Watchdog Timer tion.
Value
:
(WT)
(RSV)
$1
RSV
*+00005.00
#I
RSV
*I
RSV+00005.0004
(RWT)
$1
RWT
*+00010*00
#1
RWT
*I
RWT+00010.0002
10
command. See
M4000
(RWT)
minutes. The watchdog timer value may be
section.
by
the user.
command reads the time interval necessary to
is
scaled in minutes.
(10
minutes)
(10
minutes)
M4000
section for watchdog timer informa-
set
m
rn
with
the
Remote Reset
The Remote Reset
module’s microcomputer. This may be necessary
is disrupted
Command:
(RR)
(RR)
command allows the host
by
static or other electrical disturbances.
$1
RR
to
perform a program reset on the
if
the module’s internal program
Response: Command:
Response
The
RR
command will halt any analog output
The
RR
command is write-protected.
The
RR
command
Setup
Each module contains an EEPROM (Electrically Erasable Programmable Read Only Memory) which is used
baud rate, parity, etc. The EEPROM information even
replace the usual array equipment.
(SU)
:
if
#1
RR
*I
RRFF
to
it‘s
is
required for a baud rate change.
to
store module setup information such
is
a
special type
power
is
removed from the module. The EEPROM
of
DIP
switches normally used
present value.
of
memory that will retain
to
configure electronic
as
address,
is
used to
4-18
M300014000
USERS MANUAL
The Setup command the EEPROM
so
important
been devoted to its description. See Chapter
The SU command requires an argument of eight hexadecimal digits to describe four
bytes
SLope
The SLope performed
VIS
of
Command: $lSU31070182
Response:
Command: #lSU31070182
Response:
(SL)
or
mAIS:
to
to
the proper operation
setup information:
(SL)
by
the Analog Output (AO) command. The slope data
Command:
Response:
Command:
Response:
is
used to modify the user-specified parameters contained in
tailor the module to your application. Since the Setup command is
of a module, a whole section
5.
of
this manual has
*
*1
SU3107018299
command
is
used to
$1SL+00100.00
#I
sL+00100.00
'1
SL+OOl
set
OO.OOA4
the output slew rate for analog outputs
is
scaled in either
These two sample commands will set the output
slope
rate to
100
V/S
or
100
mA/
S.
The SLope is not stored in EEPROM. The SLcommand is not write protected. The SLcommand
is used in applications where frequent changes in the output slope rate is desired. See
M4000
Starting
The Starting Value (SV) command is used value when the unit is powered up.
programmed value with
Each of the two example commands sets the starting value to
is
stored in EEPROM. When the M4000 unit is powered up, it automatically petforms
an
internal Analog Output (AO) command with the stored data.
would have resulted in an error (LIMIT
command
(SL)
command dataissavedonlyin Random Access Memory (RAM) and
section
Value
(SV)
for
further details.
the
Command: $1
Response:
Command:
Response:
is
aborted and the M4000
t
#I
*I
The
slew
rate
stored in EEPROM.
SV+00005.00
SV+00005.00
SV+OOOOS.OOB2
ERROR,
will
start up at - Full Scale. The scaling of
m
to
program the desired analog output
output will automatically go to the
+00005.00.
If
the
MANUAL MODE) the start-up
This value
A0
command
the
Command Set
4-1
9
start-updataisdetermined bythe input scaling range fixed
Maximum (MX) limits.
The Starting Value is the ‘safe’ output value used when the watchdog timertimes out.
See
M4000 section.
The SV command is write-protected.
Trim Maximum (TMX) Trim MiNimum (TMN)
The
TMX
and
TMN
commands are used to calibrate the analog output circuitry
module. These commands are used to communicate actual measured output
to the modules
Command: $1 TMN+00000.12 Response:
Command: Response: ‘1 TMX+00019.9818
Referto the Calibration section for details on output trims and the use of the TMN and
TMX commands.
Caution:
calibration of the unit. These commands must be used with acalibrated voltmeter
ammeter to assure output accuracy.
so
that a trim calculation may be performed:
*
#I
TMX+00019.98
Unwarranted use of the TMN and TMX commands will destroy the
by
the MiNimum (MN) and
of
data
the
or
Trim Readback Maximum Trim Readback MiNimum (TRN)
The
TRX
and TRN commands are used Digital Converter (ADC) which provides the analog readback Refer to the Calibration section.
Command: $ITRN Response
Command: #ITRN
Response
Watchdog Timer
The Watchdog Timer time-out value of the watchdog timer. The time data
Command: $1 WT+O0010.00 Response:
Command: Response:
These two command examples set the watchdog time value to example, if the module does not receive avalid command for a period of
:
:
(WT)
(WT)
(TRX)
on
M4000 modules to trim the Analog-to-
*I TRN4F
command stores adatavalue in
*
#I
WT+#0010.00
*I
WT+OOO10.00BO
is
scaled
of
the output signal.
EEPROM
in
minutes:
10
minutes. In this
specifying the
m m
m
10
minutes,
4-20
M3000/4000
USERS
MANUAL
the analog output will automatically be forced to the Starting Value. See
section. The watchdog timer may be disabled by setting the timer value to
WT
command data
The WT command is write protected.
Write Enable
The Write Enable (WE) command must precedecommands that are write-protected. This
is
to guard against accidentally writing over valuable data
change any write protected parameter, the WE command must precede the write-
protected command. The response to the WEcommand is an asteriskindicating that
the module is ready to accept a write-protected command. After the write-protected command
disabled. Each write-protected command must be preceded individually with a WE command. For example:
is
successfully completed, the module becomes automatically write
Command: Response:
Command: #1 WE
Response:
(WE)
less
than
$1
WE
*
*1
WER
0.16
minutes will result in a VALUE ERROR.
+99999.99.
in
EEPROM. To
M4000
If
a module message other than WRITE PROTECTED, the module will remain write enabled until acommand is successfully completed resulting in an
userto correct the command errorwithout having
Write
The Write SLope (WSL) command
outputs performed by the Analog Output in either V/S or mA/S:
These two sample commands will set the output slope rate to The Write SLope
(RAM) and in nonvolatile EEPROM.
The
SLope
WSL
is
write enabled and the execution of a command results in an error
To
EEPROM
Command: Response:
Command:
Response:
(WSL)
command is write protected.
$1
WSL+OO100.00
#1
wsL+00100.00
*1 WSL+OOlOO.OOFB
command stores the rate data in Random Access Memory
to
execute another WE command.
is
used to set the output
(AO)
command. The slope data is scaled
'*'
prompt. This allows the
M
slew
rate for analog
1
OOV/S
or 1 OOmNS.

ERROR MESSAGES

All
modules feature extensive errorchecking on input commands to avoid erroneous operation. Any errors detected will result in an error message and be aborted.
the
command will
Command Set
All
error messages begin with
error description. The error messages have the same format for either the ' $ ' or
#
'
prompts. For example:
?1
SYNTAX
There are nine error messages, and each error message begins with a different character. Host computer software can identify an error by the first character; it is not
necessary to read the whole string.
ERROR
"?",
followed by the channel address, a space and
4-21
'
ADDRESS
There are four CR
($OD),
is made attempt to load an address greater than
BAD CHECKSUM
This error is caused by an incorrect checksum included in the command string. The
module recognizes any two hex characters appended to a command string as a checksum. Usually communications line. Often, repeating the command solves the problem. persists, either the checksum communications channel. More reliable transmissions might be obtained by using a
lower baud rate.
COMMAND
This error occurs when acommand
results when the command is sent with lower-case letters. u ppe r-case.
ERROR
$
($24),
to
load
ASCII
ERROR
values that are illegal
and
#
($23).
an illegal address into a module with the Setup
a
BAD
The
ADDRESS
CHECKSUM error is due to noise or interference on
is
calculated incorrectly or there is a problem with the
is
for
use as a module address: NULL
ERROR will occurwhen an attempt
$7F
will also produce an error.
not recognized by the module. Often this error
(SU)
command.
If
the error
All
valid commands are
($OO),
An
the
LIMIT
A
MANUAL MODE
This error may occur when using the Analog Output commands while the output is being controlled by either
or
generated commands.
ERROR
LIMIT
the Controller Input Manual Mode. The Manual Modes have priority overthe host-
ERROR
a) the
(MN)
b)
the (HI)
c) the output is inhibited by a limit switch (see Manual Modes)
may occur when using the Analog Output
A0
data exceeds the input span range defined by the MiNirnum
and Maximum (MX) values
A0
data exceeds a limit set by the LOW Limit (LO) or Hlgh Limit
commands
(AO)
command
(AO)
or Hex Output (HX)
the
Up/Down Manual Mode
if:
4-22
M3000/4000
USERS MANUAL
PARITY
A parity errorcan only occur
a parity error results from a bit error caused by interference on the communications line. Random parity errors are usually overcome
If
too many errors occur, the communications channel may have to be improved
a slower baud rate may be used.
Aconsistent parity errorwill result
In this situation, the easiest solution may be to change the parity in the host to obtain
communication. At this point the parity in the module may be changed to the desired value with the Setup
The parity may be changed
SYNTAX
A SYNTAX caused by having
or in the wrong place. Table
VALUE ERROR
This error results when an incorrect character values can only contain decimal digits
Hex Output (HX) commands can range
ERROR
ERROR
ERROR
if
the module
if
the host parity does not match the module parity.
(SU)
command.
or
turned
will result if the structure
too
few or
too
4.1
off
many characters, signs or decimal points missing lists the correct syntax for all commands.
0-9.
is
setup with parity on
by
simply repeating the command.
by using Default Mode.
of
the command is not correct. This
is
used
as
Hex values used in the Setup (SU) and
from
O-F.
(see
Setup). Usually
a
numerical value. Data
or
is
AVALUE ERRORwilI begeneratedbyaM4000 command
A VALUE ERROR is generated by made to calibrate a module beyond the allowed trim range.
WRITE
All commands that write data into nonvolatile memory
accidental erasures. These commands must be preceded with a Write Enable (WE)
command or else a WRITE PROTECTED error
is
attempted while the output is slewing.
TMN
PROTECTED
and TMX commands when an attempt is
moduleifaTMN,TMX,TRN,orTRX
are
write-protected to prevent
will
result.
Chapter
5
Setup
The MetraByte modules feature a wide choice of user configurable options which gives them the flexibility
system. The user options include a choice
other parameters. The particular choice of options for a module is referred to
setup information. The setup information is loaded into the module using the Setup
SU
command stores 4 bytes contained down indefinitely
memory is implemented with
The
EEPROM
for
option selection. The module never has to be opened because all of the options are selected through the communications port. This allows the setup to be changed at any time even though the module may be located thousands of feet away from the
host computer or terminal. The setup information stored in a module
back at any time using the Read Setup command
in
the module. Once the information is stored, the module can
(1
0
has many advantages over
to
operate on virtually any computer or terminal based
(32
bits) of setup information into a nonvolatile memory
years minimum) without losing the setup data. The nonvolatile
EEPROM
Information/SetUp
of
baud rate, parity, address, and many
(SU)
so
there are no batteries to replace. DIP
switches or jumpers normally used
(RS).
Command
as
the
command. The
be
powered
may
be read
The following options can be specified by the Setup command: Channel address
Linefeeds Parity (odd, even, none)
Baud rate
Echo Communication delay Number Limits enable/disable Continuous Input enable/disable (M4000) Manual Mode enable/disable Manual Up/Down Inputs Controller Inputs Limit Switches: Normally Open/Normally Closed
Each
all
options, refer
(300
of
displayed digits
of
these options will be described in detail below. For a quick look-up chart on
(1
to
38,400)
to
Tables
24
values)
(0-6
characters)
5.1-4.
5-2
M3000/4000
USERS
MANUAL
Command
The general format for the Setup
$lSU[bytel][byte 2][byte 3][byte
A typical Setup command would
Notice that each byte is represented by its two-character example, byte 1 is described by the ASCII characters binary
hex (0-F) characters. Any deviation from this format will result in aSYNTAX Appendix A contains a convenient hex-to-binary conversion chart.
Forthe purposesof describing the SetUpcommand, ‘bit 7’ refers to the highest-order bit of a byte of data. ’Bit
The SU command is write protected to guard against erroneous changes in the setup data; therefore each SU command must be preceded by a Write Enable (WE)
command. To abort an SU command in progress, simply send a non-hex character (an
‘X’
Caution:
result in changing communications parameters (address, baud rate, parity) which will result in cases the user may have to resort
The recommended procedure examine the existing setup data before proceeding with the SU command.
Syntax
(SU)
command is:
41
look
like:
001 1 0001
’bit number’: binary data:
for
example) to generate a SYNTAX
Care must be exercised in using the
a
(31 hex). The operand
0’
refers to lowest-order bit:
7
6
5 4
0
0
1
1
loss
of
communications between the host and the module. In some
is
3210
0 0
to
using Default
to first use the Read Setup
$1
SU31070180.
of
a
SU
command must contain exactly
0
1
ERROR,
SU
Mode
ASCII
‘31’
which is the equivalent of
=$31
(hex)
and try again.
command. Improper use may
to restore the proper setups.
equivalent. In this
ERROR.
(RS)
command to to
8
Byte
1
Byte 1 contains the module (channel) address. The address code for the string character used to address the module. In our example command
$?SU31070180
sample command
‘1
’,
which in this particularcase remains unchanged. To change the module address
to
‘2’
,
byte
character command is sent, the module address
The module will no longer respond to address When using the
the new address in a place that is easily retrievable. The only way with a module with an unknown address is with the Default Mode.
The most significant bit of byte 1 (bit ASCII codes that are illegal for use as an address. These codes are
‘2’.
,
the first byte
is
sent
to
1
of
the Setup command becomes
Now the command will
SU
command to change the address
‘31’
is
a
module, the EEPROM will be loaded with the address
7)
the
ASCII
‘32’,
look
like this: $lSU32070180. When this
is
changed from
‘1’.
must be set
code for the character
which
of
to
‘0’.
is
stored as the ASCII
‘1’.
If
is
the
ASCII
‘1’
to
‘2’.
a
module,
In addition, there are four
code for the
be
sure to record
to
communicate
$00,
$OD,
our
$24,
Setup lnformation/SetUp Command
$23
which are ASCII codes for the characters
for an address will cause an
unchanged. This leaves a totaI
the SU command. It
characters be used dumb terminal. Refer to Appendix A for a list
printable
ASCII
codes that may be used as addresses.
is
($21
ADDRESS
of
124
highly recommended that only ASCII codes for printable
to
$7E)
which greatly simplifies system debugging with a
ERROR
possible addresses that can
NUL,
CR,
$,
and
and the setup data will remain
of
ASCII codes. Table
#.
Using these codes
be
loaded with
5.1
lists the
5-3
Table
5.1 Byte 1 ASCII HEX
21
22
25
26
27
28
29 2A
2B 2c
2D
ASCII
L6
Yo
'
1
*
-
2E
2F
30 31 32
33
34 355
36 37 7
38 39
I
3 4
!
&
(
+
Y
.
0
1
2
6
8 9
HEX
3A
38
3c 3D
3E
3F
40
41 A
42 43
44
45 E
46
47 48 H
49
4A
4B
4c
4D
4E
4F 50
ASCII
:
;
<
=
>
?
@
B
c
D
F
G
I
J
K
L
M N
0
P
Printable Characters.
HEX
51
52
53
54
55
56
57 58
59
5A 5B
5c 5D
5E
5F 60
61
62
63
64 65
66
67
ASCII
Q
R
s
T
u
V
w
X
Y Z
\
1
A
-
'
a
b
c
d
e
f
g
HEX
68
69
6A
6B
6C
6D
6E 6F
70
71
72 73
74 75 76 77
78
79 7A
7B
7c
7D
7E
ASCII
h
i
j
k
I
m
n
o P
9
r
s
t
u
v
w
x
Y
z
{
I
1
-
5-4
M3000/4000
Byte
2
Byte 2 is used
channel; linefeeds, parity,
Linefeeds
The most significant bit This option can be useful when using the modulewith adumb terminal. from the modules are terminated with a carriage return will generate a automatic linefeed when a carriage return is detected. However, for terminals that do not have this capability, the modules can generate the linefeed
desired. By setting after each response.
USERS
to
configure some of the characteristics
bit
of
byte 2 (bit
7
to
‘1
If
bit
MANUAL
and
baud rate.
7)
controls linefeed generation by the module.
’the module will send a linefeed
7
is
cleared
(0),
no linefeeds are transmitted.
of
(ASCII
(ASCII
the communications
All
responses
$OD).
Most terminals
if
$OA)
before and
When using the
ch ecksu
Parity
Bits
off.
characters transmitted by the module is set to
If
bit
output by the module is calculated as specified by bit
If
bit
If
a parity error
message. This is usually caused by noise
If
parity setup values are changed with the command will be transmitted with the old panty setup. The new parity setup becomes effective immediately after the response message from the
Baud
Bits eight values between
5
and
If
bit 5 is
5
is
6
is
Rate
0-2
rn
‘l’,
‘O’,
specify
‘#I
command prompt, the linefeed characters are not included in the
calculation.
6
select the parity
‘0l3
the panty
the parity of command strings is checked and the parity
parity is even;
is
detected by the module,
the communications baud rate.
300
to
be used by the module. Bit 5 turns the parity on and
of
the command string is ignored and the parity bit
‘1’.
6.
if
bit
6
is
‘A’,
and
38400
parity
baud. Referto Table
is
odd.
it
will respond with
on
the communications line.
SU
command, the response to the
The
baud rate can be setected from
a
SU
5.2
for the desired code.
of
characters
PARITY
command.
of
ERROR
SU
The baud rate selection is the an
SU
command.
must occur. A reset is performed by sending a Remote Reset
powering down. This extra level of write protection is necessary to ensure that communications to the module is not accidently changing the baud rate
Let’s run through an example of changing the baud rate. Assume oursample module contains the setup data value
In
order
of
only
setup
for the baud rate to be actually changed, a module reset
an
RS-232C
of
‘31 0701
data
string.
80‘.
that
lost.
Byte
is
not
implemented directly after
(FIR)
command or
This is very important when
2
is
‘07’.
By referring to the
SU
Setup Information/SetUp Command
5-5
command chart we can determine that the module and baud rate
would get:
Command: Response: ‘31
Let’s
say
‘01
0
(from Table
we must first send a Write Enable command because
Command: $1
we
300.
wish
If
we perform the Read Setup command with this module we
$1
RS
0701
80
to
change the baud rate to 9600 baud. The code for 9600 baud
5.2).
This
would change byte 2 to
WE
is
‘02’.
set for
Response: Command: $1 SU31020180
Response:
This sequence
rate of the module. The module remains in
the Read Setup
Command: $1 Response:
Notice that although the module is communicating
indicates a baud rate of 9600 (byte
send a Remote Reset
*
of
messages
(RS)
command to check the setup data:
31020180
is
done in
300
baud because that was the original baud
300
baud afterthis sequence. We can use
RS
2
=
‘02’).
To
actuallychange the baud rate to 9600,
(RR)
command (RR is write protected):
in
no
linefeeds, no panty,
To
perform the
SU
is write protected:
300
baud, the setup data
SU
command
is
Command: $1WE Response:
Command:
Response:
Up
to
this point all communications
respond to any further communications at 9600 baud. continue ope ration.
If
the module does
At
this point the host computer or terminal
*
$1
*
not
RR
respond
have
been sent at
to
the new baud rate, most likely the setup data is
300
baud because
300
baud. The module will not
it
is now running
must
be set to
9600
at
baud to
56
M3000/4000
incorrect. Try various baud rates from the host until the module responds. The last resort is to set the module to Default Mode where the baud rate
USERS
MANUAL
is
always
300.
Setting a string
tion. Refer to Chapter 3 for instructions.
Bits 3 and
These two bits of byte 2 are not used and should be set to
Table
BYTE
5.2
2
4
Byte
of
RS-232C
2:
Linefeed,
modules
Parity
to a new baud rate requires special considera-
and
Baud
Rate.
‘0’
Byte
3
This byte contains the setup information
default value for this byte is
Continuous Input
Bit 5 enables the continuous input option available set to
for more information on the continuous input option.
Limit
Bit 4 may be used to disable any limit checking
commands. Bit
‘0’.
Setting Bit
Disable
510
4
is
normally set to
‘01’.
‘1
enables the continuous input. Refer
for
additional communications options. The
‘0’;
Bit 4 is set to
on
on
limits set
M4000
‘1’
units
and
it
is
to
the
M4000
by
the
LO
and
to inhibit limit checking.
Wm
normaliy
section
HI
limit
Setup Information/SetUp Command
5-7
Echo
When bit 2 is set the communications line. This option is necessaryto ‘daisy-chain’ multiple
modules. Echo is optional cleared
to
‘0’
to
on
RS-485
‘1
’,
the module will retransmit any characters
for
systems with a single
models. See Chapter 3 for a more complete description.
RS-232C
it
has received on
RS-232C
module. Bit 2 must be
Delay
Bits 0 and 1 specify a minimum turn-around delay between a command and the module response. This delay time tocapture data from quick-responding commands such as Dt. This is particularly true for systems that use software command delays listed in the Software Considerations section unit
of
delay specified by bits 0 and
transmit one character with the baud rate specified in byte
of
delay at 300 baud is 33.3
of
delay units is selectable from
mS;
is
useful
UART’s.
1
for
38.4
0
to
6
on
host systems that are not fast enough
The specified delay is added
of
Chapter 3. Each
is
equal to the amount
kilobaud the delay is
as shown in Table 5.3.
of
time required to
2.
For example, one unit
0.26
mS. The number
to
the typical
In some systems, such as
a
linefeed
by
a
the linefeed and the module response, the module should be setup to delay by
units.
Table
(LF).
The modules will respond immediately after a command terminated
CR
and will ignore the linefeed. To avoid a communications collision between
5.3
Byte
3
Options.
IBM
BASIC,
a
carriage return
(CR)
is always followed by
2
5-8
M3000/4000
Byte
4
This setup byte specifies the number of displayed digits and the Manual Mode configuration.
Nu
m
ber
of
displayed digits
For ease common 7-digit configuration consisting of sign, 5digits, decimal point, andtwo more digits. Typical data
(digital-to-analog converter) is
resolution of the output format cases, the low-order digits
used to insert trailing zeros into the data format to limit the output resolution and mask
off
mean i ng less digits.
of
use, the data format of all MetraByte modules is standardized to a
USERS
looks
like:
MANUAL
+00100.00.
12
bits or about
is
much greaterthan the resolution
would
display meaningless information. Bits 6 and 7 are
However, best-case resolution
3
1/2
of
the
DAC
digits. In some cases, the
of
the
DAC.
In such
Bit 7 Bit
0
0
1 1
Manual Mode Disable
Bit 2 is normally set to output. Setting bit
Manual Mode Select
Bits 0 and 1 allow
Modes allow the analog output to
module connector. Details on Manual Modes are given in the Manual Mode section.
Table
BYTE
6
0
1
0
1
5.4
4
XXXXO.00
XXXXX.00
XXXXX.XO XXXXX.XX
‘0’
which allows the Manual Mode inputs to affect the analog
2
to
‘1
disables the Manual Modes.
the user to select among four different Manual Modes. Manual
Byte 4 Displayed Digits
(4
displayed digits)
(5
displayed digits)
(6
disptayed digits)
(7
displayed digits)
be
controlled
and
Manual
by
the UP* and
Mode
Select
DN*
pins
on
the
Setup InformatioiVSetUp Command
5-9

Setup Hints

Until you become completely familiar with the Setup command, the best method of
changing setups is to change one parameter at a time
has been made correctly. Attempting to modify all the setups at once can to confusion. factory setup as shown in Table
Use the Read Setup module
If
you reach’a state
(RS)
command to examine the setup information currently in the
as
a
basis for creating a new setup. For example:
of
total confusion, the best recourse is to reload the
5.5
and
try again, changing one parameter at a time.
and
to verify that the change
often
lead
Assume
be used
Read Setup command:
By referring to Table
the
representation in binary
command, use the data read
Verify
By
problems associated with incorrect setups may be identified immediately. Once a
satisfactory setup has been developed, recordthe setupvalue and use itto configure
similar modules.
you
have
a
M3000
in
adaisy-chain (See Communications). Read out the current setup with the
Command: Response:
RS
command we see that byte 3 is currently set to
0000
Command:
Response:
Command:
Response:
that
the module
using the
RS
$1
310701
5.3,
of
binary
01
01.
The new hexadecimal value of byte 3 is
$iWE
*
$fSU310705CO
*
command and changing one setup parameter at a time, any
unit
and
you wish
RS
CO
we find that the echo
0000
is
0001.
out
(SU
echoing characters and the setup
To
with the
is
write-protected)
to
set echo, bit 2 must be set to
RS
setup the unit to
is
controlled by bit
01.
command, changing only byte
echo
so
2
of
byte
This
is
the hexadecimal
‘1
’.
05.
To perform the SU
is
correct.
that it may
3.
This results
From
3:
If
you commit an error in using the Setup command, it is possible to lose communi­cations with the module. to re-establish communications.
Table
(All
Model Setup Message
M312X1 M316X, M412X, M416X 31 0701 80 M313X1 M314X, M317X, M318X 31 0701 40
M413X, M414X, M417X, M418X 31 M325X, M425X
5.5
Factory
modules from the factory are set for address
Setups
In
this
by
case,
Model.
it may be necessary
‘l’, 300
0701
40
31
0701
CO
to
use the Default
baud, no parity)
Mode
5-10
M3000/4000
USERS
MANUAL
Setup
S3000
module setup. Contact
Software
setup
software
for
the
factory
IBM
for
PC
details.
and
compatibles
is
available to facilitate
Chapter
6
Digital
MANUAL
Each
DN*,
control inputs which influence the analog output or they may be used as general-
purpose digital inputs. The function (SU)
The inputs
logic (DI)
command. Voltage inputs less than
3.5V are read Switch closures can be read by the digital input by simply connecting the switch
between
parts
The pull-ups supply only current operation should be used. For other types
to
provide extra pull-up current with an external resistor. The resistor should be tied
between the switch and
MODES/DIGITAL
M3000/4000
DI1
/UP*,
command.
are
“1”
condition (see Figure
GND
are unnecessary.
module has three digital input connections designated as
and
012.
protected to voltages up to +30V and are normally pulled up
as
‘1
’.
terminal and a digital input. Internal pull-ups are used
INPUTS
These inputs have a dual function; they may be used
0.5mA
+V.
UO
of
6.1).
;therefore, self-wiping switches designed for
Funcions
the input pins is programmable with the Setup
Digital inputs can be read with the Digital Input
1
V
are read back as
and
of
switches, it may be necessary
Manual
‘0’.
Signals greater than
so
Mode
DIO/
as
to
the
additional
low
Digital inputs may be used offered by many manufacturers.
to
sense
AC
voltages
by
using isofated sensing modules
6-2
M3000/4000
USERS
MANUAL
Figure
MANUAL
The M3000/4000 modules may be configured to use the digital inputs to control the analog output. These functions are called Manual Modes. Four different Manual Modes may be specified:
Up/Down Controller Input
Limit Switch Limit Switch
These modes are selected by Bits 0 and section). Also, the Manual Mode Disable bit (Bit Manual Modes.
UP/DOWN
Manual Up/Down control is the standard configuration when the module is shipped
from the factory. This configuration provides a local operator interface to control the analog output value independent
moved up or down by manipulating the come from simple
Figure 6.2 shows the simplest connection. With the two switches, four different input
combinations are possible:
MODES
NO
NC
switches
or
may
6.1
Digital Inputs
1
of
Byte 4 in the Setup data. (See Setup
2,
Byte 4) must be cleared to enable
of
the host computer.
UP*
and
DN*
inputs. The control inputs
be
logicsignals originating
The
analog output
from
may
be
may
otherequipment.
UP*DN*
0 0
1 1
0
1
0
1
Hold Slope Up Slope Down
No
Action
Digital
D
I1
IU
P’
D
IWDN’
GND
I/O
Functions and Manual Mode
6-3
Figure
6.2
Manual Up/Down Control.
Since the digital inputs are pulled up internally, no connection or an open pushbutton generates a logic
generates a logic
‘1’.
Shorting the input line to ground or closing the pushbutton
‘0’.
The
‘*’
in the terminal labels indicate that the inputs are negative
true.
If
both switchesareopen, a logic
If
the
UP*
signal input is grounded
will slope up to + Full Scale. A smooth slope in the output
incrernenting the DAC approximately
grounded, the analog output will slope towards
1,l
isgeneratedand no manual action
by
closing the
1000
UP
pushbutton, the analog output
times a second.
-
Full
Scale. The analog output will
If
is
generated by
only the
is
performed.
DN*
input is
stop moving when the switches are released. The slope
on M3000 units is scaled complete. The manual slope rate value with the Manual Slope
The Manual Modes have priority over host-generated output commands. both ofthe
rate
on M3000 modules is fixed and cannot be changed. The manual slope
so
that a full-scale output change requires 5 seconds
on
M4000 units may be programmedto any desired
(MS)
command.
If
UP*
and
DN*
inputs is held low, an Analog Output
(AO)
or Hex output
to
either or
(HX)
command generated by the host will result in a MANUAL MODE error message and the host command
both input switchesare output
will
hold its present value. Any attempts by the host computer to change the
output will result
is
aborted. This brings
on.
If
both
in a
MANUAL
MODE
UP*
and
error.
us
to the fourth switch combination, when
DN*
signalsare held
at
Iogic‘O’, the analog
6-4
M3000/4000
USERS
MANUAL
Another useful switch configuration isshown in Figure the module is on-line with a host which is actively sending output commands
6.3.
This circuit is useful when
to
the
module. This circuit will lock out the host while manual operations are being
performed. Under normal host control, the ManuaVHost switch
manual operation, the toggle switch
is
closed, grounding both UP* and
is
left open.
DN*
for
inputs. This will prevent the host from controlling the analog output. The output may be controlled manually by depressing the normally-closed pushbuttons. Note that the
'UP'
button is connected to the DN* input.
NORM4LLY
PUSHBUTrONS
CLOSED
MNUAL
TOGGLE
Figure
CONTROLLER
INPUT
This Manual Mode is a variation operation with ON-OFF controllers. With this mode, a
to add an analog control output to an truth table for this mode
--
UP*
0
0
1 1 1
DN*
0
1
0
With this setup, the
open,
no
Manual Mode action takes place. If the signal is grounded, the controller
input is enabled and the analog output will
controlled by the UP* input. In this mode
integral
an
of
the
UP*
signal input. In orderto keep the analog output in the linear region,
external signal must be used to manipulate the UP* input. This is usually done
SWITCH
6.3
Manual Up/Down Control with Host Lock-Out.
of
the manual up/down control specifically setup for
M3000/4000
ON-OFF
or time-proportional controller. The
is:
Slope Up
No
Action
Slope Down No
Action
DN'
input
acts
as an enable signal.
slope
of
operation, the analog output value is the
up
If
the
or down. The slope direction is
unit may be used
DN*
input
is
through feedback.
high or
Digital
The slope rate used at the analog output in controller mode is the value specified for
manual slope. The slope rate programmable with the Manual Slope (MS) command.
is
fixed
on
I/O
M3000
Functions and Manual Mode
units; on M4000 units the slope is
6-5
LIMIT
Two signals to limit the analog output that may be obtained with the Analog Output command. The limit switch mode may be programmed to accommodate either
normally-open
section
Figure remain open, module operation is not affected.
attempt to decrease the analog output signal with the
LIMIT increase the analog output will be performed normally.
switch is closed, the analog output cannot be decreased from its present value with an
Conversely, attempt to increase the analog output with the A0 command will result in a LIMIT
ERROR.
If
a
SWITCHES
of
the Manual Modes allow the use of limit switches or other external digital
(NO)
for
mode selection details.
6.4
shows a typical module with normally-open limit switches.
ERROR
A0
command.
if
the Down Limit switch
The output may be decreased with no error.
both limit switches are closed, any attempt
LIMIT
ERROR.
switches or normally-closed
message and the command will be aborted. An
is
open and the
(NC)
switches.
If
the Down Limit switch is closed, an
A0
command will result in a
As
long as the Down Limit
UP
Limit switch is closed, an
to
use the
A0
command will result in
See
the Setup
If
the switches
A0
command to
(AO)
D
IllU
44-44
P+
DIWDN'
S4l
I=;a
DOWN L IMlT
DOWN L IMlT
I1
NQRM4LLY
TOGGLE
Figure 6.4 Using Switches to Limit Analog Output.
OPEN
SWITCHES
GND
6-6
M3000/4000
On
M4000 units with controlled output ramps, the limit switches will stop the output
even after a successful A0 command. Figure example a M4181 voltage-output module is programmed with an output slope
S.
Assume that the output voltage value is initially
$1A0+10000.00
activated before the output reaches is terminated. The limit switch condition may be read by the analog output may be read with the
USERS
will ramp the output to +1OV. However,
MANUAL
6.5
illustrates this action.
1
OV,
the output will stop and the A0 command
RD
or
RAD
commands.
OV.
The command:
if
the
UP*
limit switch
DI
command and the
In
of
this
1
V/
is
+1
OY
a-
LlMlTSW
CLOSED
OPEN
Figure
The Manual Mode setup may be configured to allow either Normally Open or Normatly
Closed
1
6.5
Using Limit Switches to Stop an Analog Output
(NC)
5
switches. The truth table for either mode is:
r---l----
/
/
/
ITCH
10
NORMAL
t
OUTPUT
Ramp.
(NO)
Inputs Action
DN*
0 0
0
1
1
1
=
Open Switch
UP*
1
0
1
NO Hold
Down Limit Up Limit
No
Limit
NC No
Limit
Up
Limit
Down
Hold
Limit
Chapter
7
Power
M3000/4000 modules may be powered with an unregulated Power-supply ripple must be limited to
ripple voltage must be maintained between the power supply specifications are referred voltage drops must be considered when the module is powered remotely.
All
M3000/4000 modules employ an on-board switching regulator to maintain
efficiency over the
inversely proportional to the line voltage. consume a maximum
1
.O
watts maximum. The power consumption figures should
the power supply current requirement. will
be
used
to
4
X
0.75
=
3 watts. The power supply must be able to provide
In somecases, asmall numberof modules may be operated by"stealing"powerfrom a host computer
232C D25 connector.
10
to
30
volt input range; therefore the actual current draw is
of
0.75
watts and M3Q00/4000 current output models consume
power four voltage output modules. The total power requirement is
or
terminal. Many computers provide
5V
peak-to-peak, and the instantaneous
10
and
to
the module connector; the effects of line
M3000/4000
For
example, assume a 24 volt power supply
a
+10
to +30Vdc supply.
30
volt limits at all times.
voltage output modules
be
used in determining
3
+
24
+15
volt output on the
Supply
=
0.1
25
All
good
amps.
RS-
Small systems may be powered by using wall-mounted calculator-type modular power supplies. These units are inexpensive and may be obtained from many retail elect ro n ics outlets.
For best reliability, modules operated on long communications lines should be powered locally using small calculator-type power units. This eliminates
the voltage drops on the Ground lead which may interfere with communications signals. In this
Ground terminal must be connected back to the host to provide a ground return for the communications
All
M3000/4000 modules are protected against power supply reversals.
case
the
loop.
V+
terminal is connected only to the local power supply.
(9500
feet)
The
Chapter
8
Troubleshooting
No
module
Assuming that the module is in a system, complete the following steps before
removing it from the system. These steps will check the obvious things before removing.
1.
Using a voltmeter, measure the power supply voltage at the module +Vs and
Ground terminals to ensure that the power supplied is between
2.
Check to see that the communications lines are connected properly and that
there are no breaks in the lines.
3.
If
you are using the RS-232C
switch
If
the above steps do not correct the problem, remove the module from the system
and return to the bench. Complete the following steps.
1.
Connect a working power supply (between
Ground terminals
is
set
response.
to
the correct position.
on
the module.
to
RS-485
+10
and +30Vdc.
converter, make sure the baud rate
+10
and +30Vdc)
to
the
Vs
and
2.
Connect the module to a dumb terminal as
Your terminal should be set the
RS-485
3.
Connect a jumper wire from the Ground terminal to the Default* terminal.
4.
Turn the power supply on, type
key.
If
the module still does not respond, call the factory for assistance.
responds, send a message
1.
Check that the baud rate is correct.
2.
If
daisy-chaining RS-232C modules, be sure that the echo bit
3.
ff
using byte time delay make sure that the proper delay procedure basically makes sure that the module and the system are speaking the same language. Reinstall
converter, make sure its baud rate
$1
RS
is
correct.
to
300
command
module
baud rate and
$1
RD on the terminal and press the Return
to
see if the information in the module's setup
in the system and try again.
in
the Quick Hook Up procedure.
no
parity. Also if you are us i n g
is
set
to
300
baud.
If
the module
is
set to
is
set. The above
1.
Chapter
9
Cali
M3000/4000 units feature state-of-the art digital trimming techniques to eliminate the need for calibration pots
commands through the communications port. The on-board microprocessor is used
to calculate calibration constants which are then stored in the nonvolatile EEPROM.
Fieldcalibration
the device.
Digital calibration is made possible by reserving a small portion trim purposes. The DAC hardware is capable of producing outputs full scale range normally accessed by the Analog Output
be demonstrated by using the Hex Output directly without trims. For example, a M3181 module has a nominal output
IOV.
The absolute maximum output of the
corn m an d
:
Command:
of
the units may be performed without the need to physically access
or
other hardware trims. Calibration
(HX)
command, which controls the DAC
$1
HXOFFF
DAC
may be obtained with the HX
is
performed with trim
of
the DAC scale for
(AO)
command. This may
bration
in
excess
of
of
the
0
to
Response:
A measurement
shows that
2%
of the DAC range is reserved for trim purposes.
0.2
of
the output signal would typically read about
volts is the excess DAC range available fortrimming. Typically about
+10.2
volts. This
The only equipment necessary for calibration
(0.02%
communicate to the device. Calibration is performed by comparing the ideal desired output to the actual
measured output. The ideal output is set by using the Analog Output (AO) command.
After the actual output value is measured with a calibrated meter, the actual value
is
communicated to the module with the Trim MiNimum (TMN) or Trim Maximum
(TMX) commands. The TMN command trims the
scale. After receiving a TMN or TMX command, the module compares the A0 data
to the actual output value and computes a new calibration factor to reduce the error to zero.
The actual data specified by the standard MetraByte format, in units
accurate) to monitor the output signal and a terminal or computer to
TMN
and TMX command must be presented in
of
millivolts
is
a
suitable voltmeter
-
full
scale
or
rnilliamps:
output;
or
TMX
ammeter
trims +full
9-2
M3000/4000
$1
TMX+10012.00
$1
TMX+00020.05
$1
TMN-04990.00 (-4.99V)
$1
TMN+00000.02
USERS
(10.01
(20.05mA)
(+.02mA)
MANUAL
2v)
Trim resolution is 1 LSB
Calibration Procedure-Voltage units
1)
Connect voltmeter to analog output
2)
Set the output to -full scale with Analog Output
3)
Measure the output voltage.
4)
Report the actual output value to the module with the Trim MiNimum (TMN)
command. The module will adjust the output to a new value.
5)
Check the output value
4.
6)
Set the output
7)
Measure the output voltage.
8)
Report the actual output voltage
command. The module will adjust the output value.
9>
Check the output value with the meter.
8.
To further illustrate the calibration procedure, here calibration a
to
M3181
of the DAC which
with
the meter.
+
full
scale with the Analog Output (AO) command.
to
which has an output of
is
full
scale
If
the output is not within 1 LSB,
the module with the Trim
If
the output
0
to
(AO)
1
OV:
+
4096.
command.
is
not within
is
a
typical sequence used
repeat step
Maximum
1
LSB,
repeat step
(TMX)
to
Set the output
Command:
Response:
Measure the output voltage. Inthiscase,the measuredoutput
the actual value
Command:
to
-
full
scale:
$1
A0
t
to
the module with the TMN command:
$I
+OOOOO.OO
WE
Response:
Command:
Response:
Measure the output value with the meter. The output measures
1 LSB
Now
(2.5mV).
set
the
output
Command:
to
$1
TMN-00012.00
*
+
full
scale:
$1
A0+10000.00
Response:
is
-1
2
millivolts. Report
+1
mV,
which is within
Calibration
9-3
The measured output
the Trim Maximum (TMX) command:
Command:
is
+10.123V. Report the measured output to the module with
$1
WE
Response: Command:
$lTMX+lOf23.00
Response:
The output now measures
the TMX command with the new value:
Command:
$I
+1
O.O05V,
WE
which
is
still not within specification. Repeat
Response: Command:
Response:
The output now measures 9.999V, which is within 1
Current
Modules with current outputs are trimmed in exactly the same manner as voltage
outputs with one exception. Since the current outputs are unipolar and cannot sink
current, errors will result
OmA. On 0-20mA units, - full scale trim should be performed at some small positive
value such as 0.5mA. This is done by simply using the
desired trim point:
Output Calibration
$1
TMX+10005.O0
*
LSB
(2.5mV).
if
an attempt is made to calibrate the - full scale output at
A0
command
to
output the
Command: Response:
Assume that in this case the actual output
command to report the actual output to the module:
Command: Response:
Command:
Response:
The microprocessor will calculate a trim value to force the output to the
of
0.5mA.
M4000
M4000 modules offer the ability to re-scale the input data to any desired engineering
units. This may cause problems in calibration since it may be difficult
input scaling to the output signals. In thiscase it may be easierto re-scale the M4000
to standard voltage and current ranges that may be compared directly with measured
output values. Calibration is then performed with the same procedure as described
above. After calibration, the module may
ing units with the
CALIBRATION
MN
$1
A0+00000.50(0.5mA)
*
is
measured
$1
WE
*
$1
TMN+00000.63 (actuakO.63mA)
*
be
re-scaled back
and
MX
commands.
to
be +0.63mA. Use the TMN
ideal
output
to
correlate the
to
any desired engineer-
9-4
M3000/4000
USERS
MANUAL
Analog Readback Calibration
The analog-to-digital converter
(ADC)
used for readback is trimmed independently
of the DAC. The trim commands used to calibrate the ADC are Trim Readback
MiNimum
(TRN)
and Trim Readback Maximum
(TRX).
Unipolar Ouput:
the output to - full
To Trim the
scale
with the Analog Output
ADC,
be
sure the
DAC
(AO)
output
has
been calibrated. Set
command. Then perform the
Trim Readback MiNimum command:
Command: Response:
Command:
$1
*
$1
WE
TRN
(TRN is write protected)
Response:
The microprocessor will calculate calibration values scale. The calibration factors are automatically stored in
to
fix that point on the ADC
EEPROM.
Now set the output to + full scale with the Analog Output (AO) command. Perform
the Trim Readback Maximum command:
Command:
Response:
Command:
Response:
This command fixes the maximum point
EEPROM.
$1
*
$1
*
WE
TRX
(TRX is write protected)
on
the
ADC
scale and stores the data in
For
proper ADC calibration, the analog output
must
be set exactly to the -full scale and +full scale values before using the TRN and TRX commands. unknown, they
Bipolar Ouput:
the -full scale value by using the Read MiNimum
Command:
Response:
Record the Rescale the -full scale data to
Command: Response:
Command: Response:
Set the analog output data to
Command:
Response
may
be read back using the
RMN
To Trim the ADC, be sure the DAC output
$1
RMN
*10000.00
-full
scale data for later use.
‘0’
$1
using
WE
the
MiNimum
*
$1
MN+00000.00
*
‘0’:
$1
A0+00000.00
:
*
and
RMX
commands.
has
been calibrated. Read
(RMN)
command:
(typical data)
(MN)
command:
If
these valuesare
Perform the TRN command:
Calibration
9-5
Command: Response:
Command: Response:
Now rescale
the
RMN
command:
Command: Response:
Command: Response:
The
ADC
is now trimmed at -full
Trimming the
the
ADC
$1
WE
*
$1TRN
*
-full
scale value back
$1
WE
*
$1
MN-10000.00
t
at
+full
scale
to the original data
(typical
scale.
is
done in a normal fashion.
previously
data)
accessed
by
Chapter
10
M4000
The M4000 series of computer-to-analog output modules contain many intelligent enhancements not found in the
commands and contains several additional commands which take full advantage of the computational power
are
:
Programmable output slew rates Programmable data scaling
Programmable start-up values Watchdog timer True analog readback
Continuous Input
Slope
The operation of most digital to analog converters (including the only for a step function when a new output value change applications this characteristic
rate is more appropriate. In a typical system where controlled output rates are desired, precious host computer time must be
the digital
Controt
is
instantaneous subject only
to
analog converter
of
the on-board microprocessor. These additional features
M3000.
is
undesirable and a gradual controlled output slew
(DAC)
The
M4000
is
desired. That is, the analog output
to
the settling time of the device. In many
used
until the desired output
accepts all
to
continually monitor and step
is
obtained.
Features
of
the M3000
M3000)
provides
The M4000 allows the system designer to obtain controlled output slew rates automatically without host computer intervention. Programmable output slope rates
may be specified bythe userand stored in nonvolatile memory. to the
new value
each time the module is powered up. The slope rate
slope commands in units of volts per second on voltage output models and milliamps
per second on current models. Slopes may
(step output) down to of
20mA! The microprocessor in the M4000 controls the output slew rate by updating the
of
M4000
.01
rnNsecond requires more than 33 minutes
a rate
to change the output value, the output will automatically slope to the
at
the specified rate.
+00000.01
of
1000
conversions per second
The
slope value is nonvolatile and will be restored
volts or mA per second in
is
specified with write-protected
be
specified from a range
to
perform an output change
at
precise
1
ms.
If
acornmand isgiven
of
+99999.99
.01
increments. A
intervals. Slope data is
slope
of
DAC
10-2
represented in the microprocessor with high-resolution floating point numbers. Before each D-to-A conversion the slope increment
value. The new output data is then rounded
represented by the 12-bit D-to-A converter and a new output is obtained. In this
manner the DAC specified by the Analog Output (AO) command. The incremental steps obtainable from the 12-bit converter and the 1 ms conversion rate combine change appear
M3000/4000 USERS MANUAL
is
smoothly stepped until the
to
be a linear ramp.
is
added to the present output
off
to the nearest value that can be
final
output value is reached as
to
make the output
Slope
The M4000 commands that are
RPS
RSL Read Slope
SL
WSL
These commands are described in detail
manual. However, a few clarifications are necessary to fully understand the function of these commands. In the M4000 , slope data
EEPROM and RAM. The RAM (Random Access Memory) contains the working copy of
obtains the slope value used to modify the output data. RAM data may be read or written any number of times; however, RAM data is lost when the down.
The EEPROM (Electrically Erasable Programmable Read Only Memory) also stores the slope value. The EEPROM is nonvolatile and is used to store the
well as other data) when power to the module to the unit, transferred from the EEPROM to RAM where it is used by the microprocessor. The
EEPROM data may be read an unlimited number
is
Commands
Read Present Slope Slope (RAM)
Write Slope (EEPROM)
the slope data used
or
a
Remote
limited to
10,000
write cycles,
directly
by
the microprocessor.
Reset
(RR)
after
command
which
related to the slope functions are:
in
the commands section (Chapter4)
is
held in two memory areas:
It
is in
RAM
that the microprocessor
M4000
is
slope
is
data
turned
reliability
off.
When power is applied
is
performed, the slope data is
of
times; however the EEPROM
is
not guaranteed.
of
this
powered
value
(as
The Write Slope (WSL) command writes the desired slope rate into both EEPROM
and RAM. This command will satisfy most applications where the desired slope is fixed and
The Slope data in EEPROM. The
to change the slope frequently under control
slope data into RAM only, the vented. For example, a
a
motor speed controller, Under control
cycled up and down once every minute. Using the slope Commands, the host computer may specify different rates to accelerate and decelerate the motor.
Write Slope (WSL) command
does
(SL)
not change during normal operation.
command writes the slope data into RAM only and does not affect
St
command
voltage
is
used in special situations where
of
the host computer. By writing the
10,000
output M4000 may be used to provide the input to
is
cycle write limit of the
of
the host computer, the motor speed is
used twice a minute to control acceleration and
EEPROM
it
is
desirable
is
circum-
If
the
M4000 Features
10-3
deceleration, the days of operation. To overcome this limitation, the Slope (SL)command may be used
to dynamically change the slew rate. Since the SLcommand writes only to
slope data may be changed an unlimited number
The Read Present Slope This data might not match the data held in EEPROM
by the
contained in EEPROM. It may differ from the value held in RAM.
SL
command. The Read Slope
10,000
cycle write limit of the EEPROM will be exceeded within
(RPS)
RAM,
of
times.
command reads the slope datacontained
if
the slope has been altered
(RSL)
command reads the slope data
in
the
RAM.
4
Other Commands
The
M4000
be
performedwithoutaffecting
are
:
Analog Output (AO) command.
output has not reached the final value specified by a previous
command may be performed “on the fly”at any time. The output will simply ramp to the new value specified. In some cases the slope direction may change
new value.
Write Slope
be performed “on the
to the final value with the new slope specified by the
controls the
(WSL)
and Slope
fly”
DAC
output as a background function; most commands may
an outputwhich is ramping toanewvalue. Exceptions
The A0 command may be performed even
A0
command. The
to
(SL)
even
commands.
if
the output is changing. The output will simply ramp
The
WSL
WSL
and or
SL
SL
commands may
command.
if
the
A0
reach the
Remote Reset
current condition.
Watchdog Timer
the output even description
Digital Inputs:
command and
(RR).
if
of
Watchdog Timer below.
The digital
will
The
RR
command will immediately freeze the output to its
(WT).
the output is still slewing as the result of an
affect the outputs
If
a
watchdog timeout occurs, the timer will take control
UP/DN
A0
command. See
and limit switch inputs have priority over the
if
activated. See section
on
digital inputs.
of
A0
Status Commands
The
RD
command may be used at any time to read the data being fed to the
This
is
useful when using slow slew rates to monitor the present output data.
The Digital Input (DI) command may be used output signal has reached its final value. Refer to
Manual
The
controlled by the manual to write the rate data in EEPROM. The manual slope rate is totally independent the slew rates used with the computercontrolled output (AOcommand). The manual
slope rate may
Slopes
M4000
allows
be
read back with the Read Manual Slope (RMS) command.
the user
UP/DN
fo
specify the output slew rate when the output is
inputs. The Manual Slope (MS) command
as
a
quick status check to see
DI
command in chapter 4.
DAC.
if
is
used
the
of
10-4
M3000/4000
USERS
MANUAL
INPUT
All
or milliamps. For example, the command
$1
sent to a voltage output module will tell the output to go to 20mV.
The M4000 allows the user applicationsachange in input scaling may makethedataeasierto readandinterpret.
For example, a M4000 used to control a valve actuator may be easier to
data is scaled with a range The input scaling may be changed by using the Maximum (MX) and Minimum (MN)
commands. These commands are used to assign input data values with the maximum and minimum output values obtainable from the module.
The MiNimum of the module. The actual -full
command only changes the ASCII
For
factory in units
MN command may
DATA
M3000
A0+00020.00
to a current output module tells the module to output 20mA. This command sent
example, a M4141 has a -full scale output of -1
SCALING
and M4000 modules are factory set with datavalues set in units of millivolts
to
scale the input data to any desired units. In many
use
if
of
0-1
00%
rather than 4-20mA.
to
correspond
(MN)
command assigns an input data value to the
of
millivolts
be
scale
so
that a data value
used
to change the data value corresponding to -lOV:
analog output signal is not
data
value that represents the -full scale output.
OV.
of
-1
0000.00
The module is scaled at the
-full
scale output
affected;
represents -1 OV. The
the MN
the
Command:
$IWE
Response: Command:
$1
MN+00000.00
Response:
Now, the output command:
Command: Response:
will
produce an output
The Maximum
Example:
motor speed controller. The full scale range of the M4181 is voltage input the motor speed varies from 100 to
to
turn at a specified RPM requiressome computation
data. command:
For instance, to command the motor to run at 1500 RPM requires the
(MX)
A
M4181 voltage output module is used to supply the control signal
Command: Response:
$1
A0+00000.00
*
of
-1
OV.
command assigns the data value corresponding to +full scale.
3000
RPM. To command the motor
to
obtain the correct command
$1
A0+04666.00
*
0
to
+1 OV. With this
to
a
The data
is
difficult to read and interpret.
M4000
Features
10-5
A solution
The -full scale output
The +full scale output
(MX) command:
to
this problem is to scale the input data directly in units of
Command: Response:
Command:
of
OV
is assigned the value
$1
MN+000100.00
*
of
+1
OV
is
$1
MX+03000.00
assigned the value
100
RPM with the command:
of
3000
RPM with the Maximum
RPM.
Response:
Once the endpoint values are assigned, all other data values are interpolated
linearly. Now
Command:
to
set the motor
to
1500
RPM requires the command:
$1A0+01500.00
Response:
The data is much easier
actual output voltage resulting from this command
Example:
and
at
accept data of
A valve actuator accepts a 4-20mA signal: at 4mA the valve is
20mA
the valve is fully open.
0%
open
to
interpret since
to
100%
open.
We
the
scaling is directly in units
is
+4.666 volts.
wish
to
rescale a M4251 0-20mA module to
of
fully
RPM.
closed
The
The Minimum (MN) command assigns
of
the module, which in this case is OmA.
Using the two scaling points (4mA,
we
find that OmA interpolates
of
the MN command:
Command:
Response:
The maximum scaling point
value of
100%:
Command:
Response:
The module
opening:
is
now scaled in percentage of valve opening.
Command:
Response:
In this case the M4000 module produces an output
halfway.
to
a value
$1
MN-00025.00
*
of
20mA
$1
MX+00100.00
*
$1
A0+00050.00
*
an
input data value to the - full scale output
0%)
and (ZOmA, 100%) and a bit
of
-25%.
is
straight forward
This value is used in the argument
of
computation,
and
is
assigned the input
To
set the valve to
of
12mA, opening the valve
50%
If
a
M4000
Data (RD) and Read Analog Data (RAD) commands are automatically rescaled to the new units.
module has been rescaled, the readback data obtained from the Read
10-6
The
be individually reassigned to values appropriate to the new scaling.
The starting value not affected.
Slope rate data is not affected by changes in scaling and are always in units of volts per second or milliamps per second.
The Maximum and MiNimum scaling points may be assigned to any values within
the limitations of the standard data format. Negative scalings and inverse scalings
are acceptable.
It
in the module. The output range
the output range
In
as the
unwanted lower-order digits. The number of digits displayed affects only the
RAD commands.
M3000/4000
HI
and
LO
is important
some applications, it may be necessary
described in the Setup Chapter. The number of digits should be chosen to allow
full
resolution
to
USERS
limitvalues
understand that rescaling
or
resolution.
of
the DAC
MANUAL
(if
used) are not affected
is
not affected.
(4096
counts)
by
rescaling the
only
modifies the way datais represented
It
is not possible for
to
adjust the ‘number
to
be
represented while suppressing
M4000,
the
userto alter
of
displayed digits’
and must
RD
and
STARTING
When a automatically forced with the Starting Value systems in a controlled manner. Usually the starting value is specified as a “safe” condition to protect equipment and material from damage.
The Starting Value may The SV and

WATCHDOG TIMER

M4000
of
the output signal in the event of host computer or communications failure. The
timer is preset using the Watchdog Timer
in minutes. The timer module receives a valid command, the timer
If
the timer count reaches the preset value, the output will automatically
the starting value (see SVcommand). The output the present output slope rate.
The purpose failure. The Starting Value should be programmed to provide a ‘safe’ output value
minimize damage and disruption to the system under control.
VALUE
M4000
units contain a programmable software timer to provide an orderly shutdown
module is powered up from a cold start, the analog output is
to
a
pre-determined starting value. This value may be specified
(SV)
command. This feature is useful for cold-starting
be
read back with the
RSV
commands are detailed in the command section of chapter 4.
is
continually incremented in software. Each time the M4000
Read
(WT)
command to specify a timer interval
is
cleared to zero
Starting Value (RSV) command.
and
restarted again.
be
will
slew to the starting value using
of
the Watchdog Timer is to safeguard against host
or
communications
forced to
to
During normal operation,
update the module to prevent the watchdog from reaching the timeout value. Under these conditions, the watchdog has no effect on the module output. However,
the
host system should periodically read the status or
if
the
M4000
Features
10-7
timer reaches
communications channel is inoperative and will force the output
The preset value may be read back with the Read Watchdog Timer (RWT)
command.
The WT and RWT commands are detailed in the command section.

ANALOG READBACK

The Read Data (RD) command
a
status report
module,the RDdata returnsaveryaccurate readbackoftheoutput signal. However,
the data obtained with the RD command only indicates the digital data that is being
transferred from the on-board microprocessor
as
to
whether the analog signal being produced by the DAC is correct. Fault
conditions such as shorts on voltage output modules
output models cannot
To provide a true readback of the analog output signal, the
a simple analog to digital converter (ADC) which is totally independent
The
ADC
the microprocessor. The analog data may be read back with the Read Analog Data
(RAD) command. The RAD data provides true analog readback scaled in the same units as provided with the RD command.
the
of
the
is
tied directly
preset value, the
is
contained in all
output
be
of
a
module. For a properly functioning and calibrated
detected by the RD command.
to
the analog output signal and provides readback data
M4000
assumes that the host system or
to
a
safe value.
M3000
to
the DAC. It provides no indication
and
M4000
or
open circuits on current
M4000
units
to
provide
models contain
of
the
DAC.
to
The ADC is not intended
Typical accuracy
properly,the RADcommandcan greatlyenhance the user’sconfidence level that the analog output is being produced as intended. Output fault conditions from improper
wiring or loads can
to ensure that all the circuits in the
To
utilize the
Slewing outputs decrease accuracy. First obtain a status reading with the
command. This reading gives the data value being fed to the DAC.
readback with the RAD command. This data represents the actual analog output
signal. The two data readings are scaled identically. Compare the two readings; they
should differ by
specifications,
indicate improper output loading or module
is
be
ADC
most effectively, the output should be in a steady-state condition.
less
it
is a very positive indication that the output
to
be a highly accurate measurement
about 1 %of
easily
than
detected. The A DC
1
%
of
of
the output signal.
full scale (see specifications). However, when used
M4000
also provides aform
module are working properly.
of
redundancy
RD
Now
obtain a
full
scale (refer to specifications).
If
the error is within
is
correct. Large errors
failure.
Appendix
A
Table decimal (Hex), and Binary. Claret
AD
"43
"A
"B
"C
"D
"E
"F
"G
"H
"I
"J
"K
"L
"M
"N
"0
"P "Q
"R
"S "T
"U
"V
"W
"X
"'t
"Z
"[
"\
0
1
2
3
4
5 6
7
8
9
10
11 12
13 14
15
16 17
18 19 20
21
22
23 24
25 26
27
28
of
ASCII
Hex
00
01
02
03
04 05
06
07
08
09
OA
OB
oc
OD
OE
OF
10 11 12 13
14 15 16 17 18 19 1A 1B
1c
00001
00001 101 00001 11 00001 11 1 0001
0001 0001 001 0
0001001 1 0001 01 0001 01 01 0001 01 10
0001 01 1 1 0001 1000
0001 1001 0001 101
0001 101 0001 1 100
characters
Binary 00000000
00000001 0000001 0 0000001
000001
000001 01 000001
000001 I1 00001001
0000101 0000101 00001 100
1
00
10
000
0
1
0
0000
0001
00
0
1
(A)
and
D
128
129 81 10000001 130 82 10000010 131 132 133 134
135 136 137 138
139 8B 10001011 140
141 142
143 8F 10001111 144
145 91 10010001 146 147 93 10010011
148
149 150 96 10010110
151 97 10010111 152 98 10011000
153
154 155
156 9C 10011100
ASCII
their equivalent values in Decimal (D), Hexa-
(")
represents Control function.
Hex Binary
80 10000000
83
10000011
84
10000100
85
10000101
86
10000110
87
10000111
88
10001000
89
10001001
8A
10001010
8C
10001100
8D
10001101
8E
10001110
90
10010000
92
10010010
94 10010100
95
10010101
99
10011001
9A
10011010
9B
10011011
Tables
AD
"1
29
30
"
-
31
32
!
33
c'
34
#
35
$
36
%
37
&
38
'
39
(
40
1
41
*
42
+
43
I
44
-
45
.
46
I
47
0
48
1 49
2
50
3
51
4
52
5
53
6 54
7
55
8
56
9
57
:
58
;
59
<
60
=
61
>
62
?
63
@
64
A 65
B 66
C
67
D
68
E
69
F
70
G
71
Hex
Binary
1D 00011101
1E 00011110 1F 00011111
20 00100000 21 00100001 22 00100010 23 00100011
24 00100100
25
00100101
26 00100110
27
00100111
28
00101000
29
00101001
2A 00101010 2B 00101011
2c 00101100
2D
00101101 2E 00101110 2F 00f01111 30 00110000 31 00110001 32 00110010
33
00110011
34 00110100
35
00110101 36 00110110 37
00110111
38
00111000
39 00111001
3A
00111010
36
00111011
3c 00111100
3D 00111101
3E 00111110
3F 00111111 40 01000000
41 01000001 42 01000010
43 01000011 44 01000100
45 01000101 46 01000110
47 01000111
D
157 158 159 160 161 162 163 164
165 166
167 168
169
170 171
172 173 174 175 176 177 178
179 180
181
182 183
184
185
186
187 188
189 190 191
192
193 194 195 196 197 198 199
Hex
Binary
9D
10011101 9E 10011110 9F 10011111 A0 10100000 A1 10100001 A2 10100010
A3
10100011 A4 10100100
A5 10100101 A6 10100110
A7 10100111 A8 10101000
A9 10101001 AA f0101010
AB 10101011 AC 10101100
AD
10101101
AE
10101110 AF 10101111 BO 10110000 B1 10110001
62
10110010
B3 10110011
B4
10110100
65
10110101
B6 10110110 B7 10110111 88 10111000
69
10111001
BA
10111010
BB
10111011
BC 10111100 8D 10111101
BE
10111110
BF 10711111
co
11000000 c1 11000001 c2 11000010
c3
11000011 c4 11000100
c5 11000101 C6 11000110
c7 11000111
AD
H
72
I
73
J
74
K
75
L
76
M
77
N
78
0
79
P
80
Q
81
R
82
S
83
T
84
u
85
V
86
W
87
x
a8
Y
89
z
90
[
91
\
92
1
93
94
-
95
'
96
a
97
b
98
c
99
d
100
e
101
f
102
g
103
h
104
i
105
j
106
k
107
I
108
rn
109
n
110
0
111
p
112
q
113
r
114
Hex
Binary
48 01001000 49 01001001
4A 01001010 4B
01001011
4c
01001100
4D 01001101
4E
01001110 4F 01001111 50
01010000 51 01010001
52
01010010 53
01010011
54
01010100
55
01010101
56
01010110 57
01010111
58 01011000
59
01011001 5A
01011010
58
01011011
5c
01011100
50
01011101
5E 01011110
5F
01011111
60
01100000 61 01100001
62
01100010
63
01100011
64
01100100
65
01100101 66
01100110
67
01100111
68
01101000
69
01101001
6A
01101010
6B
01101011
6C
01101100
6D
01101101
6E 01101110 6F
01101111
70
01110000
71 01110001 72
01110010
D
200 20
1 202 203 204
205 206 207
208
209
21
0
21 1
21
2
21 3 21
4
21
5
21
6
21
7
21 8 21
9
220 22
1
222 223 224 225
226 227
228 229
230
23
1
232
233 234 235 236
237
238 239
240
241
242
Hex
C8
c9
CA
CB
cc
CD CE
CF
DO D1
D2 03
D4
D5
D6 D7 D8 D9
DA
DB
DC
DD DE
DF
EO El
E2
E3 E4
€5
E6
E7
€8
E9
EA
EB
EC ED
EE EF FO
F1
F2
Binary 1 1001
11 001
1
1
11 001 100 11 001 11 001 11 11 001 11 1 101
1 101 0001 11010010
1101001 1
1
11010101 11010110
1
1101 1 101 1 001 11011010 1101 101 1 1101 1100 1101 1101 1101 11 10
1101
1 1 100000 1 11 00001 11100010 11 10001 1 11 100100 11 100101
1
1
11 101000 11 101001 11 101010 11 10101
11101100 11 101 101
1 1 101 1 10 11 101 11 1
11 110000
11
11 11001 0
000
001
1
001 01 0
1
001 01
101
101 01 11
1 1001 10 1
1001 1 1
110001
1
101
0
1
0000
01
00
1000
11
11
1
A4
M3000/4000
A
D
s
115 73 01110011
t
116 74 01110100
u
117 75 01110101
v
118
w
119
x
120
y
121 79 01111001
z
122
{
123
I
124 7C 01111100
}
125
-
126 127
Hex
76
77 78
7A
78
7D
7E
7F
Binary
01110110 01110111 01111000
01111010' 01111011
01111101 01111110
01111111
USERS
MANUAL
D
243 244
245
246 247 248
249
250
251 252 253 254
255
Hex
F3
F4 11110100
F5
F6 11110110 F7 11110111
F8
F9 11111001
FA
FB 11111011 FC 11111100
FD
FE
FF
Binary
11110011 11110101
11111000 111t1010
11111101 11111110
11111111
Appendix
B
Specifications Analog Output
Single channel analog output. Voltage:
Current: Output isolation
12-bit output resolution. Accuracy (Integral Zero drift: *3OpV/OC (Voltage Output), Span tempco: *50ppmPC
1000
Settling Time to Output Slewing Manual Mode
Programmable Output Slew Rate: Current Output Voltage Compliance: 12V.
Voltage Output Drive Current:
conversions per second.
Output Protection:
(@
0-1
V,
fl
0-20mA,
+25%
V,
4-20mA.
to
and nominal power supply voltage).
0-5V,
500V
&
EN,
0-1
OV,
rms.
Differential Nonlinearity):
ma.
0.1
%FS
300pS
typ
(-FS
to
O.OlV/S
5mA
24OVAC
(current output), k30V (voltage outputs).
min,
M3000/4000
fl
OV.
0.1
21
.OclA/”C
(1
mS
max).
+FS):
5s.
(mA/S)
1
OmA
ma.
Specifications
%FSR
(Current Output).
to
(max).
lO,OOOV/S
(mA/S).
Analog
8-bit Analog Accuracy over Temperature
Digital
8-bit CMOS microcomputer.
Digital scaling and calibration.
Nonvolatile memory eliminates pots and switches.
Programmable data scaling (M4000).
Programmable High/Low output limits.
Programmable initial value
Programmable watchdog timer provides orderly shut-down in the event
host failure
Output
to
(M4000)-
Readback
Digital Converter.
(-25
(M4000).
to
+70°C):
-
2.0%FS
max.
of
B-2
M3000/4000
USERS
MANUAL
Digital
Communications
-
*
*
Power
Requirements: Unregulated +1 OV to +30Vdc, Internal switching regulator.
Protected against power supply reversals.
inputs
Voltage levels: +30V without damage.
Switching levels: High, 3.5V min., Low, 1 .OVmax.
InternaI pull up resistors for direct switch input.
RS-232C, Up to
User selectable channel address.
Selectable baud rates:
ASCII
Can be used with "dumb" terminal.
Parity: odd, even, none.
All
communications setups (address, baud rate, parity) stored in nonvolatile
memory using
Checksum
Communications distance up to 10,000 feet.
RS-485.
124
multidrop modules per host communications
300,
600, 1200,2400, 4800,9600,19200,38400.
format commandhesponse protocol.
EEPROM.
can
be
added
max
(Current Output).
to
any command
or
response.
0.75W
port.
ma
(Voltage Output), 1
.OW
Environmental
Temperature Range: Operating -25OC to
Storage -25°C to
Relative Humidity:
Mechanical & Dimensions
Case: Connectors: Screw terminal barrier plug (supplied).
ABS
with captive mounting hardware.
0
to
95%
noncondensing.
+70°C.
+85OC.
Specifications are subject to change without notice. All Keithley trademarks and trade names are the property of Keithley Instruments, Inc. All other
trademarks and trade names are the property of their respective companies.
Keithley Instruments, Inc. 28775 Aurora Road • Cleveland, Ohio 44139 • 440-248-0400 • Fax: 440-248-6168
1-888-KEITHLEY (534-8453) • www.keithley.com
Sales Offices: BELGIUM: Bergensesteenweg 709 • B-1600 Sint-Pieters-Leeuw • 02-363 00 40 • Fax: 02/363 00 64
CHINA: Yuan Chen Xin Building, Room 705 • 12 Yumin Road, Dewai, Madian • Beijing 100029 • 8610-6202-2886 • Fax: 8610-6202-2892 FINLAND: Tietäjäntie 2 • 02130 Espoo • Phone: 09-54 75 08 10 • Fax: 09-25 10 51 00 FRANCE: 3, allée des Garays • 91127 Palaiseau Cédex • 01-64 53 20 20 • Fax: 01-60 11 77 26 GERMANY: Landsberger Strasse 65 • 82110 Germering • 089/84 93 07-40 • Fax: 089/84 93 07-34 GREAT BRITAIN: Unit 2 Commerce Park, Brunel Road • Theale • Berkshire RG7 4AB • 0118 929 7500 • Fax: 0118 929 7519 INDIA: Flat 2B, Willocrissa • 14, Rest House Crescent • Bangalore 560 001 • 91-80-509-1320/21 • Fax: 91-80-509-1322 ITALY: Viale San Gimignano, 38 • 20146 Milano • 02-48 39 16 01 • Fax: 02-48 30 22 74 JAPAN: New Pier Takeshiba North Tower 13F • 11-1, Kaigan 1-chome • Minato-ku, Tokyo 105-0022 • 81-3-5733-7555 • Fax: 81-3-5733-7556 KOREA: 2FL., URI Building • 2-14 Yangjae-Dong • Seocho-Gu, Seoul 137-888 • 82-2-574-7778 • Fax: 82-2-574-7838 NETHERLANDS: Postbus 559 • 4200 AN Gorinchem • 0183-635333 • Fax: 0183-630821 SWEDEN: c/o Regus Business Centre • Frosundaviks Allé 15, 4tr • 169 70 Solna • 08-509 04 679 • Fax: 08-655 26 10 SWITZERLAND: Kriesbachstrasse 4 • 8600 Dübendorf • 01-821 94 44 • Fax: 01-820 30 81 TAIWAN: 1FL., 85 Po Ai Street • Hsinchu, Taiwan, R.O.C. • 886-3-572-9077• Fax: 886-3-572-9031
© Copyright 2001 Keithley Instruments, Inc.
Printed in the U.S.A.
4/02
Loading...