Professional Documents
Culture Documents
AB
ACE3600 System Tools
Suite (STS)
Version 20.60
6802979C10-R
The Motorola products described in this instruction manual may include copyrighted Motorola computer programs stored in
semiconductor memories or other media. Laws in the United States and other countries preserve for Motorola certain
exclusive rights for copyrighted computer programs including the exclusive right to copy or reproduce in any form the
copyrighted computer program. Accordingly, any copyrighted Motorola computer programs contained in the Motorola
products described in this manual may not be copied or reproduced in any manner without the express written permission of
Motorola. Furthermore, the purchase of Motorola products shall not be deemed to grant either directly or by implication,
estoppel, or otherwise, any license under the copyrights, patents or patent applications of Motorola, except for the normal
non-exclusive, royalty free license to use that arises by operation of law in the sale of a product.
This media, software or hardware ("Product") obtained from Motorola Solutions, Inc. ("Motorola Solutions") may include
Motorola Solutions’ Software, Third Party Software (defined below), and/or Open Source Software (defined below).
The object code or source code (collectively, the "Software") included with the Product is the exclusive property of Motorola
Solutions or its licensors, and any use is subject to the terms and conditions of one or more agreements in force between the
purchaser of the Motorola Solutions Product or licensee of the Motorola Solutions Software and Motorola Solutions.
SOFTWARE IS PROTECTED BY U.S. COPYRIGHT LAWS AND INTERNATIONAL LAWS AND TREATIES.
UNAUTHORIZED COPYING, DISTRIBUTION OR OTHER USE OF THIS PRODUCT IS STRICTLY PROHIBITED. ANY
DISTRIBUTION OR USE NOT SPECIFICALLY APPROVED BY MOTOROLA SOLUTIONS IS STRICTLY PROHIBITED.
Motorola Solutions’ Software is subject to the commercial terms and conditions entered into with Motorola Solutions, any
other use is strictly prohibited. Commercial Software licensed for redistribution by Motorola Solutions ("Third Party
Software") is subject to the terms and conditions in force between Motorola Solutions and the licensor of the Third party
Software. The terms and conditions governing the usage of Third Party Software may be part of the agreement entered into
by the purchaser of the Product with Motorola Solutions or separate Third Party Software license agreement(s) included with
the Product.
Software provided by Motorola Solutions which is covered by a publicly available license governed solely under Copyright
law, whereas the complete terms and obligations of such license attach to a licensee solely through the act of copying, using
and/or distribution of the licensed Software, such obligations often include one or more of attribution obligations, distribution
obligations, copyleft obligations, and intellectual property encumbrances is referred to herein as "Open Source Software".
The use of any Open Source Software is subject to the licenses, terms and conditions of the commercial agreement in force
between the purchaser of the Product and Motorola Solutions as well as the terms and conditions of the corresponding
license of each Open Source Software package. If there is a conflict between the terms and conditions of any commercial
agreement and the terms and conditions of the Open Source Software license, the applicable Open Source Software license
will take precedence. Copies of the licenses for the included Open Source Software as well as their attributions,
acknowledgements, and software information details, are listed below. Motorola Solutions is required to reproduce the
software licenses, acknowledgments and copyright notices as provided by the authors and owners, thus, all such information
is provided in its native language form, without modification or translation.
For instructions on how to obtain a copy of any source code made publicly available by Motorola Solutions related to Open
Source Software distributed by Motorola Solutions, you may send your request in writing to:
In your request, please include the Motorola Solutions Product name and version, along with the Open Source Software
specifics, such as the Open Source Software name and version.
Note: the source code for the Open Source Software included by Motorola Solutions may be resident on the Product’s
installation media provided with the Product or on supplemental Product media. Please reference and review the entire
Motorola Solutions Open Source Software “Legal Notices” and any corresponding “End User License Agreement” provided
with the Product or the commercial agreement under which the Product was purchased for details on the availability, location
and method for obtaining source code. Further, depending on the license terms of the specific Open Source Software,
source code may not be provided. Please reference and review the entire Motorola Solutions Open Source Software “Legal
Notices” and “End User License Agreement” to identify which Open Source Software packages have source code provided
or available.
To view information regarding licenses, acknowledgments and required copyright notices for Open Source Software used in
this Product, please select “Legal Notices” from the graphical user interface of the Software (if applicable) or as specified in
the “Legal Notices” or End User License Agreement File/README associated with the Product. Use of any Software is
subject to acceptance of the corresponding terms associated with the Software and by using the Software you agree you
have reviewed the terms and agreed to be bound by said terms.
MOTOROLA, MOTOROLA SOLUTIONS and the Stylized M Logo are trademarks or registered trademarks of Motorola
Trademark Holdings, LLC and are used under license. All other trademarks are the property of Motorola Solutions, Inc. or
their respective owners. All rights reserved.
i
Table of Contents
ii
Table of Contents
iii
Reference
Glossary
This list of terms consists of abbreviations, acronyms and specialized words used in this
manual.
vi
Reference
PC Personal Computer
PID Proportional Integral Derivative
PLC Programmable Logic Controller
PPH Pulse per Hour
PPP Point-to-Point Protocol
PPS Pulse per Second
PRIS PRotocol IRRInet-Slave
PSTN Public Switching Telephone Network
PTT Push to Talk (button on radio)
RAM Random Access Memory
RET Return
RF Radio Frequency
RNG Radio Network Gateway
ROM Read Only Memory
ROR Rotate to Right
RNR Receive, Not Ready
RR Receive, Ready
RST Reset
RTS Request to Send
RTU Remote Terminal Unit (e.g. ACE 36000, MOSCAD, MOSCAD-M)
RUNP Run Process
RX Receive
SBO Select Before Operate
SCADA Supervisory Control and Data Acquisition
SNMP Simple Network Management Protocol
STS System Tools Suite
SW Software
TCP Transmission Control Protocol
TDPSK Trunked Differential Phase Shift Keying
TRT Retentive Timer
TX Transmit
UART Universal Asynchronous Receiver Transmitter
UCL User Call Function
UDF Underflow
UDP User Datagram Protocol
USB Universal Serial Bus
WAN Wide Area Network
Definitions
Upload Load a block of data or code, from the RTU to the STS.
Download Load a block of data or code, from the STS to the RTU.
vii
Reference
In the chapters below, references to ACE3600 apply to IRRInet-ACE RTUs as well, except
where noted otherwise.
viii
Reference
Applicable Documentation
The ACE3600 system includes the following manuals:
ix
Reference
Model Complements
F7500 ACE3600 System Tools Suite (STS)
x
ACE3600 System Tools Suite – Overview
The ACE3600 System Tools Suite (STS) is a package of utilities used to build, configure
and maintain sophisticated distributed SCADA (Supervisory Control and Data
Acquisition) systems for a wide range of applications.
An ACE3600 system consists of remote terminal units (RTU) and one or more
computerized control centers, connected to a communication network via an IP Gateway
or Motorola OPC (M-OPC) unit. Various communication links, such as IP, conventional
radio, trunked radio, microwave, wireline or dial system (telephone) can be used.
Different types of RTUs are available, including the ACE3600 (the newest member of the
MOSCAD family), IRRInet-M and MOSCAD-M. See Remote Terminal Unit (RTU) for
more details. Older RTUs such as MOSCAD and MOSCAD-L can also operate in the
system.
The communication system is used for transmitting alarms, status information, telemetric
readings, calculated data, diagnostics and error logging information from the RTUs to the
central facility computer and vice versa. It is also used for downloading, monitoring and
debugging the application program at the site.
The STS, which runs on a personal computer, enables the user to design, setup, maintain,
and monitor an ACE3600 system and its sites. The STS also enables the engineer to
program/download the application program to be executed in the RTU and to perform
debugging in each RTU, using a symbolic (graphic) debugging tool. The STS may be
operated either locally by direct connection to the selected unit’s computer port, or
remotely, by connection to a computer port of any other RTU in the system, via the system
communication network.
The STS can be used to configure and administer ACE1000 RTUs which are added to an
ACE3600 system. However, an independent ACE1000 system is defined, configured, and
administered using the ACE1000 Easy Configurator web browser-based tool. For details,
see the ACE1000 Easy Configurator User Guide.
1-1
ACE3600 System Tools Suite- Overview
Control Center
The control center computer, with the user interface, provides the user with full graphic
control of the RTUs’ operation, including database and parameter changes, and on-line
application monitoring for the system engineer. The central computer communicates with
the RTUs using the MODBUS protocol either over serial or TCP/IP media. The central
computer communicates with the IP Gateway which uses the TCP/IP protocol.
One of the functions of the control center is to exchange data with the RTUs. It may
interrogate the RTUs for any portion of their database. Multiple interrogation (polling)
cycles operate with different priorities and by different trigger mechanisms (time or
events).
The RTU is configured and loaded with the appropriate application using the STS.
The RTU is a microprocessor-based unit, which consists of a CPU module and various I/O
and communication modules. The very wide range of I/O and communication modules
makes the MOSCAD system flexible to satisfy any application requirements.
1-2
ACE3600 System Tools Suite- Overview
The RTUs communicate using the MDLC protocol, based on the seven layers of the OSI
(Open Systems Interconnection) model published by ISO, and adapted for SCADA
communication. The protocol provides network support and multiple logical channels per
physical port, enabling simultaneous central-to-RTU and RTU-to-RTU sessions. It also
enables each RTU to simultaneously run several communication sessions, such as data
exchange, on-line monitoring, diagnostics, etc.
Note that throughout the STS documentation, the terms RTU and unit are used
interchangeably.
For technical information on the ACE3600 RTU, consult the ACE3600 RTU Owner’s
Manual. For technical information on MOSCAD-M, IRRInet-M or legacy RTUs, see the
relevant owner’s manual. For technical information on the ACE1000 RTU, consult the
ACE1000 RTU Owner’s Manual.
ACE IP Gateway
The ACE IP Gateway serves as an MDLC router between the SCADA computer and
RTUs. The ACE IP Gateway does not have a database or any control capabilities.
An ACE IP Gateway can act as a gateway between the SCADA Central and RTUs in the
field.
The ACE IP Gateway allows the SCADA center to conduct a multiple sessions via a large
number of logical channels using a single physical RS-232 or IP port.
The ACE IP Gateway is an intermediary unit that connects the control center with the
MOSCAD equipment in the network. It acts as a gateway between these two portions of
the network and communicates with the RTUs using the Motorola-patented MDLC
protocol, based on the seven layers of the OSI (Open Systems Interconnection) model
published by ISO, and adapted for SCADA communication. The protocol provides
1-3
ACE3600 System Tools Suite- Overview
network support and multiple logical channels per physical port, enabling simultaneous
central-to-RTU and RTU-to-RTU sessions. It also enables each RTU to simultaneously
run several communication sessions, such as data exchange, on-line monitoring,
diagnostics, etc. Communication can be via radio, wireline and other MDLC channel
(dial-up is not supported).
• Creating the RTU application (database and process flow) and maintaining it.
(ACE3600 only)
• Synchronizing the site RTU clock to the PC’s time and synchronizing all RTUs to
the same time.
• Testing the backup battery and the power supply. (ACE3600 only)
• Retrieving time-tagged events (of very high resolution) logged in the RTUs.
1-4
ACE3600 System Tools Suite- Overview
(ACE3600 only)
• Retrieving software diagnostics from the RTUs (by object entity names.)
• Analyzing the seven layers of the MDLC protocol by capturing data packets on
the communication links (using an external protocol analyzer.) (ACE3600 only)
ACE1000 RTUs
The STS enables the user to define and maintain ACE1000 RTUs in the graphical
depiction of a mixed MOSCAD system. ACE1000 RTUs and their links are displayed in
the graphical desktop together with ACE3600 RTUs.
In a mixed system, all configuration and administration functions are performed from the
STS, except downloading system software. In an ACE1000 only system, all configuration
and administration functions are performed using the ACE1000 Easy Configurator web
browser-based tool. For more information, see the ACE1000 Easy Configurator User
Guide provided with the ACE1000 RTUs.
The following are the features provided by the STS for ACE1000 RTUs in a mixed
system.
• Synchronizing the site RTU clock to the PC’s time and synchronizing all RTUs to
the same time.
• Retrieving software diagnostics from the RTUs (by object entity names.)
1-5
ACE3600 System Tools Suite- Overview
Legacy RTUs
The STS enables the user to define and maintain legacy RTUs in the graphical depiction of
a MOSCAD system. Legacy RTUs and their links are displayed in the graphical desktop
together with ACE3600 RTUs.
The following legacy RTUs/CPUs are currently supported by the ACE3600 STS.
• IP Gateway
Many of the functions performed in the STS for ACE3600 RTUs are not relevant for
legacy RTUs. A limited number of STS functions are available for legacy RTUs.
The following figure shows different ways of accessing and modifying each of the RTU
layers, using the System Tools Suite:
1-6
ACE3600 System Tools Suite- Overview
Remote
Programming
CONTROL
CENTER Download/Upload/Monitor
Download/Monitor
RTU
or Diagnostics/Debugging APPLICATION
FIU DATABASE
Diagnostics
APPLICATION
Remote SOFTWARE
Programming
SYSTEM
SOFTWARE
System Tools
Suite
RTU
HARDWARE
(CPU, COMM,
I/O MODULES)
Local Programming
System Tools
Suite
Programming Sequence
The definition of the RTU application allows the system engineer to build a database as a
set of tables. The tables used for the RTU database definition are the basis for process
programming, I/O link definition, automatic central database definition, real-time
monitoring of the RTU’s operation, etc.
Once the database is built, the RTU application is created using the symbolic Motorola
Advanced Ladder Diagram Language. These symbolic definitions are later used for
monitoring and debugging.
After downloading the application to the RTU, the control program of the terminal
controls the RTU run-time operations. The System Tools Suite terminal then allows the
system engineer to perform any required operation.
RTU Definition
Each RTU defined during system design includes a standard site configuration, which
defines the unit’s ports and the site address, as well as the I/O modules mounted on the
RTU. This configuration can be manually tailored in the STS site view. The
communication links attached to each RTU port are defined at the site level and the STS
automatically builds a system-level network configuration. This configuration is read-
only, but can be customized by the user under a different name.
The application program to be executed by the RTU is defined at the site level.
Site Configuration
The MOSCAD system operates with a very wide range of I/O modules and interface
communication boards which satisfy any application requirements. The site configuration
includes the definition of:
1-7
ACE3600 System Tools Suite- Overview
• The I/O modules mounted on the RTU and their location in the various frames
• The ports of the RTU and their parameters
• Site ID (logical address)
• Advanced parameters (The default settings for the advanced parameters are very
detailed and specific, and generally do not require adjustment.)
The site configuration can also be defined using the Automatic Recognition feature, where
the RTU automatically identifies the I/O modules and plug-in ports. For more
information, see the Automatic Recognition chapter of the ACE3600 RTU STS Advanced
Features manual.
Since several RTUs in the system usually have the same configuration (except for the
logical address), you copy and paste the site in the system (diagram or table view) or copy
the site configuration to the gallery and then apply it to other RTUs (with their own logical
addresses.)
Network Configuration
The STS allows you to define all the communication links attached to those RTUs in the
system which act as nodes in the network. The MDLC protocol uses these definitions for
the automatic routing of the packets through the network.
Most data radio communication systems have a single base transmitter located somewhere
near the center of the physical coverage area, as illustrated below. The transmitter emits
radio energy; the distance the emission travels defines the coverage limits of the system.
Normally, all data equipment lies within this coverage area.
However, if one or more sites with data equipment lie outside this coverage area; reliable
communication with these sites cannot be assured. The RTU provides a solution to this
problem which requires no additional hardware. A map of the network is created and
existing units are used to relay information around the network to its destination.
Any RTU can receive data, validate that data, and store it in a buffer for retransmission.
An RTU with more than one communication medium (link), known as a “network node”,
1-8
ACE3600 System Tools Suite- Overview
stores the data and relays it to another RTU. Note that network node RTUs are also
capable of operating as regular RTUs; thus no special, dedicated hardware is required.
The data Store & Forward capability is a communication protocol task; and requires
nothing to be programmed in the application.
A logical name is assigned to each communication medium in the network (e.g. Radio1,
Radio2, Line1, Line2). Some sites have a single communication medium – these are not
network nodes. A few sites may have both a radio and a wireline modem, or two radios –
these are definitely network nodes. Some sites may have a single radio that communicates
both with the main portion of the system and also with one or more out-of-range RTU
sites. These are also network nodes; the link names would be Radio1/Zone1 and
Radio1/Zone2 (abbreviated Radio1/1 and Radio1/2 respectively) or their equivalent.
The STS builds the system-level generic network table which includes each site and its
communication links. The network table is needed only in MOSCAD systems that use
more than one communication link. A simple network, such as one FIU connected to one
communication link, does not require network configuration. The generic network table
can also be customized for certain sites using the Network Manager to include a subset of
the available links. The costs associated with each type of communication link in the
system can also be edited. The application uses the link costs to calculate the actual costs
of each transmission route and to decide which route to use.
The number of links in the system assigned to each medium, such as wireline, RSlink and
Radio can be changed using the Links Configuration dialog. This should be done at the
beginning of system definition, before links have been assigned to ports in sites.
RTU Application
The RTU application is the control process to be executed by the remote terminal. The
application definition consists of the following:
• RTU database
• The process to be performed by the RTU (in the form of rungs, using the Motorola
Ladder Diagram Language and C functions)
• The connections between the database and the various inputs and outputs of the I/O
modules (I/O link). The I/O link portion of the RTU application is based on the
definition of the RTU I/O modules as determined in the site configuration.
The RTU database is divided into reserved variables or constants, retrieved from a wide
bank of system information (such as functional variables, reserved flags or temporary
buffers), and user variables or constants, arranged according to various data types (such as
discrete inputs/outputs, value inputs/outputs, timers, parameters, integer/real values, etc.).
User variables, in most cases, represent the actual inputs/outputs from/to the outside world.
They are designed to monitor and control the user devices connected to the appropriate
RTUs. They may also be used to represent internal inputs/outputs for intermediate results
and time elements, or to perform various calculations.
The application database is built as a set of tables, where tables define a group of devices.
Each row defines a separate device, and each column contains device-specific data. The
table entries are assigned user-significant names, such as PUMP1.
1-9
ACE3600 System Tools Suite- Overview
During program execution, the process continuously updates the database according to the
following:
• Data received via the communication channel and the communication ports.
One application can be defined and used in all RTUs (of the same type) in the system.
Downloading
When all the aspects of RTU definition have been performed, the relevant files are
downloaded to the RTU. These might include:
• Site configuration
• Network configuration
• Phonebook
• IP conversion table
• Site source
• Additional optional blocks, such as: ‘C’ application parameters, special drivers
(MODBUS, AGA8, DNP3, etc.)
Communication Network
The MOSCAD system network consists of RTUs communicating with one or more
computerized control centers and/or with other RTUs. Each control center is connected to
the communication network.
The system can be relatively simple, comprising several RTUs and one control center. It
can be modularly expanded to a more hierarchical system, where several sub-systems
(comprising intelligent RTUs and/or sub-centrals controlling their peripheral RTUs)
communicate with a central computer.
1-10
ACE3600 System Tools Suite- Overview
RTU), and also relaying messages through it (when the RTU serves as a communication
node).
While the communication protocol allows for a complex hierarchical system structure, it
does not make it complicated. This is because most of the communication interactions are
transparent to the user, except in those cases where the communication is to be defined by
the ladder application. In such cases, you should perform simple programming operations
to configure the required application.
The RTU network uses the MDLC protocol, which incorporates all seven layers of the OSI
model adapted for SCADA. It supports multiple logical channels per physical port,
enabling simultaneous central-to-RTU and RTU-to-RTU sessions. It also enables each
RTU to simultaneously run several kinds of communication applications, such as reporting
alarms by contention, on-line monitoring, performing diagnostics checks, etc. The MDLC
protocol is discussed in Appendix F of this manual.
The System Tools Suite may perform monitoring, modification, diagnostics, error logging,
etc., on any RTU in the system from any RS232 port in the system, configured as either
RS232 Local Computer port, RTU-to-RTU RS232 (RS-link1 – RS-link19) or IP (LINE1-
LINE29).
Communication Links
The system may support a network comprised of a nearly unlimited number of links. The
RTU supports a variety of communication media and data speeds, as detailed below:
External modem
External dial-up modem
GPS Receiver
PPP
1-11
ACE3600 System Tools Suite- Overview
The RTU operates on all radio frequencies: VHF, UHF and 800/900 MHz.
The RTU contains a circuit for monitoring activity on the radio or line communication
channel. Channel access software prevents the RTU from transmitting over a busy
channel. Transmission is inhibited until the channel is free. There are also several priority
levels for getting to the channel when it becomes available.
Communication Types
The RTUs in the system are linked to a radio or wireline network as defined by the system
engineer, according to user requirements. Each RTU executes its application and,
simultaneously, supports the communication link (or links) defined for it, and serves as a
network node, if so defined.
By default, the MOSCAD system supports up to 29 wireline links (LINE 1 to LINE 29),
up to nine radio links (RADIO 1 to RADIO 9), up to 19 local RTU-to-RTU links (RS-link
1 to RS-link 19) that use RS232, up to 29 IP links (LINE 1 to LINE 29), and one dial link.
Any of the radios may be either conventional or trunked. Computers may be connected to
the ports configured as RS232 Local Computer, as local RTU-to-RTU link, or via IP.
For conventional radios, up to nine zones can be defined on every frequency (of the nine
supported frequencies). A radio link for conventional radios is divided into zones when
not all sites can communicate with each other and F1/F2 repeaters (using two frequencies)
are not to be used. In this case, some RTUs serve as Store & Forward repeaters and the
link is divided into zones.
A zone is defined as a group of one or more sites that can directly communicate with each
other without a Store & Forward repeater. The name of a zone is composed of the link
name and the zone number. For example, for RADIO 3 zone number 1 is named RADIO
3/1, zone number 2 - RADIO 3/2 and so on.
After defining the communication network, the user must define the various links used in
the system as well as the RTUs that serve as nodes between the links. A network node is
an RTU that functions as an interconnection point between two or more different links. A
Store & Forward node, on the other hand, is a network node, which relays messages using
the same physical port.
Network Configurations
The MOSCAD system supports both simple and complex communication networks. The
following sections describe various configurations from different aspects.
Simple System
A simple system, comprised of a central computer and RTUs connected over one
communication link, is shown in the following figure:
1-12
ACE3600 System Tools Suite- Overview
The STS may be connected to any port of the RTU configured as a computer port.
The ports of the RTUs should be defined via Site Configuration. The logical name (e.g.
LINE1) of the communication link is also defined.
The FIU in the system illustrated above serves as a network node between link RADIO 1
and link LINE 1. Configuring the FIU to have access to two different links enables the
FIU to serve as a node between these links.
The MDLC protocol permits RTU-to-RTU communication without the intervention of the
central computer. RTUs that are not on the same link communicate with each other via the
network node (in this case, the FIU).
A multi-link system is a network that uses several link types. The following figure
illustrates a system where a third link type, RS232, connects an RTU to another terminal
1-13
ACE3600 System Tools Suite- Overview
that communicates over RADIO 2. RTUs connected to the IP link can reach RTU 7 via IP
network and then RADIO 2.
Two-Zone System
A two-zone system that uses conventional radio over a single frequency is described in the
following figure:
The figure below illustrates this system schematically. In this case, RTU 9 is a network
node between the RADIO 1/1 and RADIO 1/2 links. The network software treats the
Store & Forward node as it treats the node between line and radio: logically the links
appear as two different links, but physically they share the same port.
1-14
ACE3600 System Tools Suite- Overview
Using Site Configuration, the FIU and the RTUs in zone 1 are configured to have access to
the RADIO 1/1 link. The RTUs in zone 2 are configured to have access to the RADIO 1/2
link, and RTU 9, the network node, is configured to have access to both RADIO 1/1 and
RADIO 1/2 links.
Using Network Configuration, RTU 9 is configured as the only node in the network. This
terminal is configured to have two links, RADIO 1/1 and RADIO 1/2.
The schematic representation of this system is shown below. The system assumes that the
two nodes, RTU 15 and RTU 40, cannot “hear” each other. They communicate via the
FIU, which is also a Store & Forward node. This system, therefore, consists of four zones
and three nodes (RTU 15, RTU 40, and FIU). Any communication between RTUs in
different zones passes through these three nodes.
1-15
ACE3600 System Tools Suite- Overview
In the above situation, three nodes with their accessible (logical) links should be defined.
Using the STS site configuration, the RTUs in zone 1 should be configured to have access
to the RADIO 1/1 link, and the RTUs in zone 2 to the RADIO 1/2 link.
RTU 15 should be configured to have access to both RADIO 1/1 and RADIO 1/3 links,
while RTU 40 should be configured to have access to both RADIO 1/2 and RADIO 1/4
links.
The FIU is configured to have access to both RADIO 1/3 and RADIO 1/4 links.
Assuming that the two nodes (RTU 15 and RTU 40) can communicate with each other, the
result is a system consisting of three zones and two nodes, as shown in the following
figure:
In this case, the two nodes do not communicate through the FIU. Therefore, the FIU does
not serve as a node in the system. Note that the communication between RTUs in different
zones passes only through two nodes.
1-16
ACE3600 System Tools Suite- Overview
Standard Modem
The RTU supports links to standard modem over PPP on the built-in serial ports and plug-
in ports. These ports may be connected to an external AT modem. For details see MDLC
over Standard Modem in the ACE3600 STS Advanced Features manual.
RTU Software
The ACE3600 RTU software runs on the VxWorks operating system. It is based on an
object-oriented Multi-Tasking Executive System which during start-up creates all software
entities needed to support the different hardware modules and communication ports as
configured using the STS site configuration by the system engineer. This permits the use
of only one standard software package for all RTUs and provides flexibility in supporting
the application requirements without sacrificing efficiency.
The software supports a communication protocol based on the OSI model (published by
ISO). The protocol comprises all of the seven recommended layers, adapted for SCADA.
1-17
ACE3600 STS
Note: The STS supports English language only. Unicode is not supported. Localization is
not supported. The STS can be installed on a PC localized to many of the languages set in:
Regional and Language Options -> Regional Options -> Standards and Formats. The
languages listed below are not supported: Galician, Mongolian (Cyrillic), Punjabi, Syriac,
Tatar, Uzbek.
The default configuration for RS232 ports is RS232 Local Computer (9600 bps) (except
for SI2 whose default data speed is 115200 bps.) The default configuration for IP ports is
10/100 BaseT, DHCP Client, Ethernet, LAN.
The STS can also be connected to an ACE3680 CPU or ACE IP Gateway via the USB
device port, using a USB type connector.
The STS can also be connected to an ACE1000 via the USB OTG port, using a USB 2.0
cable with a Micro-B connector. The unit is accessed via the fixed IP address of the USB
OTG port 192.168.9.9. When the USB connection is made, the PC receives address
192.168.9.10 for its port.
2-1
ACE3600 STS
When using the ACE3600 USB device port or ACE1000 USB OTG port, you may have to
download the RNDIS device driver from Microsoft. For details, see the relevant USB port
driver instructions provided with the STS installation.
For details on the cables used to connect the STS PC to the ACE3600 RTU, see
“Appendix A: Accessories, Adaptors, and Cables” in the ACE3600 STS Advanced
Features manual or “Appendix C: Accessories, Adaptors, and Cables” in the ACE3600
RTU Owner’s Manual. For details on the cable used to connect the PC to the ACE1000
RTU, see "Appendix B: Cables and Adaptors" in the ACE1000 RTU Owner’s Manual.
The RTU
Think of an RTU as a computer. It has a CPU, real-time clock, RAM and ROM memory,
serial communication ports, etc. A remote terminal unit (RTU) which is installed at some
field location is a computer. An RTU which may act as a district controller is a computer.
An RTU that functions as the communication bridge between the radio (or other)
communication system and the Master Control Center is a computer. Certainly, that
Master Control Center is a computer.
Database Principles
The ACE3600 RTU programmer must define the variables (including the variable name
and variable logic type) before they are used. The programming language reserves the
appropriate memory for the variable type, and can check for type mismatches as the logic
statements are written (create an immediate error if the logic statement uses an illegal
named variable type). RTU applications must have all variables defined by name and type
before they may be used.
The language organizes the programming variables into collections called tables.
Tables look very much like computer spreadsheets: they include many rows and may
include many columns. Each row and column intersection (cell) is a variable. Some tables
have many rows but only one column. All the variables in a single-column table are of the
same type, i.e. all bits, all values, all digital inputs, etc. Each variable in the table is
2-2
ACE3600 STS
uniquely named: PUMP1, PUMP2, etc. Such a table may contain up to 250 uniquely
named variables. A single-column table is illustrated below:
Other tables have many rows and many columns. All variable types within any column are
the same, but the several different columns may be of different variable types. For
example, a three column table may contain one column labeled PUMP and be a digital-
input type; the next column may be labeled START and be an internal value type; the third
column may be labeled RUNTIM and be a timer type. The variable names are a
combination of the column name and the row number, i.e. PUMP,2 and START,4. This
multiple-column table structure is particularly attractive when dealing with dissimilar but
related data, particularly as it may apply to some physical device such as the pumps at a
pump site. A multiple-column table may contain up to 250 rows and up to 8 columns. Such
a table is illustrated below:
2-3
ACE3600 STS
The programmer may create up to 127 tables of his/her own design. The design and
organization of the tables should be carefully planned. The operation of the application
can be monitored by observing the variables; a good table design collects related variables
so that many different, but related, things can be observed simultaneously.
A good table design anticipates which variables must be reported to a central site, and
organizes those variables (whenever possible) into just a few tables. Understand this part
of the project, and the technical details of the applications — they are both very important.
Note that the protocol driver in the central has the same table structures as do the RTUs
communicating with the central. Data transfer becomes the simple task of moving
row/column data between identical tables.
You, the programmer, define the variable names. You are not required to use a bit-and-
register notation that reflects the electrical design of the RTU. You may define and name
your variables as you wish, with no restrictions other than name length. Even if you
program in another language, the RTU system will accept your variable names.
The database supports many variable (data) types. For full details, refer to Appendix C:
Database Tables and Data Types.
Unlike the ACE3600 database, most of the data in the MOSCAD-M and IRRInet-M RTU
database is read-only. There are some values which can be written/manipulated by the
application. For full details, refer to Appendix C: Database Tables and Data Types.
Programming Philosophy
The MOSCAD application developer need not have a degree or background in computer
science. Any programming experience in ladder-logic, Basic, Pascal or C is helpful, but
not required.
In order to create an application program which meets your needs, first identify the tasks
required of the program, including the information needed to complete each task (e.g.
digital inputs, variables from another site, permission flags from the central, etc.).
2-4
ACE3600 STS
Next, sketch, in flowchart form, the logical steps required to convert the stated inputs into
the required output(s). Make sure that all combinations of inputs are properly addressed
and lead to the correct output(s). This step is key, as it is much easier to correct mistakes
in a flowchart on paper than to debug and correct lines of programming code.
All of the logic operators that are used in Basic or Pascal or C programming languages are
available to the RTU ladder-logic programmer. Only the syntax is different. Remember,
the logic statements will eventually be compiled; you can’t tell how it was programmed by
looking at the compiled code.
Ladder logic originated from the language of relays. The contacts of the relays, singly or
in combinations, appear to the left of the logic statements and constitute the tests. The coil
of the relays appears to the right of the logic statement and constitutes the actions. Tests
on the left, actions on the right. Line after line. The structure looks like the rungs of a
ladder, hence the name of the programming language and the name (rung) of each logic
statement.
The RTU implementation of ladder logic programming allows numerous lines per rung,
and numerous symbols on a single line. Therefore each RTU rung may indeed be a
complete logic statement (IF this THEN that ORIF other-this THEN other-that ELSE ...).
A process rung might include one or more tests, such as comparison of values using
operators (>, <, =, ≠), the state of a Normally Open or Normally Closed fundamental relay
contact, or changes of variable state using a differentiator. The variables in question are all
defined in the application database. As a result of the tests, certain actions may be taken,
such as energizing the coil of a relay, latching or unlatching a relay, reading input data
from physical I/O modules, or even calling a user defined function. For a list of the
available tests and actions, see Appendix B: Ladder Diagram Language.
The tools are incorporated into the STS framework and available through the STS desktop.
Certain tools can also be executed independently from the Windows Start menu. For a list
of tools and their execution method, see the STS Tools Quick Reference table below. For a
detailed description of the STS and its tools, see the Operation chapter below. The general
use of the STS is as follows:
1. Run the STS from the Start Menu Programs list or from the STS icon created on your
desktop during installation.
In the system view you can perform system level operations such as creating a
site/area, managing applications and network tables, downloading to all sites and
uploading from an RTU.
The system view is shown in the figure below.
2-5
ACE3600 STS
At the site level, you can customize the site configuration, download and upload
to/from a site, retrieve/set the site’s date and time, retrieve the site’s errors and
diagnostics, test the hardware, create an application, etc.
The site view is shown in the following figure.
Note: System view and generic network are disabled when more than 400 RTUs exist.
When more than 400 RTUs exist in a system, all system elements can only be accessed
and managed in Table View tab.
The total number of sites and areas is displayed at the bottom of the screen.
Search for elements in the system using the Find field in the System tab.
2-6
ACE3600 STS
2. Create a site by dragging an RTU type from the list of RTUs in the Elements tree of
the Inventory tab to the Diagram view workspace, or by uploading a site definition
from a local or remote RTU.
3. To administer a given site, click on the site in the project tree of the system or in the
workspace (table or diagram view.) You might want to configure the site, e.g., define
which I/O modules are present in the unit and where they will be placed in the module
frame, specify the functionality and link assignment of the ports on the CPU module,
set advanced parameters or define an application program for the RTU.) You might
want to customize the network configuration for the site based on the generic network
configuration produced by the system.
4. Create an application and assign it to the site using the Application Manager. Click on
the Application Programmer button to open Application Programmer window. In this
window, you can edit the application database and the process rungs, and link the
physical I/Os to their virtual counterparts - variables in the database. You can then
compile the program to create a downloadable object file which can be understood and
executed by the RTU.
5. Connect the STS computer to the CPU of the ACE3600 RTU, either directly or
remotely.
2-7
ACE3600 STS
See the following dialog box. Type the password and click OK.
For information on setting and resetting the driver password, see Performing MDLC
Driver Communication in the Operation chapter below.
7. Download a file or set of files (e.g. application, phone book, ‘C’ parameters) to the
RTU, using the Download feature. This can be done locally, using a cable, or
remotely over the communication network (from any site in the system to any other
site in the system).
8. You can perform tests and diagnostics on the hardware (LEDs, I/Os, communication
and power supplies) using the Hardware Test utility and retrieve software diagnostics
and error messages from the unit using the Logger utility.
9. You can monitor the operation of an application or retrieve the values of database
tables during runtime.
2-8
ACE3600 STS
2-9
ACE3600 STS
2-10
Operation
General
The ACE3600 System Tools Suite (STS) software enables the user to build a graphical
depiction of sophisticated distributed SCADA (Supervisory Control and Data Acquisition)
systems, and to maintain and monitor those systems from the graphical desktop. The
systems include areas made up of sites (RTUs) and their links.
The STS can be used to configure and administer ACE1000 RTUs which are added to an
ACE3600 system. However, an independent ACE1000 system is defined, configured and
administered using the ACE1000 Easy Configurator web browser-based tool. For details,
see the ACE1000 Easy Configurator User Guide. An ACE1000 RTU which has been
configured using the STS cannot be accessed using the ACE1000 Easy Configurator.
Building a System
Process 1-1 describes how a MOSCAD system is built.
setting site date and time, etc. See Administering a Site (Basic) and Administering
a Site (Advanced) and below.
Note: In the System Build Process described above, the entire system (areas/sites) is
created and then each RTU is configured separately. It is also possible to fully configure
each RTU as it is created. This option is practical in a simple system with a few sites.
For a description of the elements of the STS user interface, see Using the Graphical User
Interface below.
1. To start the STS, select Start->Programs -> ACE3600 STS<version> -> STS or
click the STS icon from the STS<version> folder on your desktop.
Result: The STS interface opens with a prompt to create a new project or open an
existing project.
Creating a Project
For details on using the menus, commands and elements of the STS user interface, see
Using the Graphical User Interface below.
3-2
Operation
Procedure 1-1-2 describes how to create a project in the STS. Each project represents one
system.
1. To start the STS, select Start->Programs -> ACE3600 STS<version> -> STS, or
click the STS icon from the STS<version> folder on your desktop.
Result: The STS interface opens with a prompt to create a new project or open an
existing project.
2. To create a system, click New Project, or click Cancel and either select File ->
New or click New Project .
3-3
Operation
3. In the Create New Project dialog, enter the new project Name and Description.
Note: When using the secured STS, the Create New Project dialog is slightly
different. See “Creating a Project” in the ACE3600 Advanced System Security
User Guide.
4. Enter and confirm the legacy MDLC password which is used for MDLC
communication.
5. To create the new project in a directory other than the default, click Browse and
browse to the preferred location.
6. To specify the system address, enter the preferred System Address (0-65200).
1. To set the system address, select System -> Set System Address.
Result: The Set System Address dialog appears.
3-4
Operation
2. In the System Address field, enter the preferred system address (0-65200).
3. Click OK.
Result: A warning appears that changing the system address will affect all sites in
the system and will require that the site configuration be downloaded again to all
sites.
Click Yes to continue with the system address change or No to cancel.
Procedure 1-1-4 How to Set the PRIS System Address in the STS
1. To set the PRIS system address, select System -> Set PRIS System Address.
Result: The Set PRIS System Address dialog appears.
2. In the PRIS System Address field, enter the preferred system address (0-65200).
3. Click OK.
Result: A warning appears that changing the system address will affect all
irrigation slave sites in the system and will require that the site configuration be
downloaded again to all these sites.
Click Yes to continue with the system address change or No to cancel.
3-5
Operation
Defining an Area
Procedure 1-1-5 describes how to define an area within a system in the STS.
1. (Diagram View) To define a new area in the system, click the New Area icon, or
select System -> New Area. When the cursor turns into a crosshair, click
anywhere in the Diagram View workspace.
(Table View) To define a new area in the system, select System -> New Area.
2. In the New Area dialog, enter the name of the new area and click OK.
Result: The new area appears in the system tree on the left side of the STS
window (System tab). In Diagram View, the new area appears on the system
layout. In Table View, the new area appears in the chart with no sites or sub-areas
defined.
3. To see a list of the sites or sub-areas within an area in the Diagram View, point at
the area with the mouse and wait.
Result: A tooltip lists the sites, areas, and link configuration within the indicated
area.
Defining a Site
The MOSCAD system operates with a very wide range of I/O modules and
communication boards. To make the system operation more efficient, the configuration of
the site (RTU) should be defined. Site configuration defines the I/O modules mounted in
the RTU and their location in the various frames, the ports of the RTU and their
parameters, and the site ID (logical address).
Since several RTUs in the system usually have the same configuration, the system
provides the option of storing the RTU configuration in the gallery and creating new sites
based on the same configuration.
3-6
Operation
The configuration created by the STS is used in the Application Programmer during the
definition of I/O Links. See the Application Programmer chapter below.
You can create a site by selecting an RTU type from the list of RTUs in the Elements tree
of the Inventory tab. To create a new site by uploading a site definition from a local or
remote ACE3600 RTU, see Uploading a New Site to the STS. After the site is created, its
configuration can be customized. For information on uploading the I/O configuration
determined automatically by the ACE3600 unit, see the “Automatic I/O Recognition”
section in the ACE3600 STS Advanced Features manual.
If no site configuration is defined in the STS (e.g. when the RTU is delivered from the
factory,) it includes a default site configuration. In this situation, the following features
are not available:
• PDV: There is no PDV (Predefined Value), only KLV (Keep Last Value) for I/O
modules in the event that communication with the I/O module is interrupted. (See
the Application Programmer chapter.)
• I/O Link, Time Tag, Timer Event: Because there is no application, there is no I/O
link and therefore no Time tag/Timer Event.
• Hot-Swap: If the expansion module is reset while the main CPU is running, and
during the restart an I/O module is removed, the expansion module will not
recognize the removed module when it powers back up and it will not report the
hot-swap to the main CPU when the I/O module is replaced in the slot. (See the
ACE3600 RTU Owner’s Manual.)
Procedure 1-1-6 describes how to define a site within a system/area in the STS.
1. (Diagram View) To define a new site in the system, click the Inventory tab and
find the preferred site type under RTU. Drag the preferred type (e.g. RTU ->
ACE3600 -> CPU3640 -> <version>) to the Diagram View workspace and
release the mouse button.
Result: The Add RTU dialog appears.
3-7
Operation
3-8
Operation
3-9
Operation
3. The default site name is Site_<Site ID>. To change the default name of the new
site, click in the Site Name field and edit the contents.
4. In the Description field, enter an optional description of the new site (e.g. unit
location). This description appears below the site icon in the Diagram View and
can be edited in the Diagram View.
3-10
Operation
5. To change the site type (e.g. from ACE3640 to ACE3610, or from IRRInet-M/AC
to IRRInet-M/DC, use the drop-down Site Type list.
Result: A message appears, listing the ramifications of the change and prompting
you to confirm the change.
For IRRInet-M RTUs, use the Main Board Type and Expansion Type to change
the type of site.
Note: The Mixed I/O expansion type is supported on IRRInet-M RTUs with
firmware ≥v6.00 only.
7. To support redundancy for the ACE3680 CPU, click Support Dual CPU.
Result: By default, the site is set to Primary. The site name is changed to
DualSite_Site ID. The Private Site ID for the primary site is set to Site ID-1. For
more on ACE3680 RTU redundancy, see the “RTU Redundancy” section of the
ACE3600 STS Advanced Features manual.
8. To support redundancy for the ACE IP Gateway, set the Gateway ID (by default
189), and select the Redundancy Startup mode (Stand Alone, Redundant GW1,
Redundant GW2.) For details on using the ACE IP Gateway, see the ACE3600
STS Advanced Features manual.
Note: When defining more than one ACE IP Gateway, the Gateway ID should be
unique.
For more on ACE IP Gateway redundancy, see the “ACE IP Gateway” section of
the ACE3600 STS Advanced Features manual.
To add the new site (with the default settings in the site configuration), click Add.
Result: If the site does not support redundancy, the new site appears in the system
3-11
Operation
tree on the left side of the System Designer window (System tab). In Diagram
View, the new site appears on the system layout. (The color of the icon
representing the ACE3600 RTU is blue. The color of icons representing legacy
RTUs varies. The color of the icon representing the IRRInet-M RTU is green.
The color of the icon representing the ACE1000 RTU is pink.) In Table View,
the new site appears in the chart with the relevant information defined.
Search for Site or Site information using the Find field under the System tab.
If Support Dual CPU was selected, if Site ID-1 and Site ID+1 are already in use,
an error message appears, prompting you to change the Site ID before enabling
redundancy. Click OK and change the Site ID.
Otherwise, a message appears that changing the Site ID in the GUI does not affect
the site ID in the unit. The site ID in the RTU must be changed using the
Downloader.
If another redundant CPU is defined in the system, you are instructed to change
the default MDLC Link name (in the definition of the INTR1 internal port used to
connect between the primary and secondary RTU). The MDLC Link Name must
3-12
Operation
be unique for each set of peers within the system. Change the link in the Ports tab
and click Add.
If the site supports redundancy, a message appears that the site was successfully
added to the project and asking if you want the STS to automatically create the
redundancy peer.
To create the redundancy peer for this site, click Yes.
Note: If you click No, you may create the redundancy peer later in the site view
after the initial site configuration has been created or later when customizing the
site configuration.
Result: A peer site marked DualSite (Site ID) is created. A message appears that
the new peer site was created with the same port configurations as the original site.
If necessary, the user should change these port settings. If the original site was set
to Primary, the peer is set to Secondary, and vice versa. The Private Site ID for
the secondary site is set to Site ID+1.
In Diagram View, the two peer sites are attached and marked with a yellow circle,
half of which marks each peer. The primary site appears above the secondary site.
Each site includes an ID, common to both peers, and in parenthesis the private ID
of each peer.
In Table View, each peer site entry includes the Site (private) ID.
In the Site ID column of generic network table, each peer site entry includes the
private ID.
10. For ACE3600 RTUs, customize the ports, I/Os, advanced parameters, and add-on
files in the site configuration, as in Customizing the Configuration of a Site below.
For legacy RTUs, import the preferred site configuration, as in Importing a Site
Configuration and customize the add-on files.
If you did not click Add in step 7, click it after customizing the site. Note: Certain
parameters and the various managers (Add-On Manager, Application Manager,
etc.) are disabled until Add is clicked.
11. To mark a site as an FEP, select Site - > Toggle FEP Status (in the site view or
with a site selected in the system view.) The icon next to the site name in the
Diagram View or Table View changes. To remove the FEP status, select the
command again. See Toggling the FEP Status.
Note: The ACE IP Gateway is marked as an FEP as soon as it is dragged from the
inventory.
12. To see a list of the site properties in the Diagram View, point at the site with the
mouse and wait.
Result: A tooltip lists the site ID, site name, unit type, system version, links,
application name and status for the indicated site. For redundant sites, the ID is
listed as <common ID> (<private ID>) and the redundancy information includes
the site’s redundancy state (primary/secondary), the common ID, and the peer’s
redundancy state (secondary/primary) and private site ID.
3-13
Operation
13. To save the RTU configuration in the gallery for use in defining similar units,
click Add RTU to Gallery, as described in Storing Elements in the Gallery below.
14. To add redundancy support to an ACE3680 RTU after it has been added to the
project, select Support Dual CPU and follow the process described in step 7
above. Instead of clicking Add, save the project.
To create the redundancy peer for this site, click Create Peer CPU.
15. To remove redundancy support from an ACE3680 RTU, in the site view uncheck
Support Dual CPU.
Result: A warning appears that the peer site will be removed.
Click Yes to remove redundancy.
16. To switch the Redundancy state of a CPU from primary to secondary, click
Secondary.
Result: A message appears prompting you to confirm the change, which sets the
current secondary CPU to primary.
Click Yes to proceed with the switch.
Result: The configurations of the two CPUs are switched, including the Private ID
elements of the Site ID.
17. To save the site, select File -> Save Project or click the Save icon.
Result: The project is saved. If there are inconsistencies in the project, the project
is not saved and an error message appears. For example, in a system with
redundancy, the MDLC Link Name(s) assigned to INTR1 port(s) may not be used
in any other port.
When saving a redundant site, if the MDLC Link Name for the two peers is not the
same, the STS offers to change the link of the peer site to match the current site. If
the links do not match, the configuration cannot be saved.
3-14
Operation
Note: The site ID in the STS site configuration can be changed, if necessary. This does
not impact on the site ID in the unit, which is changed during the download. Changing the
Site ID does not change the site ID string in the Site Name. In a redundant site, if both
peers exist, the Site ID can only be changed in the primary site, and the STS automatically
applies the change to the secondary site. The Site ID can be configured in a secondary site
which supports redundancy if no primary site exists.
If the site ID of a site is changed in the configuration, tables which are indexed by the site
ID are impacted. The generic network configuration which is generated automatically by
the STS is updated by the STS when the site is saved. The user is responsible for updating
any user-defined tables. The network configuration and any user-defined tables then need
to be downloaded to all units.
Procedure 1-1-7 describes how to customize the port configuration of a site. Peer
(redundant) sites by default are created with the same port configurations as the primary
site and should be changed as necessary. Subsequent changes to the primary must be
applied manually to the secondary where relevant. Note that the ports of a legacy RTU site
are defined and customized in the relevant ToolBox/Configurator utility.
1. If the site definition is not open, double-click the preferred site in the
Diagram/Table View, or single-click it in the system tree on the System tab, or
single-click the site in the Diagram/Table View and select Site -> View.
Result: The site definition appears.
Note: The TS Ports tab appears in ACE IP Gateways only.
2. To customize the port configuration, click the Ports tab, or click the preferred port
name in the list of Ports on the right side of the screen.
Result: The Ports tab appears. The set of available ports varies between units.
The INTR1 port shown below appears in redundant sites only. A port on the ACE
IP Gateway marked with an asterisk is associated with a terminal server port. A
tooltip identifies the number of supported terminal server ports.
For a detailed description of the various ACE3600 ports, see the ACE3600 RTU
Owner’s Manual.
3-15
Operation
For a detailed description of the various ACE1000 ports, see the ACE1000 RTU
Owner’s Manual.
3-16
Operation
For a detailed description of the various IRRInet-M ports, see the IRRInet-M AC
RTU Owner’s Manual or IRRInet-M DC RTU Owner’s Manual.
3. For the preferred port, select the Media type from the drop-down list (e.g. RS232)
Result: The corresponding (default) port parameters and user parameters appear.
(e.g. RS232, Async, Local Computer, Computer 1)
4. Set the port and link parameters as preferred. (See examples for SI1 and S2
below.) Some parameters are selected from a drop-down list. Others (e.g. Links,
Zones, Protocols) are configured by clicking on a button and changing the settings
in a popup window. For a detailed description of the parameters, see Appendix A:
Site Configuration Parameters below. For more information on communication
links attached to a port, see Defining Communication Links for a Site below.
Note: In a system with redundancy, the same MDLC Link name must be defined
3-17
Operation
for the INTR1 internal port used to connect between the primary and secondary
RTU. Other changes made to one RTU’s port/link configuration are not
automatically applied to its peer.
Note: The IP addresses of redundant peers must be on the same segment. If the IP
address of one peer is changed to another segment, the Change IP Address in
Redundancy Peers dialog appears. Change the IP addresses as necessary and
click OK.
5. To add terminal server ports to an ACE IP Gateway only, click the TS Ports tab
(and then click Add/Modify Ports.)
In the Add TS Ports dialog, click Append Port to add a terminal server port. Set
the IP Address and Link Name as necessary.
Note: The IP address of the terminal server ports cannot be same as the Gateway
IP port address.
Select the physical port over which the Gateway should route packets to the
terminal server.
Result: The corresponding port in the Ports tab is marked with an asterisk.
3-18
Operation
To remove one or more terminal ports from the Add TS Ports dialog, select the
terminal ports to be deleted, and click Remove Ports.
Click OK to close the Add TS Ports dialog.
To remove a terminal server port from the TS Ports tab, click the port name to
select it, and then click Remove Port at the bottom of the screen.
For more on the ACE IP Gateway, see the ACE3600 STS Advanced Features
manual.
6. To change advanced port settings, click the port name on the left and then
Advanced Configuration, or double-click the port name.
Result: The Advanced Configuration for the port appears. For a detailed
description of the advanced port parameters, see Appendix A: Site Configuration
Parameters below. For third party protocols, an additional tab (e.g. PLC Master,
PLC Slave, Modbus Master, Modbus Slave) appears with additional advanced
parameters. For IP ports with more than one link, the Advanced Link Layer
parameters can be configured separately for each link.
7. To add the port configuration to the gallery for use in other sites, click Add Port
to Gallery. For more details, see Storing Elements in the Gallery below.
8. If you click another site or area when there are any unsaved changes to the port
configuration, you are prompted to save the changes. Click Yes to apply the
changes or No to discard the changes.
3-19
Operation
1. If the site definition is not open, double-click the preferred site in the
Diagram/Table View, or single-click it in the system tree on the System tab, or
single-click the site in the Diagram/Table View and select Site->View.
Result: The site definition appears.
3-20
Operation
Click Yes to set the field and set the I/O modules to Not Used, or No to retain the
I/O module configuration.
Result: If the field is set, the I/O modules are set to Not Used and disabled.
For more information, see the “Automatic I/O Recognition” section of the
ACE3600 STS Advanced Features manual.
4. For each module in the frame (for ACE3600, only if automatic I/O modules
recognition is not selected,) select the I/O type to be assigned from the drop-down
list.
Result: Next to each assigned module, a green Used icon appears. For each
assigned module, the module icon (1-8) at the top of the screen turns yellow.
Note: The Main board of the ACE1000 is read-only.
3-21
Operation
5. Click anywhere in the entry for the preferred I/O module to enable Advanced I/O
Configuration and Add I/O to Gallery.
6. Click Advanced I/O Configuration to set the advanced parameters for the I/O
module (or double-click the preferred module number.)
Result: The Advanced Configuration screen for the I/O module appears.
The screen header reflects the frame and module number of the I/O module.
3-22
Operation
3-23
Operation
3-24
Operation
7. Modify the parameters using the drop-down lists or fields on the screen. For a
detailed description of the parameters, see Appendix A: Site Configuration
Parameters below.
To apply the changes, click OK. To cancel the changes, click Cancel.
Result: The Advanced IO Parameters screen closes.
8. To add/modify an I/O expansion frame for the RTU (ACE3640, ACE3680 only),
click Add/Modify Frames, or right-click the gray area under the list of modules
and select Add/Modify Frames from the context menu.
Note: I/O expansion frames cannot be added to IRRInet-ACE RTUs.
Result: The Add/Modify Expansion Frames screen appears.
To select/deselect or activate/deactivate the preferred expansion frame, click the
corresponding Used/Active fields. By default, an added frame is also activated.
Note: Expansion frames can also be removed or deactivated using commands from
the expansion frame context menu.
Up to 13 I/O expansion frames can be added to the RTU’s site configuration. An
expansion frame must be activated in order for it to be recognized by the RTU.
For more on I/O expansion, see the ACE3600 RTU Owner’s Manual and the
ACE3600 STS Advanced Features manual.
To apply the changes, click OK. To cancel the changes, click Cancel.
3-25
Operation
9. (ACE3600 only) Click Advanced next to a frame (or select Advanced from the
frame context menu) in order to configure the I/O expansion related parameters for
that (main or expansion) frame.
Result: The Advanced dialog appears.
The advanced frame parameters include frame ID (0=Main Frame, 1=Expansion
Frame 1, etc.), Active (Active/Not Active), and Power Supply information. The
frame ID field is read-only. The Active field is read-only for the main frame. The
Switch Configuration is set using Switch Connections. For details on setting the
advanced frame power supply parameters, see Appendix A: Site Configuration
Parameters below.
3-26
Operation
10. (ACE3600 only) To configure the power supply for a specific frame, click PS
Configuration at the bottom of the screen, or select PS Configuration from the
I/O tab context menu (or click Power Supply in the Power Supply section on the
Advanced tab.)
Result: The Power Supply Configuration screen appears.
Select the preferred frame and modify the parameters as preferred. For details on
setting the power supply parameters, see Appendix A: Site Configuration
Parameters below.
To apply the changes, click OK. To cancel the changes, click Cancel.
Result: The Power Supply Configuration screen closes. Note: The power
supply type for the frame is designated by a 2 or 3 letter code (e.g. ACc=AC with
charger, 12L=DC 12V low-tier) next to the frame name.
3-27
Operation
11. (ACE3600 only) To configure how the expansion frames are connected to the
main frame in a system with I/O expansion, click Switch Connections, or select
Switch Connections from the I/O tab context menu.
Result: The Switch Connections screen appears.
By default, the connection of expansion frames to the expansion LAN switch(es)
is configured automatically as shown in Table 1-1-1.
To change the switch connection, click Manual and select the preferred switch
configuration for each expansion frame.
The expansion module can be connected directly to the Eth1 port on the main
CPU, connected to one of eight ports on the expansion LAN switch which is
installed on the main frame, or connected to one of eight ports on the second
expansion LAN switch, which is installed on the main frame. For more
information, see the ACE3600 RTU Owner’s Manual.
3-28
Operation
12. (ACE3600 only) To collapse/expand the expansion frames in the I/O tab, select
Collapse All Frames/Expand All Frames from the expansion frame context
menu.
13. (ACE3600 only) To copy a frame configuration to other expansion frames, select
Copy Frame from the expansion frame context menu.
3-29
Operation
14. To add the I/O configuration to the gallery for use in other sites, click the Add I/O
to Gallery. For more information, see Storing Elements in the Gallery below.
15. If you click another site or area when there are any unsaved changes to the I/O
configuration, you are prompted to save the changes. Click Yes to apply the
changes or No to discard the changes.
Note: In a site which is assigned to an application, for which I/O linking has already been
done, changing the I/O configuration can impact the I/O links. In this case, the
configuration cannot be saved until the opened application is closed.
Note: If a firewall is enabled in a system with I/O expansion, you may be prompted to add
IP addresses to the firewall IP Address List. You can do this manually or have the STS do
it automatically. You may be prompted to remove unnecessary IP addresses from the
address list. For details, see the “Firewall” section of the ACE3600 STS Advanced
Features manual.
3-30
Operation
Procedure 1-1-9 describes how to customize the I/O configuration of an IRRInet-M site.
An IRRInet-M RTU may comprise up to 4 DI modules and 12 DO modules on the main
board, and up to 4 DI modules and 12 DO modules on the expansion board (if one is
defined).
1. If the site definition is not open, double-click the preferred site in the
Diagram/Table View, or single-click it in the system tree on the System tab, or
single-click the site in the Diagram/Table View and select Site->View.
Result: The site definition appears.
2. To customize the I/O configuration, click the I/O tab of the window.
Result: The I/O tab appears, as shown for the IRRInet-M RTU below. The top
section of the tab indicates the I/O configuration on the main board and the I/O
configuration on the expansion board (if one is defined). There is a fixed number
of I/O elements, which is determined by the selected Model ID (board ID and I/O
expansion).
3. At the bottom of the I/O tab, a list of I/O advanced parameters can be configured.
The parameters are determined by the board type (AC/DC). For details on setting
the I/O advanced parameters, see Appendix A: Site Configuration Parameters
below.
4. If you click another site or area when there are any unsaved changes to the I/O
configuration, you are prompted to save the changes. Click Yes to apply the
changes or No to discard the changes.
3-31
Operation
Procedure 1-1-10 describes how to customize the advanced parameters of a site. Note that
the advanced parameters for a legacy RTU site are customized in the relevant
ToolBox/Configurator utility.
1. If the site definition is not open, double-click the preferred site in the
Diagram/Table View, or single-click it in the system tree on the System tab, or
single-click the site in the Diagram/Table View and select Site->View.
Result: The site definition appears.
2. To customize the advanced Parameters, click the Advanced tab of the window.
Result: The Advanced tab appears.
3-32
Operation
3-33
Operation
3. Click the preferred parameter category to view the parameters in that category.
5. If you click another site or area when there are any unsaved changes to the
advanced parameters, you are prompted to save the changes. Click Yes to apply
the changes or No to discard the changes.
Procedure 1-1-11 describes how to customize the add-on options of an existing site.
1. If the site definition is not open, double-click the preferred site in the
Diagram/Table View, or single-click it in the system tree on the System tab, or
single-click the site in the Diagram/Table View and select Site->View.
Result: The site definition appears.
2. To customize the add-on options, click the General tab of the window.
Result: The Add-Ons appear in the bottom right-hand corner.
3. To add or delete add-on files to the project and attach/detach them to/from the site,
click Add-On Manager.
Result: The Add-On Manager appears. For more information, see Managing
Add-On Files below.
3-34
Operation
Procedure 1-1-12 How to Define Communication Links for a Site within a System
1. To define the communication links for a site, set up the preferred link in the port
configuration of the preferred port(s), e.g. RSlink1 for port SI1. (See Customizing
the Configuration of a Site above.)
Result: The link names appear in the Diagram View, attached to the site.
The number of links defined for each site appears in the Table View.
Note: In systems with redundancy, the same Link name must be defined for the
INTR1 internal port used to connect between the primary and secondary CPU.
3. Modify advanced physical layer and advanced link layer parameters as necessary.
For a detailed description of the advanced parameters, see Appendix A Site
Configuration Parameters. For third party protocols, an additional tab (e.g. PLC
Master, PLC Slave, Modbus Master, Modbus Slave) appears with additional
advanced parameters.
5. For all IP communication, click the Advanced Parameters tab and configure the
dynamic IP routing as necessary. For a detailed description of the Dynamic IP
Routing advanced parameters, see Appendix A: Site Configuration Parameters.
6. By default, all links are displayed in the Diagram View. To select which links to
display, click the Links icon above the Diagram/Table View (you may have to
click System to return to the System View.)
Result: The Select Links dialog appears.
3-35
Operation
To hide a link in the Diagram View, deselect the Show <linkname> command
from the link name context menu.
7. If there is any link conflict (e.g. data speed), the link appears in the Diagram View
in red and a description of the conflict is provided in a tooltip. To view the details
of the link conflict, select the ‘<linkname> radio information’ command from the
context menu.
Result: The Link Information dialog appears.
To view one of the sites (and resolve the conflict), click the preferred site and click
View Site.
Result: The selected site appears in the site view.
3-36
Operation
Procedure 1-1-13 How to Import the Site Configuration for a Legacy RTU
1. To import the site configuration to a site, click Import Site Configuration in the
site view.
Result: The Import Legacy Site Configuration dialog appears.
3-37
Operation
2. Browse and click the preferred site configuration file. (For file types, see Table 1-
1-2.)
3. Click Open. (If you choose not to import the site configuration file at this time,
click Cancel.)
Result: If the selected site configuration is appropriate for the RTU, the defined
ports appear in the Ports section of the screen. If the selected site configuration is
not appropriate for the RTU, an error message appears.
3-38
Operation
In various STS utilities, click Local to use the local connection or enter the remote Site
ID/Link ID to communicate with a remote site.
Note: If the site supports redundancy, enter the private ID (either Site ID+1 or Site ID-1)
as the Site ID. This value can be seen in the site view General tab in the Private Site ID
field.
3-39
Operation
Setting Up Communication
Before the ACE3600 STS can communicate with the various sites in the system, certain
parameters to be used by the MDLC communication driver must be set.
Procedure 1-1-14 describes how to set the parameters to be used by the communication
driver.
Note: Any change to a parameter in Communication Setup causes all MDLC
communications which are in progress to be aborted automatically.
1. To set the communication driver parameters, select Setup -> Comm Setup, or
select Start -> Programs -> Motorola ACE3600 System Tools Suite <version>
-> MDLC Communication Setup, or double-click the Comm Setup console icon
in the system tray at the bottom of the computer screen, if such appears.
Result: The basic Communication Setup window appears.
3-40
Operation
Before each MDLC session, MDLC sends a ‘start protection’ message, after which
the remote prevents MDLC messages from being sent to Third Party protocol. At
the end of the session, an ‘end protection’ is sent which opens the port to all
MDLC messages. If communication fails and the ‘end protection’ transmission is
lost, protection ends after a few minutes, as determined by an internal timer.
4. To modify the advanced parameters for the MDLC communication, click More.
Result: A list of advanced parameters appears. For an explanation of the
advanced parameters, see Appendix A: Site Configuration Parameters below.
3-41
Operation
6. Click OK to save the communication setup or Cancel to close the window without
saving the setup.
7. To restore the default values for the four advanced parameters, click Restore
Default.
Result: The parameters return to their original values.
1. Before using the MDLC communications, the driver parameters must be set. (See
Setting Up Communication.)
details, see the relevant USB port instructions provided with the ACE36000 STS
installation.
3. Select a command which requires MDLC communication (e.g. download) and use
the legacy MDLC password that you entered during project creation to access the
unit.
Result: The MDLC driver icon appears in the system tray at the bottom of the
computer screen. While the STS is communicating with the RTU, the
icon at the top right hand corner of the relevant window (generally in the
connection bar) is animated.
Note: The legacy MDLC password entered when creating the project is used for
all communication driver sessions with the units in the project. For information on
MDLC communication in a secure system, the “MDLC Communication Driver”
section of the ACE3600 Advanced System Security User Guide.
For information on changing the MDLC password, see Changing the MDLC
Password below and “MDLC Password Change” in the ACE3600 STS Advanced
Features manual.
4. To stop the driver, select Setup -> Stop Comm Driver, or right-click the MDLC
driver icon and select Stop Driver.
5. To change the communication parameters, select Setup -> Comm Setup, or right-
click the MDLC driver icon and select Change Settings.
Result: The Communication Setup window appears.
Follow the instructions in Setting Up Communication above.
6. To view the MDLC driver version, right-click the icon and click About.
7. To view a brief note on the connection, place the mouse on the icon.
Result: A tool tip appears above the icon.
8. To close the MDLC driver console, right-click the icon and select Exit.
Result: The MDLC driver console in the system tray closes.
Note: For nonsecured communication with all sites in the project, the STS uses the MDLC
password entered during project creation. For exceptions to this rule, see Changing the
MDLC Password and Overriding the MDLC Password. If you select a local connection or
a remote site ID which is not part of the project, and the selected site uses a different
password than the STS, communication will fail.
Downloading to a Site
Multiple files/blocks can be downloaded to the RTU. These blocks can include ‘C’
application and ‘C’ data, compressed application software and attachments for backup
3-43
Operation
within the RTU, application source files, phonebook data, etc., based on the RTU type.
You can also download new system firmware to ACE3600 and IRRInet-M RTUs. (For
legacy RTUs, new system firmware is downloaded from the relevant
ToolBox/Configurator.) Settings made in the Site Download window are remembered for
the next download session.
Before downloading new system software, make sure the communication driver is not
running on the port to be used for the download. (IRRInet-M only)
Before downloading new system software, check your file versions carefully. A firmware
file whose version is greater than that of the existing site configuration or ladder
application cannot be downloaded to ACE3600/IRRInet-ACE RTUs.
If such a firmware file is downloaded to an IRRInet-M, the RTU fails, a LED is turned on
(see Controls and Indicators in the relevant owner’s manual) and the ERR LED flashes. In
this case, press the pushbutton to erase the user part of the Flash memory (site/network
configuration, ‘C’ application, phonebook, etc.) The RTU starts up with the newer
firmware version and the default site configuration for that version. If you want to remain
with the newer firmware version, you must download a newer, compatible version of the
configuration, plus any other user flash files which are required. If you prefer to return to
the previous (older) firmware, download the older firmware file, then download the older
user flash contents (configuration, ‘C’ application, etc.)
3-44
Operation
2. To specify the connection, select Local for a local connection, or select the
preferred Link ID. Note: If the site supports redundancy, the Site ID field reflects
the private ID (either Site ID+1 or Site ID-1), as shown in the site view General
tab. You cannot download firmware to the common site ID.
Note: If a site is redundant, you must download the firmware to both primary and
secondary CPUs.
3-45
Operation
Check CRC on When the RTU is started up, perform a CRC check on the
startup system.
Evaluate request Evaluate the downloaded firmware image before burning it to
the Flash. This protects the RTU from a situation where a
flawed firmware image is downloaded and it becomes
impossible to communicate with it remotely.
3-46
Operation
4. To see all the files currently associated with the site in the list of Files, select View
all site files (default). To view only the files that are checked in the list of Files,
uncheck View all site files.
Result: (All RTUs) If this is the first MDLC communication session of the
MDLC driver, you are first prompted to confirm the MDLC driver password.
If changes were made to the project, you are prompted to save the project before
downloading.
The Download button turns into the Abort button. Any messages/errors are
displayed in the Download Progress Window.
Two progress bars in the right side of the window. One shows the progress of the
current file download. The other shows the progress of the total download.
If the site ID was changed in the unit, the new site ID appears in the STS site view.
To abort the download, click Abort.
Procedure 1-1-17 describes how to download information other than system firmware to a
site. This procedure can also be used to erase the flash of a unit.
Note: Once a site configuration has been downloaded to an ACE1000 RTU via the STS, it
can only be configured and administered using the STS. To administer such an RTU using
the ACE1000 Easy Configurator, first erase the flash to restore it to the factory default site
configuration. For details on erasing the flash via STS, see below. For details on erasing
the flash using the ACE1000 Easy Configurator, see the “Resetting the ACE1000
RTU/FEP” section of the ACE1000 Easy Configurator User Guide.
3-47
Operation
1. To download files other than system firmware to a site, click the Download icon
in the site view, or select Site -> Download in the menu bar.
Result: If changes were made to the project, you are prompted to save the project.
The Site Download window appears with the list of files that can be downloaded.
For each unit type, the list of files varies. Those files in the list which are marked
with a check need to be downloaded.
2. To specify the connection, select Local for a local connection, or select the
preferred the Link ID for a remote connection. Note: If the site supports
redundancy, the Site ID field reflects the private ID (either Site ID+1 or
Site ID-1), as shown in the site view General tab.
Source entries, where applicable. The Site Table entry appears for the ACE IP
Gateway, if the user has created a site table, and for the IRRInet-M RTU. For
legacy RTUs, the Network Configuration entry appears by default. The Site
Configuration entry only appears after it is imported, as described in Importing a
Site Configuration. For ACE1000 RTUs, Site Configuration and Network
Configuration entries appear by default. Other file types may be added using the
Add On Manager as described in Managing Add-On Files below.
4. Select those files to be downloaded to the site (i.e. site configuration, network
definition, application, site source, add-ons). The files available for download
include files created automatically by the STS (e.g. site configuration, network
definition) and files created by the user in the STS (e.g. phonebook, IP conversion
table, ladder application and files) which are added in the Managers and site Add-
Ons section.
The site source file includes all the site files except for the firmware. The files are
zipped by the STS when the Site Source option is selected in the Site Download
screen. In addition, user can add his own files (documents, drivers, spreadsheets,
etc.) using the Settings. Comments can be attached to the site source as well.
For the ACE1000, the Downloader limits which files can be downloaded together,
as follows:
• A package can be downloaded with other packages, but not with other file
types (e.g. a package and site configuration cannot be downloaded together.)
• A bundle can be downloaded with other bundles, but not with other file types
(e.g. a bundle and site configuration cannot be downloaded together.)
• IEC files (.app and .crc) must be downloaded together and separate from other
file types.
• ‘C’ application files (plx and dat) must be downloaded separately from other
file types (e.g. a .plx and site configuration cannot be downloaded together.)
• ‘C’ application files (plx and dat) can be downloaded together (i.e. one .dat
and one .plx, two .dat files, or two .plx files.)
3-49
Operation
The New Site ID field is used to change the Site ID in the unit, if necessary. The
system address is used in networks where more than one system exists.
Change the settings and click OK to save or Cancel to cancel.
Note: If the Site ID was changed in the STS site configuration, it must be changed
in the Download Settings before downloading to the site.
In a redundant site, if the requested new site ID is already in use (or reserved for
the private ID of a redundant peer Site ID-1 or Site ID+1 in systems with
redundancy), you are prompted to enter a different site ID. When the private ID of
the current RTU is changed, the common ID and peer ID are changed accordingly.
The IDs only change for the downloaded site and its peer (if such exists) if the
download was successful.
Select Load and Reset to download the application and restart the RTU. Choose
this option if this is the first time that the RTU is being loaded with an application,
or if the RTU has been programmed in the past but the database of the downloaded
3-50
Operation
Select Load Only to download the application without restarting the RTU. Choose
this option if the RTU has been programmed in the past and you wish to retain the
current database values or if you have made minor changes in the application (no
changes in database, or in constants, or in rungs that have differentiators or
constants).
Click OK.
Note: If you make changes to the database and select Load Only, a popup
message appears explaining that Load Only is not allowed because changes were
made to the database. In this case, select Load and Reset.
The one case where this popup may not appear is when differentiators are added to
rungs. Under certain circumstances, this popup does not appear. Therefore, select
Load and Reset any time a differentiator is added to a rung.
To add a user file, click Add User File and select the preferred file using the
Open dialog.
Note: It is recommended that the downloaded site source file not be larger than
1MB and that the amount of free Flash memory in the RTU be substantially larger
than the file size.
3-51
Operation
To delete a user file, click the preferred file and then click Remove File.
(Note: Remove File is only enabled when files added by the user are selected.)
Result: The selected file is deleted from the list.
Click OK.
Result: The STS zips all files listed in the Site Source dialog into the <project
name>.zip file which can then be downloaded.
8. In the Downloader Settings section, select the preferred Unit Reset and Flash
Erase options, as described in the table below.
Note: To restore an ACE1000 unit to the default (factory) site configuration, select
Erase all flash before download.
9. To see all the files currently associated with the site in the list of Files, select the
View all site files field (default). To view only the files that are checked in the list
of Files, uncheck the View all site files field.
3-52
Operation
current file download. The other shows the progress of the total download.
If the site ID was changed in the unit, the new site ID appears in the STS site view.
To abort the download, click Abort.
2. To upload via the local connection, click Local. To upload via another link, enter
the preferred Link ID. Click OK to upload.
Result: The Site Upload dialog appears with a list of all files in the RTU. Note
that only the site configuration, phonebook, network source file, IP conversion
table, site table and site source files can be uploaded. These are files that can be
viewed using STS utilities. Other files which are stored in the unit cannot be
viewed using STS utilities, and therefore cannot be uploaded.
For redundant sites, files from a secondary site cannot be uploaded to a primary
site and vice versa.
3-53
Operation
The names of the uploaded external files (e.g. network source, phonebook, IP
conversion table) which were attached to the site also appear in the Upload
Progress window. For example, when uploading an IP conversion table, the file
is named upl#<site id>.ipc. If the file has been uploaded before, you are prompted
to overwrite the existing file or rename it upl#<site id>_<n>.ipc.
Uploaded files can then be manipulated in the project. For example, the uploaded
IP conversion table appears in the IP Conversion Table Manager and can be
assigned to sites.
Note: If no site configuration was ever downloaded to the unit, the Default Site
Configuration label appears in the Site Upload dialog.
3-54
Operation
In ACE1000, if the DNP Master is enabled in the RTU, the uploaded file list
includes three additional files:
In ACE1000, if the DNP Slave is enabled in the RTU, the uploaded file list
includes one additional file:
• DNP Slave report – specifies the mapping between the IO slave elements
to the RTU tables.
Procedure 1-1-19 describes how to change the system firmware in an ACE3600 RTU.
1. From the site view, select Site -> Change RTU Version or context menu, or from
the system view, click the site name in the Diagram/Table View or system tree
and select Change RTU Version.
Result: The Change RTU Version dialog appears with the list of valid system
firmware versions for this unit type (e.g. 10.00, 11.00, 12.00, etc.)
3-55
Operation
Note: The list of system versions for each RTU type can be viewed in the
Inventory tab under RTU.
System firmware versions and STS (configuration/application) versions are
correlated (15.00/15.50, 16.00/16.50, 17.00/17.50, etc.)
2. From the drop-down list, select the new system version and click OK.
Result: The RTU Version Information dialog appears, describing the changes
that will occur to the system, configuration, and application.
If the upgraded site contains an application which is assigned to other sites, the
RTU Version Information dialog prompts the user to either upgrade all the
assigned sites, or to unassign the application from the upgraded site.
3-56
Operation
3. Click OK to confirm.
Result: When upgrading, the site configuration and application versions in the
STS are advanced. When downgrading, the site configuration and application
versions remain unchanged.
The firmware file(s) of the selected site are replaced in the STS. The firmware file
is checked in the Downloader screen and the site is marked as “Needs
Download”.
Note: If a downgraded site includes I/O expansion, the expansion frames continue
to be displayed in the STS and can be configured. A message appears warning the
user that some features may not be supported after the configuration is
downloaded to the RTU. A site configuration with I/O expansion cannot be
downloaded to firmware < 13.00.
4. Using the Downloader, download the selected system file(s) to the RTU.
Result: The unit’s firmware is upgraded/downgraded.
Note: When the versions of the site configuration, application and firmware are
not synchronized, the application may not operate properly.
Important: The Change RTU Version operation cannot be undone.
3-57
Operation
5. As a result of the changed firmware version, certain site files (e.g. Site
Configuration, Ladder Application, IOS file, IPC V6) may be affected. In that
case, these files are marked in the Downloader with a check mark (i.e. “Needs
Download”.) If there is an assigned application, it must be recompiled.
Download all marked files, including the recompiled application, in order to
complete the firmware version change.
For more information on downloading, see Downloading to a Site above.
Closing a Project
Procedure 1-1-20 describes how to close a project.
2. Click Save to save changes or Don’t save to discard the sites/areas from the
project. Click Cancel to keep the project open.
3. If other changes were made to the project, the prompt below appears:
3-58
Operation
Click Yes to save changes and close the project, No to close the project without
saving changes, and Cancel to keep the project open.
3-59
Operation
1. To start the STS, select the program from the Start->Programs -> ACE3600
STS<version>->STS or double-click the STS shortcut from the ACE3600
STS<version> folder on your desktop.
Result: The STS interface opens and the Open Project dialog appears.
If the STS is already open, click the Open icon.
2. To select one of the displayed projects, click the preferred project name and click
Open, or double-click the project name.
Result: If the requested project was created in the current STS version, it opens.
If the requested project was created in a previous STS version, an upgrade prompt
appears.
3-60
Operation
Browse for the preferred project (.spj file) and click Open.
Result: If the requested project was created in the current STS version, it opens.
If the requested projected was created in a previous STS version, follow the
instructions in step 2 to upgrade.
4. To remove a project from the list of project names, right-click the preferred project
and select Remove Project from List from the context menu.
Result: The selected project is removed from the list of project names. To return
the project to the list of project names, click Other Project and browse to the
project. Once the project opens, it appears on the list of project names.
5. To edit the description of a project in the list of project names, right-click the
preferred project and select Edit Description from the context menu.
Result: The Edit Project Description dialog appears.
Enter the preferred text and click OK.
Result: The specified description appears in the Description column for that
project in the list of project names.
3-61
Operation
Managing Applications
The STS Application Manager enables the user to create, edit, delete application programs
and assign applications to sites.
The left side of the screen lists the Applications in the project.
The right side of the screen lists the Sites in the project.
In both sides of the screens, you can choose to View Details (default) or View
List.
2. To create an application for an ACE3600 RTU, click the New Application icon
.
Result: You are prompted to enter a name for the new application.
Enter a name and click OK.
Result: The new application program opens in the Application Programmer
window.
For details on programming an application, see the Application Programmer
chapter in this manual. Application programs for legacy RTUs are created in the
relevant ToolBox/Configurator.
3-62
Operation
3. To import an existing application into the project, click the Browse and Import
icon .
Result: An Open dialog appears.
Browse to the preferred application program (*.adb, *.prg) and click Open.
Result: The selected application is added to the project.
Note: If you open a .prg file, it is converted into an ACE3600 application (.adb).
5. To delete one or more existing applications, select the preferred application(s) and
click the Delete Application icon .
Result: The selected application program(s) is deleted from the STS.
3-63
Operation
1. To edit the link costs, select System -> Set MDLC Link Costs.
Result: The Set MDLC Link Costs dialog appears.
2. Change the default cost of a given link type as preferred. Click OK to save
changes to the Link Costs or Cancel to cancel changes. To restore the previous
3-64
Operation
Note: Editing link costs causes the existing network tables to be changed and the
network configuration must be downloaded to existing sites again (i.e. all sites
with an attached network table will be marked as Needs Download.)
Note: To set the cost of one specific link, see the Configuring MDLC Links section.
This generic network table is read-only and is automatically updated to reflect changes (i.e.
new sites and new links) to the system. The user can create customized tables and these
can be edited and deleted. It is the responsibility of the user to update the contents of these
customized tables.
The Network Manager enables the user to create, edit, copy, and delete network tables in a
project. For more information on network configuration, see the “Network Configuration”
chapter in the ACE3600 STS Advanced Features manual. For details on customizing a
network table, see Editing a Network Table.
The left side of the screen lists the Network tables in the project.
The right side of the screen lists the Sites in the project.
In both sides of the screens, you can choose to View Details (default) or View
List.
3-65
Operation
Result: When the modified table is closed, you are prompted to enter a name for
the new network table.
3-66
Operation
3. To edit an existing network table, select the preferred network table and click the
Edit table icon .
Result: The selected network table opens in the Network Configuration Editor
window.
For details on editing a network table, see Procedure 1-1-44 How to Edit a
Customized Network Table below.
4. To delete an existing network table, select the preferred network table and click
the Delete table icon .
Result: The selected network table is deleted from the STS.
5. To copy an existing network table, select the preferred network table and click the
Save Table As icon.
Result: The Specify New Item dialog appears.
Note: If the site ID is changed in the project or a new site is added to the project, the STS
updates the generic network table when the site is saved. Any user-defined network tables
must be updated manually by the user.
3-67
Operation
2. To increase the number of links of a certain type (e.g. RS link), click the spin
control up/down arrow for that type. Then click the up arrow to allocate more
links of that type.
Result: The number of Free Links is reduced by the same amount.
The number of squares in the grid representing the link type (e.g. green for RS
link) increases. All subsequent link squares move lower in the grid.
Note: Links that have been allocated to a certain site port, are marked, as shown
for RS Link1 above.
3-68
Operation
3. To reduce the number of radio zones (by default 9) associated with a radio link,
click the down arrow for that radio link and scroll and click the preferred number.
Result: The number of allocated zones for that radio link is reduced. The number
of Free Zones is increased by the corresponding amount.
Note: If a link has already been assigned to a port in a site, it cannot be removed in
the MDLC Links Configuration.
4. To restore the default the number of links of a certain type or the number of radio
zones associated with a radio link, click Restore Defaults. Here too, if a link has
already been assigned to a port in a site, it cannot be removed in the MDLC Links
Configuration.
6. To set the link cost of a specific link, right- click an assigned link, and select Set
specific cost to <link name>.
Result: The Set Specific Cost dialog appears.
The Default Cost is the default link cost for this link type, as set in the MDLC
Link Costs tool.
3-69
Operation
The left side of the screen lists the IP conversion tables in the project.
The right side of the screen lists the Sites in the project.
In both sides of the screens, you can choose to View Details (default) or View
List.
4. To copy an existing IP conversion table, click the table file name (e.g. myipc1),
and then click the Copy IP Conversion Table File icon.
Result: You are prompted to enter a file name for the new table.
Enter the file name (e.g. myipc2) and click OK.
Result: The new copy of the IP conversion table appears in the list of IP
Conversion Table Files and can be edited.
5. To attach an existing IP conversion table to one or more sites, select the preferred
IP conversion table and click the preferred site(s) in the list of Sites.
Note: Only one IP conversion table can be attached to a given site.
Once an IP conversion table has been attached to a site, it appears in the list of
downloadable files for the site in the Download utility.
Result: The selected IP conversion table is attached to the specified sites. If the
View Details view is selected, the IP conversion table name appears next to the
site name(s).
Note: When an IP conversion table is assigned to an IRRInet-M RTU, there is no
DNS support.
6. To detach an existing IP conversion table from one or more sites, select the
preferred IP conversion table and click the preferred site(s) in the list of Sites
which are currently attached to the table.
Result: The selected IP conversion table is detached from the specified sites. If
the View Details view is selected, the IP conversion table name appears next to
the site name(s).
Note: If the site ID is changed in the project or new sites added to the project, any user-
defined IP Conversion tables must be updated manually by the user.
1. To manage add-on files, select System -> Add-On Manager or click Add-On
Manager from the site view.
Result: The Add-On Files Manager appears.
The screen header lists the current add-on file type for either an ACE3600,
IRRInet-M, or legacy RTU. When the Add-On Manager is opened from the
System menu, the default file is ‘C’ Application for ACE3600 RTU.
The left pane of the screen lists File Types for the current platform.
The center pane lists the add-on files of a given type in the project, if any have
been added. The right pane lists the Sites in the project.
In both the center and right panes, you can choose to View Details (default) or
View List.
Note: If the site definition includes an invalid combination of ports, the Add-On
Manager will not open.
For IRRInet-M RTUs, the application name (slave or master) appears in the Files
in Project list.
2. To add a new file to the project, first select the preferred RTU type (e.g.
ACE3600, ACE Gateway, IRRInet-M, ACE1000.) Select the preferred file type
from the File Types list (see Table 1-1-6, Table 1-1-7, Table 1-1-8, and Table 1-1-
9.)
Result: The current add-on file type in the screen header changes to the selected
file type. The center pane of the screen lists the add-on files of the specified type
in the project, if any have previously been added.
Click the Browse and Import icon .
Result: The Add dialog appears.
3-72
Operation
Browse to the preferred file (e.g. PLC file, ‘C’ application, ‘C’ application
parameters, NTP configuration, modem configuration, etc.) and click Open.
Result: The selected file appears in the list of Add-On Files.
3. To attach an add-on file to one or more sites, select the preferred file and click the
preferred site(s) in the list of Sites.
Note: Only one file of each type can be attached to a given site at a time, except
for ‘C’ applications and ‘C’ application parameters (with and without reset).
Once a file has been attached to a site, it appears in the list of downloadable files
for the site in the Download utility.
Result: The selected file is attached to the specified sites. If the View Details
view is selected, the file name appears next to the site name(s). The file also
appears in the list of Add-Ons in the site view.
Note: In a system with redundancy, add-on files attached to one site are not
automatically attached to the peer site.
4. To detach an add-on file from one or more sites, select the preferred file and click
the preferred site(s) in the list of Sites which are currently attached to the table.
Result: The selected file is detached from the specified sites. If the View Details
view is selected, the file name appears next to the site name(s).
5. To delete one or more add-on files from the project, select the preferred file(s) and
click the Delete icon or press the Delete key.
Result: The selected file(s) is deleted from the list of Add-On Files.
3-73
Operation
3-74
Operation
3-75
Operation
3-76
Operation
For the ACE IP Gateway, IRRInet-M (master) and MOSCAD-M RTUs, this table is
managed using the Site Table Manager. For IRRInet-M (master), the STS automatically
creates a master (read-only) Site table. The Site Table Manager enables the user to copy
the master Site table and make changes to the copy, to import, edit, assign, and delete Site
table files. For the ACE IP Gateway and MOSCAD-M RTUs, there is no master Site
table. The Site Table Manager is used to create, import, edit, assign and delete the Site
table.
Note: The IRRInet-M master site table entry for Site ID 1 represents the ICC with which
the IRRInet-M master communicates.
When creating a Site table, for each destination RTU, the user should define a symbolic
name, logical address (Site ID), and the link (link ID) through which it is connected. When
programming the process using ladder rungs, the user should employ only the symbolic
site name in the appropriate rung for sending the data to that site. For further details
including examples, refer to Appendix E: User Defined MDLC Communication.
Note: The STS Site table should not be confused with the application database Site Table,
described in Appendix E: User Defined MDLC Communication, which is used in RTU-to-
RTU communication and displays the COMFAL bit for each site/link.
For important information on configuring the Health Check mechanism and Site table for
the ACE IP Gateway, see the “ACE IP Gateway” section of the ACE3600 STS Advanced
Features manual.
1. To manage Site table files, select System -> Site Table Manager, or select Site
Table Manager from the right-click context menu in the system view.
Result: The Site Table File Manager appears.
3-77
Operation
The left pane of the screen lists the Site Table Files.
The right pane lists the Sites in the project.
In both the left and right panes, you can choose to View Details (default) or View
List.
3. To edit a Site table (not the master file), click the file name in the left pane and
click the Edit site table icon .
Result: The selected Site table file opens.
After making changes, click Close. You are prompted to save the changes in a
new file. Click Yes to save the changes.
Note: The master Site table cannot be edited.
4. To delete an existing Site table, select the preferred Site table and click the Delete
table icon .
Result: The selected Site table is deleted from the STS.
Note: The master Site table cannot be deleted.
5. To copy an existing Site table, select the preferred Site table and click the Copy
site table icon.
3-78
Operation
3-79
Operation
Note: If the site ID is changed in the project or a new site is added to the project, the user-
defined site table(s) must be updated manually by the user.
6. To assign a site table to sites, click the preferred site table in the list of Site Table
Files (left panel).
Result: The selected site table name is highlighted.
In the list of sites (right panel), click to select those sites to which the site table
should be assigned.
Note: The STS does not allow you to assign an ACE IP Gateway site table file to
an IRRInet-M/MOSCAD-M/legacy IP Gateway site, or to assign a
legacy/IRRInet-M site table to an ACE IP Gateway.
For important information on configuring, see the ACE3600 STS Third Party
Protocols Manual.
The left pane of the screen lists the DNP Master Files.
3-80
Operation
Type a name for the new DNP Master file and click OK.
Result: An empty DNP editor screen opens.
Make preferred changes and save them. Click Close.
3-81
Operation
3. To edit a DNP configuration (not the master file), click the file name
in the left pane and click the Edit icon . Result: The selected
file opens.
After making changes, click Close. You are prompted to save the
changes in a new file. Click Yes to save the changes.
4. To delete an existing file, select the preferred file and click the
Delete icon .
Result: The selected file is deleted from the STS..
5. To copy an existing file, select the preferred file and click the Copy
icon. Result: A dialog box appears.
3-82
Operation
2. To upload via the local connection, click Local (default.) To upload from a
remote site, uncheck Local and enter the preferred Site ID/Link ID. Click OK to
upload.
Result: The Field View appears with RTU configuration information, which helps
to uniquely identify the unit. The information is arranged in four tabs: General,
Ports, I/O and Files. In systems with I/O expansion, an additional tab named
Frames displays the status of expansion frames. For redundant sites, relevant
redundancy configuration information appears.
3-83
Operation
Note: The file size displayed in the Field View (in the unit) is different than the
file size displayed in the Downloader window (in the STS). Because (as of
V16.50) files are compressed in the RTU, the file size in the RTU is generally
smaller, in spite of the header added to the compressed files.
One exception is the configuration file, because of the new site ID, and legacy
password added when downloading.
The network file in the STS is bigger than that in the RTU because only relevant
links are downloaded to the RTU.
site selected.
Result: The Upload New Site dialog appears.
2. To upload via the local connection, click Local (default.) To upload from a
remote site, uncheck Local and enter the preferred Site ID/Link ID. Click OK to
upload.
Result: The Upload New Site dialog appears with RTU configuration
information, which helps to uniquely identify the unit before uploading. The
information is arranged in four tabs: General, Ports, I/O and Files. In systems
with I/O expansion, an additional tab named Frames displays the status of
expansion frames. Note that the Unit Type for IRRInet-M RTUs is listed as
MOSCAD-M.
3-85
Operation
The Site Upload dialog lists all files in the RTU, but only the site configuration,
phonebook, network source file, and IP conversion table can be uploaded. These
are files that can be viewed using STS utilities. Other files which are stored in the
unit cannot be viewed using STS utilities and therefore are not uploaded.
3-86
Operation
4. To upload the RTU configuration, check the preferred files to be uploaded, and
click Upload.
Result: The Upload button becomes the Abort button. The progress of the
upload is displayed in the progress bar. Any errors/messages are displayed in the
Upload Progress window at the bottom of the screen. The site configuration is
uploaded into a new site in the project and appears in the Diagram/Table View
and the project tree.
If the site being uploaded is a redundant site and another redundant CPU is defined
in the system, you are instructed to change the default MDLC Link name (in the
definition of the INTR1 internal port used to connect between the primary and
secondary RTU). The MDLC Link Name must be unique for each set of peers
within the system.
If the site being uploaded is a redundant site and its peer already exists in the
system, a message appears that the STS will force required configuration changes
(if any) to the existing site.
Note that the Unit Type for IRRInet-M RTUs is listed as MOSCAD-M.
3-87
Operation
Note: When uploading an IRRInet-M slave RTU with a PRIS ID which is already
used in the project, a dialog appears to enable the user to enter a new PRIS ID.
The names of the uploaded external files (e.g. network source, phonebook, IP
conversion table) which were attached to the site also appear in the Upload
Progress window. For example, when uploading a network source file from a unit,
the file is named upl#<site id>_1.scf. If the file is uploaded again, it is named
upl#<site id>_2.scf.
Note: If no site configuration was ever downloaded to the unit, the Default Site
Configuration label appears in the Site Upload dialog.
3-88
Operation
3. To specify the RTU to which the files are to be downloaded, select Local for a
local connection, or select the preferred Site ID/Link ID.
4. To specify the order of sites for downloading, select the priority from the
Download Priority drop-down list.
When planning the order, keep in mind that downloaded sites need to restart. So,
3-89
Operation
if you choose to download first to the local site, downloading to remote sites must
wait for the local site to restart.
5. Set time delay (sec) in the Delay Between Sites field if the communication time is
limited and needs to reestablish from one site to the next.
7. To open an existing download session settings file, select Profile -> Open.
Result: The Open dialog appears.
Select the preferred download session settings file and click Open.
8. After all sites, download files and settings have been defined, click Download to
begin the download process.
Result: The Download button turns into the Abort button. Any messages/errors
are displayed in the Download Progress window.
Two progress bars in the right side of the window. One shows the progress of the
current file download. The other shows the progress of the total download.
Each time a site file has been successfully downloaded the site check box changes
to unchecked state and all its files are marked as “Downloaded” (unchecked).
3-90
Operation
3. Enter the new password and click OK (or click Cancel and return to the
Communication Settings dialog.
Result: The Override MDLC Password dialog closes.
3-91
Operation
5. To clear the password override, click the yellow gear icon again, clear the
Override communication password checkbox, and click OK.
Result: The gear icon reverts to gray background. If the MDLC driver is active, it
is restarted with the original password.
The password override is also cleared when you close the project or when you exit
the STS.
2. In the Old password field, enter the current MDLC password (defined during
project creation.)
3. In the Password field, enter the new password (between 6 and 10 characters.)
3-92
Operation
5. Select the preferred radio button to change the password in the project alone, or to
change it in both the project and all sites.
Note: Changing the password in the project alone is useful when preparing a
project offline, e.g. from a template project, or when you receive the project from
a third party and need to change the project password to the one used in your
system.
6. Click OK.
Result: The following warning appears.
7. Click OK.
Result: The RTUs in the system view are marked as Needs Download.
The MLDC password update mode menu appears in the status bar on the bottom
of the screen.
While in MDLC password update mode, the STS remembers the actual password
of each site in the project, to enable communication with each site and to enable
downloading the updated configuration file to the RTU.
3-93
Operation
9. To communicate with an updated site during the password change process (e.g. to
verify that the download was successful), initiate the communication (e.g. click
Start).
Result: A password mismatch message appears.
Click Yes to change the STS password and wait for the MDLC driver to restart.
Perform the preferred STS operation.
Afterwards, continue changing the MDLC password in the next RTU.
Note: The mismatch message will be displayed again because of the difference
between the MDLC driver (updated password) and the next RTU (previous
password.)
10. To temporarily override the password in a site during the password change
process, see Overriding the MDLC Password.
11. To exit MDLC password update mode before all sites have been updated, select
Setup -> Leave MDLC Update Mode or select Leave MDLC Update Mode
from the MDLC password update mode menu.
3-94
Operation
1. Select System -> Add Comment, or right-click the preferred spot on the Diagram
View and select Add Comment from the context menu.
Result: The comment field appears.
4. With the mouse, drag the comment to the preferred location on the screen.
3-95
Operation
1. To change the page setup before printing, select File -> Page Setup.
Result: The Page Setup dialog appears.
3-96
Operation
2. To print all the diagrams in the system, select File -> Print->All.
To print the system in Table View, select File -> Print->Tables.
To print the current area, select File -> Print->Current Area.
Result: The standard Windows print dialog appears. Click OK to print.
3. To see a print preview of all the diagrams in the system, select File -> Print
Preview->All Diagrams.
To see a print preview of the system in Table View, select File -> Print Preview-
>Tables.
To see a print preview of the current area, select File -> Print Preview ->Current
Area.
Result: A preview of the requested system components appears on the screen.
3-97
Operation
Renaming a Site
Procedure 1-1-38 describes how to rename a site.
2. To rename a site in the site view, click in the Site name field and enter the new
site name.
3. To change the site ID in the site view, click in the Site ID field and enter the new
site ID.
Result: A warning message appears that changing the site ID in the site
configuration does not change the site ID in the unit. This must be done in the
Download settings before downloading to the site.
Click OK to confirm.
Result: The new site ID replaces the old one in the site view and system view.
The site ID in the system-generated generic network table is updated.
3-98
Operation
• Site information
Note: In systems with I/O expansion, all error messages from I/O expansion frames are
periodically collected by the main CPU and saved with the main frame error messages.
When an error message is logged in the RTU, the ERR LED is lit on the CPU front panel.
In systems with I/O expansion, when an error message is logged in either the main frame
or I/O expansion frames, the ERR LED is lit on the main CPU front panel and the MERR
LEDs are lit on all expansion modules. When the messages are cleared, the ERR/MERR
LED(s) are turned off.
Procedure 1-1-39 describes how to retrieve error messages logged in the RTU.
Procedure 1-1-39 How to Retrieve Error Logger Information from the RTU
1. To retrieve/view error logger information from the system view, click a site from
the Diagram/Table View and select Site -> Logger, or from the site view, click
the Logger icon.
Result: The Error Logger window appears.
3-99
Operation
2. To retrieve logger information from the local site, click Local. To retrieve logger
information from a remote site, uncheck Local and enter the preferred Site ID and
Link ID.
Note: To retrieve error messages from an RTU with I/O expansion using a local
connection, the STS PC must be connected to the STS port of the main CPU (on
the main frame) or to the STS port of the expansion module (on the expansion
frame.)
3. To have the errors erased from the RTU after they are retrieved, select Erase RTU
errors after communication (selected by default). For legacy RTUs, this option
cannot be disabled.
4. To start retrieving error logger information from the unit, click Start.
Result: A gray header line marked PC Logger Request appears in the logger
window, followed by the errors retrieved from the RTU.
The first entry summarizes the number of errors, warnings, and messages in the
log.
In systems with I/O expansion, error messages which relate to I/O expansion
frames are marked “Expansion Frame <number>”.
Note: In earlier versions of STS (<=12.50) errors originating in expansion frames
are displayed without the special marking (Expansion Frame <number>.)
Error logger entries are also stored in a log file under the STS Log directory. The
name of the log file is Errorlog<n><date><time>.log (e.g.
Errlog712.27.05_15.14.46.log).
3-100
Operation
(If this is the first communication session of the MDLC driver, you are first
prompted to confirm the MDLC driver password.)
5. To stop retrieving error logger information from the unit, click Stop.
Result: The communication aborts.
6. To sort the messages in the Error Logger window by severity or by Date & Time,
click the corresponding column heading.
Note: If you sort the entries, all rows marked “PC Logger Request” is
permanently deleted from the view.
7. To search for text within the logger window, enter the preferred string in the Find
field and press Enter.
8. To clear the list of logger entries from the Error Logger window, click Clear.
3-101
Operation
The Software Diagnostics utility allows access through the communication (local or
remote) to each of the devices according to their logical names (the devices are created
with a logical name). The status of each device at different levels of breakdown can be
retrieved from the RTU and can provide historical and statistical data on the device
activities. The Software Diagnostics data is useful for system maintenance, problem
identification for remote services and statistics data on the communication system
performance.
Procedure 1-1-40 describes how to retrieve software diagnostics information from the
RTU. For a detailed explanation of the diagnostics, see the ACE3600 STS/ACE1000
Software Diagnostic Output and Error Messages manual.
3-102
Operation
2. To retrieve software diagnostics from the local site, click Local. To retrieve
software diagnostics from a remote site, uncheck Local and enter the preferred
Site ID and Link ID.
4. From the Device drop-down list (default list), select the preferred hardware device.
To see the actual device list for the RTU, first click the Get Device List icon
and the Device drop-down list is updated.
In ACE3600 systems with I/O expansion, select the preferred frame (Main or
Frame 1-13) from which to retrieve the diagnostic and click the Get Device List
icon.
Select the preferred device.
In the Level field, enter the preferred diagnostic level.
On an ACE1000 RTU, once the Device drop-down list is updated, select the
SYSTEM device, Level 6 and click Start to get additional devices.
3-103
Operation
5. To start retrieving software diagnostics information from the unit, click Start.
Result: Software diagnostics entries are displayed in the logger window and
stored in a log file under the STS Log directory. The name of the log file is
Diaglog<n><date><time>.log (e.g. Diaglog712.27.05_15.14.46.log).
(If this is the first communication session of the MDLC driver, you are first
prompted to confirm the MDLC driver password.)
In systems with I/O expansion, diagnostics retrieved from I/O expansion frames
are marked “Frame <number>” in the diagnostics header.
If the specified frame does not exist, an error “Frame does not exist” is displayed.
If there is a communication problem (i.e. the frame is disconnected,) an error is
displayed.
If an expansion frame is selected for a software device in a system without I/O
expansion, an error “Device does not exist” is displayed.
6. To stop retrieving software diagnostics information from the unit, click Stop.
Result: The communication aborts.
7. To search for text within the logger window, enter the preferred string in the Find
field and press Enter.
8. To clear the list of software diagnostics entries from the Diagnostics Logger
window, click Clear.
3-104
Operation
10. Double-click the preferred log file to open it and view the contents.
-Every change in the state of the inputs defined as Time-Tagged DI and the time of
occurrence.
-The old and the new time when performing synchronization. If two synchronizations have
been performed and no events have occurred in between, then only the last
synchronization time is stored.
Note that the synchronization time default is 1.1.80 0:0:0.0, and synchronization should be
performed at least once every 48 days.
3-105
Operation
• In the application, using the “Sync” (for ladder) or MOSCAD_sync (for ‘C’
application) function call
If the description of the application database exists in the STS, the logical names of the
variables are displayed.
If the database description does not exist, the coordinates (X, Y, Z) of the variables are
displayed.
Procedure 1-1-41 describes how to retrieve time tagged event logger information from the
RTU.
Procedure 1-1-41 How to Retrieve Time Tagged Event Logger Information from the RTU
1. To retrieve/view time tagged event logger information from the system view, click
a site from the Diagram/Table View and select Site -> Logger, or from the site
view, click the Logger icon.
Result: The Logger window appears.
2. To retrieve logger information from the local site, click Local. To retrieve logger
information from a remote site, uncheck Local and enter the preferred Site ID and
Link ID.
3-106
Operation
4. To start retrieving time tagged event logger information from the unit, click Start.
To start retrieving time tagged event logger information from the unit and clear the
information from the unit after retrieval, click Start&Clear.
Result: Time tag logger entries are displayed in the logger window and stored in a
log file under the Log directory. The name of the log file is
Timelog<n><date><time>.log (e.g. Timelog712.27.05_15.14.46.log).
(If this is the first communication session of the MDLC driver, you are first
prompted to confirm the MDLC driver password.)
3-107
Operation
5. To stop retrieving time tagged event information from the unit, click Stop.
Result: The communication aborts.
6. To search for text within the logger window, enter the preferred string in the Find
field and press Enter.
7. To clear the list of time tagged event logger entries from the Error Logger
window, click Clear.
3-108
Operation
1. To set the date and time in a site, click the Date & Time icon at the top of the site
view. Or select the preferred site from the system in the Diagram/Table View or
from the system tree, and select Site -> Site Date & Time.
Result: The Site Date & Time window appears.
3-109
Operation
2. To retrieve the date and time from the site, click Get.
Result: The site's date and time appears.
3. To set the site's date and time to that of the STS PC, click Set.
Result: The site's date and time is set to that of the PC and is displayed in the Site
Date & Time window.
Synchronizing a Site
The ACE3600 STS enables the user to synchronize one site or all the sites in the system to
the same date and time as the host computer.
Procedure 1-1-43 describes how to synchronize the date and time of sites to that of the PC.
1. To synchronize sites in the system with the date and time of the STS PC, in either
the site view or system view, select System -> Sync in the menu bar.
Result: The Sync window appears.
2. To send a Sync command to the site(s) attached to a given link, specify the
preferred Link ID in the Link ID field and click Sync.
3-110
Operation
Result: The date and time of the site(s) are synchronized with the PC. If the
synchronization is successful, a message appears.
3. To send a Sync command over all links to all sites in the system, click All Links
and click Sync.
Result: All sites connected to current site are synchronized to the PC's date and
time. If the synchronization is successful, a message appears. Note that All Links
does not work on DIAL.
4. To close the Sync window without performing the synchronization, click Cancel.
Note: Synchronization can also be performed using the ‘Sync’ function call (Ladder
language.)
For systems with I/O expansion, see the “Time & Sequencing Synchronization of I/O
Expansion” section in the ACE3600 STS Advanced Features manual.
Unlike the generic network table, user-defined network tables can be edited and deleted. It
is the responsibility of the user to update the contents of these customized tables.
The Network Manager enables the user to create, edit, copy, and delete network tables in a
project. For more information on the Network Manager, see Procedure 1-1-24 How to
Manage Network Tables.
Procedure 1-1-44 describes how to edit a customized network table for a site.
1. In the system Diagram/Table View or system tree, right-click the preferred site
and select Network Editor. Or from the Network Manager, click the preferred
user-defined network table and click the Edit table icon.
Note: If no network table is attached to the site, the Network Editor command is
disabled.
Result: The network table attached to the site (or selected network table in the
Network Manager) opens in the Network Configuration Editor.
3-111
Operation
2. Using the drop-down lists add, modify, or delete the links attached to each site.
Add site IDs as preferred.
3. To edit the link costs, click Set MDLC Link Costs. See Editing Link Costs
below. Be aware that editing link costs impacts all network tables in the project.
4. Paths via remote sites may be used instead of a link which directly connects two
RTUs. To enable a transmitting node to choose an alternate data routing path
when the initial Direct Link fails, if an alternate exists, click the Alternative Path
to Local Link icon. To disable it, click it again (toggle).
For more information on network routing, see the “Network Configuration”
section of the ACE3600 STS Advanced Features manual.
5. Click the Save icon to save the customized network table or click Close to
cancel the definitions.
Result: The Network Configuration Editor closes. The customized network
configuration is saved in the project.
3-112
Operation
Note: If the site ID is changed in the project or a new site is added to the project, any user-
defined network tables must be updated manually by the user.
The Site Table Manager enables the user to create, edit, copy, and delete Site table files in
a project. For more information on the Site Table Manager, see Managing Site Tables
(ACE IP Gateway, IRRInet-M, MOSCAD-M, and ACE1000).
Procedure 1-1-45 describes how to edit a customized Site table file for a site.
1. In the system Diagram/Table View or system tree, right-click the preferred site
and select Site Table Editor. Or from the Site Table Manager, click the
preferred user-defined Site table and click the Edit table icon.
Note: If no Site table is attached to the site, the Site Table Editor command is
disabled.
Result: The Site table attached to the site (or selected Site table in the Network
Manager) opens in the Site Table Editor.
3-113
Operation
2. Click in the Site ID cell to enter the Site ID for the RTU being added. (Note: The
Site ID was defined for the RTU in its site configuration.)
3. Click the Retries cell to enter the number of attempts to be made to communicate
with a non-responding RTU. The valid range of retries is 1-255. The default is 1.
4. Double-click the Timeout cell to define the time (in seconds) to wait between
communication retries. The minimum value is 1 second; the maximum value is
255 seconds.
5. Using the drop-down list add, modify, or delete the Primary Link ID attached to
the site.
3-114
Operation
10. Values can be changed for more than one link at the same time.
To change the Retries for more than one link, select the preferred Retries cells
and click the Change Retries icon .
Result: The Change Retries window appears.
Enter the preferred number of retries and click OK.
Result: The number of retries for all selected links
To change the Timeout for more than one link, select the preferred Timeout cells,
click the Change Timeout icon , and enter the preferred Timeout value.
To change the Primary Link ID for more than one link, select the preferred
Primary Link ID cells, click the Change Primary Link ID icon , and enter
the preferred Primary Link ID value.
11. Click the Save icon to save the customized Site table. If the file is new, you
are prompted to enter a file name. Enter the Site table file name and then click
OK. Click Close to close the table file.
OR click Close and you are prompted to save the changes. To exit without saving
the changes, click No. (To remain in the table and make further changes, click
Cancel.) To save the changes, click Yes. If the file is new, you are prompted to
enter a file name. Enter the Site table file name and then click OK.
Result: The Site Table Editor closes. The customized Site table is saved in the
project.
Note: If the site ID is changed in the project or a new site is added to the project, any user-
defined network tables must be updated manually by the user.
The Site Table Manager enables the user to create, edit, copy, and delete Site table files in
a project. For more information on the Site Table Manager, see Procedure 1-1-28. For
3-115
Operation
information on the ACE IP Gateway Site table, the Link Validity interval and health check
mechanism, see the ACE3600 STS Advanced Features manual.
Procedure 1-1-46 describes how to edit a customized Site table file for a site.
1. In the system Diagram/Table view or system tree, click the preferred site and
select Site Table Editor. Or from the Site Table Manager, click the preferred
user-defined Site table and click the Edit table icon.
Note: If no Site table is attached to the site, the Site Table Editor command is
disabled.
Result: The Site table attached to the site (or selected Site table in the Network
Manager) opens in the Site Table Editor.
2. Click the Site ID cell to enter the Site ID for the RTU being added. (Note: The
Site ID was defined for the RTU in its site configuration.)
3. Click the Retries cell to enter the number of attempts to be made to communicate
with a non-responding RTU. The valid range of retries is 1-255. The default is 1.
4. Double-click the Timeout cell to define the time (in seconds) to wait between
communication retries. The minimum value is 1 second; the maximum value is
255 seconds.
5. Using the drop-down list add, modify, or delete the Primary Link ID attached to
the site.
3-116
Operation
6. Double-click the Primary Link Validity cell. The Gateway tests communication
with the sites on a regular basis. If a site has not responded within this interval, the
link is considered unreachable. Define the interval.
Note: If a link ID in a site is empty, the corresponding Link Validity must be set
to 000:00:00.
7. If relevant, using the drop-down list, add, modify, or delete the Secondary Link
ID attached to the site.
8. Double-click the Secondary Link Validity cell and define the interval.
12. To insert a new line, click the Insert New Line icon .
To delete the current site, click the Delete Current Site icon .
To delete a group of sites, select the sites, and then click the Delete Group of
Selected Sites icon .
To sort the entries, click the Sort by Site ID icon .
13. To append a group of sites, click the Append Group of Sites icon .
Result: The Append Group of Sites dialog appears.
Enter the first Site ID to be added and the number of sites to be added.
Enter the values for Retries, Timeout, Primary/Secondary Link IDs and Link
Validity.
Click OK.
Result: A group of sites is appended after the current line. The values for each of
the new sites (except Site ID) are the same.
If a new Site ID already exists in the site table, an error message is displayed. The
corresponding entry is created in the table with a blank Site ID.
3-117
Operation
14. Values can be changed for more than one link at the same time.
To change the Retries for more than one link, select the preferred Retries cells
and click the Change Retries icon .
Result: The Change Retries window appears.
Enter the preferred number of retries and click OK.
Result: The number of retries for all selected links is displayed.
To change the Timeout for more than one link, select the preferred Timeout cells,
click the Change Timeout icon , and enter the preferred Timeout value.
To change the Primary Link ID for more than one link, select the preferred
Primary Link ID cells, click the Change Primary Link ID icon and enter the
preferred Primary Link ID value.
To change the Primary Link Validity for more than one link, select the preferred
Primary Link Validity cells, click the Change Primary Validity icon and
enter the preferred Primary Link Validity value.
To change the Secondary Link ID for more than one link, select the preferred
Secondary Link ID cells, and click the Change Secondary Link ID icon and
enter the preferred Secondary Link ID value.
To change the Secondary Link Validity for more than one link, select the
preferred Secondary Link Validity cells, and click the Change Secondary
Validity icon and enter the preferred Secondary Link Validity value.
3-118
Operation
15. Click the Save icon to save the customized Site table. If the file is new, you
are prompted to enter a file name. Enter the Site table file name and then click
OK. Click Close to close the table file.
OR click Close and you are prompted to save the changes. To exit without saving
the changes, click No. (To remain in the table and make further changes, click
Cancel.) To save the changes, click Yes. If the file is new, you are prompted to
enter a file name. Enter the Site table file name and then click OK.
Result: The Site Table Editor closes. The customized Site table is saved in the
project.
Note: If the site ID is changed in the project or a new site is added to the project, any user-
defined Site tables must be updated manually by the user.
The STS also enables the user to call from the PC to a modem connected to any unit in the
system by means of a dialup modem (HAYES or compatible), and perform all the
functions of the STS remotely (from the office, home, or any other place.) The setup
required and the use of the Dialup feature are described below.
Modem Connections
Before dialing a modem from the STS, ensure that the data speed of the PC
communication port is equal to the modem data speed. Use the Communication Setup
utility to modify the communication port data speed. See Setting Up Communication
below.
Connect the modem to the RTU communication port defined as RS-232 Local Computer
port.
To connect the modem, use the modem adapter cable FLN6458 (with male 25-pin D-type
connector).
3-119
Operation
Communication link
RTU
RS-232-C RTU RTU ..... RTU
Auto-Answer
Modem
Telephone Line
Modem
STS
The communication port of the RTU/FIU connected to the modem is defined as Computer
port to allow the engineer to temporarily disconnect the modem and connect the STS
instead. Note that the connection cable to the computer is different.
The data speed of the communication port of the RTU/FIU connected to the modem
should be equal to that of the modem. When connecting to the PC instead of to the
modem, the data speed of the PC COM port should also be set up to that of the RTU port.
The unit connected to the modem may be referred to as Local or by Site ID and Link ID.
All other sites in the system should be referred to by their Site ID and Link ID.
For example, for the Hayes Smart Modem 1200 the jumpers should be as detailed in the
following table.
The jumpers setting of the modem connected to the central are detailed in the following
table.
3-120
Operation
For more instructions on setting up the modems, see “Appendix B: Remote STS Modem
Setup” in the ACE3600 STS Advanced Features manual.
Parameter Settings
Some of the dialup parameters may be changed by the user, if necessary. The changes are
made directly in the WMDLCDRV.INI file located in the STS<version> Prg directory.
The file can be modified using a standard Windows text editor. The relevant parameters
are found in the [Dial] section of the file, as shown below.
[Dial]
pcc_delay_dial0= 50
pcc_dial_method0= 0
;pcc_reset_str0=ATZ
;pcc_waitafterreset0=0
Table 1-1-10 describes the dialup parameters which can be modified by the user.
Parameter Description
pcc_delay_dial0 Enables the user to lengthen the pause time in dialing.
pcc_dial_method0 Specifies whether the dialing method is Tone
(0-default), Pulse (1) or the default of the phone line
(2).
pcc_optional_str0 Text to be appended to, or sent in place of, the default
string, per pcc_override0, if such is required by the
modem. After defining the modem string, uncomment
the line in the wmdlcdrv.ini file to enable it. This
string is sent to the modem each time before dialing.
3-121
Operation
Parameter Description
pcc_override0 Used to send the optional and reset strings.
(as of STS V14.50) If pcc_override0= 1, the optional string is used
instead of the default string.
If pcc_override0= 0 and an optional string is
defined and uncommented, it is appended to the default
string (same behavior as STS <V14.50.) After setting
the parameter, uncomment the line in the wmdlcdrv.ini
file to enable it. If the line remains commented, the
behavior is the same as STS <V14.50.
For behavior with the reset string, see pcc_reset_str0
and pcc_waitafterreset0 below.
pcc_reset_str0 If pcc_override0=1, this reset string, instead of the
default ATZ and ATS0=0, is sent to the modem after
reset (i.e. the first time the MDLC driver connects to
the modem, or after dialing fails.) If the pcc_reset_str0
value is commented or blank, the default ATZ and
ATS0=0 are not sent to the modem after reset.
If pcc_override0=0, the default ATZ and ATS0=0 are
sent to the modem after reset, and any value in
pcc_reset_str0 is ignored.
pcc_waitafterreset If pcc_override0=1 sets the number of seconds to wait
0 after sending pcc_reset_str0.
If pcc_override0=0 or is not set, this wait is ignored.
In order for the changes to the Dial Up utility to take effect, save the wmdlcdrv.ini file,
close all STS tools and stop the MDLC Communication Driver.
1. In the site view, select Site -> Phonebook Editor or from the site context menu
on the system tree.
Note: If no modem is defined in the site, the Phonebook Editor command is
disabled.
Result: An empty phonebook (if none exists) or the site’s phonebook opens in the
Phonebook Editor.
3-122
Operation
2. For each site equipped with a dialup modem (up to 1000), enter the phone
numbers (up to three) for the modem.
3. To print the phonebook, click the Print icon at the top of the screen.
Result: The print dialog appears and the phonebook numbers can be printed to the
specified print destination.
4. Click Save to save the entered phone numbers, or Cancel to exit without saving
the phone numbers.
Result: The Phonebook Editor window closes.
3-123
Operation
Procedure 1-1-48 describes how to dial the number of a modem attached to a site.
2. Enter the preferred destination phone number in the Phone Number field, or
select a previously dialed number from the drop-down list. Click Dial.
Result: The modem dials the specified number.
(If this is the first communication session of the MDLC driver, you are prompted
to confirm the MDLC driver password.)
Any progress/error messages about the connection appear in the Dialing Status of
the Dialup window.
3. To hang up the call, click Hangup. To close the Dialup window, click Close.
3-124
Operation
1. In the system Diagram/Table view or system tree, click the preferred site and
select IP Conversion Table Editor. Or from the IP Conversion Table Manager,
click the preferred IP conversion table and click the Edit IPC file icon.
Note: If no IP conversion table is attached to the site, the IP Conversion Table
Editor command is disabled.
Result: The IP conversion table attached to the site (or selected IP conversion
table in the IP Conversion Table Manager) opens in the IP Conversion Table
Editor.
3-125
Operation
2. Add or modify entries in the table. For each added entry select a site ID with an IP
link, the Link ID, and enter the IP Address or Host Domain Name.
One site may appear more than once in the file, as long as its link IDs are unique.
Note: When routing over a MDLC over IP port, the fixed IP address or domain
name of the FEP should be specified for the FEP and for each of the RTUs which
will communicate over the FEP port. In addition, the parameter Enable routing
on MDLC over IP port must be enabled in site configuration of the FEP port.
3. Click OK.
Result: The newly modified date appears in the list of IP Conversion Table Files
(if the list is set to View Details.)
3-126
Operation
Note: If a site ID is changed in the project or a new site is added to the project, the user-
defined IP conversion tables must be updated manually by the user, if necessary.
1. Select Site -> Upload or click Upload from the site view.
Result: If changes were made to the project, you are prompted to save the project.
The Upload connection selection form appears.
2. Select the preferred link ID from the Link ID drop-down list, or click Local
Connection. Click OK.
Result: The Site Upload dialog appears.
3. To upload the RTU configuration, check the preferred files to be uploaded, and
click Upload.
Result: The Upload button becomes the Abort button. The progress of the
upload is displayed in the progress bar. Any errors/messages are displayed in the
Upload Progress window at the bottom of the screen. The site configuration is
uploaded into the existing site in the project.
The names of the uploaded external files (e.g. network source, phonebook, IP
3-127
Operation
conversion table) which were attached to the site also appear in the Upload
Progress window. For example, when uploading a network source file from a
unit, the file is named upl#<site id>_1.scf. If the file is uploaded again, it is
named upl#<site id>_2.scf.
See the table below for the upload behavior of each file type.
4. To view site source files that were uploaded to the project, click the site and select
Site -> Open Site Folder.
Result: The site folder (e.g.
C:\STS<version>\Projects\MyProj\633291966294637618\Files) opens and the
uploaded site source files can be unzipped manually and viewed.
Note: If no site configuration was ever downloaded to the unit, the Default Site
Configuration label appears in the Site Upload dialog.
For information on uploading a new site from the field to the STS, see Uploading a New
Site to the STS above.
Programming an Application
The user program which runs on the RTU is defined using the Application Programmer
utility of the STS. When the Application Programmer utility is run from the STS (see
3-128
Operation
Managing Applications and below), the application can be created, compiled, downloaded
and monitored. When the Application Programmer utility is run in standalone mode, i.e.
from the Start->Programs menu, the functionality is limited to creating an application.
To program a new user application for continued use with a legacy RTU, use the
Application Programmer utility of the relevant ToolBox/Configurator.
Opening an Application
An existing user application can be opened in the STS Application Programmer for
viewing, editing, etc. An application which was created for a legacy RTU is upgraded to
the current STS version. An application which was created for an older version ACE3600
RTU may be upgraded to the current version, if preferred. In either case, if the upgraded
application is downloaded to an RTU with older firmware, certain newer features may not
be supported by the RTU.
1. To open an existing user application in a site, (from the site view) select Site ->
Open Application in the menu bar or from the context menu, or click
Application Programmer on the General tab in the site view.
Result: The application opens in the Application Programmer window.
Note: If no application has been attached to the selected site, the Open
Application command is disabled.
Copying a Site
Procedure 1-1-52 describes how to copy a site.
1. To copy a site, click the preferred site in the Diagram/Table View of the system
or in the system tree on the left side of the STS window and select Site -> Copy or
select Copy from the context menu. Or select Site -> Copy when in the site view.
2. Click the destination spot (in the system Diagram/Table View) and select System
-> Paste or Paste from the context menu.
Result: In a nonredundant site, the Paste Site dialog appears.
In a redundant site, a message appears asking if you want to paste both sites of the
3-129
Operation
pair. If you click Yes, the Paste Site dialog includes fields for both peers and the
redundancy link name.
3. Enter a unique Site ID and site name(s) for the new site(s). For a redundant site,
specify a unique link name. Click OK.
Result: The new site(s) appears in the System tree and system Diagram/Table
View. The configuration of the site(s) is identical to that of the original site(s),
except for the site ID and site name(s) and redundancy link name where relevant.
All site files are copied to the new site.
1. To move a site to an area, click the preferred site in the Diagram/Table View of
the system or in the system tree on the left side of the STS window. Select Site ->
Move to Area or select Move to Area from the context menu, or click Move to
Area in the system Diagram/Table View.
Note: If no area is defined in the system, this command is disabled.
Result: The Select Area dialog appears.
1. To mark a site as an FEP, click the preferred site in the Diagram/Table View of
the system or in the system tree on the left side of the STS window and select
System -> Toggle FEP Status.
Result: The site icon in the Diagram/Table View is replaced with the FEP icon.
2. To remove the FEP status from a site, click again on the System -> Toggle FEP
Status.
Result: The FEP icon in the Diagram/Table View is replaced with the site icon.
Deleting a Site
Procedure 1-1-55 describes how to delete a site.
1. To delete a site, click the preferred site in the Diagram/Table View of the system
or in the system tree on the left side of the STS System Designer window. Select
Site -> Delete or press the Delete key.
Result: The Confirm Delete dialog appears.
2. To delete the selected site, click Yes. To keep the selected site, click No.
Result: If you click Yes for a nonredundant site, the selected site is removed from
the system and the project is saved.
If you click Yes for a redundant site, you are prompted to delete the peer site as
well.
Click Yes to delete both peers of the site. The selected site is removed from the
system and the project is saved.
Note: If you choose to delete the primary site and leave the secondary site, you can
change the Site ID and configure I/O modules in the secondary site.
3-132
Operation
For information on database and process monitoring, see Monitoring an Application in the
Application Programmer chapter below.
• 2 System screens:
System bits and system values. The contents of these screens cannot be updated by the
user.
• 3 I/O screens:
Digital input, digital output, analog input/output (MOSCAD-M only). These values
reflect the I/Os in the RTU. Only the contents of the output screens can be updated by
the user.
• 3 User screens:
These screens contain general purpose values (floats, integers, and bits) which are
available for the programmer’s use.
• 1 Date & Time screen:
These values reflect the date and time of the real time clock in the RTU. The contents
of this screen cannot be updated by the user.
3-133
Operation
Power management status and power supply switches. The contents of these screens
cannot be updated by the user. For more on power management, see the MOSCAD-M
Configurator User Guide.
For a more detailed description of the database and information names, types and values,
refer to the ‘C’ Toolkit for MOSCAD Family RTUs manual.
• 2 I/O screens:
Digital inputs and digital outputs. These values reflect the I/Os on the main board of
the ACE1000 RTU. Only the contents of the output screens can be updated by the
user.
• 3 User screens:
These screens contain general purpose values (floats, integers, and bits) which are
available for the programmer’s use.
3-134
Operation
2. Click Local to use the local connection (default) or enter the remote Site ID/Link
ID to communicate with a remote site. Click Connect to connect.
Result: If no MDLC communication has been performed with the unit, you are
prompted to confirm the MDLC communication driver password.
The main STS Table Monitor window appears, with the RTU information: unit
type (DC/AC), main and expansion board ID and the system version, depending
on the current unit type and configuration.
The tree view on the left side contains all screens that can be monitored for this
unit type, grouped in folders: System Screens and User Screens.
Some screens are read-only; other screens are writable. Update RTU and Auto
Update are displayed only for writable screens.
On the bottom of the main window, the Output window displays information
(exactly as in the Table Monitor of the Application Programmer.)
On the bottom of each screen (in the status bar) you can see the table coordinates
of the current screen object (form field or grid cell), e.g. Table 2 Col 0 Row 0.
For a description of the MOSCAD-M table monitor screens and their fields, see
the “Monitor” chapter of the MOSCAD-M Configurator User Guide. See Table 1-
1-12 for a description of the IRRInet-M table monitor screens. Table 1-1-13
through Table 1-1-18 describe the fields in each of the IRRInet-M table monitor
screens. The actual table content (e.g. number of inputs) may vary based on the
RTU configuration.
Note: There are two kinds of screens, “form screens” and “grid screens”. Form
screens display grouped fields with their names; grid screens display data in tables.
For grid screens, it is possible to monitor part of a table, as in the Application
Programmer. For more information, see the Monitoring a Database Table section
under Application Programmer below.
See Table 1-1-19 for a description of the ACE1000 table monitor screens.
3-135
Operation
MOSCAD-M/IRRInet-M
3-136
Operation
ACE1000
3. To monitor a screen, double-click the preferred screen name (or select Monitor
from the screen name context menu or Monitor -> Start Monitor.)
Result: The screen opens and monitor is initialized. While the STS communicates
with the RTU, the icon in the connection bar of the Monitor window is
animated.
To monitor all screens in a folder, select Monitor All from the folder’s context
3-137
Operation
menu.
To stop a table monitor for a specific screen, click the X in the upper right-hand
corner of the screen. To close all open screens, select Window -> Close All.
Note: When there are no open monitor windows, the user can change the Site ID
or Link ID in the STS Table Monitor window. When user opens the first
monitored window, the STS Table Monitor window reflects the parameters of the
selected site.
4. To monitor a small block of values within the General Purpose Bits, General
Purpose Values, or General Purpose Floats screen, select Monitor -> Exclude
Section, or select Exclude Section from the context menu, select a contiguous
block of cells using the left mouse, and select Monitor -> Add Section (or select
Add Section from the context menu).
Result: The values of the selected sections are refreshed. The number of values
received from the RTU appears at the bottom of the screen.
5. To refresh the values of the currently displayed screen (or block of values) from
the RTU one time only (i.e. when not in Refresh Continuously mode), click
Refresh, or select Monitor -> Refresh (shortcut Ctrl+R), or Refresh from the
context menu.
To retrieve the values of the currently displayed screen from the RTU periodically,
click Refresh Cont, or select Monitor -> Refresh Continuously, or Refresh
Continuously from the context menu. For Refresh Continuously, enter the
refresh Rate value to specify the rate of the refresh (in seconds).
3-138
Operation
6. To update the RTU with each change to the current (writable) screen, click Auto
Update, or select Monitor -> Auto Update, or select Auto Update from the
context menu .
If Auto Update is not selected, to update the RTU with the latest database change
(when not in Refresh Continuously mode), click Update RTU or select Monitor
-> Update RTU or select Update RTU from the context menu.
Result: The specified values are updated in the RTU screen.
7. To copy and paste text from a screen, select the preferred text, and click the Copy
icon (or select Copy from the context menu). Click in the destination
(writable) table cell (grid screen only) and click the Paste icon (or select Paste
from the context menu.)
Result: The information is pasted into the destination.
To copy information from all the open screens, click the Snapshot icon.
Result: The information from all open screens is copied into the clipboard and
can be pasted as text (e.g. into Word, Excel or notepad). A message appears that
the copy was successful.
8. To change the display format, of the monitored cell(s), select Monitor -> Display
Format or select Display Format from the context menu. Click the preferred
format.
Result: The contents of the cell are redisplayed in the selected format.
9. To print the open screens, click the Print icon (or select File -> Print.) To
preview the print output, select File -> Print Preview.
Result: The open screens are printed to the print destination.
3-139
Operation
10. To open a second Table Monitor session, switch back to the STS, and in the site
view, click Monitor.
Result: Another Table Monitor session opens in parallel to the current session.
11. To exit the STS Table Monitor window, click the X in the upper right-hand
corner of the window, or select File -> Exit Table Monitor.
Screen Description
Inputs Contains the status of various digital inputs in the RTU. The values in the
Inputs screen cannot be updated by the user. Statuses are Boolean values
(ON/OFF).
Outputs Contains the status of various digital outputs in the RTU. The Outputs screen
is updated when a user ‘C’ application scans the Outputs. Statuses are
Boolean values (ON/OFF). Output values can be updated by clicking spin
buttons in the table cell or pressing the up/down arrow keys.
Analogs Contains the various analog inputs and outputs in the RTU, and
underflow/overflow statuses. The values in the Analogs screen cannot be
updated by the user. The Analogs screen is updated when a user ‘C’
application scans the Analog I/Os.
Reserved Contains the status of various elements in the RTU. The values in the
bits/values Reserved bits/values screen cannot be updated by the user, but are updated
when components of the RTU are manipulated by the user OR when their
status changes. (In the MOSCAD-M RTU, the values are not updated if the
system is in power management Idle Sleep Mode.)
Power Indicates the status of switches attached to the power supplies in the RTU.
supply The values in the Power supply switches screen cannot be updated by the
switches user. The Power supply switches screen is updated by the lower priority
background task which runs when all the other tasks are idle, but the system
is not in power management Idle Sleep mode.
Power Shows the power management Wakeup events which have been defined for
management the various threads (tasks) of the RTU. The values in the Power
status Management status screen cannot be updated by the user. The Power
Management status screen is updated by the lower priority background task
which runs when all the other tasks are idle, but the system is not in power
management Idle Sleep mode.
Time & date Contains the RTU’s current time and date information. The values in the
Time & date screen cannot be updated by the user. The Time & date screen
is updated in the RTU every second, and redisplayed on the screen as defined
by the user in the monitor options.
3-140
Operation
Screen Description
General Contains user values in Boolean format. The table consists of 8 columns of
purpose bits 250 lines each, for a total of 2000 values (0-1999) which are used in
programming. When the General purpose bits table is used by the ‘C’
application to manipulate the user’s own bits, monitoring the table allows the
user to debug the ‘C’ application. The values in the General purpose bits
screen can be updated by the user, by selecting a value from the drop-down
list.
General Contains user values in integer format. The table consists of 8 columns of 250
purpose lines each, for a total of 2000 values (0-1499) which are used in
values/user programming. When the General purpose values/user values table is used by
values the ‘C’ application to manipulate the user’s own values, monitoring the table
screen allows the user to debug the ‘C’ application. The values in the General
purpose values screen can be updated by the user by clicking in the table
cell.
General Contains user values in floating point format. The table consists of 2 columns
purpose of 250 lines each, for a total of 500 values (0-499) which are used in
floats programming. When the General purpose floats table is used by the ‘C’
application to manipulate the user’s own values, monitoring the table allows
the user to debug the ‘C’ application. The values in the General purpose
floats screen can be updated by the user by clicking in the table cell.
3-142
Operation
Table 1-1-16 MOSCAD-M/IRRInet-M STS Table Monitor Power Supply Switches Screen
Fields
3-143
Operation
Table 1-1-18 MOSCAD-M/IRRInet-M STS Table Monitor Time & Date Screen Fields
3-144
Operation
Screen Description
Inputs Contains the status of various digital inputs in the RTU. The values in the
Inputs screen cannot be updated by the user. Statuses are Boolean values
(ON/OFF).
Outputs Contains the status of various digital outputs in the RTU. The Outputs screen
is updated when a user ‘C’ application scans the Outputs. Statuses are
Boolean values (ON/OFF). Output values can be updated by clicking spin
buttons in the table cell or pressing the up/down arrow keys.
General Contains user values in Boolean format. The table consists of 8 columns of
purpose bits 250 lines each, for a total of 2000 values (0-1999) which are used in
programming. When the General purpose bits table is used by the ‘C’
application to manipulate the user’s own bits, monitoring the table allows the
user to debug the ‘C’ application. The values in the General purpose bits
screen can be updated by the user, by selecting a value from the drop-down
list.
General Contains user values in integer format. The table consists of 8 columns of 250
purpose lines each, for a total of 2000 values (0-1499) which are used in
values/user programming. When the General purpose values/user values table is used by
values the ‘C’ application to manipulate the user’s own values, monitoring the table
screen allows the user to debug the ‘C’ application. The values in the General
purpose values screen can be updated by the user by clicking in the table
cell.
General Contains user values in floating point format. The table consists of 2 columns
purpose of 250 lines each, for a total of 500 values (0-499) which are used in
floats programming. When the General purpose floats table is used by the ‘C’
application to manipulate the user’s own values, monitoring the table allows
the user to debug the ‘C’ application. The values in the General purpose
floats screen can be updated by the user by clicking in the table cell.
3-145
Operation
During hardware tests, various values and settings can be changed by the user. These
changes revert to their previous values/settings under the following circumstances:
1. To perform a hardware test on an RTU, click the preferred site from the system
Diagram/Table View in the system tree, and select Site -> Hardware Test. Or in
the site view, click Hardware Test.
Result: The Hardware Test Read RTU dialog appears.
3-146
Operation
2. Select a link attached to the site from the Link ID drop-down list or select Local,
and click Read.
Note: If no MDLC communication has been performed with the unit, you are
prompted to confirm the MDLC communication driver password.
Result: The STS retrieves the unit’s information. If I/O modules are attached to
the unit, these are displayed. For each I/O module in the unit, the specific module
type (e.g. 16 DO EE Relay 2A (V616/FLN3537)) is displayed. See I/O modules
for ACE3600 and IRRInet-M below. Note: In systems with I/O expansion, all
defined frames are displayed. Therefore, the time required to retrieve module
information is somewhat greater.
If the module that is defined in the site configuration for that slot is compatible
with the actual module in the slot, a green check appears next to the module
number.
If the module that is defined in the site configuration for that slot is incompatible
with the actual module in the slot, or the module is not responding, or missing, a
red X symbol appears next to the module number.
If the main board of an IRRInet-M unit is valid and the expansion board is in
conflict, the “Partial Valid” symbol appears next to the module number. In
this case, Hardware Tests are performed for the main board only.
3-147
Operation
4. For details on performing I/O module/expansion LAN switch tests, see Procedure
1-1-58 How to Perform an I/O Module Test on an RTU, Procedure 1-1-59 How
to Test a DI Attached to an ACE3600/IRRInet-M DI Module, Procedure 1-1-60
How to Test a DO Attached to an ACE3600 DO Module, Procedure 1-1-61 How
to Test an AI Attached to an ACE3600 AI Module, Procedure 1-1-62 How to Test
an AO Attached to an ACE3600 AO Module, and Procedure 1-1-63 How to Test
an Expansion LAN Switch Attached to an ACE3600 Expansion Frame.
Note: I/O operations cannot be performed on the standby CPU of a redundant site.
5. For details on performing CPU tests, see Procedure 1-1-64 How to Perform a
CPU Test on an RTU.
6. For details on performing LEDs tests, see Procedure 1-1-65 How to Perform a
LEDs Test on an RTU.
7. For details on performing Power Supply tests, see Procedure 1-1-66 How to
Perform a Power Supply Test on an ACE3600 RTU.
10. For details on upgrading the Expansion Loader firmware in an expansion module
(in a system with I/O expansion only), see Procedure 1-1-70.
3-148
Operation
1. To test an I/O module, click the preferred module from the list of modules in the
Hardware Test IO Modules tab. In a system with I/O expansion, first select the
preferred frame, and then select the preferred module. When the module entry
changes color, click Test Module, or double-click the entry.
Result: The Module Diagnostics appear. See Module Diagnostics for ACE3600,
IRRInet-M DC and IRRInet-M AC below. The number and types of tabs
displayed with the Module Diagnostics is a function of the types of I/Os in the I/O
module.
For a description of the I/O module parameters, see the tables below.
Table 1-1-20 ACE3600 I/O Module and Expansion LAN Switch Parameters
3-149
Operation
3-150
Operation
4. To read the current state of the I/O module (freeze or run), select Read state from
the Module State drop-down list. (ACE3600 only)
Result: The current Module Diagnostics are displayed.
To freeze the I/O module, select Freeze module from the Module State drop-
down list.
Result: The I/O module is frozen. No actual I/O values are transferred to the
application until the module is unfrozen. The application continues to run and
only the frozen I/O module is disconnected from it. All other I/O modules
continue to interact normally with the application.
To unfreeze the I/O module, select Unfreeze module from the Module State
drop-down list.
Result: The application resumes control of the I/O module.
5. To test the application stored in the RTU, select Get State from the Application
drop-down list. If no application is running, this menu option is disabled. If no
application exists in the unit, this menu option is disabled.
Result: The application state is refreshed in the Module’s Diagnostics tab.
6. To run the application stored in the RTU, select Run from the Application drop-
down list. If an application is already running, this menu option is disabled. If no
application exists in the module, this menu option is disabled.
Result: The application is restarted from the beginning. The RTU performs
operations as determined by the application program.
7. To stop the application stored in the RTU, select Stop from the Application drop-
down list. If no application is running, this menu option is disabled. If no
application exists in the module, this menu option disabled. If the application is
stopped, it is rerun automatically by the system after ten minutes.
Result: The application stops .
3-151
Operation
8. To update the FPGA file in the ACE3600 I/O module, click Update FPGA File.
Result: The Update FPGA File window appears.
Use the button to browse and select the preferred FPGA file and click Set.
Result: The FPGA file version is displayed.
Click OK to start the update.
Result: The FPGA file update in the I/O module begins:
The FPGA file is downloaded to the CPU memory in the unit.
After the file is verified, the CPU downloads it to the I/O module itself (see second
progress bar in download).
If the FPGA file being downloaded is older than the previous version, a warning
appears.
If the FPGA file being downloaded has the wrong module type, an error message
appears and the download aborts.
If after downloading the FPGA to the I/O module, the I/O module does not restart
properly, the unit returns the previous FPGA file to the I/O module.
3-152
Operation
10. To test the I/O module power supply (ACE3600 DI/AI modules only), click the
I/O Module Power Supplies tab.
For one or more power supply in the module, select Get State from the Operation
drop-down list.
Result: The Exist State, Expected State and Actual State are displayed.
11. To return to a previously viewed I/O module, select the preferred I/O module from
the Back to Module’s List drop-down list.
Result: The selected I/O module appears.
DI Test
Procedure 1-1-59 describes how to test a DI attached to an ACE3600/IRRInet-M DI
module.
1. To test a DI attached to an I/O module, click the preferred DI module from the list
of modules in the Hardware Test IO Modules tab. When the module entry
changes color, click Test Module.
Result: The Module Diagnostics appear.
3-153
Operation
3-154
Operation
Column Description
DI # Displays the input number.
State Displays the status (ON or OFF) of each input. This window cannot
be edited.
Counter Displays the value of the 64 bit counters. If there is no counter, a
“-” is displayed. This window cannot be edited.
WB State Displays the state of the Wire Break indicator which monitors
external wire connection integrity in wet inputs. (Future feature)
(ACE3600 only)
Operations Reset Counter - When selected, resets the counter.
3. To read the current state of the DI module, select Read state from the Module
State drop-down list or click Scan.
Result: The current state of the DI module (freeze or run) is displayed.
4. To reset the DI counter, select Reset Counter from the Operations drop-down list
next to the preferred DI.
Result: The selected DI counter is reset.
3-155
Operation
5. The DI filter is the time required to be sure that the DI is stable. (ACE3600 only)
To perform a DI Filter test, select DI Filter from the DI Test drop-down list. The
DI filter settings apply to all DIs in the module.
Result: The DI Filter dialog appears.
To set a new filter value (DC Mode only), enter the preferred value (between
0-254 msec) and click Set.
Result: The new filter value is assigned to the DIs.
Select DC Mode/AC Mode based on the input signal to the DIs in the module.
6. To perform a DI Counters Filter test, select DI Counters Filter from the DI Test
drop-down list. (ACE3600 only)
Result: The DI Counters Filter dialog appears.
To set a new filter value, enter the preferred value (between 0-255) and click Set.
Result: The specified filter value (multiplied by 40 μsec) is assigned to the DIs.
3-156
Operation
3-157
Operation
DO Test
Procedure 1-1-60 describes how to test a DO attached to an ACE3600 DO module.
3-158
Operation
3-159
Operation
Column Description
DO # Displays the output number.
Expected Receives the value of the selected control. (ON/OFF)
Actual Shows the actual state of the output after the CPU reads
the back indicator from the I/O module. (ON/OFF).
3-160
Operation
Column Description
Control (for all DOs except Enables the user to control the output. Open the drop-
SBO DOs) down list and select ON or OFF. The selected control is
displayed in the Expected column. Controls cannot be
activated while the application is running.
Sel. Actual (for ACE3600 Shows the actual selection state of the output after the
SBO DOs only) CPU reads the back indicator from the I/O module.
(ON/OFF).
Select (for ACE3600 SBO Enables the user to select the output. Open the drop-
DOs only) down list and select ON or OFF. The Select control is
displayed in the Expected column. DOs cannot be
selected or operated while the application is running.
3. To read the current state of the DO module, click Read state from the Module
State drop-down list or click Scan.
Result: The current state of the DO module (freeze or run) is displayed.
4. To change the state of the output (non-SBO), select the preferred state (ON or
OFF) from the Control drop-down list next to the preferred DO. (You must stop
the application or freeze the module before activating a control.)
Result: The selected control is displayed in the Expected column. To refresh the
screen, unfreeze the frozen module and click Scan, or run the stopped application.
5. To change the state of the SBO output, select the preferred state (ON or OFF)
from the Select drop-down list next to the preferred DO. (You must stop the
application or freeze the module before selecting the DO.)
Result: The selected state is displayed in the Expected column.
To operate the DO, click Operate. To deoperate the DO, click Deoperate. After
a short wait, the Actual column (and Actual field next to the buttons) should
reflect the operate (ON)/deoperate (OFF) state.
To refresh the screen, unfreeze the frozen module and click Scan, or run the
stopped application.
Note: You may select and operate/deoperate only one SBO output at a time.
6. To perform the DO Loop Test, select ON or OFF from the DO Loop Test drop-
down list. (You must stop the application or freeze the module before activating a
DO Loop test.)
Result: The loop test is performed. To refresh the screen, unfreeze the frozen
module and click Scan, or run the stopped application.
3-161
Operation
Result: The capacitor voltage is reset. If the set operation failed, the previous
capacitor voltage value is restored.
AI Test
Procedure 1-1-61 describes how to test an AI attached to an ACE3600 AI module.
1. To test an AI attached to an I/O module, click the preferred AI module from the
list of modules in the Hardware Test IO Modules tab. When the module entry
changes color, click Test Module.
Result: The Module Diagnostics appear.
3-162
Operation
Column Description
V. Reference Shows the internal reference value. In AI current modules, the
Common reference is 11200 – 11800, and in AI Voltage modules, the reference
(Parameter/Value) is 5900 - 6200.
AI # Displays the input number.
Value Displays the value of analog measurement for each input. The
readings may be in the range of -32,000 to 32,000.
If the measurement in the corresponding input is below the nominal
range (e.g. 6144 for a 4-20mA module), then UDF (for underflow) is
displayed.
If the measurement in the corresponding input is above the nominal
range (e.g. 32256 for a 4-20mA module), then OVF (for overflow) is
displayed in the Flow State column.
Type Displays the type (Current, Voltage, or Test) of the analog
measurement described in Value above.
Flow State Displays the type (Overflow or Underflow) of the analog
measurement described in Value above.
Calibrated The actual states of the inputs (Cal/UnCal).
Operations Lists the operations which can be performed (i.e. Calibrate AI).
3. To read the current state of the AI module, click Read state from the Module
State drop-down list.
Result: The current state of the AI module (freeze or run) is displayed.
The AI module must be frozen in order to calibrate the AI. Click Freeze module
if the module is not frozen.
4. To view the AI Calibration Factors, select ROM Data from the AI Test drop-
down list. For a description of the AI Calibration Factors, see the table below.
3-163
Operation
Column Description
AI# Displays the input number.
High Scale Displays the high scale of the calibration factor.
Low Scale Displays the low scale of the calibration factor.
5. To calibrate an AI, select Calibrate AI from the Operations drop-down list next
to the preferred AI.
Generally, inputs are calibrated in the factory and should not be calibrated in the
field. Calibration should only be performed if board components are replaced (or if
UNCAL appears in the Calibrated column) and with the advice of service
personnel.
Result: The Calibrate AI dialog appears. Apply the maximum input value
allowed (+20mA or +5V) to the calibrated channel, and click Calibrate to
calibrate the AI. (To stop the calibration, click Abort.)
If the I/O module is not frozen, a message appears asking if you want to freeze it.
Click Yes to freeze the module and enable calibration.
Result: Calibration begins. At the prompt, input the maximum value and the
minimum value to the calibrated AI channel.
To refresh the screen, unfreeze the frozen module and click Scan, or run the
stopped application.
To close the Calibrate AI dialog, click Close.
3-164
Operation
6. The AI filter is the number of samples for a specific AI whose average is the AI
value.
To perform an AI Filter test, select AI Filter from the AI Test drop-down list.
Result: The AI Filter dialog appears.
To set a new filter value, select the preferred value from the drop-down list and
click Set.
Result: The new filter value is assigned to the AIs.
To close the AI Filter dialog, click Close.
7. To filter electrical interference from the local power grid, select AI Diff. Mode
Filter from the AI Test drop-down list.
Result: The AI Diff. Mode Filter dialog appears.
3-165
Operation
To set a new filter value, select the preferred value from the drop-down list and
click Set. The filter value should be consistent with the local power grid.
Result: The new filter value is assigned to the AIs.
AO Test
Procedure 1-1-62 describes how to test an AO attached to an ACE3600 AO module.
1. To test an AO attached to an I/O module, click the preferred AO module from the
list of modules in the Hardware Test IO Modules tab. When the module entry
changes color, click Test Module.
Result: The Module Diagnostics appear.
3-166
Operation
Column Description
AO # Displays the output number (1-4.)
Type Displays the type (Current, Voltage, or Raw Data) of the analog
measurement described in Value above. You cannot access this field
unless the module is in freeze state.
Numeric Sets the output value in numerical form in the range of 0 to 16000.
You cannot set the output value while the application is running.
Physical Sets the output value either in voltage or current according to the
output type. The values for voltage are 0 to 10 V and the values for
current are 0 to 20 mA. You cannot access this field unless the
module is in freeze state.
3-167
Operation
Column Description
Calibrated Indicates the actual calibration states of the output. This column
cannot be edited. It may display the following statuses:
OK – calibrated for voltage and current.
UNCALIBRATED – not calibrated.
UNCAL CURRENT – not calibrated for current.
UNCAL VOLTAGE – not calibrated for voltage.
Operations Lists the operations which can be performed (i.e. Calibrate AO).
3. To display the Numeric values in hexadecimal format, select Hex from the AO
Test drop-down list. To display the Numeric values in decimal format, deselect
the Hex command.
Result: The values are displayed in the preferred format.
4. To read the current state of the AO module, click Read state from the Module
State drop-down list.
Result: The current state of the AO module (freeze or run) is displayed.
Select the Calibration Type, either Current (20mA upper limit and 0mA lower
limit) or Voltage (10V upper limit and 2V lower limit) and click Start to enable
calibration and save current state.
Result: The upper/lower limit fields are enabled.
Apply the maximum output value allowed (+20mA or +10V) to the calibrated
channel. If necessary, use the Up/Down arrows adjust the allowed deviation from
the maximum output value.
Click Calibrate to calibrate the AO.
Result: If the I/O module is not frozen, a message appears asking if you want to
freeze it. Click Yes to freeze the module and enable calibration.
Calibration begins. To stop the calibration, click Abort.
To refresh the screen, unfreeze the frozen module and click Scan, or run the
stopped application.
To return the output to Uncalibrated state, click Erase Cal.
3-168
Operation
Field Description
Calibration Type Either current (20mA upper limit and 4mA lower limit) or voltage
(10V upper limit and 2V lower limit).
10 V/2 V- These reflect the default values of upper and lower limits. These
values can be modified by clicking on the up or down arrows. The
4mA/20mA
next time the Hardware Test utility is used, the Upper and Lower
Up/Down Limits reflect the last value selected. Note that you cannot calibrate
while the application is running.
Status Reflects the status of the calibration. Can be one of: Calibrating, OK
or Fail.
Status value is last calibration state or “Calibrating”, if calibration is
in process.
6. To view the AO Calibration Factors, select ROM Data from the AO Test drop-
down list.
Result: The AO Calibration Factors appear. For a description of the AO
Calibration Factors, see the table below.
3-169
Operation
Column Description
AO # Displays the output number.
Parameter Calibration setting (Voltage High/Low, Current High/Low)
Abs. Value Reflects the actual/absolute of the upper/lower values after
calibration.
7. To test the output, select a type (Current/Voltage/Raw Data) from the Type drop-
down list next to the preferred AO. (You must stop the application or freeze the
module before activating a control.)
Enter the value of the control in either the Numeric or Physical column, and press
Enter.
Result: The specified value is sent to the selected analog output.
3-170
Operation
2. To view the link status of each of the eight ports, click the IO Links tab.
Result: The list of Links to each of the 8 ports appears.
3-171
Operation
Column Description
Link # Displays the port number (1-8.)
State Displays the port state (Connected/Disconnected.)
CPU Test
Procedure 1-1-64 describes how to perform a CPU test on an RTU.
1. To test the CPU, click the CPU tab in the Hardware Test window.
Result: The CPU parameters initially read from unit are displayed. See CPU
parameters for ACE3600 main CPU, ACE3600 I/O expansion module, ACE IP
Gateway, and IRRInet-M CPU below. For a description of the CPU parameters,
see the tables below.
3-172
Operation
3-173
Operation
2. To reread the CPU parameters, click Scan. In a system with I/O expansion, first
select the preferred frame, and then click Scan. To abort the scan, click Abort.
3-174
Operation
3-175
Operation
3-176
Operation
3-177
Operation
LEDs Test
Procedure 1-1-65 describes how to perform a LEDs test on an RTU.
1. To test the LEDs in the unit, click the LEDs tab in the Hardware Test window.
Result: The list of LEDs appears. See LEDs for ACE3600, ACE IP Gateway and
IRRInet-M below. For a detailed description of the behavior of the
ACE3600/ACE IP Gateway LEDs, see the ACE3600 RTU Owner’s Manual. For a
detailed description of the behavior of the IRRInet-M LEDs, see the IRRInet-M
RTU Owner’s Manual.
3-178
Operation
3-179
Operation
2. To view the current state of the LEDs on the CPU of the ACE3600 RTU, click
CPU LEDs Page.
To view the current state of the LEDs on an ACE3600 I/O expansion module,
3-180
Operation
select the preferred frame from the Frame LEDs drop-down list.
To view the current state of the LEDs on the CPU of the IRRInet-M RTU, select
the CPU page from the Scan LED Page drop-down list. To view the current state
of the LEDs on another page, select the preferred page from the Scan LED Page
drop-down list.
Result: The current state of the LEDs is displayed. See the LEDs state below for
the ACE 3610, ACE 3680, ACE IP Gateway, Expansion CPU, and IRRInet-M.
3-181
Operation
3. To test the LEDs, select the appropriate LEDs test from the LEDs Operations
drop-down list. For a description of the LEDs tests, see the tables below.
(To abort a test, click Abort.)
Result: The selected test is performed. The results are displayed in the Hardware
Test window.
3-182
Operation
To turn a specific (single) LED on or off, select the Hardware test page from the
Scan LED Page drop-down list, and then click the preferred LED button.
(IRRInet-M only)
Result: The selected LED is turned on or off.
3-183
Operation
1. To test the power supply in the ACE3600 unit, click the Power Supplies tab in the
Hardware Test window.
Result: The Power Supply page appears. See the Power Supply screen for
ACE3600 below. The Read Application State field reflects the status of the
application (Running/Stopped). The Read Power Supply State field reflects the
status of the power supply module (Run/Freeze).
2. To retrieve the current state of the power switches and data from the ACE36000
power supply, click Scan Power Supply 1. In a system with I/O expansion, first
select the preferred frame, and then click Scan Power Supply 1.
3-184
Operation
4. To change the state of a power switch, select the preferred state (On/Off) from the
Operation drop-down list next to the preferred power switch.
Note: The Operation drop-down list is disabled for the 12V DC low-tier power
supply. See the power supply and low-tier power supply screens below.
Result: The state of the selected power switch is changed.
To perform a battery capacity test, select Test from the Operation drop-down list
next to the Battery Capacity State entry.
Result: The capacity of the battery is tested. The state of the battery appears next
to the Battery Capacity State entry (e.g. Battery OK.)
To change the DC value of the Aux2 connector, select the preferred DC value (one
of Off, 3.3V, 5V, 7.5V, 9V or Main DC) from the Operation drop-down list next
to the Aux2 DC Value entry.
Caution: If a device is connected to either Aux2A or Aux2B and the supplied
voltage exceeds the vendor’s recommended maximum voltage, the device
might be damaged.
Result: The Aux2 DC value changes to reflect the selected value.
3-185
Operation
3-186
Operation
3-187
Operation
Table 1-1-37 Power Supply ROM Data (12V DC Low-Tier and Expansion Power
Supplies)
Procedure 1-1-67 describes how to perform a Power Supply test on an IRRInet-M RTU.
For a detailed description of the behavior of the IRRInet-M power supply, see the IRRInet-
M RTU Owner’s Manual.
1. To test the power supply in the IRRInet-M unit, click the Power Diagnostics tab
in the Hardware Test window.
Result: The Power Diagnostics page appears. See Power Diagnostics screens
for IRRInet-M AC and IRRInet-M DC below.
The Read Application State field reflects the status of the application
(Running/Stopped).
3-188
Operation
2. To retrieve the current state of the power supply data from the IRRInet-M power
supply, click Scan Power Diagnostics.
Result: The power diagnostics appear. Table 1-1-38 lists the power diagnostics.
4. To change the state of a power switch, select the preferred state (On/Off) from the
Operation drop-down list next to the preferred power switch.
Result: The state of the selected power switch changes.
3-189
Operation
To perform a test on a power switch, select Get State (or Get for Auxiliary
Power Out) from the Operation drop-down list next to the entry.
Result: The state of the power switch is tested and appears next to the relevant
switch (e.g. ON, OFF, 14.32V.)
To change the DC value of the Auxiliary Power Out connector, select the
preferred DC value (one of 5V, 7.5V, 9.5V or 12V DC) from the Operation drop-
down list next to the Auxiliary Voltage entry.
Caution: If a device is connected to the Auxiliary Power Out connector and
the supplied voltage exceeds the vendor’s recommended maximum voltage,
the device might be damaged.
Result: The Auxiliary Voltage value changes to reflect the selected value.
Note that all the power switches of the IRRInet-M should be ON when scanning the inputs
and outputs. If any one of the power switches is in the OFF position this could result in an
inaccurate DI reading.
1. To perform a test on a plug-in port/Port 3, click the Plug-ins tab in the ACE3600
Hardware Test window or the Port 3 tab in the IRRInet-M Hardware Test
3-190
Operation
window.
Result: The Plug-ins/Port 3 test window appears. See windows for ACE3600
and IRRInet-M DC below.
3-191
Operation
2. To perform a tone transmit test on a plug-in port/Port 3 attached to a radio, set the
Transmission Time (number of seconds to send the signal to the RTU), select
Tone Transmit Test from the (ACE3600) PI1 or PI2 drop-down list or from the
(IRRInet-M) PORT_3 drop-down list, and specify the transmission signal type
(Sinus data, DC data, Pseudo random data).
Result: The test is performed and the results appear in the Test Results window.
1. To perform a test on a wakeup, click the Wakeup Events tab in the IRRInet-M
Hardware Test window.
Result: The Wakeup Events test window appears.
3-192
Operation
2. In the Max Timeout Value field, set the maximum timeout value for the Timer
Elapsed wakeup events. (Default=60 seconds)
3. In the list of Wakeup Test Parameters, check the preferred event(s) as Wakeup
event(s) for the system. By default, the Timer Elapsed and PushButton Pressed
events are enabled. The various Wakeup events can be used to wake up a task
which has entered Idle Sleep mode.
Click Sleep.
Note: The Timer Elapsed and PushButton Pressed events cannot be unchecked.
Result: If the selected event occurs, the result appears in the corresponding cell in
the Actual Events column.
3-193
Operation
1. Make sure the STS PC is connected locally in standalone mode to the STS1 port
on the front panel of the expansion module. No other components can be on the
network which might create a conflict with the default IP address. (Generally, if
you specify local for communication with the expansion module, you are
communicating with the main CPU. In bootstrap mode, however, specifying local
connection means you are communicating with the expansion module.
The MDLC driver communication should be set up for serial communication. The
data speed should be set to 115200.
Disconnect the Ethernet cable so that its IP address does not collide with that of
the main CPU.
2. While powering up the expansion module, press PB2 continuously for five
seconds.
Result: The expansion module enters bootstrap mode.
3. In the STS, click the preferred site from the system Diagram/Table View in the
system tree, and select Site -> Hardware Test. Or in the site view, click the
Hardware Test.
Result: The Hardware Test Read RTU dialog appears.
3-194
Operation
5. Click … to browse and select the appropriate loader file (.bin) and click
Download.
Result: If the file is a valid expansion loader file, the download process begins.
The download progress and any messages or errors appear on the bottom of the
screen.
At the end of the download, the expansion module restarts.
3-195
Operation
The Core Dump Upload feature is configured in the ACE3600 STS site configuration
using the SMA Online advanced parameter. This feature is not available for legacy RTUs.
Procedure 1-1-71 describes how to upload the Core Dump files after a crash.
1. To run the Core Dump Upload, select a site in the system Diagram/Table View or
in the system tree and select Site -> Core Dump Upload or select Core Dump
Upload from the context menu. Or from the site view, click Core Dump
Upload.
Result: The Core Dump Upload dialog appears.
3-196
Operation
3. Click the preferred folder, or click Make New Folder to define a directory other
than the default (i.e. [C:\]STS<version>\log\Coredump) for saving the retrieved
Core Dump files, and then OK.
Result: The specified folder name appears in the Files Folder field.
4. To retrieve the Core Dump files from the restarted RTU, click Upload.
Result: The files are uploaded to the specified directory. The progress of the
upload appears in the progress bar. Any messages or errors appear in the
Download Progress window at the bottom of the screen.
Note: If the SMA Online advanced parameter was set to Disable, no files will be
found in the RTU.
For information on the Protocol Analyzer tool, see the ACE3600 STS Advanced Features
Manual.
3-197
Operation
For information on the Encryption Tool, see the ACE3600 STS Advanced Features
Manual.
The top of the ACE3600 STS graphical user interface (GUI) includes a menu bar, icons,
and a contextual link trail for navigation. On the left side of the screen, the System tab
contains system tree and the Inventory tab contains system components to add to your
3-198
Operation
system. In the main workspace, the system is depicted in graphical (diagram) or table
format, with additional icons. Below the System and Inventory tabs, a legend of icons
appears to familiarize users with the various icons used in the GUI.
Note that the ACE3600 STS user interface supports English only. It does not
support Unicode (international characters) in its fields. Only site names, site
descriptions, and diagram comments can be Unicode strings.
The following terms are used in this manual when describing aspects of the user interface:
Term Description
System view Displays information on a system level, i.e. diagram/system view.
In this view, system level commands are available, both from the
System menu and the context menu (right-click in the empty space
in the Diagram/Table View or on the system name in the system
tree).
Site view Displays information on a site level, i.e. relating to the current site.
In this view, site level commands are available, both from the Site
menu and the context menu (right-click in the site itself, or on the
site in the Diagram/Table View or system tree.)
Diagram view Displays the system in the STS main window in graphical format.
Table view Displays the system in the STS main window in tabular format.
System tab The tab on the left side of the STS screen which displays the system
in a hierarchical way.
Inventory tab The tab on the left side of the STS screen which displays the
elements and gallery components which can be used to define the
system components.
System tree The hierarchical depiction of the system in the System tab.
Icons
The icons at the top of the STS include New (create a new project), Open (open an existing
project), and Save (save project).
In system view, the icons above the workspace include Diagram View (view system
graphically), Table View (view system in tabular format), New Area (create a new empty
area), Move to Area (move selected sites/areas to an existing area), Up Area (go to the
parent area), and Links (select links to display).
3-199
Operation
Menus
The menus in the menu bar include File, View, Site, System, Setup, and Help.
Commands in the Site menu are generally disabled when in the system view. (Click a site
to enable these commands.) Commands in the System menu are generally disabled when
in the site view (or when a given site is highlighted.)
1. To view the system graphically, go to the system view (either by clicking on the
System item in the tree in the System tab or on the <System Root> link at the top
of the window) and click the Diagram View in the STS System Design main
window.
Result: The components of the system are displayed as shown in the figure below.
For each site, the Site name, Site ID, RTU model, STS software version and links
are displayed. (For redundant RTUs, the ID is actually the common ID.) By
default, the site description is displayed below the site.
When the mouse is positioned over the site/area in the display, information about
the site/area is displayed, including site name, site ID, description, unit type,
system firmware version, number of links, number of I/O modules, application
name, and download status. For redundant RTUs, the common, private and peer
IDs are also displayed.
When the download status is Needs Download, at least one file needs to be
downloaded to the RTU.
Legacy RTUs are displayed as brown (MOSCAD), pink (MOSCAD-L), green
(MOSCAD-M), or gray (IP Gateway) icons. IRRInet-M RTUs are displayed as
green icons. ACE3600 RTUs are displayed as blue icons. ACE1000 RTUs are
displayed as pink icons. The system version of legacy RTUs is not listed in the
Diagram/Table View.
Communication links are displayed as black lines in the Diagram View. If a link
is displayed in red, the configuration includes some link conflict (e.g. data speed),
as described in the link tooltip.
3-200
Operation
2. In the Diagram View, you can rearrange the units on the graphical desktop. Click
to select one or more RTUs and drag them to the preferred locations.
Result: The units (and their links) are rearranged.
3. To hide/show all site descriptions, select System -> Show Site Descriptions or
select Show Site Descriptions from the workspace context menu, to
deselect/select it.
Result: The site descriptions are hidden/shown.
1. To view the system in table format, go to the system view (either by clicking on
the System item in the tree in the System tab or on the <System Root> link at the
top of the window) and click Table View button in the STS main window.
Result: The components of the system are listed in a chart as shown in the figure
below. Information about the site/area is displayed in the chart, including site
3-201
Operation
name, site ID, description, unit type, system firmware version, number of links,
number of expansion frames (where relevant), number of I/O modules, application
name, and download status. When the system includes redundancy, the Site ID
column reflects the Private Site ID of the site, and the common ID and peer ID
columns appear in the tooltip.
When the download status is NeedsDownload, at least one file needs to be
downloaded to the RTU.
1. To navigate the system via the system tree, expand the elements in the system tree
as necessary and click the preferred system component (site, area, etc.)
Result: The selected site/area appears.
To view the system via the system tree, click the System and the system view
appears (Diagram/Table View.)
2. To navigate the system via the Diagram View, click Diagram View in the STS
GUI. Double-click the preferred system component (site, area, etc.)
Result: The selected site/area appears.
3-202
Operation
3. To navigate the system via the Table View, click Table View in the STS
interface. Double-click the preferred system component (site, area, etc.)
Result: The selected site/area appears.
4. To navigate the system via the contextual links, click the preferred system
component (site, area, etc.) as it appears in the contextual link trail at the top of the
STS interface.
Result: The selected site/area appears.
To view the system via the contextual links, click the <System root> link and the
system view appears (Diagram/Table View.)
5. To select more than one site/area, select the preferred sites/areas by dragging with
the mouse around them (Diagram View only) or by clicking with the left mouse
and Shift/Ctrl left mouse.
Result: The selected sites/areas are highlighted. Perform preferred operations
from the relevant menu.
3-203
Operation
1. From the STS system view, click Diagram View in the main window.
Note: To go to the system view while the Inventory tab is displayed, click the
<System_Root> link at the top of the STS window.
2. If a system diagram exists, click the system components until the preferred
area/site appears.
3-204
Operation
4. From the list of Elements or Gallery, click to open the preferred element type
(e.g. IO, Ports, RTU).
Result: The list is expanded to show all the available items of that element type.
For legacy RTUs, only RTU elements are displayed, no ports or I/Os.
Under FEP, the elements include the ACE IP Gateway (CPU 4600) and legacy IP
Gateway.
Under I/O, the elements for the ACE3600 include the typical I/O module
configurations available, such as 16AI, 32DI, etc. The elements for the ACE1000
include the expansion input module (12DI/8AI) and expansion output module
(8DO/2AO).
Under Ports, these include the typical port configurations available for the
ACE3600 and for the ACE1000.
3-205
Operation
Under RTU, these include the typical CPU configurations available for the
ACE3600 RTU, such as CPU 3610, CPU 3640 and CPU 3680 for ACE3600,
ACE1000, IRRInet-ACE and IRRInet-M for IRRInet, and the legacy RTUs:
MOSCAD, MOSCAD-L, MOSCAD-M, and IP Gateway.
5. Click the instance of the preferred element (I/O, Port or RTU) and drag it onto
the Diagram View to the preferred site. The RTU element can also be dragged
onto the Table View.
3-206
Operation
New I/O In the Add IO Module to Site window, select the preferred frame
Module: number from the drop-down list (i.e. Frame 0), click the preferred
module number within the frame, and click Place Module.
Result: The I/O is defined at that frame/module.
Click Module Configuration to configure advanced parameters for the
module and click OK to save the changes.
Click Finish to save the new I/O module in the site.
New Port: In the Add Port screen, click the preferred port, and click Next.
Result: The port parameters are displayed for configuration.
3-207
Operation
For more information on configuring I/O modules, ports and RTUs, see Procedure 1-1-
8 How to Customize the I/O Configuration of an ACE3600/ACE1000 Site, Procedure
3-208
Operation
1-1-7 How to Customize the Port Configuration of a Site or Procedure 1-1-6 How to
Define a Site within a System/Area in the STS.
Procedure 1-1-76 describes how to store RTU, I/O, and port configurations in the gallery.
Procedure 1-1-76 How to Store RTU, I/O, and Port Configurations in the Gallery
1. To store an RTU configuration in the gallery, click the site in the system view
(Diagram or Table View) and select Site -> Add to Gallery. Or from the site
view, click Add RTU to Gallery.
To store a port configuration in the gallery, select the preferred port configuration
in the site view and click Add Port to Gallery. Only ACE3600 and ACE1000, not
legacy, port configurations can be saved to the gallery.
To store an I/O configuration in the gallery, select the preferred I/O configuration
in the site view and click Add I/O to Gallery. Only ACE3600 and ACE1000, not
legacy, I/O configurations can be saved to the gallery.
3-209
Operation
2. Click the destination location in the gallery (e.g. Ports->ACE 3600). If necessary,
expand the item in the gallery tree.
Note: New folders can be created in the gallery and existing folders can be deleted.
See Modifying Folders in the Gallery below.
3. Under Name, enter the name of the new item. The name should be unique and
meaningful for future identification and use.
3-210
Operation
2. To delete a folder in the gallery, right-click the preferred folder name and select
Delete Folder <folder name> from the context menu or press the Delete key.
Result: You are prompted to confirm the deletion.
Click Yes to delete (or No to cancel.)
Result: The designated folder is deleted from the Inventory tab, and is no longer
accessible to any projects in the STS.
3. To create a root folder (at the highest level of the tree), right-click anywhere in the
gallery and select Create Root Folder from the context menu.
Result: The Create New Folder dialog appears.
Enter the new folder name and click OK.
Result: The new folder appears in the tree (placed alphabetically.)
Procedure 1-1-78 describes how to import the gallery from another STS.
Note: A gallery can be imported even if no project is open.
1. To import the gallery from another version of the STS, select File -> Import
Gallery.
Result: If there is no other version of the STS installed on the computer, the Open
dialog appears.
3-211
Operation
Browse to the Prg\Gallery directory in the preferred version of the STS, select the
GalleryTree.xml file and click Open.
If another version of the STS exists on the computer, the Gallery Source dialog
appears.
Select the source from which the gallery is to be imported and click OK.
Result: The Import Gallery dialog appears.
3-212
Operation
2. In the Source Gallery panel, select the gallery items to be copied (imported).
To copy the entire gallery, or to copy more than one item of different types (e.g. a
port and an I/O), make sure that the Source Gallery item is checked and select the
This Gallery folder in the Destination.
To copy specific items (e.g. all I/Os in a specific folder), select the preferred
item(s) in the Source Gallery panel and select the corresponding folder (e.g.
IO->ACE3600) in the Destination.
Click OK.
Result: The selected items are copied to the current STS and appear in the
Inventory tab.
Procedure 1-1-79 How to View the STS On-Line Help and STS Version
3. To view the legal notices, click Legal Notices in the About System Tools Suite
dialog.
Result: The legal notices are displayed.
1. From the STS menu, click System and select Export Site Properties.
ETH1 IP Address: Select this field if you want to clone the information Ethernet
communication over LAN using a DHCP-supplied IP address.
3-214
Operation
Authentication server: authentication servers priority. For further information, see the
ACE3600 Advanced System Security Manual.
1. From the STS menu, click System and select Import Site Properties.
2. Select a valid Excel file (or use the same table format as in the exported file) and click
OK.
3-215
Application Programmer
1. Creating an application.
4. Linking the external I/Os (between the RTUs and the external devices).
NOTE:
Before configuring your database, carefully read Appendix C Database Tables and Data
Types, which provides the necessary theoretical background, and Appendix B Ladder
Diagram Language, which describes in detail all programming symbols.
4-1
Application Programmer
• STS Mode (launched by the STS): Used for programming applications for specific
sites, compiling, linking I/Os, and downloading the application to the RTU.
1. To access the Application Programmer from the STS, select Site -> Open Application
c from the STS menu, or click either the New Application or Edit Application button
in the STS Application Manager.
For more information on using the Application Manager, see Managing Applications
in the Operation chapter above.
Result: A new application (or an existing application which is not assigned to any
site) is opened in the Application Programmer window, in parallel to the STS
window.
For an existing application which is assigned to one or more sites, you are prompted to
indicate for which site (or <no specific site>) you want to open the application. After
making a selection, the application is opened in the Application Programmer
window, in parallel to the STS window.
2. To access the Application Programmer in standalone mode, select Start -> Programs ->
ACE3600 STS<version> -> Application Programmer command (or from the
STS<version> folder on the desktop.)
Result: The Application Programmer window is displayed.
Note: Certain keyboard shortcuts are available in the Application Programmer as described
below.
Procedure 1-2-2 describes how to create a new application in the Application Programmer.
1. To create a new application, select File -> New Application, or click the New icon in
the icon bar.
Result: The New Application dialog box is displayed.
4-2
Application Programmer
2. Specify the name, location, and version of the new application and click OK.
Note: The Application Programmer defaults to the user sub-directory of the STS user
directory (C:\STSxxxx\User) and to the latest version of the Application Programmer
(e.g. 18.5.)
Result: The .prp file is created.
Once the new application has been created, the database, and the processes can be defined.
To modify certain application settings, link the I/O links, compile and download the
application to the RTU, you must run the Application Programmer from the STS.
1. To open an existing application, select File -> Open, or click the Open icon in the
icon bar.
Result: The Open dialog box is displayed.
4-3
Application Programmer
2. Browse to the desired directory and select the desired .prp, .prg, or .adb file. Click
Open to open the application.
Result: The selected application opens to the Process tab.
Note: Application Programmer defaults to the previously opened directory. The File
name field also includes a history in order to return to other previously opened
applications.
If the selected application was created in a previous version of the Application
Programmer, you are prompted to upgrade it to the current version.
To upgrade to the current version, click Yes. To open the application in its current
form, click No. To cancel the open operation, click Cancel.
4-4
Application Programmer
1. To zoom into the table/rung, select View -> Zoom In (shortcut Ctrl+Num+).
To zoom out in the table/rung, use the Zoom Out (shortcut Ctrl+Num-) command.
To return to normal zoom, use the Zoom Normal (shortcut Ctrl+Num*).
2. To switch to the Application bar, select View -> Application Bar (shortcut Alt+0).
The Application bar includes the Database, Process, and I/O link tabs. To move
between tabs in the Application bar, press Ctrl+PgUp/Ctrl+PgDn.
To switch to the Output bar, use the Output Bar (shortcut Alt+2) command. The
Output bar includes a number of tabs, each of which is used to display output
information to the user. To move between tabs in the Output bar, press
Ctrl+PgUp/Ctrl+PgDn. The contents of the Output bar tabs with stream text can be
copied, selected or cleared from the context menu.
3. To jump to the Database tab in the Application bar, select View -> Database Tree
(shortcut Ctrl+1), or click the Database tab.
To jump to the Process tab in the Application bar, select View -> Process Tree
(shortcut Ctrl+2) command, or click the Process tab.
To jump to the I/O Link tab in the Application bar, select View -> I/O Link Tree
(shortcut Ctrl+3) command, or click the I/O Link tab.
To move between a workspace window and the Application bar, press ESC.
4. To jump from a table, rung or I/O link window to the corresponding tree item, select
View -> Synchronize Tree.
5. To close all the open windows in the workspace, select Windows -> Close All.
Select Windows -> Cascade, Windows -> Tile Vertically and Windows -> Tile
Horizontally to arrange the open windows accordingly in the workspace.
4-5
Application Programmer
Building a Database
The application’s data tables are the basis for process programming, I/O link definition,
automatic central database definition, real-time monitoring of the RTU operation, etc.
They contain the variables used in the application program, which correspond to indicators
and flags, actual physical elements of the RTU, inputs and outputs attached to the RTU,
etc. The database includes three types of tables: User Tables, System Tables and Constant
Tables.
For a detailed description of the MOSCAD database, see Appendix C: Database Tables
and Data Types.
User Tables
User tables contain the user-defined data (variables). One table has been defined for you,
the Qualifiers table. This table may be edited in a similar way to other user tables.
The Qualifiers table should be used to set special qualifiers (fields and/or subgroups of
variables) that affect the process in another site, in RTU-to-RTU communication, or to set
qualifiers that identify and respond to a broadcast sent by the central (refer to Appendix E:
User Defined MDLC Communication).
Note: When third party protocols are used for communication, the Qualifiers table may be
deleted and recreated as a regular user table.
System Tables
The system tables include reserved variables that may be used as symbolic names during
process programming. Note that it is not possible to add a new systems table.
The following list of system tables is displayed when the System Tables item in the
Database tab of the Application bar is expanded.
4-6
Application Programmer
Constant Tables
The constant tables include reserved constants that may be used as symbolic names during
process programming. Some constant tables have been defined for you. You can add your
own tables.
The following list of system tables is displayed when the Constant Tables item in the
Database tab of the Application bar is expanded.
4-7
Application Programmer
Single-Column Tables
A single-column table includes one data type (for example, parameters). In each row you
can define the symbol name (PAR1, for example) as it will be referred to during the
process. The value column is used either to define a preset value and/or to display the
value during on-line monitoring. A single-column table may include up to 250 rows.
Multiple-Column Tables
Multiple-column tables may include up to eight columns for several types of data (for
example, discrete input, discrete output, etc.) having common characteristics. The symbol
name of the column is indexed (according to the row number in the column). A multiple-
column may include up to 250 rows.
Every column in a multiple-column table should be edited separately. Every column may
include a different data type.
Data Types
Every column in the database tables (single or multiple-column), may be defined as one of
the following data types: (The name in parentheses indicates the abbreviated column data
type which appears in the table column.)
4-8
Application Programmer
• Time-Tagged DI (TgDI)
• Index
• Constants
• IP address (IPaddr)
For a detailed description of the MOSCAD data types, see Appendix C: Database Tables
and Data Types.
Note: No system tables can be created by the user, only user and constant tables.
1. In an open application, click the Database tab in the Application bar, or select View >
Database Tree (shortcut Ctrl+1).
2. If the tree is collapsed, click + to expand it and see the types of database tables.
3. If the Tables element (User /Constant) is collapsed, click + to expand it and see the
types of db tables.
4. Right-click a table type (User /Constant) or an existing table name and select
Append Table. Specify Single/Multiple Column Table (shortcut Ins), PID Table,
or Backup Blocks Table.
Result: The Append Table dialog box opens where you can define a new single-or
multiple-column table, a PID table, or a Backup Blocks table. For more information
on PID and Backup Blocks table, see the ACE3600 STS Advanced Features manual.
4-9
Application Programmer
6. In the Table Symbol field, enter the optional table symbol to be used in the
programming process. Symbol names can include spaces and special characters.
Table symbol names can be up to 256 characters.
7. In the Table Type field, select the appropriate type - single-column or multiple-
column (for constant tables, this field is disabled.)
8. In the Data Type field, of a single-column table, open the drop-down list and select
the appropriate data type. For a multiple-column table, set the data type of each
column separately, as described in Multiple-Column Table.
9. Click OK.
Result: The table appears. The new table is added to the end of the list in the
Database tab and can be edited. For a multiple-column table, you are prompted to
define at least one column. The Table menu appears in the menu bar.
10. Create new rows and columns as described in Editing a Table and add the table values.
11. To save the changes to the table select File -> Save or click the Save icon in the icon
bar. Until the application is saved, the modified database table appears with an
asterisk (*) next to its name in the tree.
1. In an open application, click the Database tab in Application bar, or select View ->
Database Tree (shortcut Ctrl+1).
2. If the tree is collapsed, click + to expand it and see the types of database tables.
3. If the Tables element (User /Constant) is collapsed, click + to expand it and see the
4-10
Application Programmer
Editing a Table
The commands for editing tables are available in the context menus in the table form in the
Table Menu.
Note: If you change a database table in an application which is assigned to more than one
site, you will be asked whether the change should be applied to “All sites”.
If you choose to make the change for one site only, you are prompted to rename the
modified application for that site. The new application is assigned to the site and
must be compiled and downloaded to that site.
If you choose to make the change all sites, you must recompile the application for all
sites and download it to all sites.
If, having chosen “All sites”, you later need to save changes to a specific site, you must
reopen the application with this site.
1. Open an existing table by clicking on the table name in the tree in the Database tab, or
create a new table as described in Creating a Database Table above.
Result: The table form appears. The Table menu appears in the menu bar.
4-11
Application Programmer
2. To create new entries in a single-column table, right-click in the table and select
Append Row/Insert Row or select Table -> Append Row or Table -> /Insert Row
(shortcuts Ins/Alt+Ins).
Result: A new row is added to the table, either before the current row (Insert Row) or
after the last entry (Append Row) with the following columns:
Column Description
Index The new row is automatically numbered; the number appears in the
Index column and cannot be modified manually. You can, however,
change the sequence by inserting a line with the Insert Row command.
Name This is where you type the name of the variable. Click the cell and type
a name up to 256 characters long.
Value If necessary, type the initial value of the variable.
3. To modify entries in a single-column table, click in a cell in the table and overwrite
with a new value.
4. To modify the name of the table recorded in the Append Table dialog, click in the
Table Name field and edit it. All tables in the database must have unique names.
5. To modify the symbol of the table recorded in the Append Table dialog, click in the
Table Symbol field and edit it. All tables in the database must have unique symbols.
4-12
Application Programmer
6. To modify the COS (Change of State) flag name of the table, click in the COS name
field and edit it. This field may contain all special characters. For more on COS, refer
to Appendix E: User Defined MDLC Communication.
7. To increase the size of the table, click in the Last Index field and specify the last
indexed row of the table, up to 250 (0-249) rows.
8. To change the data type recorded for the table in the Append Table dialog box, click
in the Data Type field and select a new data type from the drop-down list.
NOTE: Changing the data type of an I/O column automatically cancels the
corresponding I/O link definitions. Changing the data type of a column that has
related data (like timers, parameters) cancels their preset values.
9. To delete a row, select the row, then right-click and select Delete from the context
menu. NOTE: If the row includes a variable used in the process program (such as in a
rung), a warning message is displayed. You may accept or cancel the action.
If the row includes a variable used in mapped cells, the user can choose to search for
the mapped cells. The results appear in the Search tab in the Output bar at the bottom
of the screen. The mapped cells must be removed before the row can be deleted.
10. To copy and paste rows, columns, or cell contents, use the arrow keys or drag the
mouse to select, and use Edit->Copy or Ctrl+C to copy. Click in the destination and
use Edit->Paste or Ctrl+V to paste. To select an entire table, click in the upper left
hand corner of the table.
1. Open an existing table by clicking on the table name in the tree in the Database tab, or
create a new table as described in Creating a Database Table above.
Result: The table form appears. The Table menu appears in the menu bar.
2. To create new columns in a multiple-column table, select Table -> Append Column
or Table -> Insert Column or select Append Column or Insert Column from the
context menus in the table form.
Result: The Append/Insert Column dialog box is displayed.
4-13
Application Programmer
Note: The last index of a duplicated column should be equal or less than the last index
of the original column. For example, assume that a value data type defined as V1 in a
multiple-column type that has 10 rows (0-9). When you duplicate, the last index
should be less or equal to 9. Otherwise the compiler reports an error.
Note: Duplicate columns cannot be modified.
4. In the Column Type field, open the drop-down list and select a data type.
Note: Since a duplicated column already exists elsewhere, and has a data type, this
parameter is not active for a duplicated column.
5. Click OK.
Result: The new column appears in the table, either to the right of the last column
(Append Column) or to the left of the selected column (Insert Column).
6. To delete a column, select the column by clicking on its title or pressing Ctrl-space,
then right-click and select Delete from the context menu or press the Delete key.
NOTE: If the column includes a variable used in the process program (such as in a
rung) or in an I/O link entry, a warning message is displayed. You may accept or
cancel the action.
If the column includes a variable used in mapped cells or is duplicated in another
column, the user can choose to search for the mapped cells or duplicate columns. The
results appear in the Search tab in the Output bar at the bottom of the screen. The
mapped cells and duplicate columns must be removed before the column can be
deleted.
7. To modify the name of the table recorded in the Append Table dialog, click in the
Table Name field and edit it. All tables in the database must have unique names.
8. To modify the symbol of the table recorded in the Append Table dialog, click in the
Table Symbol field and edit it. All tables in the database must have unique symbols.
9. To modify the COS (Change of State) flag name of the table, click in the COS name
field and edit it. This field may contain all special characters. For more on COS, refer
to Appendix E: User Defined MDLC Communication.
10. To increase the size of the table, click in the Last Index field and specify the last
indexed row of the table, up to 250 (0-249) rows.
11. To delete a row, select the row by clicking to the left of its header or pressing
Shift-space, then right-click and select Delete from the context menu, or press the
Delete key. NOTE: If the row includes a variable used in the process program (such
as in a rung) or in an I/O link entry, a warning message is displayed. You may accept
or cancel the action.
If the row includes a variable used in mapped cells, the user can choose to search for
the mapped cells. The results appear in the Search tab in the Output bar at the bottom
of the screen. The mapped cells must be removed before the row can be deleted.
4-14
Application Programmer
12. To modify column names in a multiple-column table, click in the Column Name field
in the Table & Column Properties section of the form, shown above and edit the
name.
13. To modify column types in a multiple-column table, click in the Column Type field in
the Table & Column Properties section of the form, shown above and select the
desired type from the drop-down list.
14. Note: Changing the data type of an I/O column automatically cancels the
corresponding I/O link definitions. Changing the data type of a column that has
related data (like timers, parameters) cancels their preset values
15. To copy and paste rows, columns, or cell contents, use the arrow keys or drag the
mouse to select, and use Edit->Copy or Ctrl+C to copy. Click in the destination and
use Edit->Paste or Ctrl+V to paste.
1. To display the table and column properties of the table right-click in the table form and
select Attribute Page from the context menu, or click the attribute page handle in the
middle of the table (shortcut F8.) The Attribute Page command is a toggle which is
either checked (when attributes are displayed) or unchecked (when attributes are
hidden).
Procedure 1-2-10 describes how to search tables for variables, columns, symbols and
names.
Procedure 1-2-10 How to Search Tables for Variables, Columns, Symbols and Names
4-15
Application Programmer
2. In the Find what field, enter the desired name/string. When searching tables, whole
or partial words can be used. To find part of a string, uncheck the Whole Words
Only field. To search for a column in a multiple column table, enter the column name.
To search for a specific cell in a multiple column table, enter the column name and
numeric index (e.g. Column3,2).
5. To see all the symbols in the database, click Browse. The Choose Symbol dialog is
displayed. For more on a full search of the application, see Finding a Symbol/Variable
in the Application.
6. Click Find.
Note: If the requested name/string appears in only one database table, that table is opened
automatically for the user.
To search for variables, columns, symbols and names in a process rung, see Searching
Rungs for a Variable or Symbol. To look up a specific rung parameter in the database
while editing a process rung, see Editing Rung Elements.
Copying/Cutting/Pasting a Table
Procedure 1-2-11 describes how to copy/cut/paste a table.
1. To copy a table to be pasted elsewhere, (usually into another project), select the table
name in the project tree in the Database tab.
Right-click the table name and select Copy from the context menu or select Edit ->
Copy in the menu bar.
2. To paste a table or table set which has previously been copied or cut, click in the
project tree in the Database tab and select Paste.
4-16
Application Programmer
Result: If there are no name conflicts, the pasted table/table set appears in the project
tree.
If there is a name conflict, a paste report lists the source table name and (new) copied
table name. The paste report also shows when mapped cells of the pasted table point to
nonexistent locations in the target application (such cells are cleared). Also, if original
columns for duplicated columns in the pasted table do not exist, they are removed
from the table (i.e. not pasted) and included in the report too.
3. To cut a table to be pasted elsewhere, (usually into another project), select the table
name in the project tree in the Database tab.
Right-click the table name and select Cut from the context menu or select Edit -> Cut
in the menu bar.
Deleting a Table
Procedure 1-2-12 describes how to delete a database table.
1. To delete a user-defined database table, select the table name in the tree in the
Database tab and click Delete. Or right-click the table name and select Delete from
the context menu.
Result: The STS asks you to confirm that you want to delete the table. If you click
Yes, the table, including all its lines and columns is deleted.
Note: If a column in the table is a duplicate column in another table, a warning
message is displayed. You may accept or cancel the action. In the Constant Tables,
you can only delete those tables which you have added.
If the database table cannot be deleted because of mapped cells or duplicate columns,
the user can choose to search for such cells or columns. The results appear in the
Search tab in the Output bar at the bottom of the screen. The mapped cells and
duplicate columns must be removed before the table can be deleted.
4-17
Application Programmer
Renaming a Table
Procedure 1-2-13 describes how to rename a database table.
1. To rename a user-defined database table, single-click the table name in the tree or
right-click the table name and select Rename from the context menu.
Result: The name becomes an editable field.
Printing a Table
Procedure 1-2-14 describes how to print a database table.
3. To print a user-defined database table, single-click the table name in the tree or in the
window, select Print from the context menu or select Table -> Print.
Result: The standard Windows print dialog appears.
Specify the destination printer and settings and print the selected objects.
4. To preview the print job on the screen, single-click the table name in the tree or in the
window, select Table -> Print Preview or select Print Preview from the context
menu.
Result: The selected table appears in the Print Preview format. Various preview
formats are available.
Monitoring a Table
For information on monitoring a database table, see Monitoring a Database Table below.
A. Single-column Table
4-18
Application Programmer
Five new database tables with the following characteristics are required:
Table Name Table Symbol Table Type Data Type Name Value
Discrete Inputs DisIn Single-column Discrete Input VLV1,
VLV2,
EMRG
Value Input ValIn Single-column Value Input AN1
Timers Seconds TimSec Single-column Timers Seconds T1 10:00
sec
Discrete Output DisOut Single-column Discrete Output PUMP1
Parameter Param Single-column Integer TEMP1 3,200
Parameter
A temperature parameter of 80°C should be entered as 3,200, since the range of reading of
the analog-to-digital converter is -4,000 to +4,000. Assuming a full analog scale of 100°C
(100%), this parameter value should be 3,200.
For each entry in the chart above, follow the procedure below to define a single-column
table:
2. Define the Table Name, Table Symbol, Table Type, and Data Type as described in
the chart above.
3. In the table, select Table -> Append Row or Append Row from the context menu,
and enter the variable name(s) and values where relevant from the chart above.
4-19
Application Programmer
B. Multiple-Column Table
A series of 10 inputs (the first of which is IN) can execute a series of 10 outputs. The loop
is executed 10 times in the course of one scan.
4-20
Application Programmer
For the entry in the chart above, follow the procedure below to define a multiple-column
table:
2. Define the Table Name, Table Symbol, Table Type as described in the chart above.
4. In the table, select Table -> Append Column or Append Column from the context
menu, and enter a second column OUT as described in the chart above.
5. Click the Last Index box and type 9. In the Last Index Name box, enter LstInd. The
table should look as displayed below.
4-21
Application Programmer
When a series is involved, the series elements can be used as rung symbols during process
programming either directly (i.e., IN,5), or as an indexed series (IN,I). The index name (I)
is defined through the System’s Index table.
You can assign meaningful names to variables in the database, such as KeyInp, TxCntr,
RxVal, etc., with capital letters. The system is not case-sensitive, therefore when writing
rungs, you do not have to type in the variable names with capital letters. The system
automatically adjusts your entries as defined in the database tables.
Programming a Process
Once all variables participating in the control program have been defined via the Database
Builder, you can proceed to programming the process.
A rung may be perceived as an array of contacts (representing the states of the relevant
inputs), through which “current” must “flow” towards the elements which represent the
operation to be performed on the output. When such a flow path exists, the rung is “true”,
and the appropriate operation is performed by the output.
Creating a Process
Procedure 1-2-15 describes how to create a process.
1. In an open application, click the Process tab in the tree, or select View -> Process
Tree (shortcut Ctrl+2).
Result: The Process tree is displayed.
4-22
Application Programmer
The Process tab window initially contains one process (Main) in the tree view. As you
add rungs or process, the tree view is filled. When you expand a process item in the
tree view, the corresponding Rungs list is displayed as the child item of the process.
From the tree, you enter names and descriptions of processes and rungs in the same
way that you edit a table in the Database tab window.
2. To create a process, right-click the application name or an existing process name in the
tree and select Append Process from the context menu.
Result: The Append Process dialog is displayed.
3. Enter the name of the new process in the Name field. Note: The MAIN process is a
system default. It cannot be changed.
5. To program the process, create new rungs and edit them, as described in Appending a
Rung and Editing a Rung below.
1. In an open application, click the Process tab in the Application bar, or select View ->
Process Tree (shortcut Ctrl+2).
Result: The Process tree is displayed.
2. If the Process is collapsed, click + to expand it and see the process rungs, if any.
4-23
Application Programmer
Note: A rung marked with a red exclamation point is one where no elements are
connected to the entry point.
Appending a Rung
Procedure 1-2-17 describes how to append a rung in a process.
1. To create a new rung and append it to the list of rungs for the process, right-click a
process name or rung name and click Append Rung. The command opens the
Append Rung dialog, shown below.
4. Click OK. The new rung name appears in the process tree, under the current rung, if
one exists. The rung appears in the workspace with a label containing the rung name
and can be edited. The Ladder menu appears in the menu bar.
Editing a Rung
A process rung is comprised of an entry point, rung elements, variables and links.
Elements can be added manually from the element list or automatically using commands.
The variables attached to the elements are defined in the database tables. See Editing a
Table above.
For a full description of the input/output elements, see the Appendix B: Ladder Diagram
Language section. For more on the element variables, see Editing Rung Elements below.
The process rung can contain unattached rungs/elements, i.e. those that are not connected
to the rung entry point. These rungs/elements are saved in the application, but do not
4-24
Application Programmer
undergo compilation and are not be part of the application running in the RTU.
Disconnected rungs where no elements are connected to the entry point are marked with
red exclamation points in the Process tab tree.
Note: If you change a process/rung in an application which is assigned to more than one
site, you will be asked whether the change should be applied to “All sites”.
If you choose to make the change for one site only, you are prompted to rename the
modified application for that site. The new application is assigned to the site and
must be compiled and downloaded to that site.
If you choose to make the change all sites, you must recompile the application for all
sites and download it to all sites.
If, having chosen “All sites”, you later need to save changes to a specific site, you must
reopen the application with this site.
1. To edit a rung, open an existing rung by clicking on the rung in the tree in the Process
tab, or append a new rung as described in Appending a Rung above.
Result: The rung appears in the workspace and the list of elements appears on the
right side of the window. This elements window can be scrolled or resized as
necessary. The Ladder menu appears in the menu bar.
If there are no elements in the rung, (e.g. newly created rung) only the rung name and
entry point appear.
4-25
Application Programmer
2. From the list of elements, click the desired element (typically an input element) to
highlight it and drag it into the workspace.
The lavender areas (label) in the element represent the input/output variables, indices
or constants used in the logic.
3. Click in one of the lavender areas and use the drop-down list to select the appropriate
database symbol(s) or type in the symbol(s). For more on editing the elements,
Editing Rung Elements below.
Place the mouse over the lavender area of an element, and a tooltip appears which
4-26
Application Programmer
show the element type, variable name(s) and type(s), and I/O link wiring, where
relevant.
4. Drag any additional elements (e.g. output elements) to the rung, as necessary.
5. To link the initial element to an additional element click the black handle on the side
of one element and drag it to the black handle on the other element. Or click the
handle of an element to have a link automatically created to the nearest target point (if
it is close enough.)
6. To move a rung element in the workspace, click the element/link and drag it to the
desired position.
7. To copy/cut/paste rung elements or links, select Edit -> Copy/ Edit -> Cut/ Edit ->
Paste or select Copy/Cut/Paste from the context menus. To delete a rung element or a
link, click the element/link and select Edit-> Delete (Del), or right-click and select
Delete from the context menu.
8. To duplicate rung elements, select them, press Ctrl, and drag them with the mouse.
For a detailed description of the ladder elements, see Appendix B: Ladder Diagram
Language.
2. From the Ladder or context menu, select the desired element command, i.e.
Insert Input (shortcut I) for a new input after the current element,
Add Input (shortcut A) for a new input before the current element, or
Add Output (shortcut O) for a new output.
Result: The Select Element dialog appears. For Insert/Add Input, the Input tab is
shown. For Add Output, the Output tab is shown.
4-27
Application Programmer
3. Click the desired elements (from the Input or Output tab) and then click OK.
Note: Position the cursor over an element and a tooltip with a short description of the
element is displayed.
Result: The new element is inserted in a logical place in the rung, linked to the entry
point or to the selected element/link.
4. To move a rung element in the workspace, click the element/link and drag it to the
desired position.
5. To delete a rung element or a link, click the element/link and select Edit -> Delete
(Del), or right-click and select Delete from the context menu.
When elements are created automatically using the Ladder menu, the context menu, or the
keyboard shortcut commands, the appropriate links are also created automatically.
1. To link two elements (or an element and the rung entry point) using the mouse:
If the element is very close to the target, click the black handle on the side of one
element and release the mouse button.
If the elements are not close together, click the black handle on the side of one element
and drag the link to the entry point of the rung or the black handle on the other
element.
Result: The link appears.
until both are highlighted, or use the arrow keys and shift arrow to select two elements.
Select Ladder from the context menu, or select Ladder -> Link Elements (shortcut
/).
Result: The link appears.
1. To move a link to another area in the rung, click the link and when it is selected
(green), drag the diamond shape handle to another area on the rung.
Note: Normalizing a rung moves the rung elements and links. After
moving/redrawing links, it is recommended that you normalize the rung to confirm
that the placement of the elements reflects the rung logic.
2. To delete a link, click the link and select Ladder -> Delete or select Ladder from the
context menu or press the Delete key.
Most of the variables used as element parameters are predefined in the database tables.
The Application Programmer’s Automatic constants feature enables you to enter numeric
constants which are not defined in the database as element parameters (or in CALC
expressions.) In this case, you enter a constant (integer, real/float, or long) in an element
parameter (or CALC expression) and the number (e.g. 2) is added automatically to a
special constant table of the appropriate type (e.g. #AutoInt1#, #AutoReal1#,
#AutoLong1#) created by the Application Programmer. (See Procedure 1-2-22 below.) If
the Automatic constants feature is disabled (using the Application Settings Alt+F7), an
error message is displayed when you enter an undefined constant.
Constants are converted to their standard form, e.g. 00034.000 to 34, 1E2 to 100, etc.
If the numeric constant entered in the parameter is not allowed in this rung element/
parameter, an error message is displayed. For example, constants are not allowed as first
parameters of arithmetic operations.
When an automatic constant table reaches the last index (249), a new table of the same
type is created (e.g. #AutoInt2#.) The automatically generated constant tables can be
renamed, if desired.
4-29
Application Programmer
All rung element parameters which are constants are displayed in dark red, except in
CALC expressions.
2. To manually add the parameter, type in a string or paste a previously copied string.
Parameters can be cut, copied, pasted and deleted using the parameter context menu
and keyboard shortcuts like Ctrl+C, Ctrl+V. A parameter being editing changes
color (usually white).
If an undefined numeric constant is entered, the Automatic Constants dialog is
displayed.
To have the numeric constant added automatically to the database, click Yes.
(Otherwise, click No and enter another value.)
If you do not want the Automatic Constants dialog to be displayed again, check the
Don’t ask me again field. (If you check the Don’t ask me again field and click No in
the dialog, the Automatic constants feature is disabled.)
Result: The specified numeric constant is added and can be used in other rungs in the
process.
IMPORTANT: The Automatic Constants feature defines numeric constants in the
database in an orderly fashion. You may modify the names and values of these
constants, but this is not recommended.
3. To select the parameter from a dialog, click the arrow of the drop-down list or use Alt-
Down Arrow, or select Edit -> Find Symbol. Select the appropriate database
symbol(s) from the Quick Find Symbol dialog (use Tab/arrow keys to navigate and
click OK. For more information, see Finding a Symbol/Variable in the Application.
Note: If the requested symbol appears in only one database table, that table is opened
automatically for the user.
4. To enter a mathematical expression for the CALC element using the Formula text box,
click the arrow of the drop-down list of the CALC element lower parameter.
4-30
Application Programmer
5. If the entered/selected symbol is valid, the symbol appears as a label instead of the
lavender area. If the symbol is undefined or invalid for the element type, an error
message appears. To clear the invalid value, highlight the value/expression and click
Edit Parameter.
6. To move between the parameters in an element, if such exist, press the Tab key.
7. To copy/cut/paste rung elements or links, select Edit -> Copy/ Edit -> Cut/ Edit ->
Paste or select Copy/Cut/Paste from the context menus. To delete a rung element or a
link, click the element/link (element is bordered in green) and select Edit -> Delete
(Del), or right-click and select Delete from the context menu.
8. To look up a parameter in the database, right-click the parameter name and select
Look up symbol <parameter name>.
Result: The relevant database table opens.
Note that when a parameter is being edited, certain commands are disabled. Press the Esc
key to cancel parameter editing and the commands are enabled.
1. To select all the elements in the current rung from the menu, select Edit -> Select All
(shortcut Ctrl+A).
2. To select all the elements in the current rung using the mouse, drag the mouse around
the workspace until all elements are highlighted.
3. To select some of the elements in the current rung using the mouse, click one element,
then Ctrl+click or Shift+click to select additional elements.
4. To select some of the elements in the current rung using the keyboard, click one
element, then Ctrl+arrow to move to the desired elements, and Ctrl+space to select
additional elements. Or use Shift+arrow to select additional elements.
1. To clear elements in the current rung, select the desired elements (see Selecting
Elements in a Rung above.)
2. Select Edit -> Delete or the Edit command from the context menu.
Result: All elements in the rung are deleted.
4-31
Application Programmer
An Input element can have one or two parameters (e.g. Input 1 and Input
2).
The CALL operator enables the user to select a system function from a
choice list, and to optionally pass a parameter to it. For details about the functions, see
Appendix D: User Defined Local Ports and Appendix E: User Defined MDLC
Communication.
The UCL operator enables the user to select a user defined C function
from a choice list, and to optionally pass parameters to it. For details about the functions,
see the ‘C’ Toolkit for ACE3600 RTUs User Guide.
The CALC operator enables the user to enter a formula that contains
operations and variables, and to store the result. See Calc in the Appendix B: Ladder
Diagram Language section.
The SEND operator enables the user to record text combined with
variables, that can be sent through user ports. See Appendix D: User Defined Local Ports.
The relevant user port is selected from a drop-down list.
1. To normalize the rung, select Ladder -> Normalize (F9) or right-click in the rung
4-32
Application Programmer
The execution order of elements in a rung is determined by the chronological order of the
connections, and displayed clearly when normalizing the rung. When the rung is not
normalized and some elements are not presented in order of execution, these elements are
painted with yellow background. The Normalize operation correlates the display with the
correct execution order and eliminate the yellow background.
1. To add a comment to a rung, select the comment element from the element
list and drag it to the desired location in the rung workspace.
Result: The comment box appears in the rung.
3. Click outside of the comment box or press Tab to end comment editing or Esc to
cancel editing.
Procedure 1-2-27 describes how to create a branch manually from the element list.
Procedure 1-2-27 How to Creating a Branch Manually from the Element List
1. To create a branch from the list of elements, drag the desired branch element(s) into
the workspace.
2. Click the black handle on the left side of the new element and drag it towards the
desired position on the existing rung link.
Result: The branch link appears.
Procedure 1-2-28 describes how to create a branch using the branch commands.
4-33
Application Programmer
1. To create a branch automatically, click the element from which the branch should
descend.
Result: The element is highlighted (green).
2. Select the desired branch element, from the menu bar or context menu, i.e.
Ladder -> Branch Input (shortcut B) for a new parallel input ("OR") or
Ladder -> Branch Output (shortcut S) for a multiple output.
Result: The Select Element dialog appears.
6. To move the branch to another area on the original rung, select the first branch element
and drag it to the desired position. Or, click the link and when it is selected (green),
drag the diamond shape point to another area on the rung.
7. To close a branch to a rung element, click the input rung element to which you are
closing and select Close Branch from the context menu. The line closing the branch
is displayed in the rung.
It is recommended that you normalize the rung after moving branch element to confirm
that the placement of the elements reflects the rung logic.
4-34
Application Programmer
Closing a Branch
See Creating a Branch using the Branch Commands for instructions on how to close a
branch.
Key Action
Rung Editing
Arrows (Left, Right, Up, Down) Move between elements; selection is moved. The window is
auto scrolled if necessary.
Alt-Arrows Move between lines. In edit mode, Alt-Down Arrow opens
the list of database names to select a rung element parameter.
Ctrl+Arrows Move focus (black frame) between elements. Selection is left
intact.
Ctrl+Space Toggle selection of the focused (black framed) element.
Shift-Arrows Move and select the elements (“extend selection”).
PgUp, PgDn Scroll the window up and down.
Shift-PgUp, Shift-PgDn Scroll the window left and right.
Complex Editing Commands
A (or a) Add an Input element after the current element.
I (or I) Insert an Input element before the current element.
O (or o) Add an Output element after the current element.
B (or b) Open a branch before the current element and add an Input
element to it.
C (or c) Close a branch after the current element.
S (or s) Open a branch and add an Output element.
Other Keys
Esc Cancel mouse actions before finishing. Cancel dragging.
Cancel element parameter editing in rung.
Move between different workspace windows and the
Application tree.
F9 Normalize the rung.
F7 Compile the application.
Ctrl+F7 Compile and download the application.
Alt+F7 Configure application settings.
Del, Ctrl+C, Ctrl+X, Ctrl+V, Standard edit operations (Delete, Cut, Copy, Paste, Undo,
Ctrl+Z, Ctrl+A Select All) on elements, lines or characters in edit strings.
Menu key The Menu key (near the right Ctrl) invokes context menus.
Ctrl+PgUp, Ctrl+PgDn Go to the previous/next rung, DB table or I/O table.
Ctrl+Plus, Ctrl+Minus/Ctrl+* Zoom In/Zoom Out/Zoom Normal.
Enter, Space, E Edit the first parameter of the element.
Parameter Editing in Element
Alt-Down Arrow Open the Symbol Lookup dialog.
Tab, Shift-Tab Move between parameters.
4-35
Application Programmer
Key Action
Esc Cancel parameter editing without saving.
Enter Save and finish parameter editing.
Rung Monitor Actions
F2 Toggle Name/Value
F4 Set Qualifier Table
F5 Unqualify Refresh
F6 Qualify Refresh
Application Operations
Ctrl+N New Application
Ctrl+O Open Application
Ctrl+S Save Application
Ctrl+P Print Application
Application Programmer Navigation
Alt-0 Go to Workspace bar.
Alt-2 Go to Output bar.
Ctrl+F Quick Find Symbol
Ctrl+Shift-F Find
Ctrl+1 Go to Database tab in the Workspace bar.
Ctrl+2 Go to Process (Rung) tab in the Workspace bar.
Ctrl+3 Go to I/O Link tab in the Workspace bar.
Esc Return to the editor window.
Enter (on a tree control) Open the corresponding item in the editor.
Miscellaneous Keys
F1 Help
Ctrl+Z Undo Last Operation
Ctrl+Y Redo Last Undo
4-36
Application Programmer
2. To select the search symbol from a list of all symbols in the database, click Browse.
Result: The Choose Symbol dialog is displayed.
(For more on a full search of the application, see Finding a Symbol/Variable in the
Application below.)
Double-click the desired symbol (or click it and then click OK.)
Result: The symbol appears in the Find what field.
To manually specify the search symbol, enter the desired name/string in the Find what
field. To find part of a string, unclick the Whole Words Only field.
3. To search for a name/string within a rung, make sure that the Search in Rungs field is
selected.
To search for an input, select Find Input.
To search for an output, select Find Output.
4. Click Find.
Result: The results appear in the Search tab in the Output bar at the bottom of the
screen, and the number of elements found appears in the status bar at the bottom of the
window. If the variable/symbol occurs in one rung, the rung is displayed.
If the item appears in more than one rung, click the rung name in the Search tab to
open it. Once the rung with the variable/symbol opens, you can perform a lookup as
described under Editing Rung Elements.
Deleting a Process/Rung
Procedure 1-2-30 describes how to delete a process/rung.
1. To delete a process/rung, click the process/rung name in the Process tab and select
Edit -> Delete or select Edit from the context menu, or press the Delete key.
Result: A dialog appears asking you to confirm the deletion of the selected
4-37
Application Programmer
process/rung.
Renaming a Process/Rung
Procedure 1-2-31 describes how to rename a process.
Copying/Cutting/Pasting a Rung
Procedure 1-2-32 describes how to copy/cut/paste a rung.
1. To copy a rung, click the rung name in the Process tab and select Edit -> Copy or
select Copy from the context menu.
2. To cut a rung, click the rung name in the Process tab and select Edit -> Cut or select
Cut from the context menu.
3. To paste a rung, click the rung name in the Process tab and select Edit -> Paste or
select Paste from the context menu.
Note: If the pasted rung contains symbols which are not defined in the current
application, an error is displayed when the application is saved. The undefined
symbols are listed in the Analyze Information tab.
2. Enter the description text. Standard Windows™ text editing functionality can be used
to edit the text (copy/cut/paste, undo/redo, etc.)
3. Click OK to save the description or Cancel to discard the text and exit the
Long/Short Description dialog.
4-38
Application Programmer
Printing a Rung
Procedure 1-2-34 describes how to print a rung.
1. To print a rung, single-click the rung name in the tree or in the window, select Ladder
-> Print or select Print from the context menu.
Result: The standard Windows print dialog appears.
Specify the destination printer and settings and print the selected rung.
2. To preview the print job on the screen, single-click the rung name in the tree or in the
window, select Ladder -> Print Preview or select Print Preview from the context
menu.
Result: The selected rung appears in the Print Preview format.
Monitoring a Rung
The Monitor command enables the user to monitor the rung. See Monitoring a Rung
below.
4-39
Application Programmer
Example 1
First Rung:
Valves VLV1 (Open Branch Input) or VLV2 (Close Branch Input) as N.O.
contact inputs.
Second Rung:
T1 is used as an N.O. input, EMRG as an N.C. contact input, and analog input
AN1 depends on a comparator (if less than 3,200). The numeric value of the
TEMP parameter is 3,200. 3,200 is the value of a parameter data type, predefined
in the database.
Process 1:
VLV 1 T1
RUNG1 ( DON )
VLV 2
A series of 10 inputs (from IN,0 to IN,9) can execute a series of 10 outputs. The
loop is executed 10 times in the course of one scan.
4-40
Application Programmer
Rung4: If I < 10 (the value of V10 in the database is 10), jump to rung2. i.e., the
process is repeated for IN,1 – OUT,1; IN,2 – OUT,2... up to IN,9 – OUT9.
I
RUNG1 (RST )
T1 OUT ,I
RUNG2 ( )
I
RUNG3 (CTU)
I RUNG2
RUNG4 > (JMP)
V10
4-41
Application Programmer
Any change in the RTU I/O configuration affects the application. Therefore, if you change
the I/O configuration, do not forget to update the I/O link definition. For further details on
the I/O configuration of a site, see the Operation chapter above.
Changes to the database tables may also create incompatibilities that affect the I/O links.
If the application is opened for <no specific site>, no I/Os can be linked to the database.
Note: If you change the I/O link information in an application which is assigned to more
than one site, the change is only made in the current site. If you want to select a new site,
you must first save the changes in the current site.
Selecting a Site
Before defining the link between the variables and the physical I/Os, the site configuration
must be accessible to the application. An application may be assigned to one or more sites
in the ACE3600 STS. In the Application Programmer, one of those sites is selected.
Note: Certain limitations exist when assigning applications to a site. The application
version must be greater than the system software version, ACE3600 applications cannot be
assigned to legacy RTUs, and no application can be assigned to an ACE IP Gateway.
Procedure 1-2-35 describes how to select a site for linking physical I/Os to the application
variables.
4-42
Application Programmer
3. If changes are made later to the site I/O configuration in the STS, reselect the site in
the application using Select Site and redo the I/O link.
Procedure 1-2-36 describes how to select a site for linking physical I/Os to the application
variables.
1. Click the I/O Link tab in the workspace and expand the I/O Link tree, which is
generated on the basis of the application database. Those database tables which
contain I/Os are displayed, as shown below.
4-43
Application Programmer
single-column table and select Edit (shortcut Enter) or double-click the column/table
name.
Result: The I/O Link Column Definition table for the column/table is displayed.
If the database table was defined as a single-column table, the I/O link table includes
the I/O name (already defined in the database table; for example, DI1) and six more
columns, as shown below.
The Frame and Module columns are for linking the database I/O with the physical one
(mapped according to the respective frame and module).
The ‘I/O link Column Definition’ column is the I/O link programmer definitions.
Open the drop-down list and select an item.
The KLV/PDV and Predefined Value columns are used to define a value to be used by
the application in the event that communication with the I/O module is interrupted
(e.g. when the I/O module is frozen during Hardware Test.)
The Mask I/O Scan column is used to force a value that masks the actual input value.
In this case the application gets the KLV/PDV instead of the actual input value.
3. For each physical input or output, use the drop-down lists to specify the I/O location:
e.g. Frame 0 /Module 1, where the actual I/O module is located.
To view the types of I/O available in the RTU, click the Show I/O Information tab in
the Output bar at the bottom of the screen. The defined I/O configuration is
displayed, as shown below.
If no options appear in the drop-down lists, make sure that at least one I/O module has
been defined in the site configuration.
4-44
Application Programmer
4. In the I/O Link Column Definition field, use the drop-down list to select the
appropriate I/O definition (from the database) for that data type. The table below lists
the possible I/O definitions for each variable.
A data type may have several link options according to the I/O module defined in the
site configuration. For example, when linking a Discrete Input variable to a Mixed I/O
module (including 16DI + 4AI + 4DO), the following options appear in the I/O Link
column: IN_1–IN_16, BI_1–BI_4, PS_IN_1, PS_OUT, PS_EXIST_X, PS_BI_X,
MOD_SLEEP, and MOD_FAIL.
4-45
Application Programmer
5. If the inputs are defined as Value Input/Scaled Analog Inputs, specify the delta since
the last reported reading which causes the COS (Change of State) flag to be set for the
input.
Note: The user can also set and reset the COS flag in an application, using services
provided by the ‘C’ Toolkit.
6. For each input/output, specify how the application should handle the input/output in
case of communication loss with the I/O module - either KLV (Keep Last Value) or
PDV (Predefined Value).
7. If PDV was selected in the previous step, specify the actual value in the Predefined
Value column (either 0 or 1).
8. To mask the input/output only to show a certain value (Predefined or Last Value)
regardless of the actual input/output value, click to select the Mask I/O Scan entry.
This enables handling of the input/output connection or sensor without necessarily
making changes in the application program.
4-46
Application Programmer
9. To erase the I/O link definition for an I/O, select the blank from the I/O Link Column
Definition drop-down list, or click in the I/O Link Column Definition field and
select Edit -> Delete or select Delete from the context menu or press the Delete key.
Note: Once I/O linking has been done, changing the I/O configuration in a site which is
assigned to the application, can impact the I/O links.
Note: When the I/O link is complete, the status is indicated in the I/O Link tree with a
special green check mark.
3. Click anywhere in the row of that first variable and select I/O Link -> Connect I/O
Items.
Note: If the Connect I/O Items command is disabled, check to make sure that at least
one row is defined and that the cursor appears somewhere in that row.
Result: The Connect Group of Elements dialog appears.
Note that the number of Remaining rows to fill is a function of the number of
input/output variables defined in the database table and the placement of the cursor
when the Connect I/O Items command is executed.
The lower half of the dialog lists the items that await connection.
4-47
Application Programmer
4. Using the mouse or arrow, click the items to connect to the variables. Use
Ctrl+mouse to select noncontiguous items. Use Shift+mouse/Shift+arrow to select
contiguous items.
Click OK to save.
Result: The Frame and Module from the first entry are copied to the other entries.
The selected elements appear in the I/O Link Column Definition column. The
KLV/PDV setting is also copied to the other entries.
Note: If the selected items are already defined, the existing definitions are overwritten.
If the number of items selected is greater than the number of rows to be filled, only the
remaining rows are filled. The other selected items are not assigned.
5. Specify the remaining settings for each entry in the group (KLV/PDV, Predefined
Value, Mask I/O Scan for inputs and COS Delta for value/analog inputs.)
6. To erase the I/O link definition for a group of I/O, use the arrow/Shift+arrow keys to
select the I/O Link Column Definition entries and select Edit -> Delete , or select
Delete from the context menu, or press the Delete key.
Procedure 1-2-38 describes how to distribute I/O link information among sites.
1. Make sure that all sites have been configured and assigned to the application and that
the I/O link information has been saved in the application.
4-48
Application Programmer
1. To find a symbol (variable, process name, etc.) in the application, select Edit -> Find
Symbol (shortcut Ctrl+F).
Result: The Quick Find Symbol dialog is displayed.
The dialog is divided into two lists:
a. The Groups box lists the categories (e.g. basic variable types or process names).
b. The Database Names box lists all the names in that category.
4-49
Application Programmer
2. Click a group to list the corresponding names in the Database Names box. Then,
select a name and click OK.
3. To see all the names in the application, click the All group.
The Find Symbol dialog is also available using the Browse button in the Find dialog and
when editing parameters in rung elements. See Searching Tables for a Variable or
Duplicated Column, Searching Rungs for a Variable or Symbol and Editing Rung
Elements.
1. To save the application, select File -> Save Application (shortcut Ctrl+S) or click the
Save icon in the menu bar.
Result: In STS mode, if the application is assigned to more than one site, a dialog box
appears asking if the changes to the application should be applied only to the current
site or to all sites.
To apply to all sites, click All sites.
To apply only to the current site, click This site only. You are then prompted to enter
a new name for the changed application.
Note: If symbols from pasted rungs are not defined in the current application, an error
is displayed when the application is saved. The undefined symbols are listed in the
Analyze Information tab.
2. In the standalone Application Programmer, you can save the application under a
4-50
Application Programmer
different name. Select File -> Save Application As, enter a new application name and
click Save.
Result: The Save As dialog is displayed.
In the Save As dialog, enter a new application name, browse to a new directory, if
desired, and click OK.
Result: The application is saved under a new name.
Compiling an Application
Procedure 1-2-41 describes how to compile the application. (STS mode only.)
Once the application has been programmed, it is compiled to create an object file which
can be downloaded to the appropriate RTU.
1. Before compiling, make sure that a site is selected. See Selecting a Site for more
information. If the application is open for <no specific site>, it can only be compiled
using the Compile All Sites command.
3. Under Compiler Options, select the desired option for user application scanning in
and out of I/O elements attached to the RTU. To use Automatic Scanning, select
AutoScan. To use Explicit Scanning, deselect AutoScan. Two modes of scanning are
available:
• Automatic Scanning: Before compiling the ladder application, the user instructs
the Main task to automatically scan in (at the beginning of its run) and
4-51
Application Programmer
automatically scan out (before the end of its current iteration) ALL of the columns
of I/O-linked database tables. Thus all columns are scanned in/out (according to
type: inputs/outputs) in a single Main task iteration. The advantages of automatic
scanning are that the user needs to write fewer calls/rung steps in the application
and the compiled application volume is smaller.
• Explicit Scanning (default): In the application, the user explicitly calls the SCAN
operator separately for each I/O-linked database table column. The advantages of
explicit scanning are that only the relevant I/O linked database table columns are
scanned, and that the user decides when to operate the scan during the MAIN task
flow. (This is the method used with legacy MOSCAD applications.)
Note: For information on other application settings, see Downloading an Application and
Editing Rung Elements.
4. To compile the application for the current site, select Run-Time -> Compile (shortcut
F7).
To compile all sites assigned to the application, select Run-Time -> Compile All
Sites. (This command is also available when no specific site has been selected.)
Result: If any changes were made to the application, the Application Programmer
automatically saves the application.
The compile process begins and the compiler messages and status appear in the
Compile Information tab of the Output bar on the bottom of the screen, as shown
below.
If errors are found during the compilation process, they are displayed, and the object
file is not created.
Note: When compiling all sites, the Application Programmer optimizes the process.
After compiling the application once, it merely copies the output to the other sites wit
the same I/O Link data, thereby reducing the required compile time considerably.
5. To compile the application and download it to the RTU automatically, select Run-
Time -> Compile and Download (shortcut Ctrl+F7).
Result: The compilation begins as described in Step 5 above. If the compilation is
successful, the downloading process begins.
Downloading an Application
Once the application has been compiled, it can be downloaded to the RTU. The
application can be downloaded from the STS system view or site view. For more
information, see Downloading to a Site in the Operation chapter above.
4-52
Application Programmer
The application can also be downloaded from the Application Programmer, if a specific
site is selected. (STS mode only.)
Note: If you make any changes to the site configuration, the I/O link definitions in the
application should be updated and the application should be recompiled before
downloading.
2. Under Application Download, select Reset load to download the application and
restart the system. Choose this option if this is the first time that the RTU is being
loaded with an application, or if the RTU has been programmed in the past but the
database of the downloaded application has been modified, or if you choose to reset
the database.
Select Load to download the application without restarting the system. Choose this
option if the RTU has been programmed in the past and you wish to retain the current
database values or if you have made minor changes in the application (no changes in
database, or in constants, or in rungs that have differentiators or constants).
Click OK.
Note: If you make changes to the database and select Load Only, a popup message
appears explaining that Load Only is not allowed because changes were made to the
database. In this case, you must use Load and Reset.
The one case where this popup may not appear is when differentiators are added to
rungs. Under certain circumstances, this popup does not appear. Therefore, you must
use Load and Reset any time a differentiator is added to a rung.
4-53
Application Programmer
3. Click OK.
Result: The Application Settings dialog closes.
Note: For information on other application settings, see Compiling an Application and
Editing Rung Elements.
Monitoring an Application
Once an application has been downloaded to the RTU and is running, real-time monitoring
of the actual values of the variables defined in the database table or rungs can be
performed. This monitoring is done from the Application Programmer window running
on a local or remote computer. Application monitoring is especially useful when
debugging the application. (STS mode only.)
During application monitoring you can also freeze the communication between the
application and I/O modules for simulation and system test purposes. This allows you to
change, update, or set conditions for some of the database elements.
1. Connect the computer running STS to the RTU, either locally or remotely.
2. At the top of the Application Programmer window, click Local for a local
connection or enter the Site ID/Link ID to the RTU whose application is to be
monitored.
3. To monitor a database table, go to the Database tab in the Application bar and click
the desired table type.
Result: The list of database tables of that type are displayed.
4. Right-click a table name and select Monitor from the context menu, or click the
Monitor icon in the icon bar.
4-54
Application Programmer
Note: If the table is open for editing, the Monitor command switches the table to
monitor mode.
If a CRC discrepancy between the application in the RTU and in the PC is detected,
the following message appears: “Project is not compatible with unit application.
Continue monitoring Table <name>?” If you click Yes, the monitor retrieves partial
information. For example, if the application in the RTU includes a table holding 40
lines, and the same table on the PC includes 20 lines, the process retrieves the 20 lines,
and displays 0 in all other lines. In this case you cannot write to a spot in the database
that does not exist in the RTU. In all subsequent windows, STS displays “No
communication/incompatible CRC”.
6. To retrieve the values of the currently displayed table from the RTU one time only,
select Monitor -> Refresh Once (shortcut Ctrl+R) or select Refresh Once from the
context menu, or click Refresh Once.
To retrieve the values of the currently displayed table from the RTU periodically,
select Monitor -> Refresh Continuously or select Refresh Continuously from the
context menu, or click Refresh Continuously. For Refresh Continuously, enter the
4-55
Application Programmer
Refresh Rate value to specify the rate of the refresh (in seconds).
Result: The values in the table are refreshed.
Output messages are shown in the Monitor tab of the Output bar at the bottom of the
screen.
7. To update the RTU with each change to the current table, select Monitor -> Update
Every Change or select Update Every Change from the context menu, or select the
Update Every Change field.
If Update Every Change is not selected, to update the RTU with the latest database
change, select Monitor -> Update RTU or select Update RTU from the context
menu, or click Update RTU.
9. To perform a partial monitor of a table, use the mouse and arrow keys to select the
desired cell(s).
Select Table -> Monitor or select Monitor from the context menu.
Result: The Monitor panel displayed above the table and the Monitor menu appears
in the menu bar. The selected cells of the table become yellow as the monitor is
activated. During communication, the Refresh Continuously button is replaced by
the Abort button.
To add cells to the monitored block or exclude cells, select Monitor -> Add Section/
Monitor -> Exclude Section or select Add Section/Exclude Section from the context
menu.
To update cells outside of the monitored block, click and edit the desired cells and
click Update RTU or Update Every Change.
10. To change the display format of the monitored cell(s), select Monitor -> Display
Format or select Display Format from the context menu. Click the desired format.
Result: The contents of the cell are redisplayed in the selected format.
11. To close the monitor, select Monitor -> Close Monitor or select Close Monitor from
the context menu, or click Close Monitor.
4-56
Application Programmer
For a summary of the Table Monitor commands, see the chart below.
Monitoring a Rung
Process monitoring allows you to monitor the actual values received from the RTU during
on-line operations, for each predefined rung. This is useful when debugging the process.
Up to 700 symbols can be monitored in one rung.
4-57
Application Programmer
1. Connect the computer running STS to the RTU, either locally or remotely.
2. At the top of the Application Programmer window, select Local for a local
connection or enter the Site ID/Link ID to the RTU whose application is to be
monitored.
3. In the Process tab in the Application bar, click the desired process name.
Result: The list of rungs in the selected process are displayed.
4. Right-click the desired rung and select Ladder -> Monitor or select Monitor from the
context menu.
Result: The Monitor menu appears, the Monitor panel is displayed with and the
monitor operation is begun. The Abort button is enabled during the communication.
(If this is the first MDLC communication session of the MDLC driver, you are first
prompted for the MDLC driver password.)
Output messages are shown in the Monitor tab of the Output bar, usually found at the
bottom of the screen.
If the monitor is successful, the values in the rung are updated.
If a CRC discrepancy between the application in the RTU and in the PC is detected,
the following message appears: “RTU CRC not equal to the DB’s CRC” and the
monitor fails.
Note: The Monitor command replaces the editor window, if the rung is open for
editing.
4-58
Application Programmer
5. To view the rung element parameters as values, click Show Values, or select Monitor
-> Show Values (shortcut F2) or select Show Values from the context menu. To view
the rung element parameters as symbols, click Show Symbols (default) or select
Monitor -> Show Symbols or select Show Symbols from the context menu.
6. To monitor one or more specific symbols, click the browse button in the Symbol
column in the Watch panel.
Result: The Quick Find Symbol dialog is displayed.
Click the desired symbol name and click OK.
Result: The selected symbol appears in the Symbol column.
Note: The selected symbols can be from the current rung or from other rungs in the
process.
7. To search for a symbol name in a table while monitoring, select Edit -> Find/ Edit ->
Find Symbol.
8. To refresh the rung and update the values, click Refresh or select Monitor -> Refresh
Once or select Refresh Once from the context menu.
Result: The updated values appear in the monitored rung(s).
4-59
Application Programmer
9. To set qualifiers to monitor the database elements based on certain conditions, click
the Set Qual or select Monitor -> Set Qualifiers (shortcut F4) or select Set
Qualifiers from the context menu.
Result: The Qualifiers Table is displayed.
Type in a symbol name, or click the browse button in the Symbol Name column
and select a symbol from the Quick Find Symbol dialog.
Click the drop-down list in the Operation column and select the desired
operation for the condition.
Click in the Value column and enter the desired value for the condition.
To add another row to the table, click Add.
To delete an entry from the table, click in the entry and click Delete.
To save the qualifiers, click OK.
Result: The Qualifier table closes.
10. To sample/monitor the current elements regardless of the qualifier conditions set by
Set Qualifier, click Unqual Ref or select Monitor -> Unqualify Refresh (shortcut
F5).
To sample/monitor the current elements when all qualifier conditions are met, click
Qual Ref or select Monitor -> Qualify Refresh (shortcut F6).
Result: The screen is refreshed at the rate specified in Ref Rate. Any elements
whose values have changed since the last refresh are colored red.
11. To change the rate at which the monitored values are refreshed, enter a value in the
Refresh Rate field, or select Monitor -> Refresh Rate or select Refresh Rate from
the context menu and enter a value in the dialog.
12. To close the monitor, select Monitor -> Close Monitor or select Close Monitor from
the context menu, or click Close Monitor.
For a summary of the Rung Monitor commands, see the chart below.
4-60
Application Programmer
1. To display the System Performance Monitor values during on-line monitoring, click
the Database tab of the workspace.
2. Click to open the list of System Tables and then select the Performance Monitor
Table.
4-61
Application Programmer
The System Performance Monitoring variables are described in the following chart:
ScnTim The system updates this variable to indicate the Main process
(Scan Time) scan time (in 10 msec resolution). The scan time is measured
from the beginning of the scan until the beginning of the next
scan.
MaxScn This variable is also updated by the system. It indicates the
(Maximum Scan) maximum Main process scan time (in 10 msec resolution).
During monitoring this variable displays the longest scan time
since the system was started or since the variable was reset. It is
possible to reset this variable during monitoring by writing 0 into
it for searching the longest scan time.
ScnLst This variable is updated by the system. It indicates the time (in
(Scan Last) 10 msec resolution) that has passed since the system has accessed
and performed the last task (the lowest priority task in the system
software).
DtyCyc This variable indicates the percentage of CPU cycle time that is
(Duty Cycle) assigned for the Main process and all system tasks in higher
priorities. The system starts with 60% duty cycle for these tasks.
When the system cannot execute the lower priority tasks
(including the ladder tasks in priorities A to D), it reduces the
CPU percentage assigned for the higher tasks to allow for the
execution of the lower priority tasks.
4-62
Application Programmer
1. From the Database tab, right-click User Tables, select Append Table -> Backup
Blocks table.
Result: The BlocksToBackup table appears in the list of User Tables. The [table
number] is based on the other user table numbers.
2. Double-click the BlocksToBackup table entry in the list of User Tables in the tree.
Result: The BlocksToBackup table opens with default values of -1.
3. Create a BlocksToBackup table entry whose values define the block to be backed up.
See Table 1-2-1 for details on each value. For more information, see the “Database
Backup” section of the ACE3600 STS Advanced Features manual.
6. Compile the application and download it to the RTUs with the Reset and Load
option.
7. To erase a block definition in the BlocksToBackup table after it has been saved, set the
values of that specific table entry to -1. Once the table is downloaded, the firmware
will erase the corresponding saved block from the flash.
8. If you make any changes to the BlocksToBackup table after it has been downloaded,
recompile the application and download it to the RTUs with the Reset and Load
option.
4-63
Application Programmer
Value Description
Table The number of the table which contains the critical data to be
backed up. This value cannot be changed during database
monitoring.
FirstCol The first column in the table to be backed up. This value
cannot be changed during database monitoring.
ExtraCols The number of successive table columns (after FirstCol) to be
backed up. This value cannot be changed during database
monitoring.
FirstRow The first row in the table to be backed up.
ExtraRows The number of successive table rows (after FirstRow) to be
backed up. This value cannot be changed during database
monitoring.
Interval How frequently the backup should be performed, in minutes
(e.g. every 3 minutes.) If the interval is set to -1 or 0, no
backup is performed. This value cannot be changed during
database monitoring.
LastStorRslt The result of the last store operation, which is updated in the
table after the operation, whether the operation was automatic
or on demand. The value can be one of:
-1– Initial value (no store has been performed)
0– Last store OK.
1– Preparation stage of the last store operation failed.
2– Write operation of the last store to flash failed.
3– At least one of the block identifiers is invalid; therefore
the last store failed.
7– Failed to calculate the size of the block to store.
LastRstrRslt The result of the last restore operation, which is updated in the
table after the operation, whether the operation was automatic
or on demand. The value can be one of:
-1– Initial value (no restore has been performed)
0– Last restore OK.
3– At least one of the block identifiers is invalid; therefore
the last restore failed.
4– Failed to compare stored block's identifiers in the flash to
its identifiers in the current ladder's backup table.
5– Last restore failed because failed to load block contents to
its related table.
6– Cannot restore block because there is no stored block.
7– Failed to calculate the size of the block to restore.
4-64
Application Programmer
1. To configure the firmware to periodically store the critical blocks in the flash, set the
Interval value for the block in the relevant BlocksToBackup table entry.
2. To store the critical blocks in the flash from the user application, program a rung with
a CAL to the StorBlock function, passing the desired block number (index to the
BlocksToBackup table) or 255 (All Blocks).
4. To verify that a block is stored in the flash, use the SW Diagnostics and Logger,
Device MFFS, Level 0, where each block is named BFilei (where i=block number
which is the index to the BlocksToBackup table.)
1. To restore a stored critical block to RAM, from the user application, program a rung
with a CAL to the RstrBlock function, passing the desired block number (index to the
BlocksToBackup table) or 255 (All Blocks).
3. To restore a stored critical block to RAM, from the firmware, power down/up the RTU
or download a ladder application with Reset Load or Load, or select a download
option that will result with a system reset.
Note: Before the RTU restores data from a block in the flash, it checks it against the block
description in the current BlocksToBackup table and the actual database table to which the
block is to be written. A block that fails validation is removed from the flash.
1. To remove a stored critical block from the flash RAM, from the user application,
program a rung with a CAL to the RmvBlock function, passing the desired block
number (index to the BlocksToBackup table) or 255 (All Blocks).
IMPORTANT: Because there is no confirmation and the removal is irreversible,
removing one or all blocks from the ladder should be done very carefully.
2. To verify that a block was removed from the flash, use the SW Diagnostics and
4-65
Application Programmer
Logger, Device MFFS, Level 0, where each block is named BFilei (where i=block
number).
Note: If you no longer want a database block to be backed up in the flash, you must reset
the corresponding row in the BlocksToBackup table, recompile the application and
download it to the RTUs again.
2. To view the Application Programmer software version, select Help -> About.
Result: The software version is displayed.
1. To print the application, select File -> Print (shortcut Ctrl+P) or select Print from the
table/rung context menus.
4-66
Application Programmer
3. Select the objects you want to print, and click OK (or Cancel to cancel.)
Note: Checking/unchecking a parent element in a tree, selects/deselects the items
beneath it in the tree.
Result: The standard Windows print dialog appears.
Specify the destination printer and settings and print the selected objects.
4. To preview the print job on the screen, select File -> Print Preview.
Result: The Print Preview Dialog is displayed.
4-67
Application Programmer
Closing an Application
Procedure 1-2-52 describes how to close the application (Standalone mode.)
2. If unsaved changes were made to the application, you are prompted to save the
application. Click Yes to save changes, No to discard changes, or Cancel to remain in
the application.
3. To save the application under a different name, select File -> Save Application As,
enter a new application name and click Save.
1. To exit the Application Programmer window, select File -> Exit (shortcut Alt+F4)
4-68
Application Programmer
or click the X in the upper right hand corner of the Application Programmer
window.
2. If unsaved changes were made to the application, you are prompted to save the
application. Click Yes to save changes and exit, No to discard changes and exit, or
Cancel to remain in the Application Programmer window.
4-69
Appendix A: Site Configuration Parameters
A number of parameters and settings are used when configuring the ACE3600, ACE1000,
IRRInet-M, or ACE IP Gateway site, including the following:
• Port Parameters for the various on-board and plug-in communication ports
• I/O Parameters
• Advanced Parameters
The color of the site configuration parameters indicates their status. The color of the parameter
category reflects the change status (white=Default group, red triangle=Modified group). The
color of the parameter reflects the value (red=Value Out of Range, green=Value different from
default).
Port and I/O parameters are white for the default value and green for any value other than the
default.
When configuring an ACE3600, ACE1000, or IRRInet-M site in the STS, parameters are
displayed according to context. For example, when you select a port type, only those
parameters that are applicable to the selected configuration are displayed. In addition, only
those parameters which are defined for the particular system software version are displayed.
For certain parameters, the range <minimum-maximum> and [default]: values are listed. The
default value provided is one of the possible values. The default may changes according to
changes in the configuration.
The Port parameters define the communications ports of the RTU site, the type of media
connection to the communication network and the devices connected to them. For each media
type, a different set of port and link parameters is available. For each media type, a default
configuration is defined which can be modified.
To view/edit these parameters, click on a port in the site’s General or Ports tab.
The possible port configurations and port parameters are described below.
A-1
Appendix A: Site Configuration Parameters
Note: Any change to the port type (i.e. parameters on the left side of the port definition, such as
Media, Connection/Operation Mode, Connection/Radio Type, Radio System, Modem),
causes all advanced physical and link layer parameters to return to their default settings.
Therefore, if you want to keep changes to these parameters, save the site configuration before
make even any subsequent changes to the port type.
Port SI1
A-2
Appendix A: Site Configuration Parameters
A-3
Appendix A: Site Configuration Parameters
Operation Mode
For RS232 media type: Async.
Connection Type
For RS232 media type: Local Computer, RTU-to-RTU, User Port, External Modem, External
dial-up modem, Protocol Analyzer Port, Third Party Protocols, GPS Receiver, or PPP.
For RS485 media type: RTU multi-drop, User Port, or Third Party Protocols.
Connection Mode
For External Modem: Full duplex or Multi-drop half duplex with/without CD, or MAS
(lines/radios).
For Protocol Analyzer Port: Receive from <other port name>. Sets the port name to which the
protocol analyzer listens.
Connected To
Master/Slave. Relevant for PLC. See the ACE3600 STS Third Party Protocols Support
manual.
Type
For External Modem MAS: Full duplex or Multi-drop half duplex.
Link name
Contains the logical name of the link that the port is connected to. The link name is
automatically selected according to the Port parameters. For example, if the connection type is
user port (ladder controlled), then STS automatically selects USER1 as link name. If relevant,
you can select another name from the drop down list.
Default Routing
Ensures RTU “mobility”. The Default Routing parameter allows you to define the RTU as one
that can be switched from one base station to the other by changing the radio frequency
(RadioX) or switching physical lines (LineX), but without changing the Link ID and the
MDLC network settings.
Choice Description
None This feature is not used.
To Slave(s) 1) If the RTU serves as base station to a central connected to it,
then one of the ports must be defined as To Master/Cntrl. All
others must be set to None.
2) If the base station is the one that handles the data sent by the
RTUs, then one of its ports must be defined as To Slave(s). This
is the port through which the RTU communicates with the
slaves.
To Master/Cntrl If the RTU is used as “slave”, then one of the ports should be
defined as To Master/Cntrl, and its Link ID must be RadioX or
LineX.
GPS Protocol
The type of protocol used by the GPS receiver: Unknown, Motorola binary protocol, NMEA
0183.
The Unknown and Motorola binary protocols are used for the Synergy Systems SynPaQ/E
GPS Sensor with M12+ Timing receiver. NMEA 0183 is used for the Garmin GPS 16 HVS
receiver. (For the Garmin GPS 16 HVS, set the Data speed to 4800 Bps.)
A-5
Appendix A: Site Configuration Parameters
Note: When more than one link is selected, the Advanced Link Layer parameters can be
configured separately for each link using the Advanced Configuration button.
NTP Servers
For PPP connections. The list of up to four NTP servers. To add a server, enter the server. To
remove a server, erase the server entries.
To save the list, click on OK. Relevant for PPP connection type only.
Protocols
For third party protocols over an IP port. For MODBUS over TCP/IP connections, click on the
Modbus Slave checkbox in the ‘Select Protocols to Support’ dialog to support this protocol,
and click OK to save the selection.
Port Name
For third party protocols, specify port PLC1-PLC3. For third party protocols over an IP port, if
no third party protocol is assigned to this port, select N/A.
A-6
Appendix A: Site Configuration Parameters
A-7
Appendix A: Site Configuration Parameters
This interval is used (automatically) as follows: each RTU is assigned a priority level as a
function of the data message it wants to transmit (new data, acknowledgment, retry, etc.) and in
some cases, as a function of its address. When the RTU wants to transmit that message, it first
checks whether the communications channel is free or not. If the channel is free, the RTU starts
transmitting only after a delay that is equal to this parameter multiplied by the RTU's priority
level. If in the meantime the channel has been taken by a higher-priority RTU, the whole
process is repeated when the channel is free again.
For example, let's assign the time resolution T. When the RTU accesses the channel, it starts
transmitting only after a delay that is a factor of T. When the RTU accesses the channel for the
first time, the delay is (n+4)×T, where n represents the 4 less significant bits in the address.
When an RTU sends an acknowledgment to another RTU, it starts transmitting only after a
delay of 0 to 3T. If a collision occurs because two RTUs have been addressed with the same 4
less significant bits, then the address bits are shifted automatically, and the RTU starts
transmitting after a different delay.
If the default settings need to be changed, first consult the specific details of your modem's
owner’s manual. For more information on using modems with the RTU, see “Appendix B:
Remote STS Modem Setup” in the ACE3600 STS Advanced Features manual.
A-8
Appendix A: Site Configuration Parameters
For PPP modem. Specifies how long to wait after restarting the radio/modem before
attempting to configure and register it. If a modem configuration file was downloaded, the
SetRtsTimeout variable overrides this setting. For more details, see “Modem Configuration”
under “MDLC over IP” in the ACE3600 STS Advanced Features manual.
If the RTU fails to configure or register a radio/modem, and the radio/modem supports this
feature, it can restart it using AT commands. The G18 (for GPRS) modem can also be powered
off and on using the RTU's RTS signal from RS232. This parameter determines how many
failed attempts to connect the modem are required before restarting it. If a modem
configuration file was downloaded, the n_failstoreset variable in file overrides this setting. For
more details, see “Modem Configuration” under “MDLC over IP” in the ACE3600 STS
Advanced Features manual.
This parameter is intended to be used when no DCD input signal is provided by the modem. If
a modem configuration file was downloaded, the pppechosendmaxretry variable overrides this
setting.
A-9
Appendix A: Site Configuration Parameters
User Name
The user name to be entered for PPP authentication when connecting to the modem. If a
modem configuration file was downloaded, the username variable in the file overrides this
setting.
Password
The password to be entered for PPP authentication when connecting to modem. If a modem
configuration file was downloaded, the password variable in the file overrides this setting.
A-10
Appendix A: Site Configuration Parameters
Passive (Default) TCP is controlled by the application. In this case, the Check
alive timeout parameter must be set. The application checks
whether the server received any communication until the Check
alive timer expires. If the Check alive timeout parameter is set to
0, the check alive mechanism is not used.
A-11
Appendix A: Site Configuration Parameters
Note: When more than one link is selected, the Advanced Link Layer parameters can be
configured separately for each link.
A-12
Appendix A: Site Configuration Parameters
A broadcast that activates a momentary operation (not latch!) is likely to reactivate the
operation if the number of TX broadcasts is greater than 0.
A-13
Appendix A: Site Configuration Parameters
A-14
Appendix A: Site Configuration Parameters
derived from its site ID, so not all radios are restarted and context activated at the same time. If
a file was downloaded, this parameter can be overridden using the regLifeTimeout variable.
For more details, see “Modem Configuration” in “MDLC over IP” in the ACE3600 STS
Advanced Features manual.
A-16
Appendix A: Site Configuration Parameters
Disable The GPS timing receiver position must be determined again each
time.
The associated parameters for Port SI2 are identical to those of Port SI1.
A-17
Appendix A: Site Configuration Parameters
Ports PI1/PI2
Ports PI1/PI2 are plug-in ports designed for various radio or line communications. For more
information on plug-in ports, see the ACE3600 RTU Owner’s Manual or the ACE1000 RTU
Owner’s Manual.
A-18
Appendix A: Site Configuration Parameters
10/100 BT, Static LAN, Ethernet MotoTrbo Connect Plus XRT Gateway
For Ethernet communication over LAN, using a static IP address, as an XRT Client device
connected to an XRT Gateway.
The associated parameters for Ports PI1/PI2 RS232, Async are identical to those of Port SI1 for
RS232, Async. In addition, the following parameters may appear for Ports PI1/PI2.
Trunk System
For XTL2500/5000 Trunked Analog radios: SmartNet, Simulcast, SmartZone.
A-19
Appendix A: Site Configuration Parameters
Modem
For conventional radios: DPSK, FSK.
For general radios: DFM and COS.
For trunked radios: DPSK
For trunked General radios in a SmartNet or General system: DPSK, FSK.
For CDM750 radios: DPSK, FSK, DFM.
Address Mode
For 10/100 BT: DHCP Client or Static LAN
Connection Type
For 10/100 BT: Ethernet
Connected To
For 10/100 BT: LAN or a MotoTrbo Connect Plus XRT Gateway.
The following is a description of the additional parameters that apply to Ports PI1/PI2 only.
A-20
Appendix A: Site Configuration Parameters
In redundant sites, the Self IP Address should be unique but should be on the same segment.
A-21
Appendix A: Site Configuration Parameters
NTP Servers
For 10/100 BT and PPP connections. The list of up to four NTP server/options. To add a
server option, enter the server and option. To remove a server option, erase the server and
option entries.
To save the list, click on OK.
Protocols
(ACE3600) For third party protocols over an IP port. For MODBUS over TCP/IP connections,
click the Modbus Slave checkbox in the ‘Select Protocols to Support’ dialog to support this
protocol, and click OK to save the selection.
(ACE IP Gateway) For SCADA support over an IP port (10/100 BT, Static LAN only). For
SCADA connections, click on the SCADA checkbox in the ‘Select Protocols to Support’
dialog to support this protocol, and click OK to save the selection.
The following is a description of the additional parameters that apply to Ports PI1/PI2 only.
A-22
Appendix A: Site Configuration Parameters
A-23
Appendix A: Site Configuration Parameters
A-24
Appendix A: Site Configuration Parameters
XRT Client idle time to declare end reception (milliseconds) <0-65535> [0]:
For 10/100 BT static LAN connections to a MotoTrbo XRT Gateway. Timeout in milliseconds
to declare end of reception. After this timeout, process receives bytes from the XRT. 0 means
that the default value is used.
XRT Client packet data request fail timeout (seconds) <1-65535> [210]:
For 10/100 BT static LAN connections to a MotoTrbo XRT Gateway. Timeout in seconds to
declare a transmit failure when transmitting a raw data request and getting no response from
XRT.
The following is a description of the additional parameters that apply to Ports PI1/PI2 only.
Port ETH1
The following port configurations are available for ACE3600 and ACE1000 Port ETH1.
Not Used
Means that the specific port is not used. Setting a port to Not Used frees up any resources that
might otherwise be allocated to the port.
10/100 BT, DHCP Client, Ethernet, LAN
For Ethernet communication over LAN, using a DHCP-supplied IP address.
A-25
Appendix A: Site Configuration Parameters
Note: If the site includes expansion frames, the ETH1 port cannot be set to Not Used or DHCP.
The recommended configuration for ETH1 is I/O Expansion Comm.
The associated parameters for Port ETH1 are identical to those of Ports PI1/PI2 for 10/100 BT.
Address Mode
For 10/100 BT: DHCP Client, Static LAN or I/O Expansion Comm.
Note: For ACE3640 if at least one expansion frame is defined, then port ETH1 must be defined
either as Static LAN or as I/O Expansion Comm. If the port is configured as Static LAN, a
warning is displayed recommending that the user change the Address Mode to I/O Expansion
Comm.
Connection Type
For 10/100 BT: Ethernet
Connected To
For 10/100 BT: LAN or a MotoTrbo Connect Plus XRT Gateway.
A-26
Appendix A: Site Configuration Parameters
DNP Slave
For connecting the RTU to SCADA systems based on DNP protocol. For further information,
refer to the ACE3600 STS Third Party Protocols Manual.
MODBUS Slave
For connecting the RTU to SCADA systems based on MODBUS protocol. For further
information, refer to the ACE3600 STS Third Party Protocols Manual.
Port HU1/HU2
The following port configurations are available for ACE3600 Ports HU1/HU2.
Not Used
Means that the specific port is not used. Setting a port to Not Used frees up any resources that
might otherwise be allocated to the port.
Note: If one USB Host port is set to Not used but the other USB Host port is used (for
MotoTrbo), both ports are enabled for USB communication, as they are both connected (via the
USB root hub). If the USB Host port detects that a MotoTrbo radio has been connected to it,
even though it is set to Not Used in the STS, the port LED is turned on, (this will be reflected
in the SW diagnostic), but the port cannot connect to the radio.
USB Host, Async, Remote NDIS Host, MotoTrbo
For connection to MotoTrbo radio in digital mode (as a raw IP device).
USB Host, Async, Serial USB Host (non IP), MotoTrbo Connect Plus Radio
For connection to MotoTrbo radio in Connect Plus (as a raw non-IP device).
Operation Mode
Async
A-27
Appendix A: Site Configuration Parameters
Connection Type
Remote NDIS Host or Serial USB Host (non-IP).
Connected To
MotoTrbo or a Mototrbo Connect Plus radio.
A-28
Appendix A: Site Configuration Parameters
RSSI signal level to declare radio not registered <0:DISABLE, 1-255> [100]:
A specific parameter for Connect Plus radios. A value other than 0 signifies the threshold RSSI
level of radio channel. As the signal level is constantly monitored, any higher number
inidicates that the RF coverage is low, or that Connect Plus controller is down. Setting it to 0
disables this feature.
The Advanced Link parameters associated with Port HU1/HU2 for MotoTrbo Connect Plus
radio are the following:
A-29
Appendix A: Site Configuration Parameters
Wait time after Reset radio (sec) <0 to 255 seconds> [5]:
For MotoTrbo Connect Plus radios. This parameter specifies how long to wait after restarting
the USB connection before attempting to connect again. This parameter is reserved for future
use.
Port USB1/USB2
The following port configurations are available for ACE1000 Ports USB1/USB2.
Not Used
Means that the specific port is not used. Setting a port to Not Used frees up any resources that
might otherwise be allocated to the port.
Note: If one USB Host port is set to Not used but the other USB Host port is used (for
MotoTrbo), both ports are enabled for USB communication, as they are both connected (via the
USB root hub). If the USB Host port detects that a MotoTrbo radio has been connected to it,
even though it is set to Not Used in the STS, the port LED is turned on, (this will be reflected
in the SW diagnostic), but the port cannot connect to the radio.
USB Host, Remote NDIS Host, MotoTrbo
For connection to MotoTrbo radio in digital mode (as a raw IP device).
USB Host, Async, Serial USB Host (non-IP), MotoTrbo Connect Plus Radio
For connection to MotoTrbo radio in Connect Plus (as a raw non-IP device).
USB Host, Remote NDIS Host, ASTRO APX
For connection to ASTRO APX radio in digital mode.
A-30
Appendix A: Site Configuration Parameters
Connection Type
Remote NDIS Host or USB2 only Serial USB Host (non-IP).
Connected To
MotoTrbo or ASTRO APX or USB2 only to a MotoTrbo Connect Plus radio.
The Advanced Link Parameters for MotoTrbo Connect Plus are identical to the ones for port
HU1/HU2 in ACE3600.
Port DU1
The following port configurations are available for ACE3600 Port DU1.
Not Used
Means that the specific port is not used. Setting a port to Not Used frees up any resources that
might otherwise be allocated to the port.
USB Device, Async, Remote NDIS Device, PC/STS
For connection to STS, via USB (type B connector).
Operation Mode
Async
Connection Type
Remote NDIS Device
Connected To
PC/STS
A-31
Appendix A: Site Configuration Parameters
It is recommended to keep the Default routing IP address as 0.0.0.0, otherwise the STS PC may
work slowly.
Port INTR1
ACE3600 Port INTR1 is an internal Ethernet port dedicated to connecting the active and
standby CPUs in a redundant site. For more information on the INTR1 port, see the ACE3600
RTU Owner’s Manual. For more information on RTU Redundancy, see the ACE3600 STS
Advanced Features manual.
The following port configurations are available for ACE3600 Port INTR1.
Redundancy Primary/Secondary
For Ethernet communication over LAN between redundant RTU peers only, using a static IP
address.
Note: If you change the Self IP address of the INTR1 port, you must change the Default group
IP address under the advanced link of the port to the correct broadcast IP address.
A-32
Appendix A: Site Configuration Parameters
Port TSP<x>
The following port configuration is available for ACE3600 Port TSP<x>.
RS232, Async, Terminal Server
For terminal server ports associated with a physical port on the ACE IP Gateway only.
Operation Mode
Async.
Connection Type
Terminal Server
A-33
Appendix A: Site Configuration Parameters
ACE3600 DI Parameters
For those ACE3600 I/O modules with DIs (DI and DI/DO FET), the following parameters can
be set.
Result
Shows the resultant DI filter time (DI filtering time x 200 microseconds).
A-34
Appendix A: Site Configuration Parameters
Result
Shows the resultant DI Counter filter time (Counter filtering time x 50 microseconds).
ACE1000 DI Parameters
For those ACE1000 I/O modules with DIs, the following parameters can be set.
Notifications [COS]:
Send notification when the DI has any change of state (COS), when it goes to NO, when it goes
to NC, or disable notifications.
For future use.
ACE3600 DO Parameters
For those ACE3600 I/O modules with DOs, the following parameters can be set.
12V DO Relay inhibiting is enabled. The relay power source is from the
12V DO line, controlled by the 12V DO input connector on the
panel of the power supply (relays inhibited).
In order for relay inhibiting to be controlled by this parameter, the S3 switches on the DO relay
board must be SW1=ON and SW2=OFF.
ACE1000 DO Parameters
For those ACE1000 I/O modules with DOs, the following parameter can be set.
A-35
Appendix A: Site Configuration Parameters
ACE3600 AI Parameters
For those ACE3600 I/O modules with AIs, the following parameters can be set.
ACE1000 AI Parameters
For those ACE1000 I/O modules with AIs, the following parameters can be set.
Scaling
Units
The engineering units used in scaling the AI.
Alerts
Set the Low, Low-Low, High and High-High range values for alerts of changes to the AI.
Note: The STS performs validation on the values (e.g. that Low-Low is not greater than Low.)
Change resolution
Enter the AI change resolution percentage.
A-36
Appendix A: Site Configuration Parameters
ACE1000 AO Parameters
For those ACE1000 I/O modules with AOs, the following parameters can be set.
Units
The engineering units used in scaling the AO.
Range
The Min Value and Max Value of the range used in scaling the AO.
A-37
Appendix A: Site Configuration Parameters
IMPORTANT: Exceeding the range may consume additional memory and may cause
unexpected or incorrect behavior in the RTU.
Some of the parameters which relate to advanced features are documented in the ACE3600 STS
Advanced Features manual.
Size of each buffer in the ‘C’ application heap (bytes) <0-2048> [0]:
Maximum buffer size in the heap used by the ‘C’ application when allocating memory using
linked list functions.
‘C’ programs require dynamic allocations. Therefore, the value of this parameter should be
determined according to the amount of memory required by the ‘C’ programs, or according to
the number of ‘C’ program blocks.
Number of slave ‘C’ functions for session based protocol <0-250> [3]:
Number of ‘C’ language functions to be supplied by the ‘C’ application for MDLC
communication session based protocol. For more information, see “DCF1” in the ACE3600
‘C’ Toolkit User Guide. This parameter is related to the Number of SLAVE logical channels
Frame Sequence Layer advanced parameter.
A-38
Appendix A: Site Configuration Parameters
NOTE: 10 ms functions must have short execution times in order not to adversely affect
important system functions.
Number of ‘C’ functions called by the 100 msec task <0-250> [10]:
Number of ‘C’ language functions to be supplied by the ‘C’ application to the 100 millisecond
task. For more information, see “DCF3” in the ACE3600 ‘C’ Toolkit User Guide.
Maximum size of flash memory for user logging, in kbytes <0-100000> [50000]:
and NOT more than <0-80> % of total Flash [30]:
Maximum size (in kbytes) of the flash memory in the unit allocated for logging user data.
Should not be more than the specified percentage of the total Flash memory.
A-39
Appendix A: Site Configuration Parameters
Alert about C application ucalls which are not called from ladder [No]:
Whether or not the user should be alerted about ‘C’ application ucalls which are listed in the
user jump table, but not called from a ladder application (using the UCL operator.) For details
on calling ‘C’ applications from the ladder, see the ACE3600 ‘C’ Toolkit User Guide.
Reduced functionality Save a partial image only. The Core Dump sends a message to
the Error Logger and to the system console.
A-40
Appendix A: Site Configuration Parameters
Learn if not modified Learn the dynamic IP route when receiving an ICMP
transmission, provided it does not modify routing.
Learn if known application/ Learn the dynamic IP route when receiving a TCP
socket ID transmission, only when the application/socket ID is
known.
Learn if known application Learn the dynamic IP route when receiving a UDP
/socket ID transmission, only when the application/socket ID is
known.
A-41
Appendix A: Site Configuration Parameters
Error messages are generated by modules to inform the user of unusual events that have taken
place in the system. It is advisable to increase the file size if a large number of errors is
expected. Once the file is full, no new messages can be added to the file and any error
messages are lost. Errors should be retrieved (and deleted) frequently using the Error Logger
utility to avoid filling up the file. The status of the Error Logger flash file can be monitored
using the ErAlmostFul and ErFull flags in the system Reserved Flag table. Error messages
from the logger flash file are also backed up on the STS PC hard drive for future reference.
A-42
Appendix A: Site Configuration Parameters
Note: In an I/O expansion system with an activated firewall, the IP address range of all
expansion frames configured in the system must be listed in the approved Firewall address list,
as well as the IP address of the main CPU expansion port. For example, in a system with
thirteen frames, specify the IP address range 10.100.100.100 (main CPU) to 10.100.100.113.
These IP addresses are comprised of:
1. the number set in the I/O expansion module’s rotary frame number selector switch (1-
13)
and either
2. the Self IP address from the 'ETH1->I/O Expansion Comm. port configuration
or
the ‘Expansion module first frame IP address’ parameter
Note: For more on enabling the firewall in expansion systems, see the “Firewall” section of the
ACE3600 STS Advanced Features manual.
Note: For more on firewall IP addresses in expansion systems, see the “Firewall” section of the
ACE3600 STS Advanced Features manual.
A-43
Appendix A: Site Configuration Parameters
A-44
Appendix A: Site Configuration Parameters
Time out for URGE transmission after hole detection <0-3000> sec [15]:
The period of time after which an “urge” frame is issued if a gap is formed at the Transport
Multiplex level. A response to the urge frame means that the gap will never be filled since all
Data Link layer retries have already been exhausted.
A-45
Appendix A: Site Configuration Parameters
site table are reachable. For detailed information on the Health Check mechanism, see the
ACE3600 STS Advanced Features manual.
The objective of this parameter is to enable lower priority tasks to perform even when the
application is busy.
System Resources
Clients <1-10> [4]:
The maximum number of SCADA clients which can be allocated at one time.
Task Allocation
Overall tasks <1-20> [6]:
The maximum number of overall concurrent application tasks.
Requests Allocation
Overall pending requests <1-125> [30]:
The maximum total number of requests which can be pending at one time.
A-46
Appendix A: Site Configuration Parameters
Flags
Send TCP check alive requests <Yes/No> [Yes]:
Whether or not the ACE IP Gateway IP stack should send check alive messages to the SCADA
central to keep the connection alive.
During hardware testing, the I/O module can be frozen by the user. If the user exits the
Hardware Test utility without unfreezing the module, after the designated interval (x minutes)
all frozen modules are unfrozen. If the user remains in the Hardware Test utility but there is no
activity, after the designated interval (x minutes) all frozen modules are unfrozen.
A-47
Appendix A: Site Configuration Parameters
The user port is capable of handling up to 8 buffers. If all are full, the port sets DTR to OFF or
issues XOFF according to its configuration.
For systems with both ACE3600 RTUs and legacy (MOSCAD/MOSCAD-L) RTUs, select
Legacy if you prefer to upgrade MOSCAD/MOSCAD-L applications to ACE3600 without
modifying the applications (‘C’ or ladder).
If your application uses Scaled AI or Scaled AO, you should not use Legacy I/O resolution. In
this case, when scaling is used, the values of the AIs and AOs reflect the required values
automatically. Note that the AO voltage range is 0 to 10V (versus 0 to 5V in MOSCAD).
A-48
Appendix A: Site Configuration Parameters
Expansion frames comm. status re-estimation time period (in scan cycles) <2-100> [50]:
The period of time (in scan cycles) after which the communication status between the main
frame and each expansion frame is checked.
A-49
Appendix A: Site Configuration Parameters
Its default should be the same as the UDP port over which the Expansion Loader searches for
the main frame CPU (discovery) but this port number can be changed. For more on the
Expansion Loader, see the ACE3600 RTU Owner’s Manual.
A-50
Appendix A: Site Configuration Parameters
are started at the same time, the expansion module is initialized first and then starts running
before the main CPU completes system start up. (The main CPU waits for this process to
complete before continuing its start sequence). During this time, no EMI connection is
established between the two. This parameter limits in the expansion module the time expected
for the main CPU system startup to complete and connect EMI. If after this time, the main CPU
has not completed its startup, or a cable is disconnected, EMI is not connected, causing the
expansion module to restart. If this parameter is set to 0, it will try forever (no time limit.)
If this parameter is set to 0, the expansion module enters the fail timeout state immediately
after being disconnected.
In the expansion module, this parameter determines how long to wait after getting a disconnect
from the EMI slave, to perform restart. If this parameter is set to 0, the expansion module
never restarts as a result of a disconnect.
A-51
Appendix A: Site Configuration Parameters
Note: During disconnect from the EMI, the application gets the PDV/KLV of the inputs. The
I/O modules are in fail mode and get the PDV/KLV of the outputs.
Expansion module KeepAlive timeout when disconnected from main frame CPU<0-65535>
(seconds) [4]:
This parameter is the same as ‘Expansion module KeepAlive timeout' but for cases where a
cable is disconnected, or right after the EMI gets connected (thereby enabling the main CPU to
detect frames faster after restart.) Once a communication is received, the timeout is set as in
'Expansion module keepalive timeout'.
If this parameter is set to 0.0.0.0, the main CPU adds the frame ID to the IP address of the main
CPU expansion port to produce the expansion frame’s IP address.
IMPORTANT: The allocated IP address must be in the same network as the main CPU (same
subnet mask, as defined for the main CPU’s expansion port).
Main waits for expansion CPUs to recover after redundancy switchover <0-60> seconds
[15]:
Relevant for the main CPU only. After redundancy switchover, the number of seconds the new
active main CPU should wait for the expansion CPUs to connect with it. If after that period
they fail to connect, the main CPU issues a restart command for all expansions. If this
parameter is set to zero, the main CPU issues a restart command immediately after the
switchover.
A-52
Appendix A: Site Configuration Parameters
Standby CPU waits to connect with active CPU <1-60> seconds [5]:
Relevant for a standby CPU when the site supports I/O auto recognition. The number of
seconds the standby CPU waits for the active CPU to complete I/O auto recognition and send
the recognized I/O module information to the standby CPU so it can complete the startup.
Minisession Broadcasts
Broadcast (group call) number of boxes <1-31> [6]:
The number of boxes allocated for storing frames that were broadcast from the central unit and
that are to be processed by the RTU.
The RTU scans the box queue with intervals of 1 second, and updates the Qualifiers table
accordingly. Increase this value if the reception rate is greater than the queue scanning rate.
A-53
Appendix A: Site Configuration Parameters
This period of time starts after the Data Link layer of the MDLC protocol finalizes the
transmission of a frame (that is, after it has received an appropriate ACK or exhausted all
retries at From/To level).
If the value of the “Application Data-Ack from central” is NO, this parameter is irrelevant
(because the system relies on ACK at Data Link level, that is, at From/To level, and does not
need any further acknowledgments at RTU/Central Unit level).
The value of this parameter must be identical for all RTUs and the central unit.
No There is no need for ACK from the central unit at RTU/Central Unit level.
The system relies on Data Link ACK (at From/To level).
Yes The system requires that the central unit issues ACK to the RTU
(RTU/Central Unit level), in addition to Data Link ACK.
Data frames are the information stored in Txbuf in case of transmission, and in Rxbuf in case
of reception.
A-54
Appendix A: Site Configuration Parameters
Data frames are the information stored in Txbuf in case of transmission, and in Rxbuf in case
of reception.
Data frames are the information stored in Txbuf in case of transmission, and in Rxbuf in case
of reception.
A-55
Appendix A: Site Configuration Parameters
Addr. range response for 'All RTU simulation' <Site ID +- (-100)-100> [0]:
Assigning alternate addresses to an RTU. If the basic address is X and the range is Y, then the
unit responds to all calls in the range of {X,X+1,...,X+Y}. If the range is -Y, the unit responds
to all calls in the range of {X-Y, X-Y+1, ..., X}.
This parameter is for field simulation in laboratory conditions. For sites that support
redundancy, this parameter is modified by the STS. See the “RTU Redundancy” section of the
ACE3600 STS Advanced Features manual for more details.
Note: In secured systems, M2M credentials configuration must be set to Common in order to
use this parameter. For more information, see the “Unique or Common M2M Credentials”
section of the ACE3600 Advanced System Security User Guide. For information on other
aspects of All RTU simulation in a secured system, see the “User Authentication Types”
section of the ACE3600 Advanced System Security User Guide.
Note: Activating this feature requires that all units in the system support this feature. Failure to
comply with this requirement will result in lost frames.
Note: Activating this feature requires that all units in the system support this feature and that
the Time To Live Counter feature to be active too.
Note: Increasing this value to more than 100 may require an increase in the Stack size of
application manager task for using SW Diagnostic device NSTOCK level 5.
A-56
Appendix A: Site Configuration Parameters
Note: The clock offset depends on the media used (between 1 millisecond in LAN to 100
milliseconds in GPRS). SW Diagnostics device NTP level 1 shows the average clock offset in
seconds. Level 10 shows maximal average clock offset obtained.
A-57
Appendix A: Site Configuration Parameters
Note: When contact with the server is lost, the minimal poll interval is used to resync as fast as
possible.
NTP option #1
Reserved for advanced NTP settings. It is recommended to leave this parameter blank.
NTP option #2
Reserved for advanced NTP settings. It is recommended to leave this parameter blank.
NTP option #3
Reserved for advanced NTP settings. It is recommended to leave this parameter blank.
NTP option #4
Reserved for advanced NTP settings. It is recommended to leave this parameter blank.
NTP option #5
Reserved for advanced NTP settings. It is recommended to leave this parameter blank.
PLC Heap
For background on the PLC, see the ACE3600 Third Party Protocols Support manual.
A-58
Appendix A: Site Configuration Parameters
Maximum reply timeout from local PLC (100 msec) <2-200> [70]:
The maximum time during which a reply should be obtained from the local PLC (the PLC
directly connected to the PLC port). If a reply is not received by the end of this period, the
value of the PLCStt variable is set to “PLCtim” to inform the ladder.
Maximum reply timeout from remote PLC (100 msec) <2-3000> [300]:
The maximum time during which a reply should be obtained from a remote PLC (the PLC that
is not connected to the current MOSCAD). If a reply is not received by the end of this period,
the value of the PLCStt variable is set to “PLCtim” to inform the ladder.
Light up always - the LEDs on the LED panel of the CPU and I/O modules are lit
constantly.
For information on the LEDs behavior, see the ACE3600 RTU Owner’s Manual.
A-59
Appendix A: Site Configuration Parameters
AC 100-264V
DC 18-72V
DC 12V Expansion
DC 12V
DC 12V low-tier
Note: In the default configuration, the Auxiliary 2 Voltage is set to OFF. It can be turned
on by the application in the Main power supply table. If a value other than “OFF” is
chosen, this sets the Auxiliary 2 switches to “ON” upon startup with the chosen output
voltage.
This value is relevant only for external DC or solar panel power supplies. For all other power
supply types, only the recovery of the Main input reconnects the RTU, and the reconnect
voltage value is overridden by the system to be 15.6V (no matter what value is set in this
parameter.) Thus, for these power supply types, the reconnect voltage displayed in Hardware
Test or in SW Diagnostics is always 15.6V.
NOTE: The power supply is not able to sense which battery is connected to it, and
performs all tests based on this configuration value.
RAM size for PPP ports dynamic allocation (in kbytes) <640-100000> [640]:
The size of the RAM used for dynamic allocation of memory used by all PPP ports.
A-61
Appendix A: Site Configuration Parameters
accessed them), it retries as many times as determined in this parameter. After this pre-defined
number of retries, the source site declares the channel as being “busy”.
Delay after last received frame for partial ACK <1-1000> sec [5]:
If the called unit receives only some of the frames that were supposed to arrive in one burst, it
waits a certain period of time, defined in this parameter, before it issues a partial ACK at
Source/Destination level.
Interval before starting 'IS SESSION ON' checks <1-1000> sec [50]:
The period of time that should elapse before the “is session on” check takes place. See next
parameter.
Number of 'IS SESSION ON' checks <(-1) >= Forever ((-1))-20> [3]:
If a period of silence is detected in the channel at source/destination level, a special mechanism
checks whether the logical channel is still available. This parameter determines the number of
A-62
Appendix A: Site Configuration Parameters
times the channel is checked for availability. In any case, the first “is session on” check does
not take place before the timeout defined in the previous parameter.
Extended sync – RTU sends sync protocol frames containing time zone and password,
with nanosecond resolution. (1 millisecond accuracy over
synchronous media (radio) and over asynchronous RTU to RTU
media.) :
Note: The RTU checks the password in extended sync frames and
authenticates sync messages before updating the clock. If it does not
match it is rejected. See SW Diagnostics Device TIMESYN level 10
for statistics of received/ignored sync frames.
Legacy sync – For synchronizing legacy MOSCAD RTUs. No time zone or password,
with milliseconds resolution. Assumes sending RTU is in the same
time zone. (5 millisecond accuracy)
What to do with received legacy sync messages? [Don’t Ignore legacy sync messages]:
The valid values are:
Ignore legacy sync messages – Do not update the clock from when legacy sync
messages are received.
Don’t Ignore legacy sync messages – Update the clock from when legacy sync messages
are received.
A-63
Appendix A: Site Configuration Parameters
No time zone - The RTU has no time zone. The next parameter "Timezone offset in
minutes" is ignored. If an extended time sync frame is received, it will
sync without adjusting for time zone. If sync source is GPS or an NTP
server, its time will be GMT time. The Daylight Savings database table
is ignored.
User configured - When an extended time sync from the STS PC or another RTU in
another time zone is received, clock sync is adjusted by the time zone
difference, based on the next parameter "Timezone offset in minutes".
If port is configured for GPS or NRP, the specified time offset is added
so unit time base is local time and not GMT.
In this mode, daylight savings time start/end dates can be specified in
the Daylight Savings database table. When the unit moves from no
daylight saving to daylight, the time tag logger is notified that the time
has changed.
Note: If a user-configured RTU powers up when daylight savings time is in effect, and errors
occur during startup, those errors are logged with no daylight savings time.
The event timers can be activated via the SetTmr function in relation to events that have been
received via GtEvnt. The timers and the events are accurate to 10 msec. The timers are
activated when the event actually takes place (and not when GetEvent was performed).
Increasing the maximum time consumes about 4 bytes per time unit.
A-64
Appendix A: Site Configuration Parameters
Number of '100 msec' ticks passed before declaring error <3-10> [4]:
The operating system is supposed to activate the 100 msec task every 100 msec. If it fails to
activate the task as many times as the number specified in this parameter (for example, 4 means
if the system fails to activate the task during 400 msec), an error message is sent to the Error
Logger.
This is not a fatal error. If the system fails to activate the task this means that it is experiencing
an unusual burden (in which case it is advisable to locate the origin of the problem).
Number of '1 sec' ticks passed before declaring error <2-5> [4]:
The operating system is supposed to activate the 1 sec task every 1 second. If it fails to activate
the task as many times as the number specified in this parameter (for example, 4 means if the
system fails to activate the task during 4 seconds), an error message is sent to the Error Logger.
A-65
Appendix A: Site Configuration Parameters
This is not a fatal error. If the system fails to activate the task this means that it is experiencing
an unusual burden (in which case it is advisable to locate the origin of the problem).
Number of '10 msec' ticks passed before declaring error <3-10> [5]:
The operating system is supposed to activate the 10 msec task every 10 msec. If it fails to
activate the task as many times as the number specified in this parameter (for example, 5 means
if the system fails to activate the task during 50 msec), an error message is sent to the Error
Logger.
This is not a fatal error. If the system fails to activate the task this means that it is experiencing
an unusual burden (in which case it is advisable to locate the origin of the problem).
A-66
Appendix A: Site Configuration Parameters
By DON/DOF Fail
No condition
The “By DON/DOF Fail” timer starts to decrease after its input fails.
In the example below, TMR starts to decrease only when ‘b’ gets 0.
RUNG3
b
Rung_1: JMP
TMR
b
Rung_2: DON
Rung_3: ........
If you select “No condition” the timers start to decrease immediately, without regard as to
DON/DOFF.
A-67
Appendix A: Site Configuration Parameters
For a minimum calculation period of 20, 5% accuracy is achieved. For 200, the accuracy is
0.5%.
Note: Once such a task priority enabled, the first application that actually runs the task
(ladder or C application) is the sole user of this task and no other application can run the
same task.
Database Backup
Maximum number of backup operations in queue <20-250> [20]:
The maximum number of backup operations that can be stored in the backup queue. For more
details, see “Database Backup” in the ACE3600 STS Advanced Features manual.
The Port parameters define the communications ports of the RTU site, the type of media
connection to the communication network and the devices connected to them. For each media
type, a different set of port and link parameters is available. For each media type, a default
configuration is defined which can be modified.
A-68
Appendix A: Site Configuration Parameters
To view/edit these parameters, click on a port in the site’s General or Ports tab.
The possible port configurations and port parameters are described below.
Note: Any change to the port type (i.e. parameters on the left side of the port definition, such as
Media, Connection/Operation Mode, Connection/Radio Type, Radio System, Modem), causes
all advanced physical and link layer parameters to return to their default settings.
Some of the port parameters which are already described above for ACE3600 ports are not
repeated.
IRRInet-M Port 1
The following port configurations are available for IRRInet-M Port 1.
Not Used
Means that the specific port is not used. Setting a port to Not Used frees up any resources that
might otherwise be allocated to the port.
=============================
RS232, RTU-to-RTU
For local connection to another RTU in synchronous mode, via RS232.
RS232, External Modem, Connection Mode
For connection to an external modem using the MDLC protocol. The external modem can be
full-duplex, multi-drop half duplex, MAS (Radio/Line).
RS232, External dial-up modem
For connection to an external dial-up modem using the MDLC protocol.
RS485, RTU Multi-drop, Multi-drop half duplex (Default)
For local connection between two or more RTUs in asynchronous mode, via RS485. The
external modem can be multi-drop half duplex.
RS232, PPP, NULL Modem
For MDLC over IP above PPP connection type. Suitable for direct cable connections over
PPP. A LAN-connected IP Gateway, or an RTU with an Ethernet Plug in board (EU), can
communicate directly with these RTUs over the infrastructure, if enabled by the operator. For
further details, refer to the “MDLC over IP” section in the ACE3600 STS Advanced Features
manual.
Note: The EU can be configured using the Ethernet IP Interface Configurator utility which is
available only in MOSCAD Programming ToolBox V9.54 (with MOSCAD over IP option) or
the MOSCAD-M Configurator v3.50 and above (with MOSCAD over IP option.) For more
information, see the MOSCAD Programming ToolBox User Guide/MOSCAD-M Configurator
User Guide.
RS232, PPP, iDEN Modem
For MDLC over IP above PPP connection type. For further details, refer to the “MDLC over
IP” section in the ACE3600 STS Advanced Features manual.
A-69
Appendix A: Site Configuration Parameters
• After changing a parameter, you can restore all changes to their default, by clicking the
Restore Defaults button.
For a description of any given Port 1 parameter, see the corresponding entry under the
ACE3600 ports above. The description is the same, although the default values may vary for
IRRInet-M RTUs.
IRRInet-M Port 2
The following port configurations are available for IRRInet-M Port 2. For an explanation of
the selection method and options, see Port Parameters (IRRInet-M).
Not Used
Means that the specific port is not used. This definition saves RAM memory (about 2Kb) that
can be used by the application.
RS232, RTU-to-RTU (Default)
For local connection to another RTU in synchronous mode, via RS232.
A-70
Appendix A: Site Configuration Parameters
IRRInet-M Port 3
The following port configurations are available for IRRInet-M Port 3. For an explanation of
the selection method, options, and possible combinations, see Port 1 and Port 2 above.
Not Used
Means that the specific port is not used. This definition saves RAM memory (about 2Kb) that
can be used by the application.
Radio, External radio type, max. number of repeaters, modem
DPSK 1200 bps modulation for conventional radio. For all parameters that appear italicized
above, open the drop-down list and select the corresponding value. Default is Radio,
HT/GP/PRO, with DPSK modem, 1200 bps with Auxiliary DC power level of 7.5V set in the
Advanced configuration.
Line, modem
Line communication via DPSK.
=============================
A-71
Appendix A: Site Configuration Parameters
Many of the advanced parameters for Radio/Line port configurations available for Port 3 are
identical to those available for ACE3600 radio ports. The following additional
configurations apply to Port 3 only.
Auxiliary PS level
Defines the voltage level of the main power supply, which supplies the power to the expansion
board, internal radio and the AUX power supply connector. Changing the main power supply
level changes the power supply level for all of the above accordingly. The available levels are:
5V, 7.5V, 9.5V and 12V DC. If Port 3 is set to Not Used, the main power supply level is set to
9.5V DC.
IMPORTANT: Exceeding the range may consume additional memory and may cause
unexpected or incorrect behavior in the RTU.
Parameters which appear above for the ACE3600 RTU may be repeated below.
Number of slave ‘C’ functions for session based protocol <0-255> [4]:
Number of ‘C’ language functions to be supplied by the ‘C’ application for session based
protocol. For more information, see “DCF1” in the ‘C’ Toolkit for MOSCAD Family RTUs
User Guide.
A-73
Appendix A: Site Configuration Parameters
NOTE: 10 ms functions must have short execution times in order not to adversely affect
important system functions.
Number of ‘C’ functions called by the 100 msec task <0-255> [5]:
Number of ‘C’ language functions to be supplied by the ‘C’ application to the 100 millisecond
task. For more information, see “DCF3” in the ‘C’ Toolkit for MOSCAD Family RTUs User
Guide.
A-74
Appendix A: Site Configuration Parameters
‘C’ programs require dynamic allocations. Therefore, the value of this parameter should be
determined according to the amount of memory required by the ‘C’ programs, or according to
the number of ‘C’ program blocks.
IMPORTANT: Each buffer consumes about 230 bytes of RAM (160 for User data and
70 bytes for communication slices.)
A-75
Appendix A: Site Configuration Parameters
Pressing the push-button (PB) one short press changes to the next display mode. One long
press (several seconds) lights all LEDs regardless of the display mode. When the push-button
is released, the display returns to the CPU display state. However, if the push-button is pressed
for ten seconds, the display returns to the CPU display state, even if the push-button is still
pressed.
A-76
Appendix B: Ladder Diagram Language
The ladder diagram language is the user’s means to define the functions to be performed by the
RTU. In order to define the control program, its outputs should be defined as a function of the
inputs and time.
For your convenience, the user control program is divided into several (one or more)
processes. Each process has a name (up to 256 characters) and a short description which
appears next to the process name on the Process tab.
Each process consists of functions (rungs) that may have a logical name (optional) and a short
description which appears next to the rung name. It is possible to open a window and to add a
detailed description of the function.
The optional logical name is necessary only when activating the JMP operator to that rung.
Nevertheless, assigning a logical name and a brief description to each rung is very helpful
when performing maintenance and modifications.
The first process in the Process List is always the MAIN process. This process must be defined
since it is performed by the system. In addition, the commands that activate other processes are
issued from the MAIN process by means of special operators.
The system software performs the process in cycles. All the rungs are executed sequentially in
each cycle. The time needed to perform one cycle is called “scan time”.
The words “inputs” and “outputs” are enclosed within quotation marks because these variables
are not necessarily physical inputs and outputs. They may also be “internal variables” -
variables that comprises the “output” of a rung and that may serve as an “input” in another
rung. The use of such internal variables enables the appropriate RTU to define and perform
complex monitoring and control functions.
The relationship between the “inputs” and the “output” (the function) is indicated in a
symbolic manner that expresses a relationship of logical conditions between the “inputs” and
the “outputs”. The RTU executes (computes) the logic function defined by the rung, and the
result for each “output” is either “1” or “0” where “1” means “the rung is true” and “0” means
“the rung is false”. The operation on the “output” is performed according to the result received
from the rung.
B-1
Appendix B: Ladder Diagram Language
Variables
The database, built by Database Builder as a set of tables, includes variables of various data
types. Each variable is described by a symbolic name: <Name> for a single-column table and
<Name>,<Index> for a multi-column table. The variables in the system may be of the
following data types (refer to the Appendix C Database Tables and Data Types):
• Discrete
• Integer Value, Real Value, Byte Value, Long Value
• Integer Parameter, Real Parameter, Byte Parameter, Long Parameter
• Timers (three resolutions: Hours, Minutes, and Seconds)
• Mapped Discrete, Mapped Value, Mapped Byte, Mapped Long
• Discrete Input, Discrete Output
• Value Input, Value Output
• Scaled Analog Input, Scaled Analog Output
• Time-Tagged DI
• PPH
• Index
• Integer Constant, Real Constant, Byte Constant, Long Constant
The following section describes each element variable and its relevant data types.
The rung may be perceived as an “array” of contacts (representing the states of the relevant
“inputs”) through which “current” must “flow” towards the element that represents the
operation to be performed on the “output”. When such a flow path exists, the rung is “true”
and the appropriate operation is performed on the “output”. When a rung does not include any
“input” element, it is considered true and the output operation is always performed.
B-2
Appendix B: Ladder Diagram Language
This element is used to designate an N.O. type contact element, such as a switch, a device, a
timer or an internal variable. When entered, the element name appears above the element.
When the state of the element is “0” (false, not operating), the contact is considered to be open
(not conducting current). When the state of the element is “1” (true, operating), the contact is
considered to be closed (connected, conducting current). Consider this:
SW1
——| |——
The above symbolic contact represents the state of switch SW1. When switch SW1 is actuated,
the contact representing it is “connected”, and when the switch is not actuated, the contact is in
its normal state, that is, not connected.
The data type of the variable above the N.O. element may be one of the following:
This element designates an operation performed on a two-state element (“0” – not actuated,
“1” – actuated). When the name of the controlled element is entered, it appears above the
element, as follows:
MOTOR
——( )
If the rung is “true”, the element (in the above case, MOTOR) is actuated. If the rung is
“false”, the controlled element is stopped.
The data type of the variable above the “RELAY ON” element may be one of the following:
As an example, consider the automatic operation of a heating coil, designated Heater. The coil
which is actuated when a heating control switch, designated HeatSw (heating switch), is
actuated and when a float installed in a tank designated LvlSw (water level switch), which
checks that there is water in the tank, is also actuated. The rung for performing the actuation of
the heating coil should be as follows:
B-3
Appendix B: Ladder Diagram Language
Only when both contacts are actuated the rung is “true”; “current” reaches the “relay on”
element and the heating coil is actuated. The order in which the two “input” elements appear
in the rung is not important and has no influence on its operation.
Sometimes it is necessary to condition a rung on a certain device being in OFF state. This
means that the contact which represents the device closes (conducts current) when the device
is not actuated and opens (does not conduct) when the device is actuated. This function is
achieved by the Normally-Closed Contact element.
The data type of the variable above the N.C. element may be one of the following:
1. Refer again to the actuation of the heating coil and add one more condition for its
actuation. We shall assume that a valve is installed for emptying water from the
container, and let us stipulate that the heating coil is to be actuated on condition that
this valve is closed (not actuated). We shall designate the valve by the symbolic name
Valve. The rung looks as follows:
When Valve is not actuated, i.e., the contact is closed, the rung is “true” and the
heating coil is actuated.
B-4
Appendix B: Ladder Diagram Language
PB2
PB3
A B C D E X
/ ( )
Device X is actuated when current flows through any of the branches in the rung.
The Motorola Advanced Ladder-Diagram Language enables you to define complex rungs, with
the only restriction being that the branches of the rung do not cross each other logically.
Sometimes, it is more convenient to define the logic conditions under which the controlled
device is to be stopped (instead of defining those conditions under which it is actuated). The
Relay Off element performs the opposite of the Relay On element; that is, when the rung is
“true”, the controlled device is stopped; as long as the rung is not “true”, the controlled device
is operating.
The variable above the Relay Off element may be defined as one of the following data types:
A C
( / )
If either A or B is operating, the condition of the rung is fulfilled and device C is not
operating.
B-5
Appendix B: Ladder Diagram Language
Note that if C stops when A or B is actuated, then C is actuated when both A and B stop, as
expressed in the following rung:
A B C
/ / ( )
Comparators
V1 V1 V1 V1
= ≠ > <
V2 V2 V2 V2
(input)
Sometimes it is necessary to make a function (rung) conditional on the values of variables. For
this purpose, the language includes symbols representing four different types of comparators.
When the equality or inequality described by the comparator is fulfilled, the result is a closed
“contact” (enabling the flow of current through the “contact” of the comparator). When the
equality or inequality is not fulfilled, an open “contact” results.
The data type of the V1 and V2 variables may be one of the following:
If one of the values is constant, then the second value should not be constant. If the variable is
defined as a timer, the system automatically refers to the “time-left” value (refer to Timers.)
With the comparator operator, you may use real values and integer values.
As an example of the use of comparators, refer again to the case of the heating
element and add another condition for its actuation: the temperature of the water in
the tank must be less than 95°C. Suppose that a thermometer with a continuous analog
output is installed in the tank, connected to an analog input of the RTU, and that an
integer variable designated TEMP has been defined (in the value input data type).
B-6
Appendix B: Ladder Diagram Language
“95deg” is a constant defined as equal to the value input corresponding to the analog
reading of 95°C.
The comparator compares TEMP to 95deg. Only if it is less than 95deg (and, of
course, all the other conditions are also fulfilled) is the heater actuated.
We assume, still using the example above, that instead of a constant, the temperature
is compared to the value obtained from an external potentiometer (which serves as a
sort of thermostat). If we designate the value obtained from the potentiometer with the
symbolic name Preset (in the value input data type), we get the following rung:
In some cases, it is more convenient to define separately the conditions under which an
“output” (relay or any other) is actuated, and the conditions under which that same “output” is
stopped (released), on the assumption that while the conditions for its actuation or release are
not fulfilled, the “output” remains in its last state. These two elements perform the respective
operation on the “output” when the rung is true. The symbol name of the relay output is always
entered and appears above the element. When the rung is false, it has no influence on the
“output”.
B-7
Appendix B: Ladder Diagram Language
The data type of the variable above the “RELAY LATCH” and “RELAY UNLATCH”
elements may be one of the following:
For example, refer to the turning on and off of a lighting system from five different
locations and with two push-buttons in each location, shown below.
ON 1
OFF 1
LIGHT
RTU
ON 5
OFF 5
Five pairs of ON/OFF switches are connected to the RTU, which actuates LIGHT.
The rung for performing this control function may be built in the conventional
“START-STOP” circuit form:
ON1
ON2
ON3
ON4
ON5
Each momentary pressing of one of the ON switches actuates LIGHT which then
provides “self-holding” or latching function. Each momentary pressing of one of the
OFF switches turns the lighting off.
The same control function may be performed using the ( L ) – “relay latch” and ( U )
– “relay unlatch” element:
B-8
Appendix B: Ladder Diagram Language
ON1 LIGHT
( L )
ON2
ON3
ON4
ON5
OFF1 LIGHT
( U )
OFF2
OFF3
OFF4
OFF5
The latching and unlatching operations occur only if the rung is true, therefore there is
no need for “self-holding” of LIGHT.
The advantages of these elements become apparent in complex systems where they are used in
conjunction with additional elements that are explained in the following paragraphs.
Reset
——(RST) (output)
When the conditions of the rung are fulfilled, the variable that appears above the element is
reset to zero. This variable may be of the following data types:
In the case of retentive timers, the RST operator presets the timer, i.e., it returns the timer to its
preset time so that it may be actuated again by an appropriate rung (refer to Retentive Timer).
Timers
One of the most important parts of any control system is the timer. The timer provides delays
between different processes or the activation of a certain process for a predetermined time
period.
B-9
Appendix B: Ladder Diagram Language
During database building, it is possible to define specific columns as Timers. The resolution of
the Timer is according to the selected type: Hours, Minutes, or Seconds Timer.
The Timer mode of operation is set according to its definition as an output in the Ladder
Diagram.
The Timer has an unlimited number of contacts of the “normally open” and “normally closed”
types that may be used as “inputs” to other rungs (this is done simply by writing the same
symbolic name that was used for the output operator).
When defining a Timer in the Database Builder, its “duration time” (preset value) is also
defined. The preset value may be modified in the course of control program execution through
other rungs by using any “output” element that updates the value such as MOV, or
Arithmetical Calculation operators. The new preset value is used by the Timer when next
started.
Timer1
( MOV )
NewPst
When all conditions of the rung are fulfilled, the value of the NewPst constant or variable is
used as the new preset for Timer1.
When you define constants to be used as preset values for timers, you should consider the
following:
• For Hours Timer: the HH:MM preset value (0≤ HH≤ 99, 0≤ MM≤ 59) should be defined
as 60⋅(HH) + MM, since in memory the Hours Timer counts with resolution of one minute.
• For Minutes Timer: the MM:SS preset value (0≤ MM≤ 99, 0≤ SS≤ 59) should be defined
as 60⋅(MM) + SS, since in memory the Minutes Timer counts with resolution of one
second.
• For Seconds Timer: the SS:mm preset value (0≤ SS≤ 99, 0≤ mm≤ 99) should be defined as
100⋅(SS) + mm, since in memory the Seconds Timer counts with resolution of 10
milliseconds.
• For Hours Timer and Minutes Timer you can define timers in the Time Constants table. In
this table you can define timers in the XX:XX format.
The Time Constants table (one of the Constants tables) may be used for defining hour and
minute timer constants, without the need to perform the calculations described above.
B-10
Appendix B: Ladder Diagram Language
The DON timer operates as a function of the rung’s being true or false as follows:
a) When the rung is false, the timer is in its normal state (not actuated) and all its “normally
open” type contacts are open and those of the “normally closed” type are closed
(actuated).
b) When the rung changes its state to true the timer begins to run until its preset time period
elapses. While the timer is running, the state of its contacts is as described in a. above.
c) When the preset time of the timer elapses, the timer changes its state to true and all its
contacts of the “normally open” type close while those of the “normally closed” type open.
d) As soon as the rung ceases to be true, the timer stops, returns immediately to its normal
state, and the state of its contacts is once again as described in a) above. The On Delay
Timers timing diagram is shown below.
TRUE "1"
RUNG
{ FALSE "0" e
PRESET COUNT
"TIME
LEFT" { 0
DOWN
CLOSED "1"
TIMER'S
"NORMALLY
OPEN"
CONTACT
{ OPEN "0"
ON
DELAY
The “time left” comprises the delay time left. This time is kept at the preset value as long as
the rung is false and is then counted down when the rung is true. When the time left reaches
zero the “on delay” is finished.
The following are some examples of the use of “on delay” timer.
B-11
Appendix B: Ladder Diagram Language
VLV1 Tmr1
(DON)
Tmr1 PUMP1
( )
The contact Tmr1, which is a contact of the timer of the same name, is actuated 10
seconds after VLV1 is actuated and thus turns on PUMP1.
2. The light must turn on for a predetermined period of 10 minutes as a result of the
momentary pressing of the push-button START.
START LIGHT
RTU
To explain this example, let us go back to the timing diagram given previously, and
assume that the rung which actuates the timer is constantly true and ceases to be true
for a short period of time.
TRUE "1"
RUNG
{ FALSE "0"
ON DELAY
CLOSED "1"
{
TIMER'S
"NORMALLY
OPEN"
CONTACT OPEN "0"
CLOSED "1"
TIMER'S
"NORMALLY
CLOSED"
CONTACT
{ OPEN "0"
We get a pulse of the duration of the timer’s preset time plus the time for which the
push-button was pressed (a “differentiator” may be used to cancel the influence of the
push-button on-time). The ladder-diagram for this example looks as follows:
START T
/ (DON)
T LIGHT
/ ( )
B-12
Appendix B: Ladder Diagram Language
Before explaining this example, let us first explain the concept of “scan”.
In order to execute the control program defined in the ladder-diagram, the RTU
periodically performs all functions written in the Ladder Diagram one after the other.
After a certain period of time the RTU repeats this procedure. The performance of the
Ladder Diagram functions is called “scan” and the time between two scans is called
“scan time”.
Let us further assume that each time CLOCK is true, a lamp, designated LIGHT, is
latched. The lamp is turned off by an OFF condition external to the system.
LIGHT
RTU
OFF
CLOCK LAMP
( L )
OFF LAMP
( U )
CLOCK CLOCK
/ (DON)
CLOCK is a timer with a preset time of 04:00 seconds. The special rung in which the
timer is actuated (on condition that it is not true) provides a pulse, shown below.
1 scan
CLOSED "1"
{
TIMER'S
"NORMALLY
OPEN"
CONTACT OPEN "0"
ON DELAY
In this example, the rung with the DON output must be located after the rungs using
the timer contacts, since during that scan in which the timer concludes the countdown
of the delay (the delay is over), it again presets itself.
B-13
Appendix B: Ladder Diagram Language
The operation of this timer is similar to that of the “on delay” timer, except that the delay starts
with the transition of the rung to the state of OFF (“0”) instead of the transition to ON (“1”).
TRUE "1"
RUNG
{ FALSE "0"
PRESET COUNT
"TIME
LEFT" { 0
DOWN
The DOF Timer may be set to any one of the three resolutions: hours, minutes, or seconds.
The DOF Timer can generate a positive pulse with a duration that is equal to the Timer delay
if it receives TRIG (TRUE) for one SCAN. The appropriate rungs are described below.
TRIG PULSE
( DOF )
PULSE
1 scan
"1"
TRIG
"0"
OFF DELAY
PULSE
TIMER
As an example let us assume that a delay is necessary between the two outputs A and
B. Output B should start five seconds after output A has started and stops 20 seconds
after output A has stopped.
B-14
Appendix B: Ladder Diagram Language
A
5 sec 20 sec
A T1
(DON)
T1 T2
(DOF)
T2
( B )
The two delays are added “in series”, one influencing the upward transition and the
other – the downward transition. In this example the order in which the rungs are
written is irrelevant and DOF can precede DON.
Retentive Timer
——(TRT) (output)
RST
TRUE "1"
RUNG
{ FALSE "0"
PRESET
a) As long as the rung is true (“1”) the timer counts down from its preset time.
b) When the rung ceases to be true, the time left is “frozen”, i.e., the timer stops counting but
remains at the point in the countdown that it reached while the rung was true.
B-15
Appendix B: Ladder Diagram Language
c) When the rung again becomes true, the timer resumes its countdown from the “frozen”
point.
d) When the time left is zero, all the “normally-open” contacts of the timer close, while all
the “normally-closed” contacts open.
e) The retentive timer remains in this state until preset again by an RST output operator
having the same symbolic name as the timer.
The main application of the retentive timer is for accumulating the operating time of a certain
installation or device, and supplying an indication that a certain predetermined operation
period has come to an end. This indication may merely serve as a warning to the operator of
the system, or may automatically start another operation.
In cases where more than 99 hours must be counted, this may be done by combining a counter
and a retentive timer.
MOTOR
(Conditions for actuating the motor) ( )
MOTOR MotrHr
( TRT )
MotrHr L1
( )
SW1 MotrHr
( RST )
B-16
Appendix B: Ladder Diagram Language
may take longer than the actuating pulse itself. In addition, the motor should not react
to a further pressing of the switch within less than four seconds.
STEP
RTU StpMtr
"1"
STEP
"0"
"1"
"0"
A convenient way for performing this task is to identify the start of the pressing of the
switch by a “differentiating operation” performed by the positive differentiator
operator.
The differentiator is located on the branches of the rung as are the input operators.
The task of the positive differentiator is to identify and conduct current for the
duration of one scan when all the contacts along the branch, which includes the
differentiator (from its beginning to the location of the positive differentiator), have
changed state from open to closed.
The task of the negative differentiator is to identify and conduct current for the
duration of one scan when the contacts from the beginning of that branch to the
location of the negative differentiator stop being true.
In order to execute the task set in the example, two “off delay” timers must be used
(refer to Timers above): one of 0.5 second for actuating the stepping motor; the other
of 4 seconds for preventing an additional actuation. Both timers are actuated by the
pressing of the switch (the 0.5-second timer actuates the 4-second timer).
It should be noted that the differentiator in the first rung identifies the point in time at
which the switch STEP is pressed and timer T4S is not actuated. If STEP is pressed
before the timer has completed its countdown, the differentiator “waits” for the timer
(on condition that STEP is still pressed).
B-17
Appendix B: Ladder Diagram Language
TO.5S T4S
( DOF )
TO.5S StpMtr
( )
STEP
1 scan
DIF
StpMtr
(T0.5S) 0.5 sec.
T4S 4 sec.
The following are examples illustrating the influence of the differentiators in a more
complex rung.
A B RELAY
↑ ( L )
C
Relay ( L ) is executed every time that the function (A⋅B)+C becomes true. In this
case, the differentiator influences the entire rung, from its beginning.
E F RELAY
( U )
G H
↑
In the last rung, RELAY is unlatched when E is true in addition to one or both of the
following conditions: F is true or a COS (Change of State) from 0 to 1 in G and (H or
K).
B-18
Appendix B: Ladder Diagram Language
If the rung with the CTU or CTD operator is true, then the variable above the operator is
incremented in the case of the CTU operator, or decreased in the case of the CTD operator.
If the rung is true and its condition continues for more than one scan and only one count is
required, a differentiator must be included in the rung, to ensure that the output operator is
activated only once.
The CTU and CTD operators may be used with the following data types:
• Index
• Integer Value, Byte Value, Long Value
• Value Output
• Timers (Hour, Minute, Second)
• Integer Parameter, Byte Parameter, Long Parameter
You can apply the CTU and CTD operators to a Real variable by using—[+ ] or —[- ]
where the added/subtracted value is 1.
1. For a packing machine: when “n” products have been packed into a case, the
conveyor belt on which the cases are located should move forward to position the next
case to be filled. For each product placed into a case, a contact closes at an input
designated LOAD. The conveyor belt is advanced via an output designated STEP,
which should be actuated for one second.
LOAD COUNTR
↑ ( CTU )
COUNTR PlslSc
> ( DOF )
M
PlslSc COUNTR
( RST )
STEP
( )
Where M = n – 1.
The COUNTR variable (of value data type) counts the cases. When COUNTR≥n a
DOF Timer (Off Delay Timer; see Timers), named Pls1Sc, is activated with a preset
time of 1 second. This timer activates the STEP output and resets the COUNTR
variable.
2. For a tank or reservoir that is filled through two pipes: each pipe is equipped with
an output that emits a pulse for every liter of liquid passed into the tank. The tank also
has an outlet pipe equipped with the same kind of output, which emits a pulse for
B-19
Appendix B: Ladder Diagram Language
every liter of liquid emptied from the tank. It is required to set up a counter to indicate
the exact quantity of liquid in the tank at any given time. Note that the pulses from the
various pipes may appear simultaneously.
Since the value, designated TOTAL, is incremented with every liter of liquid going
into the tank, and decreased with every liter of liquid going out of it, its value is
always equal to the exact quantity of liquid in the tank at any given time.
IN1 TOTAL
↑ ( CTU )
IN2 TOTAL
↑ ( CTU )
OUT1 TOTAL
↑ ( CTD )
Jump
——(JMP) (output)
The JMP operator is the only operator that affects the sequential order of the rungs
performance. When the JMP operator is activated, the program “jumps” to the rung whose
name is specified above the operator.
The jump forward is used to skip several rungs that should not be performed if the rung with
the JMP operator is true. For example, if FLAG is true, the program jumps to the rung named
NEXT.
FLAG NEXT
( JMP )
( )
( )
( )
Using the JMP operator reduces the necessary memory space since the alternative to the JMP
operator is to insert a N.C. element (on the FLAG variable) in each rung to be skipped when
FLAG is true. It also reduces the time performance since some rungs are skipped.
The jump backward is usually used when performing a loop with an index.
The JMP operator should be used only for skipping rungs within the process and not between
processes.
When using the JMP operator, it is not possible to add other output elements in the same rung.
B-20
Appendix B: Ladder Diagram Language
Scan
——(SCN) (output)
The SCN operator is used for reading data from physical input modules to update a table
column defined as Discrete Input, Value Input, PPH, or Scaled AI, and for writing data from a
Discrete Output, Value Output, or Scaled AO column to the physical output modules. The
SCAN operator is also used for updating the Mapped Discrete or Mapped Value columns. The
column name above the operator indicates to the system if inputs are to be scanned or outputs
to be updated. In addition, the SCAN is used to get data from an external PLC using the Third
Party protocols (refer to the ACE3600 STS Third Party Protocols Support manual).
Using this operator, the user can control the refresh rate for all types of variables. Important
data should be scanned at a high rate, while other data can be scanned at a low rate.
Name: Pumps
0
1
.
.
n
This table includes n+1 rows for n pumps and the following columns (variables):
• Flow – a Value Input variable that specifies the flow for each pump.
• Presur – a Value Input variable that specifies the pressure of each pump.
• Control – a Discrete Output variable used a control for the pump operation.
The table includes other internal variables and parameters, not shown in the table.
The variables of this table are used by an algorithm to compute the Contrl output as a
function of the Flow, Presur, Fail, and other variables. Before performing the
algorithm, the actual values of these variables should be read (by using the SCAN
operator) from the appropriate physical inputs of the I/O modules into the table
columns.
Once the algorithm has been performed, the calculated values of the Contrl column
should be sent (by using the SCAN operator) to the appropriate physical outputs of
the I/O modules.
B-21
Appendix B: Ladder Diagram Language
MOV is an output operator; when the conditions of the rung are fulfilled, the value below the
operator (A) is stored in the B variable, specified above the operator.
B
( MOV )
A
• Integer Value
• Real Value, Byte Value (MOV only)
• Integer Parameter, Real Parameter, Byte Parameter
• Long Value, Long Parameter (MOV only)
• Value Input, Value Output
• Integer Constant, Byte Constant
• Real Constant, Long Constant (MOV only),
• PPH
• Index
• Scaled AI, Scaled AO
• Mapped Value
• Mapped Long, Mapped Byte (MOV only)
• Discrete, Mapped Discrete
• IP Address, IP Address Parameter (MOV only)
The MOV operator may also be used to transfer eight bits (starting with a byte boundary) of
discrete variables to the low byte of an integer variable.
A
( MOV )
b1
B-22
Appendix B: Ladder Diagram Language
In this rung the MOV operator takes a series of eight consecutive bits (starting with b1) from a
single-column table and inserts it to the low byte of A (the high byte of A is not influenced).
The following diagram describes the bits arrangement in the integer variable. Note that the
first bit (b1) is inserted into a7.
a15 a8 a7 a0
HIGH BYTE LOW BYTE
b1
b2
b3
b4
b5
b6
b7
b8
• Integer Value
• Value Output
• Integer Parameter
The MOV operator may also be used to transfer the low byte of an integer variable to eight
consecutive bits, starting with a byte boundary. The following rung transfers the low byte of A
to eight consecutive bits of a single-column, starting with the bit named b1.
b1
( MOV )
A
B-23
Appendix B: Ladder Diagram Language
a15 a8 a7 a0
HIGH BYTE LOW BYTE
b1
b2
b3
b4
b5
b6
b7
b8
• Integer Value
• Integer Parameter
• Value Input, Value Output
• Mapped Value
• Constant
• Index
• Discrete
• Discrete Output
The MOVH operator is used to transfer eight bits of discrete variables to the high byte of an
integer variable.
A
( MOVH )
b1
This operator takes a series of eight consecutive bits (starting from b1) from a single-column
table and inserts it to the high byte of A (the low byte of A is not influenced).
The following diagram describes the bits arrangement in the integer variable. Note that the
first bit of the byte (b1) is inserted into a15.
B-24
Appendix B: Ladder Diagram Language
a15 a8 a7 a0
HIGH BYTE LOW BYTE
b1
b2
b3
b4
b5
b6
b7
b8
The MOVH operator may also be used to transfer the high byte of an integer variable to eight
bits.
b1
( MOVH )
A
B-25
Appendix B: Ladder Diagram Language
a15 a8 a7 a0
HIGH BYTE LOW BYTE
b1
b2
b3
b4
b5
b6
b7
b8
• Integer Value
• Integer Parameter
• Value Input, Value Output
• Mapped Value
• Constant
• Index
• Discrete
• Mapped Discrete
• Discrete Output
Sometimes it is necessary to hold groups of discrete variables as values for storing and
communication purposes. When it is necessary to perform an operation on these values, they
should be transferred to a column of single bits (having a name for each bit). At the end of the
operation, the result is returned to the value variable form.
The Packed column of the following multi-column table includes 100 packed groups of bits
(16 bits in each packed group are represented as a value).
0
1
.
.
99
B-26
Appendix B: Ladder Diagram Language
The single-column table of discrete data type, named Unpacked Bits (below), includes 16
specific names for each one of the bits in the Packed value. In this example we refer to the bits
as Bit15, Bit14, etc. In a real system, we refer to the bits in meaningful names such as, Status,
Fail, Alarm, Contrl, etc. The order of the bits is from Bit15 to Bit0 to fit the MOV operator.
PACKED, I
b15 b8 b7 b0
HIGH BYTE LOW BYTE
Unpacked
bits
Bit15
:
: MOVH
:
:
Bit8
Bit7
:
: MOV
:
:
Bit0
The following rungs perform a loop with index over all 100 values in the Packed column. All
values are moved, each at a time, into the Unpacked Bits table. The algorithm is performed on
the bits and the result is returned to the Packed table; the index is advanced to the next row.
The dashed rungs perform the algorithm on the unpacked bits. The algorithm does not include
an index since the same algorithm is applied on all groups.
Bit15 is the first bit of the high byte and Bit7 is the first bit of the low byte.
B-27
Appendix B: Ladder Diagram Language
I
(RST)
Temp
P_Loop (MOV)
Packed,I
Bit15
(MOVH)
Temp
Bit7
(MOV)
Packed,I
( )
algorithm ( )
rungs
( )
( )
Temp
(MOVH)
Bit15
Temp
(MOV)
Bit7
Packed,I
(MOV)
Temp
I
(CTU)
I P_Loop
< (JMP)
LstPac
I
=
LstPac
A BitCol,0
( MOV ) ( MOV )
BitCol,0 A
A BitCol,0
( MOVH ) ( MOVH )
BitCol,0 A
BitCol is the name of the bits column of a multi-column table. Note that in this case, the
number 0 is not an index, but the byte number (8 bits). BitCol,0 is the first byte, BitCol,1 is the
second byte, and so on.
The data types for these four cases are as specified above.
B-28
Appendix B: Ladder Diagram Language
Arithmetical Calculations
C C C C
+A -A *A / A
B B B B
C=A+B C=A-B C=AxB C=A/B
(output)
Arithmetical calculations are always used in the rung as output operators. When the conditions
in the rung are fulfilled (the rung is true), the calculation is performed and its result is stored in
C (A and B are not affected).
The A and B “inputs” to the operator may be of the following data types:
• Integer Value
• Integer Parameter
• Mapped Value
• Value Input, Value Output
• Index
• Real Value
• Real Parameter
• Scaled AI, Scaled AO
• Byte Value
• Byte Parameter
• Long Value
• Long Parameter
• Real Constant
• Integer Constant
• Byte Constant
• Long Constant
• Integer Value
• Integer Parameter
• Value Output
• Index
• Real Value
• Real Parameter
• Byte Value
• Byte Parameter
• Long Value
• Long Parameter
• Scaled AO
• PPH
B-29
Appendix B: Ladder Diagram Language
In arithmetical calculations you cannot, normally, mix real values and integer values.
However, to mix real values and integers, you can move the integers to temporary Real-type
variables and perform the operations you want.
When defining the control program, it must be taken into consideration that the arithmetical
calculations (in particular multiplication and division) use considerable scan time, and
therefore should be performed only when strictly necessary, and not with every scan.
The calculation is performed only when the rung is true. If the calculation is to be performed
only once, the positive differentiator must be inserted in front of the calculation symbol.
For example, the variable X must be divided once every second by the variable Y and the
result applied to an analog output (digital-to-analog conversion) connected to a meter that
indicates a value designated RATIO.
T1Sec RATIO
/X
Y
T1Sec T1Sec
/ ( DON )
T1Sec is true for the duration of one scan once every second. Therefore, the calculation is
performed every second.
The AND, OR, and XOR operators perform (when the rung is true) a (Boolean) logic bitwise
operation on two variables (designated A and B in the elements above), and the result is stored
in the variable designated C (A and B are not affected).
The A and B inputs to the operator may be of the following data types:
B-30
Appendix B: Ladder Diagram Language
• Integer Constant
• Index
• Timers (hour, minute, second)
Calc
The CALC function enables you to write arithmetic expressions as you would on paper.
The system software then calculates the expression according to common mathematical rules,
(for example: x+y*z is considered as x+(y*z)) and the result is stored in the output operator.
B-31
Appendix B: Ladder Diagram Language
All the binary operators require two parameters of the same type, integer value or real value.
If one parameter is an integer value and the other is a real value, the integer is cast to real.
The only exception to this rule, is the power (^) operation which always converts the operands
to real value data type.
• Balanced parenthesis.
Before using the CALC function for your computations, please note the following restrictions.
1. Do not use bit variables, neither in the expression nor in the result.
2. Do not use a real value operand in a logic operator, either as a symbol, or as a partial
expression result.
5. Use the Neg function to label a negative number. Do not use the minus (-) symbol for this
purpose.
6. Do not use variable names which are identical with the functions’ names (for example: Sin
and Cos), since they will be considered as functions.
7. Do not include operator characters into the symbols names (for example: ‘n1+n2’ or
‘n3/’), since the characters will be considered as operators.
8. The user is responsible for the function’s parameters legality. No warning appears if a
function receives a parameter with an illegal value. Examples of illegal values include:
Log(0), Log2(0), Log10(0), Sqrt(y) where y is a negative number, ASin(x) where x<=1
and x>= -1, ACos(x) where x<=1 and x>= -1, Tan(p/2+n*p) where n is an integer.
10. The system software does not check the overflow during computation. The overflow is
checked while placing the expression result into the result symbol.
The ladder controlled ClcStt value is included in the Reserved Values table (System Tables).
When an overflow occurs, ClcStt is set to ‘1’ and it is the user responsibility to reset it.
B-32
Appendix B: Ladder Diagram Language
Let x1=1, x2=2 and y1=2 where x1, x2 are of integer value data type and y1 is real
value.
The two rungs below provide different results for the same expression, due to the
different selected data types.
1.
Result
(CALC)
Edit Calculation
x1+x1/x2
2.
Result
(CALC)
Edit Calculation
x1+x1/y1
As mentioned earlier, it is very convenient to divide the control program into processes
according to different subjects. Each process should handle one table or a few tables. One way
(see also Run Process) to activate a process is to call it as a “subroutine” by using the JSP
output element, as follows:
<Process Name>
( JSP )
B-33
Appendix B: Ladder Diagram Language
When all conditions of the rung ending with the JSP operator, are fulfilled, the system “jumps”
to perform the process, specified above the JSP operator, as a subprocess. It is also possible to
call another subprocess from that subprocess (subprocess nesting).
The performance of the subprocess stops when one of the following occurs:
When the program returns to the original process (from which the subprocess has been called),
it continues by performing the rung following the rung with the JSP operator.
For example, refer to the following table that consists of n+1 rows (n+1 devices) and
eight values (columns) for each device (A to H).
Ind A B C D E F G H
0
1
.
.
n
H,I = H(I) = f(A,B,C,D,E,F,I). The process includes the necessary rungs to compute H
for a specific row i.e., the index I is set and then the subprocess is called to compute
H. Note that the “calling” process defines the row while the “called” subprocess
performs the computation as a separate algorithm.
Suppose that the DEVICE variable indicates the row number and I is defined in the
Index table. The appropriate rungs for calling the FindH subprocess are:
I
(MOVE)
part of Main DEVICE
process or any
other process FindH
(JSP)
B-34
Appendix B: Ladder Diagram Language
( )
:
( )
E
< (RET)
D
:
:
last rung ( )
The FindH process returns to the Main process if the last rung is performed or the
algorithm has found that E < D.
It is not necessary to use the RET operator in the last rung of a subprocess. Use this operator
in a specific rung (not the last one) when you condition the return to the calling process.
When JSP or RET is used in a rung as an output operator, it is not possible to add other output
operators to that rung.
Send
——(SEND) (output)
The SEND operator enables you to send a free-format message to the ports defined as User
Ports (controlled by the Ladder Diagram). The User Ports may be used to connect a computer,
printer, or any other device that requires serial communication.
For a detailed description of this operator, see Appendix D: User Defined Local Ports.
LSL: When the rung is true, a logical shift is performed on the variable (A), specified above
the operator, n times (1 to 15) to the left. ‘0’ are inserted to the shifted least significant bits.
For example, if LSL is executed with n=4 on A=01011000 10101101, the result is:
A=10001010 11010000.
B-35
Appendix B: Ladder Diagram Language
a15 a0
A
( LSL )
n
a15 a0
A
( LSR )
n
ASL/ASR: Arithmetical shift to the left/right of the integer variable A, n times (1 to 15). In the
arithmetical shift the sign bit (bit 15) of the value does not change when the shift occurs.
a15 a0
± 0
A
( ASL )
n
a15 a0
A
( ASR )
n
B-36
Appendix B: Ladder Diagram Language
For example, if ASR is executed with n=2 on A=01110101 10111001, the result is
A=00011101 01101110.
Note that using ASL is multiplying by 2n and using ASR is dividing by 2n. It is more efficient
(less time consumption) to use the ASL or ASR operators to multiply/divide by 2, 4, 8, etc.
Rotate to Left/Right
——(ROL) ——(ROR) (output)
ROL: When the rung is true, the bits of the A integer are shifted n times to the left. For every
shift the bit in a15 is inserted in a0. Note that the rotated bits are “wrapped around” (in
comparison to the shift operators).
A
( ROL )
n
a15 a0
A
( ROR )
n
Call
——(CAL) (output)
The CAL function allows “calling” various functions that receive and return variables through
the various tables in the system tables.
When the CAL operator is selected, a choice list of all available functions is displayed. You
should select the required function by using the arrow keys and pressing [Enter].
B-37
Appendix B: Ladder Diagram Language
GetChr, GetDgt These functions are used to read characters or digits from the
User Port. For further information refer to Appendix D: User
Defined Local Ports.
Ready This function controls the Data Terminal Ready (DTR) and
switches it from ‘off” to ‘automatic’. If the input buffers are
clear, the Data Terminal Ready is ‘on’, otherwise it is ‘off’.
NotRdy This function switches the Data Terminal Ready (DTR) from
‘automatic’ to ‘off’.
SndFrm, AnsFrm, Refer to Appendix E: User Defined MDLC Communication.
RcvFrm, TxFrm
B-38
Appendix B: Ladder Diagram Language
Following are two examples illustrating full system synchronization, and the
synchronization of all the units with Radio1 connected to one port (link
ID=RADIO1), as illustrated in the site table below:
Sync
( CALL )
AllSYS
Sync
( CALL )
Rad1
Run Process
——(RNP) (output)
The RTU is based on a multi-tasking operating system. From all tasks that support the system,
five tasks may be used by the user processes written in ladder diagram language. These five
B-39
Appendix B: Ladder Diagram Language
tasks run under five different priorities, as follows (high priority is the highest priority and
TskPrD - the lowest one):
One of many advantages of dividing the user application into processes is the capability to run
them under different priority tasks. The MAIN process is automatically run by the system
under the High priority task.
It is possible, but not always efficient, to call all the processes by the JSP operator as
subroutines of the MAIN process. Since all processes have the same priority, the Scan Time is
very long (all processes have to be executed).
Usually, some of the processes are executed more often than others. Therefore, if some of the
processes run under lower task priority, the MAIN process and the processes connected to it
by the JSP operator run at a faster speed.
In a multi-tasking system the MAIN process may perform a few cycles while another process
that runs under a lower priority task performs only one cycle.
RUNNING
TskPrA
SUSPENDED
To run a process under a specific task, you should use the RUNP operator in the following
manner:
<Process Name>
( RNP )
TskPr(x)
When the rung is true, the process appearing above the operator, is run under the task specified
below the operator. Before running the process, you should ensure that this task is not busy.
For this purpose, the system provides four task priority flags in the Reserved Flags table (one
of the System tables), named TskPrA, TskPrB, TskPrC, and TskPrD.
When a task is busy, its corresponding flag is ‘1’. Therefore, one of the conditions of the rung
that includes the RUNP operator is that the relevant task flag is ‘0’.
B-40
Appendix B: Ladder Diagram Language
It is very important not to run a task continuously because it will be impossible to run tasks
that have lower priority, including the system tasks. Thus, you should condition the RUNP
operator on a timer that defines the cycle time.
The following rungs run a process called EXEC under TskPrA. The conditions are that the
task is not busy (TskPrA=0) and the DOF Timer has completed its delay.
TEMP EXEC
( RNP )
TskPrA
TEMP CYCLE
( DOF )
1 scan
"1
"
RNP
0
task is running
TskPrA
timer delay
CYCLE
DELAY
OFF
If the timer delay is too short, then TskPrA runs continuously and lower priority tasks are not
handled.
The BCD operator refers to the value of the variable below the operator as a number in binary
format and converts it to a number in BCD format. The converted number is assigned to the
variable above the operator.
The BIN operator refers to the value of the variable below the operator as a number in BCD
format and converts it to a number in binary format. The new number is assigned to the
variable above the operator.
B-41
Appendix B: Ladder Diagram Language
• Integer Value
• Value Input
• Integer Constant
• Integer Parameter
• Index
• Mapped Value
• Timers (hour, minute, second)
• Integer Value
• Value Output
• Integer Parameter
Copy Columns
C Dest
P Src
Y Count
(output)
The CPY operator allows you to copy columns of any data type to any other data type. The
number of bytes to be copied is specified by the Count variable.
The Dest variable may be any variable of a single-column table or any column of a multiple-
column table. This variable may be of any data type, except index.
The Src variable may be any variable of a single-column table or any column of a multiple-
column table. This variable may be of any data type.
The Count variable, that specifies the number of bytes to be copied, may be any variable of a
single-column table or a specific variable of a multiple-column table. This variable may be of
the following data types:
• Integer Value
• Index
• Integer Parameter
• Integer Constant
C Tx_Buf,0
P Presur
Y Length
B-42
Appendix B: Ladder Diagram Language
Length
( MOVE )
#16
C B,0
P V,0
Y Length
#16 is a constant defined in a Constants table. Its value is 16 (16 bytes*8=128 bits).
During the copy operation, the RTU checks that the number of bytes to be copied is not greater
than the size of the Dest column. If the number of bytes is greater than the size of the Dest
column, the copy operation is not performed and an appropriate message is sent to the Error
Logger.
The UCL operator together with the ‘C’ Toolkit allows you to program the application using
‘C’ blocks. Refer to the ‘C’ Toolkit for ACE3600 RTUs User Guide.
Trigger Enable/Disable
T Proc T Proc
E Trig D Trig
N P1 S P1
(output)
The TEN operator enables a trigger (such as a pushbutton or DI) which activates the
associated fast process at the highest priority. The TDS operator disables the enabled trigger.
For more information on fast events, see the ACE3600 STS Advanced Features manual.
B-43
Appendix B: Ladder Diagram Language
Input Elements
—| |— Normally Open (N.O.) Contact
—| = |— Comparator Equal to
Output Elements
—( ) Relay On Contact
—( L ) Relay Latch
—( U ) Relay Unlatch
—(RST) Reset
B-44
Appendix B: Ladder Diagram Language
—(JMP) Jump
You can also add a comment to a rung using the Comment operator.
1
For secured systems only.
B-45
Appendix C: Database Tables and Data
Types
This chapter describes the ACE3600 database system and constant tables, including examples,
and the data types used. The order of description is according to the system tables list. The
constant tables are described with the relevant system table.
The ACE3600 RTU database is the collection of all local variables such as inputs, outputs,
calculated values, parameters, and those variables received via the communication link. It is
comprised of up to 127 user-oriented tables employing user-defined symbolic names.
The Application Programmer includes a powerful, yet simple table editor, called Database
Builder, which makes database definition and modification a “snap”.
Defining the database as a set of structured tables provides the following advantages:
• The same tables are used during automatic creation of the central database.
• The same tables are used during symbolic run-time monitoring of the database.
• Adding/deleting devices is done by modifying the number of rows in the specific table
(table’s last index). The process is automatically adjusted to the new number of devices.
• Since tables are known to the central, communication between central and RTUs is
transparent to the RTU process (no process has to be written for handling the
communication).
• Any portion of any table can be downloaded from or uploaded to the central.
• Qualification formulas may be used as filters at the transmitting site, to reduce the amount
of transmitted data.
For a more detailed description of the database and information names, types and values, refer
to the ‘C’ Toolkit for MOSCAD Family RTUs manual.
C-1
Appendix C: Database Tables and Data Types
The database includes a system table for the digital inputs on the ACE1000 main board and a
system table for the digital outputs on the ACE1000 main board.
The database includes a user table for General purpose bits (250 rows, 8 columns, each cell is
1 byte that reflects the value of a single bit), a table for General purpose values/user values
(250 rows, 8 columns, each cell is 2 bytes), and a table for General purpose float values (250
rows, 4 columns, each cell is 4 bytes). All user values, regardless of their type, are accessed
discretely.
Using the STS Monitor utility, the user can view and modify the contents of the user tables,
view the contents of the I/O tables, and operate the digital outputs. For more information, see
the “Monitoring an STS Table (MOSCAD-M and IRRInet-M)” section of the “Operation”
chapter of this manual.
Table Types
The ACE3600 database includes two types of tables:
• Single-column tables
• Multiple-column tables
Single-Column Table
Single-column tables hold global RTU variables. All variables in the table (column) are of the
same data type. Each entry in this table is assigned a unique symbolic name. The data type of
the table appears in the Columns section below the table name and table symbol.
For every row in the table there is an associated Change of State (COS) flag. This flag is used
for communication with qualifiers. You may define a name for this flag (in the COS Name
box) to be used in the process (ladder diagram rungs).
C-2
Appendix C: Database Tables and Data Types
Multiple-Column Table
Multiple-column tables hold symbolic structured data. Each table represents a group of 1 to
250 similar devices (e.g. pumps, reservoirs, transformers, etc.).
A row (record) in the table represents a single device, and a column a value which is common
to all devices. Each column has a unique symbolic name.
Each variable in the table has a unique logical name: <column name>, <row (device) index>.
The above table contains 5 rows (for 5 pumps) and one of the columns is called “Flow”. Here,
“Flow,0” defines the flow of the first pump, and “Flow,4” – the flow of the fifth pump. In
other words, “Flow,x” defines the flow of pump x, where x is the pump index. In each column,
the column data type appears below the column name.
For every row in the table there is an associated COS flag. This flag is used for communication
with qualifiers. You may define a name for this flag (in the COS Name field) to be used in the
process (ladder diagram rungs).
The Last Index (last device) is given a free name by the user (LstPmp in the above example; it
is seen when the table is scrolled). This name is used in the process to indicate the last device
in the table. The process is automatically adjusted to the actual number of devices (rows) when
it is changed by the user.
Duplicated Columns
The system enables you to define columns that are windows to other columns in different
tables. These are called duplicated columns. This feature is designed to build a table that
serves as a report to the central. This table may include various columns that have been
defined in different tables.
This feature may also be helpful during debugging. You may define a table of duplicated
columns (windows) to view simultaneously specific values, located in different tables.
When using the duplicate column operation, the original column is not duplicated in the
database; the duplicated column only holds a “pointer” to the original column.
C-3
Appendix C: Database Tables and Data Types
A single-column table holds single variables, while a multiple-column table is designed to hold
N devices (rows) that have the same structure.
A multiple-column table allows you to write an algorithm for a single row (device) and to
apply it to all the rows (devices) using an index. In a single-column table it is not possible and
not necessary to use an index.
Table Groups
The tables in the system are arranged in three groups:
• User tables
• System tables
• Constants tables
User Tables
User tables are defined according to application requirements. Up to 127 user tables may be
defined.
The first table in this group is already defined as a single-column table called Qualifiers. The
variables in this table may be named by the user. The Qualifiers table can be used to set
special qualifiers (fields and/or subgroups of variables) that affect the process in another site,
in RTU-to-RTU communication, or to set qualifiers that will identify and respond to a
broadcast sent by the central (refer to Appendix E: User Defined MDLC Communication).
A special PID user table can be added for the PID LOOP - Proportional Integral Derivative
feature. For more information, see the ACE3600 STS Advanced Features manual.
A special user table can be added for the Database Backup feature. For more information, see
the ACE3600 STS Advanced Features manual and the “Backing up the Database” section of
the “Application Programmer” chapter.
System Tables
The system tables are pre-defined tables, designed to hold communications buffers, index
pointers, time and date variables, and other system-related variables. While the user tables and
some constant tables may be modified by the user to meet specific needs, the system tables
may not be modified. The following figure shows the system tables.
C-4
Appendix C: Database Tables and Data Types
The system tables include reserved variables that may be used as symbolic names during
process programming.
Constant Tables
The user may use symbolic constants (instead of their numeric value) during process (ladder)
editing. For example, if a limit for a process is 100, a symbolic name such as LIMIT 1 is used
in the process instead of the value.
Some of the constants tables are pre-defined, including constants such as, ASCII characters,
port names, modes and protocols, etc. These tables are described later in this chapter.
Two tables in this group (Event Definitions 1 and 2) are provided for event definitions (up to
500 events) via symbolic names. The event names should be defined in these tables. These
events become automatically known to the control center during the creation of the central
database.
Symbolic constants that appear in the tables but are not used in the process (Ladder Diagram)
do not consume any memory space.
C-5
Appendix C: Database Tables and Data Types
C-6
Appendix C: Database Tables and Data Types
Tables Descriptions
The following is a description of the pre-defined tables.
For further details about RTU-to-RTU configuration, refer to Appendix E: User Defined
MDLC Communication.
To facilitate the use of the Time & Date table, the system provides constant tables to be used
in the ladder application.
There is an appropriate constants table for each variable in the Time & Date table (except for
the Seconds variable). The user may define constants to be used with the Seconds variable.
These constants should be in the range of 00 to 59.
C-7
Appendix C: Database Tables and Data Types
Year variable: the Years table includes symbolic names for the years (starting from 1991).
The user may add constants to this table and also modify the names of the existing constants.
Month variable: the Months variable includes the names of the months of the year. This table
is protected and is not editable.
C-8
Appendix C: Database Tables and Data Types
C-9
Appendix C: Database Tables and Data Types
Date variable: the Dates table includes all possible dates - from the 1st of the month up to the
31st. This table is also protected and is not editable.
Day variable: the Days table includes the days of the week. This table is also protected and is
not editable.
C-10
Appendix C: Database Tables and Data Types
Time variable: the Time constants table allows you to define constants with values in the 24-
hour format Hr:Mn (Hr varies between 0 and 23, and Mn varies between 0 and 59).
1) The following rung activates the DyStrt process at a specific hour, defined as
SrtTim.
Time DyStrt
= ↑ ( JSP )
StrTim
Note that the differentiator causes a single access to the DyStrt process at the
beginning of the minute defined by the StrTim variable.
2) The following rung performs the same operation five days a week (Saturday and
Sunday are not included).
C-11
Appendix C: Database Tables and Data Types
3) The following rung performs the MnStrt process once, on the first of the month. In
the same way it is possible to make process performance conditional on a month
and/or year.
DATE MnStrt
= ↑ ( JSP )
1'st
Index Table
This system table (which may be edited) allows the user to define the necessary indices for
writing programs. It is recommended to define indices with one-character symbolic names
(such as I, J, K) for creating symbolic names for variables. An example of a variable name
field with index in the Ladder Diagram is SYMBOL,x.
One of the advantages of building the database in multiple column tables (in which each row
represents a controlled device) is that it provides the possibility to define one algorithm for
one device and to run this algorithm by an “index” on all the devices. The index is actually a
variable pointer to the table rows. For this purpose, the system provides an index data type. To
define indices, use the Index table (one of the system tables). Each variable defined in this
table is an index.
C-12
Appendix C: Database Tables and Data Types
• ENABLE – a bit variable that specifies whether the air conditioner in a specific
section should be activated or not.
• TEMP – a value input variable that is the temperature reading from a specific
section.
• LowLmt – a parameter that defines the temperature lower limit for a specific
section.
• HiLmt – a parameter that defines the temperature upper limit for a specific
section.
The LstFan variable (defined by the user) indicates the number of the last fan, in this
case 49. The following rungs activate all 50 fans; I is the index, defined in the Index
table.
TEMP
(1) ( SCAN )
I
(2) ( RST )
ENABLE,I FAN,I
(4) / (U)
TEMP,I
>
LowLmt,I
I
(5) ( CTU )
I FnLoop
(6) < ( JMP )
LstFan
I
=
LstFan
FAN
(7) ( SCAN )
Before performing the algorithm, the 50 temperatures (complete column) are read by
the SCAN operator. The I index is then reset to point the first row in the table. When
C-13
Appendix C: Database Tables and Data Types
I=0, all values of the indexed variables refer to the first section. Therefore, the
algorithm starts with the first row (i.e., the first section).
The algorithm is written as a loop (rungs 3 to 6), starting at the FnLoop rung and
ending at the rung with the JMP operator. The algorithm logic is as follows:
• If the section is ENABLED and the actual temperature is higher than HiLmt, the
fan is activated by the LATCH operator (rung 3).
• If the section is not ENABLED or the actual temperature is lower than LowLmt,
the fan operation is stopped (rung 4).
• The I index is advanced by the CTU (count up) operator to perform the algorithm
on the next section (rung 5).
• The I index is compared to the LstFan variable (rung 6). If it is found smaller or
equal to the LstFan variable it means that the loop is to be performed again (for
the next section). If the I index is higher than the LstFan variable, the program
exits the loop and proceeds to the next rung (7).
The last rung (7) scans the FAN variable to update physical outputs according to the
FAN column in the table.
By using an index, the algorithm is written only once and not n times.
The loop size is defined by the LstFan variable, and not 49 (the last section in our
example). That is, by a single operation (see the Application Programmer chapter)
you can reduce or enlarge the size of the table – the algorithm is automatically
adjusted to the number of sections.
You can refer to a specific row by assigning a number rather than the index. For
example, TEMP,3 indicates the temperature of section number 3 (the 4th row, starting
from 0).
Example 2. When the algorithm for an external device (for each row in the table) is
long and complicated (considering CPU time), you may want to divide the control
operation so that only one row of the table is handled in a process SCAN. This case is
different from the previous example, where the algorithm for all rows is handled in
one SCAN. In this case, the rungs are as follows:
C-14
Appendix C: Database Tables and Data Types
I I
(1) > ( RST )
LstFan
I TEMP
(2) = ( SCAN )
0
ENABLE,I FAN,I
(4) / (U)
TEMP,I
>
LowLmt,I
I
(5) ( CTU )
I FAN
(6) > ( SCAN )
LstFan
The first rung checks that the I index is in the correct range. If I>LstFan, it is reset to
0. Only when I=0, all temperatures are read by the SCAN operator.
The logic of activating and deactivating the fans is similar to the previous example
and so are the rungs (3 and 4). The I index is incremented by the CTU operator to be
ready for the next row in the next SCAN.
When I>LstFan the FAN column is scanned to send the values to the physical outputs.
Note that the SCAN operator is performed on the TEMP and FAN variables once
every 50 cycles (in this case) and not in every cycle.
In example 1, the I index of the loop may be used in the same process for another loop, since
the index is used only within the loop.
In example 2, you should not use the I index again, since it is incremented in between cycles
and keeps the pointer for the next cycle. Therefore, it cannot be used in another loop.
Indices are defined only in the Index table. You may perform arithmetic operations on indices
beside the RST, CTU, and CTD operators. Refer to the description of the relevant operator.
C-15
Appendix C: Database Tables and Data Types
control program written by the user and the RTU system software, or used by the appropriate
rungs when requested through the appropriate functions.
I/O_Fl: This variable is set by the system; ‘1’ indicates that one of the I/O modules is faulty.
This variable may be used to activate a local relay output, named BELL, that is reset by a local
push-button, named ACK.
I/O_F1 BELL
↑ (L)
ACK BELL
(U)
The differentiator causes the Latch operation to be performed only at I/O_Fl appearance.
The I/O_Fl variable may also be used for sending events to the central. Refer to RTU Event
Reporting in Appendix E: User Defined MDLC Communication.
Init: Initialization. This variable is set by the system to ‘1’ when a new application is
downloaded to the RTU during “reset-load” (all variables are preset), or when a “cold-restart”
is performed. If this variable is used, it should be reset at the end of the process.
For example, the PreSet process is run at initialization. At the end of the process, the Init
variable is reset to ‘0’.
C-16
Appendix C: Database Tables and Data Types
Init PreSet
Part of Main ( JSP )
Process
PreSet Init
Process (U)
PwrUp: A variable set by the system to ‘1’ upon power-up or power restore (not as the Init
variable that is set to ‘1’ only at cold start-up). If the PwrUp variable is used, it should be reset
after performing all power-up operations.
The PwrUp variable may be used as a condition to perform various operations at power-up as
in the following example.
PwrUp CONT
/ ( JMP )
Power-up PwrUp
Operations (/)
CONT
When the PwrUp variable is not true (no power-up), the rungs that perform the power-up
operations are skipped.
Note that during “cold-restart” the Init and the PwrUp flags are set to ‘1’. It is the user’s
responsibility to reset these flags.
MainFail: This flag is set by the system to ‘1’ when a power failure causes the RTU main
frame to switch to a backup battery. It is reset when power is restored. (This parameter was
named AC_Fal in older versions.)
Note that this flag is relevant only if the unit is equipped with a backup battery.
For example, if the AC power failure is longer than 10 minutes, a local buzzer sounds and an
event is sent to the central. The FalDly delay-on timer is defined as a Minutes Timer and its
value is set to 10:00 (10 minutes).
MainFail FalDly
( DON )
FalDly BUZZER
( )
FalDly
↑ event transmission
BatFal: This flag is set by the system to ‘1’ when the voltage of the RTC lithium battery is
low.
C-17
Appendix C: Database Tables and Data Types
PushB1, PushB2: These two variables allow you to access the status of the PB1 and PB2
push-buttons via the ladder diagram. When a push-button is pressed, the appropriate variable is
set to ‘1’. The variables may be reset by the rungs (latch operation).
AuthOK: This variable is set to '1' when the second and third Authentication keys (used in the
synchronization of an RTU) are valid, but the first key (used in authenticating incoming frame
data) may not be. In this case, synchronization messages from a server to a client are
processed. Incoming data frames are accepted by the RTU if the timestamp is valid and are
rejected if it is not.
The AuthOK variable is set to '0' when the second and third Authentication keys are not valid,
but the first key may be valid. In this case, synchronization messages from a server to the
client are no longer processed. Incoming data frames are accepted by the RTU if the
timestamp is valid and are rejected if it is not. As soon as the receiving RTU's clock becomes
unsynchronized, no incoming data frames are accepted by the RTU. The user must then
redefine the second and third authentication keys and download them to the RTU using the
Network Configuration utility.
TskPrA - TskPrD (Task Priority): These four system flags indicate to the ladder whether the
A to D tasks are running or not. Refer to the RUNP output operator in Appendix B: Ladder
Diagram Language.
ClockValid: This variable indicates if the clock source is communicating with the MOSCAD,
or if it is disconnected. It is set by the system to ‘1’ when the communication is valid, and to
‘0’ when it is null. (This parameter was named GPSVal in older versions.) Refer to the
ACE3600 STS Advanced Features manual for more on clocks.
PrmFlg: For Dual CPU Mode, ‘1’ indicates that the CPU is plugged in Slot-0 (Primary).
PrmFal: For Dual CPU Mode. The Secondary’s application may use this flag to check if a
failure has occurred in the Primary CPU module. ‘1’ indicates that there is a failure in the
Primary.
DisCom: When active (1), the CPU does not respond to messages that were sent to its main
address, and in addition, does not send any message (burst, SndFrm etc.). The CPU responds
only to messages that were sent to its secondary address or messages that were sent in LOCAL
Mode.
ErrLog: This flag is set by the system to ‘1’ when there is at least one error in the error log
file. It is reset when the file is empty.
The ErrLog variable may be used to inform the control center that there is an error (ErrLog=1)
– as in the following rung.
ErrLog INFOER
↑ ( JSP )
When ErrLog=1, the program jumps to the INFOER (inform error) process. This process
performs the task of sending events to the control center. In this case, the event is an error
event. An example of such a process is given in Appendix E: User Defined MDLC
Communication - RTU Event Reporting.
C-18
Appendix C: Database Tables and Data Types
TimTag: This flag is set by the system to ‘1’ when there is at least one message in the Time
Tag log file. It is reset when the file is empty.
The TimTag variable may be used to inform the control center that there is a message
(TimTag=1) in the Time Tag log file – as in the following rung.
TimTag INFTAG
↑ ( JSP )
When TimTag=1, the program jumps to the INFTAG (inform time tag) process. This process
performs the task of sending events to the control center. In this case, the event is a message in
the Time Tag log file. An example of such a process is given in Appendix E: User Defined
MDLC Communication – RTU Event Reporting.
DefC_Y: This flag is set by the system to ‘1’ only when the RTU “knows” its default central.
At the first transmission of the central (after system setup), each RTU holds the routing to the
default central. If such a transmission has not occurred (DefC_Y=0), then an RTU
transmission to the default central results in an error – the ERR LED of the RTU lights.
For example, refer to a process that performs burst communication towards the default central.
This process includes the following rungs:
Esite
( MOVE )
Cntral
To prevent an RTU transmission to the default central without “knowing” the default central
(such a transmission results in an error), the transmission rung should be conditioned by the
DefC_Y flag, as follows:
DefC_Y TxEvnt
( CALL )
b
The TxEvnt function is called only when DefC_Y=1, that is RTU “knows” its default central.
For example, it is possible to activate a DOF timer (with a T preset time) according to the
CntCom variable in order to change the RTU mode of operation in case of central failure
(CntCom=0), as follows:
CntCom T
/ ( DOF )
T MODE2
/ (L)
C-19
Appendix C: Database Tables and Data Types
The MODE2 user bit may be used to activate the RTU in an independent mode of operation. If
MODE2=0, there is communication with the central. If MODE2=1, there is no communication
with the central.
EvOvfl: This flag is set by the system. ‘1’ indicates that the event queue is full and the next
event is written over the existing events. It is the user’s responsibility to reset this flag.
ErAlmostFul: When the Error Logger file in the flash memory is almost full.
ErFull: When the Error Logger file in the flash memory is full.
SBOoprChk: Indication of SBO operation mode (Operate or not.) Relates to the Select
Before Operate (SBO).
ActivePS: Relates to Dual Power Supply. For redundant sites. ‘0’ indicates that this is the
backup power supply or that redundancy not supported; ‘1’ indicates that this is the active
power supply.
PS1_MainFail: When a failure has occurred in the external input (not battery) to Power
Supply 1 on the main frame.
PS2_MainFail: When a failure has occurred in the external input (not battery) to Power
Supply 2 on the main frame. Relates to Dual Power Supply.
PS1_12VDoFail: When a failure has occurred in the 12V DO control of Power Supply 1 on
the main frame.
PS2_12VDoFail: When a failure has occurred in the 12V DO control of Power Supply 2 on
the main frame. Relates to Dual Power Supply.
expCommFail: When a communication error has occurred between the main frame and any
one of the expansion frames. To check out the specific expansion frame, use the Expansions
Reserved Flags Table.
expSyncFail: When a synchronization error has occurred between the main frame and any one
of the expansion frames. To check out the specific expansion frame, use the Expansions
Reserved Flags Table.
SecureLogEvents: For secured systems only. This flag is set by the system to ‘1’ when there
is at least one event in the security log file. It is reset when the file is empty.
The SecureLogEvents variable may be used to inform the control center that there is a security
event (SecureLogEvents =1). See the ACE3600 Advanced System Security User Guide.
SecureLogSeverity: For secured systems only. This flag is set by the system to ‘1’ when
there is at least one event in the security log file whose severity is greater than or equal to the
predefined ‘High severity threshold level’ in the policy. It is reset only when the security log
is erased.
C-20
Appendix C: Database Tables and Data Types
This variable may be used to inform the control center that the high severity event has
occurred (SecureLogSeverity = 1). Note: If the security log is full, older events are
overwritten. Therefore it is possible that the SecureLogSeverity flag is set to 1, but the high
severity event itself is no longer there. See the ACE3600 Advanced System Security User
Guide.
SecureLogAlmostFull: For secured systems only. This flag is set by the system to ‘1’ when
the security log file is 80% full. It is reset when the number of events in the file falls below
this threshold.
This variable may be used to inform the control center that the security log file is almost full
(SecureLogAlmostFull = 1). See the ACE3600 Advanced System Security User Guide.
SecureLogFull: For secured systems only. This flag is set by the system to ‘1’ when the
security log file is 100% full. It is reset when the number of events in the file falls below this
threshold.
This variable may be used to inform the control center that the security log file is full
(SecureLogFull = 1) and old messages are being discarded. See the ACE3600 Advanced
System Security User Guide.
These flags do not appear in the Reserved Flags table in a nonsecured system.
CpuActive: For redundant sites. ‘0’ indicates that the CPU is the standby peer or that
redundancy not supported; ‘1’ indicates the CPU is active.
C-21
Appendix C: Database Tables and Data Types
Site Table
The Site table is applicable only for RTU-to-RTU communication, event reporting, data burst,
and sync. This system table is used to define all the RTUs that the present RTU wishes to
communicate with. For each destination RTU, the user should define a symbolic name, logic
address (Site ID), and the link (link ID) through which it is connected. When programming the
process using the ladder rungs, the user should employ only the symbolic site name in the
appropriate rung for sending the data to that site. For further details including examples, refer
to Appendix E: User Defined MDLC Communication.
Tx Event Table
The Tx Event system table is used as a buffer when sending events to the central. The events
should be defined in the constants Event Definitions 1 & 2 tables. The MDLC Port ID’s table
includes the port name(s) which connects the central computer to the FIU. For further details,
refer to Appendix E: User Defined MDLC Communication.
C-22
Appendix C: Database Tables and Data Types
SelfID: This variable provides the Site ID of the unit. For example, this variable may be used
when you do not want to create many applications with minor changes. You can use the SelfID
variable to modify one common application according to the needs of a specific RTU.
PLCStt: This variable provides an indication on the communication with third-party PLCs.
The values for this variable defined in the PLC Statuses table (one of the Constant Tables). For
further details about Third-Party Protocols, refer to the ACE3600 STS Third Party Protocols
Support manual.
ClcStt: This variable is updated following a Calc operation. When an overflow occurs, CllStt
is set to ‘1’ and it is the user’s responsibility to reset it.
UclStt: This variable is used by the ‘C’ Toolkit and it is updated following a Ucl output
operation. It is the user’s responsibility to reset this variable.
GpsOfs: This variable enables the user to update the RTU to daylight savings time. The
GpsOfs default value is ‘0’, and it may be either positive or negative according to the local
time offset in respect to the universal time (measured in hours).
For further details about the GPS, refer to the ACE3600 STS Advanced Features manual.
BAT1V: This variable indicates the charging level (in percentages) of the battery attached to
Power Supply 1.
BAT2V: This variable indicates the charging level (in percentages) of the battery attached to
Power Supply 2. This data is valid only if a dual power supply exists. This feature is not
currently available.
C-23
Appendix C: Database Tables and Data Types
SBOduration: This output value enables the user to set the duration of the SBO DO relay
activation (i.e. the pulse width of the SBO operation.) Set the value to -1 for infinite duration.
Note: The duration is in units of 1 msec, although system time resolution is 10msec.
SBOstatus: This input value enables the user to track the status of the SBO process and to
know whether another SBO operation can be generated. The SBOstatus values are as follows:
0 Idle
1 SBO was selected.
2 SBO was checked.
3 SBO was operated.
SBOerror: This input value indicates the type of error which occurred in the SBO process.
The SBOerror values are as follows:
0 No error
1 Fail to select – Probably because select was done during operate.
2 Fail to check – System failed to check, probably due to a hardware problem.
3 Fail to operate – Select timeout was reached before the user operated the SBO.
4 Invalid operation – Operate during operate or Operation with 0 duration.
For further details on using SBO DOs, refer to the “Select Before Operate Dos” section of the
ACE3600 STS Advanced Features manual.
Tb2CpyResult: The return code of the Tb2Cpy function CALL in a redundant site. This call
checks the result of the Tb2Cpy operation, which copies a predefined list of tables from the
Active CPU’s database to the peer CPU. When the tables are copied successfully,
Tb2CpyResult is set to ‘0’. Otherwise it is set to the relevant nonzero error code.
Note: When using Tb2Cpy, the user should check that the initial copy to memory succeeded
and then that the copy from memory to the peer CPU was completed successfully.
For more information, see the “RTU Redundancy” section of the ACE3600 STS Advanced
Features manual.
C-24
Appendix C: Database Tables and Data Types
Sec_EventID: For secured systems only. The ID of the retrieved security log event. If ‘0’,
then no high severity events exist in the log. See the ACE3600 Advanced System Security
User Guide.
Sec_RoleID: For secured systems only. The user’s role ID in the retrieved security log event.
See the ACE3600 Advanced System Security User Guide.
Sec_UserID: For secured systems only. The user’s ID in the retrieved security log event. See
the ACE3600 Advanced System Security User Guide.
Sec_Severity: For secured systems only. The severity of the retrieved security log event. Can
be one of 1 = information, 3 = moderate, 5 = high, or 7 = critical. See the ACE3600 Advanced
System Security User Guide.
Sec_TimeEventHigh: For secured systems only. The high byte of the date and time of the
security log event (day, year). See the ACE3600 Advanced System Security User Guide.
Sec_TimeEventLow: For secured systems only. The low byte of the date and time of the
security log event (milliseconds from the Sec_TimeEventHigh day.) See the ACE3600
Advanced System Security User Guide.
MdlcKeyIndex: For secured systems only. The active MDLC encryption key index in the list
of keys.
Note: At startup, this is set to 0 (= no active key and no encryption) until it gets its actual
value. Ignore this value when it is set to 0. See the ACE3600 Advanced System Security User
Guide.
MdlcKeyAlert: For secured systems only. The number of minutes remaining until MDLC
payload encryption keys are swapped. If the value is < 32767, it reflects the actual number of
minutes until the key swap. If the value is = 32767 minutes (22.75 days,) the key swap will
take place in at least 32767 minutes (could be more.)
Note: At startup, this is set to 0 until it gets its actual value. Ignore this value when it is set to
0. See the ACE3600 Advanced System Security User Guide.
Sec_Param1High: For secured systems only. The high byte of the first parameter of the
security log event text message. See the ACE3600 Advanced System Security User Guide.
Sec_Param1Low: For secured systems only. The low byte of the first parameter of the
security log event text message. See the ACE3600 Advanced System Security User Guide.
Sec_Param2High: For secured systems only. The high byte of the second parameter of the
security log event text message. See the ACE3600 Advanced System Security User Guide.
Sec_Param2Low: For secured systems only. The low byte of the second parameter of the text
messages sent to the security log. See the ACE3600 Advanced System Security User Guide.
Sec_Param3High: For secured systems only. The high byte of the third parameter of the
security log event text message. See the ACE3600 Advanced System Security User Guide.
Sec_Param3Low: For secured systems only. The low byte of the third parameter of the
security log event text message. See the ACE3600 Advanced System Security User Guide.
C-25
Appendix C: Database Tables and Data Types
DBbackTblNo: The table number of the BlocksToBackup database table. For more
information, see the “Database Backup” section of the ACE3600 STS Advanced Features
manual.
PRMEVENT TABLE
The PRMEVENT system table enables the user to define buffers for the Event Driven
software. Unlike polling/scanning, the Event Driven software performs calculations or sends
commands only when changes occur at the inputs.
For further details about the Event Driven software, refer to Event Driven Software in
ACE3600 STS Advanced Features manual.
PLC Table
The PLC system table is used to define the connectivity to third-party controllers in the
system.
For further details about Third-Party Protocols, refer to the ACE3600 STS Third Party
Protocols Support manual.
For further details about Third-Party Protocols, refer to the ACE3600 STS Third Party
Protocols Support manual.
CpuIn: This variable is used to read the status of the 12V power supply.
The status of these power supplies can also be checked using the Hardware Test CPU test. See
CPU Test above. For further details about the CPU module, refer to the ACE3600 RTU
Owner’s Manual.
C-26
Appendix C: Database Tables and Data Types
states, except for the voltage. The AUX2 DC voltage can only be changed using the STS site
configuration.
MPS1In: This variable is used to scan in the values of the auxiliary outputs AUX1A (row 0),
AUX1B (row 1), AUX2A (row 2), and AUX2B (row 3) and the AUX2 DC voltage value (row
4) on the first Main power supply.
MPS1Out: This variable is used to scan out the values of the auxiliary outputs AUX1A (row
0), AUX1B (row 1), AUX2A (row 2), and AUX2B (row 3) on the first Main power supply.
ePS1In: This variable is used to scan in the values of the auxiliary outputs AUX1A (row 0),
AUX1B (row 1), AUX2A (row 2), and AUX2B (row 3) and the AUX2 DC voltage value
(row 4) on the current expansion power supply. The initial values of the auxiliary outputs and
DC voltage are derived from the site configuration. The outputs can then be modified by the
user in the ladder/ ‘C’ application. Before using this flag, see the important note under
Expansions Reserved Values Table below.
Note: This variable is only relevant if the power supply on the expansion frame is a model
which includes auxiliary outputs. When the expansion power supply is used, this value is
always 0 (not relevant.)
ePS1Out: This variable is used to scan out the values of the auxiliary outputs AUX1A (row
0), AUX1B (row 1), AUX2A (row 2), and AUX2B (row 3) on the current expansion power
supply. The initial values of the auxiliary outputs and DC voltage are derived from the site
configuration. The outputs can then be modified by the user in the ladder/ ‘C’ application.
Before using this flag, see the important note under Expansions Reserved Values Table below.
Note: This variable is only relevant if the power supply on the expansion frame is a model
which includes auxiliary outputs. When the expansion power supply is used, this value is
always 0 (not relevant.)
For further details about the auxiliary outputs on the power supply modules, refer to the
ACE3600 RTU Owner’s Manual. For further details on the MOSCAD_GetExpData ‘C’
Toolkit function, see the ‘C’ Toolkit for MOSCAD Family RTUs manual.
For further details about the auxiliary outputs on the power supply modules, refer to the
ACE3600 RTU Owner’s Manual.
MonthStart: This variable represents the month during which daylight savings begins.
DayStart: This variable represents the day during which daylight savings begins.
C-27
Appendix C: Database Tables and Data Types
HourStart: This variable represents the hour during which daylight savings begins.
MonthEnd: This variable represents the month during which daylight savings ends.
DayEnd: This variable represents the day during which daylight savings ends.
HourEnd: This variable represents the hour during which daylight savings ends.
For further details about Third-Party Protocols, refer to the ACE3600 STS Third Party
Protocols Support manual.
Important: Before using any flags in this table, see the important note under Expansions
Reserved Values Table below.
C-28
Appendix C: Database Tables and Data Types
eMainFail: This flag is set by the system to ‘1’ when a power failure causes the RTU
expansion frame to switch to a backup battery. It is reset when power is restored. See
MainFail above.
Note: This variable is only relevant if the power supply on the expansion frame is equipped
with a backup battery. When the expansion power supply is used (no backup battery), this
value is always 0 (not relevant.)
eActivePS: Whether this expansion power supply is the active one in a redundant site. This
variable relates to Dual Power Supply. See ActivePS above.
ePS1_MainFail: This variable is used to indicate a failure in Power Supply 1 on the current
expansion frame. See PS1_MainFail above.
ePS2_MainFail: This variable is used to indicate a failure in Power Supply 2 on the current
expansion frame. Relates to Dual Power Supply. See PS2_MainFail above.
ePS1_12VDoFail: This variable is used to indicate a failure in the 12V DO control of Power
Supply 1 on the current expansion frame. See PS1_12VDoFail above.
C-29
Appendix C: Database Tables and Data Types
ePS2_12VDoFail: This variable is used to indicate a failure in the 12V DO control of Power
Supply 2 on the current expansion frame. See PS2_12VDoFail above. Relates to Dual Power
Supply.
eCommFail: This variable is used to indicate that a communication error has occurred
between the main frame and the current expansion frame. See expCommFail above.
eSyncFail: This variable is used to indicate that a synchronization error has occurred between
the main frame and the current expansion frames. See expSyncFail above.
CurrExpNum: This variable is used to identify the current expansion frame number. This
variable is not writable in the table. Its value is set when the expansion data is retrieved as
described in the Important note below.
Important: The ACE3600 RTU can include up to 13 expansion frames, each of which has its
own expansion module, power supply and I/Os. Before using any columns in the Expansions
Reserved Flags or Expansions Reserved Values system tables, or the ePS1In/ePS1Out columns
of the Main Power Supply<n> tables, the user application must first call the GtExDt ladder
call or the MOSCAD_GetExpData ‘C’ Toolkit function to set the desired expansion frame to
be the current frame. After that call, the relevant flags/values are retrieved and displayed in
these specific database tables.
In the example below, the user application is setting a specified expansion frame as the current
expansion frame.
GtExDt
( CALL )
i
eBAT1V: This variable indicates the charging level (in percentages) of the battery attached to
Power Supply 1 on the current expansion frame.
Note: This variable is only relevant if the power supply on the expansion frame is equipped
with a backup battery. When the expansion power supply is used (no backup battery), this
value is always 0 (not relevant.)
eBAT2V: This variable indicates the charging level (in percentages) of the battery attached to
Power Supply 2 on the current expansion frame. This data is valid only if a dual power supply
exists.
Note: This variable is only relevant if the power supply on the expansion frame is equipped
with a backup battery. When the expansion power supply is used (no backup battery), this
value is always 0 (not relevant.)
C-30
Appendix C: Database Tables and Data Types
ASCII Table
The ASCII constant table contains ASCII representation for the basic character set
(alphanumeric and special characters.) These character values can then be compared to
constant variables in the ladder.
C-31
Appendix C: Database Tables and Data Types
Years Table
The Years constant table contains year names (e.g. Yr2000) which can be compared to
constant variables in the ladder.
Months Table
The Months constant table contains month names (e.g. Jan) which can be compared to
constant variables in the ladder.
Days Table
The Days constant table contains day names (e.g. Thu) which can be compared to constant
variables in the ladder.
C-32
Appendix C: Database Tables and Data Types
Data Types
Every column in the database tables (single or multiple-column), may be defined as one of the
following data types (the name in parentheses indicates the column data type in a multiple-
column table):
C-33
Appendix C: Database Tables and Data Types
Value Meaning
‘0’ (false) The operation indicated by the logical variable is not active.
Examples: a machine that is not operating, a de-energized relay, an
alarm that is not activated, or a disconnected switch.
‘1’ (true) The operation indicated by the logical variable is active. Examples: an
energized relay, an operating machine, an activated alarm, a
connected switch.
Variables of this data type are products of internal functions (rungs) or received from another
site through the communication system.. When the system starts up/restarts, all Discrete
variables are reset to ‘0’.
Variables of this data type are products of internal functions (rungs) or received from another
site through the communication system. When the system starts up/restarts, all Integer Value
variables are preset to ‘0’.
Variables of this data type are products of internal functions (rungs) or received from another
site through the communication system.. When the system starts up/restarts, all Real Value
variables are preset to ‘0’.
C-34
Appendix C: Database Tables and Data Types
reset to ‘0’ at cold start-up, the Real Parameter variables receive a value defined by the user.
However, this value may be changed during operation by means of the ladder diagram.
The user can connect each entry of any column, defined as Discrete Input, to any physical
input in one of the RTU Discrete Input modules (refer to Linking I/Os to the Database in the
Application Programmer chapter of this manual).
The user controls when the physical inputs are read into any column which is defined as
Discrete Input (refer to the Scan operator in the Appendix B: Ladder Diagram Language
section).
The physical inputs are usually read before using the values of the column during the process.
The possibility of reading the inputs for each column separately enables you to perform
various operations at different rates (priorities).
The user can connect each entry of any column, defined as Discrete Output, to a physical
output in one of the RTU Discrete Output modules (refer to Linking I/Os to the Database in
the Application Programmer chapter of this manual).
The user controls when the values of a specific column are sent to the physical outputs (refer
to the Scan operator in the Appendix B: Ladder Diagram Language section).
The values of the column are usually sent to the physical outputs at the end of the column
calculation (by the process).
Each AI module type has a rated range of values, beyond which the values may not be assured
due to calibration. It is highly recommended to remain within the rated range for each
module. (Beyond the rated range, an Underflow/Overflow LED is lit on the I/O module.) For
more information, see the “AI Module Value Representation” section of the ACE3600 RTU
Owner’s Manual.
Each module type may provide different ranges of values, as shown below.
C-35
Appendix C: Database Tables and Data Types
Modules that include counters (accumulators) provide values in the range of 0 to +Full Scale.
When the counter reaches the upper value (+32,767 or +4095) and is advanced, it returns to 0.
Modules that include A/D conversion (the A/D provides a value that is proportional to the
analog measurement) provide a number in the range of -Full Scale to +Full Scale.
The connection between the variables in the columns, defined as Value Inputs, and the I/O
modules is performed by the I/O Link program (refer to Linking I/Os to the Database in the
Application Programmer chapter of this manual.)
The user controls when the physical inputs are read into any column defined as Value Input
(refer to the Scan operator in the Appendix B: Ladder Diagram Language section).
Usually, the physical inputs are read before using the values of the column during the process.
The possibility of reading the inputs for each column separately enables you to perform
various operations at different rates (priorities).
Each module type may provide different ranges of values, as shown below.
The connection between the variables in the columns, defined as Value Outputs, and the I/O
modules is performed by the I/O Link program (refer to Linking I/Os to the Database in the
Application Programmer chapter of this manual.)
C-36
Appendix C: Database Tables and Data Types
The user controls when the values of a specific column are sent to the physical outputs (refer
to the Scan operator in the Appendix B: Ladder Diagram Language section).
Usually, the values of the column are sent to the physical outputs at the end of the column
calculation (by the process).
The user has to define the physical value at two points, so that the system translates the sensor
output to a physical value, as demonstrated in the following graph:
Y physical
value
EGU High
20%
EGU Zero
{ 0
sensor
output
0 6400 32000 X
The first point, EGU High (EGUH), is the physical value when the sensor is at full scale. The
second point is the physical value when the sensor output is 0 or live-zero, as in the case of the
4-20 mA sensors. This second point is called EGU Zero, EGU0. For sensors that output
voltages in the range of ±V, the calibrating point is the physical value when the sensor output
is 0 and not -V.
The values of EGU Zero and EGU High should be defined in the relevant table by means of
the Show Related Data function. You also may define whether the EGU Zero is live-zero or
not.
The connection between the variables in the columns, defined as Scaled Analog Inputs, and
the A/D modules is performed by the I/O Link program (refer to Linking I/Os to the Database
in the Application Programmer chapter of this manual.)
The user controls when the values of a specific column are read from the physical inputs (refer
to the Scan operator in the Appendix B: Ladder Diagram Language section.)
Usually, the physical inputs are read before using the values of the column calculation during
the process.
C-37
Appendix C: Database Tables and Data Types
The possibility of reading the inputs for each column separately enables performing various
operations at different rates (priorities).
The user may define the two points (EGU Zero and EGU High) of the scaling function. Refer
to Scaled Analog Input.
The connection between the variables in the columns, defined as Scaled Analog Outputs, and
the I/O modules is performed by the I/O Link program (refer to Linking I/Os to the Database
in the Application Programmer chapter of this manual.)
The user controls when the values of a specific column are sent to the physical outputs (refer
to the Scan operator in the Appendix B: Ladder Diagram Language section.)
The values of the column are usually sent to the physical outputs at the end of the column
calculation (by the process).
For each variable in a column defined as Mapped Discrete you should define the discrete
variable from which it is to be copied.
The user controls when the values are copied to the table (refer to the Scan operator in the
Appendix B: Ladder Diagram Language section.) Performing the Scan operation on a Mapped
Discrete column is the same as separately mapping each variable in the column.
For each variable in a column defined as Mapped Value, you should define the value variable
from which it is to be copied.
The user controls when the values are copied to the table (refer to the Scan operator in the
Appendix B: Ladder Diagram Language section.) Performing the Scan operation on a Mapped
Value column is the same as separately mapping each variable in the column.
C-38
Appendix C: Database Tables and Data Types
A timer of less than one hour should be defined as a Minutes Timer, rather than Hours Timer,
in order to improve its resolution.
In each column defined as Hours Timer, the user should define the preset time of every timer.
This preset time is assigned to the timer at cold start-up of the system and may be set to
another value by the appropriate ladder diagram functions.
A detailed explanation about the use of the Hours Timer is provided in Appendix B: Ladder
Diagram Language.
A timer of less than one minute should be defined as Seconds Timer rather than Minutes
Timer in order to improve its resolution.
In each column defined as Minutes Timer, the user should define the preset time of every
timer. This preset time is assigned to the timer at cold start-up of the system and may be set to
another value by the appropriate ladder diagram functions.
A detailed explanation about the use of the Minutes Timer is provided in Appendix B: Ladder
Diagram Language.
In each column defined as Seconds Timer, the user should define the preset time of every
timer. This preset time is assigned to the timer at cold start-up of the system and may be set to
another value by the appropriate ladder diagram functions.
A detailed explanation about the use of the Seconds Timer is provided in Appendix B: Ladder
Diagram Language.
The user has full control of the time that the pph is updated in the column (refer to the Scan
operator in the Appendix B: Ladder Diagram Language section.)
C-39
Appendix C: Database Tables and Data Types
The user can connect each entry of any column, defined as Pulses Per Hour, to any physical
input in one of the RTU Discrete Input modules (refer to Linking I/Os to the Database in the
Application Programmer chapter of this manual.)
Time-Tagged DI (TgDI)
This data type is similar to the DI data type. In addition, the system keeps track of these inputs
and every change is recorded in a Time-Tag log buffer and/or events buffer together with the
date and time in 1 msec resolution. The Time-Tag buffer can be read using the Time-Tag
Logger tool. The events buffer can be read via a ladder construct by calling the GtEvnt
function (see Event Driven Software in the ACE3600 STS Advanced Features manual).
This data type is relevant for electric applications and only the important inputs should be
defined as Time-Tagged DI, since this feature is CPU-time consuming.
The user can connect each entry of any column, defined as Time-Tagged DI, to any physical
input in one of the RTU Discrete Input modules (refer to Linking I/Os to the Database in the
Application Programmer chapter of this manual.)
Index
This data type includes pointers to rows of multiple-column tables. Since each row in a
multiple-column table represents the variables of a device, the Index is a pointer to the device.
The Index enables the user to write an algorithm for one row of the table and apply it to all
table rows. The Index variable may be defined only in the Index table (one of the system
tables). The index value is limited to the range 0-250 at any given time (the number of rows in
a table is limited to 250). If an index exceeds the 250 limit, an error message is recorded in the
Error Logger, because no tables have more than 250 rows.
Constants
Constants are defined by a symbolic name and numeric value in single-column tables. The
symbolic names of the constants are used in the ladder diagram.
There are four types of constants: Integer, Real, Byte and Long.
The advantage of using the symbolic name in the ladder diagram rather than the value is that in
case of changes, it is easier to change the value only in one place (in the table) rather than
searching in all functions.
Byte Value
This data type includes the internal (calculated) single-byte integer variables (positive and
negative) in the range of -128 to +127. These variables are represented by one byte in 2’s
complement format.
C-40
Appendix C: Database Tables and Data Types
Variables of this data type are products of internal functions (rungs) or received from another
site through the communication system. When the system starts up/restarts, all Byte Value
variables are preset to ‘0’.
Long Value
This data type includes the internal (calculated) long integer variables (positive and negative)
in the range of -2147483648 to +2147483647. These variables are represented by four bytes in
2’s complement format.
Variables of this data type are products of internal functions (rungs) or received from another
site through the communication system.. When the system starts at cold start (for example,
after reset load), all Long Value variables are preset to 0.
Mapped Byte
This data type enables you to define a column of byte variables that are a copy of byte
variables in other tables. In this case, the byte variables are copied from various tables (for a
copy of a complete column, refer to the Duplicate Column operation described in this chapter).
For each variable in a column defined as Mapped Byte, you should define the byte variable
from which it is to be copied.
The user controls when the bytes are copied to the table (refer to the Scan operator in the
Appendix B: Ladder Diagram Language section). Performing the Scan operation on a Mapped
Byte column is the same as separately mapping each variable in the column.
Mapped Long
This data type enables you to define a column of long variables that are a copy of long
variables in other tables. In this case, the long variables are copied from various tables (for a
copy of a complete column, refer to the Duplicate Column operation described in this chapter).
For each variable in a column defined as Mapped Long, you should define the long variable
from which it is to be copied.
The user controls when the longs are copied to the table (refer to the Scan operator in the
Appendix B: Ladder Diagram Language section). Performing the Scan operation on a Mapped
Long column is the same as separately mapping each variable in the column.
Byte Parameter
The variables of this data type are almost identical to the Byte Value variables. The difference
is that they receive initial values at cold start of the system. While the Byte Value variables are
reset to ‘0’ at cold start-up, the Byte Parameter variables receive a value defined by the user.
However, this value may be changed during operation by means of the ladder diagram.
Long Parameter
The variables of this data type are almost identical to the Long Value variables. The difference
is that they receive initial values at cold start of the system. While the Long Value variables
C-41
Appendix C: Database Tables and Data Types
are reset to ‘0’ at cold start-up, the Long Parameter variables receive a value defined by the
user. However, this value may be changed during operation by means of the ladder diagram.
IP Address
This data type represents IP addresses (in the form of 0.0.0.0 to 255.255.255.255), represented
by four bytes. Variables of this data type are products of internal functions (rungs) or received
from another site through the communication system. When the system starts up/restarts, all
IP addresses variables are preset to ‘0.0.0.0’.
IP Address Parameter
The variables of this data type are almost identical to the IP Address variables. The difference
is that they receive initial values at cold start of the system. While the IP Address variables are
reset to ‘0.0.0.0’ at cold start-up, the IP Address Parameter variables receive a value defined
by the user. However, this value may be changed during operation by means of the ladder
diagram.
C-42
Appendix D: User Defined Local Ports
Some ports in the system may be defined as user ports via Site Configuration. The user ports
are controlled by the ladder application through the appropriate functions and through the user
ports table (one of the system tables). There are specific constant tables, described below, that
play a role in user defined communication.
When a port is defined as a user port, the port and the protocol are controlled by the user that
writes the rungs. For example, you may use a port for printing on a printer or for connection to
a computer (or any other smart unit) by writing the appropriate protocol.
The RS-232 ports in the system use a telephone-type 8-pin connector. To connect any
equipment that requires a standard RS-232 interface, use one of the following cables:
1) Terminal adapter cable FLN6457 (with female 25-pin D-type connector) for connection to a
terminal, computer, or printer.
2) Modem adapter cable FLN6458 (with male 25-pin D-type connector) for connection to an
external modem.
To connect two RS-232 ports of two sites (configured as RS-Link in Site Configuration), use
the above mentioned cables (connect the male and female 25-pin D-type connectors). You
cannot connect two RS-232 ports without these cables.
D-1
Appendix D: User Defined Local Ports
Each row in the table includes the variables and flags for each User Port. User_1 refers to row
0, User_2 – to row 1, and User_3 – to row 2 (refer to the User Port Names table in the
Constants Tables list). Use these symbols to refer to the port (the assignment of the physical
ports is performed by Site Configuration).
Select the user ports table from the System Tables list. It looks as shown below.
D-2
Appendix D: User Defined Local Ports
USER_2
(SEND)
This rung sends the message in the window to USER_2 (User Port no.2). The next
rung, after performing the SEND operator, should check whether the message is to be
sent or not (since the system buffer is full). You should insert the value of USER_2
into an index variable (for example, x) and then check if PTxFlg,x is equal to 1 or not.
If the message was not taken for transmission, then the SEND operator should be activated
again after a while.
You may call the SEND function with an index that has been loaded with the appropriate
value: USER_1 to USER_4.
The SEND operator sends a free-format message to the ports defined as user ports.
USER_1
(SEND)
free-format message
When the rung is true, the message in the window is sent to the user port specified above the
SEND operator.
The message may include characters, text, and also variables combined with text. The message
may be sent to a printer, terminal, or may be used for communicating with any other unit using
serial protocol.
If the rung conditions are constantly fulfilled and you want to send the message only once, a
differentiator should be used.
The following rungs print a message that includes the temperature when it exceeds
HiLmt or goes below LowLmt. TEMP is the temperature variable and HiLmt and
LowLmt are constants.
D-3
Appendix D: User Defined Local Ports
TEMP USER_2
> ↑ ( SEND )
HiLmt
TEMP
<
LowLmt
<TEMP> indicates to the unit that the value of the TEMP variable should be sent. The
variable in between the angular brackets must be defined in the data base. The
variable may be either from a single-column table or from a multi-column table
including an index (for example, Status,I).
Format 1:
<BIT>: Sends the value of a discrete variable (0 or 1) with a space before the digit: “ 0” or
“ 1” (i.e., two characters).
Format 2:
<VAL>: Sends the value of the VAL variable defined as one of the following data types:
The value is sent as a fixed field of six characters in the range of -32,768 to +32,767. For
example:
30000
-27263
+12
-500
1
0
If the VAL variable is defined as one of the following data types, then the value is sent as a
fixed field of 16 characters in the range of -3.402823466x1038 to +3.402823466x1038:
• Real Value
• Scaled AI, Scaled AO
• Real Parameter
• Real Constant
D-4
Appendix D: User Defined Local Ports
Format 3:
Format 4:
<<VAL>: Sends the value of the VAL variable in its actual length (not as a fixed field length).
Note that formats 1-4 convert the value of the variable into an ASCII string while Format 5
sends the value of the variable as a character directly to the port.
Format 5:
‘n<STRING,I>: Sends a series of characters (n characters) whose codes (variables) are stored
in the low bytes of the variables in a column named STRING (starting at STRING,I). For I=K
the first string to be sent is LOWBYTE(STRING,K) and the last one
LOWBYTE(STRING,K+n). It should be noted that n may be an integer constant or index. n as
index enables sending a string with variable length (supported from version ≥ V1.63).
IMPORTANT NOTES:
• The ‘ character (in ‘n<STRING,I> or ‘<STRING,I>) should be the ASCII character 39.
• The number, n, preceding the string (as in ‘n<STRING,I>) should be a fixed number,
e.g. '5<STRING>, rather than a constant number ‘#5<STRING,I>.
• If n (in ‘n<STRING,I>) does not exist, 'n is presented as two ASCII characters and the
variable <STRING,I> is presented as an integer value.
When the RTU sends the text, it adds <LF> and <CR> characters at the end of each line. The
codes appear in the following order: <LF> (Hex-0A) and <CR> (Hex-0D).
You may cancel the insertion of these two codes by adding the “\” character at the end of the
line (after the last character). This feature is useful when defining a protocol by the SEND
operator and also when sending “Escape Sequences” or parts of sentences to a terminal screen.
If you use “\”, make sure that there are no additional spaces after the character. Otherwise, it is
not considered as CR-LF cancellation.
The rung below positions the cursor on column 30 of the first line and then sends the
following heading: ALARM REPORT SCREEN.
D-5
Appendix D: User Defined Local Ports
USER_1
(SEND)
<-[1;30H\
Note that you must make sure that the terminal accepts “Escape Sequences”.
The first line in the window positions the cursor on the screen. The “Escape Sequence” starts
with the Esc character; type the Esc character on your keyboard – the symbol will appear on
the screen.
The \ character at the end of the first line informs the system not to insert <LF> and <CR> at
the end of the “Escape Sequences”.
If the “\” character at the end of a line is part of your text, then add a space at the end
of the line.
USER_1
(SEND)
To print a variable in 24-hour format, use %<VAL>. This will send the VAL variable as:
“_HH:MM”. For example, %<TIME> will send the TIME variable in this format.
The system automatically identifies a Timer variable (Hours, Minutes, or Seconds) in between
< > or << >, and sends it in Timer format: “_XX:YY” for <Timer> and “XX:YY” for
<<Timer>.
For example, for row 14, column 24: y=0x3134 (the ASCII values of 1 and 4, respectively)
and x=0x3234 (the ASCII values for 2 and 4, respectively).
D-6
Appendix D: User Defined Local Ports
PRxFlg Variable
The PRxFlg variable is updated by the system when the GetChr and GetDgt functions are
called. The variable receives the value ‘1’ whenever a character is read from the selected User
Port. If the PRxFlg variable is ‘0’ after calling the GetChr function, it means that no character
has been received. Refer to the PRxChr and PRxNum variables.
You should ensure that the reading operation was successful (a character has been read) by
checking the PRxFlg variable.
The following rung will read a character from User Port no.3.
GetChr
(CALL)
USER_3
The ASCII table, accessed from the Constant Tables list, contains all the characters that you
may use for comparison with the PRxChr value. The ASCII characters are detailed in the
following table.
D-7
Appendix D: User Defined Local Ports
The GetDgt function is called by the CALL operator. It reads one digit from the specified port
into the PRxNum variable in the specified row. PRxNum = (old PRxNum)*10 + Input Digit.
Once the GetDgt function has been executed, you should check the following:
• PRxFlg is ‘1’, indicating that a digit has been read from the port.
• PRxChr has received the value of ChrDgt (8196 – refer to the ASCII table). If the value of
the PRxChr variable is not equal to ChrDgt, it means that the received character is not a
digit. In this case the received character is stored in the PRxChr variable and PRxNum is
not affected.
PrtFal Variable
The PrtFal (Port Fail) variable is updated by the system when the SEND function is called.
The PrtFal variable specifies the status of the port:
D-8
Appendix D: User Defined Local Ports
PrtMod Variable
The PrtMod variable may receive one of the modes that appear in the User Port Modes table
(one of the Constant tables) shown below:
For example, 7bEv2S means 7 bits, even parity, and 2 stop bits.
D-9
Appendix D: User Defined Local Ports
Protcl Variable
The Protcl variable defines the protocol to be used. It may receive one of the options that
appear in the User Port Protocols table (one of the Constant tables) as shown below:
In the Binary protocol (default in the table and in the system), the characters are transparently
transferred.
The XonXof protocol defines the ports for ASCII and automatically supports the Xon and Xoff
control characters. If you use Xon/Xof, make sure that the data that is sent does not conflict
with the Xon/Xof values (the data should not include the values 10/13).
D-10
Appendix D: User Defined Local Ports
PrtRat Variable
The PrtRat variable defines the port data speed. It may receive one of the options that appear
in the User Port Baud Rates table as shown below:
If the RTU acts as DTE, then the Ready and NotRdy functions control the DTR signal. If the
RTU acts as DCE, then these two functions control the CTS signal.
The default mode of operation is that the system software automatically controls the
communication. Calling the NotRdy function will reset either the DTR or CTS signal. Calling
the Ready function will return the automatic mode of operation (controlled by the system
software).
Contrary to the Send operation which sends the job to the system software for execution, the
Ready/NotRdy functions affect the port immediately. This means that, if you need to perform
an operation between Ready and NotRdy, use a delay timer to ensure the execution of the Send
operation.
D-11
Appendix D: User Defined Local Ports
Note: Before calling the Ready function, you must call the GetChr function once in order to
enable control of the DTR signal.
Database Definitions
Two value variables (STATE and RESULT) are used in the process programming. They are
defined in a User table named Internal Variables.
D-12
Appendix D: User Defined Local Ports
Four constants, Header, KeyIn, OutSt, and Finish, which define the STATE variable, are also
used in the process programming. They are defined in a Constant table named Internal
Constants.
D-13
Appendix D: User Defined Local Ports
• MAIN – The main process calls the sub-processes as a function of the STATE variable.
• HeadrP – Sends a header and instructions to the screen.
• KeyInP – Positions the cursor and displays the typed number after each digit.
• OutP – Sends a message to the screen including the result.
Main Process
The main process controls the RTU local communication. The main process checks the
STATE variable and jumps to a subprocess accordingly. First, the process sends the headers to
the screen. Then, it receives the number entered by the end user and multiplies it by an internal
factor. Finally, the result is sent to the screen, and the STATE variable is reset to 0.
Note that the process is serial and any subprocess will not be performed until the previous one
has been executed (by the STATE variable that is advanced after the subprocess execution).
D-14
Appendix D: User Defined Local Ports
After performing one complete cycle of receiving, computing, and displaying the result, the
STATE variable is compared to the Finish variable to start another cycle.
STATE HeadrP
J_Hadr = (JSP)
Header
STATE KeyInP
J_KyIn = (JSP)
KeyIn
STATE OutP
J_Outp = (JSP)
OutSt
STATE GetChr
Reset = (CALL)
Finish USER_1
PrxFlg,0 STATE
(MOVE)
Header
PrxNum,0
(RST)
HeadrP Subprocess
This subprocess sends messages (headers) to the screen by the following rungs:
USER_1
(SEND)
[2J
[1;25H\
THIS IS A DEMO SCREEN
[3;0H\
Enter Number:\
PTxFlg,0 STATE
(MOVE)
KeyIn
The first row in the window clears the screen. The second row positions the cursor in column
25 of the first line of the screen. The third row includes the header to be displayed. The fourth
D-15
Appendix D: User Defined Local Ports
row positions the cursor at the beginning of line 3 of the screen, and the last row includes the
message “Enter Number :” to be displayed.
The second rung checks the PTxFlg,0 (indicates the flag of port USER_1) variable. If it is 1, it
means that the messages have been taken for transmission to the port, and the STATE variable
is assigned the KeyIn value.
KeyInP Subprocess
This subprocess receives each key press (checks whether it is a numeric or non-numeric key)
and displays the digits typed in. Then, upon receiving the CR character, the number is
multiplied by the FACTOR constant. At this stage, the STATE variable is advanced. The
subprocess comprises the following rungs:
GetDgt
(CALL)
(1)
USER_1
[5;0H<PRxNum,0>\
STATE
(MOVE)
OutSt
The first rung (1) calls the GetDgt function in order to read a digit into the PRxNum variable.
The second rung (2) checks that a digit has been received (PRxFlg,0 is true) and that it is a
digit by comparing the value of the received digit (PRxChr,0) to ChrDgt. If so, then the
accumulated number PRxNum is sent to the screen.
The third rung (3) checks if a CR character has been received (PRxFlg,0 is true and the value
of the received character is Chr_CR). If it so, then the received number, accumulated in
PrxNum, is multiplied by the FACTOR constant, the result is inserted into the RESULT
variable, and the STATE variable is advanced.
D-16
Appendix D: User Defined Local Ports
OutP Subprocess
This subprocess sends the result to the screen. It comprises the following rungs:
USER_1
(SEND)
[7;0H\
INPUT NUMBER MULTIPLIED BY FACTOR = <FACTOR>
EQUALS TO <RESULT>.
STRIKE ANY KEY TO CONTINUE
PTxFlg,0 STATE
(MOVE)
Finish
D-17
Appendix E: User Defined MDLC
Communication
The MOSCAD system uses the MDLC protocol, based on the OSI (Open Systems
Interconnection) model published by ISO. The protocol comprises the seven recommended
layers adapted for SCADA and supports all Toolbox functions. It also supports the following
functions:
In addition, any cross-section of any table can be downloaded from or uploaded to the central.
The central may download/upload any number of rows, columns, a complete table, and one or
more columns in one or more rows if they meet specific conditions.
This type of communication is almost transparent to the process in the RTU. The definition of
the database tables cross-sections to be included in each transmission is performed by the Data
Transaction Selectors.
The central may condition the data transfer from the RTU on the COS (Change of State) flag.
The RTU will transmit only the row numbers of the required tables in which the COS flag is
true, and the relevant data. When the data is transferred to the central, the RTU resets the COS
flag to 0.
The COS flag is a single bit for every row of all tables. It may be true in the following cases:
• Any change in one of the table entries, defined as Discrete Input, will automatically set the
COS flag of the appropriate row.
• In table columns defined as Value Input/Scaled Analog Input, any change in the last
reported data that is greater than COS delta (defined for every Value Input in the I/O Link)
will automatically set the COS flag of the appropriate row. The user can also set and reset
the COS flag in an application, using services provided by the ‘C’ Toolkit.
• By applying the Ladder Diagram operators on the COS Name variable, the user can define
the conditions (such as, calculated variables) to set/reset the COS flag.
E-1
Appendix E: User Defined MDLC Communication
To set the COS flag in a single/multi-column table, use the following rung:
<Name>,I
( L )
<Name> is the COS Name that you have assigned to the single/multi-column table. I is an
index that indicates the row of the relevant COS flag.
In previous versions of the Toolbox, the COS flag was supported by means of the SetCOS
function. From version 1.74 of the Toolbox, the COS flag is supported by the COS Name
variable. When upgrading previous versions, the SetCOS function is still supported.
Remember that if the relevant rungs of the SetCOS function are deleted, you will have to use
the COS Name variable to handle the COS flag.
E-2
Appendix E: User Defined MDLC Communication
Central-to-RTU Broadcast
The system enables simultaneous data transmission to a group of RTUs. This type of
communication, called Broadcast, should modify the RTUs’ mode of operation or serve as a
trigger for a specific operation. The broadcast command includes the necessary information
concerning the addressed RTUs and the command itself.
The broadcast may be transmitted over a specific link or all links in the system. The broadcast
message includes a condition (qualifier). The broadcast is received by all RTUs on the
specified link(s). Only the RTUs that fulfill the condition will refer to the broadcast (the other
RTUs which do not fulfill the conditions will ignore the broadcast). An unlimited number of
RTU groups may be created by defining different qualifiers. The qualifiers are defined in the
Qualifiers table (reserved by the system as one of the User Tables).
Since the value of the qualifier can be dynamically changed, the composition of the RTU group
can vary accordingly. Each RTU checks the validity of the qualifier; if the condition is valid,
the RTU automatically belongs to the group.
The broadcast command then assigns a value to a specific variable in the Qualifiers table in all
RTUs that belong to the group.
Broadcast reception does not require any support in ladder diagram; it is sufficient to define the
qualifiers in the Qualifiers table to be used by the user process.
Since the IP Gateway does not know how many RTUs will belong to the group, there is no
acknowledgment for this type of communication. Therefore, you should use broadcasts only
when a synchronized operation is to be performed on a group of RTUs.
Logically, the broadcast may be described in the following manner (Qual1 and Qual2 are two
variables defined in the Qualifiers table):
The Qual2 variables of all RTUs having a Qual1 variable equal to x, receive the value of y. The
y value may be used to control the RTUs’ mode of operation or as a trigger for a specific
operation. You may create any number of groups by defining different qualifiers in the
Qualifiers table. Each RTU may belong to more than one group, according to the defined
qualifiers.
Since all variables and constants required for this type of communication are already included
in the appropriate System tables, the user may build the applicable communication process
through the process programming, using rung sequences. The user should specify the data to be
transmitted and the name of the addressed RTU.
E-3
Appendix E: User Defined MDLC Communication
• Normal fashion – the order of the transmitted frames is not guaranteed. The order of the
received frames may be different from the order of the transmitted frames.
• Sequential fashion – the order of the received frames is identical to the order of the
transmitted frames.
Variables/Constants
The user can control the MDLC two-way communication between RTUs (burst and broadcast)
and event reporting to the central by using the appropriate variables/constants and functions
provided by the system (see Communication Functions available via the CALL Function in this
chapter).
The variables and constants are from the following database tables: Site table, RTU-to-RTU
Comm Buff, RTU-to-RTU Controls, Tx Event, Tx Burst, and Event Definitions.
• SndFrm (Send Frame): Transmission of an MDLC frame initiated by the RTU to another
RTU. Answer is required. Appropriate when the data is being relayed through other sites
(i.e. when Source/Destination sites are not the From/To sites.)
• AnsFrm (Answer Frame): Answering of an MDLC frame in response to another RTU
transmission. Appropriate when the data is being relayed through other sites (i.e. when
Source/Destination sites are not the From/To sites.)
• RcvFrm (Receive Frame): Reception of an MDLC frame transmitted by another RTU.
• TxFrm (Transmit Frame): Transmission of an MDLC frame initiated by the RTU to
another RTU. No answer is required. No retries are initiated at the application level.
Usually appropriate when the data is being sent directly to the destination site.
• TxEvnt (Transmit Event): Transmission of an event to the central (legacy central) using
Minisession communication with retries (but not necessarily in event order.)
• EvntSq (Transmit Event Sequential): Sequential transmission of an event to the central
(legacy central) using frame sequence communication. No Ack is sent.
• Burst: Transmission of data to the central. An ACK is only sent if the appropriate Data-
Ack from central Advanced Parameter is set.
• SndSeq (Send Sequence): Sequential transmission of MDLC frames initiated by the RTU to
another RTU. No Ack is sent.
E-4
Appendix E: User Defined MDLC Communication
Site Table
In the Site table, you should define all the RTUs which perform RTU-to-RTU communication,
and the centrals to which you want to send events. The Site table includes four columns/fields,
as detailed below:
• Link ID – the link through which the RTU is connected to the network. Pressing [Enter]
when the cursor is in this field will display a choice list.
• ComFal – indicates if communication to this site exists. When the site comes up or when
communication to the site is initiated (SndFrm, Burst, SndSeq, GetSeq, BrstSq), the
ComFal bit is set to ‘0’. If no ACK is received, even after retries at all level of
communications have been exhausted, the ComFal bit is set to ‘1’(SndFrm, Burst only).
Any subsequent communication with the same site that succeeds resets the ComFal to ‘0’
(SndFrm, Burst, SndSeq, GetSeq, BrstSq). Note that in cases of serial transmissions to the
same site, the ComFal will continuously be reset, and the Error bit in the SndFrm routine
should be used. (See Transmit Mode below.)
E-5
Appendix E: User Defined MDLC Communication
The site names defined in this table should be used when writing rungs. The system will
communicate with the RTUs according to the Site IDs and Link IDs defined in this table.
The first row in the table, Cntral (for central), is the system default central (legacy central
only). If the system includes several centrals that are designated to receive events, they should
be defined in this table: the central symbolic name and the Site ID and Link ID of the RTU/FIU
connected to that central.
In this table, you may also define names of groups for transmitting broadcasts (do not confuse
RTU-to-RTU communication broadcast with broadcasts that are sent from the central to a
group of RTUs according to qualifiers). To define a broadcast, define the Site ID as 0. The
Link ID should be the link name to which the broadcast is to be transmitted. To send a
broadcast to all RTUs in the system, the Link ID should be ALL_LINKS (selected from the
choice list).
When Site ID = 0, all RTUs in the specified link (or all RTUs in the system if Link ID =
ALL_LINKS) will receive the transmitted frame. You may add conditions to the transmitted
frame by using the variables of the Qualifiers table. In this case, only the RTUs that fulfill the
conditions will refer to the transmitted frame.
When using the Site_ID variable for setting the DstSit or for comparison with SrcSit, the
Database Table Monitoring mode will display the Site_ID index in the Site table and not its
real value. This is different from other variables in order to make the communication more
efficient without wasting time on the conversion of indices to names.
E-6
Appendix E: User Defined MDLC Communication
RTU-to-RTU Communication
RTU-to-RTU communication consists of transferring information between an application
defined for one RTU and another application defined for a parallel RTU. When configuring the
RTU application, the user should update the applicable tables previously defined.
The RTU-to-RTU communication includes a frame transmission (of Origin type or FrmSeq –
see Receive Variables in this chapter) from RTU A to RTU B and a frame transmission (of
Answer type – see Receive Variables in this chapter) from RTU B to RTU A, with or without
data as an acknowledgment.
Note that you may also send a broadcast from RTU A to a group of RTUs. There is no
acknowledgment.
E-7
Appendix E: User Defined MDLC Communication
Transmit Variables
DstSit (Destination Site): The name of the addressed RTU, as defined in the Site table. The
DstSit variable is used only by the SndFrm and SndSeq functions.
Tx_Len (Transmit Length): The number of values to be transmitted. This number must be
between 1 and the number of values defined in the buffer. After the frame is taken by the
system, the system clears Tx_Len variable to 0. Otherwise, it means that the queue is full.
TxBuf (Transmit Buffer): Up to 80 variables that are the transmit buffer. Use the MOVE or
CPY operators to insert the variables into the TxBuf (you may use indexes).
Receive Variables
ScrSit (Source Site): After calling the RcvFrm or GetSeq functions, this variable receives the
name of the transmitting RTU. The site identification is performed by comparing the RTU
name (in the SrcSit variable) to the RTU names defined in the Site table (see Site Table in this
chapter).
FrmTyp (Frame Type): When a frame is received, this variable is updated according to the
type of frame received. There are six types of frames in the RTU-RTU Frame Types table (one
of the Constants Tables), as follows:
E-8
Appendix E: User Defined MDLC Communication
• Origin – For a frame that has been transmitted by the SndFrm function from the other
RTU. An answer is required.
• Answer – For a frame that has been transmitted by the AnsFrm function from the other
RTU. No answer is required.
• GrpCal – For a frame that has been transmitted by the TxFrm/ SndFrm function from the
other RTU. No answer is required.
• Messag – For a frame that has been transmitted by the TxFrm function from the other
RTU. No answer is required.
• NO_Ans – When the RcvFrm function is activated and the addressed unit has not
answered, SrcSit receives the index of the unit and Rx_Len is reset to 0.
• FrmSeq – For a frame that has been transmitted by the SndSeq function from the other
RTU.
Rx_Len (Receive Length): The number of values received (up to 80). When the frame is
received by the RcvFrm or GetSeq functions, the Rx_Len variable is set to the number of
values received by the buffer. If no frame is received Rx_Len is reset to 0.
E-9
Appendix E: User Defined MDLC Communication
Transmit Mode
The transmission is performed through the RTU-to-RTU Controls and RTU-to-RTU Comm
Buff tables. The user should write rungs to set the destination site name (DstSit variable), the
Tx_Len (number of values to be transmitted in the frame), and move the values to be
transmitted by the MOVE/CPY operators, to the corresponding variables in TxBuf.
SndFrm
( CALL )
<Error>,n
After calling the SndFrm or SndSeq functions, the Tx_Len variable should be checked. If this
variable has been reset to 0, it means that the frame has been queued for transmission. If it has
remained the same, it means that the frame has not been taken for transmission because the
internal buffers are full. In this case, you should retry sending the frame after a period of time
(by using a timer).
In case of failure, such as faulty addressed RTU, or if no Ack is received, the bit (<Error>,n)
specified by the user below the CALL operator is set to ‘1’ to indicate a failure. Note that this
bit is reset to ‘0’ at the beginning of the transmission routine. You should select the name of
the variable (after defining it in the database). You also can define a column for these error bits
and use an index (e.g. Err,x) to indicate an error for each RTU.
This Error bit is useful when several transmissions are to be sent to the same site. Because the
ComFal bit defined in the Site table for each site is reset to 0 each time transmission is
initiated, the Error bit in the SndFrm function can be used to track the status of each
transmission to the site, rather than the status of the site itself. Otherwise, the behavior of the
error bit is exactly like that of the ComFal bit (see Site Table above).
E-10
Appendix E: User Defined MDLC Communication
Receive Mode
The receive function is carried out by using one of the following rungs:
RcvFrm
( CALL )
GetSeq
( CALL )
When a frame is received, the Rx_Len variable is set by the system to the number of values in
the received frame, and the SrcSit variable is set to the name of the transmitting site. The
transmitting site name (SrcSit) should be checked by comparing it (using comparator elements)
to the site names defined in the Site table. The frame type should be compared to the frame
types defined in the RTU-RTU Frame Types table.
If the transmitting site is not defined in the Site table, the frame is received by the system and
SrcSit = -1.
To answer a call initiated by another RTU, the answering function is carried out by using the
following rungs:
DstSit
( MOVE )
SrcSit
Tx_Len
( MOVE )
#1
AnsFrm
( CALL )
DstSit should receive the SrcSit from which the Origin frame has been sent. Tx_Len should be
assigned the value of 1 even if there is no data to transmit (used as an acknowledge).
The AnsFrm function is identical to the SndFrm function except that the error bit name is not
included.
The answer frame is transmitted to the site that sent the frame of Origin type.
E-11
Appendix E: User Defined MDLC Communication
Every transmitted frame is assigned a sequential number, which is used at the receiving site to
re-arrange the frames by means of an internal buffer.
Following is an example of a site that transmits frames in Sequential Communication, to Site2
and Site3. A counter is included in TxBuf,0 to allow the application at the receiving site to
check the numbering of the received frames.
The rungs at the transmitting site are as follows:
Cnt1
CntUp ( CTU )
Cnt1 Send
= ( JMP )
defBIG
( RET )
Tx_Len
Send ( MOVE )
#10
DstSit
( MOVE )
Site2
PushB1 SndSeq
( CALL )
PushB2 DstSit
( MOVE )
Site3
SndSeq
( CALL )
P1
( RST )
TxBuf,0
( CTU )
TX Event Table
Transmitting an event (including the data and time of occurrence) to a central (legacy central
only) is performed by the variables defined in the Tx Event table.
E-12
Appendix E: User Defined MDLC Communication
Event: This variable should be loaded with the name of the event to be transmitted by using the
MOVE operator. The event names are defined by the user in the Event Definitions tables. After
calling the TxEvnt/EvntSq function, check if this variable has been reset to 0. If it is reset, it
means that the event has been sent. If not, try to resend it after a period of time (by using a
timer).
EvIndx (Event Index): This index, attached to the event, provides additional information on the
event. For example, refer to a pump table of five rows defined for five pumps. If a failure
(defined as PmpFal) has occurred then the EvIndx can be used to indicate the row number
(pump) that has failed.
ESite (Event Site ID): This variable should be loaded with the name of the central site to which
the events are to be transmitted. If the system includes several centrals, then the Site ID and
Link ID of the RTU/FIU to which each central is connected, should be defined in the Site table.
If you wish to transmit only to the active central (default central), you should use the Cntral
name that appears in the first row of the Site table, and check that DefC_Y=1 and not 0 (legacy
central only).
EPrtID (Event Port ID): The central is usually connected to one of the FIU ports (in some
cases directly to an RTU). Since the event is transmitted to the FIU address, the port should
also be specified. This variable should be loaded with one of the following values: Comp_1 or
Comp_2 (refer to the MDLC Port ID’s table in the Constants Tables menu). If the ESite
E-13
Appendix E: User Defined MDLC Communication
variable is defined as the default central (the first line in the Site table), you should not refer to
the EPrtID variable (legacy central only).
E-14
Appendix E: User Defined MDLC Communication
Use the MOVE operator to move an event name to the Event variable prior to calling the
TxEvnt/EvntSq function.
Do not use the first entry (index=0), since after calling the TxEvnt/EvntSq function, this value
is reset by the system to 0, indicating that the event has been transferred to the transmission
queue.
TxEvnt Function
To send an event, you should enter the values into the Tx Event table variables by the MOVE
operator and call the TxEvnt function – refer to the following rungs as an example.
ESite
( MOVE )
Cntral
Event
( MOVE )
PmpFal
EvIndx
( MOVE )
I
DefC_Y TxEvnt
(CALL)
<Error>,x
In this example, the I index indicates the number of the failed pump.
If all events are to be transmitted to the same central, then you should activate the first two
rungs only once since the ESite and EprtId variables will not change.
E-15
Appendix E: User Defined MDLC Communication
After calling the TxEvnt function, you should check that the Event variable has been reset, as
indication that the event has been taken by the system for transmission. If the Event variable
has not been reset, it means that the event has not been taken for transmission (all buffers are
full). In this case, you should try resending the event after a period of time (by using a timer).
The RTU sends the event through the communication network to the central and receives an
acknowledgment for the event from the central.
If the event has not been acknowledged after a specific number of retries, the system will set a
bit (<error>,n; defined by the user), to indicate that the event has not been acknowledged by
the central.
If the events must be transmitted in order, use the EvntSq function instead of TxEvnt. EvntSq
uses frame sequence communication. No Ack is sent. Note: Unlike TxEvnt, the EvntSq
function does not take any parameters (see CALL in the fourth rung above.)
BSite: The name of the central site (IP Gateway) to which the data is to be transmitted. If the
system includes several centrals, then the Site ID and Link ID should be defined in the Site
table.
BPrtID: If the central (legacy central only) is connected to one of the FIU ports (in some cases
RTU). Since the data is transmitted to the FIU address, the port should also be specified. This
variable should be assigned one of the following values: Comp_1 or Comp_2 (refer to the
MDLC Port ID’s table in the Constants Tables menu). If the BSite variable is defined as the
default central (the first line in the Site table), you should not refer to the BPrtID variable
(legacy central only).
BStat: After calling the Burst function, you should check the BStat variable. When the data
burst is taken for transmission into one of the system buffers then BStat=0. When there is no
free buffer, the burst data will not be transmitted and BStat=1. If the burst data is not
transmitted, try to resend it after a period of time (by using a timer).
E-16
Appendix E: User Defined MDLC Communication
In case of a burst transmission, the RTU can transmit data equivalent to one complete row of a
table or multiple rows of the same scan that have fit in one communication buffer. The table
name and row number must be specified in the process programming.
Burst Function
To transmit data from an RTU to the central you should specify the name of the central to
which the data is to be transmitted, and define the data to be transmitted (table symbol and row
number) – refer to the following rungs as an example.
BSite
( MOVE )
Cntral
DefC_Y Burst
( CALL )
Tbl,I
Tbl is the data table symbol and I is the row number index.
After calling the Burst function, check the Bstat variable to see if it equals ‘0’. If Bstat=0, that
does not necessarily mean that the burst transmission has been received by the central. To
ensure that the burst transmission has been received, check the ComFal bit in the Site table
after a period of time. If ComFal=1, it means that the central has not received the burst
transmission. If ComFal=0, it means that the central has received the burst transmission.
Note that the Burst function will only raise the ComFal bit if the Application Data-Ack from
Central parameter (in Site Configuration Advanced Parameters) is enabled.
The line of data to be transmitted (table, row #) is typically much smaller than the size of a
frame (160 bytes). Therefore the system has the ability to send multibursts, i.e. several lines of
data in one burst, to a given unit. The actual transmission will take place either:
3. when the scan time is so long that it exceeds the timeout for sending (as defined by the
system.)
The IP Gateway can handle single or multibursts without any special notification.
The BrstSq function, like the Burst function, can send single or multibursts, though it differs
from Burst in that it does not send Ack and cannot raise the ComFal bit.
E-17
Appendix E: User Defined MDLC Communication
GetSeq
( CALL )
Site A initiates, at definite intervals, a value transmission to Site B. Site B, after receiving the
value, is supposed to transmit back the same value to Site A.
It is possible to get a printout of the number of transmissions and receptions that Site A has
performed at any time by pressing the PRINT push-button.
The RESET push-button allows the restarting of the application (as well as when the system
has stopped).
Site A Database
Internal Values
The following value variables are used in the process programming:
• BsyTry – counts the number of retries if the value is not taken for transmission (no free
buffers in the transmit queue)
These variables are defined in one of the User tables, named Internal Variables table
(“Integer Value” data type).
E-18
Appendix E: User Defined MDLC Communication
Communication Constants
Three constants, #0, ONE, and N are also used in the process programming. They are defined
in one of the Constant tables, named Comm Constants table.
Communication Timers
Two Seconds timers are used in the process programming, as follows:
• TryDly – timer of 1:00 second used in case the value has not been taken for transmission
These timers are defined in one of the User tables, named Comm Timers.
E-19
Appendix E: User Defined MDLC Communication
Discrete Inputs
Two discrete inputs, RESET and PRINT, are used in the process programming. They are
defined in one of the User tables, named Buttons table.
Discrete Outputs
The following discrete outputs (LEDs), defined in one of the User tables, named LEDs table,
are used in the process programming:
• BsyFal – indicates that the value has not been taken for transmission
Sites
Site B (the name of the site that Site A communicates with) should be defined in the Site table
(one of the System tables).
E-20
Appendix E: User Defined MDLC Communication
The Prepar rung checks if a new cycle is to be started according to the Off Delay timer of
30:00 seconds. The transmission of another value is disabled by this timer during the
transmission cycle. The rung also verifies that no failures have occurred by comparing TxVal
and RxVal. If they are not equal, it means that a failure has occurred.
If a new value is to be transmitted, then TxVal is advanced by the CTU operator and its value
is assigned to TxBuf,0 for transmission. Site_B is moved to the DstSit variable to specify the
destination site. Tx_Len receives the value ONE (one value is to be transmitted), and BsyTry
receives the value of N, which indicates the number of retries in case the value is not taken for
transmission.
E-21
Appendix E: User Defined MDLC Communication
Tx_Len BsyTry
= ( RST )
#0
TxCntr
( CTU )
Tx_Len TryDly
≠ ( DOF )
#0
TxOn
( )
The Trnsmt rung calls the SndFrm function until BsyTry is 0 (the value has been transmitted).
The TxOn LED is lit by the relay on element. The rung checks that the TryDly is not on (delay
between retries). The transmission is then enabled by calling the SndFrm function. TxFail will
be set to ‘1’ in case of failure. BsyTry is decreased (the value has been transmitted once).
If the value has been taken for transmission (Tx_Len=0), BsyTry is reset to 0 (to prevent
calling the SndFrm function) and TxCntr (counts the number of transmissions) is advanced.
If the value has not been transmitted (Tx_Len≠0 ), the Off Delay timer TryDly is activated.
If all retries have been performed (BsyTry=0) and the value has not been transmitted
(Tx_Len≠0), the BsyFal LED is lit and Tx_Len is reset to 0.
RcvFrm
Receiv ( CALL )
RxCntr
( CTU )
The reception is carried out by calling the RcvFrm function. If a value has been received, and
Rx_Len is not 0, the SrcSit (transmitting site) is Site_B, and the received frame is of Answer
type (FrmTyp=Answer), then RxBuf,0 (the received value) is moved into the RxVal variable.
Rx_Cntr is advanced.
E-22
Appendix E: User Defined MDLC Communication
RESET
( SCAN )
RESET Report
/ ( JMP )
TxVal
( RST )
RxVal
( RST )
TxCntr
( RST )
RxCntr
( RST )
BsyTry
( RST )
Tx_Len
( RST )
BsyFal
( U )
TxFail
( U )
PRINT USER_1
Report ↑ ( SEND )
TxOn
( SCAN )
The buttons are scanned by the SCAN operator. If the RESET button is pressed, all variables
(TxVal, RxVal, TxCntr, RxCntr, BsyTry, Tx_Len, and Rx_Len) are reset to 0. If the PRINT
button is pressed, the message in the window will be sent to the screen. Note that since there
are no codes in the window, the message will be displayed in scroll mode.
Site B Database
Internal Values
The BsyTry value variable is used in the process programming. This variable counts the
number of retries in case the value is not taken for transmission. It is defined in one of the User
tables, named Internal Variables table.
E-23
Appendix E: User Defined MDLC Communication
Communication Constants
Three constants, #0, ONE, and N are also used in the process programming. They are defined
in one of the Constant tables, named Comm Constants table.
Communication Timers
A Seconds timer, TryDly, is used in the process programming. This timer is of 1:00 second and
is used in case the value has not been taken for transmission. It is defined in one of the User
tables, named Comm Timers table.
Discrete Outputs
The following discrete outputs (LEDs) are used in the process programming:
• BsyFal – indicates that the value has not been taken for transmission
These discrete outputs are defined in one of the User tables, named LEDs table.
E-24
Appendix E: User Defined MDLC Communication
Sites
Site A should be defined in the Site table (one of the System tables).
E-25
Appendix E: User Defined MDLC Communication
BsyTry RcvFrm
Receiv = ( CALL )
#0
The first rung checks that the unit is not transmitting (BsyTry=0) before calling the RcvFrm
function. Then, if Rx_Len≠0 (a frame has been received) and the received frame is of Origin
type, then the received value (in RxBuf,0) is assigned to TxBuf,0 (for transmission, Site B
transmits back to Site A the same value). Tx_Len is set to ONE and BsyTry is set to N (10).
Tx_Len BsyTry
= ( RST )
#0
Tx_Len TryDly
≠ ( DOF )
#0
TxOn
( )
TxOn
( SCAN )
The Trnsmt rung transmits the value until BsyTry is 0. The TxOn LED is lit by the relay on
element. The rung checks that TryDly is not on (delay between retries). The transmission is
then enabled by calling the AnsFrm function. BsyTry is decreased (the value has been
transmitted once).
E-26
Appendix E: User Defined MDLC Communication
If the value has not been transmitted (Tx_Len≠0), the Off Delay timer TryDly is activated.
When the timer is on, the value is not transmitted (because of the Normally Closed element
applied on TryDly).
If all retries have been performed (BsyTry=0) and the value has not been transmitted
(Tx_Len≠0), the BsyFal LED is lit and Tx_Len is reset to 0.
E-27
Appendix F: MDLC Communication Protocol
The MDLC communication protocol is based on the OSI (Open Systems Interconnection)
model published by ISO. The protocol comprises the seven recommended layers adapted for
SCADA, in which every RTU is simultaneously a distributed control unit and a communication
node serving itself as well as other units.
The protocol is efficient for transferring small quantities of information, such as measurements
and discrete statuses, as well as for transferring large quantities of information, such as
downloading software applications, including database, process, etc.
SITE A SITE C
APPLICATION APPLICATION
PRESENTATION PRESENTATION
SESSION SESSION
TRANSPORT TRANSPORT
SITE B
The following subparagraphs describe the seven layers of the protocol, shown in the figure
above:
• Physical layer.
• Link layer.
• Network layer.
• Transportation layer.
• Session layer.
• Presentation layer.
• Application layer.
F-1
Appendix F: MDLC Communication Protocol
Physical Layer
The physical layer comprises the various communication ports and their associated software.
The software contains all the specific handling required by the communication ports and
provides an identical interface to the link layer. In this way, it is possible to define a standard
entity for the link layer.
The software is flexible and adapts itself to the number of ports and their various types as
defined by the user, but the possibility of defining a large number of ports of various types
does not impair software efficiency.
The physical ports may also be configured to provide hard-copy printout to a printer.
Link Layer
The function of the link layer is to ensure proper communication over a single communication
channel. The information is stored in variable-length frames where the link layer protocol
contains the following fields (for a DATA frame):
During reception, the address is identified by hardware (and not by software) at the physical
level, in order not to spend software time on checking words that are not intended for that
specific RTU. This preliminary screening enables reception of at least four different addresses
per RTU: single address to access a specific RTU, broadcast address to access a group of
RTUs, and two additional addresses enabling various communication operations.
A link entity associated with a channel may receive several types of information: information
that is intended for that specific RTU and information passing through it and is designated to
other RTUs. The link entity transmits an acknowledgment (ACK) to each RTU according to
the DATA received from it. The ACK word is separated from the DATA word, since the RTU
receiving the DATA is not necessarily the same RTU to which the ACK is addressed.
The ACK word enables the receiving site to identify the missing frames and retransmit only
those frames, thus saving air time by not repeating all the information transmitted. The CRC is
32 bits or 16 bits per CCITT definition.
The frame synchronization (FLAG), at the beginning and at the end of each word, is
transmitted in different ways for different physical ports.
F-2
Appendix F: MDLC Communication Protocol
Network Layer
A system is defined as a network whenever it uses more than one communication medium,
such as wireline and/or various radios, as well as Store & Forward repeaters, all on a single
frequency. The communications in the network occur among nodes, which physically may be
RTUs, centrals, or repeaters.
The network layer and its protocol are responsible for routing packets in the network via the
various nodes to enable communication between any two sites in the network.
It is possible to access any application anywhere in the system from any port in the system,
such as the RS-232 ports of the various RTUs, for purposes of definition, monitoring,
modification, diagnostics, error logging, etc.
Transportation Layer
The transportation layer ensures END-to-END completeness of the information transmission
(between the RTU that has transmitted the message and the one that should receive it). This
layer transfers the DATA in an orderly fashion to the session layer above it. The protocol of
this layer assigns sequential numbers to the packets (independent of the numbers assigned by
the link layer) and transmits an ACK word to indicate that the DATA is complete and all
packets are transferred in the appropriate order to the layer above.
The transport layer performs multiplexing, thus enabling several session entities (logical
channels) to operate via one physical port or several physical ports. It is possible to define any
number of logical channels, regardless of the number of physical channels defined.
Session Layer
The session layer enables the definition of any number of entities (instances), which are
capable of conducting a session with a parallel entity in another RTU, a central, or a sub-
central. These entities and their protocol simultaneously conduct several sessions between any
two sites, i.e., to simultaneously run several applications such as data transfer, diagnostics,
monitoring, etc., without interference between the applications. The session handling includes
the following:
• Start session.
• Synchronization of message direction.
• End session.
• Abort session.
• Re-synchronize session.
The session layer also provides for transfer of short one-frame messages from one site to the
parallel application at another site without the need to start a session.
F-3
Appendix F: MDLC Communication Protocol
Presentation Layer
This layer handles the presentation of the DATA received from the various applications within
the various packets. It performs the following:
Application Layer
This layer contains all the communication applications required for maintaining a SCADA
system, as detailed below:
a. Application enabling bi-directional data transfer upon request from the databases of the
sites.
b. Software for downloading configuration to the sites:
• I/O modules definition.
• Communication ports definition.
c. Software for downloading and monitoring application software (defined by the user in
the ladder diagram language) to the sites, including:
j. Application for downloading various blocks (e.g. site configuration, ladder applications,
network configuration, phone book, “C” blocks, third party drivers, x.25 conversion
table, IP conversion table, etc.)
F-4
Appendix G: ACE1000 MODBUS
Configuration
However, the SCADA generally communicates with the ACE1100 FEP, and not directly with
the ACE1000 RTU.
Although the RTU can technically be connected to PLCs as a MODBUS master, it is not
relevant in the ACE1000 concept.
Because the FEP is not connected to PLCs, configuration as MODBUS master is not relevant
in the ACE1000 concept.
MODBUS Address
In an ACE1000 system, the SCADA communicates with ACE1000 units using the MODBUS
address assigned during initial system configuration. MODBUS Address 1 is always assigned
to the ACE1100 FEP. Each ACE1000 RTU is automatically assigned the next address,
starting with MODBUS Address 2. The MODBUS Address is displayed in the General
dialog box with the site Name and Site ID parameters.
G-1
Appendix G: MODBUS Configuration
In a mixed system, the MODBUS Address for a MODBUS slave RTU is assigned manually.
See ACE1000 as MODBUS Slave.
The SCADA can communicate with an RTU directly or via the FEP.
Using the proper function codes/MODBUS library APIs, the SCADA can access the ACE1000
unit data (I/Os and system values) directly in its registers. This is unlike the ACE3600 data
which is accessed using a register mapping which corresponds to the ACE3600 database table,
row and column.
Note: The MODBUS Master cannot access the ACE1000 RTU database’s user bits, values and
floats.
The tables below list the register locations of the specific ACE1000 data. Table G-1 details
the register location of the specific ACE1000 I/O data. Registers are listed for I/Os on the
Main board, I/Os on the first instance of an I/O Expansion Module Type in the RTU, and I/Os
on the second instance of the same type. Table G-2 details the register location of system
values on the RTU.
I/O Data Register Location Register Location on I/O Register Location on I/O
(RTU Only) for Main Board Expansion Module Expansion Module
I/O (1st Instance) (2nd Instance of Same
Type)
DI Register 0 Register 3 Register 15
G-2
Appendix G: MODBUS Configuration
I/O Data Register Location Register Location on I/O Register Location on I/O
(RTU Only) for Main Board Expansion Module Expansion Module
I/O (1st Instance) (2nd Instance of Same
Type)
DO Back Register 1000 Register 1001 Register 1009
Indication
AI N/A Register 0 Register 8
DO Register 0 Register 1 Register 9
G-3
Appendix G: MODBUS Configuration
Note: Currently, an ACE1000 system can include up to 250 RTUs. In general, the SCADA
will poll a smaller number of RTUs (e.g. 10) at one time.
G-4
Appendix G: MODBUS Configuration
In an ACE1000 system, when the SCADA polls the FEP for data on existing RTUs, the
Comm. Status is returned in a MODBUS frame. The value is a bit mask of three bits. The
value can be one of:
The SCADA can also retrieve the Comm Status of individual RTUs from the FEP registers.
See Table G-4 for the RTU Comm Status register locations in the FEP.
Note: Only one ACE1000 port can be configured as MODBUS slave at any time.
In the figures below, the ACE1000 RTU serial RS232/RS485 ports are configured as
MODBUS slave (Connection type set to Modbus slave).
G-5
Appendix G: MODBUS Configuration
In the figure below, the ACE1000 RTU LAN port is configured as MODBUS slave
(Connection type set to Ethernet, Modbus Slave Protocols selected). In addition the
MODBUS Address is set in the ETH1 Advanced Configuration-> Modbus Slave tab).
G-6
Appendix G: MODBUS Configuration
In the figure below, the standard ACE1000 RTU Ethernet port configuration (Static LAN or
DHCP Client) is used for MODBUS master (Connection type set to LAN).
In the figure below, the ACE1100 FEP serial RS232 port is configured as connected (as a
MODBUS slave) to a SCADA center.
G-7