3BSE041880-610 A en Control AC 800M Getting Started
3BSE041880-610 A en Control AC 800M Getting Started
3BSE041880-610 A en Control AC 800M Getting Started
ABB may have one or more patents or pending patent applications protecting the intellectual property in the ABB
products described in this document.
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.
Products described or referenced in this document are designed to be connected, and to communicate information and
data via a secure network. It is the sole responsibility of the system/product owner to provide and continuously ensure
a secure connection between the product and the system network and/or any other networks that may be connected.
The system/product owners must establish and maintain appropriate measures, including, but not limited to, the
installation of firewalls, application of authentication measures, encryption of data, installation of antivirus programs,
and so on, to protect the system, its products and networks, against security breaches, unauthorized access, interference,
intrusion, leakage, and/or theft of data or information.
ABB Ltd and its affiliates are not liable for damages and/or losses related to such security breaches, any unauthorized
access, interference, intrusion, leakage and/or theft of data or information.
ABB verifies the function of released products and updates. However system/product owners are ultimately responsible
to ensure that any system update (including but not limited to code changes, configuration file changes, third-party
software updates or patches, hardware change out, and so on) is compatible with the security measures implemented.
The system/product owners must verify that the system and associated products function as expected in the environment
they are deployed.
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 hardware described in this document.
This document and parts thereof must not be reproduced or copied without written permission 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. This product meets the requirements specified in EMC Directive
2014/30/EU and in Low Voltage Directive 2014/35/EU.
Trademarks
All rights to copyrights, registered trademarks, and trademarks reside with their respective owners.
Table of Contents
1 Introduction
1.1 General ............................................................................................................. 15
1.2 Product Overview .............................................................................................. 15
1.2.1 ABB Start Menu ................................................................................... 16
1.2.2 Project Explorer ................................................................................... 17
1.2.3 Libraries ............................................................................................... 18
1.2.4 Control Builder Functions .................................................................... 20
1.2.5 Manuals ............................................................................................... 20
1.2.6 Online Help .......................................................................................... 21
1.3 Before You Begin .............................................................................................. 22
1.3.1 Configuration ........................................................................................ 22
1.3.2 Configure OPC Server ......................................................................... 23
3BSE041880-610 A 5
Table of Contents
3 MyDoors Project
3.1 Introduction ....................................................................................................... 41
3.2 Building a Shop Door Project ............................................................................ 41
3.2.1 Specifications ....................................................................................... 42
3.2.2 Defined Variables ................................................................................. 42
3.2.3 Creating MyDoors Project .................................................................... 44
3.2.4 Diagrams .............................................................................................. 45
3.2.5 Variables and Signals .......................................................................... 46
3.2.6 Create Logic for Door Timer and Counters .......................................... 53
3.2.7 Testing MyDoors Project ...................................................................... 68
4 Hardware Configuration
4.1 Configure Hardware .......................................................................................... 73
4.1.1 Changing a CPU Unit .......................................................................... 74
4.1.2 Adding the IO Modules DO814 and DI810 .......................................... 75
4.2 Connect Signals to I/O Channels ...................................................................... 78
4.2.1 Configure Photo Cell Signal for Input I/O Channel .............................. 78
4.2.2 Configure Motor Signals for Output I/O Channels ............................... 79
4.2.3 Reading I/O addresses from the Application ....................................... 80
4.2.4 Releasing Reservations ....................................................................... 81
4.3 Ethernet I/O Wizard ........................................................................................... 81
3BSE041880-610 A 6
Table of Contents
3BSE041880-610 A 7
Table of Contents
3BSE041880-610 A 8
Table of Contents
3BSE041880-610 A 9
3BSE041880-610 A 10
About this User Manual
The System 800xA Safety AC 800M High Integrity Safety Manual (3BNP004865*)
must be read completely by users of 800xA High Integrity. The recommendations
and requirements found in the safety manual must be considered and implemented
during all phases of the life cycle.
Any security measures described in this user manual, for example, for user access,
password security, network security, firewalls, virus protection, and so on, represent
possible steps that a user of an 800xA System may want to consider based on a risk
assessment for a particular application and installation. This risk assessment, as well
as the proper implementation, configuration, installation, operation, administration,
and maintenance of all relevant security related equipment, software, and procedures,
are the responsibility of the user of the system.
Welcome to Control Builder Professional for AC 800M. This manual is produced for
anyone intending to use the programming tool Control Builder for the first time. It is
focused on getting you quickly started and acquainted with the product. Therefore, as
much 'in-depth' information as possible has been separated from the main sections and
placed in appendices instead.
If this is your first time working with the programming tool, it is recommended that you
start by reading Section 1 Introduction and then work yourself through each section.
The sections are organized in this manner:
Section 1 Introduction, gives you an overview of the product Control Builder.
Section 2 Control Builder User Interface is a brief introduction to the Control Builder’s
core interface Project Explorer.
Section 3 MyDoors Project, encourages you to build a small project example to get
yourself acquainted with the Control Builder environment.
Section 4 Hardware Configuration, teaches you how to add hardware units to your project.
Section 5 Connecting the Controller and Go Online, starts with the prerequisites for
connecting a controller (correct firmware and system identity) and then guide you through
downloading a project and Go online.
3BSE041880-610 A 11
About this User Manual
User Manual Conventions
Section 6 View Live Data in Plant Explorer will introduce you to the Plant Explorer interface
and help you studying how variable values from MyDoors project are transferred from
a controller, via an OPC Server, up as live data in a Workplace.
Electrical warning icon indicates the presence of a hazard that could result in electrical
shock.
Warning icon indicates the presence of a hazard that could result in personal injury.
Tip icon indicates advice on, for example, how to design your project or how to use
a certain function.
Although Warning hazards are related to personal injury, and Caution hazards are
associated with equipment or property damage, it should be understood that operation
of damaged equipment could, under certain operational conditions, result in degraded
process performance leading to personal injury or death. Therefore, fully comply with
all Warning and Caution notices.
3BSE041880-610 A 12
About this User Manual
Terminology
Terminology
A complete and comprehensive list of terms is included in System 800xA Terminology
and Acronyms (3BSE089190*). The listing includes terms and definitions that apply to
the 800xA System where the usage is different from commonly accepted industry standard
definitions.
3BSE041880-610 A 13
3BSE041880-610 A 14
1 Introduction
1.1 General
1 Introduction
1.1 General
Control Builder Professional (CB Professional) is a programming tool for creating control
solutions when using the AC 800M hardware.
The Control Builder comes with type solutions for simple logic control, device control,
opened and closed loop control, alarm handling, packaged as libraries.
It provides different wizard functions for e.g. configuration of IEC61850 devices (electrical
integration), uploading hardware configuration from Ethernet based I/O, and generating
hardware definition files,
It also provides support for multi-user engineering and an evaluation mode for testing,
and evaluating new applications against a running application.
Control Builder supports five different programming languages according to IEC 61131-3.
They are Function Block Diagram (FBD), Structured Text (ST), Instruction List (IL), Ladder
Diagram (LD), and Sequential Function Chart (SFC).
In addition to these, Control Builder supports creation of logic using Diagrams (which
use the Function Diagram (FD) language) and Control Modules using Control Module
Diagrams (CMD). Other useful functionality are configuring High Integrity controllers for
SIL applications, online debugger, test and simulation mode.
3BSE041880-610 A 15
1 Introduction
1.2 Product Overview
Figure 1.1: Project Explorer and Plant Explorer are two separate interfaces for building
and maintaining control projects.
This manual gives an introduction to the Project Explorer interface. Once you are familiar
with the basics within this user manual, you are advised to look up the manual Control
AC 800M Configuration (3BSE035980*) which describes more thoroughly the 800xA
programming functions that can be accessed through the Project Explorer.
An introduction to the Plant Explorer can be found in the manual, Operator Workplace,
Configuration (3BSE030322*).
3BSE041880-610 A 16
1 Introduction
1.2 Product Overview
It is possible to pin the Start Menu tool to the taskbar for an easy access of the tool.
3BSE041880-610 A 17
1 Introduction
1.2 Product Overview
1.2.3 Libraries
Control Builder is delivered with an extensive set of predefined type solutions stored in
libraries. These include data types, functions, function block types, control module types,
and diagram types, which can be used in your projects.
3BSE041880-610 A 18
1 Introduction
1.2 Product Overview
All standard libraries are included during the installation and are available in your projects.
The installation provides the following libraries:
• The Basic library. It contains basic building blocks for AC 800M control software like
data types, function block types, and control module types, with extended
functionality, designed by ABB.
The contents inside the Basic library can be categorized as follows: IEC 61131-3
Function Block Types, Other Function Block Types and Control Module Types.
• The Communication Libraries. They include function blocks for MMS, ModBus RTU,
Modbus TCP, Foundation Fieldbus HSE, SattBus, COMLI, UDP and TCP,
MOD5-to-MOD5 (MTM), Siemens 3964R protocols, and IOCommLib for PROFINET.
• The Control Libraries. They include single PID control and cascade PID control
function blocks, control modules, etc.
• The Binary Process Libraries, contain types for controlling motors, valves, ABB
Drives and Insum Devices. Most types in these libraries are templates, that is, you
can copy and modify them to fit your particular process.
• The Alarm and Event Library contain function blocks for alarm and event detection,
and alarm printouts on a local printer.
• The Signal Libraries contain types for adding supervision, alarm handling and error
handling to I/O signals, and also for the overview and forcing of boolean and real
signals.
• The Burner Library contain function block types, which are used for defining logic
for Burner control.
A complete list of libraries delivered with the installation can be found in the manual
Control AC 800M Binary and Analog Handling (3BSE035981*).
Hardware Libraries
An extensive set of predefined hardware types, stored in standard hardware libraries,
are delivered with Control Builder. These hardware types can be used in your projects
when configuring the controller hardware.
3BSE041880-610 A 19
1 Introduction
1.2 Product Overview
All standard hardware libraries are included during the installation and are available in
your projects. The installation provides the following libraries:
• The basic hardware libraries. They contain basic hardware types for controller
hardware, such as types for AC 800M, CPUs, Ethernet communication link, Com
port, ModuleBus etc.
• PROFIBUS and PROFInet hardware libraries. They contain hardware types for
PROFIBUS and PROFInet communication interfaces, ABB Drives, and ABB Panel
800.
• Communication hardware libraries. They contain hardware types for the
communication interfaces Foundation Fieldbus HSE, MasterBus 300,
Modbus TCP, IEC 61850, PROFIBUS, PROFINET IO, MOD5, AF 100, EtherNet/IP
and DeviceNet, INSUM, DriveBus, RS-232C, and UDP and TCP.
• Hardware libraries for serial communication protocols. They contain hardware types
for SerialProtocol, COMLI, ModBus and Siemens 3964R.
• Hardware libraries for I/O Systems. They include hardware types for I/O
communication interfaces, I/O adapters, and I/O units; S100 (incl. S100 Rack), S200,
S800, S900, and Select I/O.
1.2.5 Manuals
All online manuals exist as pdf files. The files are stored on your local disk after installation.
Online manuals can be accessed from ABB Start Menu > ABB System 800xA > .....
3BSE041880-610 A 20
1 Introduction
1.2 Product Overview
This manual, Getting Started introduces you to the basic functions necessary to create
and download a small control project to a controller. The installation provide a number
of additional online manuals in pdf format:
• The manual Control AC 800M Configuration (3BSE035980*) describes the basic
functions in Control Builder.
• The manual Control AC 800M Planning (3BSE043732*) describes design issues
and programming languages.
• The Safety Manual AC 800M High Integrity (3BNP004865*) describes processes
and rules that apply when creating SIL certified applications for AC 800M High
Integrity controllers.
• The manual Control AC 800M Binary and Analog Handling (3BSE035981*), describes
the Control Builder standard libraries and how to use them to build complex
automation solutions.
• The Control AC 800M Controller Hardware (3BSE036351*) manual describes how
to install and configure AC 800M and AC 800M High Integrity controllers, together
with AC 800M control software.
• There is also pdf versions of fieldbus and I/O manuals, that is, documentation
regarding FOUNDATION Fieldbus, PROFIBUS, PROFINET IO, AF 100, EtherNet/IP
and DeviceNet, TRIO, Satt IO, S200 I/O, S800 I/O, and S900 I/O.
3BSE041880-610 A 21
1 Introduction
1.3 Before You Begin
Once the online help window has been opened, it is possible to navigate to other topics
via links in the help topics or via the different tabs in the help window:
• Contents: The table of contents lists all help topics in a structured way. Navigate
to the relevant topic and select it.
• Index: The index table lists interesting keywords. Scroll through the list or use the
search field to find the keyword you want to view. Double-click on the keyword and
the relevant topic is displayed.
• Search: The text search goes through all topics and shows all the matches, based
on the text you enter. For better results, enter the specific text that is relevant to the
concept that you are searching.
Note that it is not always possible to find information about a single object by entering
its name, for example “CI860” or “Level6CC”. Try searching for the category instead,
for example “I/O units” or “data types”. This will normally take you to a list of objects
or units, from which you can jump to the one you are interested in.
If you are looking for information about a specific library object, or information about
a specific hardware unit, the easiest way to find this information is to select the object
in Project Explorer and press F1. Control Builder will then take you to the right topic.
You need to install OPC Server for AC 800M in order to subscribe to live controller
data in Plant Explorer.
1.3.1 Configuration
Before you start, you should have the answer to the following questions:
• Should your engineering workplace consist of a single workplace (single user) or a
number of workplaces (multiple users)?
• Should your engineering workplace contain single/multiple environments?
3BSE041880-610 A 22
1 Introduction
1.3 Before You Begin
Refer to the System Installer described in the System 800xA Getting Started
(2PAA111708*) manual.
3BSE041880-610 A 23
3BSE041880-610 A 24
2 Control Builder User Interface
2.1 Introduction
2.1 Introduction
The core interface of Control Builder is the Project Explorer. After getting familiarized
with Project Explorer in this section, you can refer to
Section 3 MyDoors Project, to create a new project and its logic.
3BSE041880-610 A 25
2 Control Builder User Interface
2.1 Introduction
Figure 2.1: Sequence for building a project and making a download to the controllers
3BSE041880-610 A 26
2 Control Builder User Interface
2.1 Introduction
However, only some objects, so-called entities, can be reserved. An entity is a set of
objects and aspects that is reserved as a single unit.
• Examples of objects that are reservable entities: projects, libraries, applications,
diagrams, diagram types, control module types, function block types, controllers,
and hardware units (where this has been defined for the corresponding hardware
type).
• Examples of objects that not are reservable on their own: programs and datatypes.
These are contained within the objects above and are reserved when those objects
are reserved. A program is e.g. reserved when the application it resides in is
reserved.
For more information on entities and reservation of entities, refer to the manual Control
AC 800M Configuration (3BSE035980*).
For more information, refer to the System 800xA, Configuration (3BDS011222*) and
to the Control AC 800M Configuration (3BSE035980*) manuals.
3BSE041880-610 A 27
2 Control Builder User Interface
2.2 Project Templates
SIL stands for "Safety Integrity Level". For more information see Appendix C.
1. An empty project template contains only the compulsory system firmware functions, with no additional
application or hardware functions.
3BSE041880-610 A 28
2 Control Builder User Interface
2.3 Project Explorer
Only one project can be opened at a time in the Project Explorer, although all the
projects can be viewed in the Plant Explorer.
Title bar
Menu bar
Toolbar
Message pane
3BSE041880-610 A 29
2 Control Builder User Interface
2.3 Project Explorer
Libraries Folder
Applications Folder
Controllers Folder
Figure 2.3: The Project Explorer pane, showing the three main folders Libraries,
Applications, and Controllers.
3BSE041880-610 A 30
2 Control Builder User Interface
2.3 Project Explorer
Besides these three libraries, the Libraries folder also contains the Hardware folder with
the library containing the basic hardware types:
• BasicHWLib (if AC800M, EmptyProject, or SoftController template is used for creating
the project).
• BasicHIHwLib (if AC800M_HighIntegrity or SoftController_HI template is used for
creating the project).
After the project is created, both standard libraries and user-defined libraries can be
created or inserted into the Libraries folder and the Hardware folder.
When a new library is created, the subfolders – Data Types, Diagram Types, Control
Module Types, and Function Block Types – are not visible since they do not contain
any objects.
Right-click the library to open the context menu, and go to New which displays the
option to create the different types (see Figure 2.4). Once the types are created, they
are displayed under the corresponding subfolders in the library.
3BSE041880-610 A 31
2 Control Builder User Interface
2.3 Project Explorer
A library can only be added to an application if it has first been added to the Libraries
folder. A hardware unit (type) can only be connected in a controller configuration if the
corresponding hardware library is added to the Hardware folder.
Libraries can only be added to the Libraries and Hardware folders if they exist in the
Library Structure in Plant Explorer.
For more information on libraries and library handling, see the manual Control
AC 800M Configuration (3BSE035980*) and the manual Control AC 800M Binary
and Analog Handling (3BSE035981*).
Figure 2.5: Creating a new application folder inside the Applications folder
The application folders helps to structure or group the applications in the Project Explorer.
It is also possible to move applications and application folders in the folder structure
using the drag-and-drop operation.
The Connected Libraries folder under the application contains all libraries that are
connected to the particular application. To connect a library to an application, right click
the Connected Libraries folder, select Connect Library, and select the required library
from the drop down list.
3BSE041880-610 A 32
2 Control Builder User Interface
2.3 Project Explorer
The types that can be created under the application are Data Types, Diagram Types,
Function Block Types, Control Module Types. The created types can be used in the
application. If a library is connected to the application, the types from that library can
also be used in the application.
In the application, the code is organized in any of the following folders:
• Control Modules
• Diagrams
• Programs
For more information, refer to the manual Control AC 800M Configuration (3BSE035980*).
The Diagrams folder in the default application contains three diagrams. These three
diagrams are connected to three default tasks, see Controllers Folder on page 34. You
can change these task connections, as well as add your own tasks and diagrams.
When a new application is created, the subfolders – Data Types, Control Module
Types, Diagram Types, Function Block Types, Control Modules, Diagrams, and
Programs – are not visible because they do not contain any objects.
Right-click the application to open the context menu, and go to New, which displays
the option to create the different types, control modules, diagrams, and programs
(see Figure 2.6). Once these are created, they are displayed under the corresponding
subfolders in the application.
3BSE041880-610 A 33
2 Control Builder User Interface
2.3 Project Explorer
Figure 2.6: Creating types, control modules, diagrams, or programs under an application.
From the objects in the Applications folder, a number of software editors can be
opened, see Editors on page 38.
To check the code for errors, click the Check icon on the toolbar. If there are errors in
the project, these are indicated by a red triangle next to the object (in Offline mode). The
descriptions of the errors are displayed in the Check tab of the message pane.
3BSE041880-610 A 34
2 Control Builder User Interface
2.3 Project Explorer
Only hardware libraries that are added to the project can be connected to a controller
(see Libraries Folder on page 30).
For each controller there is a hardware folder where a CPU unit is located. Other units,
such as I/O units and communication interface units can be added to this hardware
folder. The controller structure mirrors the physical structure, which means that all ports
and buses have their own corresponding unit (icon) in Project Explorer.
For more information about hardware configuration and the Controllers folder, see
Section 4 Hardware Configuration.
The Controllers folder also contains a Tasks sub-folder and an Access Variables container.
The Tasks folder contains tasks that are used to control the execution of your applications.
By default, the Tasks folder contains three tasks: Fast, Normal, and Slow. However, you
can add the tasks you need for your applications.
For more information on tasks and task execution, see the manual Control AC 800M
Configuration (3BSE035980*).
Double-clicking the Tasks folder will display a task overview. Double-clicking an individual
task will display the Task Properties dialog for that particular task.
From objects in the Controllers folder (CPU units, I/O units, communication ports,
communication interfaces, etc.), a number of hardware editors can be opened, see
Editors on page 38.
3BSE041880-610 A 35
2 Control Builder User Interface
2.3 Project Explorer
3BSE041880-610 A 36
2 Control Builder User Interface
2.3 Project Explorer
Figure 2.7: Object created in diagram as a result of dragging a type and dropping it in
the drawing area
3BSE041880-610 A 37
2 Control Builder User Interface
2.3 Project Explorer
2.3.10 Editors
Control Builder contains a number of editors. The editors can be accessed from Project
Explorer and from Plant Explorer. To access an editor, right-click the object (it could be
a controller, a hardware unit, an application, a diagram, a program, or a type) and select
Editor from the context menu.
3BSE041880-610 A 38
2 Control Builder User Interface
2.3 Project Explorer
Figure 2.8: Diagram Editor with declaration pane, code pane, and message pane
Among many things, editors are used to declare variables, create control logic, and
connecting to I/O channels.
3BSE041880-610 A 39
2 Control Builder User Interface
2.3 Project Explorer
3BSE041880-610 A 40
3 MyDoors Project
3.1 Introduction
3 MyDoors Project
3.1 Introduction
This section helps you to build a small project and get yourself familiar with Control
Builder. The guidelines that come with this example suggests that you build a project
called MyDoors that simulates the entrance to a store. While working with the MyDoors
project, you will learn about diagrams and declaration of variables and function blocks
in diagrams, and much more.
Control Builder comes with a ready-made project example called ShopDoors installed
on your local disk, see Ready-made Projects for CB Professional on page 109 for
locating the ShopDoors example or any other Control Builder examples.
If you do not have access to an AC 800M controller or IO modules, you can still follow
this example with a SoftController. Look for SoftController specific instructions
throughout MyDoors project example.
The SoftController is a test and debugging tool used for basic program tests. Execution
of specific functions differs between SoftController and a hardware controller in several
aspects, for example, execution performance, floating point precision (64 versus 32
bit), communication capabilities and so on.
After finishing your study of the MyDoors project, you are advised to continue with the
remaining sections in this manual.
3BSE041880-610 A 41
3 MyDoors Project
3.2 Building a Shop Door Project
3.2.1 Specifications
This project will simulate the entrance to a store. The following specifications are given:
• The entrance consists of two sliding doors that open when a customer activates a
photocell.
• Each door is opened and closed by its own motor.
• The doors return to default position (closed) five seconds after the last activation of
the photocell. Consequently, several customers arriving one after the other will
extend the time the door remains open.
• The number of customers is recorded for statistics. Manual reset of this counter
should be possible.
• The total number of times the doors have opened since they were last serviced
should be recorded.
• Each opening of the doors should increment a counter. When the counter reaches
a preset limit, a flag should indicate that service is required. Manual reset of the flag
should be possible.
3BSE041880-610 A 42
3 MyDoors Project
3.2 Building a Shop Door Project
3BSE041880-610 A 43
3 MyDoors Project
3.2 Building a Shop Door Project
1. From the Project Explorer, select File > New Project, or click the icon. A New
Project window opens.
2. Select the AC800M template and type MyDoors in the Name field.
3BSE041880-610 A 44
3 MyDoors Project
3.2 Building a Shop Door Project
The Libraries folder contains the standard libraries Basic library (BasicLib), Icon library
(IconLib) and Basic hardware library (BasicHwLib).
The System library is always automatically inserted into a project. It contains basic
data types and firmware functions. The System library cannot be removed from the
project or changed by the user.
When you create a new project, the default application (Application_1) and the default
controller (Controller_1) are automatically reserved.
3.2.4 Diagrams
In Control Builder, the control logic can be created in diagrams, which are created under
an application. The diagrams use a graphical programming language.
The diagram editor allows mixing of functions, function blocks, control modules, and
other diagrams, and allows graphical connection between the blocks to achieve a
particular logic.
In this example project, you are going to create the logic in a diagram.
3BSE041880-610 A 45
3 MyDoors Project
3.2 Building a Shop Door Project
In the MyDoors project, expand Application_1 to view the Diagrams folder and the three
default diagrams.
Open the Diagram editor for Diagram2.
Figure 3.3: The Reserve icon is the fourth from the left.
3BSE041880-610 A 46
3 MyDoors Project
3.2 Building a Shop Door Project
3. The Diagram editor is divided into three panes: the declaration pane, the code pane,
and the message pane.
4. Select the Variables tab, and place the cursor in the upper left-hand cell in the
declaration pane and type Photo_Cell.
5. Move one cell to the right by pressing the tab key. The default values retain and
hidden are automatically shown in the “Start Attribute” and “Attributes” columns.
The default setting retain means that the variable will keep its value at a warm
restart. The default setting hidden means that the variable is not visible as an OPC
variable.
6. Type BoolIO in the “Data Type” column.
7. Skip the “Initial Value” column. Since BoolIO is a structured data type it is not relevant
to enter any initial value. The initial values defined in the data type definition will be
applied.
3BSE041880-610 A 47
3 MyDoors Project
3.2 Building a Shop Door Project
8. Skip the “I/O address” and “Access Variables” read-only columns. The I/O address
will be automatically filled in later when connecting variables to I/O channels.
9. The last column “Description” is reserved for you to use freely. Your first row should
now look like this:
10. Prepare the code pane by changing the name of page 1. At first the code pane only
has one diagram page, but many pages can be added. To make navigation easier
it is possible to set a textual name on a page in addition to just numbers 1, 2, 3 and
so on. To do this, click in the code pane background and press F2. Set the page
name to Motors_Doors:
3BSE041880-610 A 48
3 MyDoors Project
3.2 Building a Shop Door Project
11. The next step is to insert a declared variable in the code pane by drag and drop.
First go to the declaration pane and select the Photo_Cell cell in the Name column.
Then drag and drop (keep left mouse button down while moving the cursor) the
variable name in the code pane.
Figure 3.7: Variable is displayed as graphical object in the code pane after the drag
and drop operation.
3BSE041880-610 A 49
3 MyDoors Project
3.2 Building a Shop Door Project
12. Declare the next variable Motor_1 and use the option to declare a signal with the
same name. Right click the code pane and select New > Variable. In the New
Variable dialog enter Motor_1 as name and BoolIO as data type. Use the option to
declare a signal at the same time. In the New Variable dialog mark the Add signal
check box and change Direction to out. Fill in the remaining values according to
the dialog below and click OK.
The new variable, Motor_1 gets inserted as a graphical object in the code pane. It
also appears as a variable in the Declaration Pane:
3BSE041880-610 A 50
3 MyDoors Project
3.2 Building a Shop Door Project
Furthermore, Motor_1 appears as a signal in the Declaration Pane with path to the
corresponding variable:
13. Declare the next variable Motor_2 by the same method. Add signal also for Motor_2.
3BSE041880-610 A 51
3 MyDoors Project
3.2 Building a Shop Door Project
14. Declare the remaining variables in the declaration pane, row 4 to row 8:
Note the attribute constant of the variable Openings_Total. You can either explicitly
type “constant”, or scroll through the available formats using Alt-key together with the
up and down arrow keys, or press CTRL+J to display the list of attributes and then
select constant.
15. Select the Communication Variables tab in the Diagram editor, and declare the
Service_Req communication variable:
16. Select the Signals tab. The Signal tab already show the Motor_1 and Motor_2
signals added by previous steps. Place the cursor in the left-hand cell on row 3 in
the declaration pane and type Photo_Cell. The Path defines the variable that will
be linked to an I/O channel. Set the cursor in Path column on row 3 and press Ctrl+J.
Double click on the Photo_Cell variable name shown in the entry assistance dialog.
Fill in the remaining values:
3BSE041880-610 A 52
3 MyDoors Project
3.2 Building a Shop Door Project
3BSE041880-610 A 53
3 MyDoors Project
3.2 Building a Shop Door Project
2. In the New Object dialog, select the TOf function block type from any of the two
tabs:
• The List tab contains alphabetical list of all objects available in the inserted
libraries in Project Explorer. Select TOf (Timer Off).
• The Tree tab displays a tree structure to navigate to the required object.
Go to Connected Libraries > BasicLib > Function Block Types, and select
TOf.
3BSE041880-610 A 54
3 MyDoors Project
3.2 Building a Shop Door Project
4. Click Insert, and then click Close to close the dialog. The OpenDoors function block
is inserted in the code pane and also in the declaration pane.
For more information about the TOf and the CTU function blocks, open the Control
Builder Online Help. Simply place the cursor in the Function Block Type cell (for
example TOf), and press F1.
3BSE041880-610 A 55
3 MyDoors Project
3.2 Building a Shop Door Project
5. In the declaration pane for Function Blocks, add the description ‘Timer for Motor’
for the OpenDoors function block.
6. The triangle in the lower right corner of the OpenDoors graphical block indicates
that not all ports are shown. Make all ports visible by selecting the OpenDoors block
in the code pane and then clicking on the Show All Ports tool bar button:
Figure 3.17: Tool bar buttons for changing port visibility. The left button means Show
All Ports as visible in tool tip.
3BSE041880-610 A 56
3 MyDoors Project
3.2 Building a Shop Door Project
7. A variable can be created directly from a block port. This shall be done for the PT
and ET ports of the OpenDoors block. Do this by right-clicking on the PT port and
selecting the Add Variable... command in the context menu. The New Variable
dialog will be shown and suggest a variable name based on the block and port
names, and a data type based on the port data type. Enter 'T#5s' as Initial value
and 'Time duration that doors should be opened' as Description and then click OK.
Figure 3.18: The New Variable dialog opened from the PT port of the OpenDoors
function block.
3BSE041880-610 A 57
3 MyDoors Project
3.2 Building a Shop Door Project
8. Repeat for the ET port of the OpenDoors block. Leave the Initial value empty and
enter 'Elapsed time after photo cell has been activated' as Description and then
click OK. If necessary, adjust the position of the created variable objects by dragging
them. Now the code block shall look like this:
Figure 3.19: The logic after creating variables directly from the PT and ET ports.
3BSE041880-610 A 58
3 MyDoors Project
3.2 Building a Shop Door Project
9. Make a graphical connection between the Photo_Cell variable and the In port of
the OpenDoors function block. Do this by clicking on the right port on the Photo_Cell
variable object and while keeping the left mouse button pressed down, start moving
the cursor. An uncompleted connection is shown:
Move the cursor to the In port of the OpenDoors function block and release the
mouse button. If the two ports involved are of the same data type the graphical
connection is simply completed. But in this case, the source port is of BoolIO data
type, which is a structured data type, and the destination port is of bool data type,
which is a simple data type. Therefore a Select Component dialog will be shown:
3BSE041880-610 A 59
3 MyDoors Project
3.2 Building a Shop Door Project
The dialog shows the components that match the data type of the destination port.
Select the Value component and click OK.
10. Repeat this for the Motor_1 and Motor_2 variables. Select the left hand port of the
variable objects and make a graphical connection to the Q port of the OpenDoors
function block. For both variables, select the Value component and click OK in the
Select Component dialog. After this is done the logic shall look like this:
3BSE041880-610 A 60
3 MyDoors Project
3.2 Building a Shop Door Project
2. Open the Number_of_customers page. In the code pane, right-click and select New
> Object from the context menu. The New Object dialog opens.
3. Select CTU from the list and enter Customer_Count_Up in the Name field. Click
Insert and close the dialog.
4. A Customer_Count_Up function block is created in the code pane. Add the
description in the declaration pane according to figure below:
5. Add variables in the code pane by selecting Insert... in the background area context
menu. Select the variables Photo_Cell, Reset_Counter, and Customers_Qty
(multiple select in the list by using Control key down while clicking) and then click
the Insert button. Close the Insert dialog. Move the Customers_Qty variable to a
position to the right of the CTU block. Move the Photo_Cell and Reset_Counter
variables to a position to the left of the CTU block.
3BSE041880-610 A 61
3 MyDoors Project
3.2 Building a Shop Door Project
3BSE041880-610 A 62
3 MyDoors Project
3.2 Building a Shop Door Project
2. Open the Service_On_Doors page. In the code pane, right-click and select New >
Object from the context menu. The New Object dialog opens.
3. Select CTU from the list and enter Service_Count_Doors in the Name field. Click
Insert and close the dialog.
4. A Service_Count_Doors function block is created in the code pane. Add the
description in the declaration pane according to figure below:
5. Add variables in the code pane by selecting Insert... in the background area context
menu. Insert the Serviced, Openings_Total, Service_Req, and Openings_Freq
variables. Move the Service_Req and Openings_Freq variables to the right of the
CTU block.
3BSE041880-610 A 63
3 MyDoors Project
3.2 Building a Shop Door Project
7. The CU parameter shall be connected to the Q port of the OpenDoors function block
on diagram page 1. It is possible to make graphical connections to object on other
pages by the use of page connectors. Go to diagram page 1 and left click on the Q
port. The port becomes marked:
3BSE041880-610 A 64
3 MyDoors Project
3.2 Building a Shop Door Project
Figure 3.28: Completing the connection by using the Connect to Previous Selection
context menu command.
3BSE041880-610 A 65
3 MyDoors Project
3.2 Building a Shop Door Project
9. This will create the graphical connection to the object on diagram page 1 with page
connectors shown on diagram pages 1 and 3:
Figure 3.29: On page 1 the page connector on the right hand side shows that the
graphical connection goes to the CU port on the Service_Count_Doors object on
page 3.
Figure 3.30: On page 3 the page connector on the left hand side shows that the
graphical connection comes from Q port of the OpenDoors object on page 1.
3BSE041880-610 A 66
3 MyDoors Project
3.2 Building a Shop Door Project
3BSE041880-610 A 67
3 MyDoors Project
3.2 Building a Shop Door Project
Before running the diagram in Test mode, there is an option to enable the Difference
Report window. However, the Difference Report function is not important for this
example since it does not generate a report in Test mode.
For details on how to enable this function, see Difference Report on page 120. This
example assumes that the Difference Report has the default setting (not enabled).
1. In Project Explorer, click Test Mode . The Test Mode Analysis window opens.
2. Click Cold Restart All.
3. Click Continue.
3BSE041880-610 A 68
3 MyDoors Project
3.2 Building a Shop Door Project
3BSE041880-610 A 69
3 MyDoors Project
3.2 Building a Shop Door Project
Figure 3.32: Changing online value for a variable in the declaration pane.
Figure 3.33: Changing online value for a variable component in the code pane.
3BSE041880-610 A 70
3 MyDoors Project
3.2 Building a Shop Door Project
3. Right-click Photo_Cell and select On, then QUICKLY select Off again.
Simulating that a customer has activated the photocell. Both the number of openings
is increased and customers increase.
4. Wait until the doors close. Right-click Photo_Cell and QUICKLY select On, Off,
On, Off, On, Off.
Simulating that three customers are passing the photocell one by one. Notice that
the clock starts when the first customer passes the photocell and resets to 0 when
the next customer passes. Consequently, the opening time is extended for a new
period of 5 seconds, and so on. Note also that the number of times the doors open
only increases by one, whereas the number of customers is increased by three. You
should have three openings of the doors and five customers registered.
5. In the variables list, right-click Reset_Counter and select On, then select Off again.
Reset the customer counter.
6. Activate the photocell so the number of openings (Openings_Freq) passes
Openings_Total. Service_Req will then become True.
7. Right-click Serviced and select On, then select Off again.
Study the reaction of the counters and flags. Note that the variable Openings_Freq
resets.
8. Close Diagram editor.
9. From Control Builder Menu bar, select Tools > Stop Test Mode.
3BSE041880-610 A 71
3BSE041880-610 A 72
4 Hardware Configuration
4.1 Configure Hardware
4 Hardware Configuration
This section teaches you how to add or remove hardware units from the tree structure
in the Project Explorer. It covers the necessary steps for building a software model that
represents a limited part of a hardware configuration in the plant.
Figure 4.1: Hardware position for IO modules (for example DO814 at position 1 and
DI810 at position 2).
3BSE041880-610 A 73
4 Hardware Configuration
4.1 Configure Hardware
In this example, a default CPU PM860 will be replaced with a CPU PM864.
To replace a CPU:
1. Expand Controllers > Controller_1 > Hardware AC 800M until you see the PM860
/ TP830 item in the Project Explorer tree.
2. Right-click the PM860 / TP830 item and select Replace Unit in the context menu.
A ‘Replace’ window opens.
3. Expand Connected Libraries and select, for example PM864/TP830.
3BSE041880-610 A 74
4 Hardware Configuration
4.1 Configure Hardware
Hardware Folder
Figure 4.3: The hardware folder located inside Libraries folder in the Project Explorer.
Among the hardware libraries listed under the Hardware folder, the
S800IoModulebusHwLib library contains S800 IO units for the Modulebus.
2. Expand Controllers > Controller_1 until you see the Connected Libraries folder
in the Project Explorer tree.
3. Right-click the Connected Libraries folder, select Connect Library, and select
S800IoModulebusHwLib from the window.
4. Click OK.
Adding the IO modules from the hardware library:
1. Expand Controllers > Controller_1 > Hardware AC 800M > PM864/TP830 until
you see the ModuleBus item in the Project Explorer tree.
2. Right-click the ModuleBus item and select Insert Unit in the context menu. A ‘Insert
Unit for ModuleBus’ window opens.
3BSE041880-610 A 75
4 Hardware Configuration
4.1 Configure Hardware
3. Expand Connected Libraries > S800Io ModulebusHwLib > Hardware types and
select DO814.
4. Keep default position 1 from Position drop-down menu and click Insert.
3BSE041880-610 A 76
4 Hardware Configuration
4.1 Configure Hardware
To remove a hardware unit, right-click the object in the tree structure and select
Delete.
3BSE041880-610 A 77
4 Hardware Configuration
4.2 Connect Signals to I/O Channels
Figure 4.6: The entry assistance shows the available signals with direction 'in'.
3BSE041880-610 A 78
4 Hardware Configuration
4.2 Connect Signals to I/O Channels
Figure 4.8: The entry assistance shows the available signals with direction 'out'.
4. Double click on Motor_1. Press the ENTER key. Focus is moved to the second row.
3BSE041880-610 A 79
4 Hardware Configuration
4.2 Connect Signals to I/O Channels
5. Type Ctrl + J to open the entry assistance again, this time select Motor_2.
6. The motor variables in Diagram2 have now been connected to the D0814 I/O
channels by use of the corresponding signals.
Figure 4.9: The signals added to the first two I/O channels.
Figure 4.10: The I/O Address column shows how variables are connected to I/O channels.
Changes made to I/O connections in the hardware editor will be reflected in both editors.
Your project has now been tested offline and the hardware configuration is complete.
3BSE041880-610 A 80
4 Hardware Configuration
4.3 Ethernet I/O Wizard
3BSE041880-610 A 81
3BSE041880-610 A 82
5 Connecting the Controller and Go Online
5.1 Firmware Upgrade
This section contains the prerequisites for connecting a controller and the general
procedure for downloading a project to the controller.
If you have created a project according to Section 3 MyDoors Project and then followed
the instructions in Section 4 Hardware Configuration, you can continue with downloading
the application in MyDoors project to a controller.
If you do not have access to a controller or IO modules, you can still follow this example
by using a SoftController. If you prefer to run with a SoftController; jump directly to the
subsection, Setting the System Identity in Control Builder on page 91.
3BSE041880-610 A 83
5 Connecting the Controller and Go Online
5.1 Firmware Upgrade
4. Select Settings > COM Port from the drop-down menu. Make sure the settings
correspond to the physical COM port, on the PC to which your cable is connected.
3BSE041880-610 A 84
5 Connecting the Controller and Go Online
5.1 Firmware Upgrade
5. Click Connect and then press the Init push-button on the Controller until the Run
LED starts to blink. Wait about a minute until a message appears. If connection was
successful, a confirmation text will occur in the Firmware Version text field (Figure
5.2).
In the event of an error message “Connection failed”, you must check the cables and
repeat these steps again.
3BSE041880-610 A 85
5 Connecting the Controller and Go Online
5.2 Setting IP Addresses
6. Select Firmware version2 from the drop-down menu and click Upgrade. File
transmission starts to the controller. This operation may takes a few minutes. A
confirmation window opens when the controller is upgraded, see Figure 5.3.
7. Click OK.
8. Click Exit.
9. Press the Init push-button on the Controller until the Run LED starts to blink.
2. The firmware version must be supported by the installed Control Builder version.
3BSE041880-610 A 86
5 Connecting the Controller and Go Online
5.2 Setting IP Addresses
Preparations
Connecting the cable between the Control Builder and the Controller are exactly the
same as described in Firmware Upgrade on page 83.
1. Connect a serial cable between the Control Builder PC and the Controller, as
specified in Table 5.2. For the type of cable, see Appendix Communication Cables.
3BSE041880-610 A 87
5 Connecting the Controller and Go Online
5.2 Setting IP Addresses
2. From the dialog menu Settings, select the Com port connected to the controller.
3BSE041880-610 A 88
5 Connecting the Controller and Go Online
5.2 Setting IP Addresses
3. Click Connect and then press the Init push-button on the Controller until the Run
LED starts to blink. Wait about a minute until the default IP address appears, see
Figure 5.5.
Figure 5.5: The IP Config dialog box with factory default setting.
In the event of an error message “Connection failed”, you must check the cables and
repeat these steps again.
3BSE041880-610 A 89
5 Connecting the Controller and Go Online
5.2 Setting IP Addresses
5. Set Subnetmask 255.255.252.0 and then click Apply. The new address will be sent
to the Controller and an IP Config window re-opens, see Figure 5.7.
6. Click OK.
7. Click Exit.
8. Press the Init push-button on the controller until the Run LED starts to blink. The
new IP address is not valid until the controller has been restarted.
3BSE041880-610 A 90
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
6. Enter an IP address, in this example (172.16.84.120) and then enter sub net mask
(255.255.252.0).
The number 120 in this example is arbitrary; you may choose any number in range
of (1-254) except number 124 for obvious reasons in this example.
7. Click OK, and close the Local Area Connection Properties dialog.
8. Connect a network cable. The port and channel positions are shown in Table 5.3.
To check that the IP configuration works; open the command prompt window and
ping the Controller. In this example write the following command: ping 172.16.84.124.
Table 5.3: Channel positions for connecting the Ethernet cable in the Controller.
CN2 port on the Controller must not be connected to the same network as CN1. This
port is used for connecting the Controller to a secondary (redundant) network.
3BSE041880-610 A 91
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
2. This time the controller is not reserved. Right-click Controller_1 and select Reserve.
3. The displayed dialog box is used to reserve relevant entities. In this example, the
default selection is sufficient. However, you can enter a comment.
Figure 5.10: The System Identity window for setting the IP address.
3BSE041880-610 A 92
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
6. Enter the actual IP address of your controller and click OK. The System Identity
window closes.
If you run with a SoftController then type in your computer IP address and finish
with colon and the digit 2. Example: 10.46.35.117:2
When the computer is started without network connection, the Control Builder and
SoftController get the IP addresses 127.0.0.1 and 127.0.0.1:2 respectively (irrespective
of fixed IP addresses in the computer). These addresses can be used in the project.
But, without network connection, it is not recommended to use the fixed addresses
in the computer, such as 172.16.84.123:2, because when it is used in the project and
a downloaded to the SoftController, it results in a crash.
7. Expand Hardware AC 800M until you find 1 Ethernet. Right-click the Ethernet icon
(at position 1) and select Editor. The editor opens.
3BSE041880-610 A 93
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
8. Select the Settings tab (lower left corner, see Figure 5.11) and enter the IP address
in the IP address Value field.
Note that the IP address of the first Ethernet port has to be the same as the IP address
of the Controller (system identity). The second Ethernet port (at position 2) is only
used if the controller is connected to a redundant network.
3BSE041880-610 A 94
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
2. Click the toolbar button Download Project and Go Online . The Online analysis
window opens.
3BSE041880-610 A 95
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
3. Click Continue.
3BSE041880-610 A 96
5 Connecting the Controller and Go Online
5.3 Download Project via Ethernet
4. Next, you must start the SoftController. Select SoftController in the ABB Start Menu
app, described in ABB Start Menu on page 16.
The SoftController panel opens:
5. In Soft Controller panel, Click the Start button. The SoftController starts and the
Status field changes to Started.
6. In Project Explorer, click the toolbar button Download Project and Go Online .
The Online analysis window opens.
7. Click Cold Restart All.
8. Click Continue. You should now be online.
3BSE041880-610 A 97
5 Connecting the Controller and Go Online
5.4 Test the Diagram Online
3BSE041880-610 A 98
5 Connecting the Controller and Go Online
5.5 What's Next?
3BSE041880-610 A 99
3BSE041880-610 A 100
6 View Live Data in Plant Explorer
6.1 OPC Server
This section is intended to introduce you to the Plant Explorer interface. It is the last and
final section with the example MyDoors. You have learned how to test an application
locally in Control Builder. Furthermore after configuring an AC 800M controller with S800
IO units you have downloaded the application to the controller and then study how to
control the motors online via I/O. Finally this section will help you studying how the
variable values from MyDoors project appears as live data from the controller. This is
especially interesting since these values will illustrating the same variables that otherwise
would be connected to faceplates in an Operators Workplace.
3BSE041880-610 A 101
6 View Live Data in Plant Explorer
6.1 OPC Server
Figure 6.1: The OPC Server Configuration Panel connected to a Soft Controller
3BSE041880-610 A 102
6 View Live Data in Plant Explorer
6.2 Plant Explorer
3BSE041880-610 A 103
6 View Live Data in Plant Explorer
6.2 Plant Explorer
1. Select Plant Explorer Workplace and click Open. The Plant Explorer opens.
To access the Plant Explorer Workplace from the desktop, select Plant Explorer
Workplace and click Create Desktop Shortcut (see Figure 6.2).
Figure 6.3: Control Structure view. Note that Control Network and MyDoors project
have been added to the Control Structure by Control Builder.
3BSE041880-610 A 104
6 View Live Data in Plant Explorer
6.2 Plant Explorer
3BSE041880-610 A 105
6 View Live Data in Plant Explorer
6.2 Plant Explorer
Figure 6.6: Navigation command in the context menu of the Diagram1 object.
3BSE041880-610 A 106
6 View Live Data in Plant Explorer
6.2 Plant Explorer
3. The Plant Explorer will open and the corresponding object is selected in the tree
view:
Figure 6.7: Diagram1 object selected in the Control Structure of the Plant Explorer
Workplace.
The Project Explorer command will open the Project Explorer and the corresponding
object will be selected in the tree view.
The Diagram Editor command will open the editor for the diagram.
Note that these commands are not available for all objects in Plant Explorer. The
commands are only visible if the object exists in Control Builder.
3BSE041880-610 A 107
3BSE041880-610 A 108
A Functions and Settings
A.1 Ready-made Projects for CB Professional
This section describes some of the functions that are specific to Control Builder. It will
also provide guidelines for different settings and configuration issues typical to working
with control software for AC 800M. A more detailed description for these topics can be
found in the manual Control AC 800M Configuration (3BSE035980*).
• A tutorial (Tutorial_03.afw).
If Environments are enabled, the files are imported to the Engineering Environment
(default settings).
3BSE041880-610 A 109
A Functions and Settings
A.2 Testing
To import an example:
1. Click the icon (Launch Import Export tool) in the Plant Explorer tool bar.
2. On the File menu, select Open. The Open Import/Export File dialog is displayed.
3. Browse to the file you want to import, select it and click Open. The Import/Export
window opens.
It is also possible to open the Import/Export window by double-clicking the .afw file
of the example project from the folder. In this case, ignore Step 1 to Step 3.
4. On the Actions menu, select Import All. A project, containing the example, is created
under a separate Control Network.
5. In the Control Structure, drag the project icon from the Control Network that was
created to your “ordinary” Control Network and drop it.
6. Delete the Control Network that was created.
You can now study the example like any other control project.
A.2 Testing
Test mode can be used for offline testing of applications. Executing code in Test mode
means that the code will be compiled and executed locally in the PC. You can use the
online editors to view variables and application execution. The execution time will be
much faster than executing code online, and you do not need a controller. However,
external communication is disabled during test mode.
Test mode is enabled from the Tools menu in Project Explorer (select Test Mode).
If the project includes several controllers, you will be asked to choose which controller
to start the test mode with. See also Download Project to Selected Controllers on page
118. When Test mode is selected, a version check is performed and the Test Mode
Analysis dialog displays the present applications and controller configurations. Different
restart options will be offered in the Analysis dialog, a more defined presentation can be
found in Application Restart Mode on page 125.
3BSE041880-610 A 110
A Functions and Settings
A.3 Simulation
A.3 Simulation
Simulation means that the code is downloaded and executed in a simulation controller.
Simulation can be done either in a SoftController, or in a simulation controller.
Simulation can be used to test your applications without connecting them to the physical
environment, and to make sure they work and behave as expected.
When an application is simulated, all I/O copying is cancelled. This means that you
need to write corresponding code for I/O responses. For more information see Running
in a Simulation Controller on page 113.
You are advised to read the subsection Restrictions Concerning Hardware Simulation
on page 114, before you start simulating the hardware.
Select Tools > Setup > Station > Application Download to open the
Setup - Application Download dialog (see Figure A.1).
3BSE041880-610 A 111
A Functions and Settings
A.3 Simulation
Simulation controllers are always marked with a “Simulated” flag ( ), to eliminate the
risk of downloading simulation code to a production controller.
A simulation controller accepts a controller configuration even if it does not match its
family and type. The following hardware simulation combinations are possible:
Note that an AC 800M High Integrity controller can never be used for simulation
purposes. An AC 800M High Integrity controller can only be simulated in a
SoftController High Integrity (SoftController HI).
3BSE041880-610 A 112
A Functions and Settings
A.3 Simulation
3BSE041880-610 A 113
A Functions and Settings
A.4 Download
Figure A.2: Variable values can be forced to simulate I/O channel values.
The online editor can for example be used to inspect the result of changed variable
values for a simulated program.
A.4 Download
This section describes download and the checks and reports associated with download.
3BSE041880-610 A 114
A Functions and Settings
A.4 Download
Compilation
Compilation is performed in Control Builder. If any warnings or errors are detected during
the compilation, a Compilation Summary dialog shows a summary of the warnings and
errors. You can then choose (if there are no errors) to continue or cancel the compilation.
Compiler switches can be used to set extra restrictions for the code. For more
information, see Compiler Switches on page 123.
Change Analysis
Control Builder will perform a change analysis if you have changed:
• variables, function blocks, or control modules,
• data types, function block types or control module types,
• libraries,
• applications.
The change analysis is performed, before downloading, to check the possibility of
maintaining variable values after restart.
3BSE041880-610 A 115
A Functions and Settings
A.4 Download
The change analysis detects mismatches between the application version in the controller
and the application version to be downloaded.
A mismatch can occur if:
• A variable has been assigned another data type,
• A variable, function block or control module has been renamed,
• A data type, function block type or control module type is missing, has been renamed,
or has been moved to another library,
• A library has been given a new name (this will result in a mismatch for all data types,
function blocks types and control module types from this library),
• An application has been renamed (this will result in a mismatch for all data types
and variables, function blocks and control modules in the application).
For variables with attributes Retain or ColdRetain, the change analysis is performed in
the following way:
1. All data types, function block types, and control module types, which existed before
the change, are checked for name matching.
2. All variables, function blocks, and control modules are checked for name and type
matching.
If the change analysis detects mismatches, Control Builder cannot determine how to
retain variable values. A warning dialog will display information about detected
mismatches. You may then have to guide Control Builder and correct mismatching
names, by giving the renamed object the new name (click Rename in the dialog).
3BSE041880-610 A 116
A Functions and Settings
A.4 Download
After download is completed, Control Builder enters Online mode. In Online mode, Control
Builder communicates with the controller(s), and you can view variables and application
execution in the controller(s) using online editors. Furthermore, you can issue operations
to the controller.
If the message “Download aborted. See the controller log for further information.”
appears during download, an error has been detected in the downloaded controller
configuration. A common cause is that there is not enough controller memory. You
may find details in the controller log. If the controller is still running, you can try to
compile and download again. See the manual Control AC 800M Configuration
(3BSE035980*) for how to locate the log file.
Another way to reset and restart the controller is to press controller’s INIT button for
more than 3 seconds.
3BSE041880-610 A 117
A Functions and Settings
A.4 Download
The controller will then be reset, all existing applications in the controller will be deleted,
and the controller will be restarted. The download of the new project can then be continued
(as described in General Download on page 114.)
If you select Tools > Download Project and Go Online for a project with more than one
controller, the Selection of Controllers dialog will be displayed. For example, in Figure
A.4, “Controller_2” and “Controller_3” cannot be separately selected or excluded since
one application is connected to both these controllers.
3BSE041880-610 A 118
A Functions and Settings
A.4 Download
Another way to select a specific controller is to right-click the controller in Project Explorer,
and select Download and Online Mode.
The Selective Download function is by default enabled, but can be disabled by selecting
Tools > Setup > Station > Application Download, and in the Setup dialog setting the
parameter SuppressOnlineSelectionDialog to true.
3BSE041880-610 A 119
A Functions and Settings
A.4 Download
Fi 63 C d li i ll O l A li i 2 ill b
Figure A.5: Connected applications to a controller. Only Application 2 will be
downloaded.
3BSE041880-610 A 120
A Functions and Settings
A.4 Download
Based on the information presented in the reports you can either accept or reject the
changes that is if you want the download to be carried out or cancelled.
The function is enabled/disabled from the root (Project icon) at the top of the Project
Explorer tree structure.
Right-click the Project Icon (e.g. MyDoors in Figure 3.2) and select Settings > Project
Settings from the context menu. The click on the Difference Report Settings item in the
tree view in the left part of the Project Settings dialog.
Figure A.6: The Difference Report Settings part or the Project Settings dialog.
To enable the difference report, select the Enable Difference Report check box and
click OK.
The Difference Report function is always enabled when downloading any application
to a High Integrity controller.
3BSE041880-610 A 121
A Functions and Settings
A.4 Download
A.4.5 Re-Authentication
The Re-Authenticate function is used to ensure that a user is authorized to download a
project. If the function is enabled, a dialog is shown and you will be asked to enter name
and password before the download is carried out.
3BSE041880-610 A 122
A Functions and Settings
A.4 Download
3BSE041880-610 A 123
A Functions and Settings
A.4 Download
The restrictions are checked during the check of each type, and also during the
compilation. If you change a restriction, the project will be re-compiled when you perform
a download of the project, and the code will be validated with the new restriction.
Restrictions makes it possible to warn against or forbid things that may result in complex
code and thereby errors. For example, to check the usage of Instruction List language,
you can change the corresponding switch from “Allowed” to “Warning”, and you will get
a compilation warning if there is any IL code in the project. Another example is when a
new library is imported, you can then turn all switches from “Warning” to “Error” to check
the quality of the new library.
Compiler switches are configured in the Compiler Switches dialog, which is displayed if
you; right-click the Project Icon (e.g. MyDoors in Figure 3.2) and select Settings >
Compiler Switches from the context menu. A ‘Compiler switches’ window will open.
It is possible to exclude a library from a certain restriction, provided that the restriction
is a warning. If a library is excluded, no checks are performed on the restriction for any
type in that library. For example, if a new external library results in many warnings, you
may want to filter out acceptable warnings to make it easier to read other warnings. Click
Options in Compiler Switches dialog, and in the expanded dialog select the library to
exclude from the selected restriction.
3BSE041880-610 A 124
A Functions and Settings
A.5 Application Restart Mode
For more information about variables, attributes and values, see the manual Control
AC 800M Configuration (3BSE035980*).
3BSE041880-610 A 125
A Functions and Settings
A.5 Application Restart Mode
At warm restart, only variables with the attribute retain or coldretain are retained. The
values are retained from the current version of the application running in the controller
to the new version, based on name matching.
All other variables are set to their initial value, if such values have been given. Otherwise
the values of the variables are set to the default values of the data types. The default
value is “false” for boolean, 0 (zero) for integer, and so on.
After a power fail, instead of doing a warm restart of the application SIL3 applications
are restarted using cold retain marked values saved in the controller periodically with
a cycle time set by the user.
A short (less than 3 seconds) push on the controller’s INIT button also results in a
cold restart.
At cold restart, only variables with the attribute cold retain are retained. The values from
the aspect server are only used when downloading from Control Builder using cold
restart. All other variables are set to their initial value, if such values have been given.
Otherwise the values of the variables are set to the default values of the data types.
3BSE041880-610 A 126
A Functions and Settings
A.5 Application Restart Mode
The OPC server can also be configured to save cold retain values, either manually (the
values are saved when you click Save) or automatically (the values are saved periodically
with a cycle time set by you).
When you need to setup the saving of cold retain values, consult OPC Server online
help and the manual AC 800M OPC Server (3BSE035983*).
Initial Restart
Table A.2 shows how a initial restart affects variable values when Download mode is
started.
Cold Restart
Table A.3 shows how a cold restart affects variable values when Download mode is
started.
3BSE041880-610 A 127
A Functions and Settings
A.5 Application Restart Mode
Warm Restart
Table A.4 shows how a cold restart affects variable values when Download mode is
started.
Cold Restart
The variable values are similar as in Download mode, see Table A.3.
Warm Restart
The Warm restart mode can only be selected if the Control Builder previously was in
Test mode. The variable values are similar to Warm restart variable values in Download
mode if the control builder was not in the Test mode previously, see Table A.4.
Warm Restart of the application is performed after the power failure. The restart values
of the variables are as shown in Table A.5.
Compilation is performed in Control Builder. You can choose (if there are no errors) to
continue or cancel the compilation. If compilation warnings or errors are detected, the
Compilation Summary dialog will display a summary of the warnings or errors.
3BSE041880-610 A 128
A Functions and Settings
A.5 Application Restart Mode
If you remove the power source (battery) during a power fail, all error logs
will be lost.
In these cases, only variables with the attribute cold retain can be retained. All other
variables are set to their initial values, if such values has been given. Otherwise the
values of the variables are set to the default values of the data types.
3BSE041880-610 A 129
3BSE041880-610 A 130
B License Management
B.1 Introduction
B.1 Introduction
License Management comprises of the following three licenses:
• Control Builder license
– A license that controls the number of currently active Control Builder clients,
see Control Builder Licenses on page 132.
• SoftControl license
– Each started Soft Controller instance should have one license each. Several
Soft Controllers can be started on the same PC.
• Library license
– For using the libraries – TCPHwLib, UDPHwLib, and BurnerLib – separate
licenses are required, see Library Licenses on page 134.
• Loop check license
– For using the loop check tool, see manualSelect I/O Configure and Check
Ethernet I/O Getting Started (9ARD148917*).
Information regarding licensing errors and what happens when licenses need to be
extended (the system will start showing messages that licenses are missing, so called
system wide annoyance mode) etc. can be found in the manual Control AC 800M
Configuration (3BSE035980*) (in the Maintenance and Trouble-Shooting section).
3BSE041880-610 A 131
B License Management
B.2 Control Builder Licenses
You cannot open or create a new control project without a Control Builder license.
3BSE041880-610 A 132
B License Management
B.3 Controller Capacity Points (CCP)
3BSE041880-610 A 133
B License Management
B.4 Library Licenses
3BSE041880-610 A 134
B License Management
B.5 Checking Licenses for a Controller
3BSE041880-610 A 135
B License Management
B.6 Combined AC 800M High Integrity Controller
2. Click the Controller aspect and select the Licensing tab in the aspect preview pane.
The current downloaded CCP value for the selected controller, and the Library
Licenses are displayed (see Figure B.2).
The Required points is validated against the actual licenses available.
If the controller has not been downloaded or if it is in Simulate Hardware state, the
tab displays information about this condition, and no CCP values or Library Licenses
are displayed.
Figure B.2: Example of the Licensing tab in the Controller aspect of the selected
controller
The Licensing tab in Figure B.2 shows the required Controller Capacity Points (CCP)
count and Library Licenses for only the selected controller to which the application
is downloaded. To calculate the total CCP count, open the Controller aspect of each
controller that participated in the download, and add the CCP counts.
3BSE041880-610 A 136
C SIL Certified Applications
C.1 Introduction
C.1 Introduction
SIL stands for “Safety Integrity Level”, as specified in the standard IEC-61508. To run
SIL certified AC 800M applications, you need a SIL certified AC 800M High Integrity
controller.
The Safety Manual, AC 800M High Integrity (3BNP004865*) contains guidelines and
safety considerations related to all safety life-cycle phases of an AC 800M High Integrity
controller.
For information on restrictions regarding SIL applications and High Integrity controllers,
see online help and the manual Control AC 800M Configuration (3BSE035980*).
3BSE041880-610 A 137
C SIL Certified Applications
C.2 SIL Applications
SIL application
2
3
When an AC 800M High Integrity controller is used, there is always an additional standard
library, as well as two additional applications (see Figure C.1):
• VMTLib (1) is the Virtual Machine Test library, containing types used when running
the VMT application.
• VMT_Controller_1 (2) is an application used to make sure that the HI controller
works properly. The name of this application is made up of the prefix VMT_ and the
name of the controller, which is called HI_23 in our example.
• CTA (3) is the Compiler Test Application, used to make sure that the compiler works
properly.
Never delete the above libraries and applications if you run a High Integrity controller.
The VMT library, the VMT application, and the CTA application are needed to make
sure that the High Integrity controller and compiler work properly.
A SIL application may only use library types that are SIL certified. SIL certified library
types are marked with SIL icons in the programming interface. The compiler will also
check for constructs in your code (for example, loops) that are not allowed according to
the SIL standard. If a SIL-marked application contains not allowed types, objects or
constructs, it cannot be downloaded due to compilation errors.
3BSE041880-610 A 138
C SIL Certified Applications
C.2 SIL Applications
Right-click on the object (except for tasks where the setting is performed in the Task
Dialog), select Properties, and then select Safety Level as shown in Figure C.2. Select
the required SIL Level.
The SIL-level is displayed as a black number on top of the icon for the intended object.
If no number is displayed the level is Non-SIL. This marking is also available on Functions.
3BSE041880-610 A 139
C SIL Certified Applications
C.3 High Integrity Controllers
3BSE041880-610 A 140
C SIL Certified Applications
C.3 High Integrity Controllers
3BSE041880-610 A 141
3BSE041880-610 A 142
D Communication Cables
D.1 Connecting Control Builder PC to a Controller
Serial communication between Control Builder and the AC 800M controller is done by
using the TK212A cable.
Connect the DB9 Female connector to a Control Builder PC COM port, thus the RJ45
(8P8C) plug to the AC 800M controller COM4 port. The Figure D.1 illustrates the TK212A
pin-out configuration.
Braid
Shield Shield
3BSE041880-610 A 143
3BSE041880-610 A 144
Revision History
Revision History
Revision History
This section provides information on the revision history of this User Manual.
The revision index of this User Manual is not related to the 800xA 6.1 System Revision.
Revision History
The following table lists the revision history of this User Manual.
Revision
Description Date
Index
A Published for 800xA 6.1 November 2018
3BSE041880-610 A 145
3BSE041880-610 A 146
Index
Index
A
Analysis D
changes, 115 Diagram, 45–46
online, 114 Diagram editor, 47
version, 114 add new object, 54
Application, 25 add new variable, 50, 57
CTA, 138 changing online value, 70
folder, 32 graphical connection between objects, 59
restart mode, 125 graphical connection between pages, 64
SIL, 137 in test mode, 69
page connectors, 66
C page name, 48
Change analysis, 115 panes, 39
Cold restart, 126 port visibility, 56
variable values, 127 Download
Communication cables change analysis, 115
cross-over ethernet cable, 91 go online, 116
serial connection to controller, 143 new project, 117
straight-through ethernet cable, 91 re-authenticate, 122
Communication variable, 46 simulated applications, 120
declaration, 52 to selected controller(s), 118
Compilation, 115 via Ethernet, 91
Compiler Test Application (CTA), 138 Drag-and-drop, 35
Configure
hardware, 73 E
IP address for controller, 93 Entity, 26
OPC server, 23, 104 Environment, 27
system, 23 deploy, 27
Context-sensitive help, 21 Ethernet
Controller cables, 91
configure IP address, 93 configure IP address for controller, 93
High Integrity, 140 ports on controller, 91
Create logic
counters, 53 F
timers, 53 Firmware upgrade
CTA application, 138 via Ethernet, 83
Firmware Upgrade
3BSE041880-610 A 147
Index
3BSE041880-610 A 148
Index
T W
Test mode, 68, 110 Warm restart, 125
variable values, 128
3BSE041880-610 A 149
3BSE041880-610 A 150
www.abb.com/800xA 800xA is a registered or pending trademark We reserve all rights to this document
of ABB. All rights to other trademarks reside and the items and images it contains.
www.abb.com/controlsystems with their respective owners. The reproduction, disclosure to third parties
or the use of the content of this document
We reserve the right to make technical – including parts thereof – are prohibited
changes to the products or modify the without ABB’s prior written permission.
3BSE041880-610 A