IND 560 Shared Data v-2
IND 560 Shared Data v-2
IND560
Terminal
Shared Data Reference
www.mt.com
64058660
(06/08).02
IND560 Terminal Shared Data Reference
Table of Contents
Introduction and Overview ............................................................................. 1 H
Command Triggers....................................................................................................................................... 4 H
I. Scale Data.............................................................................................. 12 H
Refer to Section IX. Dynamic Weigh-In Motion for structures of Dyn-560-specific tables A3 and A4. ................................ 38
H
PLC Data................................................................................................................................................... 48 H
Barcode Data............................................................................................................................................. 50 H
The Shared Data (SD) Object is the central repository for all “system” data in the IND560. It is also the
primary interface for sending commands and exchanging data between local or remote Applications and the
Resident Scale Task (RST) in the IND560. The RST is the portion of the terminal firmware that specifically
controls weighing functions. The term “Application” is frequently used to indicate the use of Task Expert
custom programming, but also refers to non-TE custom programming that accesses and manipulates
Shared Data fields to carry out specific functions and processes.
IND560 Shared Data Design (vs. the JagXtreme)
B
Much of the design of the JagXtreme Shared Data is incorporated into the IND560. In the JagXtreme, the
Shared Data concept has been a very powerful and flexible tool. It provides mechanisms for both storing
system data and for providing interfaces among Local Applications, Remote Applications, and the Resident
Scale Task.
Shared Data Design Concepts
B
The following are some important JagXtreme Shared Data design concepts incorporated into the IND560
Shared Data:
• Shared Data provides Local and Remote Applications and the Resident Scale Task very fast access to the
permanently stored data. Shared Data access time is less than 350 microseconds.
• Shared Data uses a Shared Data Dictionary that is an alphabetically sorted list of all the fields in Shared Data.
The Shared Data Dictionary provides the name, storage type, data type, attributes, location, and length of each
field. Shared Data uses the dictionary to find and process Shared Data requests.
• Local and Remote Applications access a Shared Data field using a six-character UNICODE name. Names
provide consistency to Applications in accessing Shared Data fields in successive versions of Shared Data. The
names for existing fields will remain the same even when new fields are added or when new physical storage
locations are assigned to existing data. Shared Data uses a binary search of the names in the Data Dictionary
to find a field definition quickly.
• The Resident Scale Task uses an integer index number to access Shared Data. The index is an “enum” value
that provides a direct index to the Shared Data Dictionary for a particular field. It provides the Resident Scale
Task very fast access to the Shared Data since no search is required.
• Shared Data supports “callbacks” that alert a task when a Shared Data field changes. An Application or
Resident Scale Task can “Register a Callback Routine” for a particular Shared Data field. Then, when a task
writes a new value to a Shared Data field that has a registered callback, Shared Data calls the registered
callback routine.
• Shared Data supports both “native” and “string representation” access to data fields. However, Shared Data
always stores the data fields in their native format. When an Application accesses a Shared Data field in its
native data format, such as binary floating point or integer number representations, Shared Data simply copies
the data between its storage and the Application interface. When Applications access the Shared Data using a
string data format, Shared Data makes the data conversion between the native and the string data format.
• Shared Data provides access to an entire Shared Data block with a single read or write command. Applications
can access the block of data in either native format or string format. When the Application accesses the data in
native format, Shared Data returns a “C-style structure” that matches the native format of the data. When the
Application accesses the data in string format, Shared Data converts each individual field to its string format,
separating fields with a caret (‘^’).
• Shared Data provides access to a list of Shared Data fields. Applications can read a list of fields in either native
format or string format. If the Application accesses the data in native format, Shared Data returns a “C structure”
that matches the native format of the data. If the Application accesses the data in string format, Shared Data
converts each individual field to its string format, separating each field with a caret (‘^’).
1
IND560 Terminal Shared Data Reference
• Shared Data provides a checksum on each protected Shared Data field. It verifies the checksum on power-up
and on each read access. It recalculates and stores the new checksum on each write access. When Shared
Data detects a checksum failure, it reports a system failure.
Several refinements and extensions in Shared Data are specific to the IND560, including extensions in its
organization, naming conventions, data types, field definitions, and functionality.
IND560 Shared Data:
• Provides a consistent naming convention among all Shared Data fields. It eliminates the “discrete trigger”
naming convention used in JagXtreme.
• Extends the Shared Data naming convention to allow more instances of Shared Data blocks.
• Reorganizes Shared Data into more “object-oriented” blocks that make it is easier for Application programmers
and users to understand how to use Shared Data.
• Standardizes and limits the supported data types to a small, defined, consistent group. IND560 Shared Data
supports Unicode string data type that is the standard in Windows CE. IND560 Shared Data does not support
any individual fields defined as “C-style Structures” because they always required special handling in Shared
Data in the JagXtreme.
• Reorganizes the Data Storage Types and data fields to make best use of the memory available on the IND560.
In particular, the terminal uses Flash memory to store protected setup fields that change infrequently. Protected
process fields that change frequently are stored in Battery-backed RAM (BRAM); dynamic fields in Dynamic
RAM; and scale calibration data in EEPROM on the scale boards.
• Maintains a Change History file that logs every change to the Protected Setup Shared Data fields. This forms a
service record that the customer or service technician can review to find or validate changes to the IND560
setup. Recording all process changes is becoming an important requirement for U.S. pharmaceutical
applications.
• Provides data access control on an individual field basis, rather than on a block basis as in JagXtreme.
IND560 has four levels of access security: Operator, Supervisor, Service, and Administrator.
• Validates changes to Protected Setup and Calibration EEPROM fields. It compares the new value with the range
of legal values in the Shared Data Dictionary. If Shared Data finds the new value is not legal, it does not update
the field and returns an error status to the Application.
• Permits an FTP connection to save Shared Data to and restore it from a PC.
Each Shared Data field has a six-character alphanumeric “name” that the Application uses to access the
Shared Data field. The name contains the class, instance, and attribute of the Shared Data variable, each of
which is two characters long. For example, Shared Data variable “sp0106” is the latched/unlatched target
setting of the single (instance) scale the IND560 will support at one time. The name is constructed as follows:
sp = Class = Full Target Process Data (Note: Class can be written as all uppercase or all lower case)
01 = Instance = Scale #1
06 = Attribute = Target Latch Type
2
IND560 Terminal Shared Data Reference
Dynamic Shared Data is process data that the Resident Scale Task or Applications dynamically create within
the IND560. The IND560 writes Dynamic Shared Data to Dynamic RAM memory, and it writes and reads
these fields very frequently. The IND560 does not save this Shared Data across a power-failure, but re-
initializes it to zero at power-up. The best example of Dynamic Shared Data is the Dynamic Scale Weight
data (WT).
Protected Process Shared Data
B
Protected Process Shared Data is persistent data that may be written and read many times. The Resident
Scale Task and Applications use this Shared Data to maintain the state of an active process. However, in
case of a power-failure the IND560 must save the data so the process can continue after power-up. The
IND560 writes this Shared Data to battery-backed RAM (BRAM) to save it across a power failure.
An example of Protected Process Shared Data is the state of a Material Transfer process, where you cannot
afford to throw out an incomplete batch of material after a power-failure. The IND560 must save its state so
the Material Transfer can continue after a power-up.
Writing BRAM Shared Data During Power-Down
A critical event occurs when the IND560 attempts to write to BRAM Shared Data just as the power goes down. The
IND560 writes part of a Shared Data field successfully, and then power drops below a valid-power threshold
before the IND560 can complete the write, causing a corrupted BRAM. Since writes to BRAM can occur frequently
in a process control environment, it is probable that this will happen at some point when the IND560 is running.
To protect against this potential problem, the IND560 does a two-stage write procedure whenever it writes to
BRAM:
• The IND560 first writes a write-in-progress flag, the new Shared Data field, its SD field index, and its checksum
to a temporary location in BRAM. When this write is successfully completed, the IND560 then writes the SD
field and its checksum to its actual location in BRAM. When this write is successfully completed, the IND560
clears the write-in-progress flag.
• At power-up, the IND560 checks the write-in-progress flag. If it is set, the IND560 writes the original SD field
from the temporary field and clears the write-in-progress field.
Protected Setup Shared Data is the persistent data that stores the unique configuration of the IND560. The
IND560 Setup Procedure typically writes this data once during the Setup procedure and then never writes it
again. Other processes may read it many times. The IND560 writes this Shared Data to Flash Memory to
save it permanently across a power-failure.
Writing Flash Shared Data During Power-Down
A critical window occurs when the IND560 attempts to write to Flash Shared Data just as the power goes down,
causing corrupted Flash Shared Data. The IND560 writes part of a Shared Data field successfully, and then power
drops below a valid-power threshold before the IND560 can complete the write.
The IND560 writes to FLASH Shared Data using the Windows CE O/S FLASH File System. It is a multi-stage
operation involving many writes to Flash to update the file system directory as well as the file. Writing to the Flash
itself is relatively slow.
To reduce the likelihood of this corruption, the IND560 only writes to the Flash during Setup. The IND560 never
writes to Flash Shared Data during normal operation. The period the IND560 spends in Setup is extremely small
compared to the time it spends in normal operation. Typically, the service technician sets up the IND560 once
and never accesses Setup again.
To protect against the potential corruption problem, the IND560 does a multi-stage write procedure whenever it
writes to FLASH:
• When the IND560 first writes the new Shared Data field data, it writes the SD field index and sets a write-in-
progress flag to temporary locations in BRAM.
3
IND560 Terminal Shared Data Reference
• After successfully completing this write, the IND560 then writes the SD field to its actual location in FLASH, in
the FLASH.bin file.
• It records the change in the change history log file.
• After successfully completing the write to flash, the IND560 clears the write-in-progress flag. Upon exiting setup,
the IND560 creates a backup copy of the FLASH.bin file.
• At power-up, the IND560 reads the FLASH.bin file into memory. If this fails, the IND560 checks for the presence
of a FLASH backup file. If it exists, it copies the flash backup and restores any additional entries from the
change history log file. The IND560 then checks the write-in-progress flag. If it is set, the IND560 writes the
original SD field from the temporary field and clears the write-in-progress flag.
Protected Scale Calibration Data is the persistent scale calibration data. The IND560 writes this Shared Data
to the EEPROM on the Scale boards to protect it across a power-failure. On power-up, it reads an image of
the EEPROM into the Protected Process BRAM Shared Data, where the Resident Scale Task and Applications
can read it. The IND560 only writes the EEPROM after a successful scale calibration.
Writing EEPROM Shared Data During Power-Down
A critical event occurs when the IND560 attempts to write to EEPROM Shared Data just as the power goes down.
The IND560 writes part of the EEPROM successfully, and then power drops below a valid-power threshold before
the IND560 can complete the write, causing a corrupted EEPROM.
To protect against this problem, the IND560 does a two-stage write procedure whenever it writes to EEPROM:
• The IND560 first writes a write-in-progress flag and the new EEPROM data into a temporary location in BRAM.
When this write is successfully completed, the IND560 then writes the data and its checksum to the EEPROM.
When this second write is successfully completed, the IND560 clears the write-in-progress flag.
• At power-up, the IND560 checks the write-in-progress flag. If it is set, the IND560 writes the EEPROM from the
temporary field and clears the write-in-progress field.
Command Triggers
B
The Resident Scale Task uses Shared Data callbacks for triggering its internal commands. Then, the RST
uses other Shared Data status fields for reporting the activity and the results of its commands. Typically,
command triggers reside in Dynamic Shared Data. Applications can also use Shared Data callbacks for
triggering commands. There are many fields in Shared Data that enable applications to define command
triggers.
Callbacks are a powerful mechanism for sending commands to the Resident Scale Task or to Applications
through writes to Shared Data. The destination task must first register a callback to Shared Data on its
designated command field. Then, local or remote processes may initiate a write to the field to trigger a
callback to the destination task. The IND560 designates the special Shared Data fields that can use
callbacks as “real-time” fields. In this document, “rt” designates real-time fields, while “na” designates non-
real-time fields that do NOT support callbacks.
Edge-Sensitive commands are also real-time fields, but the IND560 only makes a callback to process these
commands when the field transitions from zero to a non-zero value. In this document, “rc” designates edge-
sensitive command fields.
Application Commands to the Resident Scale Task
B
Applications can issue commands to the Resident Scale Task using the Shared Data Command Triggers.
The Application sets the Command Trigger to 1 to issue the command. This generates a callback to the
Resident Scale Task. The Resident Scale Task detects that the Command Trigger is set and processes the
command. When it is done processing the command, the Resident Scale Task sets the Command Trigger
back to 0.
4
IND560 Terminal Shared Data Reference
A Shared Data Command Status is associated with each Command Trigger. The Application can read the
Command Status to determine the completion status of the command. 0 indicates that the command was
successful, and 1 indicates the command is in progress. A status greater than 1 is a specific failure code.
The Application can monitor the Command Trigger or Command Status to know when the command is
complete.
For example, to issue a Tare Command to the scale, the Application sets Shared Data field wc0101 to 1.
Then, the Application monitors for the Shared Data field wx0101 to be set to 1, which indicates the
command is in progress. Then, it monitors for wx0101 to change again to get the completion status of the
command. The Resident Scale Task then sets wc0101 to 0 when it completes the command.
Data Format Types
B
The IND560 maintains a history of all changes to the Setup and Calibration Shared Data in a resident Flash
Memory file. There is a separate record for each changed field. The record contains the field name, date and
time, user ID, and the new contents of the field. It also maintains a history log of all Shared Data backups
and restores.
The Change History file serves the following purposes:
• It provides traceability of changes to Setup and Calibration data. It allows the customer or service technician to
find and view the changes to Shared Data. They can validate that the system has been setup properly and that
Shared Data contains only the authorized settings.
• It satisfies the FDA CFR 21 Part 11 regulations for the U.S. food and pharmaceutical industries for maintaining
strict control over the safety of their processes and for documenting any changes to their processes.
• In case of a catastrophic system failure, you can use an archived Change History file to reconstruct Shared
Data. To recover the system, you must first reset the system to the factory defaults and then use a utility to
apply the changes from the Change History file one at a time.
The Unicode format of each history record is:
“SSSSSS DDDDDD TTTTTT AUTHOR L VALUE”
Where:
• SSSSSS is the six-letter Shared Data Name;
• DDDDDD is the date of change from xd0103;
5
IND560 Terminal Shared Data Reference
IND560 Shared Data provides data access control for individual fields, rather than on a block basis like the
JagXtreme. The Shared Data Dictionary holds the “access privileges”. The “access privilege” attributes for
each Shared Data field determines how local and remote applications can access the fields. Generally,
anyone can read any Shared Data element. The notable exceptions are password fields, which only the
IND560 System modules may read. Hard-coding in Shared Data restricts read-access to the password
fields. The Shared Data Dictionary defines the write-access privileges on an individual field basis, according
to the class of the user.
There are four classes of user – Administrator, Service, Supervisor, and Operator. The Administrator class
always has the maximum possible write-access capability. However, not even an Administrator can write
into “Read Only” fields. Typical Read Only fields are Real Time Data fields that contain the weight data for
the scale.
There is no enforced class hierarchy below Administrator. Other classes have write-access to fewer Shared
Data fields. By convention, the Operator class has the fewest rights, and the Supervisor class is a superset
of the Operator class. Service rights could be as great as the Administrator level or complementary to the
Supervisor rights, according to the customer site needs. Shared Data fields have factory-default access
rights that meet most Application needs. In the default definition, each higher class has also write-access
privileges to all data assigned to lower classes.
To satisfy legal metrology regulations or customers’ security concerns, it is often necessary to limit terminal
write-access after the customer has installed the terminal. For example, no user of any class may change
setup parameters after a government inspector has certified and sealed the terminal.
The IND560 has a Security Switch on its main PCB. The service technician can mechanically seal the
IND560 to prevent tampering with the Security Switch. When in the UNSECURED position, authorized users
may write to Shared Data fields according to the “access privilege” bits in the Shared Data Dictionary. In the
SECURED position, NO users have write-access to Shared Data fields that previously had Administrator-only
write privileges.
Validating Setup Data
B
IND560 Shared Data validates changes to Protected Setup and Calibration EEPROM fields. It compares the
new value with the range of legal values stored in the Shared Data Dictionary. If Shared Data finds the new
value is not legal, it does not update the field and returns an error status to the Application.
Shared Data does not validate all fields. It only validates those that it can validate using a table of values. It
does not validate those fields that require special programming logic to validate.
Shared Data supports an Application command that returns the validation criteria for a particular field to the
Application so the Application can display the list of legal values.
6
IND560 Terminal Shared Data Reference
The Shared Data Dictionary has different validation criteria based on the type of validation required. Some of
the validation types include:
• Boolean validation. Only zero (0) or one (1) is a legal value.
• Range validation. Only values within a range are valid. The Data Dictionary contains the minimum and
maximum legal values. For example, integer values from one to five are valid, or floating-point values from 0.0
to 9.9 are valid.
• List validation. Only values in a list of values are valid.
• No validation.
After connecting to the Shared Data Server in the IND560, several commands are available for use. All
commands can be given in either upper- or lower-case letters. The quotation marks shown are for clarity
only and should not be transmitted. Valid commands are described in the following sections.
Response Format: “read”, “write”, and “callback” message responses have a formatted header. The first
two characters indicate the status. “00” is the success status. “99” is a failure status. The next
character is the type of message, “r”, “w”, or “c”. The next three characters are a sequence number,
which cycles from 001 to 999, and then starts over again.
“user” Command
A client must login to the SDSV using the “user” command before accessing Shared Data. The server
validates the username and sends a response message back to the user. The SDSV responds with
[Access OK] if no password is required or [Enter password] if a password is required.
A client can use only the “user”, “pass”, “help” and “quit” commands before successfully logging on.
Format: user username
Response 1: 12 Access OK
Response 2: 51 Enter Password
“pass” Command
The user enters a password using the “pass” command. If the password is valid, the server displays the
[Access OK] message. If not valid, the server displays the [No access] message.
Format: pass password
Response: 12 Access OK
“help” Command
The “help” command returns the list of the valid commands for the IND560.
Format: help
Response: 02 USER PASS QUIT READ R WRITE W SYSTEM CALLBACK XCALLBACK GROUP
RGROUP XGROUP CTIMER LOAD SAVE HELP NOOP CONTOUT XCOUNTOUT PRINTOUT
XPRINTOUT
“quit” Command
The “quit” command terminates the TCP/IP connection.
Format: quit
Response: 52 Closing connection
7
IND560 Terminal Shared Data Reference
“read” Command
The “read” command allows the client to read a list of one or more Shared Data fields. An individual
field or an entire block can be read. If more than one field is requested, the fields should be separated
by a space. If successful, the server responds with a separated list of values in ASCII format. The server
separates individually requested fields with a “~”; and Shared Data separates items within a block with
a ”^”. If an error is detected, the server responds with an error message. The maximum length of the
reply message is 1,024 characters.
Format: read SDV#1 SDV#2
Example 1: read wt0101 wt0103
Response 1: 00R003~ 17.08~lb~
Example 2: read sp0100 (reads entire block)
Response 2: 00R012~XP/0163M^1^^78^20.500000^0^0^0^1.200000^3.500000^0.1500
00^0.050000^0^0.000000^0.000000^0^0^0^0^0^0^1^0.000000^0.00000
0^0.000000^0.000000^0.000000^~
The “read” command can be abbreviated to the letter “r” if desired.
“write” Command
The “write” command allows the client to write a list of one or more Shared Data fields. A single field or
an entire block can be written. The maximum length of the write message is 1,024 characters. Items
within a list of writes must be separated with a “~”. You must separate items within a block with a “^”.
Format: write SDVblock#1=value1^value2^ value3 write
SDV#1=value1~SDV#2=value2~SDV#3=value3
Example1: write ak0100=abc^def^hij^lmn (writes fields into a block)
Response 2: 00W006~OK
Example 2: write aj0101=12.56~aj0150=987.653 (writes fields within a list)
Response 2: 00W007~OK
The “write” command can be abbreviated to the letter “w” if desired.
“system” Command
The “system” command returns a description of the IND560 terminal. This is the same information that
is shown on the Recall System Information screen of the IND560.
Format: system
Response: 0S005~ SYSTEM INFO RECALL
Model: IND560
S/N:
ID1: IND560
ID2: METTLER_TOLEDO
ID3:
Software
Boot: L2.00 181348
Standard: L3.00 181349
Hardware
8
IND560 Terminal Shared Data Reference
Analog L/C
Opt: E-Net
“noop” Command
The “noop” command performs no task; it checks communication and returns an [OK] response
message.
Format: noop
Response: 00OK
“callback” Command
The “callback” command allows the client to define one or more fields for which the Shared Data Server
sends a message to the client when the value of the callback field changes. Only certain SDV may be
included in a callback command. These SDV are noted by an “rc” or “rt” status in the column after the
structure column in the Shared Data document. Mainly, these are triggers that are used in the terminal.
SDV with a status of “na” are not real-time SDV and cannot be used in callbacks.
The callback message contains one or more changed field names and the new value for each field. A
maximum of twelve callback fields can be specified. The “ctimer” command specifies the minimum
time between repeated callback messages.
Format: callback SDV#1 SDV#2
Example: callback st0102 st0103 st0104
Response 1: 00B001~OK
Response 2: 00C005~st0102=0^st0103=1^st0104=1 (sent when all of the SDV change)
Response 3: 00C006~st0104=0 (sent when only st0104 changes)
“xcallback” Command
The “xcallback” command allows the client to remove one or more callback fields from the list of current
SDV.
Format: xcallback SDV#1 SDV#2 or xcallback all (removes all callbacks)
Example: xcallback st0102 (removes st0102 SDV from callback)
Response: 00X008~OK
“group” Command
The “group” command allows the client to define a group of callback fields. The Shared Data Server
sends a message to the client when the value of any field in the group changes. The group callback
message contains the group number and the values of all fields in the group in the defined order. The
“ctimer” command specifies the minimum time between repeated callback messages. The maximum
number of groups is six, and the maximum number of fields in a group is twelve.
Format: group n SDV#1 SDV#2 SDV#3 (where n = the number of the group 1–6)
Example: group 5 st0103 st0104 st0107 (groups target feeding and tolerance SDV into one
group)
Response 1: 00B019~OK
Response 2: 00C026~group5=0^1^0 (indicates status of all 3 SDV in group 5 whenever any one
of them changes)
9
IND560 Terminal Shared Data Reference
“rgroup” Command
The “rgroup” command allows the client to define a group of fields. The client can use the group
number to read the entire group at once using the READ command. The maximum number of groups is
six, and the maximum number of fields in a group is twelve.
Format: rgroup n SDV#1 SDV#2 (where n = the number of the group 1–6)
Example: rgroup 3 di0101 di0102 di0103 di0104 (groups all discrete inputs into one group that
can be read with a single read command)
Response: 0G008~group=3, number fields=4
Read Example: r 3
Response: 00R009~1~0~1~0~
“xgroup” Command
The “xgroup” command allows the client to remove one or all groups.
Format: xgroup n (where n = the group number 1 - 6) or XGROUP all (removes all groups,
including “contout” and “printout”)
Example: xgroup 5 (cancels group 5)
Response: 00X011~group=5
“contout” Command
The “contout” command allows the client to define the continuous output string as a callback field. The
Console Print Server sends a message to the client at each continuous output. The continuous output
message is either in the Standard METTLER TOLEDO Continuous Output format or in a continuous
template format. The “ctimer” command specifies the minimum time between repeated callback
messages. The “xcontout” command removes the registration from the terminal and the communication
will stop.
Format: contout
Response: 00G008~number CONTOUT streams=1
When a continuous output occurs to the Ethernet port, the data will be sent to the client formatted as
selected in setup.
Data: 00C004 4! 354 236
00C005 4! 354 236
“xcontout” Command
The “xcontout” command allows the client to remove the continuous output callback, thus ending the
registration so no further continuous outputs will be available.
Format: xcontout
Response: 00X070~CONTOUT
“printout 1” Command
The “printout” command allows the client to define a Demand Print Stream as a callback field. The
Demand Print Streams include demand print (triggered by the scale) and custom triggers (triggers 1, 2,
and 3). The console print server sends a message to the client at each print output. Since print
messages can span multiple message blocks (depending upon size), the start of the print message
has a <dprint> tag and the end of the message has a </dprint > tag. To register all Print Streams,
10
IND560 Terminal Shared Data Reference
simply use the command “printout”. To register a single or select multiple printouts, use command
“printout 1” or “printout 1 3” (for example). After registering for the demand output, the client will receive
the appropriate data stream. The “ctimer” command specifies the minimum time between repeated
callback messages. The “xprintout” command removes the registration from the terminal and the
communication will stop.
Format: printout 1
Response: 00G008~number PRINTOUT streams=1
When a demand output occurs to the Ethernet port, the data will be sent to the client formatted by the
selected template. There will be <dprint> and </dprint> delimiters for the string.
Data: 00P004 <dprint> 22.08 lb
17.06 lb T
5.02 lb N
</dprint>
“xprintout” Command
The “xprintout” command allows the client to remove the print output callback, thus ending the
registration so no further demand outputs will be available.
Format: xprintout
Response: 00X070~PRINTOUT
“ctimer” Command
The “ctimer” command allows the client to set the minimum time between repeated callback messages
in milliseconds. The minimum allowable setting is 50 milliseconds and the maximum is 60 seconds.
The default value is 500 milliseconds.
Format: ctimer n (where n is the number of milliseconds)
Example: ctimer 1000 (set the callback timing to 1 second)
Response: 00T862~new timeout=1000
“csave” Command
The “csave” command saves the current callback and group settings into Shared Data for use later with
the “cload” command.
Format: csave
Response: 00L004~OK
“cload” Command
The “cload” command loads the callback and group settings from Shared Data into the shared data
server. The terminal will begin to service the loaded callback and group commands.
Format: cload
Response: 00L001~OK
11
IND560 Terminal Shared Data Reference
I. Scale Data
B
Scale Functionality
B
Attributes:
wt0100 Composite wt block Struct Na Composite of entire block
wt0101 Displayed Gross Weight S13 Rt Rounded Gross Weight shown in selected increment size.
wt0102 Displayed Net Weight S13 Rt Rounded Net Weight shown in selected increment size.
lb pounds, kg kilograms, grams, oz ounces, oztroy, dwt
wt0103 Weight Units S4 rt
pennyweights, metric tons, ton, or custom units name
wt0104 3rd Weight Unit Gross Weight S13 rt Shows the current displayed gross weight converted to 3rd units
wt0105 3rd Weight Unit Net Weight S13 rt Shows the current displayed net weight converted to 3rd units
lb pounds, kg kilograms, grams, oz ounces, lb-oz pounds &
wt0106 Auxiliary Weight Units (3rd Unit) S7 rt ounces, oztroy, ounces, dwt pennyweights, metric tons, ton, or
custom units name
wt0108 Displayed Rate S13 rt
Gross weight rounded to selected increment size, but displayed in
wt0110 Rounded Gross Weight D rt
SD at smallest division value possible.
Net weight rounded to selected increment size, but displayed in SD
wt0111 Rounded Net Weight D rt
at smallest division value possible.
Shows the current displayed gross weight converted to 3rd units and
Rounded 3rd Weight Unit Gross
wt0112 D rounded to selected increment size, but displayed in SD at smallest
Weight
division value possible
rd
rd Shows the current displayed net weight converted to 3 units and
Rounded 3 Weight Unit Net
wt0113 D rounded to selected increment size, but displayed in SD at smallest
Weight
division value possible
wt0114 Fine Rate D Rate displayed to the smallest division value possible.
wt0115 Scale Processing State By rt 0 = Disabled. 1 = Normal Weight Processing. 5 = Error.
Continuous Output Status Word
wt0116 By rt Status of bit A of Standard Mettler-Toledo Continuous
A
wt0117 Fine Gross Weight D rt Gross weight displayed to the smallest division value possible.
wt0118 Fine Net Weight D rt Net weight displayed to the smallest division value possible.
wt0119 Weight Range By rt 0, 1, 2, or 3
wt0120 Filtered Weight Counts D rt
wt0133 IDNet Restart Zero String S25 na Message specific to IDNet base.
“F MF”Message specific to IDNet base.
The general format of the message from the IDNet base is as
follows:
wt0134 IDNet Scale Update Rate S25 na
F M L x i [ i i ...] CR LF
x = actually adjusted value
i = adjustable values
wt0135 IDNet Scale Vibration Adapter S25 na “F MI” Message specific to IDNet base.
IDNet Weighing Process
wt0136 S25 na “F ML”Message specific to IDNet base.
Adapter
wt0137 IDNet Automatic Stability S25 na “F MS” Message specific to IDNet base
12
IND560 Terminal Shared Data Reference
Detection
wt0138 IDNet Auto-Zero Setting S25 na “F MZ” Message specific to IDNet base
wt0139 IDNet Software Part Number S12 na “P” Message xxxx-x-xxxx string from IDNet base
IDNet Calibration Identification
wt0140 S3 “I” Message 00 to 99 calibration count from IDNet
Code
Method:
The Resident Scale Task updates the Dynamic Weight Shared Data at every weight update, whenever the weight changes. The RST
converts the weight from the raw filtered counts to the Legal-For-Trade weight.
Method:
The Resident Scale Task maintains its scale process data in this block. This scale process data may change frequently, but must be
stored permanently. The Scale Tare Setup section describes how the RST uses the tare process data in this block.
13
IND560 Terminal Shared Data Reference
Methods:
For example, to issue a Tare Command to the scale, the Application sets Shared Data field wc0101=1.
After receiving the callback, the Resident Scale Task sets wx0101=1 to indicate the command is in progress. When the command is
complete, the Resident Scale Task sets wx0101=0 to indicate the command is successful or wx0101=2 to 255 as an error code. It sets
wc0101=0 so the Application can trigger the command again later. The Application can register a callback on wx0101 to monitor when
the command is complete and to get the completion status of the command.
14
IND560 Terminal Shared Data Reference
wx0117 Toggle High Prec. Wt. Status By rt 0=Success, 1=Command In Progress, 2-255=Specific error code.
wx0118 Switch to Display of Aux Units By rt 0=Success, 1=Command In Progress, 2-255=Specific error code.
wx0131 Motion Bl rt 0 = No. 1 = Yes.
wx0132 Center of Zero Bl rt 0 = No. 1 = Yes.
wx0133 Over Capacity Bl rt 0 = No. 1 = Yes.
wx0134 Under Zero Bl rt 0 = No. 1 = Yes.
wx0135 Net Mode Bl rt 0 = No. 1 = Yes.
wx0138 Weight Data OK Bl rt 0 = No. 1 = Yes.
wx0139 IDNET in Motion Error Bl rt 0 = No. 1 = Yes.
wx0141 Stored Weight Mode Bl rt
wx0145 X10 Weight Display Bl rt 1 = x10 mode, 0 = normal mode
wx0146 MinWeigh LOW Indication Bl rt 1 = Net weight below MinWeigh threshold
Methods:
The Resident Scale Task sets the first set of statuses to reflect the status of commands to the scale. The second set of statuses show the
dynamic run-time status of the scale weight.
Method:
This block contains Scale Setup Data that may change during run-time
15
IND560 Terminal Shared Data Reference
Attributes:
cs0100 Composite cs block Struct na Composite of entire block
65 = Analog Scale
71 = IDNet High-Precision Scale
cs0101 Scale Type By na
69 = Remote Scale
78 = None.
cs0103 Scale ID S21 na Text Identifier name for scale
0=none, 1=pounds, 2=kilograms, 3=grams, 4=metric tons,
cs0104 Auxiliary Weight Units By na 5=tons, 6=lb-oz,7=troy ounces, 8=penny weights, 9=ounces,
10=custom units
0 = Disable. 1 = Enable.
Enable Permanent High Enable high-precision weight display to include an additional
cs0105 Bl na
Precision Wt. decimal digit beyond the specified division size for permanent
display on IDNET bases
cs0107 Rate Period (Time Units) S2 rt No, Sec, Min, Hour
cs0108 Rate Weight Units By na 0 = None. 1 = Primary.
cs0112 Custom Units Name S13 na
cs0113 Custom Units Conversion Factor D na
0 to 9.9 Hz. 0 Hz disables filter.
Low-Pass Filter Corner
cs0114 D na The filtering routines select the closest available filtering setting to
Frequency
your selection and write it back into this field.
cs0115 Low-Pass Filter Poles By na 2, 4, 6, 8
For Analog Scale Bases only. 0 to 99 Hz.
cs0116 Notch Filter Frequency D na The filtering routines select the closest available filtering setting to
your selection and write it back into this field.
cs0118 Ultra-Stability Filter Enable Bl na 0 = Disabled. 1= Enabled. Not for use with process weighing.
cs0120 Units Switch Enable Bl na 0 = Disabled. 1= Enabled.
0 = Default (20 Hz)
1 = 20 Hz = High update rate for process control applications
Output Rate of Continuous
cs0121 By na 2 = 10 Hz = Mid speed update rate
Output
3 = 5 Hz = Low update rate for transaction applications
*Values other than 0, 1, 2, or 3 will result in a 20 Hz rate.
cs0125 Custom Units Increment Size D na Custom Units Increment Size
cs0129 MinWeigh Feature By na 0 = Disabled. 1 = Enabled.
cs0130 MinWeigh Entry Mode By na 0 = Calculated. 1 = Direct.
0 = Command is executed immediately regardless of motion.
1-98 = Terminal will wait from 1 to 98 seconds for motion before
cs0132 Timeout By na command is aborted.
99 = Terminal will wait indefinitely for a no-motion condition before
executing command.
cs0140 IDNet Restart/Reset S13 rt “F MR” Message specific to IDNet base
cs0141 IDNet Approval code S13 rt “ A “ Message Approval code for IDnet base, for example, “USA N”
cs0142 IDNet Scale Update Rate S25 na “F MF” Message specific to IDNet base
cs0143 IDNet Scale Vibration Adapter S25 na “F MI” Message specific to IDNet base
cs0144 IDNet Weighing Process Adapter S25 na “F ML” Message specific to IDNet base
IDNet Automatic Stability
cs0145 S25 na “F MS” Message specific to IDNet base
Detection
cs0146 IDNet Auto-Zero Setting S25 na “F MZ” Message specific to IDNet base
cs0147 IDNet Software Part Number S12 na “P” Msg xxxx-x-xxxx string from IDNet base
cs0148 IDNet Calibration Ident Code S3 na “I” Msg 00 to 99 calibration count from IDNet
16
IND560 Terminal Shared Data Reference
Methods:
FILTERING
The goal of filtering the weight counts is to remove the internal and external noise from the weight signal. Ideally, users of weight
indication would like instant response to a weight input (settling time = 0), and immunity from all signal disturbances. In practice, in
selecting a filter, you must trade off settling time and disturbance rejection to find an acceptable compromise.
There are two major classes of weighing applications: transaction and process weighing. In transaction weighing, a load to the scale
base is more or less a step input, and the user only wants the actual static weight value of the load. Most shipping, vehicle, food, and
service scales fall into this category. Settling time requirements typically range from 0.5 seconds in service scales to several seconds in
vehicle or livestock scales. Disturbance rejection requirements vary widely within this weighing classification, but usually there is a need
for a very stable final weight reading.
In process weighing, automation equipment or humans continuously add the load over some time. Even though only the final weight
reading may be preserved, knowledge of the time varying weight reading is important during the weighing process. Batching, filling, and
in-motion weighing fall into this category. Settling time requirements are usually more relaxed because the “final” settling time for a ramp
input is less than that of the same load applied as a step input. Disturbance rejection is important since many types of automation
equipment introduce vibrations. Stability of the “final” value is somewhat less important.
IND560 filtering has a large range of adjustment for both disturbance rejection and settling time to meet all Application requirements.
Since these two parameters are dependent, some experimentation is usually required to find the best fit for the Application.
The following describes the Analog Load Cell Interface filtering. The IND560 Analog Scale Interface provides a 366 Hz A/D sampling rate,
which permits highly effective digital filtering. Since most of the filtering is digital, it is easily adjusted over a wide range of selections via
soft switch setup to meet specific site needs. IND560 has three types of configurable digital filters:
1. Low Pass Filter
All weighing applications use the low pass filter. The user can specify the corner frequency of the pass band and the slope of the
transition band. The pass band extends from DC (0 Hz) to the corner frequency. The low pass filter accepts the frequencies within
this low-pass range with little or no attenuation, but attenuates frequencies above the pass band according to the slope of the
transition band.
The scale is measuring the DC signal (static weight), so it is tempting to make the corner frequency very low to reject all “noise”.
However, the narrower the pass band, the longer the delay or settling time before we get the final value. As the corner frequency is
increased, the scale will settle faster, but will also allow more noise through.
The transition slope describes the rate of change of the attenuation once outside the pass band. The steeper the slope, the more
effective a filter is at rejecting a disturbance that is near the corner frequency. Making the slope infinite will cut off all frequencies
above the corner. Again the price is delay; the steeper the slope, the longer the settling time.
The IND560 provides a multi-pole Infinite Impulse Response (IIR) low pass digital filter, with Service Technician control over both
the filter corner frequency and the sharpness of the transition band slope. The corner frequency is defined in Hz; its adjustment
range is 0.1 through 9.9 Hz. The number of filter poles defines the band slope. There can be 2, 4, 6 or 8 poles. This large range
of adjustability provides effective filtering for almost any situation.
2. Notch Filter
An ideal notch filter provides infinite attenuation at a single frequency, and little or no attenuation at other frequencies. This type of
filter is useful in special cases where there is a single noise frequency near or below the corner frequency of the low pass filter. In
such cases, use of the notch filter can provide additional attenuation for a troublesome noise source and may permit opening the
pass band of the low pass filter for a faster step response. The IND560 implements the notch filter as a Finite Impulse Response
(FIR) filter, and provides the fundamental notch plus additional notches at multiples of the fundamental notch frequency.
Specifying the notch frequency in Hz adjusts the notch filter. The notch filter is applicable to all weighing applications, but only to
the Analog Load Cell scale.
3. Ultra-Stability filter
Ultra-Stability Filtering algorithm is for use in transaction applications where it is very difficult to achieve stable weight readings
due to excessive motion on the scales. Examples are truck scales in very windy locations and livestock weighing scales. The
Ultra-Stability filtering algorithm uses the standard low-pass filtering as long as there is a rapid motion on the scale so that the
operator can also observe the weight changing. When the motion begins to die down, this algorithm switches to a very stiff filter
that strongly dampens any noise on the scale. Then, the operator can record a stable weight reading. Process weighing
applications cannot use the ultra-stability filter, since the non-linear action of the filter switching may cause inaccurate cutoffs in
batching or filling applications.
17
IND560 Terminal Shared Data Reference
Methods:
Tare is the weight of an empty container. The IND560 can mathematically eliminate this weight from the gross weight and show only the
contents, or net weight. The IND560 always displays the gross, net, and tare weights using the same display resolution and units. The
IND560 always has tare weight available for recall and display, and it always identifies the tare weight. A tare weight of zero is illegal.
There are several methods for capturing tare:
• Pushbutton Tare captures current weight reading as the tare weight upon operator command, at highest internal weight
resolution available. There must be no motion on the scale for 3 seconds.
• Auto-Tare captures the current weight as the tare weight when the current weight exceeds the upscale threshold weight,
wk0101, and the scale reaches a “no motion” state. The IND560 resets the auto-tare trigger when the weight falls below a
downscale threshold, wk0102, and the scale is in an optional stable weight condition. There must be no motion on the scale
• The IND560 accepts a Keyboard Tare or a Programmable Tare at either display resolution or full internal resolution. The
operator may recall tare on demand. Application specific software packages can set the Programmable Tare weight in wk--04.
The IND560 rounds the Tare to the scale display resolution before using it in calculations. Canadian W&M requires keyboard
tare to be entered at the scale display resolution.
Auto-Clear Tare operates in conjunction with Auto-Tare. It automatically clears the tare after the following sequence occurs: 1) weight
exceeds an upscale weight threshold, 2) a stable reading is taken, 3) weight falls below Auto-Clear Tare threshold (wk0103), 4) Auto-
Clear Tare is carried out. You may also set the IND560 to automatically clear tare after the IND560 prints.
Net Sign Correction delays the decision of which weighment is the gross weight and which weighment is the tare weight until a ticket is
printed. At that time, the IND560 compares the two weighments and takes the lower weight as the tare weight, so the net weight is always
a positive value. It resolves this dilemma:
• Weigh a full truck first and, after emptying the truck, take the tare weight of the empty truck to find the net weight of the contents.
• Take the tare weight of an empty truck first and, after loading the truck, take the full weight of the truck to find the net weight of
the contents.
18
IND560 Terminal Shared Data Reference
Tare Interlock, the only tare configuration field the Weights & Measures seal protects, enforces the following operations:
• Incremental chain tares only (Europe & Australia).
• Cannot perform chain tares (USA).
• Only capture tare in first range of a multi-range or multi-interval scale.
• Must capture Power-Up Zero before capturing a Tare weight.
• May clear Tare only at Gross Zero.
IDNET Tare Option. The IND560 enforces taking tare through the high precision base when the Legal-for-Trade switch is ON. The Legal for
Trade switch option takes precedence over the setup selection to manage IDNet Tare within the IND560 rather than within the high-
precision base.
For Multi-Interval weighing (Europe and Australia), you may take Pushbutton and Auto Tare in any interval. In Legal for Trade mode,
Preset Tare entries must be within the lowest interval. The IND560 generates an error message when the entry is too large. If not in Legal
for Trade mode, Preset Tare entries may be in any interval. In the U.S. Legal for Trade mode, all tare entries must be in the lowest
weighing range.
Methods:
Zero is the interval between –0.5d and +0.5d, where “d” is a division or display increment.
Center of Zero is the interval between –0.25d and +0.25d in most market regions. In Canada, Center of Zero is the interval between
-0.20d and +0.20d. Center of Zero is a Boolean system output that is TRUE when the display reading is in the center of zero range.
IND560 evaluates Center of Zero at each new weight update. Metrology regulations usually require that the scale must show a
Center of Zero status indication to the user at the primary weight display. Some jurisdictions require that the indication be present
only while in gross weight mode, others require it in both gross and net mode.
When the service technician calibrates the scale, the IND560 records the Calibrated Zero reading internally. The IND560 also
maintains a separate Current Zero reading that compensates for conditions that may change the scale so that it no longer indicates
zero when the platform is empty. Such conditions include thermal effects and the accumulation of matter on the scale. The Center of
Zero output is an indication of the quality of the Current Zero. There are several methods available to establish a new Current Zero
reading. In each case, there are limits applied to the acceptance of this command by the scale.
On system power up, the IND560 automatically attempts to establish a new Current Zero. The Power-up-Zero logic establishes a
Current Zero when the present scale reading is stable and falls within the allowed tolerance from Calibrated Zero. This Power-up-
19
IND560 Terminal Shared Data Reference
Zero tolerance is the percentage of the scale capacity, specified for (+) and (–) tolerance limits. The service technician can disable
Power-up-Zero.
Either the operator or a remote device can also attempt a Pushbutton Zero command. This command succeeds if the scale reading
is stable and falls within its allowed tolerance from the Calibrated Zero. The Pushbutton Zero tolerance limits are a percentage of
scale capacity, specified for (+) and (–) tolerance limits. The service technician can disable Pushbutton Zero.
The IND560 also provides Automatic Zero Maintenance or AZM. Within the AZM operating range, the IND560 makes small
adjustments to the Current Zero reading to drive the weight reading toward true numeric zero. This feature operates only within a
small range around true zero. The AZM moves toward zero at a rate of correction (correction amount per unit time) of 0.07
increments per second. zr0105 configures the operating range of this feature in number of scale increments. Setting zr0105 to 0
disables Automatic Zero Maintenance.
Under-Zero Divisions are the maximum number of display increments below zero that the scale will operate. When the weight falls
below the Under-Zero Divisions, the weight display shows only an error display, the Under Zero logical status output is TRUE, and
IND560 indicates that the weight transmitted is invalid. Setting the Under-Zero Divisions to 99 disables the under-zero check.
IDNET Power-Up Restart sets the power up operation of the IDNET base. When Restart = Disabled, the IND560/high precision base
clears the current tare and enforces a re-zeroing of the base after a restart of the base. When Restart = Enabled, the IND560
terminal/high precision base preserves the current zero and tare values after a restart of the base.
The IND560 protects the Zero Configuration Settings when the Weights and Measures seal is in place.
Method:
Each time a Demand Print transaction occurs, the IND560 adds the weight value to the totalization for the scale, according to the
setup selections in the TS block.
20
IND560 Terminal Shared Data Reference
ts0104 Clear Subtotal on Totals Print Bl na 0 = No. 1 = Clear the Subtotal after printing the Subtotals.
Only add Demand Print weight to totals under the following
conditions:
ts0105 Units for Adding to Totals By na 0 = Printing weight in Primary Units Only
1 = Printing weight in Secondary Units Only
2 = Printing weight in any units.
Method:
Scale Grand Totals, Subtotals, and Sequential Numbers are stored in the Process Data (tz) block.
Multi-Range Parameters
ce0104 Number of Ranges By na 1, 2, or 3
ce0105 Low Range Increment Size D na Increment size is in Calibration units
ce0106 Mid Range Increment Size D na Multi-ranging parameters are in Calibration units.
ce0107 High Range Increment Size D na Multi-ranging parameters are in Calibration units.
Scale Capacity in Single
Range Setup or Scale capacity when only one range is enabled.
ce0108 D na
Low-Mid Range Threshold Units are the same as Calibration units.
Switchpoint
Mid-High Range Threshold
ce0109 D na Multi-ranging parameters are the same as Calibration units.
Switchpoint
Highest Capacity in Multiple
ce0110 D na Scale capacity units are the same as Calibration units
Range Setups
5=tons
0=none
6=lb-oz
1=pounds
7=troy ounces
ce0111 Secondary Units By na 2=kilograms
8=penny weights
3=grams
9=ounces
4=metric tons
10=custom units
Calibration Parameters
0=none 3=grams
ce0119 Calibration Units By na 1=pounds 4=metric tons
2=kilograms 5=tons
21
IND560 Terminal Shared Data Reference
22
IND560 Terminal Shared Data Reference
Methods:
Motion/Stability is a measure of whether the weight has settled on the scale. Metrology regulations generally prohibit a weighing
system from recording a measurement before the system has settled. The RST uses the Scale Motion/Stability status as an interlock
for triggering a Pushbutton Tare command or for triggering a Print command. The IND560 examines the weight readings over a
period of time to determine Motion/Stability of a scale. The weight readings over a chosen interval of time T must not differ from one
another by more than the tolerance value V. The Service Technician can set the level for motion detection.
Over-Capacity Divisions are the number of display increments beyond the nominal scale capacity that the scale will operate. When
the weight display exceeds the Over-Capacity Divisions, the weight display shows only an error display, the Over-Capacity logical
status output is TRUE, and IND560 indicates that the weight transmitted is invalid. The Service Technician cannot disable the Over-
Capacity checking.
The Units of Measure that the IND560 fully supports are:
• MKS – metric tons (t), kilograms (kg), grams (g)
• Avoirdupois – tons (ton), pounds (lb)
• troy ounces (toz), pennyweights (dwt), ounces (oz), and custom units as secondary units only
The IND560 uses these fully supported units, as follows:
• Calibration Units define the units of calibration test weights.
• Primary Units are the preferred units of measure.
• Secondary Units are the alternate units when using units switching function. The IND560 can also display the Secondary units
on the main display
With Multiple Range weighing, there can be up to three weighing ranges and each has a threshold. Each weighing range extends
from zero to its range threshold. Each range has an associated increment size. The increment size and threshold value are larger for
each successive weighing range from the lowest to highest ranges. The difference between the largest and smallest increment size
is at most one decimal place. You manually set the increment sizes and thresholds in setup.
The IND560 only supports automatic selection of the “current weighing range”. When weight is increasing, the current weighing
range proceeds from the lower range to the next higher range once the weight exceeds the range threshold. Switchover to the next
higher range occurs at the range threshold. When weight is decreasing, the current weighing range returns from the current
weighing range to the lowest range only when the weight falls within half-a-division of zero.
The IND560 weight display must clearly indicate the current weighing range. The terminal indicates weighing ranges 1, 2, and 3
respectively. The terminal maintains the same decimal point position in the Displayed Weight even when the current weighing range
changes. There is, at most, one trailing, non-significant “0”. When right of the decimal point, the non-significant “0” must be in the
third place to the right of the decimal point. You may take a Tare in any weighing range. The Displayed Weight and Printed Weight
are always the same.
In Gross Mode, the IND560 determines the current weighing range by comparing the Fine Gross Weight to the range thresholds. If
the scale is within half-a-division of zero, the terminal returns to the lowest weighing range as the current weighing range. The
IND560 calculates the Displayed Gross Weight by rounding the Fine Gross Weight to the nearest weight increment for the current
weighing range.
In Net Mode, the terminal determines current weighing range by comparing the Fine Gross Weight to the range thresholds. If the
scale is within half-a-division of zero for gross mode, the terminal returns to the lowest weighing range as the current weighing
range. The IND560 terminal calculates the Displayed Net Weight by rounding the Fine Net Weight to the nearest weight increment
for the current weighing range. The IND560 calculates the Displayed Tare Weight by rounding the Fine Tare Weight to the nearest
weight increment for the current weighing range. Displayed Gross Weight = Displayed Tare Weight + Displayed Net Weight.
Multi-Interval weighing rules only apply when the scale base is a high precision base. There can be up to three weighing intervals.
Each weighing interval has a threshold. Each weighing interval extends from the threshold of the next lower interval to its threshold.
Each interval has an associated increment size. The increment size and threshold value are larger for each successive weighing
interval from the lowest to highest intervals. The high precision base sets the increment sizes and thresholds. The terminal only
supports automatic selection of the “current weighing interval”. The IND560 display must clearly display the current weighing range.
Displayed Weight and Printed Weight are always the same.
In Gross Mode, the IND560 determines the current weighing interval by comparing the Fine Gross Weight to the interval thresholds.
The terminal calculates the Displayed Gross Weight by rounding the Fine Gross Weight to the nearest weight increment for the
current weighing interval.
In Net Mode, the IND560 determines the “net weight current weighing interval” by comparing the Fine Net Weight to the interval
thresholds. It calculates the Displayed Net Weight by rounding the Fine Net Weight to the nearest weight increment for the “net
weight current weighing interval”. The terminal determines the “tare weight current weighing interval” by comparing the Fine Tare
Weight to the interval thresholds. It calculates the Displayed Tare Weight by rounding the Fine Net Weight to the nearest weight
increment for the “tare weight current weighing interval”. Displayed Gross Weight = Displayed Tare Weight + Displayed Net Weight.
23
IND560 Terminal Shared Data Reference
24
IND560 Terminal Shared Data Reference
wm0122 Last Used Day AL2 na Last day that the scale base ran at least one cycle.
Useage cycle counter.
Contains the number of times that the scale base exceeds 1% of
wm0123 Usage Cycles Per Day AL7 na
the capacity of the base in each of the last 7 days when the scale
base had at least one cycle.
Pointer to the next usage cycle day entry the the IND560 will
wm0124 Usage Cycle Day Pointer By na
update. Values 1-7.
Running average of daily peak load. IND560 stores value in
wm0125 Average Peak Load D na
primary units.
Cumulative use time in minutes. Contains the cumulative minutes
wm0126 Usage Time Counter UL na
for which the scale base weight is above 1% of the scale capacity.
Peak load on the scale base for one of the last 7 days when the
wm0127 Peak Load Per Day D na
scale base ran at least one use cycle.
Peak load on the scale base for one of the last 7 days when the
wm0128 Peak Load Per Day D na
scale base ran at least one use cycle.
Peak load on the scale base for one of the last 7 days when the
wm0129 Peak Load Per Day D na
scale base ran at least one use cycle.
Peak load on the scale base for one of the last 7 days when the
wm0130 Peak Load Per Day D na
scale base ran at least one use cycle.
Peak load on the scale base for one of the last 7 days when the
wm0131 Peak Load Per Day D na
scale base ran at least one use cycle.
Peak load on the scale base for one of the last 7 days when the
wm0132 Peak Load Per Day D na
scale base ran at least one use cycle.
Peak load on the scale base for one of the last 7 days when the
wm0133 Peak Load Per Day D na
scale base ran at least one use cycle.
Method:
The Scale Monitor counts significant processing events and errors. The Scale Monitoring Setup Block (CM) defines what events the
Scale Monitor watches. The FTP Shared Data transfer saves these usage counters but does not restore them.
All fields except for wm0112 will reset to zero (0) upon Master Reset.
Methods:
Calibration Checking
The IND560 can enforce Calibration Checking within a certain interval. The Service Technician specifies the interval either in number
of days or weighments. Calibration Checking helps the Service Technician test and certify the accuracy of the scale. The scale must
25
IND560 Terminal Shared Data Reference
weigh test weights within a specified tolerance in the specified number of locations on the scale platform. The Service Technician
can certify the scale “as found” if he knows that the scale is weighing accurately. The IND560 prints a receipt of the Calibration
Check procedure, and saves the results in the Calibration Check Log. The IND560 can disable the scale, issue a local alert, or email
a general alert when the calibration check fails.
26
IND560 Terminal Shared Data Reference
The Shared Data fields listed here in “II. Application Data” are fields that will be available for
custom programming when using the basic firmware for the IND560.
Refer to Section Error! Reference source not found. (Fill-560 Application Software), page
Error! Bookmark not defined., for Application Data fields that have been used in the Fill-560
Application software. When custom programming becomes available for the IND560, these
Fill-560 specific fields will be unavailable for use by the custom program.
Application Dynamic Commands and Events (AC)
B
Methods:
Applications may use this block of Shared Data for storing Dynamic integer fields. One use is exchanging integer data with remote
tasks over PLC or TCP/IP communications.
27
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for storing Dynamic floating point fields. One use is exchanging
floating point data with remote tasks over PLC or TCP/IP communications.
Methods:
Applications may use this block of Shared Data for storing Dynamic string fields. One use is for exchanging string data with remote
tasks over PLC or TCP/IP communications.
Methods:
Applications may use this block of Shared Data for storing Dynamic string fields. One use is exchanging an array of binary data
with remote tasks over PLC or TCP/IP communications.
28
IND560 Terminal Shared Data Reference
Attributes:
am--00 Composite am block Struct na Composite of entire block
am--01 Unicode LPRINT Message S1000 na
am--02 Trigger to Begin LPRINT By rc Set to 1 to initiate LPRINT command
0 = print in progress. 1 = LPRINT command complete. 2 – LPRINT
am--03 LPRINT Complete Status By rt
command failure.
am--04 LPRINT Debug Data Override By na Set to 1 to begin data debug on LPRINT printer
Application Console Out
am--05 S200 rt Application Output Messages for display on Virtual Console display
Message
Application Console Messages that are input from a Virtual Consle
am--06 Application Console In Message S100 rt
keyboard
am--07 Trigger to Begin Console Print By rc Set to 1 to begin Console Print
am--08 Console Print Complete Status By rt 1 = Console Print complete
am--09 Keyboard Data Ready Trigger By rc 1 = Keyboard Data ready
Methods:
An Application can use this structure to send and receive messages from a Virtual Console. The Virtual
Console consists of input messages from a Virtual Console keyboard, a Virtual Console display, and a
Virtual Console LPRINT device.
When LPRINT messages can span multiple blocks, the start of the print message must contain the <dprint>
tag and the end of the message must contain the </dprint > tag. The Application begins the LPRINT by
setting 1 in the “begin print” trigger. It must wait until it sees the print complete status before setting another
LPRINT block into Shared Data.
Application Integer Process Data (AP)
B
29
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for setting Dynamic statuses. One use is communicating status data with remote
tasks over PLC or TCP/IP communications.
30
IND560 Terminal Shared Data Reference
31
IND560 Terminal Shared Data Reference
Method:
Please read the method description in data block “SP” for the Full Target Process status The Application can read the status of the
Full Target operation from here.
32
IND560 Terminal Shared Data Reference
33
IND560 Terminal Shared Data Reference
Method:
Fields in “sp” class are applicable with Basic terminal functionality.
Method:
Simple Target Operation:
In its simplest form, a Comparator is a Target having two numeric data inputs and one binary output. One of the two numeric data
inputs is a Coincidence (or Target) Value, which an Application may update at any time. The other numeric data input is an
available shared data stream. You may associate the logical output of a Comparator Target with a physical Discrete Output or may
use as an internal status.
Binary Result = Source value <comparison operator> Coincidence Target value
34
IND560 Terminal Shared Data Reference
Method:
The Application can read or write the Discrete Output Statuses. It can only read the Discrete Input Statuses.
The Application or Ladder Logic can read or write these status bits to read or write the corresponding physical discrete inputs and
outputs.
The IND560 has four Discrete Inputs and six Discrete Outputs on its optional, internal Discrete I/O board.
Attributes:
ri--00 Composite ri block Struct na Composite of entire block
ri--01 to ri--04 Input Status 1-4 Bl rt 0 = Off. 1 = On.
ri--05 to ri--10 Output Status 1 - 6 Bl rt 0 = Off. 1 = On.
Method:
The ARM100 Remote Discrete I/O Unit attaches to the IND560 through a Serial port. There can be up to 3 ARM100 nodes. Each
node has 4 Discrete Inputs and 6 Discrete Outputs. The IND560 monitors the state of the Remote Discrete I/O using a unique Serial
I/O protocol that talks to the Remote I/O unit.
The Resident Scale Task records the state of the physical discrete inputs and outputs in Shared Data. The Application can read the
individual statuses. The Application can read or write the Discrete Output Statuses. It can only read the Discrete Input Statuses.
35
IND560 Terminal Shared Data Reference
Attributes:
dd--00 Composite dd block
Active Record
dd--01 Entry number of current record S8 na Column 1 - Entry number of the current database record
dd--02 Alphanumeric Key S16 na Column 2 - Alphanumeric Key
dd--03 Description field of current record S40 na Column 3 - Description field of the current record
dd--04 Data 1 field of current record S16 na Column 4
dd--05 Data 2 field of current record S16 na Column 5
dd--06 Data 3 field of current record S16 na Column 6
dd--07 Data 4 field of current record S16 na Column 7
dd--08 Data 5 field of current record S16 na Column 8
dd--09 Data 6 field of current record S16 na Column 9
dd--10 Data 7 field of current record S16 na Column 10
dd--11 Data 8 field of current record S16 na Column 11
dd--12 Data 9 field of current record S16 na Column 12
dd--13 Data 10 field of current record S16 na Column 13
dd--14 Data 11 field of current record S16 na Column 14
dd--15 Data 12 field of current record S16 na Column 15
dd--16 Data 13 field of current record S16 na Column 16
dd--17 Data 14 field of current record S16 na Column 17
dd--18 Data 15 field of current record S16 na Column 18
dd--19 Data 16 field of current record S16 na Column 19
dd--20 Data 17 field of current record S16 na Column 20
Database Usage
dd--31 Joined Table Bl na 1=yes
dd--32 Database Table Usage By na 0=None, 1=Target Table, 2=Tare Table
NO VALUE; This is a dummy entry that defines within the Shared Data
dd--33 Database Table Security By na
dictionary the security level for write access to the physical SQL CE table
# of Columns in Database
dd--34 By na Number of Columns used in table
Table
Report Format
Descriptive Name for the table, such as, CUSTOMER, PRODUCT,
dd--41 Table Descriptive Name S40 na
TARGET, or TARE TOTALIZATION
dd--42 Report Header Print Template By na Template Number 0 = None, 1 -10
dd--43 Report Body Print Template By na Template Number 0 = None, 1 -10
dd--44 Report Footer Print Template By na Template Number 0 = None, 1 -10
36
IND560 Terminal Shared Data Reference
Statistics
dd--51 Number of Entries in Table US na The maximum is 999
dd--52 Number of Reads from Table UL na Running read count
dd--53 Number of Writes to Table UL na Running write count
dd--54 Average Read Access Time US na In milliseconds
dd--55 Average Write Access Time US na In milliseconds
dd--56 Last Read Access Time AL2 na In 100 nanosecond intervals since 1601
Column Names
dd--61 Name for Column 1 S16 na Corresponds to dd--01 entry
dd--62 Name for Column 2 S16 na Corresponds to dd--02 entry
dd--63 Name for Column 3 S16 na Corresponds to dd--03 entry
dd--64 Name for Column 4 S16 na Corresponds to dd--04 entry
dd--65 Name for Column 5 S16 na Corresponds to dd--05 entry
dd--66 Name for Column 6 S16 na Corresponds to dd--06 entry
dd--67 Name for Column 7 S16 na Corresponds to dd--07 entry
dd--68 Name for Column 8 S16 na Corresponds to dd--08 entry
dd--69 Name for Column 9 S16 na Corresponds to dd--09 entry
dd--70 Name for Column 10 S16 na Corresponds to dd--10 entry
dd--71 Name for Column 11 S16 na Corresponds to dd--11 entry
dd--72 Name for Column 12 S16 na Corresponds to dd--12 entry
dd--73 Name for Column 13 S16 na Corresponds to dd--13 entry
dd--74 Name for Column 14 S16 na Corresponds to dd--14 entry
dd--75 Name for Column 15 S16 na Corresponds to dd--15 entry
dd--76 Name for Column 16 S16 na Corresponds to dd--16 entry
dd--77 Name for Column 17 S16 na Corresponds to dd--17 entry
dd--78 Name for Column 18 S16 na Corresponds to dd--18 entry
dd--79 Name for Column 19 S16 na Corresponds to dd--19 entry
dd--80 Name for Column 20 S16 na Corresponds to dd--20 entry
Method:
An Application can use the Miscellaneous fields in this block maintaining Database Table records on a per scale
basis. The Application can set these fields in a print template for printing by the RST.
A1 - Tare Table
SD Field DB Field Name Type Len Description
dd0201 Record number
dd0202 Alphanumeric Key ID A/N 16 Tare ID
dd0203 Description Description A/N 40 Tare Description
dd0204 Data1 Tare N Tare Value
Weighing Unit (see td0125
dd0205 Data2 Unit N
for unit designations)
dd0206 Data3 n N Total Count
dd0206 Data4 Total N Total Weight
A2 - Target Table
SD Field DB Field Name Type Len Description
dd0301 Record number
dd0302 Alphanumeric Key ID A/N 16 Target ID
dd0303 Description Description A/N 40 Target Description
dd0304 Data1 target N Target value
37
IND560 Terminal Shared Data Reference
Refer to Section IX. Dynamic Weigh-In Motion for structures of Dyn-560-specific tables A3 and A4.
B
Method:
The Control Panel uses the Target Settings for building a table of Targets.
The Control Panel uses the Global Tare Totalization Settings for building a Tare Settings Table. The Formatted Output Server (FOS) in
the Resident Scale Task adds the weight for each completed transaction to the Tare Totalization totals.
38
IND560 Terminal Shared Data Reference
Attributes:
td0100 Composite td block
Active Tare Table Record
td0102 Active Tare Record ID S16 na Alphanumeric Key
td0103 Description S40 na Description field of active Tare Table record
td0104 Value S16 na Tare value of active Tare Table record
1 = lb 7 = ozt
2 = kg 8= dwt
td0105 Units S16 na
3=g 9 = oz
5=t 11 = ton
td0106 ‘n” Value S16 na n = number of transaction accumulated in active Tare Table record
Accumulated weight of “n” number of transaction of active Tare Table
td0107 Total S16 na
record
Active Target Table Record
td0122 Active Target Table ID S16 na ID of active Target Table record
td0123 Description S40 na Description field of active Target Table record
td0124 Target S16 na Target value of active Target Table record
1 = lb 7 = ozt
2 = kg 8= dwt
td0125 Units S16 na
3=g 9 = oz
5=t 11 = ton
td0126 Spill S16 na Spill value (if applicable) of active Target Table record
td0127 Lower Tolerance S16 na Lower tolerance value of active Target Table record
td0128 Upper Tolerance S16 na Upper tolerance value of active Target Table record
td0129 Fine Feed S16 na Fine Feed value (if applicable) of active Target Table record
Method:
These shared data fields will report values only if the active Tare or Target record was retrieved directly from the Tare or Target Table.
If manual changes are made to the active Tare or Target record, these shared data values will report empty fields.
These shared data fields are only applicable for standard functionality Over/Under or Material Transfer modes of operation. They do
not work for the Fill-560 Application Software.
39
IND560 Terminal Shared Data Reference
Method:
The Resident Scale Task maintains the online/offline status for all nodes in its local cluster. The Application can read theses
statuses.
40
IND560 Terminal Shared Data Reference
Method:
You can establish Data Connections to Serial Ports and TCP/IP (Ethernet) Connection Ports. There is a separate instance of the DC
class for each data connection. You may only specify a single output type OR a single input type in each connection instance – not
both. An SICS command connection is an exception; it is both and input and an output connection.
Here are some rules for configuring data connections:
• Demand Print and Continuous Print connections CANNOT share the same I/O port.
• An input connection CANNOT share the same I/O port with another input connection.
• Multiple demand print and custom print connections CAN share the same I/O port.
• Demand OR Continuous Print connections CAN share an I/O port with a single Input-only connection, such as CTPZ-
command connection or a bar-code reader connection.
• A SICS-connection must have exclusive use of its I/O port since it does bi-directional I/O.
• Scales and Remote Discrete I/O devices must have exclusive use of their I/O port.
• Custom applications must have exclusive use of their I/O ports for communicating bi-directionally with a custom device.
However, they CAN share a port with demand print and custom print connections when the Application is doing output-only
operations.
• Only the first LPRINT connection definition is valid.
41
IND560 Terminal Shared Data Reference
The RST uses the “Output Trigger” parameter for determining which device or command can trigger the print operations for the
connection. Shared Data commands for each device initiate the demand or continuous print operations. Shared Data commands
trigger the custom print operations.
The TCP/IP Console Print Server enables one or more remote client programs to receive print data from the IND560. The remote
clients can be WINDOWS PC Visual Basic applications or other TCP/IP host programs. You must first enable the TCP/IP Console
Print Server Print Connection. Then, whenever a remote client establishes a TCP/IP connection, the Console Print Server sends the
LPRINT data, the Demand and Custom print data, and the Console Log data to the client across the TCP/IP connection to the remote
client. The Console Print Server uses TCP/IP port 1701 for establishing connections.
The IND560 Console Print Server sends only the specific output selected by the Output Connection and LPRINT device parameters in
the TCP/IP data connection instances.
In order to route print connection data to a remote IND560 terminal I/O port, you must setup an output connection to a TCP/IP port
locally. In the remote IND560 terminal, you must configure a “Network Print Client” to fetch the data and route it to the proper I/O
port.
The TCP/IP Console Print Server routes input data that it receives as keystrokes to the Softkey Manager/ Keyboard Routing. Then,
using this connection, a remote client can submit keystrokes to the IND560.
Each Demand print, Custom print, or LPRINT message have a <dprint> and </dprint> delimiter tags to denote the beginning and
end of the message, and they may span multiple messages. The Print Client and destination Serial Services task must print the data
within the beginning and ending tags sequentially and consecutively so that messages from different terminals do not become
intermixed.
42
IND560 Terminal Shared Data Reference
nf0114
Write Access Level for Logins
to By na 1=Operator, 2=Supervisor, 3=Service, 4=Administrator
1-6
nf0119
nf0102 and nf 0114 are read only and always 4 = Administrator
nf0103 is always “anonymous” and can be deleted or modified.
Method:
The FTP Server listens on a TCP/IP port for a remote FTP client to initiate a connection with the FTP Server.
Once the Client and Server establish the connection, the FTP client initiates the file transfers to and from the
Server, using standard FTP Protocol commands.
Access to the files on the IND560 is restricted based on the access privilege level of the user.
Users with “Administrator” rights can write the entire FLASH file system (“\Storage Card”). Only
Administrators have write access to the following files/directories:
• \Documents and Settings\
• \IND560\
• \Startup\
• \AutoCE.ini
• \NK.BIN
All users have read only access by default. Users with an access level of at least the “Supervisor” access
level have write access to all files & directories except those listed above that are restricted to Administrator
write access. The “anonymous” user has read only access.
IND560 Shared Data is accessible in the \IND560\SD directory. Files available are:
• BRAM.dmt
• FLASH.dmt
• EEPROM.dmt.
Users with the “Administrator” access level have read and write access to these files. All other users have
read only access to these files.
Only “Administrators” have read access to the Terminal Access Security Setup (xu) block and the FTP Server
Setup (nf) Access block.
TCP/IP/Ethernet Network Setup (NT)
B
43
IND560 Terminal Shared Data Reference
Method:
The Demand Print command is a “transaction” print command. A local operator, an external operator, or a
remote device can generate a print command. When the Resident Scale Task receives a Print command, it
formats and stores weight and other data as a transaction record for the scale. It forwards the transaction record
to one or more destinations, which could include a printer, Alibi (transaction) memory, or a remote device.
44
IND560 Terminal Shared Data Reference
Method:
The Application uses this Shared Data block to activate custom triggers and to monitor their completion
status.
Print Templates Setup (PT)
B
45
IND560 Terminal Shared Data Reference
pt0111
to Print Literals 1-20 S51 na Fixed Text Messages used in Templates
pt0130
Method:
Templates are a method to configure both data content and data format in print messages. A Template is a
user specific “program” that the RST Template Interpreter executes to build a print message. A Template
defines a serial data stream that the IND560 transmits to a printer, sends to a host computer, or writes to a
data file. The IND560 supports template nesting. Templates make use of the encapsulation of related data
fields. For example, weight data is not composed of 10 isolated fields, but is instead a single object having
many highly correlated attributes, such as gross, tare, net, units, and tare mode. These attributes remain
internally consistent at all times.
The Weights and Measures seal does not protect Template editing.
A Template Editor that runs in the IND560 Control Panel or in a remote PC Setup program enables the user
to build the Template.
Appendix B in the IND560 Technical Manual describes the Default Template formats.
Report Print Templates Setup (RT)
B
Method:
RST uses the Report Template settings for printing the Standard Terminal reports.
Command Input Setup (MS)
B
Attributes:
ms--00 Composite dc block Struct na Composite of entire block.
0 = None, 1 = Clear, 2 = Preset Tare, 3 = Print, 4 = Switch Units, 5 =
ms--01 Function Type By na
Switch Unit 1, 6 = Switch Unit 2, 7 = Tare, 8 = Zero
46
IND560 Terminal Shared Data Reference
47
IND560 Terminal Shared Data Reference
PLC Data
B
48
IND560 Terminal Shared Data Reference
0 = Disabled. 1 = Enabled.
AB RIO Block Transfer supports the ability to read and write
Shared Data. For Profibus, this field enables reading and
pl0107 Enable Explicit Messaging Bl na
writing of Shared Data IO blocks appended to cyclic data
messages. Ethernet/IP contains explicit messaging as a part
of its standard protocol.
AB RIO: DeviceNet:
0 = 57.6K 0 = 125K
pl0110 AB RIO Data Rate By na
1 = 115.2K 1 = 250K
2 = 230.4K 2 = 500K
pl0111 AB RIO Starting Quarter By na 1–4
pl0112 AB RIO Last Rack Bl na 1 = Yes 0 = No
0 = Little Endian
1 = Big Endian
pl0113 Byte-Ordering of PLC Data By na 2 = JagABRIO Endian
Please refer to the method description below for the definition
of the byte
In “Application Processing” Data Format mode (Task Expert),
Size of Application Cyclic Input
pl0115 US na the Application must set the exact size of the input
to PLC
assemblies.
In “Application Processing” Data Format mode (Task Expert),
Size of Application Cyclic Input
pl0116 US na the Application must set the exact size of the output
from PLC
assemblies.
pl0120 Rotation S10 na Restore user configuration about slot 1 rotation.
pl0121 Rotation S10 na Restore user configuration about slot 2 rotation.
pl0122 Rotation S10 na Restore user configuration about slot 3 rotation.
pl0123 Rotation S10 na Restore user configuration about slot 4 rotation.
pl0125 Ethernet/IP IP Address S40 Na IP Address for Ethernet/IP
pl0126 Ethernet/IP Subnet Mask S40 Na Subnet Mask for Ethernet/IP
pl0127 Ethernet/IP Global Address S40 Na Subnet Mask for Global Address
pl0128 DeviceNet Option Node Address By na DeviceNet station ID 0-63
Method:
The IND560 RST supports three general methods for building PLC output messages and processing PLC Input Messages:
1. The RST uses Internally-Defined PLC input and output messages. These messages have a fixed format. The RST builds the
output messages and processes the input messages based on this fixed format.
2. The RST uses assembly templates. The user can build templates defining the specific format of the input and output PLC
messages. The templates consist of a list of Shared Data field names and some minimum formatting definitions. The RST
processes the PLC messages based on these templates.
3. The Application processes the PLC messages. The RST sends the Output-to-PLC messages from the Dynamic PLC IO
Shared Data Block (PI). It writes the Input-from-PLC messages to the same block and alerts the Application that there is a
new message.
For the Internally-Defined PLC messages, the RST can support up to 12 device “slots” in the messages. That is, there can be up to
12 devices reporting weight and accepting commands. The devices can be either scales or flow meters. The devices may reside in
the local IND780, or they may reside in a remote IND780 within the cluster.
PLC Data Byte-Ordering – pl0113
49
IND560 Terminal Shared Data Reference
Rotation is only supported in Floating Point mode. The following AB RIO and Profibus commands create the
correct strings of “Y”s and “N”s to set up the desired rotations.
• Command 03 (PLC RESET ROTATION) will fill PLC rotation SDV (Either pl0120 or pl 0121 for AB RIO. pl0121,
pl0122, pl0123 or pl0124 for Profibus) with “NNNNNNNNN”
• Command 40 will fill ‘Y’ to the first byte
• Command 41 will fill ‘Y’ to the second byte
• Command 42 will fill ‘Y’ to the third byte
• Command 43 will fill ‘Y’ to the 4th byte
• Command 44 will fill ‘Y’ to the 5th byte
• Command 45 will fill ‘Y’ to the 6th byte
• Command 46 will fill ‘Y’ to the 7th byte
• Command 47 will fill ‘Y’ to the 8th byte
• Command 48 will fill ‘Y’ to the 9th byte
Barcode Data
B
Method:
Resident Serial Services parses a Barcode Input string based on the message definition in the Barcode
Template (bt) Setup fields, and stores the parsed message in the Shared Data Message Block. The Data
Connections (dc) Setup fields assign the bt input message to a Serial port.
The Serial Services buffers serial port input data. The Serial Services copies the next message from its buffer
into the mb0101 Shared Data field, and sets the mb0103 trigger to alert the Application that a new
message is ready. When the Application has completed processing the current message block, it must set
the mb0102 trigger to the clear the message block. Then, the Serial Services can again copy the next
message from its buffer to the message block.
50
IND560 Terminal Shared Data Reference
Method:
Resident Serial Services parses a Barcode Input string based on the message definition in the Barcode Template (BT) Setup fields
and stores the message in the Shared Data Message Block. The Data Connections (DC) Setup fields assign the BT template
processing to a Serial or USB input port.
51
IND560 Terminal Shared Data Reference
Method:
This block contains power-up settings for the Weight and Delta Track Display. Changes only take effect on
power-up. To change weight display appearance dynamically, make settings in the XB block.
Dynamic Weight Display Commands (XB)
B
Method:
The Control Panel or custom Application can set this block to set parameters for the display.
52
IND560 Terminal Shared Data Reference
Methods:
This block shows the current state of the IND560 system.
53
IND560 Terminal Shared Data Reference
The IND560 only updates date and time fields when an Application or RST attempts to access these fields.
The IND560 updates the clock tick fields regularly so an Application may use these fields for periodic
callbacks. xs0110 and xs0111 contain the format specification for the date and time.
The Consolidated Weight Stream (CWS) is a string that contains the weight on the scale on the IND560
terminal.
• Within this field, the weight is metrologically consistent among gross, net, and tare weights. We cannot
guarantee this when the Application does individual reads because they occur at different times.
• It is more efficient to get all the data in one access instead of multiple accesses.
• An Application can access the CWS either locally or remotely.
The IND560 sets data in the CWS according to field xp0102, where the Application subscribes to the fields
it wants reported. The format of xp0102 is S<ABCDE>T where ABCDE represents the scales, S represents
the selected scale and T is the Time. “S” is mutually exclusive from ABCDE.
The Consolidated Weight Stream has the following format: stream <1><US><stream 2><US><stream n>,
and it may contain time, display, and Application messages inserted in the output stream, with <US>
separating the fields. Each weight stream has the following contents:
Range: 1 to 20
<Node ID> 1N
IND560 is fixed at 1
Range: A to E.
<Scale ID> 1A If selected scale, range is in lower case <a to e>.
It is always A in the IND560.
Bit 7 Always 0
Bit 6 Always 1
Bit 5 1 = Scale in Motion
Bit 4 1 = Center of Zero
00 = Single Range
<Status> 1C
01 = Weight Range 1
Bit 3-2
02 = Weight Range 2
03 = Weight Range 3
Bit 1 1 = Net Mode
Bit 0 1 = Preset Tare
<Units> 1N 0=None 1=lb 2=kg 3=g 4=t 5=ton 6=toz 7=dwt 8=oz 9=custom
8 digits plus possible “-“ and “.”
“^^^^^^^^^^” indicates the gross weight on scale is over capacity.
<Net Wt> 10N
“vvvvvvvvvv” indicates the gross weight is less than zero.
“----------“ indicates an indeterminate weight.
<Tare Wt> 10N 8 digits plus possible “-“ and “.”
54
IND560 Terminal Shared Data Reference
Attributes:
xr--00 Composite xr block Struct na Composite of entire block
xr--01 Number of Bytes in Log File UL na Number of Bytes in Log File
Is file logging enabled or not?
0 : None
xr--03 Enable logging Bl rt 1: Alibi memory enabled
2: Action Log enabled
3 = Transaction Log enabled
Method:
The IND560 maintains 3 log files in Compact Flash. The Service Technician can use FTP to transmit each of
these files to a host PC. The log files are circular log files. The Log Files are circular files where the IND560
re-writes the oldest record first. However, The IND560 does not overwrite the oldest record in the
Configuration Log until the user clears the log.
The “Maintenance Log” is a circular log file that contains a record of the significant processing events that
may affect the “health” of the scale system. It aids the Service Technician in resolving problems and in
deciding what service he needs to perform on the IND560. The Service Technician can select the items
recorded in the log. The “Scale Monitoring Setup” block (cm) in Shared Data holds these selections.
The “Alibi Memory Log” is circular log file that contains a historical record of all the transactions performed
on the IND560. The Demand Print operation defines a transaction on the IND560; the Demand Print Setup
block specifies the requirements for legal Demand Print operations. Each Alibi Memory record has a fixed
format field containing the date, time, scale identifier, net weight, tare weight, tare source, and consecutive
number for each transaction. The user may specify a special Print Template for additional data that the
IND560 adds to each record.
Alternatively, the “Action Log” can be enabled in setup that will log the time and date of certain actions and
a text string explaining what the action was. The time and date information should be the fixed “time stamp”
format. If enabled, this log file will use the file space normally available to the Alibi memory. It is not
possible to have both Alibi memory and Action log at the same time. This log file should operate the same
as Alibi memory in that it creates a small file in battery-backed RAM and then transfers the data to flash
when the file reaches a certain size. This file should be called Act_Log.csv and it should be available as a
comma delimited file through the shared data server (serial interface) or FTP (Ethernet interface). The
IND560 supports a 16000-event action log.
The “Change Log” is a circular log file that contains a complete record of the changes made to Shared Data
Setup and Calibration fields. It provides an audit trail of all the changes that the Service Technician has
made to the IND560 since its initial installation. This historical record is a requirement in the
pharmaceutical and food industries, where companies must prove their compliance with governmental
regulations. The IND560 provides warnings to the operator when this file is becoming full and disables itself
when this file is finally full. Then, the Service Technician must use FTP to save the log file to a remote PC
and reset the file before the IND560 will continue.
System Log Process Data (XM)
Access: “Read Only” Access.
Class Code: Data Type: PP
Instance 1 = Maintenance Log
Instance 2 = Alibi Memory or Action Log
Instances: 5
Instance 4 = Calibration Log
Instance 5 = Change Log
55
IND560 Terminal Shared Data Reference
Attributes:
xm--00 Composite xm block Struct na Composite of entire block
xm--04 Next File Byte Pointer UL na Pointer to next byte IND560 will write to in log file.
0 = less than 75% full 2 = 90 to 99% full
xm--05 File Status By na
1 = 75 to 90% full 3 = 100% full
xm--06 Next Buffer Byte Point US na Position for the next byte written to the buffer.
xm--07 Internal Buffer By1024 na Buffer for temporary records.
Note: Only instances 1 and 2 utilize these shared data elements. xm0507 is a large buffer available for use in BRAM space.
Method:
The Resident Scale Task increments the Transaction Number (TN) each time the IND560 receives a
“Demand Print” request for the specified print destination. Range is 1-999,999,999. The user may specify
starting value for the TN register in the “Preset”. The Weights and Measures seal does not protect the TN
configuration. In JagXtreme, the Transaction number was called the Consecutive Number.
System Setup (XS)
Access: “Service” Level Access
The following fields have “Administrator” Level Security: xs0100,
xs0101, xs0102, xs0122, and xs0128
xs0104, xs0127, xs0151 and xs0152 are “Read Only” fields.
Class Code: 0x6A Data Type: PS
Instances: 1
Attributes:
xs0100 Composite xs block Struct Na Composite of entire block
0 = USA 2 = Australia
xs0101 Market By Na
1 = European Community 3 = Canada
xs0102 Legal for Trade By Na 0 = No. 1 = Yes.
xs0104 Software Part Number S15 Na Part #s are 14 digits + null terminator
xs0105 IND560 Serial # S14 Na Serial #s are 13 digits + null terminator
xs0106 IND560 ID S21 na Terminal ID
xs0107 IND560 Project ID S21 Na Project ID
xs0108 IND560 Terminal ID S161 Na User Text Description of the IND560
1 = MM_DD_YY 5 = YY_MM_DD
2 = MMM_DD_YYYY 6 = YYYY_MMM_DD
xs0110 Date Format By Na
3 = DD_MM_YY 7 = YYYY_MM_DD
4 = DD_MMM_YYYY 0 = none
56
IND560 Terminal Shared Data Reference
1 = 24_MM 3 =24_MM_SS
xs0111 Time Format By Na
2 = 12_MM 4 = 12_MM_SS
/”= Slash
“ “ = Space
xs0112 Date Separator S2 Na - = Hyphen
0 = None
. = Period
0 = English 4 = Chinese
1 = French 5 = Custom
xs0115 Operator Message Language By Na
2 = German 6 = Italian
3 = Spanish
Value from 0-31.
This value represents the gravitational acceleration depending on the
latitude and altitude at this specific location where the IND560 is now
xs0122 Local Gravity “Geo” Code By na
operating. The IND560 uses it to adjust the weight value when you
calibrate it in one location and use it in a different region of the world.
Any value other than 0-31 disables this feature.
Hardware Configuration
1-3 nodes. RST automatically sets during system installation,
xs0127 # Nodes in Remote Discrete IO Unit By na
and verifies at power up.
0 = Start up at primary weigh units
xs0128 Restart/Reset Units at Power Up By na
1 = Restart at current weigh unit
1 = English 4 = Nordic/German
xs0130 Keypad Language By rt 2 = Dutch 5 = Spanish/Italian/Portugese
3 = French/German
# of seconds of inactivity before turning off display.
xs0135 Screen Saver L na
0 = turn off screen saver.
xs0136 Metrology Control Number L na Read only. Beginning value is 1.
The IND560 always has a default Shared Data Server open on
port 1701. If xs0138 is not 0 or 1701, IND560 will open a 2nd
xs0138 Second Shared Data Server Port L na instance of the Shared Data Server on this assigned port #.
Default = 0. Values of 0 and 1701 disable the second port. No
validation for the entry value is performed by the terminal.
xs0143 Fill-560 Software ID Number S40 na Text description of installed software
xs0150 Boot Software ID Number S21 na Text description of installed boot loader/code
xs0151 iButton EEROM Option Image ABY48 na Permanent iButton image
xs0152 iButton Target Product By na
xs0150 Firmware ID Number S21 na Text Description of Installed Software.
xs0151 Fill Application Software ID Number S21 na Text Description of Installed Software.
xs0152 ACM500 Boot Software S21 na Text Description of ACM500 boot code software
Marks printout as a “DUPLICATE”
xs0155 Duplicate Print By na
0 = Disabled. 1 = Footer. 2 = Header.
57
IND560 Terminal Shared Data Reference
Method:
The system usage counters are maintained until a Master Reset occurs. The FTP Shared Data transfer saves
these usage counters but does not restore them. In the event of a Master Reset, all counters are reset.
Setup Sequencing Control (QC)
Access: “Service” Level Access.
Class Code: Data Type: D
Instances: 1
Attributes:
qc0100 Composite qc block Struct na Composite of entire block
qc0148 Enter Setup Mode Command Bl rc Command to CP and RST
Writing qc0149 = 1 is frequently required to “save” or
qc0149 Exit Setup Mode Command Bl rc
“execute” other Shared Data entries.
qc0159 Read iButton EEPROM By rc Set to 1 to read iButton EEPROM
qc0160 Reset Data Connections Bl rc 1 = Reset all data connections
qc0161 Restart IND560 Bl rc 1 = Perform soft restart of IND560
qc0168 Reconfigure PLC Thread By rc 1 = start, 0 = done
Set field to “1” to initiate a check of the security switch
qc0182 The test of “Approval” and SW1-1 By rc
(SW1-1)
This field enables a PC or PLC remotely set a new active
Tare of Target in the IND560 from the standard IND560
qc0189 Remote Tare/Target Command By rt tables.
The Tare or Target ID must first be set in qc0190 before
issuing the command in qc0189.
58
IND560 Terminal Shared Data Reference
Command values:
The PC/PLC sets commands in this field, as follows:
1 = Set an active Tare for scale from the Tare Table using
ID in qc0190.
6 = Set an active Target for scale from Target Table using
ID is in qc0190
Status values:
The IND560 sets the status of the command back in this
same field, as follows:
Command in progress = 255
No matching database record found = 254
Successful completion = 0
Database record values:
Upon successful completion, the IND560 has also written
the new active Tare Table or Target Table record to the
appropriate fields of the TD block, where the PC/PLC can
read them.
Tare or Target Table ID for command in qc0189. You
qc0190 Tare or Target Table ID S20 rt
must first set this ID before issue a command in qc0189.
Attributes:
bd--00 Composite bd block Struct na Composite of entire block
bd--01 Board Installed This Slot Bl na 0 = No. 1 = Yes.
bd--02 Description S21 na bd0102 = “IND560” for standard IND560. Others Reserved
0 = None
7 = Analog Main Board
10 = IDNet Main Board
13 = Analog Output PLC Interface Board
bd--05 Board Type By na
15 = AB-RIO PLC Interface Board
16 = Profibus PLC Interface Board
18 = DeviceNet PLC Interface Board
23 = Ethernet/IP
Method:
At power-up, the Resident Scale Task reads the hardware boards and writes their identification to Shared
Data. The IND560 can have one of two kinds of main board, Analog or IDNet board:
bd0305 Analog Main Board 7
bd0305 IDNet Main Board 10
59
IND560 Terminal Shared Data Reference
The IND560 can support up to three ARM100 nodes, providing that there is no optional internal I/O board. If
the ARM100 is connected with IND560:
1 = Yes
bd1401 ARM100 Connected
0 = No
1 = 1 ARM100
bd1405 Number of ARM100s Connected 3 = 2 ARM100s
7 = 3 ARM100s
Attributes:
bc0500 Composite bc block Struct na Composite of entire block
A length = 0 indicates factory has programmed calibration data in the
bc0501 Calibration Data Length US na
EEPROM. The factory must also set a valid checksum.
Analog Board Calibration Fields, required for Analog Boards only
bc0505 Zero Counts with 2mv/V jumper UL na A/D Counts at 0mv/V input w 2mv/V jumper
b0506 Span Counts with 2mv/V jumper UL na A/D Counts at 2mv/V input w 2mv/V jumper
bc0507 Zero Counts with 3 mv/V jumper UL na A/D Counts at 0mv/V input w 3mv/V jumper
bc0508 Span Counts with 3 mv/V jumper UL na A/D Counts at 2mv/V input w 3mv/V jumper
bc0599 BC block check sum US na
60
IND560 Terminal Shared Data Reference
Methods:
These system triggers enable, disable, or activate IND560 functions through Discrete Inputs. You must
setup Ladder Logic rungs to tie the Discrete Inputs to these triggers. Applications may also access these
features by writing to these Shared Data triggers.
Users and Security Data
B
Attributes:
xi--00 Composite xl block Struct na Composite of entire block
xl--01 Logged-On User Name S13 na Name of user currently logged-on
xl--02 Access Privilege Level of User By na 1 = Operator, 2 = Supervisor, 3 = Service, 4 = Administrator
61
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for receiving Dynamic commands. One use is communicating command data with
remote tasks over PLC or TCP/IP communications.
NOTE: sc0101 functions only as “Resume” in the 560-Fill Application software SD. sc0101 is “Start/Resume” in basic terminal SD.
62
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for setting Dynamic statuses. One use is communicating status data with remote
tasks over PLC or TCP/IP communications.
63
IND560 Terminal Shared Data Reference
af0131 Weigh-In Target – Material #3 D rt Target weight of 3rd material in active formula.
af0132 Spill – Material #3 D rt Spill value of 3rd material in active formula.
af0133 Fine Feed – Material #3 D rt Fine Feed value of 3rd material in active formula.
Upper target weight deviation setting of 3rd material in
af0134 Upper Tolerance Value – Material #3 D rt
active formula.
Lower target weight deviation setting of 3rd material in
af0135 Lower Tolerance Value – Material #3 D rt
active formula. Will show as a positive value.
Upper % of target deviation setting of 3rd material in active
af0136 Upper Tolerance Percent – Material #3 D rt
formula.
Lower % of target deviation setting of 3rd material in active
af0137 Lower Tolerance Percent – Material #3 D rt
formula. Will show as a positive value.
af0139 Actual Net Weight – Material #3 D rt Net weight of material #3 from current sequence.
Net difference between fields af0131 and af0139.
af0140 Weight Variance – Material #3 D rt
af0131 – af0139 = af0140
af0141 Weigh-In Target – Material #4 D rt Target weight of 4th material in active formula.
af0142 Spill – Material #4 D rt Spill value of 4th material in active formula.
af0143 Fine Feed – Material #4 D rt Fine Feed value of 4th material in active formula.
Upper target weight deviation setting of 4th material in
af0144 Upper Tolerance Value – Material #4 D rt
active formula.
Lower target weight deviation setting of 4th material in
af0145 Lower Tolerance Value – Material #4 D rt
active formula. Will show as a positive value.
Upper % of target deviation setting of 4th material in active
af0146 Upper Tolerance Percent – Material #4 D rt
formula.
Lower % of target deviation setting of 4th material in active
af0147 Lower Tolerance Percent – Material #4 D rt
formula. Will show as a positive value.
af0149 Actual Net Weight – Material #4 D rt Net weight of material #4 from current sequence.
Net difference between fields af0141 and af0149.
af0150 Weight Variance – Material #4 D rt
af0141 – af0149 = af0150
af0151 Weigh-Out Active Value – Target Weight D rt Weight of active Weigh-out (Dose) Target.
af0152 Weigh-Out Active Value – Spill D rt Spill value of active Weigh-out (Dose) Target.
af0153 Weigh-Out Active Value – Fine Feed D rt Fine Feed value of active Weigh-out (Dose) Target.
Weigh-Out Active Value – Upper Tolerance Upper weight deviation value of active Weigh-out (Dose)
af0154 D rt
Value Target.
Weigh-Out Active Value – Lower Tolerance Lower weight deviation value of active Weigh-out (Dose)
af0155 D rt
Value Target.
af0156 Weigh-Out Active Value – Upper Tolerance % D rt Upper Tolerance % of active Weigh-out (Dose) Target.
af0157 Weigh-Out Active Value – Lower Tolerance % D rt Lower Tolerance % of active Weigh-out (Dose) Target.
Sum of all material Targets in active formula.
af0160 Total Formula Weight D rt
af0111 + af0121 + af0131 + af0141 = af0160
Single Material Weigh-In Active Value –
af0161 D rt Target weight if only single material enabled.
Target
af0162 Single Material Weigh-In Active Value – Spill D rt Spill weight if only single material enabled.
Single Material Weigh-In Active Value – Fine
af0163 D rt Fine Feed weight if single material enabled.
Feed
Single Material Weigh-In Active Value – Upper Target Weight Deviation setting if only single
af0164 D rt
Upper Tolerance Value material enabled.
Single Material Weigh-In Active Value – Lower Target Weight Deviation setting if only single
af0165 D rt
Lower Tolerance Value material enabled. Will show as a positive value.
Single Material Weigh-In Active Value – Upper % of Target deviation setting if only single material
af0166 D rt
Upper Tolerance % enabled.
Single Material Weigh-In Active Value – Lower % of Target deviation setting if only single material
af0166 D rt
Lower Tolerance % enabled. Will show as a positive value.
64
IND560 Terminal Shared Data Reference
65
IND560 Terminal Shared Data Reference
66
IND560 Terminal Shared Data Reference
67
IND560 Terminal Shared Data Reference
68
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for receiving Dynamic commands. One use is communicating command data with
remote tasks over PLC or TCP/IP communications.
69
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for setting Dynamic statuses. One use is communicating status data with remote
tasks over PLC or TCP/IP communications.
70
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for storing Dynamic integer fields. One use is exchanging integer data with remote
tasks over PLC or TCP/IP communications.
71
IND560 Terminal Shared Data Reference
Methods:
Applications may use this block of Shared Data for storing Dynamic floating point fields. One use is exchanging
floating point data with remote tasks over PLC or TCP/IP communications.
72
IND560 Terminal Shared Data Reference
73
IND560 Terminal Shared Data Reference
74
IND560 Terminal Shared Data Reference
75
IND560 Terminal Shared Data Reference
76
IND560 Terminal Shared Data Reference
Record Structure
Code (in C) used to structure the binary data for each record, based on the elements described in the tables above:
typedef struct _TRANSACTIO_RECORD
{
unsigned short id;
unsigned char JulianDate[4];
unsigned char CN[3];
unsigned char NetWt[3];
unsigned char status;
unsigned char CompByte1;
unsigned char CompByte2;
unsigned char checksum;
} TRANSACTIO_RECORD;
Table Definitions
77
IND560 Terminal Shared Data Reference
78
IND560 Terminal Shared Data Reference
Shared Data Fields Serving as Print Variables in the Drive-560 Application Software
Application Dynamic String Fields (AK)
Access: “All Users” Access
Class Code: 0x6B Data Type: D
Instances: 1
Attributes:
ak0100 Composite ak block Struct na Composite of entire block
ak0101 Vehicle ID S101 rt
ak0102 Vehicle Description S101 rt
ak0103 Gross Weight S101 rt
ak0104 Tare Weight S010 rt
ak0105 Net Weight S010 rt
ak0106 Transaction Time of Day S010 rt
ak0107 Transaction Date S010 rt
ak0108 Transaction Type S010 rt Permanent or Temporary
ak0109 Variable S010 rt
ak0110 Tare Type S010 rt Tare (T) or Preset Tare (PT)
ak01111 Weight Unit S010 rt lb, kg, ton, t
79
IND560 Terminal Shared Data Reference
Revision History
B
81
METTLER TOLEDO
1900 Polaris Parkway
Columbus, Ohio 43240