H651-05.1 Project Framework and Control Builder M - RevE

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 32

800xA Minerals Training

Chapter 5 Project Framework and Control Builder M

TABLE OF CONTENTS

Chapter 5 Project Framework and Control Builder M....................................................................................................................1


5.1 General Information...............................................................................................................................................................2
5.1.1 Objectives.......................................................................................................................................................................2
5.1.2 Legend............................................................................................................................................................................2
5.1.3 Reference Documentation...............................................................................................................................................2
5.2 Automation Solution..............................................................................................................................................................3
5.2.1 Control Network / Control Project..................................................................................................................................4
5.2.2 Working with the Plant Explorer / Engineering Workplace...........................................................................................4
5.2.3 Working with the Project Explorer of Control Builder M..............................................................................................4
5.2.4 Integration and Connectivity..........................................................................................................................................5
5.2.5 Creating a Control Network............................................................................................................................................6
5.2.6 Creating a Control Project..............................................................................................................................................7
5.2.7 Starting the Control Builder M.......................................................................................................................................8
5.3 Project Explorer...................................................................................................................................................................10
5.3.1 Overview.......................................................................................................................................................................10
5.3.2 Online Help...................................................................................................................................................................11
5.3.3 Toolbar Buttons............................................................................................................................................................12
5.3.4 Project Tree...................................................................................................................................................................12
5.3.5 Limits and Rules...........................................................................................................................................................17
5.4 Multi-User Engineering.......................................................................................................................................................18
5.4.1 Entities..........................................................................................................................................................................18
5.4.2 Reserve / Release..........................................................................................................................................................19
5.4.3 Take Over.....................................................................................................................................................................20
5.4.4 Example........................................................................................................................................................................20
5.5 Automatic Synchronization.................................................................................................................................................24
5.5.1 Tag Shown on Both Places...........................................................................................................................................24
5.5.2 Objects on Different Places..........................................................................................................................................24
5.6 The POU Editor...................................................................................................................................................................25
5.6.1 Program Organization Units.........................................................................................................................................25
5.6.2 Editor Overview............................................................................................................................................................26
5.6.3 Declaration Pane...........................................................................................................................................................28
5.6.4 Message Pane................................................................................................................................................................29
5.6.5 Code Pane.....................................................................................................................................................................30
5.7 Test Mode............................................................................................................................................................................31

Chapter 5 - 1
761688177.doc

5.1 General Information

5.1.1 Objectives
On completion of this chapter you will be able to:
 Create a new project in the 800xA system
 Navigate in the Project Explorer
 Structure the application
 Describe the POU editor

5.1.2 Legend
> Indicates when you go from one menu to a sub-menu
Italic Indicates object and file names
“ “ Indicates dialog box buttons, tabs, menus etc.
Bold Indicates important topics
Indicates start/explanation of student activity

5.1.3 Reference Documentation


3BSE041880 System 800xA Control
AC 800M Getting Started
3BSE035980 System 800xA Control
AC 800M Configuration
3BSE043732 System 800xA Control
AC 800M Planning
3BSE035981 System800xA Control
AC800M Binary and Analog Handling

Chapter 5 - 2
800xA Minerals Training

5.2 Automation Solution


An Automation Solution is the integrated automation system for administration,
maintenance and control. In System 800xA, you can create and handle many Control
Projects which can comprise libraries, applications, controllers, security, graphic,
history logs, etc.
The Project Explorer in Control Builder M and the Plant Explorer / Engineering
Workplace should be considered as two separate interfaces for building and
maintaining control projects.

800xA System

Control Builder M Plant Explorer /


Project Explorer Engineering Workplace

Handles one Handles many


Control Project Control Projects

Control Project Control Project


configuration Synchronization administration

Download and Faceplates and


testing Alarm Lists

AC 800M Controller Operator Workplace

As an engineer you will continuously shift between the Project Explorer (Control
Builder M) and the Plant Explorer (800xA workplace) while building Control
Projects.

Control Builder M is also the certified tool to configure SIL certified applications. SIL
stands for Safety Integrity Level, as specified in the standard IEC-61508. To run SIL
certified AC 800M applications, you need the SIL certified AC 800M High Integrity
controller.

Chapter 5 - 3
761688177.doc

5.2.1 Control Network / Control Project


Engineers, who are new with the Control Builder M programming tool, typically
equate a program to a Control Project. It is not the same thing.
It is important to learn the hierarchy used throughout Control Builder:
 An automation system might contain a number of Control Networks representing
different parts of a large plant.
 Within each Control Network, you can create a number of Control Projects. A
Control Project contains the configuration data for libraries, applications,
connected hardware, etc.
 Each application contains programs and additional objects (data types, function
block types, control module types) that are used within the application.
 Each program is connected to a task, which decides how often the program is
executed.

5.2.2 Working with the Plant Explorer / Engineering Workplace


The following actions can/should only take place from the Plant Explorer or
Engineering Workplace:
 View aspects in Structures
 Editing graphic displays
 Editing faceplates
 Working with the Import/Export tool to handle subsets of an Automation System
 Maintaining backup and restore for a complete System 800xA
 Configuring security
 Configuring alarm lists, historical data collection and trend displays

5.2.3 Working with the Project Explorer of Control Builder M


The following actions can/should only take place from the Project Explorer:
 Build the control logic
 Creating hardware and downloading the firmware
 Setting an application in Test and Simulate mode
 Upgrading applications
 Downloading applications to controllers
 Setting task connections

Chapter 5 - 4
800xA Minerals Training

5.2.4 Integration and Connectivity


The Control Builder M (CBM) runs as an aspect system on the Aspect Framework,
(also called Aspect Integrator Platform (AIP). The integration, which requires the
installation of the AC 800M Connect option, works as follows:
 The CBM Project Explorer and the Control Structure are synchronized, thus
showing the same view. Object types can be created either in the Library section
in the CBM Project Explorer or in the Object Type Structure.
 Instances of function blocks or control modules can be created in Control Builder
when writing control code. In this case, the instances are immediately created in
Plant Explorer as well. The instantiation is based on the object type in the Object
Type Structure, thus giving the instance all aspects such as faceplates etc., as
defined by the type.
 Instantiation can also be done in Plant Explorer or with Bulk Data Manager, in
which case the instance is created from the object type and then mirrored over to
Control Builder M.

Chapter 5 - 5
761688177.doc

5.2.5 Creating a Control Network


The Plant Explorer should be used to create the Control Network and establish a
Control Project. A Control Network is used to group connected OPC Servers.
NOTE! The “Control Network” in the Control Structure
corresponds to the physical Control Network.
1. Select the Control Structure in the Plant Explorer. This is the structure used to
create Control Networks, set the OPC data source definition aspect, and create
Control Projects.

2. Right click on the Root object and select “New Object” from the context menu.

3. Select the object type “Control Network” and give a suitable name.

4. The result will look like this:

Chapter 5 - 6
800xA Minerals Training

5.2.6 Creating a Control Project


After you have created a Control Network, create a Control Project. A Control Project
groups applications and controllers together from the Project Explorer.
NOTE! Several Control Projects can be created in one Control
Network.
1. Right mouse click on the Control Network object and select “New Object” from
the context menu.

2. Select a controller from the 800xA family (in our case select AC 800M). Type in
the name for the Control Project, such as Sxx_Project.

3. The result will look like this:

Chapter 5 - 7
761688177.doc

5.2.7 Starting the Control Builder M


The Control Builder M application will automatically open as soon as you created the
Control Project object in the Plant Explorer.

If the Control Builder M application does not open automatically, right click on the
Sxx_Project object in the Control Structure and select “Open Project”.

You can also start Control Builder M Professional from the start menu of Windows.
“Start > Programs > ABB Industrial IT 800xA > Engineering > Control Builder M”

Chapter 5 - 8
800xA Minerals Training

It is also possible to use the shortcut on the desktop if this was installed.

Then the Control Project can be opened using the “Open Project.” command.

Chapter 5 - 9
761688177.doc

5.3 Project Explorer

5.3.1 Overview
The Project Explorer is a tool you can use to create, modify and navigate in a project.
You can select all objects such as data types; functions and function block types and
display them in an editor.
The Project Explorer is a separate window with a menu bar and a toolbar. The window
is split into two separate viewing areas (panes).

NOTE! Select the top of the area divider to any of the arrows
shown to position the areas.

In the upper pane, the project is displayed in a tree view control with folders and in the
lower pane there are three tabs for Description, Check and Message.
Description Tab
Displays a description, written in the editor (e.g.: the program editor), of the selected
object in the tree view control.
Check Tab
A check of a selected object, e.g., an application and its contents is performed when
you select “Check” in the pop-up menu (click with the right mouse button). If any
errors are found, they are displayed in the “Check” tab. Double click on an error to
locate the exact position of the error in an editor.
Message Tab
Displays system activity messages, e.g.: going from offline to online mode and
opening files.

Chapter 5 - 10
800xA Minerals Training

5.3.2 Online Help


There is a powerful online help feature in the Control Builder M.
Start the help with the help icon or select “Help > Help Topics” from the menu bar.
You can also press <F1>, which provides context sensitive help on the item currently
selected.

The Help Topics dialog box enables you to locate topics in the help files by using the
table of contents (Contents tab), by selecting keywords that are assigned to topics
(Index tab), or by searching for words within the file (Find tab).

Chapter 5 - 11
761688177.doc

5.3.3 Toolbar Buttons


The Toolbar provides quick access to frequently used commands or options

5.3.4 Project Tree


The project is displayed in a tree view with the contents indented in an outline based
on their logical hierarchical relationship. The objects in the Project Explorer are each
represented by a name and an icon. By clicking on the button with a plus or minus
sign beside the folder, you can expand or collapse an icon and the corresponding
container.
The project tree contains 3 directories:

Chapter 5 - 12
800xA Minerals Training

5.3.4.1 Libraries
The Libraries folder contains all libraries used in a project. By inserting a library in to
a project, its type will become available to connect to an application.
When a project is created, the libraries folder contains the System folder (containing
firmware functions that can be used throughout your applications) and two libraries
that are always connected to a project, the Basic and the Icon libraries. There are a
number of additional libraries available that can be inserted.
The libraries contain type definitions such as data types, functions and function block
types and control module types that can be used in the project.

There is also a Hardware folder available, containing several hardware libraries.


These libraries are available to connect to a controller and thus we can mix different
hardware versions in one Control Project.

Chapter 5 - 13
761688177.doc

5.3.4.2 Applications
A Control Project may contain one or more applications. The application is the largest
organizational unit in any controller. However a controller may execute several
applications. Each application may be considered as an independent object in the
controller.
In the application create the programs or control modules containing the program
code to be compiled and downloaded for execution in the controllers. Each application
to be used must be connected to a controller.

One Application

Control Modules

Programs

The applications could also contain application folders which allows to structure or
group the applications.
NOTE! In this document the word “Code” refers to any
instruction that the controller can execute.

You may choose to write code in any one of 5 language editors in Control Builder:

Instruction List Structured Text Sequential Function Chart


LD A
ANDN B C:= A AND NOT B; Step 1 N FILL
ST C
Transition 1
Function Block
Diagram Ladder Diagram Step 2 S Empty

A B C Transition 2
AND
A C -| |--|/|----------------( )
B Step 3

All languages are available for both programs and control modules. Choose the
language that most suites your needs or preference.

Chapter 5 - 14
800xA Minerals Training

There are two types of container that can be used to hold code in a Control Builder
application:
 Control Modules
 Programs

Application

Control Control Control


Module 1 Module 2 Module N

Program 1 Program 2 Program N

Programs have a traditional look and feel and represent a traditional approach to
application design and build. Within each program a selection of language editors may
be used. Each program may be divided into ‘Code Blocks’ or ‘Tabs’, which may be
thought of as sub-programs. In some editors you may divide the tab into several pages.

Control Modules are another way of compiling code which has many advantages
over the traditional programs – applications written with control modules will use less
memory and usually execute faster than those written with programs. The Minerals
Applications are mainly using Control Modules.

Chapter 5 - 15
761688177.doc

5.3.4.3 Controllers
The hardware definition and the I/O connection are done in the Controllers folder. In
the root of the Controllers folder of each project, several controllers can be created.
Hardware units are added to the tree structure representing physical hardware units.

The applications containing the code are not executed unless a “work scheduler” - a
task - is connected and serves as an “engine” running the code in the controller. In the
root of the Tasks folder of each Controller, several tasks can be created. Each
controller has three default tasks labeled Fast, Normal and Slow with their interval
times set to 50ms, 250ms or 500ms and 1000ms respectively.

Chapter 5 - 16
800xA Minerals Training

5.3.5 Limits and Rules

5.3.5.1 General Limits


 Max 64 programs per application
 Max 1024 applications per Control Project
 Max 32 applications per controller
 Max 32 tasks per controller
 Max one application per task
 Max 32 controller per Control Project
Application programming can be done from any Engineering Station in the system.
But be careful that only one engineer works on an application at the same time.

5.3.5.2 Minerals Applications Rule


Normally one process section is implemented in one application which is loaded in
one controller.
1 Process Section  1 Application  1 Controller
Examples of process sections in Minerals applications:
 Raw material handling
 Raw mill & meal transport
 Preaheater & kiln
 Cooler & clinker transport
 Cement mill
 Packing

Chapter 5 - 17
761688177.doc

5.4 Multi-User Engineering


Entities and reservation provide support for multi-user engineering (working within a
project development group that involves several people).
Before you can modify the properties of an object, you have to reserve it. This ensures
that only one user can modify an object at a time. When ready, you release the
reservation. Now, it is possible for another user to reserve and modify the object.
NOTE! It’s also possible to take over a reservation, depending on
the user rights.

5.4.1 Entities
Only some objects, so-called entities, can be reserved. Unless you have reserved an
entity, parts of the Project Explorer will be read-only, for example, some context menu
items will be disabled, and dialog boxes may be read-only.
The following objects are entities:
 Projects, applications, controllers
 Libraries
 Control modules types
 Function block types
 Function diagrams (created by Function Designer)
NOTE! An entity can be part of another entity. For example,
applications and controllers are part of a project.

When you reserve an entity, you also reserve all its objects that are no entities. For
example, when you reserve:
 A controller, you also reserve all objects part of the controller, such as hardware
units and tasks.
 An application, you also reserve its programs and data types, but not necessarily
its function block types or control module types.

Chapter 5 - 18
800xA Minerals Training

5.4.2 Reserve / Release


Before you can modify an entity, you have to reserve it: Right click on the entity, for
example an application, and select “Reserve”. Use the Reserve dialog box to select
what entities to reserve.

User “Engineer1”
reserved this project

When you are finished modifying an entity, you can release it in a similar way: Right
click on the entity and select “Release Reservation”. Use the Release Reservation
dialog box to select what reservations to release.

Chapter 5 - 19
761688177.doc

5.4.3 Take Over


Only one user can reserve an item and no other user can modify it while the item is
reserved. However, another user that has “Break reservation” permission can take over
the reservation.
This is useful to prevent items from being locked-up indefinitely if the user holding
the reservation is not available for some reason. Only members of the Administrators
Group have the “Break reservation” permission by default.

5.4.4 Example
1. Reserve an application when logged in as the user “Engineer3”.

2. Switch to another user and you can see that the icons changed.

Chapter 5 - 20
800xA Minerals Training

3. When you try to reserve the same application that is reserved by another user, you
get the following message in the dialog box:

The same thing occurs when you try to reserve a controller that is already reserved
by another user.

Chapter 5 - 21
761688177.doc

4. It is not possible for “Engineer4” to change the controller’s configuration. The


window indicates that by gray color meaning “read only”.

It is also not possible to modify the Hardware Units configuration.

Chapter 5 - 22
800xA Minerals Training

5. Take over the entities reserved by another user to release them. This user must
have the “Break reservation” permission.

Chapter 5 - 23
761688177.doc

5.5 Automatic Synchronization


This section gives you an overview about the link between the Project Explorer in
Control Builder M and the Control Structure in the Plant Explorer.
Control Builder M is continuously synchronized with the Aspect Directory on System
800xA. This synchronization mechanism works in both ways i.e. if you do something
in Control Builder it is “mirrored” to the Aspect Directory and vice versa.

5.5.1 Tag Shown on Both Places


The same tag is shown in Project Explorer and the Control Structure.

5.5.2 Objects on Different Places


There are some objects which do not have corresponding objects on the other side. But
some objects are just located on different structures in the Plant Explorer.

Libraries

Data Types
Function Block Types
Control Module Type
s

Connected Libraries

 Libraries are handled in Library Structure and Object Type Structure.


 Data types, function block types and control module types are handled in the
Object Type Structure.
 Connected libraries are in the Application aspect of a specific application (such
as Sxx_ReactorApp) in the Control Structure.

Chapter 5 - 24
800xA Minerals Training

5.6 The POU Editor

5.6.1 Program Organization Units


The IEC 61131 standard describes programs, function blocks (FB) and functions as
Program Organization Units (POU). These units help you organize your automation
project into code blocks to minimize code writing and optimize the code structure and
code maintenance.
The ABB Extensions adds to the IEC 61131 standard two more POUs – Single
Control Modules (SCM) and Control Modules (CM) which are used for more
sophisticated and efficient programming.
The Function-, Function Block- and Control Modules-POUs are not limited to "one-
time-use", they can be used repeatedly.
One Application

Control Modules
SCM

CM

FBs
(used inside CM)

CM

FBs
(used inside SCM)

Programs

FBs

FBs
(used inside FB)

The application contains the program code that is to be compiled and downloaded
for execution in the controller. An application should be seen as a container more
than as a programming object, since it does not contain any code of its own.

Chapter 5 - 25
761688177.doc

5.6.2 Editor Overview


Open the POU editor by double clicking on a program or right mouse click and
choose “Editor”.

The POU editors of programs, function block types and control module types have
basically the same look and functionality. This section describes the POU editor of a
program (control modules and function blocks are covered later in this course).

Chapter 5 - 26
800xA Minerals Training

Toolbar Icons
The tables below describe the main menu commands, toolbar icons and keyboard
short cuts common to all editors. Editor-specific functions are described in the chapter
of respective editors.

Toolbar Keyboard Description


icon hot key
Ctrl + U Saves the changes and closes the editor.

Ctrl + W Save the changes but does not close the editor.

Ctrl + B Checks the editor contents for errors. The result is displayed
in the "Check" tab in the output pane. Double-click on the
lines with error messages to jump directly to the place where
an error occurred.
Reserve the relevant entity (only available for some editors).

Release the reservation.

Ctrl + Z Undoes the most recent action. You can undo several steps,
except in the ST code editor, which only supports undoing
the most recent action. Not available in the SFC editor.
Ctrl + Y Recalls the last undo action. Not available in the ST code
and the SFC editor.
Ctrl + F Standard find function. Note: the function only searches the
current pane and present code block.
F3 Finds the next occurrence of a specified text string. Note:
the function only searches the current pane and present
code block.
Standard find function, but searches all panes and all code
blocks (find in the Editor).
Toggles the display of the lower pane - the message pane.

Ctrl + I Inserts statements like if-then-else, for-loop, etc.

Ctrl + Space Fills in the rest of the name, for example, a variable name in
the code pane (complete word).
Ctrl + J Inserts a variable, data type or attribute in the declaration
pane or in the code pane.
INS Inserts a function or function block.

Ctrl + L Inserts a function.

Ctrl + E Edits a type. The type can be write protected, for example if
it is a system-protected type or an user-protected type.
Ctrl + M Edit Parameter List. Opens the connection editor for
parameter input assistance.
Filters different columns inside the POU editor both in
Online and Offline modes.
Sort the items in a column A to Z sequence. If no column is
selected, the Name column will be sorted.
Sort the items in a column Z to A sequence. If no column is
selected, the Name column will be sorted.

Chapter 5 - 27
761688177.doc

5.6.3 Declaration Pane


Use the declaration pane to declare variables, communication variables and function
blocks. Depending on which editor you use, different declaration grids can be
displayed by selecting the tabs at the bottom of the declaration pane.

NOTE! Variables can be written in Microsoft Excel and then


copied and pasted to the declaration pane.

Variables
The variables in the program are the holders of values. They are declared by giving
each a name and by assigning a data type. A single program may contain many
variables and they must be declared when they are used.
Communication Variables
These variables support the Inter Application Communication (IAC). The CBM
compiler recognizes the declared communication variables and generates the code for
the communication between different applications.
Function Blocks
Function blocks must be declared in the “Function Blocks” tab before they are used in
the ST or IL languages (not necessary in the FBD or LD editors).

Chapter 5 - 28
800xA Minerals Training

5.6.4 Message Pane


The message pane consists of three tabs: Description, Check and Find in Editor.

Description
In the description tab, you can write notes in plain ASCII text. The notes are common
to all code blocks and grids. The description is displayed in the lower pane of the
Project Explorer tree view by marking the edited object (for which a description has
been written), e.g. a program.
Check
When you are validating code, error messages are displayed in this pane. Double click
an error message to quickly go to the place where the error occurred.
Find in Editor
You can use the “Find in Editor” command to search for a word in the entire current
editor and the result is presented as a list. You can double click the row in the message
pane to go quickly to the occurrence of the word.

Chapter 5 - 29
761688177.doc

5.6.5 Code Pane


The code pane is divided into code blocks. It is advisable to arrange the code in blocks
to improve the overall code structure and readability.
The order of code execution is determined by the order of the tabs (from left to right)
and inside the tab along the “Structure Pane” (from top to down). The execution order
for control modules is set up by the system for the most effective order possible.

Structure Pane Code Block FBD Pane

The code blocks may be inserted, deleted, renamed and rearranged by clicking right
on the “Code” tab. The language can only be changed if there is no program code in
the block.

Chapter 5 - 30
800xA Minerals Training

5.7 Test Mode


It is possible to test (simulate) a project without using any physical hardware (cpu and
I/O system).
Save the project and then either click the “Test” button or select “Tools > Test Mode”
from the menu in the Project Explorer to “download” the code into “test engine” in
order to stimulate the inputs and monitor the data flow in the logic and variables.

…click continue…

Error Messages
If there is an error in the project when you request a Check or when you try to go to
Test Mode, an error message is written in the “Message” tab of the Project Explorer.

Chapter 5 - 31
761688177.doc

Chapter 5 - 32

You might also like