Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

ControlIT
Control Software and Control Builder M
Version 3.2
Product Guide
Product Guide
ControlIT
Control Software and Control Builder M
Version 3.2
NOTICE
The information in this document is subject to change without notice and should not be
construed as a commitment by ABB. ABB assumes no responsibility for any errors that
may appear in this document.
In no event shall ABB be liable for direct, indirect, special, incidental or consequential
damages of any nature or kind arising from the use of this document, nor shall ABB be
liable for incidental or consequential damages arising from use of any software or hard-
ware described in this document.
This document and parts thereof must not be reproduced or copied without written per-
mission from ABB, and the contents thereof must not be imparted to a third party nor used
for any unauthorized purpose.
The software or hardware described in this document is furnished under a license and
may be used, copied, or disclosed only in accordance with the terms of such license.
Copyright © 1999−2001 ABB 
All rights reserved.
Release: May 2002
Document number: 3BSE 026 333 R101 Rev A
TRADEMARKS
Registrations and trademarks used in this document include:
Acrobat® Reader® Registered trademark of Adobe Systems, Inc.
Adobe Registered trademark of Adobe Systems, Inc.
Control IT Trademark of ABB Automation Inc.
Engineer IT Trademark of ABB Automation Inc.
Ethernet Trademark of Xerox Corporation.
FOUNDATION Fieldbus Trademark of Fieldbus Foundation, USA.
HART Registered trademark of HART Communication Foundation.
INSUM Trademark of ABB Schaltanlagentechnik GmbH, Germany.
Industrial IT Solutions Trademark of ABB Automation Inc.
Microsoft Registered trademark of Microsoft Corporation.
ModBus Registered trademark of Modicon, Inc.
OPC Trademark of OPC Foundation.
Operate IT Trademark of ABB Automation Inc.
PROFIBUS Registered trademark of PROFIBUS International.
Windows Registered trademark of Microsoft Corporation.
Windows® 2000 Registered trademark of Microsoft Corporation. 
 
TABLE OF CONTENTS
About This Book
Intended Use of This Book..............................................................................................11
Target Group.........................................................................................................11
Purpose, Scope and Intended Use ........................................................................11
Use of Information, and Tip Icons...................................................................................12
Document Conventions ...................................................................................................12
Terminology.....................................................................................................................14
Related Product Guides ...................................................................................................18
Section 1 - Key Benefits
Introduction .....................................................................................................................19
Supported Controller Platforms ...........................................................................19
Control Software ..................................................................................................19
Control Builder M ................................................................................................20
Market Segments, Licenses and Control Builder Variants...................................21
New This Version ............................................................................................................22
Control Software ..................................................................................................22
Control Builder M ................................................................................................24
OPC Server for AC 800M/C ................................................................................25
Key Benefits−SCADA and PLC Solutions......................................................................25
Control Software−Binary and Basic Licenses .....................................................25
Control Builder M Basic and Standard ................................................................27
3BSE 026 333 R101 Rev A 5
Table of Contents
 
Key Benefits−Integrated Automation.............................................................................. 29
Control Software−Advanced Process Control License........................................ 29
Control Builder M Professional ........................................................................... 30
Professional, Standard and Basic......................................................................... 31
Integration with Other IndustrialIT Products................................................................... 32
Section 2 - Product Description
Overview ......................................................................................................................... 33
Control Software.................................................................................................. 33
Control Builder M................................................................................................ 33
Control Software ............................................................................................................. 36
Download ............................................................................................................ 36
I/O and Fieldbus Communication........................................................................ 37
Control Network .................................................................................................. 40
Other Communication Protocols ......................................................................... 42
Time Synchronization .......................................................................................... 44
Redundancy.......................................................................................................... 45
Alarm and Events Handling................................................................................. 46
Execution of Control Software ............................................................................ 47
Control Builder M ........................................................................................................... 48
Project Explorer ................................................................................................... 48
Programming Environment.................................................................................. 50
Online Help and Manuals .................................................................................... 53
Additional Software ............................................................................................. 54
OPC Server for AC 800M/C ........................................................................................... 56
OPC Server for AC 800M/C−Data Access (DA) Part ......................................... 57
OPC Server−Alarm and Event (AE) Part ............................................................ 58
AC 800M/C Connect....................................................................................................... 58
6 3BSE 026 333 R101 Rev A
Table of Contents
 
Section 3 - Technical Data and Performance
General ............................................................................................................................59
Prerequisites and Requirements ......................................................................................59
Software Requirements ........................................................................................59
Hardware Requirements.......................................................................................60
OPC Server Requirements ...................................................................................61Hardware Requirements When Running Several Products on Same PC.............62
Technical Data and Performance.....................................................................................63
Memory Consumption and Execution Times.......................................................63
Compilation and Download .................................................................................75
Hardware and I/O .................................................................................................76
MMS Communication..........................................................................................88
Control Network Clock Synchronization.............................................................92
OPC Server for AC 800M/C ................................................................................92
Section 4 - Ordering
Ordering Procedure .........................................................................................................95
Price Lists.............................................................................................................95
Ordering Example ...........................................................................................................98
Original Order ......................................................................................................98
Expansion of an Existing Installation ..................................................................99
Appendix A - Licenses
License Concept ............................................................................................................101
Control Builder M Licenses ..........................................................................................102
Expansion Licenses ............................................................................................102
Control Software Licenses.............................................................................................102
Base Licenses .....................................................................................................103
I/O Points ...........................................................................................................104
Examples of Control Software Licenses ............................................................105
OPC Server for AC 800M/C Licenses...........................................................................105
3BSE 026 333 R101 Rev A 73BSE 026 333 R101 Rev A 7
Table of Contents
 
AC 800M/C Connect Licenses...................................................................................... 105
AC 800M/C Connect License Concept.............................................................. 105
AC 800M/C Connect Tags ................................................................................. 106
Tag Counting Example ...................................................................................... 107
Example of Simple AC 800M/C System Configuration ............................................... 108
Example of Integrated AC 800M/C System Configuration .......................................... 109
Appendix B - Supported Hardware and I/O Systems
Controllers..................................................................................................................... 111
AC 800M .......................................................................................................... 111
AC 800C .......................................................................................................... 113
Advant Controller 250 ....................................................................................... 114
Adapters ........................................................................................................................ 117
I/O Families................................................................................................................... 120
S100 I/O .......................................................................................................... 121
S200 I/O .......................................................................................................... 122
200L I/O .......................................................................................................... 123
S800 I/O .......................................................................................................... 123
S900 I/O .......................................................................................................... 125
ABB Standard Drives......................................................................................... 126
ABB Engineered Drives..................................................................................... 126
I/O for Updating................................................................................................. 127
Appendix C - Library Objects Overview
System Library .............................................................................................................. 130
Data Types in SystemLib ................................................................................... 131
Functions in SystemLib ..................................................................................... 134
Function Block Types in SystemLib.................................................................. 143
Supervision Signals Library .......................................................................................... 150
Function Block Types in SignalLib ................................................................... 150
Basic Library for Process Objects................................................................................. 152
Function Block Types in ProcessObjBasicLib .................................................. 152
8 3BSE 026 333 R101 Rev A
Table of Contents
 
Extended Library for Process Objects ...........................................................................154
Function Block Types in ProcessObjExtLib ......................................................155
Control Module Types in ProcessObjExtLib .....................................................156
Support Control Library ................................................................................................157
Basic Control Library ....................................................................................................158
Data Types in ControlBasicLib ..........................................................................158
Function Block Types in ControlBasicLib.........................................................158
Simple Control Functions Library.................................................................................160
Standard Control Library...............................................................................................163
Control Module Types in ControlStandardLib...................................................164
Extended Control Library..............................................................................................171
Control Modules in ControlExtendedLib...........................................................172
Advanced Control Library.............................................................................................175
Control Module Types in ControlAdvancedLib.................................................176
Fuzzy Control Library ...................................................................................................177
Control Module Types in FuzzyLib ...................................................................178
Alarm and Event Library...............................................................................................182
Function Block Types in AlarmEventLib ..........................................................182
Control Module Types in AlarmEventLib..........................................................184
Batch Library.................................................................................................................185Equipment Procedure Element Control Module Types......................................185
Communication Library ................................................................................................186
Data Types in CommunicationLib .....................................................................186
MODBUS...........................................................................................................186
FOUNDATION Fieldbus ...................................................................................187
COMLI ...........................................................................................................189
MMS ...........................................................................................................189
SattBus ...........................................................................................................191
Siemens 3964R...................................................................................................192
Other Function Blocks .......................................................................................192
3BSE 026 333 R101 Rev A 93BSE 026 333 R101 Rev A 9
Table of Contents
 
Serial Communication Library...................................................................................... 193
Data Types ......................................................................................................... 193
Function Block Types ........................................................................................ 193
INSUM Library ............................................................................................................. 194
Introduction........................................................................................................ 194
Provided Services............................................................................................... 194
Data Types ......................................................................................................... 195
Function Block Types ........................................................................................ 196
MB300 Library.............................................................................................................. 197
Introduction........................................................................................................ 197
Function Block Types ........................................................................................ 198
INDEX
10 3BSE 026 333 R101 Rev A
 
About This Book
Intended Use of This Book
Target Group
The prime target group of this product guide is ABB sales representatives. Other 
target groups are marketing and additional ABB personnel wishing to acquaint 
themselves with the Control Software and the Control Builder M tool.
Purpose, Scope and Intended Use
This Control Software and Control Builder M product guide describes the following 
items from a sales perspective:
• AC 800M/C Control Software functions
• The Control Builder M programming tool
• Stand-alone tools associated with Control Builder M (GSD Import Tool, IP 
Configuration tool, Serial Firmware Upgrade tool)
• OPC Server for AC 800M/C
The guide does not describe AC 800M/C Connect. This product is described in a 
separate product guide. See Related Product Guides on page 18.
The guide is intended for use as an introduction to the new Control Software and 
Control Builder M versions, as well as a reference for discussion of technical 
solutions with customers.
This Product guide does not contain last-minute product information and updates 
which might affect functionality and/or performance. For information on late 
changes and restrictions, please refer to the Release Notes.
3BSE 026 333 R101 Rev A 11
Use of Information, and Tip Icons About This Book
 
The product guide provides:
• Information on key benefits
• An overview of functions offered by Control Software and Control Builder M
• Technical and performance data
• Instructions on how to order
Three appendices describe the licensing system, the Control Builder libraries, and 
Supported hardware and I/O, respectively.
Use of Information, and Tip Icons
This publication includes Information items, where appropriate to point out 
important information. It also includes Tip to point out useful hints to the reader. 
The corresponding symbols should be interpreted as follows:
Document Conventions
The following conventions are used for the presentation of material:
• The words in names of screen elements (for example, the title in the title bar of 
a window, the label for a field of a dialog box) are initially capitalized
• Capital letters are used for the name of a keyboard key if it is labeled on the 
keyboard. For example, press the ESC key
• Lowercase letters are used for the name of a keyboard key that is not labeled on 
the keyboard. For example, the space bar, comma key, and so on
• Press CTRL+C indicates that you must hold down the CTRL key while 
pressing the C key (to copy a selected object in this case)
Information icon alerts the reader to pertinent facts and conditions.
Tip icon indicates advice on, for example, how to configure the product or how to 
use a certain function.
12 3BSE 026 333 R101 Rev A
 About This Book Document Conventions
 
• Press ESC E C indicates that you press and release each key in sequence (to 
copy a selected object in this case)
• The names of push and toggle buttons are boldfaced. For example, click OK
• The names of menus and menu items are boldfaced. For example, the File 
menu
– The following convention is used for menu operations: MenuName > 
MenuItem > CascadedMenuItem. For example: select File > New > Type
– The Start menu name always refers to the Start menu on the Windows 
Task Bar
• System prompts/messages are shown in the Courier font, and user 
responses/input are in the boldfaced Courier font. For example, if you enter a 
value out of range, the following message is displayed:
Entered value is not valid. The value must be 0 to 30. 
You may be told to enter the string TIC132 in a field. The string is shown as 
follows in the procedure:
TIC132
Variables are shown using lowercase letters.
MaxLimit
3BSE 026 333 R101 Rev A 13
Terminology About This Book
 
Terminology
The following is a list of terms associated with Control Software and Control 
Builder M. The reader should familiarize himself with these terms before going 
further in this product guide. The list contains only those terms and abbreviations 
that are unique to ABB or have a usage or definition different from standard 
industry usage.
Term Description
AC 800M/C Connect A software package used to integrate Control Software 
for AC 800M/C with the Aspect Integrator Platform (AIP). 
AC 800M/C Connect can be installed from the ControlIT 
for AC 800M/C Products CD-ROM
Access variables Variables that can be accessed remotely, for example 
from another controller
AIP Aspect Integrator Platform, the common software 
platform used to integrate Industrial IT software
Applications Applications contain the program code to be compiled 
and downloaded for execution in the controller. 
Applications are displayed in the Project Explorer
CNCP Control Network Clock Protocol, an ABB protocol for 
time synchronization in Control Network
Cold retain Cold retain variable values are maintained after a warm 
or cold restart. The Cold Retain attribute overrides the 
retain attributes in a structured data type
Control Builder M The programming tool described in this product guide, 
referred to as Control Builder throughout this document
Control module Control modules are program units that support object-
oriented data flow programming with code sorting, free-
layout graphical programming and static parameter 
connections. Instances of control modules are created 
from control module types
Control Software ABB control software offering, including controller 
firmware,libraries and executable control applications
14 3BSE 026 333 R101 Rev A
 About This Book Terminology
 
Data type A variable’s data type defines its characteristics, set of 
values and set of permitted operations. Data types are 
simple or structured, either predefined or user defined
DTM Device Type Manager, software module used to manage 
devices via HART using Fieldbus Builder P, via the Tool 
Routing Service (TRS)
FBD Function Block Diagram, one of the five languages 
defined in the IEC-61131 standard
FF FOUNDATION Fieldbus, a fieldbus system of US origin
Global variable A variable that can be used by all programs
GSD file Geräte Stamm Datei, a hardware description file for a 
PROFIBUS-DP or PROFIBUS-DP/V1 slave type
HART Highway Addressable Remote Transducer, a protocol for 
communication with and configuration of remote devices 
with HART support
I/O point count A method used for calculating licensing costs, see 
Appendix A, Licenses
IEC 61131-3 An IEC standard for control languages; includes 
Structured Text (ST), Ladder Diagram (LD), Instruction 
List (IL), Function Block Diagram (FBD), and Sequential 
Function Chart (SFC)
IL Instruction List, one of the five languages defined in the 
IEC-61131 standard
Instance An instance is an individual object that behaves in 
accordance with the rules of the corresponding type
INSUM INtegrated System for User-optimized Motor control, an 
ABB system for motor control 
LD Ladder Diagram, one of the five languages defined in the 
IEC-61131 standard
Term Description
3BSE 026 333 R101 Rev A 15
Terminology About This Book
 
LON Local Operating Network, a protocol used for INSUM 
fieldbus communication
MMI Man-Machine Interface
MMS Manufacturing Message Specification. a standard for 
messages used for industrial communication
MMS Server for 
AC 800M/C
The server provides services to the MMS Client. 
Examples of services provided are transfer of variable 
content and start of programs
OPC OLE for Process Control, a standard for exchange of 
process control information
PROFIBUS A fieldbus system of German origin
Program A program contains written execution code. Programs 
are connected to tasks with the same name
Project A source code representation of the configuration data 
entered by an engineer to build a control solution
Project Explorer The part of the Control Builder user interface used to 
create, modify and navigate a project. All objects such 
as data types, functions and function block types can be 
selected and displayed in an editor. All software and 
hardware is configured in the Project Explorer
RNRP Redundant Network Routing Protocol, an ABB protocol 
for redundancy handling and routing in Control Network
RS-232C Standard No. 232 for PC communication, established by 
EIA (Electronics Industries Association, USA) 
RS-485 A communication interface standard from EIA 
(Electronics Industries Association, USA), operating on 
voltages between 0V and +5V. RS-485 is more noise-
resistant than RS-232C, handles data transmission over 
longer distances, and can drive more receivers
SFC Sequence Functional Chart, one of the five languages 
defined in the IEC-61131 standard
Term Description
16 3BSE 026 333 R101 Rev A
 About This Book Terminology
 
SNTP Simple Network Time Protocol, a protocol used for time 
synchronization in Control Network
SOE Sequence-Of-Events, a logging method involving time-
stamping at digital inputs
ST Structured Text, one of the five languages defined in the 
IEC-61131 standard
Task A task is a ‘work schedule’ for a program.Three default 
tasks are available; Fast, Normal and Slow. At run time, 
tasks are executed according to interval time, priority 
and offset
Tool Routing Service for 
AC 800M/C
See TRS
TRS Tool Routing Service, a part of AC 800M/C Connect. The 
TRS lets users use Fieldbus Builder P to configure 
HART devices,via AC 800M
Type The type is a general description of a unit that defines 
the behavior of an instance of the type
Term Description
3BSE 026 333 R101 Rev A 17
Related Product Guides About This Book
 
Related Product Guides
The following product guides contain information on related products and concepts.
Category Title Description
Hardware, 
Product 
Guides
AC 800M Controller Hardware 2.1, 
Product Guide
Description of the AC 800M controller
AC 800C Controller Hardware, 
Version 2.0, Product Guide
Description of the AC 800C controller
S800 I/O, Product Guide Description of the S800 I/O family
Software, 
Product 
Guides
System Guide, System Baseline 2, 
May 2002
Description of the total IndustrialIT 
product offering
Process Portal A, Product Guide Description of the Process Portal A 
product
AC 800M/C Connect, Product Guide Description of the AC 800M/C Connect 
product (integration with Process 
Portal A and other IndustrialIT suites)
SCADA Portal, version 1.1, Product 
Guide
Description of the SCADA Portal product
Fieldbus Builder PROFIBUS/HART Description of the Fieldbus Builder P 
product
Engineering Studio, Product Guide Description of the Engineering Studio 
product family
18 3BSE 026 333 R101 Rev A
 
Section 1 Key Benefits
Introduction
Supported Controller Platforms
AC 800M/C Control Software, created with the Control Builder M programming 
tool, can be downloaded to and executed on the following hardware platforms.
• AC 800M
• AC 800C
• Advant Controller 250
Control Software
AC 800M/C Control Software consists of firmware and control software that can be 
run on the supported control platforms.
Control Software is not controller platform specific. A control system can be 
designed without considering controller platform specific issues such as the 
execution model, as long as supported ABB controllers are used. 
Control Software is also scalable. If an application becomes too big or too complex 
for the selected controller type, a more powerful controller can be used without 
changing the application.
For information on supported combinations of hardware, protocol and software, 
see Section 2, Product Description, and Appendix B, Supported Hardware and 
I/O Systems.
3BSE 026 333 R101 Rev A 19
Control Builder M Section 1 Key Benefits
 
Licenses
There are three levels of Control Software license:
• Binary Control (access to system library only)
• Basic Control (access to binary control, batch handling library and basic 
libraries)
• Advanced Process Control (full access to all Control Builder libraries)
Control Builder M
Control Builder M (Control Builder in this document) is a Windows 2000-based 
programming tool for control logic. The tool is used to program control applications 
for AC 800M/C controllers. See Supported Controller Platforms on page 19.
Control Builder Variants
There are three variants of Control Builder M:
• Control Builder Professional 
(same as Standard, plus access to all libraries functions and control modules; 
higher number of applications, more applications per controller and integration 
with Industrial IT products)
• Control Builder Standard 
(same as Basic, plus create and change libraries, code distribution and sharing 
of source code)
• Control Builder Basic 
(basic functionality only)
License costs also depend on the number of I/O points in the customer’s control 
system. Licensing issues are described in detail in Appendix A, Licenses.
Control Builder variants are upward compatible. This means that applications 
created with Basic can be used in Basic, Standard and Professional, and that 
applications created in Standard can be used in Standard and Professional.
20 3BSE 026 333 R101 Rev A
Section 1 Key Benefits Market Segments, Licenses and Control Builder Variants
 
Market Segments, Licenses and Control Builder Variants
AC 800M/C Control Software is aimed primarily at two market segments:
• SCADA and PLC Solutions
• Integrated Automation
The product line is different for these two market segments. It is important that the 
products and licenses best suitedto the current segment are offered on each 
occasion.
SCADA and PLC Solutions
SCADA and PLC solutions are those where the operator interface communicates 
with controllers using signals, without any object integration, and where controllers 
do not handle alarms and events.
The following products and licenses are suitable for SCADA and PLC solutions.
• SCADA Portal
• Process Panel
• AC 800M and AC 800C controllers
• Control Software: Binary and Basic licences
• OPC Server for AC 800M/C
• Control Builder: Basic and Standard variants
Libraries made with a higher level Control Builder M license can be used in a 
Control Builder variant of a lower level, as long as they do not violate any 
restriction set by the lower license level. For example, it is possible to build 
libraries using Control Builder Standard, for use in Control Builder Basic.
It is important that the customer selects the right Control Builder Variant. For a 
complete comparison between the three variants, please refer to Professional, 
Standard and Basic on page 31.
3BSE 026 333 R101 Rev A 21
New This Version Section 1 Key Benefits
 
Integrated Automation
Integrated Automation solutions involve integrating faceplates with controllers 
handling objects from the operator interface. Integrated Automation also takes in 
handling of alarms and events in controllers.
The following products and licenses are suitable for Integrated Automation.
• Process Portal A
• AC 800M/C Connect
• AC 800M and AC 800C controllers
• Control Software: Advanced Process Control licenses
• Control Builder: Professional variant
• Other integrated Aspect System products (FieldBus Builder P, Engineering 
Studio, etc.)
ABB Controllers
ABB AC 800M and AC 800C controllers handle control system within both the 
above market segments. For detailed information on ABB controller performance, 
see Section 3, Technical Data and Performance and the hardware product guides 
listed in Related Product Guides on page 18.
New This Version
The subsection below gives an overview of new functions in Control IT for AC 
800M/C, version 3.1. New functions and features are divided into Control Software, 
Control Builder M, and OPC Server for AC 800M/C.
Control Software
• Increased language support:
– Case statements in Structured Text (ST)
– Execution of control modules inside function blocks
22 3BSE 026 333 R101 Rev A
Section 1 Key Benefits Control Software
 
• New and expanded libraries (see Appendix C, Library Objects Overview):
– A number of low-level function blocks have been added to System 
Library
– New library, named Signal Library, has been added, containing function 
blocks used to monitor signals (internal and between applications)
– Increased support for building control loops using Control Library 
(function blocks, control modules and data types added)
• Time synchronization and logging:
– 1 millisecond time synchronization accuracy between AC 800M nodes in 
Control Network
– 50 millisecond time synchronization accuracy for AC 800C and AC 250 
controllers, using an AC 800M master in Control Network
– Sequence-Of-Events (SOE) logging using time stamps for digital I/O with 
high accuracy
– System alarm and system event functions
• Improved redundancy functions:
– Redundant Control Network on MMS and TCP/IP, using Redundant 
Network Routing Protocol (RNRP)
– Line redundancy (PROFIBUS-DP/V1) for AC 800M (CI854 interface 
module)
– AC 800M CPU redundancy (using PM861)
• Added CPU support:
– PM861 (AC 800M)
• Added communication support:
– MasterBus300 (new master CI855)
– PPP for Advant Controller 250 (PM253 and PM254)
3BSE 026 333 R101 Rev A 23
Control Builder M Section 1 Key Benefits
 
• Added I/O support:
– PROFIBUS-DP/V1 (new master CI854)
– S100 I/O (new master CI856)
– INSUM support (new master CI857)
– S800 I/O HART modules (AI895 and AO895)
– S800 I/O Sequence-Of-Events (SOE) modules (DI830, DI831 and DI885)
– S900 I/O
– OSP on S200 I/O modules connected to 200-APB12
– ABB Standard and Application Drives: ACS 300, ACS 400, ACS 600, 
ACS 1000, DCS 300, DCS 400, DCS 600
• Configuration of HART devices, via AC 800M and PROFIBUS-DP/V1
• Integration with other IndustrialIT products:
– Mirroring from Plant Explorer/Process Portal A to Control Builder M
Control Builder M
• FBD/LD editor enhancements:
– Improved connection of functions/function blocks
– Improved insertion dialog for functions/function blocks
– Enable (EN) parameter in function blocks
– Improved declaration feature when inserting/connecting function blocks
• Printing from editors:
– Printing of complete editor content (not only what fits on the screen, but 
the complete editor window) 
• Documentation can be created in online mode, allowing users to document 
parameter values and settings
• New user help function allows users to add custom online help for 
communication protocols, I/O protocols, libraries and applications (added 
online help can then be accessed from within Control Builder)
24 3BSE 026 333 R101 Rev A
Section 1 Key Benefits OPC Server for AC 800M/C
 
• GSD Import Tool updated to support conversion of PROFIBUS-DP/V1 GSD 
files
• Improved integration with other IndustrialIT products through Aspect 
Integration Platform (AIP) (for details, see AC 800M/C Connect product 
guide)
OPC Server for AC 800M/C
• Attribute “hidden” added to variables, allows control over OPC server display 
of variables
• Saving of cold retain data in OPC server
• Multiple read and write operations
Key Benefits−SCADA and PLC Solutions
The following Control Software licenses and products are suitable for SCADA and 
PLC solutions.
• Control Software licenses: 
– Binary and Basic
• Control Builder variants: 
– Basic and Standard
• OPC Server for AC 800M/C
Control Software−Binary and Basic Licenses
Control Software Binary and Basic licenses offer the following key benefits for 
SCADA and PLC Solutions:
• Controller scalability:
– Applications can be moved from one supported controller to another. This 
simplifies expanding existing applications and control systems by adding 
applications and/or controllers
3BSE 026 333 R101 Rev A 25
Control Software−Binary and Basic Licenses Section 1 Key Benefits
 
• Software portability:
– Applications can be created before selecting controller hardware
• One time data entry:
– Once entered, data is automatically accessible for all functions and units. 
Adding an OPC server will allow OPC clients to share data from up to 12 
controllers. Variable communication allows communication between parts 
of the application located on different controllers
• Code distribution:
– Applications can be distributed on several controllers. Variable 
communication allows communication between applications located in 
different controllers
• Execution control:
– Control of priorities and execution times through task management. Power 
fail handling
• Supervision, fault-finding and log functions:
– Synchronization of controller time (1 ms accuracy) throughout the control 
network (using AC 800M master)
– Logging of alarms and events
– Logging of system alarms and events
– System diagnostics tool
• Redundancy support:
– Redundant Control Network on MMS and TCP/IP, using Redundant 
Network Routing Protocol (RNRP)
– Line redundancy for PROFIBUS-DP/V1
– AC 800M CPU redundancy (PM861 only)
26 3BSE 026 333 R101 Rev A
Section 1 Key Benefits Control Builder M Basic and Standard
 
• Communication support (hardware dependent):
– MMS, SattBus, COMLI, Siemens 3964R, MODBUS, MasterBus 300, 
PPP on RS-485 and RS-232C
– Control Network
– Controller communication by means of MMS and named access variables
• I/O support:
– Integrated fieldbus support: PROFIBUS DP, PROFIBUS DP/V1, 
FOUNDATION Fieldbus (FF)
– Import and conversion of PROFIBUS-DP and PROFIBUS-DP/V1 
GSD files using GSD Import Tool
– S800 I/O and S900 I/O common controller I/O systems
– S100 I/O and S200 I/O systems
• ABB Drives support:– ABB Standard Drives 
– ABB Application Drives
Control Builder M Basic and Standard
Control Builder M Basic and Standard variants offer the following key benefits for 
SCADA and PLC Solutions:
• One time data entry:
– All data entered via the Control Builder interface is automatically 
accessible to all functions and units
• Multi-user development (Control Builder Standard only):
– Source code can be distributed on several programming stations. User 
access can be controlled through user privileges and different parts of the 
source can be reserved or have access/updating dates restricted to certain 
users
For a complete list of functions included in a particular Control Builder version, 
see Professional, Standard and Basic on page 31.
3BSE 026 333 R101 Rev A 27
Control Builder M Basic and Standard Section 1 Key Benefits
 
• Graphic editor support for all five IEC 61131-3 languages:
– Structured Text (ST), Instruction List (IL), Function Block Diagram 
(FBD), Ladder Diagram (LD), and Sequential Function Chart (SFC)
• Built-in hardware and I/O configuration editor for configuring supported 
controllers, I/O systems and I/O units.
• Support for code re-use and object-oriented programming:
– System Library containing function, data and function block types that can 
be instantiated and will inherit properties from their parents
– Users can create custom types (not in Basic)
• Programming environment:
– Offline simulation and debug of applications
– Download to controllers via serial communication or Ethernet
– Online change of control applications
– Cold retain of data (kept at cold start)
– Backup/restore of projects
– Functions for creating and handling custom libraries (Control Builder 
Standard only)
• Access to user information from within the product:
– Extensive context-sensitive help (accessible through F1 key)
– Manuals in pdf format can be opened from Help menu
– Documentation function allows printing complete documentation for a 
library or for a number of objects
• Addition of external user help:
– Users can add online help for new communication or I/O protocols, as 
well as custom libraries and applications. This online help is then 
accessible from within the Control Builder interface
28 3BSE 026 333 R101 Rev A
Section 1 Key Benefits Key Benefits−Integrated Automation
 
Key Benefits−Integrated Automation
The following Control Software licenses and products are suitable for solutions 
within Integrated Automation.
• Control Software licenses: 
– Advanced Process Control
• Control Builder variants: 
– Professional
• AC 800M/C Connect (integration with other IndustrialIT products via Aspect 
Integration Platform)
Control Software−Advanced Process Control License
Upgrading Control Software to an Advanced Process Control license adds the 
following key benefits for Integrated Automation:
• Support for code re-use and object-oriented programming:
– Object-oriented programming by means of control modules.
– Re-use of programs and single control modules.
• Alarm and events handling:
– I/O time stamps and Sequence-Of-Events (SOE) logging
– Alarm and Events library with standard types
• I/O support:
– INSUM support (hardware dependent)
• Integration with other IndustrialIT products, for example Process Portal A:
– For more information on integration, refer to the AC 800M/C Connect 
product guide. See Related Product Guides on page 18
For more information regarding integration with other IndustrialIT products, 
please refer to the Industrial IT and AC 800M/C Connect product guides. See 
Related Product Guides on page 18.
3BSE 026 333 R101 Rev A 29
Control Builder M Professional Section 1 Key Benefits
 
Control Builder M Professional
Upgrading to Control Builder M Professional adds the following key benefits of 
interest to Integrated Automation solutions:
• Support for large networks:
– Maximum number of configured controllers is 32 (8 in Standard and 1 in 
Basic)
– Maximum number of applications is 256 (8 in Standard and 1 in Basic)
– Maximum number of applications per controller is 8 (1 in Standard and 1 
in Basic)
• Programming environment:
– User privileges at login increases control over source code in large 
development projects
– Control Module Diagram (CMD) editor for working with control modules 
(not in Basic)
– Code sorting in order to avoid sorting loops 
• Integration with other IndustrialIT products, for example Process Portal A:
– For more information on integration functions, refer to the AC 800M/C 
Connect product guide. See Related Product Guides on page 18.
For a complete list of functions available in a particular Control Builder version, 
see Professional, Standard and Basic on page 31.
30 3BSE 026 333 R101 Rev A
Section 1 Key Benefits Professional, Standard and Basic
 
Professional, Standard and Basic
Table 1. Differences between Control Builder Professional, Standard and Basic
Function Professional Standard Basic
Create/Change libraries Yes Yes No
Create/Change/Use control modules Yes No No
Maximum No of controllers 32(1)
(1) The maximum number of controllers also depends on the Control Network and other factors. This means that 
the actual maximum number of controllers can be much lower than 32.
8 1
Maximum No of applications 256 8 1
Maximum No of appl./controller 8 1 1
Maximum No of progr./application 64 64 3
Maximum number of tasks/controller 16 16 3
Distr. code to several controllers Yes Yes No
Share code between progr. stations Yes Yes No
Source code control (multi-user) Yes Yes No
Integr. with other Industrial IT prod. Yes No No
Logging in and user privileges Yes No No
3BSE 026 333 R101 Rev A 31
Integration with Other IndustrialIT Products Section 1 Key Benefits
 
Integration with Other IndustrialIT Products
Control Builder M software can be integrated with other IndustrialIT products via 
Aspect Integration Platform (AIP). Integration with AIP requires Control Builder 
Professional and installation of AC 800M/C Connect. 
The most important products for integration purposes are:
• Process Portal A 2.1
• Engineering Studio (Bulk Data Manager and other tools)
• Fieldbus Builder P for HART device configuration (via AC 800M and the Tool 
Routing Service, which is installed with AC 800M/C Connect)
This requires installation of the AC 800M/C Connect product, as well as a 
license for this product. AC 800M/C Connect is included on the ControlIT for 
AC 800M/C Products CD-ROM. 
For more information regarding integration with other IndustrialIT products, 
please refer to the IndustrialIT and AC 800M/C Connect product guides. See 
Related Product Guides on page 18.
32 3BSE 026 333 R101 Rev A
 
Section 2 Product Description
Overview
Control Software
Control Software comprises two types of software:
• Firmware that is downloaded to controllers and interface modules
• Control applications that are downloaded to, and executed in, controllers
In most cases, firmware is delivered with hardware components. However, some 
hardware is delivered without firmware, which means that firmware has to be 
downloaded. Download of firmware to controllers can be done from Control 
Builder M.
Control applications have to be created using Control Builder, and then downloaded 
to controllers. Control applications can be distributed and executed on several 
controllers and communicate with each other using named variable communication.
Control Software licenses are described in Appendix A, Licenses and in Control 
Software on page 19.
Control Builder M
Control Builder M is a programming tool used to create control applications and 
download software to controllers. Control Builder is also used to configure I/O and 
controller communication.
3BSE 026 333 R101 Rev A 33
Control Builder M Section 2 Product Description
 
Programming Station
Control Builder is Windows 2000-based and can be run on most Windows 2000 
platforms. However, to secure acceptable performance, a number of hardwareand 
software requirements must be met. See Prerequisites and Requirements on page 59.
Figure 1. Control Builder and supporting software
Download from Programming Station
Control Software (firmware and control applications) can be downloaded to 
controllers using Ethernet or via a direct serial link. The controller IP address must 
be known by Control Builder, communication must be set up and physical 
connections established.
Figure 2. Downloading firmware and/or applications
OPC Server for AC 800M/C is included in AC 800M/C Connect licenses and, if 
run in an integrated configuration, does not have to be ordered separately. . 
However, if OPC Server for AC 800M/C is used without an AC 800M/C Connect 
license, then a separate OPC Server for AC 800M/C license is required. See 
Appendix A, Licenses.
Standard PC
Control Builder M
(OPC Server for AC 800M/C)
MMS Server for AC 800M/C
(AC 800M/C Connect)
Standard PC
Control Builder M
Control Network
Ethernet
or direct
serial link
Controller
34 3BSE 026 333 R101 Rev A
Section 2 Product Description Control Builder M
 
Controller Communication
There is also a need for controllers to communicate with one another and with other 
devices. This of course requires a control network. However, design and 
configuration of control networks is outside the scope of this product guide.
Figure 3. Controller communication in control network
Controllers, programming stations and operator stations communicate with each 
other through the Control Network. The Network can be used for synchronizing 
controller time and to send alarms and events to operator stations. Control Network 
also supports redundancy.
If AC 800M/C Connect is installed, then AC800 M can also be used for configuring 
remote devices using Fieldbus Builder P and the HART protocol. 
Controller communication using variable communication is described under 
MMS Communication on page 40.
Control Network
Programming
Station
Controllers
3BSE 026 333 R101 Rev A 35
Control Software Section 2 Product Description
 
Control Software
Control Software consists of firmware and applications running in controllers. 
Control Software supports a number of functions:
• Download of firmware/applications to controllers
• Fieldbus communication
• I/O communication
• Control Network communication
• Other communication protocols
• Redundancy functions
• Time synchronization
• Alarm and events handling
• Execution of control software (applications)
Download
Firmware and applications are downloaded to the controller from the programming 
station using Control Builder M, see Figure 2.
If Ethernet is used, the controller's IP address must be set before download. This is 
carried out with the the IP Configuration tool.
Firmware
Firmware can be downloaded to both CPUs and CEX modules via Ethernet or direct 
serial communication. Once firmware is installed in the controller, the firmware 
takes care of downloaded applications and ensures they run correctly. If download 
fails, the Serial Upgrade tool can be used to solve the problem.
Applications
Applications can be downloaded to the controller either via Ethernet, or direct serial 
communication. An application can be distributed between several controllers. Parts 
of the application are then downloaded to different controllers.
36 3BSE 026 333 R101 Rev A
Section 2 Product Description I/O and Fieldbus Communication
 
I/O and Fieldbus Communication
Control Software supports a number of fieldbuses and I/O systems. Controllers can 
be connected to fieldbuses and other I/O systems using adapters and I/O units 
belonging to a number of ABB I/O families. In some cases third party products can 
be used.
Fieldbus Communication
Control Software supports two fieldbus systems (plus an extra version of one of 
these):
• FOUNDATION Fieldbus (FF), the most common fieldbus system in the US, 
can be connected to AC 800M controllers via the CI852 interface module
• PROFIBUS-DP, the most common fieldbus system in Europe, can be 
connected to all supported controllers (AC 800M, AC 800C and AC 250), 
AC 800M controllers via the CI851 interface module
• PROFIBUS-DP/V1, an enhanced version of PROFIBUS-DP, can be connected 
to AC 800M controllers via the CI854 interface module, offering built-in line 
redundancy
Control applications access built-in fieldbus functions through protocol-specific 
function blocks and I/O modules. Function blocks for fieldbus communication are 
found in the Communication library. Function blocks are described in detail in the 
Control Builder online help. See also Appendix C, Library Objects Overview.
SattBus
SattBus is a network standard for controller communication. SattBus can be used as 
a low-cost fieldbus for collection of small amounts of data under harsh conditions. 
SattBus can also be used on Ethernet (Advant Controller 250 only on copper wire).
ControlNet
ControlNet is a high-speed network standard for industrial applications. It is 
intended for fast communication between control applications and distributed I/O 
units.
3BSE 026 333 R101 Rev A 37
I/O and Fieldbus Communication Section 2 Product Description
 
INSUM
INSUM (INtegrated System for User-optimized Motor control) is an ABB system for 
motor and switch gear control and protection. AC 800M controllers can be 
integrated with INSUM by means of a TCP/IP gateway and a CI857 interface 
module.
Figure 4. INSUM integration with AC 800M controllers
ControlNet can only be used with Advant Controller 250. For information on 
supported I/O modules, see Appendix B, Supported Hardware and I/O Systems.
Note that INSUM and Control Network must use separate physical networks.
TCP/IP 
Ethernet
AC 800M 
controllers
INSUM
TCP/IP gateway
Router RouterRouter Router
Subnet 1 Subnet 2
MCU 
1/32
MCU 
1/01
LonWorks
Control Network
CI857 CI857
MMI
38 3BSE 026 333 R101 Rev A
Section 2 Product Description I/O and Fieldbus Communication
 
The TCP/IP gateway connects controllers to the Local Operating Network (LON) 
fieldbus. Motor Control Units (MCUs) are grouped into subnets accessed through a 
number of routers. 
INSUM applications handle motor and switch gear control. They can also be set to 
send alarm and event information to AC 800M through the TCP/IP gateway. 
The INSUM operator station gives direct access to INSUM functions. AC 800M 
controllers also have access to INSUM functions through the function blocks in the 
INSUM library. See Appendix C, Library Objects Overview.
MasterBus 300 (MB 300)
The MasterBus 300 (MB 300) network protocol can be used with both AC 400 and 
AC 800M controllers. AC 800M controllers may be connected to both Control 
Network and MB 300, simultaneously. The MB 300 network supports both network 
redundancy and time synchronization (with the accuracy offered by MB 300).
Other I/O Systems and Families
Control Software supports the following common ABB I/O systems and families.
• S800 I/O, a distributed modular I/O system for communication via 
PROFIBUS-DP, PROFIBUS-DP/V1, or directly
• S900 I/O, a remote I/O system for use in hazardous areas that can be connected 
to controllers via PROFIBUS-DP or PROFIBUS-DP/V1
• S200 I/O and S200L I/O, two compatible, modular I/O systems where 
S200L I/O is the “light” version; S200 I/O modules can be connected directly 
to AC 800C and AC 250, and via PROFIBUS-DP to all supported controllers
• S100 I/O, a rack-based I/O system, can be connected to AC 800M using the 
CI856 interface module
For a complete list of supported I/O modules, see Appendix B, Supported Hardware 
and I/O Systems.
Note that MasterBus 300 and Control Network must use separate physical 
networks.
3BSE 026 333 R101 Rev A 39
Control Network Section 2 Product Description
 
Control Network
The recommended alternative for communication with controllers and other 
devices, is Control Network, a private IP domain designed for industrial 
applications. Control Network is based on MMS via either Ethernetor PPP on 
RS-232C.
Routing and redundancy functions are handled by the Redundant Network Routing 
Protocol (RNRP), an ABB protocol for handling redundancy and for routing 
between nodes in a control network.
MMS Communication
Control Network is based on Manufacturing Message Specification (MMS) 
protocol via Ethernet or via PPP on RS-232C. MMS is an ISO-9506 standard for 
sending information between industrial applications.
MMS provides a number of functions, the most important for control applications 
are:
• Downloading executable code, for example from a programming station to a 
controller
• Creating, deleting, starting and stopping applications over the network
• Reading and writing variables over the network
• Obtaining information on the status of remote applications
• Reading and writing files over the network
• Alarm handling
• Obtaining information on the capability of remote applications
• Obtaining information on the revision and version of remote applications
In previous Control Software versions, there was a requirement for separating the 
control network from the client/server area of the network. This is no longer a 
must. However, the control network must remain protected by servers and/or 
firewalls and the risk of overloading the network with other traffic must be taken 
into account
40 3BSE 026 333 R101 Rev A
Section 2 Product Description Control Network
 
MMS can be used on several standard network protocols, but TCP/IP should be 
used for MMS communication. 
MMS messages are handled by the MMS Server for AC 800M/C, which is installed 
with Control Builder M and runs as a Windows 2000 service. The MMS server 
works as a multiplexer between the OPC server, controllers and Control Builder M.
Figure 5. The MMS server as a multiplexer between controllers, OPC server and 
Control Builder M
RNRP
Redundant Network Routing Protocol (RNRP) is an ABB protocol for handling 
redundancy functions and routing between nodes in a control network. The protocol 
is designed for rapid detection of network failure and instant switching to alternative 
paths. 
Controllers
OPC server and 
Control Builder M
Ethernet
MMS server
3BSE 026 333 R101 Rev A 41
Other Communication Protocols Section 2 Product Description
 
Other Communication Protocols
Control Software supports a number of additional communication protocols. These 
protocols can be used for communication between controllers, as well as with other 
devices
ModBus RTU
ModBus is a wide-spread communication protocol that can be used on a variety of 
media, such as wire, fiber optics, radio and telephony. ModBus is an asynchronous 
serial master/slave protocol that is executed in half-duplex. 
COMLI
COMLI is an ABB protocol for data transmission between controllers. It is designed 
for asynchronous master/slave communication in half-duplex. COMLI can be used 
for serial communication (RS-232C or RS-485) or for SattBus, or SattBus on 
TCP/IP.
Siemens 3964R
Siemens 3964R is a standard serial, point-to-point master/slave protocol. It can be 
used on any RS-232C or RS-485 channel. It is suitable for communicating with 
controllers and devices with Siemens 3964R support. Communication requires 
installation of the RK512 interpreter in the slave system.
Control Software only supports ModBus RTU master functionality.
Control Software for AC 800M/C supports only the Siemens 3964R master 
protocol (no support for slave protocol).
42 3BSE 026 333 R101 Rev A
Section 2 Product Description Other Communication Protocols
 
Modem Communication
There are two types of modem that can be used with Control Software:
• Short-distance modems using PPP, COMLI, Siemens 3964R, ModBus RTU or 
PROFIBUS-DP
• Dial-up modems using public telecommunications, COMLI is the only 
protocol for which dial-up modem communication is supported
There are two main reasons for using modem communication:
• A need for increasing the maximum length of RS-232C, RS-485 and Ethernet 
twisted-pair connections
• A need for using fiber-optic communication, to eliminate either 
electromagnetic interference or the risk of intrusion
Note that it is still possible to set up serial modem communication using a phone 
line between, for example, Control Builder M and a controller, or between an 
external system and a controller (using AutoConnect).
3BSE 026 333 R101 Rev A 43
Time Synchronization Section 2 Product Description
 
Time Synchronization
Figure 6. Time synchronization in Control Network, with an AC 800M as master
Time synchronization uses Coordinated Universal Time (UTC), with an AC 800M 
controller as Clock Master. Time is retrieved from a time server or from some other 
high precision source. A high-precision version of the Simple Network Time 
Protocol (SNTP) is available for communication, for example with a time server 
that receives its time reference from a GPS time receiver.
Only one controller can function as Clock Master, but several controllers can have 
Clock Master capability. Such a controller will attempt to take over as Clock Master 
if it does not receive time from the current Clock Master within a certain interval.
Time is forwarded to all non-master AC 800M controllers using the Control 
Network Clock Protocol (CNCP), and to other controllers using SNTP or a light 
version of CNCP. 
Control Network
MB 300 TS
AC 800MAC 800M
On-time 
switch
CNCPCNCP*) CNCP w.
medium accuraccy
AC 800C
Process Portal A
CNCP w.
medium accuraccy
MasterBus 300
*) The direction depends on which controller 
is the master.
High-precision
SNTP
AC 400
44 3BSE 026 333 R101 Rev A
Section 2 Product Description Redundancy
 
The accuracy of time synchronization differs, depending on protocol and device. 
CNCP synchronization is accurate to 1 ms, while CNCP light is accurate to 50 ms. 
Time synchronization can be configured using the Control Builder M tool.
Redundancy
Control Software supports the following redundancy functions:
• CPU redundancy for AC 800M (PM861)
• Network redundancy (RNRP)
• Line redundancy (CI854)
CPU Redundancy
AC 800M controllers with PM861 processor can be configured for CPU 
redundancy. Two PM861 CPU modules are then run in parallel, one as primary and 
one as secondary. If the primary CPU fails, the secondary CPU automatically takes 
over.
Figure 7. Example of redundant CPU configuration
Controllers running an older version of Control Software that does not support 
time synchronization via CNCP/SNTP must be synchronized using some other 
method, for example via an OPC server using MMS.
It is also possible to run an AC 800M controller with PM861 in single CPU 
mode.
CEX bus
Redundant network
Dual AC 800M
PM861PM861
RCU link
3BSE 026 333 R101 Rev A 45
Alarm and Events Handling Section 2 Product Description
 
Network Redundancy
Network redundancy is based on the Redundant Network Routing Protocol 
(RNRP). This protocol is designed for rapid detection of network failure and instant 
switching to alternative paths.
Figure 8. Redundant Control Network
Network redundancy requires two independent IP networks, one primary and one 
secondary. Whenever the maximum number of lost messages is exceeded, then 
traffic is switched to the secondary network.
Network redundancy can be implemented in part of the network. Nodes with one 
connection only must be connected to the primary network.
Line Redundancy
Line redundancy support is built into PROFIBUS-DP/V1 communication, through 
dual ports on the CI854 interface module. Line redundancy may be achieved for 
other communication by adding extra equipment
Alarm and Events Handling
Alarm and event handling supports the following.
• Disabling and enabling of alarms
• Acknowledgement and cancellation of alarms
• Filtering of alarms and events
• Printing of alarm and event lists on local printer
• System events and alarms
All devices with network redundancy must be connected to both networks. The 
node number must be identical in both networks46 3BSE 026 333 R101 Rev A
Section 2 Product Description Execution of Control Software
 
The Alarm and Event library contains function blocks for handling alarms and 
events, for example detection, notification or definition of alarm conditions. The 
Signal library contains function blocks for monitoring of signals, both internally and 
between applications
System events and alarms are created in a particular controller, but can be read and 
acted upon by operators in other systems. The event or alarm has its origin attached 
to it.
Alarms and events are collected and forwarded by the Alarm and Event (AE) part of 
the OPC server. Controllers then gain access to alarms and events from other 
controllers by reading data from the OPC server. Alarm and event information can 
also be read by other OPC clients, such as Process Portal A. See OPC Server−Alarm 
and Event (AE) Part on page 58.
Execution of Control Software
Execution of applications is supported by a number of functions:
• Task management gives programmers control over the execution order of 
different parts of the code, as well as priorities between different programs and 
modules. It is also possible to set an offset for a task
• Code distribution makes possible the simultaneous execution of different parts 
of an application on several controllers
• Access variables allow for named communication between applications 
running on different controllers
OPC Server for AC 800M/C is included in AC 800M/C Connect licenses and, if 
run in an integrated configuration, does not have to be ordered separately. 
However, if OPC Server for AC 800M/C is used without an AC 800M/C Connect 
license, then a separate OPC Server for AC 800M/C license is required. See 
Appendix A, Licenses.
3BSE 026 333 R101 Rev A 47
Control Builder M Section 2 Product Description
 
Control Builder M
Control Builder consists of the following main parts:
• Project Explorer
• Programming environment
• Online help and manuals
Project Explorer
The Project Explorer is the main work area of Control Builder M.
Figure 9. Control Builder M Project Explorer
The Project Explorer resembles the Windows Explorer and the tree structure 
contains three main branches:
• Libraries
• Applications
• Controllers
The content of Project Explorer menus varies slightly with the Control Builder M 
variant (Professional, Standard, or Basic). This overview describes the Control 
Builder Professional Project Explorer.
48 3BSE 026 333 R101 Rev A
Section 2 Product Description Project Explorer
 
Libraries
The Libraries branch contains all libraries, (see Figure 9). The user can insert or 
remove standard libraries, as well as create and add custom libraries.
Applications
The Applications branch lists all applications that are handled in that particular 
Control Builder M installation. Each application contains data types, function block 
types, control module types, control modules, and programs (called Program 
Organization Units, POUs, in the IEC-61131-3 standard). An application can be 
copied to a specific controller, if required.
Controllers
The Controllers branch displays the hardware tree. The tree shows all connected 
controllers and the hardware units that have been associated with them. For a 
hardware unit to be added, the hardware definition file for that unit must be 
supported by Control Builder.
Figure 10. The Controllers branch in the Control Builder Project Explorer tree
3BSE 026 333 R101 Rev A 49
Programming Environment Section 2 Product Description
 
For each controller in the hardware tree, the following items can be added and 
changed:
• Access variables that can be used for variable communication with other 
controllers are listed under a separate entry. Double-clicking this icon starts the 
access variable editor
• A controller hardware definition is added when the controller is created in the 
tree. When creating the controller, the user must select the controller type, for 
example AC 800M. Double-clicking on this icon starts the hardware editor, 
where hardware can be configured
• Tasks that can be associated with different applications in order to control 
priorities and execution order. See Execution of Control Software on page 47
• Applications that should be downloaded to and executed in the controller
Programming Environment
Editors
Using control modules, Control Builder M handles all five IEC-61131-3 languages, 
as well as program-oriented programming. There are six different language editors:
• Ladder Diagram Editor (LD Editor)
• Instruction List Editor (IL Editor)
• Structured Text Editor (ST Editor)
• Function Block Diagram Editor (FBD Editor)
• Sequence Functional Chart Editor (SFC Editor)
• Control Module Diagram Editor (CMD Editor) (Control Builder Professional 
only)
50 3BSE 026 333 R101 Rev A
Section 2 Product Description Programming Environment
 Figure 11. Example of a language editor (Function Block Diagram Editor)
All editors support graphic programming and contain a number of functions for 
creating, changing, moving, grouping and connecting graphic elements and 
variables.
In addition to language editors, there is a Connection Editor that is used to connect 
input and output parameters to function blocks and functions.
Supporting Functions
The programming environment also offers a number of supporting functions:
• Firmware and applications can be downloaded either via Ethernet or a direct 
serial link
• Both projects and parts of the code can be access-restricted. Source code 
distribution is supported
• Code can be re-used through instantiation of types
3BSE 026 333 R101 Rev A 51
Programming Environment Section 2 Product Description
 
• Users can create custom libraries containing function blocks or control 
modules. Access to these libraries can be limited to certain users or user 
groups. (Not possible in Control Builder Basic.)
• Code (types, libraries) can be set to protected, to protect intellectual capital
• Applications can be simulated and debugged offline, without connecting to any 
I/O units or external units
• Cold retain attributes can be set so that variables and parameter values are 
stored on the hard disk, and restored at cold restart
• Applications can be changed online
• Projects can be documented in a Word file, using the documentation function. 
This function can also be used to document libraries, or even individual 
function blocks or control modules (both online and offline)
• The complete contents of any editor can be printed at any time
• A Backup/Restore function
• A system diagnostics tool is available for fault-finding and/or optimizing an 
application
• The user has access to extensive alarm and event logs
Additional Control Builder Professional Functions
Control Builder Professional offers a number of additional functions:
• Object-oriented programming using control modules
• User login function
• The Control Module Diagram (CMD) editor allows for object-oriented 
programming using control modules
• Code sorting function that analyzes the execution of different parts of the 
control modules and finds the optimum order of execution. If a sorting loop is 
discovered, the user is alerted and prompted to resolve the loop. The code 
sorting function also points out the place in the code where the sorting loop 
occurred
52 3BSE 026 333 R101 Rev A
Section 2 Product Description Online Help and Manuals
 
• A larger number of connected controllers (32), a larger total number of 
applications (256), and more applications per controller (8)
Online Help and Manuals
Online Help
Control Builder M has an extensive online help system with context-sensitive (F1) 
help for objects displayed in the Project Explorer. Online help is displayed for the 
selected object when F1 is tapped. Online help can also be displayed by clicking 
Help in dialog boxes or selecting it under the Help menu.
Figure 12. Context-sensitive (F1) help
If a library or hardware definitionis added, online help can be added using the User 
Help function. Added files are displayed under User Help on the Help menu.
Manuals
ControlIT user manuals in pdf format are available from within Control Builder M. 
The documentation overview can be selected from the Help menu and a manual 
opened by clicking the title in the overview.
If integration with the Aspect Integration Platform (AIP) through AC 800M/C 
Connect is installed, it is necessary to use Control Builder Professional.
F1
3BSE 026 333 R101 Rev A 53
Additional Software Section 2 Product Description
 
Additional Software
Control Builder is aided by a number of additional tools and products:
• Control Builder Setup Wizard
• GSD Import tool
• IP Configuration tool 
• Serial Firmware Upgrade tool
• MMS Server for AC 800M/C
Control Builder Setup Wizard
The Setup Wizard is used to configure Control Builder M and OPC Server for 
AC 800M/C, as well as RNRP.
GSD Import Tool
The GSD Import tool is used to convert PROFIBUS GSD files to a format that can 
be read by Control Builder M. GSD Import supports conversion of both 
PROFIBUS-DP and PROFIBUS-DP/V1.
IP Configuration Tool
The IP Configuration tool is used to set controller IP addresses via a direct serial 
channel. The initial IP address must be set before downloading firmware and 
applications to the controller. 
Serial Firmware Upgrade Tool
The Serial Firmware Upgrade tool is used to upgrade controller CPU firmware via a 
direct serial channel. This tool is used as a last resort, if for some reason the normal 
firmware upgrade procedure fails. 
54 3BSE 026 333 R101 Rev A
Section 2 Product Description Additional Software
 
MMS Server for AC 800M/C
Figure 13. MMS Server for AC 800M/C
The MMS server handles MMS communication. It serves as a multiplexer between 
Control Builder M, OPC servers, and controllers.
Control Network
MMS Server
for AC 800M/C
Control Builder M
and OPC Server for AC 800M/C
3BSE 026 333 R101 Rev A 55
OPC Server for AC 800M/C Section 2 Product Description
 
OPC Server for AC 800M/C
OPC Server for AC 800M/C gives OPC clients access to controller data they 
subscribe to. The OPC server can also be used to transfer alarm and event 
information. It consists of two parts:
• Data Access (DA) part
• Alarm and Event (AE) part
The OPC server exposes data to the clients (DA part) and supports the transfer of 
alarm and event information from attached controllers to subscribing OPC clients 
(AE part).
For information regarding OPC server performance, possible configurations or OPC 
server restrictions, see Section 3, Technical Data and Performance.
OPC Server for AC 800M/C is included in AC 800M/C Connect licenses and, if 
run in an integrated configuration, does not have to be ordered separately. 
However, if OPC Server for AC 800M/C is used without an AC 800M/C Connect 
license, then a separate OPC Server for AC 800M/C license is required. See 
Appendix A, Licenses.
This product guide focuses on the stand-alone use of the OPC server. When 
integrating Control Builder M with Process Portal A, the OPC server is included 
in this license. For information on OPC Server for AC 800M/C as part of 
AC 800M/C Connect, refer to the corresponding product guide. See Related 
Product Guides on page 18.
56 3BSE 026 333 R101 Rev A
Section 2 Product Description OPC Server for AC 800M/C−Data Access (DA) Part
 
OPC Server for AC 800M/C−Data Access (DA) Part
The Data Access (DA) part of the OPC server gives all OPC clients access to data 
stored in controllers programmed with Control Builder M.
The OPC server exposes the following data to OPC clients.
• Variables and parameters used in applications, programs, modules, function 
blocks, data structures, etc. (variables can be hidden by setting a “hidden” 
attribute)
• Hardware configurations
• Access variables
It can also be used to store cold retain data. 
The OPC server detects the following events and updates data on each.
• A new version of an application and/or a controller configuration is 
downloaded.
• A new application (an application that did not previously exist) is downloaded
• An application is deleted from a controller
• One application or several new ones and a controller configuration are 
downloaded to a previously empty controller
The DA part of OPC Server for AC 800M/C supports the OPC Data Access 1.0a 
and OPC Data Access 2.05 standards.
When integrating Control Builder M with Process Portal A, the OPC server can 
be used for time syncronization, based on a time stamp that is created by Process 
Portal A.
3BSE 026 333 R101 Rev A 57
OPC Server−Alarm and Event (AE) Part Section 2 Product Description
 
OPC Server−Alarm and Event (AE) Part
The Alarm and Event (AE) part of the OPC server subscribes to alarms and events 
generated by controllers and other devices in the control network. All these alarms 
and events are then stored and made accessible to OPC clients.
The AE part of the OPC server also collects acknowledgements and cancellations of 
alarms from OPC clients and forwards them to the controller or device in question. 
Clients may also disable or enable alarm conditions in controllers or devices 
through the OPC server.
The AE part of OPC Server for AC 800M/C supports the OPC Alarm and 
Events 1.02 standard.
AC 800M/C Connect
The AC 800M/C Connect product is an option that can be installed from the 
ControlIT for AC 800M/C Products CD-ROM. AC 800M/C Connect must be 
installed in order to run Control Builder M in integration with Process Portal A.
AC 800M/C Connect also gives the user access to the AC 800M/C Tool Routing 
function, which allows use of the Fieldbus Builder P tool to change the setup of 
various HART devices via AC 800M.
For information about AC 800M/C Connect product, please refer to the 
corresponding product guide (see Related Product Guides on page 18).
58 3BSE 026 333 R101 Rev A
 
Section 3 Technical Data and Performance
General
This section presents performance and technical data for Control Software and 
Control Builder M key functions, configuration and items. For this data to be valid, 
the following prerequisites and requirements must be fulfilled.
Prerequisites and Requirements
Software Requirements
Late changes might affect performance and/or functionality. For information on 
late changes and restrictions in the use of the product, please refer to the Release 
Notes.
Table 2. Control Builder M software requirements
Software Requirement
Operating system Windows 2000 with Service Pack 2
Browser Internet Explorer 5.5 plus SP2 or 
higher
Printing project documentation Microsoft Word
Reading online manuals Acrobat Reader 5.0
The following software recommendations must be met in order for Control 
Builder M to function properly. Using other software than recommended might 
affect performance.
3BSE 026 333 R101 Rev A 59
Hardware Requirements Section 3 Technical Data and Performance
 
Hardware Requirements
The following hardware requirements must be met in order for Control Builder M 
to function correctly. Using hardware other than that recommended can affect 
performance.
Table 3. Control Builder M hardware requirements
Hardware Minimum requirement
Recommended for medium 
and large configurations
CPU Pentium 166 MHz Pentium II 350 MHz, or better
Internal memory 64 MB RAM 128 MB RAM
Hard disk 50 MB free (200 MB for full 
installation)
50 MB free (200 MB for full 
installation)
Screen 800x600, 32768 colors 1280x1024, 32768 colors
Drives CD-ROM, local or network CD-ROM, local network
Communication ports Ethernet or RS-232C for 
controller communication
Ethernet or RS-232C for 
controller communication
Mouse Standard, 3-button mouse if 
Control Module Editor is used
Standard with scroll wheel, 3-
button mouse if Control 
Module Editor is used
60 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance OPC Server Requirements
 
OPC Server Requirements
Table 4. OPC server software requirementsSoftware Requirement
Operating system Windows 2000 with Service Pack 2
Browser Internet Explorer 5.5 plus SP2 or higher
Table 5. OPC server hardware requirements
Hardware Requirement
CPU Pentium 166 MHz
Internal memory 64 MB RAM
Hard disk 25 MB free (200 MB for full installation)
Screen Color or monochrome
Drives CD-ROM, local or network
Communication ports Ethernet for controller communication
For a complete list of which feature is included in which Control Builder version, 
please refer to Professional, Standard and Basic on page 31.
3BSE 026 333 R101 Rev A 61
Hardware Requirements When Running Several Products on Same PC Section 3 Technical Data 
 
Hardware Requirements When Running Several Products on Same PC
Table 6. Hardware requirements when running Control Builder M and 
OPC Server for AC 800M/C on the same PC
Hardware Recommended
CPU Pentium II, 350 MHz or better
Internal memory 128 MB RAM
Hard disk 50 MB free (200 MB for full installation)
Screen 1280x1024, 32768 colors
Drives CD-ROM, local network
Communication ports Ethernet or RS-232C for controller 
communication
Mouse Standard with scroll wheel, 3-button 
mouse if Control Module Editor is used
This recommendation is taken without consideration on the OPC client installed 
in the same PC. Normally the OPC client, for example Process Portal A, has 
higher requirement, where the recommendation should be adjusted.
62 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Technical Data and Performance
 
Technical Data and Performance
Memory Consumption and Execution Times
Available RAM Memory
Available RAM memory is measured after loading firmware and an "empty" 
project, that is to say a project that has had nothing added to it after being created.
Figure 14. Available memory
The memory occupied by an empty project is subtracted since this space is required 
regardless of the size and complexity of the application, and will be the same for all 
controllers.
As a general rule, an application should never exceed half the size of the available 
memory. The reason for this is the manner in which applications are updated online:
1. The increment (the difference between the old and the updated application) is 
downloaded to controller memory.
2. A new version of the application is built in controller memory, based on the old 
application and the increment.
3. The controller switches from the old to the new application.
4. The old application is deleted.
This technique handles all updates in a very controlled and efficient way. What is 
required is for free memory to equal the size of the largest application. If an 
application comes close to the limit, it should be split in two so the two parts can be 
updated separately.
.
Firmware
Empty project
Available
memory
Maximum application size = 50% of Available memory
3BSE 026 333 R101 Rev A 63
Memory Consumption and Execution Times Section 3 Technical Data and Performance
 
Memory Consumption and Execution Times for Function Blocks and Control 
Modules
Memory is reserved for each defined function block type. When another instance is 
created, the amount of memory reserved for the instance is very small in relation to 
the type. This means that the memory consumed by the type itself is of great 
importance.
The following tables show memory consumption and execution time per controller 
and CPU, for a number of common function blocks and control modules, as well as 
for a number of common control loops.
Table 7. Available RAM memory
Controller CPU Total RAM
Firmware +
Empty Project
Available
Memory
AC 800M PM861 16 MB 6 507 kB 9 493 kB
AC 800M PM856/860 8 MB 4 500 kB 3 500 kB
AC 800C PM210 2 MB 625 kB 1 315 kB
AC 250 PM253 2 MB TBD TBD
AC 250 PM254 8 MB TBD TBD
AC 250 PM255 8 MB TBD TBD
64 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Memory Consumption and Execution Times
 
Table 8. AC 800M memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM856
(ms)
PM860
(ms)
PM861
(ms)
Function Blocks
UniCore 15 716 2 680 TBD 0.076 TBD
UniHSI 5 560 648 TBD 0.0072 TBD
BiCore 18 260 4 644 TBD 0.105 TBD
BiHSI 5 924 792 TBD 0.01 TBD
DriveCore 8 004 2 038 TBD 0.126 TBD
Uni 34 696 6 072 TBD 0.185 TBD
Bi 36 656 5 212 TBD 0.2595 TBD
MotorUni 38 764 9 396 TBD 0.234 TBD
MotorBi 51 452 2 068 TBD 0.321 TBD
ValveUni 33 944 4 344 TBD 0.139 TBD
PidSimpleReal 8 544 1 468 TBD 0.0885 TBD
PidLoop 51 928 6 336 TBD 0.453 TBD
PidLoop3P 56 368 7 344 TBD 0.481 TBD
PidCascadeLoop 60 344 14 684 TBD 0.8235 TBD
PidCascadeLoop3P 66 788 12 544 TBD 0.807 TBD
SignalBool 17 008 1 616 TBD 0.03375 TBD
SignalInBool 17 576 2 452 TBD 0.02925 TBD
SignalOutBool 17 716 2 420 TBD 0.0289 TBD
SignalReal 37 132 10 844 TBD 0.143 TBD
SignalInReal 38 576 9 508 TBD 0.115 TBD
SignalOutReal 35 512 9 520 TBD 0.105 TBD
3BSE 026 333 R101 Rev A 65
Memory Consumption and Execution Times Section 3 Technical Data and Performance
 
Control Modules
UniM 30 364 4 880 TBD 0.067 TBD
BiM 35 524 5 856 TBD 0.079 TBD
MotorUniM 35 912 8 716 TBD 0.077 TBD
MotorBiM 40 132 7 488 TBD 0.098 TBD
ValveUniM 29 740 4 344 TBD 0.107 TBD
AnalogInCC 14 364 3 324 TBD 0.0977 TBD
AnalogOutCC 15 612 3 444 TBD 0.104 TBD
Level6CC 47 652 16 304 TBD 0.173 TBD
ThreePosCC 19 204 4 050 TBD 0.221 TBD
PidSimpleCC 10 812 2 340 TBD 0.134 TBD
PidCC 75 512 13 460 TBD 0.453 TBD
PidAdvancedCC 171 652 25 156 TBD 1.163 TBD
Table 9. AC 800C memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM210
(ms)
Function Blocks
Bi TBD TBD TBD
BiCore TBD TBD TBD
BiHSI TBD TBD TBD
Table 8. AC 800M memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM856
(ms)
PM860
(ms)
PM861
(ms)
66 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Memory Consumption and Execution Times
 
DriveCore TBD TBD TBD
MotorBi TBD TBD TBD
MotorUni TBD TBD TBD
PidCascadeLoop TBD TBD TBD
PidCascadeLoop3P TBD TBD TBD
PidLoop TBD TBD TBD
PidLoop3P TBD TBD TBD
Uni TBD TBD TBD
UniCore TBD TBD TBD
UniHSI TBD TBD TBD
ValveUni TBD TBD TBD
Table 9. AC 800C memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM210
(ms)
3BSE 026 333 R101 Rev A 67
Memory Consumption and Execution Times Section 3 Technical Data and Performance
 
Control Modules
BiM TBD TBD TBD
MotorBiM TBD TBD TBD
MotorUniM TBD TBD TBD
UniM TBD TBD TBD
ValveUniM TBD TBD TBD
AnalogInCC TBD TBD TBD
PidAdvancedCC TBD TBD TBD
AnalogOutCC TBD TBD TBD
Level6CC TBD TBD TBD
ThreePosCC TBD TBD TBD
PidCC TBD TBD TBD
PidSimpleCC TBD TBD TBD
Table 9. AC 800C memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM210
(ms)
68 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Memory Consumption and Execution Times
 
Table 10. Advant Controller 250 memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM253 
(ms)
PM254 
(ms)
PM255 
(ms)
Function Blocks
Bi TBD TBD TBD TBD TBD
BiCore TBD TBD TBD TBD TBD
BiHSI TBD TBD TBD TBD TBD
DriveCore TBD TBD TBD TBD TBD
MotorBi TBD TBD TBD TBD TBD
MotorUn TBD TBD TBD TBD TBD
PidCascadeLoop TBD TBD TBD TBD TBD
PidCascadeLoop3P TBD TBD TBD TBD TBD
PidLoop TBD TBD TBD TBD TBD
PidLoop3P TBD TBD TBD TBD TBD
Uni TBD TBD TBD TBD TBD
UniCore TBD TBD TBD TBD TBD
UniHSI TBD TBD TBD TBD TBD
ValveUni TBD TBD TBD TBD TBD
3BSE 026 333 R101 Rev A 69
Memory Consumption and Execution Times Section 3 Technical Data and Performance
 
Control Modules
BiM TBD TBD TBD TBD TBD
MotorBM TBD TBD TBD TBD TBD
MotorUniM TBD TBD TBD TBD TBD
UniM TBD TBD TBD TBD TBD
ValveUniMTBD TBD TBD TBD TBD
AnalogInCC TBD TBD TBD TBD TBD
PidAdvancedCC TBD TBD TBD TBD TBD
AnalogOutCC TBD TBD TBD TBD TBD
Level6CC TBD TBD TBD TBD TBD
ThreePosCC TBD TBD TBD TBD TBD
PidCC TBD TBD TBD TBD TBD
PidSimpleCC TBD TBD TBD TBD TBD
Table 10. Advant Controller 250 memory consumption and execution time for 
function blocks and control modules
Object
First Instance 
(bytes)
Next Instance 
(bytes)
PM253 
(ms)
PM254 
(ms)
PM255 
(ms)
70 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Memory Consumption and Execution Times
 
Execution Times for Function Block Calls
Table 11. CPU execution time per CPU 
for a number of standard function block calls
Function 
Block Type
AC 800M 
PM856/860(*) 
(µs)
AC 800M 
PM861 
(µs)
AC 800C 
PM210 
(µs)
AC 250 
PM253 
(µs)
AC 250 
PM254 
(µs)
AC 250 
PM255 
(µs)
ACOFActivate 
(disabled)
33.6 TBD TBD TBD TBD TBD
ACOFActivate 
(enabled)
39.1 TBD TBD TBD TBD TBD
ACOFActivate 
(timer on)
90.9 TBD TBD TBD TBD TBD
CTUD 12.5 TBD TBD TBD TBD TBD
Empty FB call 4.5 TBD TBD TBD TBD TBD
LevelHigh 
(Active)
12.8 TBD TBD TBD TBD TBD
LevelHigh (not 
Active)
12.9 TBD TBD TBD TBD TBD
PulseGenerator 
(1 sec. High / 
1 sec. Low)
51.5 TBD TBD TBD TBD TBD
PulseGenerator 
(disabled)
10.6 TBD TBD TBD TBD TBD
PulseGenerator 
(High out)
51.5 TBD TBD TBD TBD TBD
PulseGenerator 
(Low out)
51.5 TBD TBD TBD TBD TBD
RTC (read) 17.0 TBD TBD TBD TBD TBD
RTC (set) 52.8 TBD TBD TBD TBD TBD
3BSE 026 333 R101 Rev A 71
Memory Consumption and Execution Times Section 3 Technical Data and Performance
 
(*) The execution time should be doubled for PM856.
SR 8.16 TBD TBD TBD TBD TBD
TOn (after 
stopping timer)
10.1 TBD TBD TBD TBD TBD
TOn (before 
starting timer)
37.9 TBD TBD TBD TBD TBD
TOn (timer 
active)
11.3 TBD TBD TBD TBD TBD
TP (after 
stopping timer)
11.5 TBD TBD TBD TBD TBD
TP (before 
starting timer)
32.8 TBD TBD TBD TBD TBD
TP (timer 
active)
11.3 TBD TBD TBD TBD TBD
Table 11. CPU execution time per CPU 
for a number of standard function block calls
Function 
Block Type
AC 800M 
PM856/860(*) 
(µs)
AC 800M 
PM861 
(µs)
AC 800C 
PM210 
(µs)
AC 250 
PM253 
(µs)
AC 250 
PM254 
(µs)
AC 250 
PM255 
(µs)
72 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Memory Consumption and Execution Times
 
Execution Times for Operations and Function Calls
Table 12. CPU execution time for a number of standard 
operations and function calls
Operation/ 
Function
AC 800M 
PM856 
(µs)
AC 800M 
PM860 
(µs)
AC 800M 
PM861 
(µs)
AC 800C 
PM210 
(µs)
AC 250 
PM253 
(µs)
AC 250 
PM254 
(µs)
AC 250 
PM255 
(µs)
a:= b - c (dint) 2.14 1.07 TBD TBD TBD TBD TBD
a:= b - c (int) 2.46 1.23 TBD TBD TBD TBD TBD
a:= b - c (real) 7.84 3.92 TBD TBD TBD TBD TBD
a:= b * c (dint) 2.24 1.12 TBD TBD TBD TBD TBD
a:= b * c (int) 2.48 1.24 TBD TBD TBD TBD TBD
a:= b * c (real) 6.28 3.14 TBD TBD TBD TBD TBD
a:= b / c (dint) 3.92 1.96 TBD TBD TBD TBD TBD
a:= b / c (int) 3.78 1.89 TBD TBD TBD TBD TBD
a:= b / c (real) 17.5 8.75 TBD TBD TBD TBD TBD
a:= b + c (dint) 2.16 1.08 TBD TBD TBD TBD TBD
a:= b + c (int) 2.46 1.23 TBD TBD TBD TBD TBD
a:= b + c (real) 8.52 4.26 TBD TBD TBD TBD TBD
a:= b <> c (dint) 3.08 1.54 TBD TBD TBD TBD TBD
a:= b <> c 
(real)
7.92 3.96 TBD TBD TBD TBD TBD
a:= b and c 
(Boolean)
2.18 1.09 TBD TBD TBD TBD TBD
a:= b and c 
(word)
2.44 1.22 TBD TBD TBD TBD TBD
a:= b or c 
(Boolean)
2.12 1.06 TBD TBD TBD TBD TBD
a:= b or c 
(word)
2.46 1.23 TBD TBD TBD TBD TBD
3BSE 026 333 R101 Rev A 73
Memory Consumption and Execution Times Section 3 Technical Data and Performance
 
a:= b xor c 
(Boolean)
2.18 1.09 TBD TBD TBD TBD TBD
a:= b xor c 
(word)
2.44 1.22 TBD TBD TBD TBD TBD
a:= shl(b, c) 
(word)
3.70 1.85 TBD TBD TBD TBD TBD
a:= shr(b, c) 
(word)
3.68 1.84 TBD TBD TBD TBD TBD
dint := real 
(real_to_dint)
79 39.5 TBD TBD TBD TBD TBD
real := dint 8.20 4.10 TBD TBD TBD TBD TBD
Real_to_time 111.6 55.8 TBD TBD TBD TBD TBD
Sqrt (real) 23.0 11.5 TBD TBD TBD TBD TBD
Str1 := Str2 
(string)
23.6 11.8 TBD TBD TBD TBD TBD
Str1 := Str2 + 
Str3 (string)
234 117 TBD TBD TBD TBD TBD
Time_to_real 40.8 20.4 TBD TBD TBD TBD TBD
Time_to_string 
(0d0h0m)
342 171 TBD TBD TBD TBD TBD
Time_to_string 
(34d10h23m 
45s678ms)
330 165 TBD TBD TBD TBD TBD
Time1 >= 
Time2
36.4 18.2 TBD TBD TBD TBD TBD
TimeElapsed 13.8 6.90 TBD TBD TBD TBD TBD
Table 12. CPU execution time for a number of standard 
operations and function calls
Operation/ 
Function
AC 800M 
PM856 
(µs)
AC 800M 
PM860 
(µs)
AC 800M 
PM861 
(µs)
AC 800C 
PM210 
(µs)
AC 250 
PM253 
(µs)
AC 250 
PM254 
(µs)
AC 250 
PM255 
(µs)
74 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Compilation and Download
 Compilation and DownloadIt takes 1 until 1.5 minutes to compile and download a 3.5 MB complex application, 
from a Pentium III 1 GHz 512 MB PC, to a controller.
CPU load is calculated as a percentage using the following formula.
CPU load (%) = 100*(Total execution time / Total interval time)
Note that applications can never use more than 70% of CPU capacity. If an 
application demands more than 70%, the controller will reschedule its tasks until the 
demand is back at 70%. 
Running a controller at close to 70% CPU load will result in poor performance and 
longer response times for peer-to-peer and OPC communication. Under all 
conditions peak cyclic load should be held at 65% and "static" cyclic load at 60%. If 
high communication throughput is important, cyclic load should be kept at 30-40%.
CPU load is also influenced by other factors, such as Modulebus scan interval and 
the number of modules on Modulebus (AC 800M), or the scanning of ABB Drives.
TimerHold 
(after stopping 
timer)
5.96 2.98 TBD TBD TBD TBD TBD
TimerHold 
(before starting 
timer)
6.04 3.02 TBD TBD TBD TBD TBD
TimerHold 
(timer on hold)
6.50 3.25 TBD TBD TBD TBD TBD
TimerHold 
(timer started)
9.26 4.63 TBD TBD TBD TBD TBD
Table 12. CPU execution time for a number of standard 
operations and function calls
Operation/ 
Function
AC 800M 
PM856 
(µs)
AC 800M 
PM860 
(µs)
AC 800M 
PM861 
(µs)
AC 800C 
PM210 
(µs)
AC 250 
PM253 
(µs)
AC 250 
PM254 
(µs)
AC 250 
PM255 
(µs)
3BSE 026 333 R101 Rev A 75
Hardware and I/O Section 3 Technical Data and Performance
 
Hardware and I/O
Modulebus Scanning of Digital/Analog Modules (AC 800M)
The Modulebus scanning (AC 800M) has great influence on CPU load, since 
I/O copying on Modulebus is handled by the controller CPU. The scan time 
increases as modules are added, and at a certain point Modulebus scanning will start 
to seriously influence CPU load. 
The Modulebus scan interval can be set in Control Builder. The interval must be set 
to fit the module requiring the shortest scan interval. A solution to this problem is to 
connect I/O variables requiring shorter scan times via the PROFIBUS adapters 
(CI851+CI854).
In AC 800M, Modulebus scanning has the highest priority. The cyclic load 
presented for IEC-61131-3 applications includes extra load caused by Modulebus 
interrupts.
76 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Hardware and I/O
 
The following table shows CPU load and scan times for three different 
configurations. The desired scan time is 100 ms.
The numbers in the above table can be calculated as follows.
where
NDigital = No. of digital modules
NAnalog = No. of analog modules
T Digital = Processing time for a digital module = 70 µs,
TAnalog = Processing time for an analog module = 120 µs,
Table 13. Scanning of digital/analog modules on AC 800M Modulebus, 
three different configurations
Item/Measured Data Configuration 1 Configuration 2 Configuration 3
Digital modules
No. of modules 72 8 8
Modulebus scan interval for 
modules
100 ms 20 ms 10 ms
CPU load (%) 5.0 2.8 5.6
Analog modules
No. of modules 24 2 5
Modulebus scan interval(1)
(1) Analog modules are scanned every fourth cycle; temperaturemodules every eighth cycle.
100 (4*400) ms 20 (4*80) ms 10 (4*40) ms
CPU load (%) 2.9 1.2 6.0
Total CPU load (%) in this case 7.9 4.0 11.6
Shortest possible scan interval for 
all above modules (ms)
33 4 5
CPU load at shortest scan interval 
(%)
23 20 23
Scan time in ms
3BSE 026 333 R101 Rev A 77
Hardware and I/O Section 3 Technical Data and Performance
 
and 
where
TSlave = Slave frame time-out time = 256 µs.
The CPU load formula is only valid if TSlave >= “Minimum Scan Interval”.
Modulebus Scanning of ABB Drives (AC 800M)−General
Scanning of ABB Drives on Modulebus also influences CPU load (for AC 800M). 
The CPU load should be calculated separately and added to the CPU load generated 
by I/O modules on the Modulebus.
Modulebus Scanning of ABB Engineered Drives (AC 800M)
Scanning of an Engineered Drive is distributed over 3*12 scan cycles. Three 
channels (DDS Pairs) are scanned in each scan cycle. The first two are always 
channels 1 and 2 (i.e. DDS Pair 10/11 and 12/13); the third will be different for each 
scan cycle. 
Table 14. Scan cycles for ABB Application Drives
Scan Cycle DDS Pair 1 DDS Pair 2 DDS Pair 3
1 10/11 12/13 14/15
2 10/11 12/13 16/17
3 10/11 12/13 18/19
4 10/11 12/13 20/21
5 10/11 12/13 14/15
6 10/11 12/13 16/17
7 10/11 12/13 18/19
8 10/11 12/13 22/23
Minimum Scan Interval
78 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Hardware and I/O
 
To scan the three DDS pairs each cycle takes approximately 1.5 ms. Therefore in a 
system that only contains Application drives, the scan time will be approximately 
1.5 ms * number of drives. It is not possible to have a scan interval less then 2 ms for 
the Modulebus scanner. Thus, for one drive the scan time will be 2 ms. 
Example
For four drives, the scan time will be 1.5 ms * 4 = 6 ms for the DDS pairs 10/11 and 
12/13, and the scan interval for the remaining of the DDS pairs will be 1.5 ms * 
4 * 12 = 72 ms. 
Modulebus Scanning of ABB Standard Drives (AC 800M)
For ABB Standard Drives, all data sets (DDS 1/2 and DDS 3/4) are scanned in each 
scan cycle. It takes approximately 1 ms to scan a single Standard Drive.
Example
For four ABB Standard Drives the scan time will be 1 ms * 4 = 4 ms. 
9 10/11 12/13 14/15
10 10/11 12/13 16/17
11 10/11 12/13 18/19
12 10/11 12/13 24/25
Table 14. Scan cycles for ABB Application Drives
Scan Cycle DDS Pair 1 DDS Pair 2 DDS Pair 3
3BSE 026 333 R101 Rev A 79
Hardware and I/O Section 3 Technical Data and Performance
 
S800 I/O Memory Consumption
Table 15. Memory consumption for S800 I/O digital input modules
Module
First Module
bytes
Next Module 
(bytes)
DI801 2780 3509.6
DI802 1756 2616
DI803 1756 2670.4
DI810 2796 3506.4
DI811 2668 3664
DI814 2668 3568
DI820 1820 2580.8
DI821 1756 2616
DI830 3676 4504
DI831 3676 4504
DI885 2264 3228
DI890 2012 2748
DP820 7336 7836
80 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Hardware and I/O
 
Table 16. Memory consumption for S800 I/O digital output modules
Module
First Module
(bytes)
Next Module 
(bytes)
DO801 3052 4052
DO802 1900 2788
DO810 3176 3884
DO814 3196 3873.6
DO815 2020 2804
DO820 2040 2768
DO821 2024 2784
DO890 1396 2234.4
Table 17. Memory consumption for S800 I/O analog input modules
Module
First Module
(bytes)
Next Module 
(bytes)
AI801 4696 5442.4
AI810 4688 5592
AI820 2672 3461.6
AI830 4572 5460.8
AI835 4656 5531.2
AI890 4708 5700
AI895 4704 5456
3BSE 026 333 R101 Rev A 81
Hardware and I/O Section 3 Technical Data and Performance
 
Table 18. Memory consumption for S800 I/O analog output modules
Module
First Module
(bytes)
Next Module 
(bytes)
AO801 4724 5463.2
AO810 4580 5666
AO820 2652 3517.6
AO890 4728 5744
AO895 4728 5463.2
82 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Hardware and I/O
 
S900 I/O Memory Consumption
Table 19. Memory consumption for S900 I/O digital combined modules
Module
First Module
(bytes)
Next Module 
(bytes)
DP910 (F12P) 5435 2716.8
DP910S (F12F) 4544 1828
DX910 (DIO8) 5792 3004
DX910 (DIO8S) 6672 3851.2
DX910 (DIO8 8I) 4740 2064
DX910 (DIO8 8I S) 5652 2893.6
Table 20. Memory consumption for S900 I/O digital output modules
Module
First Module
(bytes)
Next Module 
(kbytes))
DO910 (DO4) 4152 1485.6
Table 21. Memory consumption for S900 I/O analog input modules
Module
First Module
(bytes)
Next Module 
(bytes)
AI910 (AI4) 5500 2904.8
AI920 (AI4I) 5500 2856
AI921 (AI4IU) 5500 2856
AI930 (AI4HA) 5500 2856
AI930 (AI4HA1H) 5988 3185.6
3BSE 026 333 R101 Rev A 83
Hardware and I/O Section 3 Technical Data and Performance
 
AI930 (AI4HA4H) 7196 4361.6
AI930 (AI4HA8H) 8580 5980
AI931 (AI4HP) 5460 2832
AI931 (AI4HP1H) 5960 3272
AI931 (AI4HP4H) 7080 4396
AI931 (AI4HP8H) 8548 5788
AI950 (TI4R) 5384 2796
AI950 (TI4T) 5352 2880.8
Table 22. Memory consumption for S900 I/O analog output modules
Module
First Module
(bytes)
Next Module 
(bytes)
AO910 (AO) 5424 2827.2
AO920 (AO4I) 5424 2828.4
AO930 (AO4H) 5344 2756
AO930 (AO4H1H) 5844 3094.4
AO930 (AO4H4H) 6944 4226.4
AO930 (AO4H8H) 8320 5840
Table 21. Memory consumption for S900 I/O analog input modules
Module
First Module
(bytes)
Next Module 
(bytes)
84 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Hardware and I/O
 
S200 I/O Memory Consumption
This section lists memory consumption for S200L I/O and S200 I/O modules.
Table 23. Memory consumption for S200L I/O modules
Module
First Module
(bytes)
Next Module 
(bytes)
DI210 3 256 2 831
DO210 2 974 2 580
DX210 3 206 2 748
AI210 4 718 4 629
AO210 3 072 2 846
AX210 4 020 3 610
Table 24. Memory consumption for S200 I/O digital input modules
Module
First Module
(bytes)
Next Module 
(bytes)
200-IB16 3 108 2 904
200-IB32 4 740 4 448
Table 25. Memory consumption for S200 I/O digital combined modules
Module
First Module
(bytes)
Next Module
(bytes)
200-IB10xOB6 4 646 2 856
200-IB16xOB16P 4 726 4 606
3BSE 026 333 R101 Rev A 85
Hardware and I/O Section 3 Technical Data and Performance
 
Table 26. Memory consumption for S200 I/O digital output modules
Module
First Module
(bytes)
Next Module
(bytes)
200-OB8EP 3 034 2 746
200-OB16 4 334 2 598
200-OB16P 2 944 2 546
200-OB32P 4 560 4 460
Table 27. Memory consumption for S200 I/O analog input modules
Module)
First Module
(bytes)
Next Module
(bytes)
200-IE8 4 332 4 774
Table 28. Memory consumption for S200 I/O analog combined modules
Module
First Module
(bytes)
Next Module
(bytes)
200-IE4xOE2 3 402 3 115
Table 29. Memory consumption for S200 I/O analog output modules
Module
First Module
(bytes)
Next Module
(bytes)
200-OE4 2 828 2 632
86 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance Hardware and I/O
 
Table 30. Memory consumption for S200 I/O special modules
Module
First Module
(bytes)
Next Module 
(bytes)
200-IT8 4 768 4 488
200-IR8 4 504 4 581
200-IR8R 3 802 4 060
200-IF4I 2 428 2 224
200-OF4I 2 456 2 271
200-IA8 2 080 1 840
200-OA8 3 510 1 736
200-IM8 1 272 1 806
200-OM8 3 486 1 752
200-OW8 3 502 1 738
200-IP2 4 062 2 098
200-IP4 4 360 2 486
3BSE 026 333 R101 Rev A 87
MMS Communication Section 3 Technical Data and Performance
 
S100 I/O Memory Consumption
The performance data for S100 I/O modules is not available, because that the 
implementation is not ready yet.
MMS Communication
Serial communication performance is affected by transmission speed, message 
length and application load.
MMS communication takes place serially and asynchronously, according to the 
master/slave (or client/server) principle. The master channel of a system initiates 
the message transmission sequence, while a system acting as a slave simply 
responds to the calls from the master via a slave channel.
The following table shows the performance of a master system in terms of messages 
per second for MMSWrite and MMSRead commands respectively. 
.
88 3BSE 026 333 R101 Rev A
Section 3 Technical Dataand Performance MMS Communication
 
The two tables on the following pages show the influence of application load in 
slave systems (new measurements must be taken to deliver up-to-date values).
Table 31. Performance of MMS master system
Application
load in 
master (%)
Data type
Messages/sec.
AC 800M, 
AC 250
Write
Messages/sec.
AC 800M, 
AC 250
Read
Messages/sec.
AC 800C
Write
Messages/sec.
AC 800C
Read
0 1 dint or 1 bool 190 188 20.0 20.2
0 159 dint 65 84 4.3 10.7
0 319 bool 45 71 2.7 7.9
0 136 real 71 75 5.1 11.6
0 190 string [1] 42 81 3.0 9.8
0 6 string [140] 185 184 17.3 19.4
50 1 dint or 1 bool 95 94 8.4 8.6
50 159 dint 32 51 1.8 4.6
50 319 bool 21 46 1.2 3.4
50 136 real 34 51 2.2 4.9
50 190 string [1] 21 52 1.3 4.2
50 6 string [140] 86 93 7.0 8.4
3BSE 026 333 R101 Rev A 89
MMS Communication Section 3 Technical Data and Performance
 
Table 32. Performance of a slave system, AC 800M and Advant Controller 250.
Application
load in 
slave (%)
Messages/sec.
1 dint or 1 bool 319 bool 159 dint 136 real
W
ri
te
 c
o
m
m
an
d
 
fr
o
m
 m
as
te
r 
0 208 90 118 130
10 206 - - -
40 136 64 110 111
50 112 72 102 87
69 67 50 64 62
R
ea
d
 c
o
m
m
an
d
fr
o
m
 m
as
te
r
0 202 41 62 74
10 208 38 60 73
40 135 25 39 48
50 110 21 32 39
69 66 12 19 23
90 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance MMS Communication
 
Table 33. Performance of a slave system, AC 800C
Application
load in 
slave (%)
Messages/sec.
1 dint or 1 bool 319 bool 159 dint 136 real
W
ri
te
 c
o
m
m
an
d
 
fr
o
m
 m
as
te
r 
0 20.4 - - -
10 16.5 - - -
40 11.7 - - -
50 8.6 - - -
70 4.3 - - -
R
ea
d
 c
o
m
m
an
d
fr
o
m
 m
as
te
r
0 17.2 2.4 3.8 4.5
10 16.8 2.3 3.7 4.4
40 10.9 1.5 2.4 2.7
50 8.0 1.5 1.9 2.1
70 3.7 0.7 1.0 1.2
Note that the performance values presented here were obtained under optimized 
conditions. Several function blocks have been triggered in parallel at a short 
interval time (10 ms) to get the maximum communication rate. Please consider 
these facts when you use the figures for your communication design. Note also 
that extensive use of named access variables deteriorates performance. The 
application internal communication load can be monitored from Control 
Builder M.
The Ethernet standard allows bandwidth transmission at 10 Mb/s, 100 Mb/s (fast 
Ethernet), and 1000 Mb/s (gigabit Ethernet), but ControlIT for AC 800M/C 
currently supports only 10 Mb/s.
3BSE 026 333 R101 Rev A 91
Control Network Clock Synchronization Section 3 Technical Data and Performance
 
Control Network Clock Synchronization
Clock Synchronization
SNTP : 1 ms
CNCP (between AC 800M): 1 ms
CNCP (AC 800M to AC 800C/250): 200 ms
MB300:
Transmission speed: 200 packet/sec
Time synchronization: 3 ms
OPC Server for AC 800M/C
The OPC Server for AC 800M/C collects data from controllers via MMS, and 
makes it available to OPC clients.
Performance depends on the amount of MMS traffic between the OPC server and 
controllers. This, in turn, depends on the number of items and the rate at which the 
items are updated in the OPC Server. 
The following information is based on an OPC Server for AC 800M/C running on a 
PC with a Pentium III, 1 GHz processor and 512 Mbyte RAM. 
OPC Server for AC 800M/C can handle more than 25000 different variables in total. 
This means that, at this update rate, one OPC client can subscribe to 30000 items or 
4 OPC clients can subscribe to 7500 items each.
Performance also depends on the controller's ability to provide the OPC server with 
data. This ability is controller-dependent and shown in the table below. Values are 
based on an update rate of 1.0 s.
92 3BSE 026 333 R101 Rev A
Section 3 Technical Data and Performance OPC Server for AC 800M/C
 
This data is tested on a Pentium III, 800 MHz processor and 512 Mbyte RAM.
Table 34. Number of variables read per second at 1.0 s update rate
Controller/CPU Total Items
CPU Load
(%)
Transmission Speed
(telegram/s)
AC 800M / PM861 TBD
AC 800M / PM860 31500 40 94
AC 800C / PM210 1600 27 6
AC 250 / PM253 TBD
AC 250 / PM254 TBD
AC 250 / PM255 18000 25 54
3BSE 026 333 R101 Rev A 93
OPC Server for AC 800M/C Section 3 Technical Data and Performance
 
94 3BSE 026 333 R101 Rev A
 
Section 4 Ordering
Ordering Procedure
The product guide is aimed to assist ABB sales representatives in ordering Control 
Software and Control Builder M licenses and products.
This section describes the price lists required when ordering and provides an 
example of an order. 
However, it is outside the scope of this product guide to give a complete description 
of all ordering procedures and tools. It is assumed that each ABB sales 
representative is familiar with price lists, CAST and other tools to order.
Price Lists
Counting I/O Points
The licensing system for Control Software licenses is based on counting I/O points. 
The I/O point count is calculated based on the number of variables used on local and 
remote I/O channels, and on variables used in communication with third party 
systems. Each Boolean variable counts as one I/O point, while each non-Boolean 
variable counts as two points. See Appendix A, Licenses.
Control Software Base Licenses, version 3.1 
Document no: 3BSE 025 497
Use this price list to order the following Control Software licenses.
• Binary Control License for AC 800M/C, with or without I/O point support
• Basic Control License for AC 800M/C, with or without I/O point support
3BSE 026 333 R101 Rev A 95
Price Lists Section 4 Ordering
 
• Advanced Process Control License for AC 800M/C, with or without I/O point 
support
• Optional Advanced Control License for Fuzzy Control Library (this option 
might be removed)
Control Software Expansion Licenses, version 3.1 
Document no: 3BSE 025 498
Use this price list to order the following Control Software licenses.
• Binary Control I/O Expansion License for AC 800M/C, from x to y I/O Points 
(for a number of x and y values)
• Basic Control I/O Expansion License for AC 800M/C, from x to y I/O Points 
(for a number of x and y values)
• Advanced Process Control I/O Expansion License for AC 800M/C, from x to y 
I/O Points (for a number of x and y values)
• Optional Advanced Control License for Fuzzy Control Library (this option 
might be removed)
• Expansion to a higher license level from
– Binary Control to Basic Control, with or without I/O Point support
– Basic Control to Advanced Control, with or without I/O Point support
– Binary Control to Advanced Control, with or without I/O Point support
Note that it might be necessary to obtain several I/O point expansion licenses 
should the I/O point count increase notably. Should the need for I/O point support 
increase from x to z, then two licenses are required: one for expansion from x to y 
I/O points, and one for expansion from y to z I/O points.
96 3BSE 026 333 R101 Rev A
Section 4 Ordering Price Lists
 
Control Builder M Base Licenses, version 3.1 
Document no: 3BSE 028 325
Use this price list to order the following Control Builder M licenses
• Control Builder M Basic
• Control Builder M Standard
• Control Builder M Professional
Control Builder M Expansion Licenses, version 3.1
Document no: 3BSE 028 326
• Expansion to a higher Control Builder M license level from
– Basic to Standard
– Basic to Professional
– Standard to Professional
OPC Server for AC 800M/C Licenses, version 3.1 
Document no: 3BSE 025 500
Use this price list to order the following OPC Server for AC 800M/C licenses.
• License for OPC Server, version 3.1, Support for Data Access and 
Alarm/Event
AC 800M/C, Product Box (sw ver. 3.1) and Manuals 
Document no: 3BSE 025 501
This price list is used for ordering the following ControlIT products.
• ControlIT for AC 800M/C, Product Box, version 3.1
• ControlIT for AC 800M/C, CD only, version 3.1
• ControlIT for AC 800M/C, version 3.1, individual manuals
3BSE 026 333 R101 Rev A 97
Ordering ExampleSection 4 Ordering
 
Ordering Example
The first part of this example shows how to use price lists to order a "normal" 
Control Software and Control Builder M constellation. The second part shows how 
to use the price lists to expand the original order.
Original Order
The following is to be ordered:
• A Control Builder M Standard License
• A Control Software Basic Control License, with support for up to 50 I/O points
Step-by-step Example:
1. Find the correct price list for the Control Builder Standard license:
The Control Builder M license price list has the number 3BSE 028 325
2. Find the correct heading and item number:
1.4 Control Builder Standard, A205
3. Find the correct price list for Control Software Base licenses:
The Control Software Base license price list has the number 3BSE 025 497
4. Find the correct heading and item number:
3.1 Basic License, C008
5. Find the correct heading for I/O support and the I/O Point level immediately 
above 50 I/O points:
3.2 I/O Point Support, C015 corresponds to a maximum of 64 I/O points
Order A205 from list number 3BSE 028 325. Order C008 and C015 from price list 
number 3BSE 025 497.
For information on how to calculate I/O points, refer to Appendix A, Licenses.
To create a working margin, it is recommended that a 20 percent margin be used 
when calculating the number of I/O points. The above 50 I/O points are assumed 
to include such a margin.
98 3BSE 026 333 R101 Rev A
Section 4 Ordering Expansion of an Existing Installation
 
Expansion of an Existing Installation
The license ordered in the first part of the example is to be expanded. The following 
should be included on the expansion order:
• An expansion license from Basic Control to Advanced Process Control
• The license should support 180 I/O points, instead of the 64 I/O points 
supported by the current license
Step-by-step example:
1. Find the correct price list for expansion of Control Software licenses:
The Control Software Expansion Licenses price list has the number 
3BSE 025 498.
2. Find the correct heading for expanding the license:
7.1 Base License (no I/O Support), F008 is used for expansion from Basic 
Control to Advanced Process Control, and F015 is required for support of up to 
64 I/O points.
3. Find the correct heading for expanding the number of I/O points for an 
Advanced Process Control license:
4.1 Incremental licenses for expansion of I/O support are used to expand the 
number of I/O points for an Advanced Process Control license.
4. Find the items corresponding to expansion from 64 to 180 I/O points:
4.1 Incremental licenses for expansion of I/O support, C020 expands I/O point 
support from 64 to 128 I/O points, and C025 expands I/O point support from 
128 to 200 I/O points
Order F008, F015, C020 and C025 from price list number 3BSE 025 498.
Note that expanding I/O point support from 64 to 200 points requires two I/O 
point expansion licenses, C020 and C025.
3BSE 026 333 R101 Rev A 99
Expansion of an Existing Installation Section 4 Ordering
 
100 3BSE 026 333 R101 Rev A
 
Appendix A Licenses
License Concept
The license concept for AC 800M/C controllers is as follows.
• A license is required for the Control Builder M engineering and programming 
tool. There are three Control Builder variants, each with its own license (Basic, 
Standard, and Professional)
• A runtime license is required for each controller, for running and executing 
applications. It is called a Control Software license, and is based on two 
independent factors:
– the libraries used
– the number of used I/O points (see definition below)
• A license is required for integration between Control Software and other 
IndustrialIT products, either through OPC Server for AC 800M/C (in which 
case integration can include third party products) or through 
AC 800M/C Connect.
If OPC Server for AC 800M/C is used without AC 800M/C Connect, then a 
specific OPC Server for AC 800M/C license is required. 
If AC 800M/C Connect is installed, the license cost is based on the tag count, see 
AC 800M/C Connect Tags on page 106. The OPC Server for AC 800M/C license 
is then included in the AC 800M/C Connect license.
3BSE 026 333 R101 Rev A 101
Control Builder M Licenses Appendix A Licenses
 
Control Builder M Licenses
A license is required for each Control Builder M variant:
• Control Builder M Basic 
• Control Builder M Standard 
• Control Builder M Professional
Control Builder M Professional is required when using AC 800M/C Connect.
Expansion Licenses
Special licenses are required for moving from one Control Builder M variant to 
another:
• Control Builder M Basic to Control Builder M Standard
• Control Builder M Basic to Control Builder M Professional
• Control Builder M Standard to Control Builder M Professional
Control Software Licenses
Control Software licenses consist of a Base License (see below), with support for a 
number of I/O points.
Figure 15. Control Software licenses are based on the libraries used in applications 
and on the I/O point count
To find out which Control Software license to use, look up the relevant Base license 
(see Base Licenses on page 103) count the I/O point (see I/O Points on page 104), 
and find the right combination in the price list.
In controller Large numbers of I/O points
Small numbers of I/O points
Several and more 
advanced libraries
A few libraries
102 3BSE 026 333 R101 Rev A
Appendix A Licenses Base Licenses
 
Base Licenses
There are three Control Software Base licenses.
• Binary Control
• Basic Control
• Advanced Process Control
The fuzzy control library, FuzzyLib, can be ordered as an option.
The following table shows the libraries included in each Base license type. Libraries 
containing supporting functions only (such as ControlSupportLib and IconLib) are 
not included.
Table 35. Libraries included in different Base license types
License Level Libraries 
Binary Control SystemLib
Basic Control SystemLib
CommunicationLib(1)
ProcessObjBasicLib
ControlBasicLib
(1) This library contains control modules, the use of which requires Control Builder M 
Professional.
ControlSimpleLib
SerialLib
SignalObjLib
BatchLib
Advanced Process Control SystemLib
CommunicationLib(1)
AlarmEventLib(1)
ProcessObjBasicLib
ProcessObjExtLib(1)
ControlBasicLib
ControlSimpleLib
ControlStandardLib(2)
ControlExtendedLib(2)
ControlAdvancedLib(2)
SerialLib
SignalObjLib
BatchLib(1)
INSUMLib
(2) This library consists of control modules which require Control Builder M Professional.
FuzzyLib Option FuzzyLib(2)
3BSE 026 333 R101 Rev A 103
I/O Points Appendix A Licenses
 
Expansion Licenses
Base licenses can be expanded through the following three expansion licenses:
• Binary Control to Basic Control 
• Basic Control to Advanced Process Control 
• Binary Control to Advanced Process Control
I/O Points
The I/O point count is based on all variables connected to local and remote I/O 
channels. Variables are either connected via the I/O buses, such as Modulebus, 
FOUNDATION Fieldbus (FF) and Profibus-DP.
• Each variable of Boolean data type counts as one I/O point
• Each variable of non-Boolean data type counts as two I/O points
Counting I/O Points
To calculate the total number of I/O points:
• Identify all objects to be controlled by each controller
• Count all Boolean connected variables 
• Count all non-Boolean connected variables 
• For each Boolean variable, add one (1) I/O point to the I/O count
• For each non-Boolean variable, add two I/O points to the I/O count
• Add 20% to the I/O point count, to create a margin for growth
I/O Point Expansion Licenses
If the I/O point count exceeds the supported level, an expansion license can be used 
to move to a higher I/O point level. If the I/O point count increases notably, several 
expansion licenses might be required. See ControlIT for AC 800M/C price lists.
104 3BSE 026 333 R101 Rev A
Appendix A Licenses Examples of Control Software Licenses
 
Examplesof Control Software Licenses
Examples of combinations of Base licenses and I/O point support:
• Binary Control license, with support for up to 64 I/O points
• Basic Control license, with support for up 1200 I/O points
• Advanced Process Control, with support for more than 1600 I/O points
OPC Server for AC 800M/C Licenses
The OPC Server for AC 800M/C license includes support for OPC Data 
Access 2.05, as well as OPC Alarms and Events 1.02.
This license is not required if an AC 800M/C Connect license is purchased, since an 
OPC server license is included in the Connect license.
AC 800M/C Connect Licenses
AC 800M/C Connect License Concept
An AC 800M/C Connect license consists of a base license, with support for a 
number of tags (see below). 
• The base license for the first AC 800M/C Connect workplace should support 
the number of tags used in the integrated configuration. Tag support can be 
selected in stages up to a maximum number. The OPC Server for AC 800M/C 
license is included free of charge.
• Additional Connect licenses must be purchased for each additional workplace. 
These licenses, with reference to the base license, are also based on the number 
of tags used in that particular workplace.
• Expansion licenses can be used to expand the number of tags supported by an 
AC 800M/C Connect license.
The number of tags is calculated in the integrated system, and is a measure of the 
size and complexity of the system. For a description of how to calculate tags, see 
AC 800M/C Connect Tags on page 106.
3BSE 026 333 R101 Rev A 105
AC 800M/C Connect Tags Appendix A Licenses
 
AC 800M/C Connect Tags
An AC 800M/C Connect tag is equivalent to an instance of a function block or 
control module type that is set to be an aspect object. Only instances of types set to 
be aspect objects are mirrored to or from Process Portal A. All such mirrored 
instances are counted, the result being the number of tags for the AC 800M/C 
Connect license.
All instances of aspect objects are treated equally, regardless of whether their types 
reside in a standard library or in a custom-made library or application.
Programs are always mirrored, but are not counted as tags. However, any instance of 
an aspect object within them is counted as a tag.
Hardware instances are always mirrored, but are not counted as tags.
Using deep structures in an application may produce more tags than the use of 
flat structures. However, deep structures are normally the result of object-
oriented programming, which typically requires fewer engineering and testing 
hours than traditional programming methods. Do not jeopardize the benefits of 
object-oriented programming just to lower the number of tags.
106 3BSE 026 333 R101 Rev A
Appendix A Licenses Tag Counting Example
 
Tag Counting Example
In the example, all instances of the ConveyorProcessLib:Conveyor control module 
type Figure 16 are set to be aspect objects. One conveyor will then be equivalent to 
eight tags, and all eight conveyors will then generate 64 tags.
Figure 16. Eight conveyors with eight tags each generate 64 tags
Eight tags
3BSE 026 333 R101 Rev A 107
Example of Simple AC 800M/C System Configuration Appendix A Licenses
 
Example of Simple AC 800M/C System Configuration
The following licenses are required to build, download and run applications for a 
simple AC 800M/C controller system configuration (Figure 17).
1. A Control Builder M license
2. A Control Software license based on the I/O point count
3. An OPC Server for AC 800M/C license for connection to 3rd party OPC 
clients
Figure 17. Simple AC 800M/C system configuration
Controller Control Software 
license (2)
OPC Server for 
AC 800M/C (3)
fieldbuses
Control Builder M (1)
local
I/O points
3rd party OPC clients
remote 
I/O points
108 3BSE 026 333 R101 Rev A
Appendix A Licenses Example of Integrated AC 800M/C System Configuration
 
Example of Integrated AC 800M/C System Configuration
This example configuration shows AC 800M/C Connect being used to integrate 
Control Builder M with the Process Portal A environment via Aspect Integration 
Platform, AIP (Figure 18). 
The following licenses are required for the example configuration.
• Two Control Builder M Professional licenses (1)
• Three Control Software licenses, one for each controller A, B, and C, based on 
libraries used and the I/O point count of each controller (2)
• An AC 800M/C Connect license (this license includes an OPC Server for 
AC 800M/C) for the Process Portal A server (3)
• Two AC 800M/C Connect licenses, one for each additional Process Portal A 
client that is part of the integrated AC 800M/C configuration (4)
• Process Portal A licenses (5) are also required. These are described in the 
Process Portal A product guide (see Related Product Guides on page 18)
Figure 18. Example of an integrated AC 800M/C system configuration
Controller 
A
Process Portal A (5) 
Server
AC 800M/C Connect (3)
OPC Server for 
AC 800M/C included
Control Builder M 
Professional (1)
Control Software 
licenses (2)
Controller 
B
Controller 
C
3rd party 
system
remote 
I/O points
fieldbuses
local
I/O points
local
I/O points
Process Portal A (5) 
Client 1
AC 800M/C Connect (4)
Control Builder M 
Professional* (1)
Process Portal A (5) 
Client 2
AC 800M/C Connect (4)
* Control Builder M Professional 
is required if using mirroring to a 
Process Portal A client.
local
I/O points
3BSE 026 333 R101 Rev A 109
Example of Integrated AC 800M/C System Configuration Appendix A Licenses
 
110 3BSE 026 333 R101 Rev A
 
Appendix B Supported Hardware and I/O Systems
Controllers
AC 800M
The following AC 800M modules are supported.
• PM856
PM856 is a high-performance, 32-bit, Single Board Computer, which directly 
connects to the S800 I/O system via Modulebus.
Unit Description
PM856 CPU
PM860 CPU
PM861 CPU
CI851 Communication Interface PROFIBUS-DP/V0
CI852 Communication Interface Foundation Fieldbus H1
CI853 Communication Interface RS-232C
CI854 Communication Interface PROFIBUS-DP/V1
CI855 Communication Interface MasterBus 300
CI856 Communication Interface S100 I/O
CI857 Communication Interface INSUM
3BSE 026 333 R101 Rev A 111
AC 800M Appendix B Supported Hardware and I/O Systems
 
• PM860
PM860 is a high-performance, 32-bit, Single Board Computer, which directly 
connects to the S800 I/O system via Modulebus.
PM860 is twice as fast as PM856 in executing an application program.
• PM861 (Redundant and Singular)
PM861 is a high-performance, 32-bit, Single Board Computer, which directly 
connects to the S800 I/O system via Modulebus.
PM861 has one optional Redundancy Control Link for redundant 
configuration.
Communication Interface Modules
• CI851
The CI851 unit is the communication interface for PROFIBUS-DP/V0 for the 
AC 800M. It is a master unit and you can connect up to 125 slaves to it. 
However, you cannot connect more than 32 units in one segment.
• CI852
CI852 is the communication interface for the Fieldbus Foundation H1 bus for 
the AC 800M. The unit acts as a Link Active Scheduler (LAS) on the H1 bus.
• CI853
CI853 is the RS-232C serial communication interface unit for the AC 800M.
• CI854
The CI854 unit is the communication interface for PROFIBUS DP for the 
AC 800M with redundant PROFIBUS lines and DP/V1 communication. It is a 
master unit and you can connect up to 125 slaves to the master. However, you 
cannot connect more than 32 units in one segement.
Two possible settings of the serial ports on the CI853 unit are not valid and must 
not be used. These are:
1) 7 data bits, no parity, 1 stop bit
2) 8 data bits, parity, 2 stop bits
112 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems AC 800C
 
• CI855
The CI855 unit is the communication interface for MasterBus 300 for the 
AC 800M.
CI855 houses two Ethernet ports to support MasterBus 300 Network 
redundancy.
• CI856
The CI856 is a communication interface for the S100 I/O system for the 
AC 800M.Up to five S100 I/O racks can be connected to one CI856 where 
each I/O rack can hold up to 20 I/O boards.
• CI857
The CI857 unit is the communication interface for INSUM for the AC 800M.
AC 800C
The following AC 800C modules are supported.
• PM210
The PM210 is a high-performance, 32-bit, Single Board Computer with digital 
inputs and outputs directly on-board.
The controller is connected to the S200L I/O system. It is also possible to 
connect different communication and fieldbus boards using two inbuilt 
expansion slots.
Unit Description
PM210 CPU
CI271 Communication Interface RS-232C
CI272 Communication Interface Ethernet
CI274 Communication Interface PROFIBUS-DP/V0
3BSE 026 333 R101 Rev A 113
Advant Controller 250 Appendix B Supported Hardware and I/O Systems
 
Communication Interface Modules
• CI271
The CI271 unit is the RS-232C serial communication interface unit for 
AC 800C.
• CI272
The CI272 unit is the Ethernet communication interface unit for AC 800C.
• CI274
The CI274 unit is the PROFIBUS-DP communication interface unit for the AC 
800C. It is a master unit and you can connect up to 125 slaves to it. However, 
you cannot connect more than 32 units in one segment.
Advant Controller 250
The following Advant Controller 250 modules are supported.
Unit Description
PM253 CPU
PM254 CPU
PM255 CPU
200-PSMG Master power supply
200-PSSG Slave power supply
200-CICN Communication Interface ControlNet
200-CIPB/DP Communication Interface PROFIBUS-DP/V0
200-CISB Communication Interface SattBus
200-CIE Communication Interface Ethernet
200-CI232 Communication Interface RS-232C
200-CI485 Communication Interface RS-485
200-DU Blank unit for protection of the bus
114 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems Advant Controller 250
 
• PM253
PM253 is a high-performance, 32-bit, Single Board Computer available in 
different configurations.
It is a CPU with 2 Mbyte memory. The unit has two serial (COM) ports and 
one SattBus interface.
• PM254
PM254 a high-performance, 32-bit, Single Board Computer available in 
different configurations.
It is a CPU with 8 Mbyte memory. The unit has two serial (COM) ports and 
one SattBus interface.
• PM255
PM255 is a high-performance, 32-bit, Single Board Computer available in 
different configurations. It has a floating point processor (FPU).
It is a CPU with 8 Mbyte memory. The unit has one serial (COM) port.
Power Supplies
• 200-PSMG
200-PSMG is the master power supply unit for the Advant Controller 250 
system.
Only one 200-PSMG can be used in a system. For higher capacity, one or more 
200-PSSGs can be added.
• 200-PSSG
200-PSSG is a complementary power supply to 200-PSMG when an additional 
power supply is needed in a system.
Communication Interface Modules
• 200-CICN
200-CICN is a communication interface unit for remote I/O for ControlNet I/O.
• 200-CIPB/DP
The 200-CIPB/DP is the PROFIBUS-DP/V0 communication interface unit for 
the Advant Controller 250. It is a master unit and you can connect up to 125 
slaves to the master. However, you cannot connect more than 32 units in one 
segment.
3BSE 026 333 R101 Rev A 115
Advant Controller 250 Appendix B Supported Hardware and I/O Systems
 
• 200-CISB
200-CISB is a SattBus communication interface unit with two SattBus 
supervisor channels, which may be configured individually.
• 200-CIE
200-CIE is the Ethernet communication interface unit.
• 200-CI232
200-CI232 is a communication interface unit with two RS-232C asynchronous 
serial channels, which may be configured individually.
• 200-CI485
200-CI485 is a communication interface unit with two RS-485 asynchronous 
serial channels (with galvanic isolation), which may be configured individually.
• 200-DU
200-DU is a blank unit used to protect an empty slot in the backplane from 
external mechanical and electrical damage.
Earlier versions of 200-DU were called 200-DMOD.
116 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems Adapters
 
Adapters
Adapter Can be connected to HART SOE
TB820 PM856
PM860
PM861 (single CPU only)
Yes(1)
Yes(1)
Yes(1)
(1) HART and SOE are also available for modules placed on the electrical modulebus (12 
slots) for PM856, PM860, and PM861 (single CPU only).
Yes(1)
Yes(1)
Yes(1)
TB840 PM856
PM860
PM861
Yes
Yes
Yes
Yes
Yes
Yes
DSBC 173A CI856 No Yes
DSBC 174 CI856 No Yes
DSBC1 76 CI856 No Yes
CI830 CI274
CI851
CI854
200-CIPB/DP
No
No
No
No
No
No
No
No
CI840 CI854 Yes No
CI920 CI851
CI854
200-CIPB/DP
CI274
No
Yes
No
No
No
No
No
No
200-RACN 200-CICN No No
200-ACN 200-CICN No No
200-ANN PM253
PM254
PM255
No
No
No
No
No
No
200-APB12 CI274
CI851
200-CIPB/DP
No
No
No
No
No
No
200-AIO PM210 No No
3BSE 026 333 R101 Rev A 117
Adapters Appendix B Supported Hardware and I/O Systems
 
• TB820
Modulebus Modem
• TB840
Modulebus Modem, primarily for redundant modulebus.
• DSBC 173A
The DSBC 173A unit is the bus extender slave inserted in the last position of a 
S100 I/O rack.
• DSBC 174
The DSBC 174 unit is the bus extender slave inserted in the last position of a 
S100 I/O rack.
• DSBC 176
The DSBC 176 unit is the bus extender slave inserted in the last position of a 
S100 I/O rack.
• CI830
The unit CI830 is a remote PROFIBUS-DP I/O adapter for units. CI830 is 
connected to a controller via a PROFIBUS-DP master unit on the controller 
system bus.
The CI830 can handle up to 24 S800 I/O-units. 12 I/O-units can be directly 
connected to the ModuleBus on the CI830, while the remaining I/O-units have 
to be connected via I/O-clusters. Up to 7 I/O-clusters can be connected to one 
CI830, and the numbering of I/O-units connected to a cluster will start with 
101 for cluster 1, 201 for cluster 2 and so on.
• CI840
The CI840 is a remote PROFIBUS-DP/V1 adapter for S800 I/O units.
The CI840 can handle up to 24 S800 I/O-units. 12 I/O-units can be directly 
connected to the ModuleBus on the CI840, while the remaining I/O-units have 
to be connected via I/O-clusters. Up to 7 I/O-clusters can be connected to one 
CI840, and the numbering of I/O-units connected to a cluster will start with 
101 for cluster 1, 201 for cluster 2 and so on.
118 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems Adapters
 
• CI920
The CI920 is a communication interface which connects the S900 Station to 
the external fieldbus. The data received via the fieldbus are distributed 
accordingly to the respective I/O modules. The parameters are submitted to a 
plausibility check. The incoming data are buffered and are available even in 
case of a fieldbus failure. When an I/O module needs to be replaced, the new 
module can be parameterized immediately.
• 200-RACN
An Advant Controller 250 configured with a ControlNet communication 
interface (200-CICN) may connect to a remote rack-based I/O system. The 
200-RACN unit is a remote ControlNet I/O adapter for rack based I/O units. 
200-RACN is connected to the controller via a 200-CICN unit on the controller 
system bus. In the Project Explorer, below the 200-CICN unit, one or several 
adapter 200-RACN units are used as nodes on the ControlNet fieldbus. A 200-
RACN unit can have up to sixteen I/O boards.
Limitations
– On each ControlNet fieldbus, maximun eight (8) I/O-racks are supported, 
if 200-CICN Firmware version = 1.3
– Expansion I/O-racks are not supported, i.e. it is necessary to install a 200-
RACN board in every I/O-rack
– Expansion racks, with board adresses starting with 20, 60, etc., are not 
supported
• 200-ACN
The 200-ACN unit is a remote ControlNet I/O adapter for I/O units. 200-ACN 
is connected to the controller via a 200-CICN unit on the controller system bus. 
In the Project Explorer, below the 200-CICN unit, one or several adapter 200-
ACN units are used as nodes on the ControlNet fieldbus. A 200-ACN unit can 
have up to eight I/O units.
• 200-ANN
The 200-ANN unit is a central I/O adapter for I/O units. One or several 200-
ANN units can be connected to the Advant Controller250 system bus. Up to 
eight I/O units can be connected to each 200-ANN unit.
• 200-APB12
The 200-APB12 unit is a remote PROFIBUS-DP I/O adapter for I/O units. 
200-APB12 is connected to the controller via a PROFIBUS DP master unit on 
the controller system bus. A 200-APB12 unit can have up to eight I/O units.
3BSE 026 333 R101 Rev A 119
I/O Families Appendix B Supported Hardware and I/O Systems
 
• PM210, 200-AIO
In the Project Explorer, for an AC 800C, the two Ext I/O adapters can have up 
to eight I/O units.
On the AC800C CPU unit the Ext I/O adapters are built-in. Locate the I/O units 
to the right of the first Ext I/O in position 11. For the second Ext I/O, in 
position 12, you must have a 200-AIO cable connector with a housing to which 
the I/O units are located on another rail.
I/O Families
I/O Family Connects To
S100 I/O CI856
S200 I/O PM210
200-AIO
200-ANN
200-ACN
200-APB12
S200L I/O PM210
200-AIO
200-ANN
200-ACN
200-APB12
S800 I/O PM856, PM860, PM861
TB820, TB840
CI830, CI840
S900 I/O CI920
Rack I/O 200-RACN
ABB Standard Drives PM856, PM860, PM861
TB820, TB840
CI830
ABB Engineered Drives PM856, PM860, PM861
TB820, TB840
120 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems S100 I/O
 
S100 I/O
The following selection of S100 I/O modules are supported.
Name Description
DSAI 130
DSAI 130A
Analog input board, 16 channels
DSAI 130D Analog input board, 16 channels with 4 sets of filter times
DSAI 133
DSAI 133A
Analog input board, 32 channels
DSAI 146 Analog input board, 31 channels for Pt100 elements
DSAI 155
DSAI 155A
Analog input board, 16 channels for thermocouples
DSDI 110
DSDI 110A
DSDI110AV1
Digital input board, 14 channels, 24V
DSDI 120
DSDI 120A
DSDI 120AV1
Digital input board, 32 channels, 48 V
DSDO 110 Digital output board, 32 channels
DSDO 115 Digital output board, 32 channels
DSDO 115A Digital output board, 32 channels, OSP control
DSAO 110 Analog output board, 4 channels
DSAO 120 Analog output board, 8 channels
DSAO 120A Analog output board, 8 channels, OSP control
DSAO 130 Analog output board, 16 channels
DSAO 130A Analog output board, 16 channels, OSP control
DSAX 110
DSAX 110A
Analog input/output board, 8+8 channels
DSDP 010 Absolute binary decoder with hardware strobe, 2 channels
3BSE 026 333 R101 Rev A 121
S200 I/O Appendix B Supported Hardware and I/O Systems
 
S200 I/O
DSDP 140B Positioning controller board
DSDP 161 Loop transducer interface, 4 channels
DSDP 170 Pulse counter board, 4 channels
Name Description
200-DUTB Dummy I/O unit
200-IA8 Digital input unit, 8 inputs
200-IB10xOB6 Digital combined unit, 10 inputs and 6 outputs
200-IB16 Digital input unit, 16 inputs
200-IB16xOB16P Digitally combined unit, 16 inputs and 16 outputs
200-IB32 Digital input unit, 32 inputs
200-IE4xOE2 Analog combined unit, 4 inputs and 2 outputs
200-IE8 Analog input unit, 8 inputs
200-IF4I Analog input unit, 4 inputs
200-IM8 Digital input unit, 8 inputs
200-IP2 Pulse counter board, 2 x 4 inputs
200-IP4 Pulse counter board, 4 x 2 inputs
200-IR8 Analog input unit, 8 inputs
200-IR8R Analog input unit, 8 inputs
200-IT8 Analog input unit, 8 inputs
200-OA8 Digital output unit, 8 outputs
200-OB16 Digital output unit, 16 outputs
200-OB16P Digital output unit, 16 outputs
Name Description
122 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems 200L I/O
 
200L I/O
S800 I/O
200-OB32P Digital output unit, 2 x 16 outputs
200-OB8EP Digital output unit, 8 outputs
200-OE4 Analog output unit, 4 outputs
200-OF4I Analog output unit, 4 outputs
200-OM8 Digital output unit, 8 outputs
200-OW8 Digital output unit, 8 outputs
Name Description
AI210 Analog input unit, 8 inputs
AO210 Analog output unit, 4 outputs
AX210 Analog combined unit, 4 inputs and 2 outputs
DI210 Digital input unit, 16 inputs
DO210 Digital output unit, 16 outputs
DX210 Digital combined unit, 10 inputs and 6 outputs
See also, S200C I/O on page 127.
Name Description
AI801 Analog input unit, 8 inputs
AI810 Analog input unit, 8 inputs
AI820 Differential analog input unit, 4 inputs
Name Description
3BSE 026 333 R101 Rev A 123
S800 I/O Appendix B Supported Hardware and I/O Systems
 
AI830 Analog input unit, 8 inputs
AI835 Analog input unit, 8 inputs
AI890 Analog input unit, 8 inputs
AI895 Analog input unit, 8 inputs(1)
AO801 Analog output unit, 8 outputs
AO810 Analog output unit, 8 outputs
AO820 Analog output unit, 4 outputs
AO890 Analog output unit, 8 outputs
AO895 Analog output unit, 8 outputs(1)
DI801 Digital input unit, 16 inputs
DI802 Digital input unit, 8 inputs
DI803 Digital input unit, 8 inputs
DI810 Digital input unit, 16 inputs
DI811 Digital input unit, 16 inputs
DI814 Digital input unit, 16 inputs
DI820 Digital input unit, 8 inputs
DI821 Digital input unit, 8 inputs
DI830 Digital input unit, 16 inputs(1, 2)
DI831 Digital input unit, 16 inputs(1, 2)
DI885 Digital input unit, 8 inputs(1, 2)
DI890 Digital input unit, 8 inputs
DO801 Digital output unit, 16 outputs
DO802 Digital output unit, 8 outputs
DO810 Digital output unit, 16 outputs
Name Description
124 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems S900 I/O
 
S900 I/O
DO814 Digital output unit, 16 outputs
DO815 Digital output unit, 8 outputs
DO820 Digital output unit, 8 outputs
DO821 Digital output unit, 8 outputs
DO890 Digital output unit, 8 outputs
DP820 Digital pulse counter(2)
(1) Not in CI830
(2) Not in CI840
Name Description
AI910N/S Analog input unit, 4 inputs
AI920N/S Analog input unit, 4 inputs
AI921N/S Analog input unit, 4 inputs
AI930N/S Analog input unit, 4 inputs
AI931N/S Analog input unit, 4 inputs
AI950N/S Analog input unit, 4 inputs
AO910N/S Analog output unit, 4 outputs
AO920N/S Analog output unit, 4 outputs
AO930N/S Analog output unit, 4 outputs
DO910N/S Digital output unit, 4 outputs
DP910N/S Frequency input and pulse counter
DX910N/S Bidirectional unit, 8 channels
Name Description
3BSE 026 333 R101 Rev A 125
ABB Standard Drives Appendix B Supported Hardware and I/O Systems
 
ABB Standard Drives
ABB Engineered Drives
Name Application
ACS400 Standard drive
ACS600 Crane application
ACS600 Pump and fan application
ACS600 Standard application
ACS800 Crane application
ACS800 Pump and fan application
ACS800 Standard application
DCS400 Standard drive
DCS500 Standard drive
Name Application
ACS600 IGBT supply (ISU) application
ACS600 System application
ACS600AD Asynchronous drive
ACS600C Cyclo converter drive
ACS600SD Synchronous drive
ACS800 IGBT supply (ISU) application
ACS800 System application
ACS1000 Standard drive
DCS600 System application
126 3BSE 026 333 R101 Rev A
Appendix B Supported Hardware and I/O Systems I/O for Updating
 
I/O for Updating
S200C I/O
Rack I/O
The boards are only supported for Advant Controller 250 on ControlNet.
Name Description
200C-IB10xOB6P Digital combined unit, 10 inputs and 6 outputs
200C-IB16 Digital input unit, 16 inputs
200C-IE4xOE2 Analog combined unit, 4 inputs and 2 outputs
200C-IE8 Analog input unit, 8 inputs
200C-OB16P Digital output unit, 16 outputs
200C-OE4 Analog output unit, 4 outputs
Name Description
RAID16 Used for IAPG, IDLD (16-bit digital input)
RAID32 Used for IDP, IDPG, IDN, IDI, PTC, IPA4 (32-bit digital input)
RAOD16 Used for ORG, ORGH, OATG, ODP2, ODPG2, ORM (16-bit 
digital output)
RAOD32 Used for ODP.5, ODP.8, ODPG.8, ODPL.5, ODPLD, ODN.2, 
ODLD.5, ODSG (32-bit digital output)
RAIA8 Used for IBA, IRA, ICA, IVA, IVAPOT (8 channel analog input)
RAOA2 Used for OCVA (2 channel analog output)
RAOA4 Used for OCAHG, ACAH (4 channel analog output)
RAOAH4 Used for OCAH with hand-station ( 4 channel output / manual)
RAIPA4 Used for IPA4 (32-bit digital input (counter))
3BSE 026 333 R101 Rev A 127
I/O for Updating Appendix B Supported Hardware and I/O Systems
 
128 3BSE 026 333 R101 Rev A
 
Appendix C Library Objects Overview
This appendix gives an overview of alllibrary objects, such as data types, functions, 
function block types and control module types that can be used in applications 
created using the Control Builder engineering tool. Refer to manuals and Control 
Builder online help describing the libraries in detail for further information..
Some tables have a display column headed ED and/or OD indicating that the 
function includes a faceplate with associated display elements. ED denotes Engineer 
Display (Control Builder M) and OD denotes Operator Display (HSI).
All Library function types are protected, apart from a few. This means that the types 
cannot be copied to your own library and then modified. You can check whether the 
library function is protected by selecting the function in the Project Explorer and 
then trying to copy it. A dimmed function means it is protected.
3BSE 026 333 R101 Rev A 129
System Library Appendix C Library Objects Overview
 
System Library
This System Library (SystemLib) is the basic library for the Control Builder M. It 
contains IEC 61131-3 data types, functions and function block types, together with 
data types, functions and function block types with extended functionality, designed 
by ABB. About 130 functions are contained in this library.
130 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Data Types in SystemLib
 
Data Types in SystemLib
IEC 61131-3 Standard Data Types
I/O-Related Data Types
Table 36. IEC 61131-3 Standard data types.
Data type Description
Bool Boolean
Date_and_time Date and time of day (Year, Month, Day, Hour, Minute, 
Second, Millisecond)
Dint Signed double integer (32 bits). Range –2,147,483,648 to 
2,147,483, 647
Dword Double word (32-bit) bit string.
Int Signed integer (16-bit). Range –32,768 to 32,767
Real Floating point values in the range +/– 10+/–38
String String data type for character strings. Maximum string 
length 140 characters
Time Duration (Day, Hour, Minute, Second, Millisecond)
Uint Unsigned integer (16-bit) with the range 0…65535
Word Word (16-bit) bit string
Table 37. I/O Related data types.
Data type Description
BoolIO Represents a discrete I/O point (input or output). This 
structure contains:
Value (Bool) Value in the application
IOValue (Bool) Value from I/O before forcing
Forced (Bool) True if the input or output is forced
3BSE 026 333 R101 Rev A 131
Data Types in SystemLib Appendix C Library Objects Overview
 
RealIO Represents an analog I/O point (input or output). This 
structure contains:
Value (real) Value used by the application
IOValue (real) Value of the I/O channel.Forced (Bool) True 
if the channel is forced
Status (dint) Status of the channel
Parameters (SignalPar) I/O settings and scaling
DintIO Represents an integer I/O point (input or output). This 
structure contains:
Value (dint) Value in the application
IOValue (dint) Value from I/O before forcing
Forced (bool) True if the input or output is forced
DwordIO Represents a bitstring I/O point (input or output). This 
structure contains:
Value (dword) Value in the application
IOValue (dword) Value from I/O before forcing
Forced (bool) True if the input or output is forced
SignalPar The SignalPar data type is used for Max, Min, Inverted, 
Fraction and Unit values of analog signals. The structure 
contains:
Max (real): Max value
Min (real): Min value
Inverted (bool): Indicates if input is inverted
Fraction (dint): Signal fraction
Unit (string): Engineering Unit of the signal
Table 37. I/O Related data types. (Continued)
132 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Data Types in SystemLib
 
Control-Related Data Types
The data type ControlConnection is abbreviated “CC” in some contexts.
Other Data Types
There are a number of data types which are used by specific functions, e.g.:
• HWStatus
• RandomGenerator
• Timer, CalendarStruct
• SetDTPar, TimeZoneInfo
• ArrayObject, QueueObject
• Boolean8, 16, 32
• Comm_Channel
• Range
• ControlConnection
• ControlConnectionBackward
• ControlConnectionForward
Table 38. Control-related data types.
Data type Description
ControlConnection Represents the data flow between control modules for 
continuous control applications. 
Level6Connection Used for intermediate communication of level detection 
within the control libraries.
3BSE 026 333 R101 Rev A 133
Functions in SystemLib Appendix C Library Objects Overview
 
Functions in SystemLib
IEC 61131-3 Standard Functions
Table 39. IEC 61131-3 standard functions.
Function type Description
Type conversion functions
*_TO_** Type conversion from * to **
The following type conversions are implicit (i.e. a call to a 
type conversion function is not needed):
BOOL -> WORD, BOOL -> DWORD,
WORD -> DWORD
INT -> DINT, INT -> REAL
UINT -> DINT, UINT -> REAL
DINT -> REAL
Explicit conversion functions:
<BOOL, INT, DINT, UINT, TIME, STRING>_TO_REAL
<BOOL, INT, DINT, UINT, WORD, DWORD, REAL, TIME, 
DATE_AND_TIME>_TO_STRING
<DINT, REAL, STRING>_TO_TIME
<STRING>_TO_DATE_AND_TIME
<INT, DINT, UINT, WORD, DWORD, REAL, 
STRING>_TO_BOOL
<BOOL, UINT, DINT, WORD, DWORD, REAL, 
STRING>_TO_INT
<BOOL, INT, UINT, WORD, DWORD, REAL, TIME, 
STRING>_TO_DINT
<BOOL, INT, DINT, WORD, DWORD, REAL, 
STRING>_TO_UINT
<BOOL, INT, DINT, UINT, DWORD, STRING>_TO_WORD
<BOOL, INT, DINT, UINT, WORD, STRING>_TO_DWORD
134 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Functions in SystemLib
 
General functions
ABS Absolute value
SQRT Square root
Logarithmic functions
LN Natural logarithm
LOG Logarithm to base 10
EXP Natural exponential
Trigonometric functions
SIN Sine of input in radians
COS Cosine in radians
TAN Tangent in radians
ASIN Principal arc sine
ACOS Principal arc cosine
ATAN Principal arc tangent
Extensible arithmetic functions
ADD Addition (OUT:= IN1 + IN2 + … + Inn)
MUL Multiplication (OUT:= IN1 * IN2 * … * INn)
Non-extensible arithmetic functions
SUB Subtraction (OUT := IN1 – IN12)
DIV Division (OUT := IN1 / IN2)
MOD Modulus (OUT := IN1 modulo IN2)
EXPT Exponentiation (OUT := IN1 raised to IN2)
MOVE Move (OUT := IN)
Table 39. IEC 61131-3 standard functions. (Continued)
Function type Description
3BSE 026 333 R101 Rev A 135
Functions in SystemLib Appendix C Library Objects Overview
 
Standard bit shift functions
SHL Shift bits left (OUT := IN left-shifted by N bits, zero-filled on 
right)
SHR Shift bits right (OUT := IN right-shifted by N bits, zero-filled 
on left)
ROR Rotate bits right (OUT := IN right-rotated by N bits, circular)
ROL Rotate bits left (OUT := IN left-rotated by N bits, circular)
Standard bitwise Boolean functions
AND Boolean AND (OUT := IN1 & IN2 & … & INn)
OR Boolean OR (OUT := IN1 OR IN2 OR … OR INn)
XOR Boolean Exclusive OR (OUT := IN1 XOR IN2 XOR … XOR 
INn)
NOT Boolean negation (OUT := NOT IN1)
Standard selection function
SEL Binary selection (non extensible)
MIN Select the smallest of the input variables (extensible)
MAX Select the largest of the input variables (extensible)
LIMIT Delimiter between a minimum, min, variable value and a 
maximum, max, variable value. (non extensible)
MUX Multiplexer which selects the variable pointed out by the 
input variable (extensible)
Standard comparison functions
GT (>) Decreasing sequence
GE (>=) Monotonic decreasing sequence
EQ (=) Equality
Table 39. IEC 61131-3 standard functions. (Continued)
Function type Description
136 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Functions in SystemLib
 
LE (<=) Monotonic increasing sequence 
LT (<) Increasing sequence
NE (<>) Inequality (non-extensible)
Standard character string functions
LEN String length function
LEFT Left-most L characters of IN
RIGHT Right-most L characters of IN
MID L characters of IN beginning at the Pth character position
CONCAT Extensible concatenation
INSERT Insert IN2 into IN1 after the Pth character position
DELETE Delete L characters of IN, beginning at the Pth character 
position
REPLACE Replace L charactersof IN1 by IN2, starting at the Pth 
character position
FIND Find the character position of the beginning of the first 
occurrence of IN2 in IN1. If no occurrence of IN2 is found, 
then OUT := 0.
Functions of time data types
ADD Add time variables
SUB Subtract time variables
Table 39. IEC 61131-3 standard functions. (Continued)
Function type Description
3BSE 026 333 R101 Rev A 137
Functions in SystemLib Appendix C Library Objects Overview
 
Non-IEC 61131-3 Conversion Functions
Table 40. Non IEC 61131-3 conversion functions.
Function type Description
Type conversion functions
ASCIIStructToString The ASCIIStructToString function takes a struct of dints, 
which contains the codes for an ASCII string, and 
reconstructs the string from the values in the components 
of the struct. The component values of the integer, 
DintStruct are read and translated to the value of the 
destination string, String.
BCDToDint BCDToDint converts a BCD value BCD into a dint type 
integer.
Bool16ToDint Bool16ToDint converts a Boolean struct BoolStruct with 16 
items into a dint.
Bool32ToDint Bool32ToDint converts a Boolean struct BoolStruct with 32 
items into a dint.
CalendarStructTo 
Date_and_Time
This function converts a CalendarStruct to a 
date_and_time value.
Date_and_TimeTo
CalendarStruct
This function converts a date_and_time value to a 
CalendarStruct.
DintToBCD DintToBCD converts an integer value into a BCD value.
DIntToBool16 and 
DIntToBool32
The DIntToBool16 and DIntToBool32 functions convert a 
dint into a Boolean struct BoolStruct with 16 or 32 items, 
respectively.
DintToGraycode This function converts a dint value to a Graycoded value.
GraycodeToDint This function converts a Graycoded value to a dint value.
MaxStringLength The MaxStringLength function returns the maximum length 
of a string, i.e. the allocated size of the string variable, as 
an integer value.
StringToASCIIStruct This function converts a string to an ASCIIStruct.
138 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Functions in SystemLib
 
Other Functions
Table 41. Other functions.
Function type Description
CheckSum The CheckSum function calculates checksums used for 
ASCII protocols written in the programming language.
ExecuteControl 
Modules
This function is used in function blocks that contain control 
modules. When the function is called from the function 
block, all control modules in that function block are 
executed.
GetDTQuality Returns the quality of the system time. It may be GOOD, 
UNCERTAIN or BAD.
GetStructComponent This procedure reads (copies) values from a struct 
component. 
GetSystemDT Returns the system time when current task was started.
LocalDTToSystemDT Returns the system time for the specified local time.
Match The Match function returns the position of a string within 
another string. Unlike the Find function a wildcard pattern 
can be used.
Modp The Modp function returns the remainder after a number is 
divided by a divisor. The Modp function corresponds to the 
ST "mod" operator.
The Modp function works differently for negative values 
(compatible with SattLine version 2.2 or earlier).
NationalLowerCase The NationalLowerCase function sets uppercase letters to 
lowercase letters.
NationalUpperCase The NationalUpperCase function sets lowercase letters to 
uppercase letters.
PutStructComponent This procedure writes (copies) values into a struct 
component. 
RandomNorm The RandomNorm function returns a normally distributed 
random number.
3BSE 026 333 R101 Rev A 139
Functions in SystemLib Appendix C Library Objects Overview
 
RandomRect The RandomRect function returns a random number 
uniformly distributed between 0.0 and 1.0.
RandomSeed The RandomSeed function initializes the 
RandomGenerator to a random value.
ReadStatusZeroDivInt The ReadStatusZeroDivInt function checks for zero division 
exceptions for integer values.
ReadStatusZeroDiv
Real
The ReadStatusZeroDivReal function checks for zero 
division exceptions for real values.
Round The Round function rounds a real value up to the nearest 
integer.
SetFalse The Boolean operator will be set to false.
SetSeed The SetSeed function initializes a random generator using 
a specific start value.
SetTrue The Boolean operator will be set to true.
SystemDTToLocalDT Returns the local time for the specified system time.
Timer The Timer function controls a timer.
TimerElapsed The TimerElapsed function returns the elapsed time of a 
timer as a time value.
TimerElapsedMS The TimerElapsedMS function returns the elapsed time of 
a timer in milliseconds as a dint value.
TimerHold The TimerHold function stops a timer.
TimerReset The TimerReset function stops and resets a timer.
TimerStart The TimerStart function starts a timer.
Trunc The Trunc function truncates a real value to an integer.
WriteVar Enables a system to write to a variable in a controller, or 
transfer variables between controllers, without owning the 
variable. 
Table 41. Other functions. (Continued)
140 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Functions in SystemLib
 
Array and Queue Functions
Table 42. Array and queue functions.
Function type Description
Arrays
CreateArray Creates an array Array of elements of the same type as 
ArrayElement. 
PutArray Puts the contents of ArrayElement into the data type at 
position Index in the array Array. 
GetArray Gets the contents of the data type at position Index in the 
array Array into ArrayElement. 
DeleteArray Deletes the array Array and deletes the whole tree 
structure of arrays.
Queues
CreateQueue Creates a queue Queue of elements of the same type as 
QueueElement. 
PutFirstQueue Puts the contents of QueueElement into the first element of 
the queue Queue. 
GetFirstQueue Puts the contents of the first element from the queue 
Queue into QueueElement. 
PutLastQueue Puts the contents of QueueElement into the last record 
element of the queue Queue. 
GetLastQueue Puts the contents of the last element from the queue 
Queue into QueueElement. 
ReadQueue Reads the contents of the specified element number from 
the queue Queue and puts it into QueueElement.
ClearQueue This procedure clears the queue Queue.
CurrentQueueSize This integer function returns the current number of 
elements in the queue Queue.
DeleteQueue This procedure deletes the queue Queue.
3BSE 026 333 R101 Rev A 141
Functions in SystemLib Appendix C Library Objects Overview
 
Task Control Functions
Table 43. Task control functions.
Function type Description
FirstScanAfter
ApplicationStart
The FirstScanAfterApplicationStart function checks if the 
current scan/execution is the first one performed by the 
current task.
FirstScanAfter
PowerUp
The FirstScanAfterPowerUp function checks if the 
controller has been warm started.
GetPriority Use the GetPriority function to obtain the priority of the 
current task
SetPriority Use the SetPriority function to set the priority of the current 
task.
GetIntervalTime Use the GetIntervalTime function to get the requested 
interval time of the current task.
GetActualIntervalTime Use the GetActualIntervalTime function to get the actual 
interval time of the current task.
SetIntervalTime Use the SetIntervalTime function to set the requested 
interval time of the current task.
142 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in SystemLib
 
Function Block Types in SystemLib
IEC 61131-3 Function Block Types
Table 44. IEC 61131-3 function block types.
Function type Description
Standard bistable function blocks
SR Bistable function block (set dominant)
RS Bistable function block (reset dominant)
Standard edge detection function blocks
R_TRIG Rising edge detector
F_TRIG Falling edge detector
Standard counter function blocks
CTU Up-counter
CTD Down-counter
CTUD Up-down counter
Standard timer function blocks
TP Pulse timer
TON On-delay timer
TOF Off-delay timer
RTC The RTC (Real-Time-Clock)function block performs 
display and date and time setting.
SEMA Sema, the semaphore function block, is designed to allow 
competing tasks to share a particular resource.
3BSE 026 333 R101 Rev A 143
Function Block Types in SystemLib Appendix C Library Objects Overview
 
Process Object Function Block Types
Use the ACOF (Automatic Check Of Feedback) functions primarily for supervision 
of process objects. ACOF function blocks can monitor up to three output signals and 
up to three feedback signals.
Use ACOF when a feedback signal is expected within a certain time after an output 
to the process object has been activated or deactivated. If the feedback signal is not 
detected, an alarm signal is given.
Other Function Block Types
Table 45. Process object function block types.
Function type Description
ACOFAct Object control with two limit switches and automatic return. 
This object has one stable position.
ACOFAct
Deact
Object control with two limit switches. This object has two 
stable positions.
ACOFAct 3P Object control with three limit switches and automatic 
return. This object has one stable position.
ACOFAct
Deact 3P
Object control with three limit switches. This object has 
three stable positions.
Table 46. Other function block types.
Function block type Description Display
GetDT GetDT retrieves the system time from the 
controller at which the current task was started. 
The function block converts the system time to 
local time so that both are available as 
parameters.
GetTimeZoneInfo GetTimeZoneInfo retrieves the currently used 
time-zone settings.
144 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in SystemLib
 
IntegerToRealIO IntegerToRealIO converts a raw integer value to 
a scaled RealIO value with a measuring range, 
units and decimals. It can be treated as a 
physical RealIO value in the application.
LevelHigh A high-level detector is a trip for supervising an 
analog signal. A high-level trip indicates when 
the input signal exceeds the selected high 
detect level. The detector has hysteresis on the 
input signal, which prevents the level detector 
output signal from repeatedly changing state 
when the supervised input signal varies near the 
detect level.
LevelLow A lo- level detector is a trip for supervising an 
analog signal. A low level trip indicates when the 
input signal drops below the preset low-detect 
level. The detector has a hysteresis on the input 
signal, which prevents the level detector output 
signal from repeatedly changing state when the 
supervised input signal varies near the detect 
level.
PowerFailureInfos PowerFailureInfos provides information on 
power failure status, such as number and 
duration. In addition, the total number of power 
failures since the last reset and the duration of 
these can also be presented.
PrintLines PrintLines prints text lines on a printer.
PulseGenerator PulseGenerator is a pulse generator to create a 
continuous pulse signal.
RealIOToInteger The RealIOToInteger function block converts a 
scaled RealIO value to a raw integer value.
Table 46. Other function block types. (Continued)
3BSE 026 333 R101 Rev A 145
Function Block Types in SystemLib Appendix C Library Objects Overview
 
SetDT SetDT sets the system time on the controller. It 
is possible to set the time directly as system 
time or indirectly as local time and the function 
block will perform the conversion to system time. 
The time can be set as relative or as absolute 
time. This functionality is available through 
parameters and an interaction window. The 
interaction window also shows the current 
system time and local time.
ED
SetTimeZoneInfo SetTimeZoneInfo sets the time-zone 
information. StandardDT and DaylightDT can be 
specified with the absolute or the day-in-month 
format. This functionality is available through 
parameters and an interaction window.
This function overwrites the time-zone 
information downloaded by the ACB.
ED
SystemDiagnostics SystemDiagnostics can be used to measure 
and display the following:
Stop time and memory usage during a controller 
download.
Current memory in use
Maximum memory used since the last cold start
Fragmentation of the memory.
ED
TimePulses The pulse generator creates a pulse on the 
outputs every new hour on the Hour output and 
every new day on the Day output, synchronized 
to the real-time clock
TimerOffHold TimerOffHold is an Off-delay timer function 
block with a hold input function.
TimerOnHold TimerOnHold is an On-delay timer, with a hold 
input function.
TimerPulseHold(1) TimerPulseHold is a pulse timer with a hold 
function.
Table 46. Other function block types. (Continued)
146 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in SystemLib
 
TimerPulseHoldDel TimerPulseHoldDel is a the pulse timer with a 
hold input function and a delayed start to 
generate Q output pulses.
Trigger Trigger provides a combined time and event 
trigger functionality.
Threshold Threshold is used to determine when more 
than, or equal to, a given number of Boolean 
values are true. 
TimerD TimerD measures the elapsed time in negative 
direction and gives indication when a specified 
level is past.
TimerU TimerU measures the elapsed time in positive 
direction and gives indication when a specified 
level is past. 
SinGen SinGen is used to generate a sinus signal. The 
frequency and amplitude are controlled by 
inputs.
SqGen SqGen is used to generate a square wave with 
an optional number of amplitudes. Each 
amplitude is determined by an input and for 
each amplitude a time during which it is to be 
maintained is specified.
BcToDint BcToDint converts data from an optional number 
of binary coded bool inputs and a sign input into 
a dint.
DintToBc DintToBc converts data from dint to an optional 
number of bool outputs, using binary coded 
conversion, and a sign output.
FirstOfNToDint FirstOfNToDint converts data from 1-of-N format 
with an optional number of bool inputs and a 
sign input into a dint.
Table 46. Other function block types. (Continued)
3BSE 026 333 R101 Rev A 147
Function Block Types in SystemLib Appendix C Library Objects Overview
 
DintToFirstOfN DintToFirstOfN converts data from dint to an 
optional number of bool outputs using 1-of-N 
conversion, and a sign output.
BcdToDint BcdToDint converts data from an optional 
number of bool inputs (in groups of four coded 
as BCD) and a sign input into a dint.
DintToNBcd DintToBcd converts from dint to an optional 
number of bool (in groups of four coded as 
BCD) and a sign output.
GrayToDint GrayToDint converts data from gray code with 
an optional number of bool inputs and a sign 
input into a dint.
LevelHigh(1) LevelHigh is used to compare a real value with 
an optional number of high limits with the 
possibility to specify hysteresis.
LevelLow(1) LevelLow is used to compare a real value with 
an optional number of low limits with the 
possibility to specify hysteresis.
Max Max is used to select the largest value of an 
optional number of inputs. The Max function 
block exists for real and dint: MaxReal and 
MaxDint.
Min Min is used to select the lowest value of an 
optional number of inputs. The function block 
exists for real and dint: MinReal and MinDint.
Median Median is used to calculate the median value of 
an optional number of input values. The function 
block supports real and dint: MedianReal and 
MedianDint.
RSD RSD is used as a memory for bool variables. 
Besides the RS function, it can also override this 
function with a write function.
Table 46. Other function block types. (Continued)
148 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in SystemLib
 
DeMux DeMux can handle the data types real, dint and 
bool: DeMuxReal, DeMuxDint and DeMuxBool.
Register Register is used as a memory function block 
with an optional number of positions. The 
function block exists for data typesreal, dint and 
bool: RegisterReal, RegisterDint and 
RegisterBool.
Shift Shift is used as a shift register of optional 
length. The function block exist for data types 
real, dint and bool: ShiftReal, ShiftDint and 
ShiftBool.
ShiftL ShiftL is used as a shift register of optional 
length. All positions can be written and read. 
The function block exist for data type real, dint 
and bool: ShiftLReal, ShiftLDint and ShiftLBool.
Fifo Fifo is a queue register of First-In-First-Out type. 
FifoRW FifoRW is a queue register of First-In-First-Out 
type. In addition, data can be changed and 
deleted at any queue place. The FifoRW can 
handle the data types real, dint and bool: 
FifoRWReal, FifoRWDint and FifoRWBool.
MajorityReal Used to calculate the mean value of a number of 
real numbers.
(1) Extended functionality in new versions
Table 46. Other function block types. (Continued)
3BSE 026 333 R101 Rev A 149
Supervision Signals Library Appendix C Library Objects Overview
 
Supervision Signals Library
This library (SignalLib) contains a number of function blocks for analog and digital 
inputs and outputs. They extend the functionality of I/O signals and application 
variables with alarm and event handling. The function blocks also provide filtering 
and error handling. In the faceplates it is possible to force the objects, view trim 
curves, configure and enable/disable alarms and events and view/modify 
parameters.
Function Block Types in SignalLib
Table 47. SignalLib function block types.
Function block type Description Display
SignalInReal SignalInReal extends the functionality of an 
Analog Input signal of data type RealIO with 
alarm/event handling for three high levels, three 
low levels and error handling.
OD, ED
SignalOutReal SignalOutReal extends the functionality of an 
Analog Output signal of data type RealIO with 
alarm/event handling for three high levels, three 
low levels and error handling.
OD, ED
SignalReal SignalReal is used to achieve alarm/event 
handling of an application variable of data type 
real with up to three high and three low levels.
OD, ED
SignalInBool SignalInBool extends the functionality of a 
Digital Input signal of data type BoolIO with 
alarm/event handling when the input value is 
different than Normal value.
In corresponding faceplates it is possible to 
force the object, view trim curves, configure and 
enable/disable alarms and events. 
OD, ED
150 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in SignalLib
 
SignalOutBool SignalOutBool extends the functionality of a 
Digital Output signal of data type BoolIO with 
alarm/event handling when the input value is 
different than Normal value.
In corresponding faceplates it is possible to 
force the object, view trim curves, configure and 
enable/disable alarms and events. 
OD, ED
SignalBool SignalBool extends the functionality of an 
application variable of data type Bool with 
alarm/event handling when the input value is 
different than Normal value.
In corresponding faceplates it is possible to 
force the object, view trim curves, configure and 
enable/disable alarms and events. 
OD, ED
Table 47. SignalLib function block types. (Continued)
Function block type Description Display
3BSE 026 333 R101 Rev A 151
Basic Library for Process Objects Appendix C Library Objects Overview
 
Basic Library for Process Objects
This library (ProcessObjBasicLib) contains basic core function block types for 
valve and motor control functions. They are to be used when designing your own 
function block types. The core function block types should be encapsulated in your 
own function block type. These core function block types are protected and cannot 
be changed.
Function Block Types in ProcessObjBasicLib
Table 48. ProcessObjBasicLib function block types.
Function block type Description Display
UniCore Uni-directional object:
Basic function block with one or two outputs and 
0, 1 or 2 feedback signals. This function block 
can be used to represent e.g. a valve.
Parameters are available for the connection of 
an external panel for manual operation of the 
object, and interlock and force signals for 
connection of different safety interlocking. It is 
also possible to connect an external fault signal.
BiCore Bi-directional object:
Basic function block with two or three outputs 
and 0, 2 or 3 feedback signals. This function 
block can be used to represent e.g. a two-speed 
motor or a forward-backward motor.
Parameters are available for the connection of 
an external panel for manual operation of the 
object, and interlock and force signals for 
connection of different safety interlocking. It is 
also possible to connect an external fault signal.
152 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in ProcessObjBasicLib
 
UniHSI Uni-directional object:
Basic function block for support of the HSI in 
OperateIT A graphical environment as 
faceplates and display elements.
This function block is used in control modules or 
function blocks using the process object library 
function block UniCore when an operator 
display element is to be used.
BiHSI Bi-directional object.
Basic function block for support of the HSI in 
OperateIT A graphical environment as 
faceplates and display elements.
This function block is used in control modules or 
function blocks using the process object library 
function block BiCore when an operator display 
element is to be used.
DriveCore The function block can be used as a base for 
control of ABB Drive, ACS600 and ACS400 and 
their corresponding DC drives. The function 
block can easily be used together with other 
function blocks s to create more complex 
objects that handle functionality such as modes 
and HSI.
This function block provides the user with the 
possibility to start and stop a drive with a chosen 
setpoint according to the local state matching in 
drive. 
Table 48. ProcessObjBasicLib function block types. (Continued)
Function block type Description Display
3BSE 026 333 R101 Rev A 153
Extended Library for Process Objects Appendix C Library Objects Overview
 
Extended Library for Process Objects
This library contains 5 different types with 2 variants each. All types are based on 
the protected core functions available in the Basic Library for Process Objects (on 
page 152). Unprotected code is then added to the core.
The 10 types in this library are not protected, which means that you can copy the 
type to your library, and then modify the unprotected code in the type and use 
instances of it, see Figure 19.
There are five different library types for unidirectional (Uni in the type name) and 
five for bidirectional (Bi in the type name) objects, such as valves and motors. They 
all have alarm handling and support graphics.
Figure 19. The function blocks and the control modules in this 
library are unprotected, i.e., they can be used and modified in your 
own library.
Core function
Added function
Protected code
Function block or Control module
Unprotected code
Unprotected function 
block or control module
154 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in ProcessObjExtLib
 
Function Block Types in ProcessObjExtLib
Table 49. ProcessObjExtLib function block types.
Function block type Description Display
Uni Uni-directional object with alarm and graphics:
This function block is based on UniCore and is 
extended with alarm handling and a faceplate.
ED, OD
Bi Bi-directional object with alarm and graphics:
This function block is based on BiCore, and is 
extended with alarm handling and a faceplate.
ED, OD
ValveUni Valve uni-directional with alarm and graphics:
This function block is based on the UniCore, and 
is extended with alarm handling and a faceplate.
Some parameters from UniCore are not used, 
and this block serves as a more basic example 
for a normal valve.
ED, OD
MotorUni Motor uni-directional with alarmand graphics:
This function block is based on UniCore, and is 
extended with alarm handling and a faceplate.
This function block has additional interlocks, 
safety commands, and output delay timers.
ED, OD
MotorBi Motor bi-directional with alarm and graphics:
This function block is based on BiCore, and is 
extended with alarm handling and a faceplate.
This function block has additional interlocks, 
safety commands, and output delay timers.
ED, OD
3BSE 026 333 R101 Rev A 155
Control Module Types in ProcessObjExtLib Appendix C Library Objects Overview
 
Control Module Types in ProcessObjExtLib
Table 50. ProcessObjExtLib control module types.
Control module 
type
Description Display
UniM Uni-directional object with alarm and graphics:
This control module type is based on UniCore, 
and is extended with alarm handling and a 
faceplate.
ED, OD
BiM Bi-directional object with alarm and graphics:
This control module type is based on BiCore, 
and is extended with alarm handling and a 
faceplate.
ED, OD
ValveUniM Valve uni-directional with alarm and graphics:
This control module type is based on UniCore, 
and is extended with alarm handling and a 
faceplate.
ED, OD
MotorUniM Motor uni-directional with alarm and graphics:
This control module is based on UniCore, and is 
extended with alarm handling and a faceplate.
This control module has additional interlocks, 
safety commands, and output delay timers.
ED, OD
MotorBiM Motor bi-directional with alarm and graphics:
This control module is based on BiCore, and is 
extended with alarm handling and a faceplate.
This control module has additional interlocks, 
safety commands, and output delay timers.
ED, OD
156 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Support Control Library
 
Support Control Library
This library (ControlSupportLib) contains invisible objects which cannot be used by 
you. The code of the objects is used by the objects in other Control libraries.
3BSE 026 333 R101 Rev A 157
Basic Control Library Appendix C Library Objects Overview
 
Basic Control Library
This library (ControlBasicLib) contains predefined function block types. These are 
complete working modules that can be used as is. Hence, you should not use these 
modules to create new ones.
The PID functions have Feedforward, Tracking, 3-position output and Autotuner 
control functions. Function blocks have been used to construct this library.
Data Types in ControlBasicLib
Function Block Types in ControlBasicLib
PID type of Function Blocks
Table 51. Data types.
Data type Description
ControlConnection See SystemLib.
Table 52. PID type of function blocks.
Function block type Description Display
PidLoop This function block type defines a simple control 
loop with a PID controller and a filter. The 
function block is to be connected directly to I/O 
via structured variables of the predefined data 
type RealIO.
The PID controller of the control loop has 
feedforward and tracking functions and an 
Autotuner. The Autotuner calculates the 
controller gain, integration time and derivation 
time based on a simple relay experiment.
The PID controller has integrator wind-up 
prevention and bumpless transfer between 
modes. It also has built in deviation alarm limits.
ED, OD
158 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in ControlBasicLib
 
PidLoop3P This function block type defines a simple control 
loop with a three-position controller. It is 
identical to PidLoop except that the analog 
output is replaced by two binary outputs to 
increase or decrease the actuator position, or to 
keep it constant.
ED, OD
PidCascadeLoop This function block type defines a cascade 
control loop with two PID controllers. The 
function block is to be connected directly to I/O 
via structured variables of the predefined data 
type RealIO.
The PID controller is identical to that in PidLoop. 
The integrator wind-up prevention is extended to 
also prevent wind-up in the master controller 
when the output of the slave controller is limited.
ED, OD
PidCascadeLoop3P This function block type defines a cascade 
control loop with a three-position controller as 
slave controller. It is identical to 
PidCascadeLoop except that the analog output 
from the slave controller is replaced by two 
binary outputs to increase or decrease the 
actuator position, or to keep it constant.
ED, OD
Table 52. PID type of function blocks. (Continued)
3BSE 026 333 R101 Rev A 159
Simple Control Functions Library Appendix C Library Objects Overview
 
Simple Control Functions Library
This library (ControlSimpleLib) contains a number of function blocks, that are 
intended to be used for designing simple control loops. All function blocks in this 
library can be used in time-critical tasks.
Table 53. Simple Control function blocks.
Function block type Description Display
PidSimpleReal This function block is a simple PID-controller 
with less functionality than the PidLoop function 
blocks and the PidCC-module. The 
PidSimpleReal is however less time and 
memory consuming. This controller supports 
backtracking, tracking, manual control and 
output limiting. All transitions from limiting, 
tracking and manual mode are bumpless. 
There is also interaction graphics that makes 
set-up and maintenance of the controller 
easier.
OD, ED
LeadLagReal This function block is used either as a Lead or 
Lag function, i.e. derivative or integrating 
limiter. The actual function (Lead/Lag) is 
determined by the relation between the two 
input time constants, LeadT and LagT. The 
function block can be forced to track an 
external signal. Transition from tracking is 
bumpless.
FilterReal This function block is a single pole low-pass 
filter. The functionality obtained is mainly the 
same as with the control module FilterCC. The 
output can be forced to track an external signal. 
Transition from tracking is bumpless. This 
function block can be used in a time-critical 
task.
160 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Simple Control Functions Library
 
Filter2PReal This function block is a low pass filter with one 
zero and two complex poles. The output can be 
forced to track an external signal. Transition 
from tracking is bumpless.
PiecewiseLinearReal This function block is a ‘look-up table’ with a 
number of predefined input-output pairs. 
Values between these pairs are calculated by 
linear interpolation. The function block can be 
used to define a non-linear function y=f(x). The 
maximum number of data points is 21 and 
there is an interaction window that makes data 
input easier. The only restriction on the data 
points is that the x-values must be increasing. 
There is also a possibility to calculate the 
pseudo inverse of the defined function for a 
given input, InInverse. The functionality of this 
function block is the same as of the control 
module PiecewiseLinearCC.
ED
PiecewiseLinear2DReal This function block is an extension of the 
PiecewiseLinearReal function block. It takes 
two inputs, which means that a non-linear 
surface, z=f(x,y) can be specified. The 
restriction to the x-, and the y-values is that 
they must be increasing. Maximum 21 x-values 
and 11 y-values can be specified, i.e., 231 data 
points. There is an interaction window that can 
be used to edit the data.
ED
VelocityLimiterReal This function block is a ‘ramp’ function that is 
used to limit the velocity of change for a signal. 
The output can be forced to track an external 
signal. Transition from tracking is bumpless.
Table 53. Simple Control function blocks. (Continued)
3BSE 026 333 R101 Rev A 161
Simple Control Functions Library Appendix C Library Objects Overview
 
AccelerationLimitReal This function block is a ‘ramp’ function that is 
used to limit the velocity of change for a signal. 
The output can be forced to track an external 
signal. Transition from tracking is bumpless. It 
limits both the speed and acceleration.IntegratorReal This function block is a regular integrator with 
the same functionality as the control module 
IntegratorCC. The output is limited and may be 
forced to track an external signal. All transitions 
from tracking and limiting are bumpless.
DerivativeReal This function block is a combined first order 
low-pass filter and a differentiator. The filter is 
used to smoothing the derivative action. The 
functionality is similar to the existing control 
module DerivativeCC. The output may be 
forced to track an external signal. Transition 
from tracking is bumpless.
ThreePosReal This function block is a three-position converter 
from a real input to two Boolean outputs 
(increase/decrease). It can be used with or 
without feedback from the actual actuator. It is 
similar to the existing control module 
ThreePosCC.
Table 53. Simple Control function blocks. (Continued)
162 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Standard Control Library
 
Standard Control Library
This library (ControlStandardLib) contains control module types that can be used 
when designing your own standard control loops. They are to be used for continuous 
control; e.g. PID loops. They can be used for stand-alone or cascade control in 
master–slave configurations. The PID functions have Feedforward, Tracking, 
Backtracking, 3-position output, Hand/Auto and Autotuner control functions. 
Control modules have been used to create this library, and they have associated 
engineering and operator graphics.
The control functions also have associated engineering and operator graphics.
The control modules can be connected to other control modules in 
ControlExtendedLib, ControlAdvancedLib or ControlFuzzyLib in order to 
construct simple or advanced control loops. The control modules are connected via 
graphical connections of the data type Control Connection.
Information is sent forwards as well as backwards in the control loop. The automatic 
sorting of code blocks in control modules is used to obtain signal flow without delay 
in both directions. This, in turn, is used to obtain good performance concerning 
bumpless transfer and integrator wind-up in the entire control loop.
With the control modules in ControlStandardLib it is possible to create “standard” 
control loops suitable for many applications.
3BSE 026 333 R101 Rev A 163
Control Module Types in ControlStandardLib Appendix C Library Objects Overview
 
Control Module Types in ControlStandardLib
PID Control Modules
Table 54. PID control modules.
Control module 
type
Description Display
PidCC This is a standard PID controller. It has all the 
functions of the PID controllers of the function 
blocks described above. But since it is a control 
module it may be connected to other control 
modules in order to create more advanced 
control loops than those that can be obtained 
with the function blocks described above.
ED, OD
PidSimpleCC This control module is a low-functionality Pid-
controller compared to the already existing Pid-
modules, PidCC and PidAdvancedCC. The 
PidSimpleCC is however less time and memory 
consuming. There are interaction graphics that 
make set-up and maintenance of the controller 
easier. The main inputs and the output are of 
ControlConnection type, which means that 
backtracking and limiting is handled 
automatically. 
OD, ED
164 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Control Module Types in ControlStandardLib
 
Process I/O Control Modules
Most of the process I/O modules, used for continuous control operate with the data 
type Control Connection (“CC”).
Table 55. Process I/O control modules.
Control module 
type
Description Display
AnalogInCC Analog Input ED, OD
AnalogOutCC Analog Output ED, OD
ThreePosCC This control module is used as the end of a three-
point control loop with digital outputs. The control 
module input is an analog signal that is compared 
with a feedback signal from the valve position or 
internally generated.
ED, OD
PulseWidthCC This control module is used as the graphical end 
of a control loop with pulse modulated digital 
output. The control module input is an analog 
signal that generates the duty cycle of the output 
signal. The cycle time is defined via the parameter 
interface.
ED, OD
3BSE 026 333 R101 Rev A 165
Control Module Types in ControlStandardLib Appendix C Library Objects Overview
 
Manual Control Modules
Conversion Control Modules
Table 56. Manual control modules.
Control module 
type
Description Display
ManualAutoCC With this control module it is possible to enter 
values into a control loop manually, and 
supervise the control values graphically in bar 
graphs and histograms.
ED, OD
Table 57. Conversion control modules.
Control module 
type
Description Display
RealToCC This control module is designed to collect each 
component to form a data type 
ControlConnection.
ED
CCToReal This control module functions as an adapter 
from a signal of data type ControlConnection. It 
splits the ControlConnection into its 
components to give a signal of data type real.
ED
CCToInteger The control module is an adapter from a signal 
of data type “ControlConnection”. It split up 
ControlConnection into each components, to a 
signal of data type “integer”.
The real value of the parameter In is converted 
to the integer parameter Out. At conversion the 
hysteresis specified by the parameter 
Hysteresis is used.
ED
166 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Control Module Types in ControlStandardLib
 
Branch Control Modules
Table 58. Branch control modules.
Control module 
type
Description Display
BranchCC This control module divides the control loop 
connection structure into two equal branches.
ED
Branch4CC This control module divides the control loop 
connection structure into four equal branches.
ED
SplitRangeCC This control module divides the control loop 
connection structure into two branches in 
relation to their ranges.
ED
MidRangeCC This control module is a ControlConnection with 
two branches, one ‘fast’ and one ‘slower’ 
branch. The ‘fast’ branch is acting faster on 
changes in the signal, and then it is forced to 
work around the mid point of its operating range 
as the ‘slower’ branch takes over the control. 
This control module can be used in cases 
where, for example, two valves are acting on the 
same flow. One of the valves is a smaller, but 
faster valve, that is used to control small 
perturbations in the flow. The other valve is a 
bigger valve that cannot work that fast, but has a 
larger operating range.
ED
CommonRangeCC This control module divides the control loop 
connection structure into two branches with a 
specified ratio between the signal levels.
ED
TapCC This control module divides the control loop 
connection structure into two branches one 
where backtracking is possible and the other 
where it is not.
ED
TapRealCC This control module extracts the value 
component from the control loop connection 
structure to produce a real value.
ED
3BSE 026 333 R101 Rev A 167
Control Module Types in ControlStandardLib Appendix C Library Objects Overview
 
Supervisory Control Modules
Table 59. Supervisory control modules.
Control module 
type
Description Display
Level6CC This control module is used for level detection 
purposes. It has six detection levels (LLL, LL, L, 
H, HH, HHH). L=Low, H=High
ED, OD
SignalSupervisionCC This control module is used to take care of 
erroneous signal status collected from the 
transmitters or from the interface system. Three 
different modes are available – let the signal 
pass through without any interference, freeze 
the output or linearly switch over to a 
predetermined value. Both these latter 
selections cause an alarm condition to be sent if 
configured.
ED, OD
168 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Control Module Types in ControlStandardLib
 
Selector Control Modules
Table 60. Selectorcontrol modules.
Control module 
type
Description Display
SelectorCC This control module selects one of two inputs of 
data type ControlConnection. Selection is made 
based on a Boolean signal.
ED, OD
Selector4CC This control module selects one out of four 
inputs of data type ControlConnection. 
Selection is based on an integer signal. 
ED, OD
SelectGoodCC The first detected valid signal of type 
ControlConnection is selected. If no valid signal 
is detected, Out is a copy of In1 structure.
ED, OD
SelectGood4CC The first detected valid signal of type 
ControlConnection is selected. If no valid signal 
is detected, Out is a copy of In1 structure.
ED, OD
MaxCC The control module MaxCC computes the larger 
(maximum) value of two input signals of data 
type ControlConnection and writes it to the 
output signal.
ED, OD
Max4CC The control module Max4CC computes the 
larger (maximum) value of four input signals of 
data type ControlConnection and writes it to the 
output signal.
ED, OD
MinCC The control module MinCC computes the 
smaller (minimum) value of two input signals of 
data type ControlConnection and writes it to the 
output signal.
ED, OD
Min4CC The control module Min4CC computes the 
smaller (minimum) value of four input signals of 
data type ControlConnection and writes it to the 
output signal.
ED, OD
3BSE 026 333 R101 Rev A 169
Control Module Types in ControlStandardLib Appendix C Library Objects Overview
 
Limiter Control Modules
Table 61. Limiter control modules.
Control module type Description Display
LimiterCC LimiterCC limits the signal so that it does not 
increase above the upper limit, or decrease 
below the lower limit.
ED
LimiterHighCC LimiterHighCC limits the signal so that it does 
not increase above the upper limit.
ED
LimiterLowCC LimiterLowCC limits the signal so that it does 
not decrease below the lower limit.
ED
VelocityLimiterCC VelocityLimiterCC limits the velocity of the 
signal. It can be used, for example, to create a 
linear movement function between a starting 
point and a target. This will slow down changes 
in the output signal to avoid rapid steps.
ED
AccelerationLimitReal AccelerationLimitReal limits the velocity of the 
signal. It can be used, for example, to create a 
linear movement function between a starting 
point and a target. This will slow down changes 
in the output signal to avoid rapid steps. It limits 
both the speed and acceleration.
170 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Extended Control Library
 
Extended Control Library
This library (ControlExtendedLib) contains control modules for arithmetic and 
signal processing for continuous control, e.g. PID loops. The control functions are 
available as control modules, and they also have associated engineering and 
operator graphics.
These control modules can be connected to other control modules in 
ControlStandardLib, ControlAdvancedLib or ControlFuzzyLib in order to create 
simple or advanced control loops. The control modules are connected via graphical 
connections of the data type Control Connection.
Information is sent forwards as well as backwards in the control loop. The automatic 
sorting of code blocks in control modules is used to obtain signal flow without delay 
in both directions. This, in turn, is used to obtain good performance concerning 
bumpless transfer and integrator wind-up in the entire control loop.
Using the control modules in ControlExtendedLib together with those in 
ControlStandardLib and ControlAdvancedLib it is possible to construct control 
loops with higher functionality.
Arithmetic operations can be performed on the control signals. The control signals 
can also be processed in several ways, e.g. filtered or integrated.
3BSE 026 333 R101 Rev A 171
Control Modules in ControlExtendedLib Appendix C Library Objects Overview
 
Control Modules in ControlExtendedLib
Arithmetic Control Modules
Signal Handling Control Modules
Table 62. Arithmetic control modules.
Control module 
type
Description Display
AddCC Addition, two inputs ED
SubCC Subtraction, two inputs ED
MultCC Multiplication, two inputs ED
DivCC Division, two inputs ED
SqrtCC Square root, one input ED
Table 63. Signal handling control modules.
Control module type Description Display
DerivativeCC Derivation ED
IntegratorCC Integration with reset and hold function ED
FlowCC This control module calculates the mass flow 
from a differential pressure (orifice plate) 
compensated by actual temperature and 
pressure.
ED
Mean4ExcludeBadCC This control module calculates the mean 
value of the inputs where extreme values are 
excluded.
ED
Mean8ExcludeBadCC This control module has the same 
functionality as Mean4ExcludeBadCC above. 
The only difference is the number of inputs.
ED
172 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Control Modules in ControlExtendedLib
 
Mean12ExcludeBadCC This control module has the same 
functionality as Mean4ExcludeBadCC above. 
The only difference is the number of inputs.
ED
FilterCC This is a first-order, low-pass filter. ED
Filter2PCC This control module is a low pass filter with 
one zero and two complex poles.
ED
LeadLagCC This control module is used either as a Lead 
or Lag function, i.e. derivative or integrating 
limiter. The actual function (Lead/Lag) is 
determined by the relation between two input 
time constants. 
ED
DelayCC This is a delay control module for the 
ControlConnection structure.
ED
StateCC This control module delays the forward and 
backward components by one cycle to avoid 
program loops.
ED
XRaisedToYCC Takes the value In1 raised to In2.
Table 63. Signal handling control modules. (Continued)
3BSE 026 333 R101 Rev A 173
Control Modules in ControlExtendedLib Appendix C Library Objects Overview
 
Signal Conditioning Control Module
Table 64. Signal conditioning control module.
Control module type Description Display
PiecewiseLinearCC Piece wise linear transformation of the 
input signal.
ED
PiecewiseLinear2DCC This control module is a ‘look-up table’ 
with a number of predefined input-output 
data points. It takes two inputs, which 
means that a non-linear surface, z=f(x,y) 
can be specified. Maximum 21 x-values 
and 11 y-values can be specified, i.e. 231 
data points. There is an interaction window 
that can be used to edit the data.
ED
PiecewiseLinear-Extension This control module is to be used as an 
add-in-module together with the 
PiecewiseLinearCC module. The latter is 
only able to handle 21 data points. The 
control module makes it possible to add 
another 20 points of data. It is also 
possible to connect a control module to an 
existing control module of the same type. 
Thus, the number of possible points is 
unlimited.
ED
174 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Advanced Control Library
 
Advanced Control Library
This library (ControlAdvancedLib) contains control modules for advanced, 
continuous control, e.g. PID loops. The control functions are available as control 
modules, and they also have associated engineering and operator graphics.
The control modules can be connected to other control modules in 
ControlStandardLib, ControlExtendedLib or ControlFuzzyLib in order to create 
simple or advanced control loops. The control modules are connected via graphical 
connections of the datatype Control Connection.
Information is sent forwards as well as backwards in the control loop. The automatic 
sorting of code blocks in control modules is used to obtain signal flow without delay 
in both directions. This, in turn, is used to obtain good performance concerning 
bumpless transfer and integrator wind-up in the entire control loop.
Using the control modules in ControlAdvancedLib together with those in 
ControlStandardLib and ControlExtendedLib it is possible to construct advanced 
control loops.
The advanced PID controller has all the functionality of the previously described 
PID controllers. Inaddition, it may be configured for continuous adaptation of the 
controller parameters. It may also be configured as a predictive PI, i.e. a PPI, 
controller and it has a gain scheduler (also called a parameter scheduler).
3BSE 026 333 R101 Rev A 175
Control Module Types in ControlAdvancedLib Appendix C Library Objects Overview
 
Control Module Types in ControlAdvancedLib
PID Control Modules
Additional Control Modules
Table 65. PID control modules.
Control module 
type
Description Display
PidAdvancedCC In addition to the standard functions this control 
module type contains a gain scheduler and an 
adaptive controller. It has a PPI (predictive PI) 
controller for processes with long dead times. 
The loop assessment tools can detect 
oscillatory or sluggish behavior of the control 
loop. The Autotuner is more advanced than that 
in the other PID controllers.
ED, OD
Table 66. Additional control modules.
Control module 
type
Description Display
StictionCompensator An optional extension to the AnalogOutCC 
control module to add pulses to the output of the 
AO and to avoid the effects of sticky pneumatic 
valves.
Add-on to the AnalogOnCC. The faceplate (OD) 
for StictionCompensator, is a tab in the 
extended faceplate of AnalogOutCC.
ED, OD
176 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Fuzzy Control Library
 
Fuzzy Control Library
This library (ControlFuzzyLib) contains control modules, which are building blocks 
for fuzzy controllers. A fuzzy controller is constructed by connecting control 
modules from ControlFuzzyLib. No programming is necessary. ControlFuzzyLib 
also has three templates (not protected), which consists of three different fuzzy 
controllers. The control module types can be copied to your own library and then 
modified.
A fuzzy controller can handle the case of one input and one output as well as many 
inputs and many outputs. It has most of the functions of a PID controller together 
with the possibility to define fuzzy logic rules for process control.
A fuzzy controller consists of a linear part and a fuzzy logic part. The linear part has 
many of the functions of a PID controller, e.g.:
• Computation of the control deviation = Setpoint – ProcessValue and its 
derivative (also the second derivative)
• Computation of the derivative of the process value
• A low-pass filter for the derivative of the process value and the control 
deviation
• Internal and external set point
• Handling of absolute and deviation alarms
• An integrator with anti-reset-wind-up function
• Manual and automatic output
• Tracking function for the output
• A feedforward function
The fuzzy logic part of the controller contains the functions used to define the rules 
for control of the process, e.g.:
• Computation of the degrees of membership of a number of signals to a number 
of fuzzy sets
• Computation of fuzzy conditions
• Computation of fuzzy rules
3BSE 026 333 R101 Rev A 177
Control Module Types in FuzzyLib Appendix C Library Objects Overview
 
• Computation of output membership functions for a number of controller 
outputs
• Defuzzification of the output membership functions.
Control Module Types in FuzzyLib
Table 67. Control module types in FuzzyLib.
Control module type Description Display
FuzzyController1CC This control module contains a very small 
configuration of a fuzzy controller.
ED, OD
FuzzyController2CC This control module has the same structure, but 
contains a much larger configuration.
ED, OD
FuzzyController3CC This control module is the same as 
FuzzyController1CC, but with no setpoint.
ED, OD
FuzzySpPvIn This control module computes the control 
deviation EOut (setpoint-Process value) and its 
first and second derivatives. These signals are 
inputs to the InputMembership control modules.
This control module can switch between an 
external and an internal setpoint. The process 
value may be filtered in a low-pass filter. Three 
Pv alarm levels and one deviation alarm may 
be displayed in the history and bar graphs. The 
control module also has an optional facility for 
process value tracking.
The outputs from the control module, the 
control deviation and its two first derivatives 
may be simulated by the operator. This facility 
may be used to test the fuzzy logic part of the 
controller.
ED, OD
178 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Control Module Types in FuzzyLib
 
FuzzyPvIn This control module makes the process value 
and its derivative available to the 
InputMembership control modules.
The process value may be filtered in a low-pass 
filter. Three absolute alarm levels may be 
displayed in the history and bar graphs.
The outputs from the control module, the 
process value, and its derivative, may be 
simulated by the operator. This facility may be 
used to test the fuzzy logic part of the 
controller.
ED, OD
FuzzyOut This control module takes a defuzzyfied output 
from the fuzzy logic part of the controller and 
computes the output to the process.
The signal may be integrated or not. It may also 
be put in Manual or Automatic mode or it may 
track an external value. A feedforward signal 
may be added, and an anti-reset wind-up 
function is provided.
ED, OD
InputMembership The control module defines an input 
membership function for the fuzzy logic part of 
the controller. For every value of the input it 
computes the degree of membership to the 
corresponding fuzzy set.
The control module is also used, together with 
the FuzzyCondition control module, to define 
the fuzzy conditions.
ED
Table 67. Control module types in FuzzyLib. (Continued)
3BSE 026 333 R101 Rev A 179
Control Module Types in FuzzyLib Appendix C Library Objects Overview
 
OutputMembership The control module defines an output 
membership function for a fuzzy rule. It 
computes the current membership function, 
which is equal to the defined membership 
function, multiplied by the degree of satisfaction 
of the rule.
The current membership functions for a number 
of rules may then be combined into a 
membership function for the output of the 
controller. This is done by computing the 
envelope, i.e. the maximum of all the current 
membership functions at every point. This is 
done in the Defuzzyfication control module.
ED
Defuzzyfication The control module computes the envelope of 
all the connected output membership functions. 
It also computes the center of gravity of the 
envelope curve. The center of gravity is 
regarded as the defuzzyfied output from the 
fuzzy logic part of the controller.
ED
FuzzyCondition6, -12 
and -18
The control modules FuzzyCondition6, 
FuzzyCondition12 and FuzzyCondition18 
define and evaluate a fuzzy condition. The 
condition is defined as a fuzzy AND condition 
between a number of selected input 
membership functions. The input membership 
functions may, or may not, be inverted before 
the condition is formed.
Together with other fuzzy conditions, the 
defined fuzzy condition is used in one or more 
fuzzy rules.
The fuzzy AND condition is defined as the 
minimum value of the included fuzzy variables.
ED
Table 67. Control module types in FuzzyLib. (Continued)
180 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Control Module Types in FuzzyLib
 
FuzzyRule5, -10, -15, 
-20, -25 and -30
The control modules FuzzyRule5, 
FuzzyRule10, FuzzyRule15, FuzzyRule20, 
FuzzyRule25, and FuzzyRule30 define and 
evaluate a fuzzy rule. The condition of the rule 
is defined as a fuzzy OR expression between a 
number of fuzzy conditions defined in 
FuzzyCondition control modules. The 
conditions from the FuzzyCondition control 
modules may, or may not, be inverted before 
the condition of the FuzzyRule control module 
is formed.
The result of the rule is the degree of 
satisfaction of the rule. The degree of 
satisfaction is used to compute the output 
membership function for the rule. The fuzzy OR 
condition is defined as the maximum value of 
the included fuzzyvariables.
ED
FuzzyProgramControl This control module is used to toggle the “Edit” 
mode of the fuzzy logic part of the controller on 
and off. The fuzzy controller is fully operational 
in both modes.
ED
FuzzyPres This control module is an icon for the controller. 
It is intended to be built into the controller and 
displayed in the control module Diagram via a 
control module selector.
ED
Table 67. Control module types in FuzzyLib. (Continued)
3BSE 026 333 R101 Rev A 181
Alarm and Event Library Appendix C Library Objects Overview
 
Alarm and Event Library
This library (AlarmEventLib) contains functions for alarm and event handling, 
which include detection and notification. Alarm state handling and alarm 
acknowledgement are also included.
An alarm data model according to OPC Alarms and Events is used.
Function Block Types in AlarmEventLib
Table 68. Function block types in AlarmEventLib.
Function block type Description Display
AlarmCond Defines an alarm condition that follows a 
condition state diagram.
It monitors the changes in an input parameter 
(boolean type) to detect an abnormal condition. 
Other inputs include acknowledge, disable and 
enable. A condition state output parameter 
presents the state of the alarm. The parameter 
AckRule (integer) defines the properties for 
acknowledgement handling. The source name 
SrcName identifies the name of the object 
where the alarm occurred. Class and Severity 
are inputs, which can be used to categorize the 
event that occurs when the alarm changes 
state.
It is possible to supervise a signal on an I/O 
device, which reads the time stamp of the I/O 
changes on the device
ED
AttachSystemAlarm Makes it possible to present the current 
condition state of a specified system alarm.
182 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Function Block Types in AlarmEventLib
 
PrintAlarms Prints alarm conditions.
On request, this function block prints a list of the 
alarms currently defined in the control system 
where the block executes. The printer should be 
connected directly to a serial port on the control 
system.
The printer should be connected to the port 
corresponding to the Channel parameter, and 
should support the 8-bit character set.
PrintEvents Prints events continuously.
This function block prints both simple events 
and condition related events to a printer locally 
connected to the control system. This means 
that as soon as an AlarmCond changes state 
(e.g. from inactive to active) this information can 
be sent to the printer. However, only events 
generated in the system where the printer is 
connected, can be printed.
The printer should be connected to the port 
corresponding to the Channel parameter, and 
should support the 8-bit character set.
SimpleEventDetector Generates a simple event on a Boolean type 
condition.
This function block supervises a Boolean type 
signal. When the signal changes value, a simple 
event is generated. You can use this function 
block to detect for example the start and stop of 
process objects. There is no acknowledgement 
handling; otherwise the function block 
resembles the AlarmCond.
Severity and Class are inputs that can be used 
for sorting the events.
It is possible to supervise a signal on an I/O 
device, which reads the time stamp of the I/O 
changes on the device.
Table 68. Function block types in AlarmEventLib.
3BSE 026 333 R101 Rev A 183
Control Module Types in AlarmEventLib Appendix C Library Objects Overview
 
Control Module Types in AlarmEventLib
Table 69. Control module types in AlarmEventLib.
Control module 
type
Description Display
AlarmCondM Defines an alarm condition that follows a 
condition state diagram.
This is the control module equivalent of the 
function block type AlarmCond described 
above.
ED
184 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Batch Library
 
Batch Library
This library (BatchLib) contains functions for batch control and for control of other 
discontinuous processes.
Equipment Procedure Element Control Module Types
The control modules described here are used for the interaction between the control 
application for an Equipment Procedure Element (e.g. a phase or an operation) and 
the Batch Manager.
Table 70. Equipment procedure element control module types.
Control module type Description Display
EquipProcedureTemplate A template control module for designing 
Equipment Procedure Elements, i.e. the 
control logic for phases, operations, etc. It 
handles the interaction with the Batch 
Manager.
ED, OD
EquipProcedureCore Handles the standard ISA/S88-based states 
and modes of an Equipment Procedure 
Element.
ED
3BSE 026 333 R101 Rev A 185
Communication Library Appendix C Library Objects Overview
 
Communication Library
This library (CommunicationLib) contains a number of IEC 61131 function block 
types that provide external variable communication with protocols such as MMS, 
MODBUS, FOUNDATION Fieldbus, SattBus, COMLI, and Siemens 3964R. There 
are also function blocks for modem connection.
Some control modules are also included in this library, supporting the MMS and FF 
protocols used in connection with control loop handling.
Data Types in CommunicationLib
MODBUS
These control functions are used for communication using MODBUS.
Table 71. Communication library data types.
Data type Description
Comm_Channel_MMS Reference to an MMS network connection.
Comm_Channel_COMLI Reference to a COMLI network connection.
Comm_Channel_SB Reference to a SattBus network connection.
Comm_Channel_S3964R Reference to a Siemens 3964R network connection.
Comm_Channel_FF(1)
(1) A number of FOUNDATION Fieldbus data types are also supplied to support the user in a 
FOUNDATION Fieldbus communication network, for example, DS65.
Reference to a FOUNDATION Fieldbus network 
connection.
Comm_Channel_MB Reference to ModBus network connection.
Table 72. MODBUS functions.
Function block type Description Display
MBConnect Initiates a communication channel and 
establishes a connection with a remote system.
186 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview FOUNDATION Fieldbus
 
FOUNDATION Fieldbus
A number of IEC 61131 function blocks are provided for communication with 
FOUNDATION Fieldbus devices. These function blocks are used to access data 
belonging to function blocks in FF device(s) on the (FF) H1 bus (including the 
“custom function blocks” on the FF communication interface). All function block 
types, except those with the extension Cyc, follow the IEC 61131-5 standard. Some 
control module types are also supplied for accessing FF devices.
MBRead Reads one or several variables.
MBWrite Writes to one or several variables.
MBException Reads the ModBus exception coils.
Table 72. MODBUS functions. (Continued)
3BSE 026 333 R101 Rev A 187
FOUNDATION Fieldbus Appendix C Library Objects Overview
 
Foundation Fieldbus Function Block Types
Foundation Fieldbus Control Module Types
Table 73. FOUNDATION Fieldbus function block types.
Function block type Description Display
FFConnect Connects to a defined FF device.
FFRead Reads one parameter from an FF function 
block.
FFWrite Writes one parameter to an FF function block.
FFReadCyc Reads one parameter from an FF function block 
cyclically.
FFWriteCyc Writes one parameter to an FF function block 
cyclically.
Table 74. FOUNDATION Fieldbus control module types.
Control module 
type
Description Display
FFToCC This control module is intended to be used when 
continuously reading an FF- value of a floating 
point structure, i.e. value & status (the scaling is 
not included in the read operation). The read 
value is converted to a (OUT) parameter of the 
data type ControlConnection.
ED,
OD 
CCToFF This control module is intended to be used when 
converting a (IN) parameter of the data type 
ControlConnection to a value of a floating point 
structure and continuously writing it to an FF 
device.
ED,
OD)
188 3BSE026 333 R101 Rev A
Appendix C Library Objects Overview COMLI
 
COMLI
Use the COMLI function block types to establish communication with a system 
supporting the COMLI protocol.
Function block types with the COMLI prefix support both the address-oriented 
COMLI and SattBus protocols. When a SattBus channel is used, the COMLI 
telegrams are packed within SattBus telegrams. The protocol to be used (COMLI or 
SattBus) is defined by the Channel parameter of the COMLIConnect function block.
Communication via a TCP/IP network is also supported.
MMS
Use the MMS function block types and control modules to establish communication 
with a system supporting the MMS protocol.
Table 75. COMLI function block types.
Function block type Description Display
COMLIConnect Connects to a defined communication channel.
COMLIRead Reads one or several variables.
COMLIReadCyc Reads variable data cyclically.
COMLIReadPhys Requests physical values from a legacy 
(SattCon) system.
COMLIWrite Writes to one or several variables.
COMLIWriteDT Transmits date and time of master to the slave.
Table 76. MMS function block types.
Function block type Description Display
MMSConnect Initiates a communication channel and 
establishes a connection with a remote system.
MMSRead Reads one or several variables.
MMSReadCyc Reads one or several variables cyclically.
3BSE 026 333 R101 Rev A 189
MMS Appendix C Library Objects Overview
 
MMSWrite Writes to one or several variables.
MMSWriteDT Transmits date and time.
MMSDefAccVar This function block is used to create an access 
variable, which is connected to a defined 
variable in the executing system. The defined 
variable is then accessible for both reading and 
writing from a remote system and also within its 
own system
Table 77. MMS control module types.
Control module 
Type
Description Display
MMSToCC This control module is used when continuously 
reading a signal of a ControlConnection type 
from another system. The communication 
protocol is MMS. The forward and the backward 
structure of ControlConnection is handled in 
MMS variable groups separately.
ED,
OD 
CCToMMS This control module is used when writing a 
signal of type ControlConnection to another 
system. The communication protocol is MMS. 
The forward and the backward structure of 
ControlConnection is handled in MMS variable 
groups separately.
ED,
OD 
Table 76. MMS function block types. (Continued)
190 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview SattBus
 
Transfer of Variables via MMS
When transferring variables it is important to use data types with the same range on 
the client as on the server. It is, however, possible to connect variables with different 
ranges, such as a dint variable on the server and an Int variable on the client. This 
will only work as long as the variable values are within the range of the Int variable, 
but if the value of the dint is outside this range it will not work.
SattBus
Use these function block types, supporting SattBus, to communicate through a 
SattBus channel using the SattBus name-oriented model. To communicate through a 
SattBus channel using the address-oriented model, use COMLI function block 
types. Communication via a TCP/IP network is also supported.
Table 78. SattBus function block types.
Function block type Description Display
SBConnect Connects to a defined communication channel.
SBRead Reads one variable data
SBReadCyc Reads variable data cyclically.
SBWrite Writes one variable data.
3BSE 026 333 R101 Rev A 191
Siemens 3964R Appendix C Library Objects Overview
 
Siemens 3964R
Use the Siemens 3964R function block types to establish communication with a 
system using the Siemens 3964R protocol.
Other Function Blocks
Use these function block types to establish communication with a modem.
Table 79. Siemens 3964R function block types.
Function block type Description Display
S3964RConnect Connects to a defined communication channel.
S3964RRead Reads one or several variables.
S3964RReadCyc Reads variable data cyclically.
S3964RWrite Writes to one or several variables.
Table 80. Other function blocks.
Function block type Description Display
ModemConnStat ModemConnStat is used to obtain the current 
status of a modem connected to a selected 
channel. The current status is given by the 
Status parameter.
ModemDialUp ModemDialUp is used to connect a modem via 
a defined communication channel.
ModemHangUp ModemHangUpis used to disconnect a modem 
via a defined communication channel.
192 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Serial Communication Library
 
Serial Communication Library
This library (SerialLib) contains function blocks for communication with external 
devices via serial channels with user-defined protocols, for example, printers, 
terminals, or scanner pens.
Data Types
Function Block Types
Table 81. Serial communication library data types.
Data type Description
Comm_Channel_Serial Reference to a serial network connection.
Table 82. Serial channel function block types.
Function block type Description Display
SerialConnect Opens and closes a defined serial 
communication channel.
SerialSetup Changes serial communication settings.
SerialWriteWait Writes a string and waits for a reply.
SerialListenReply Listens for a string and sends a reply.
SerialWrite Writes a string.
SerialListen Listens for a string.
3BSE 026 333 R101 Rev A 193
INSUM Library Appendix C Library Objects Overview
 
INSUM Library
Introduction
INSUM (INtegrated System for User-optimized Motor control) utilizes 
microprocessor-based technology for protection and control of motors and 
switchgear, and for the transmission of messages and measured values.
Each motor has a motor control unit (MCU) located in the motor starter module. 
The INSUM devices (such as MCUs) are arranged in up to four subnets, each of 
them supporting up to 32 units at 78 kb/s transfer rate. A network (LonWorks) 
transfers messages at 1.25 Mb/s between the subnet units via routers. An INSUM 
MMI (man-machine interface) and one or more AC 800M controllers, equipped 
with INSUM TCP/IP interface modules CI857 can be connected to the LonWorks 
network. The Process Portal A and the SCADA Portal can be accessed from the 
AC 800M.
Provided Services
• Up to 128 motors (MCU), circuit breakers (CB) and intelligent tier switches 
(ITS) can be supervised per INSUM TCP/IP gateway.
• Multiple controllers can access the same MCU in an INSUM system.
• Three IEC 61131-3 function blocks are available for initialization and 
exchanging data with the INSUM system, namely INSUMConnect (establishes 
connection), INSUMReceive (reads a process data value from an INSUM 
device), and INSUMWrite (writes a value to an INSUM device).
• The INSUM system can operate completely independently from other systems 
belonging to ControlIT or OperateIT.
• A number of different motor types are supported, such as reversing motors, 
two-speed drives, actuators, and solenoid valves.
• Protection is provided against thermal overload, underload, phase loss, earth 
fault, high motor temperature, locked rotor, etc.
• Protection functions can be parameterized to specify pre-warnings before a 
motor is tripped. The reset can be automatic, remote, local or remote and local.
194 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview Data Types
 
Data Types
Table 83. INSUM library data types.
Data type Description
NVDesState Forces a MCU (Motor Control Command) up to a desired 
state.
NVCurrentReport Output Network Variable used to report motor phase 
current.
NVMotorStateExt A variable used for reception of the information about the 
actual motor state from a MCU (Motor Control 
Command). 
NVMotorStateExtStruct Can be used if a bitfield representation of the motor state 
information is to be used.
NVCumRunT Obtains information about cumulated run hours.
NVVoltageReport Network Variable of motor power report.
NVAmpsCurrRep NetworkVariable used to report current values.
NVNodeCommand Forces CommandState of a CB (Circuit Breaker) to a 
desired state.
NVNodeStatusRep A variable to be used for reception of the information 
about the actual status from a CB (Circuit Breaker). 
NVNodeStatusRepStruct Can be used if a bitfield representation of the information 
about the actual status from CB is to be used.
3BSE 026 333 R101 Rev A 195
Function Block Types Appendix C Library Objects Overview
 
Function Block Types
Table 84. INSUM function block types.
Function block type Description Display
INSUMConnect The INCUMConnect function block establishes 
a connection to a concerned INSUM Gateway, 
which is used as a base for other INSUM 
specific IEC 61131-5 function blocks to access 
the proper INSUM data.
The function block allows to establish a 
connection between teh calling communication 
partner and remote communication partner. It 
also gives a status information about the 
connected device, which may be used for 
supervision of the device.
INSUMReceive The INSUMReceive function block is used to 
read one network varibale cyclically from an 
INSUM device to an 61131 variable, which 
could be for example
• input of network varibale used in a control 
lopp where the controller is part of the loop. 
INSUMReceive is intended to be the 
standard method to get data from an INSUM 
device to the controller.
• to update the presentation of signals in a set 
interval viewed in OperateIT, suitably when 
involved variables are in view.
INSUMWrite The INSUMWrite function block writes from an 
IEC 61131 variable to a network variable on 
request, i.e. triggered from an OperateIT, which 
is used for sending command (start/stop/reset) 
and handling Pass Control Access.
196 3BSE 026 333 R101 Rev A
Appendix C Library Objects Overview MB300 Library
 
MB300 Library
Introduction
Masterbus 300 (MB 300) can be used with AC 400 and AC 800M. A CI855 
communication unit for AC 800M provides connectivity to AC 400 via MB 300. 
Refer to the relevant user’s guides and reference manuals regarding the process 
interface that can be used with AC 400.
CI855 is configured by means of Control Builder in the hardware configuration tree, 
but has no subordinated devices represented in the tree. This means that other 
controllers on the MB 300 network are not represented in the tree. The CI855 
module has two Ethernet channels to provide network redundancy.
Provided Services
• DataSet communication with other controllers on MasterBus 300.
• Function blocks in the AC 800M are used to cyclically send and receive 
datasets on MasterBus 300.
• Time synchronization on MB 300 is supported in the AC 800M with the 
accuracy provided on MB 300.
• The CI855 device status, watchdog supervision and logged system messages 
are reported to the AC 800M for display in the Control Builder M and the 
Process Portal A status system.
• Support of MB 300 network redundancy.
3BSE 026 333 R101 Rev A 197
Function Block Types Appendix C Library Objects Overview
 
Function Block Types
Table 85. MB300 function block types.
Function block type Description Display
MB300Connect The MB300Connect is used to establish 
connection between the calling communication 
partner and the remote communication partner.
MB300Send MB300Send function block is used to send a 
DataSet to a node on MB300
MB300Receive The MB300Receive function block is used for 
reception of a DataSet sent by a note on MB300
198 3BSE 026 333 R101 Rev A
INDEX
A
ABB Drives 27, 78
ABB Engineered Drives 78
ABB Standard Drives 79
AC 250 19
AC 800C 19
AC 800M 19
single CPU mode 45
AC 800M/C Connect 32
Access variable editor 50
Access variables 50
Advanced Process Control 20, 29
Advant Controller 250 19
alarm and event
library 182
AlarmEventLib 182
Applications 36
arithmetic control modules, see control modules
arithmetic functions (extensible), see functions
arithmetic functions (non-extensible), see functions
array and queue functions 141
array and queue functions, see functions
arrays 141
B
Base licenses 103
libraries 103
Basic Control 20
BatchLib 185
Binary Control 20
bi-stable function blocks (standard), see function 
blocks
bit shift functions (standard), see functions
bitwise Boolean functions (standard), see functions
branch control modules 167
Bulk Data Manager 32
C
CAST 95
CD-ROM 32
character string functions (standard), see functions
CI851 37
CI852 37
CI854 37, 76
CI856 39
CI857 38
Clock Master 44
CMD editor 30, 52
CNCP light 44
Code distribution 26
COMLI 42, 189
Communication
MMS 88
CommunicationLib 186
comparison functions (standard), see functions
Compilation 75
Control Builder
Basic 20, 31
Professional 20, 31
Standard 20, 31
variants 31
Control Builder M 20, 33
Control Connection 165
control library 163
3BSE 026 333 R101 Rev A 199
Index
control modules
additional 176
arithmetic 172
branch 167
conversion 166
limiter 170
manual 166
PID 164, 176
process I/O 165
selector 169
signal conditioning 174
signal handling 172
supervisory 168
types in FuzzyLib 178
Control Network 35, 40
Control Software 19, 33, 36
licenses 102
ControlAdvancedLib 175
ControlBasicLib 158
ControlExtendedLib 171
ControlFuzzyLib 177
Controller platforms 19
ControlNet 37
control-related data types 133
ControlStandardLib 163
conversion control modules 166
Count
I/O points 104
counter function blocks (standard), see function 
blocks
CPU load 78
CPU redundancy 45
D
Data access 56
Dial-up modems 43
Download 34, 36, 75
E
Engineered Drives 78
Engineering Studio 32
Execution times 63 to 64
control modules 64
function block calls 71
function blocks 64
functions 73
operations 73
Expansion 99
Expansion licenses 96, 102, 104
External user help 28
F
F1 help 53
Fieldbus Builder P 32, 35
Fieldbus communication 37
Firmware 36
FOUNDATION Fieldbus 37, 187
function blocks
bi-stable (standard) 143
counter (standard) 143
timer (standard) 143
functions
arithmetic (extensible) 135
arithmetic (non-extensible) 135
array and queue 141
bit shift (standard) 136
bitwise Boolean (standard) 136
character string (standard) 137
comparison (standard) 136
general 135
logarithmic 135
selection (standard) 136
task control 142
trigonometric 135
type conversion 134, 138
Fuzzy controller 177
FuzzyLib 103
200 3BSE 026 333 R101 Rev A
Index
G
GSD Import Tool 25
H
Hardware
requirements 60
HART 24, 32, 35
I
I/O communication 37
I/O points 95
counting 95
I/O support 27, 29
I/O-related data types 131
IEC 61131-3
function block types 143
standard functions 134
IEC 61131-3 languages 28
INSUM 38
Integrated Automation 22, 29
Integration 32
IP Configuration 36
K
Key benefits 19
L
libraries
AlarmEventLib 182
ControlStandardLib 163
License concept 101
Licenses 20, 101
limiter control modules 170
Local Operating Network 39
Log functions 26, 29
logarithmic functions, see functions
LON 39
M
manual control modules 166
Market segments 21
MasterBus 300 39
MB 300 39
Memory consumption 63
control modules 64
function blocks 64
S100 I/O 88
S200 I/O 85
S200L I/O 85
S800 I/O 80
S900 I/O 83
Mirroring 24
MMS 88, 189
master system 89
slave system 90 to 91
MODBUS 186
ModBus RTU
master 42
Modem 43
Modulebus 76, 78
scan cycle 78
scan interval 76, 78
scan time 76
Multi-user development 27
N
Network redundancy 45 to 46
New This Version 22
O
Object-oriented programming 28
Online help
context-sensitive 53
F1 53
OPC Server
performance data 92
requirements 61
3BSE 026 333 R101 Rev A 201
Index
Ordering 95
example 98
procedure 95
P
Performance
OPC Server 92
Performance data 61
PID control modules 164, 176
PM861 45
Portability 26
POU 49
Prerequisites 59
Price lists 95
process I/O control modules 165
process object
function block types 144
Process object Function Block types 144
Process Portal A 32
ProcessObjBasicLib 152
ProcessObjExtLib 154
Professional 31
PROFIBUS-DP 37
PROFIBUS-DP/V1 37
Programming environment 28
Programming station 34
Project Explorer 48
Q
queues 141
R
RAM memory 63
Redundancy 26
CPU 45
line 46
network 46
Requirements59
hardware 60, 62
OPC Server 61
Re-use
code 51
RNRP 40 to 41
Runtime license 101
S
S100 I/O 39
memory consumption 88
S200 I/O 39, 85
memory consumption 85
S200L I/O 39
memory consumption 85
S800 I/O 39
memory consumption 80
S900 I/O 39
memory consumption 83
SattBus 37, 191
SCADA and PLC Solutions 21, 25
Scalability 25
Scan cycle
ABB Drives 78
Modulebus 78
Scan interval 76
Modulebus 76
Scanning
ABB Drives 76
selection functions (standard), see functions
selector control modules 169
SerialLib 193
Short-distance modems 43
Siemens 3964R 42, 192
signal conditioning control module 174
signal handling control modules 172
Standard Drives 79
supervisory control modules 168
System events and alarms 47
SystemLib
data types 131
function block types 143
function types 134
202 3BSE 026 333 R101 Rev A
Index
T
Tags 105
task control functions, see functions
Task management 26
Technical data 61
Terminology 14
time functions 137
Time synchronization 23
timer function blocks (standard), see function 
blocks
Tool Routing 32
trigonometric functions, see functions
type conversion functions, see functions
U
Update rate 92
User information 28
V
Variants
comparison 31
3BSE 026 333 R101 Rev A 203
Index
204 3BSE 026 333 R101 Rev A
3BSE 026 333 R101 Rev A. Printed in Sweden May 2002
Copyright © 1999−2001 by ABB. All Rights Reserved
® Registered Trademark of ABB.
™ Trademark of ABB.
Automation Technology Products
Mannheim, Germany
www.abb.de/processautomation
email: marketing.control-products@de.abb.com
Automation Technology Products 
Västerås, Sweden
www.abb.com/processautomation
email: processautomation@se.abb.com
Automation Technology Products
Wickliffe, Ohio, USA
www.abb.com/processautomation
email: industrialitsolutions@us.abb.com
 
http://www.abb.com/control
	Product Guide
	TABLE OF CONTENTS
	About This Book
	Intended Use of This Book
	Target Group
	Purpose, Scope and Intended Use
	Use of Information, and Tip Icons
	Document Conventions
	Terminology
	Related Product Guides
	Section 1 Key Benefits
	Introduction
	Supported Controller Platforms
	Control Software
	Control Builder M
	Market Segments, Licenses and Control Builder Variants
	New This Version
	Control Software
	Control Builder M
	OPC Server for AC 800M/C
	Key Benefits-SCADA and PLC Solutions
	Control Software-Binary and Basic Licenses
	Control Builder M Basic and Standard
	Key Benefits-Integrated Automation
	Control Software-Advanced Process Control License
	Control Builder M Professional
	Professional, Standard and Basic
	Integration with Other IndustrialIT Products
	Section 2 Product Description
	Overview
	Control Software
	Control Builder M
	Control Software
	Download
	I/O and Fieldbus Communication
	Control Network
	Other Communication Protocols
	Time Synchronization
	Redundancy
	Alarm and Events Handling
	Execution of Control Software
	Control Builder M
	Project Explorer
	Programming Environment
	Online Help and Manuals
	Additional Software
	OPC Server for AC 800M/C
	OPC Server for AC 800M/C-Data Access (DA) Part
	OPC Server-Alarm and Event (AE) Part
	AC 800M/C Connect
	Section 3 Technical Data and Performance
	General
	Prerequisites and Requirements
	Software Requirements
	Hardware Requirements
	OPC Server Requirements
	Hardware Requirements When Running Several Products on Same PC
	Technical Data and Performance
	Memory Consumption and Execution Times
	Compilation and Download
	Hardware and I/O
	MMS Communication
	Control Network Clock Synchronization
	OPC Server for AC�800M/C
	Section 4 Ordering
	Ordering Procedure
	Price Lists
	Ordering Example
	Original Order
	Expansion of an Existing Installation
	Appendix A Licenses
	License Concept
	Control Builder M Licenses
	Expansion Licenses
	Control Software Licenses
	Base Licenses
	I/O Points
	Examples of Control Software Licenses
	OPC Server for AC 800M/C Licenses
	AC 800M/C Connect Licenses
	AC 800M/C Connect License Concept
	AC 800M/C Connect Tags
	Tag Counting Example
	Example of Simple AC 800M/C System Configuration
	Example of Integrated AC�800M/C System Configuration
	Appendix B Supported Hardware and I/O Systems
	Controllers
	AC 800M
	AC 800C
	Advant Controller 250
	Adapters
	I/O Families
	S100 I/O
	S200 I/O
	200L I/O
	S800 I/O
	S900 I/O
	ABB Standard Drives
	ABB Engineered Drives
	I/O for Updating
	Appendix C Library Objects Overview
	System Library
	Data Types in SystemLib
	Functions in SystemLib
	Function Block Types in SystemLib
	Supervision Signals Library
	Function Block Types in SignalLib
	Basic Library for Process Objects
	Function Block Types in ProcessObjBasicLib
	Extended Library for Process Objects
	Function Block Types in ProcessObjExtLib
	Control Module Types in ProcessObjExtLib
	Support Control Library
	Basic Control Library
	Data Types in ControlBasicLib
	Function Block Types in ControlBasicLib
	Simple Control Functions Library
	Standard Control Library
	Control Module Types in ControlStandardLib
	Extended Control Library
	Control Modules in ControlExtendedLib
	Advanced Control Library
	Control Module Types in ControlAdvancedLib
	Fuzzy Control Library
	Control Module Types in FuzzyLib
	Alarm and Event Library
	Function Block Types in AlarmEventLib
	Control Module Types in AlarmEventLib
	Batch Library
	Equipment Procedure Element Control Module Types
	Communication Library
	Data Types in CommunicationLib
	MODBUS
	FOUNDATION Fieldbus
	COMLI
	MMS
	SattBus
	Siemens 3964R
	Other Function Blocks
	Serial Communication Library
	Data Types
	Function Block Types
	INSUM Library
	Introduction
	Provided Services
	Data Types
	Function Block Types
	MB300 Library
	Introduction
	Function Block Types
	INDEX
	A
	B
	C
	D
	E
	F
	G
	H
	I
	K
	L
	M
	N
	O
	P
	Q
	R
	S
	T
	U
	V

Mais conteúdos dessa disciplina