You are on page 1of 38

KE-90.

4600 Process Automation project


work - ABB 800xA introduction
(This material is built using ABB T314 course materials, T314-02 System Architecture, T314-04 Engineering Workplace & T314-06 Application
Structures, as reference.)

Contents
1 System Overview ....................................................................................................................................... 4
1.1 Options Grouped in Functional Areas ............................................................................................... 5
1.2 Use of Standards ............................................................................................................................... 5
2 Aspect Objects Concept ............................................................................................................................ 6
2.1 Aspects and Objects .......................................................................................................................... 6
2.1.1 Example of a Control Valve ....................................................................................................... 6
2.2 Intuitive Navigation ........................................................................................................................... 7
3 System Topology ....................................................................................................................................... 7
3.1 Domain Server ................................................................................................................................... 8
3.2 Aspect Server ..................................................................................................................................... 8
3.3 Connectivity Server ........................................................................................................................... 8
3.4 Application Server ............................................................................................................................. 9
3.5 Plant Network .................................................................................................................................... 9
3.6 Client/Server Network ....................................................................................................................... 9
3.7 Control Network ................................................................................................................................ 9
3.8 Controllers (PLC) .............................................................................................................................. 10
3.8.1 PLC station ............................................................................................................................... 10
3.8.2 I/O stations .............................................................................................................................. 11
3.8.3 Communication Interface Units .............................................................................................. 12
4 Client / Server Principle ........................................................................................................................... 13
4.1 Aspect Directory .............................................................................................................................. 13
4.1.1 Example: Graphic Display ........................................................................................................ 13
5 Engineering Workplace / Plant Explorer ................................................................................................. 13
5.1 What is a System? ........................................................................................................................... 13
5.2 What is a Workplace? ...................................................................................................................... 13
5.3 How to Start the Engineering Workplace ........................................................................................ 14
5.4 Browse the Aspect Directory ........................................................................................................... 15

1

5.5 Plant Modeling / Structures ............................................................................................................ 15
5.6 Context Menus ................................................................................................................................ 16
5.7 Navigate between Structures .......................................................................................................... 16
5.8 Structures used for Application Engineering ................................................................................... 16
5.8.1 Functional Structure ................................................................................................................ 17
5.8.2 Control Structure ..................................................................................................................... 17
5.8.3 Location Structure ................................................................................................................... 17
5.8.4 Library Structure ...................................................................................................................... 17
5.8.5 Object Type Structure ............................................................................................................. 17
5.9 Structures used for Administration ................................................................................................. 18
5.9.1 User Structure ......................................................................................................................... 18
5.9.2 Workplace Structure ............................................................................................................... 18
5.9.3 Service Structure ..................................................................................................................... 18
5.9.4 Maintenance Structure ............................................................................................................ 18
5.9.5 Additional Structures ............................................................................................................... 18
6 ABB 800xA & Control builder M .............................................................................................................. 18
6.1 Automation Solution ....................................................................................................................... 18
6.1.1 Control Network / Control Project .......................................................................................... 19
6.1.2 How to Start the Control Builder M ......................................................................................... 20
6.2 Project Explorer – Overview ............................................................................................................ 21
6.2.1 Toolbar Buttons ....................................................................................................................... 21
6.2.2 Project Tree ............................................................................................................................. 21
6.2.3 Limits ....................................................................................................................................... 23
6.3 Program Organization Units (POU) ................................................................................................. 23
6.3.1 Editor Overview ....................................................................................................................... 24
6.3.2 Declaration Pane ..................................................................................................................... 26
6.3.3 Message Pane .......................................................................................................................... 26
6.3.4 Code Pane ................................................................................................................................ 27
6.4 Test (Simulation) Mode ................................................................................................................... 27
6.5 Control Structure – Project Explorer ............................................................................................... 28
6.5.1 Tag Shown on Both Places ....................................................................................................... 28
6.5.2 Different Places ....................................................................................................................... 28
6.5.3 Automatic Update ................................................................................................................... 29
7 Working with Control Builder M system software .................................................................................. 30

2

8 Control Builder M - Libraries ................................................................................................................... 30
8.1 Inserting libraries ............................................................................................................................. 30
8.2 Library content ................................................................................................................................ 30
8.3 Hardware libraries ........................................................................................................................... 31
8.4 Attaching libraries to project ........................................................................................................... 31
9 Control Builder M - Application configuration ........................................................................................ 31
9.1 Variables .......................................................................................................................................... 32
9.2 Function blocks ................................................................................................................................ 32
9.3 Code pane ....................................................................................................................................... 32
9.3.1 Readymade program blocks for basic measurement and control ........................................... 32
9.3.2 Program block naming ............................................................................................................. 32
9.3.3 Predefined Program ................................................................................................................ 33
9.4 Task connection ............................................................................................................................... 33
10 Control Builder M - I/O configuration ................................................................................................. 33
10.1 PLC-brain hardware selection ......................................................................................................... 33
10.1.1 System Identy (IP-configuration) ............................................................................................. 34
10.2 I/O-module insertion ....................................................................................................................... 34
10.3 Control module Communication modules ...................................................................................... 35
10.3.1 Communication module substation inserting and conf. for Profibus DP&PA ......................... 36
10.4 I/O point configuration .................................................................................................................... 36
11 Control Builder M - Testing the program in Testmode ....................................................................... 36
12 OPC server for ABB DCS system .......................................................................................................... 38

3

1 System Overview
The IndustrialIT Extended Automation System 800xA is a comprehensive process automation system. It
covers operation and configuration of continuous and batch control applications.

System 800xA has been developed incorporating Information Technology with the experience and know-
how collected over decades of successful deliveries and customer installations.

800xA System offers more than a traditional Distributed Control System. It gives youa single application to
organize and access all plant information.

As expected, you have functionality like graphics, faceplates, alarm management and trending available.
However, with the unique integration principles based on the Aspect Object technology, you can easily
integrate information like Live Video, Documentation (using Word for example), Quality Analysis, and
Maintenance Information (from SAP or Maximo for example).

System 800xA provides a secure, reliable, control environment with built in security features such as access
control, user authentication, and audit trail capability.

4

1.1 Options Grouped in Functional Areas
The 800xA system functionality is divided into a Base System and a set of options, grouped in Functional
Areas. The options represent functions that can be added to the system based on the needs of the process
that should be controlled.

1.2 Use of Standards


System 800xA uses standard hardware, operating system software and protocols. This allows data to be
obtained not only from ABB systems but from a variety of sources such as other brands of control systems
or from lab entries.

It also allows making this data available to ABB and other manufacturers’ systems such as historians and
maintenance management programs.

• Windows 2003 / XP
• Internet Explorer
• Visual Basic
• ActiveX Controls
• OPC -OLE for Process Control
• Microsoft Component Object Model (COM)
• PROFIBUS
• Fieldbus Foundation


5

2 Aspect Objects Concept
A central problem in plant operations, as well as asset life cycle management, is the need to organize,
manage, and have access to information for all different aspects of a great number of plant and process
entities.

The Aspect ObjectsTM architecture is a cornerstone of the IndustrialIT concept and enables enterprise wide
information availability in a unified way. It provides information-centric navigation – a consistent way to
instantly access all information without having to know how and by which application the information is
handled.

2.1 Aspects and Objects


The system model objects of the real process equipment or entities are called Aspect Objects. They can be
physical process equipment, like a valve, or more complex, like a reactor. Other examples are: products,
material, batch procedures, manufacturing orders, and customer accounts.

Each of these Aspect Objects is a container of references to all information pertaining to a real object. The
various types of information related to the object are called Aspects. Examples are: process graphic,
faceplate, alarm, trend, report, order
definition, mechanical layout etc.

It is necessary to be able to implement


these aspects using many different
applications, both existing and new,
from ABB, third parties and customers.
These applications are called Aspect
Systems and must cooperate to provide
an integrated view and functionality of
the object.

Examples are: Graphics Builder for


graphics, Auto CAD for mechanical layout, SAP for order handling etc.

2.1.1 Example of a Control Valve


For example a valve is a real object and has many types of data associated with it. It has manufacturer’s
specifications, mechanical drawings, a maintenance schedule and history, ordering information for parts,
physical location in the plant, faceplate for operator interface, graphic symbol for display on graphics, and
many other possible types of information.

Traditionally, these types of


information are found in many
separate systems or in many
different document formats. An
Aspect Object presents this
data as a menu of choices
accessible by right clicking on
the object anywhere it appears
in the system. The various
types of information related to
the object, in this case the
valve, are called Aspects.

2.2 Intuitive Navigation


Quick access to displays and information is provided with web browser tools. Favorites, history lists,
shortcuts, and hot keys provide navigation through a process production facility quickly and accurately.

Use of the right mouse button


provides access to additional
details via a context menu. The
same context menu is
available, showing all aspects,
independent whether you
select it e.g. in the graphic
display or in the alarm list.

3 System Topology
The System 800xA architecture assumes a system of computers and devices that communicate with each
other over different types of communication networks, as illustrated conceptually here.

The Workplaces uses either dedicated client computers or combined client/server machines allowing both
client and server applications to run in one PC for larger configuration.

System communication
in the 800xA System is
based on Ethernet and
TCP/IP networks.
Servers run software
that provides system
functionality,
Workplaces run
software that provides
various forms of user
interaction.

NOTE! Server
configuration and
selection are important factors for system performance.

The 800xA system uses a central licensing mechanism. One designated computer, typically the domain
controller, should contain the central licensing server (CLS).

3.1.1 Domain Server


Small systems can run without a Domain Controller. In this case the nodes and users are handled by a
Windows Workgroup. The configuration of users and security must then be done on all nodes separately
within the Workgroup.

The user handling in a Windows Domain is done from a central location – the Domain Server. Every domain
must have at least one domain server, but for resilience a domain should have multiple domain servers.

3.2 Aspect Server


The Aspect Server provides the Aspect Directory and the services related to object management, names,
security, etc. It is the heart of the 800xA system. As such it must be accessible to all nodes all of the time.

In small system systems the Aspect Server can be combined with other functions such as Application or
Connectivity Servers in a single node (computer).

The Aspect Server supports “1 out of 2” or “2 out of 3” redundancy. In “1 out of 2” redundancy, the Aspect
Directory is readable and writable as long as one Aspect Server is on-line. With “2 out of 3” redundancy,
two Aspect Servers must be running to write to the Aspect Directory, but with any one Aspect Server on-
line, the system is useable for operation but not for configuration.

3.3 Connectivity Server


The Connectivity Server provides access to the controllers and other data sources throughout the network.
Several groups of Connectivity Servers may exist in a system, each serving one set of data sources. The AC
800M Connectivity Server is one of many different types of Connectivity Servers in the 800xA System.

8

Examples of services are:

• OPC Data Access


• OPC Alarm and Event
• OPC Historical Data Access
• System messages

NOTE! Maximum 12 AC 800M controllers can be connected to one Connectivity Server (single or
redundant).

3.4 Application Server


Run various types of system applications, such as:

• Batch Management
• Asset Optimization

3.5 Plant Network


The Plant network can be dedicated for process automation purposes or be a part of the plant intranet
already available on a site.

Further connection of the Plant network to the Internet or any other type of external network should be
performed in accordance with adequate network security practices.

3.6 Client/Server Network


The Client/Server network is used for communication between servers, and between client workplaces and
servers.

Via a router, the Client/Server network can be connected to a plant intranet, and via a firewall to the
Internet. For performance and integrity reasons, connection of foreign systems directly to the Control and
Client/Server networks should be avoided. The Client/Server network can optionally be made redundant.
For any installation larger than a Single Node system and small systems that use Windows Workgroup, the
800xA system nodes must reside within a dedicated Windows 2000 Domain. This requires you to set up a
domain controller and DNS server. All other 800xA System server and client nodes must be configured to
be members of the domain.

3.7 Control Network


The Control network is a local area network (LAN) optimized for high performance and reliable
communication, with predictable response times in real time. It is used to connect controllers to the
servers. Controllers are nodes that run control software.

9

Controllers and Connectivity Servers are connected to the Control network. The Control network can
optionally be made redundant.

Field buses are used to interconnect field devices, such as I/O modules, smart sensors and actuators,
variable speed drives, PLCs, or small single loop devices, and to connect these devices to the system, either
via a controller or directly to a server.

NOTE! For smaller systems and for systems where network separation is not desired, the Client/Server
Network and Control Network can be combined in one Automation System Network.

3.8 Controllers (PLC)


The backbone of operation is the
independently operating
Programmable Logic Controllers
(PLC) that connects with the
process.

Controllers consist of the PLC CPU


unit with optional I/O cards and
communication modules

3.8.1 PLC station


A PLC main station consists of a
base plate TP830 and a replaceable
processor module PM8xx with various speed and memory combinations.

The base plate TP830 carries the majority of the connections to processor, the power supplies and
communication interfaces, as well as to the external buses.

PLC CPU units are presented in the table below with some major features described.

10

3.8.1.1 AC 800M Communication Ports


Detailed description of the communication ports of the CPU:

• Two built-in RS-232 serial ports:


COM3 with modem support for several protocols
COM4 intended as tool port for Control Builder
• Two built-in Ethernet ports (IEEE 802.3, 10BaseT with TCP/IP):
. CN2 used for redundancy or routing
• Built-in ModuleBus for optical or electrical connection to I/O communication
• Built-in CEX-bus (Communication Extended Bus) for external communication modules

3.8.2 I/O stations


Basic analog system signals (analog or discrete) are collected to the I/O cards of PLC station. I/O cards are
inserted to the right of the PLC CPU unit. Typically the I/O system consists also of the I/O-card with a
baseplate. Some supported I/O card types are shown in following picture.

• S800 modular I/O


• S800 modular I/O with intrinsic safety (IS)
• S800L I/O This is a compact I/O with an
integrated I/O and terminal unit. This I/O
cannot be replaced on-line.
• S200 I/O This I/O must be connected
through communication module CI865
• S900 I/O This I/O must be connected
through a CI920 PROFIBUS module. The I/O
is suitable for use in hazardous areas.
• S100 I/O This I/O must be connected
through communication module CI856

11

3.8.2.1 Centralized and distributed I/O stations
ABB PLC stations support centralized and distributed
I/O stations internally as shown in pic. A single CPU
can have 12 I/O cards / cluster and have besides the
Base cluster a max of 7 I/O clusters.

From programming point of view there is no


difference between centralized and distributed I/O
stations. The centralized stations shall have numbers
1-12 and decentralized the station numbers are
defined as : I/O cluster *100 + I/O card position. (eg.
3rd I/O card of 2nd I/O cluster is number 203)

3.8.3 Communication Interface Units


Communication modules are assembled to the left of
the CPU unit. There can be max 12 communication
modules. Several types of communication protocols
are supported:

• CI851 PROFIBUS DP-V0 communication interface unit.


• CI853 RS-232C serial communication interface unit.
• CI854 PROFIBUS DP-V1
communication interface unit.
• CI854A PROFIBUS DP-V1
communication interface unit.
• CI855 MasterBus 300
communication interface unit for the
AC 800M.
• CI856 S100 I/O system
communication interface unit.
• CI857 INSUM communication
interface unit.
• CI858 Communication interface for
ABB Drives using DriveBus
• CI860 Fieldbus Foundation HSE
communication interface unit.
• CI865 Communication interface unit for older Satt I/O systems
• CI867 Provides communication with Modbus TCP via Ethernet.

12

4 Client / Server Principle

4.1 Aspect Directory


The Aspect Framework includes an Aspect Directory, where all aspect objects and their aspects are
registered, and also all aspect systems and the operations they support. To perform an operation on an
aspect object, an application
(i.e. an Aspect System)
retrieves an interface for that
operation from the
framework.

4.1.1 Example: Graphic Display


Let’s take a process graphic as an
example. The aspect “Graphic
display” is installed on the Aspect
Server and will be called by the
Operator Workplace.

If we look then on a valve within the


process display, the icon is provided
by the Aspect Server and the
dynamic status indication
(open/closed) is provided by the
Connectivity Server.

5 Engineering Workplace / Plant Explorer


Engineering Workplace / Plant Explorer is the tool that is primarily used for System 800xA configuration.
The Engineering Workplace is the workplace used for all project work done by application engineers. It is
used to create and manage Aspect Objects and their related Aspects.

5.1 What is a System?


A system is a collection of programs and services that are run together to support the Human System
Interface (HIS). At the very least there will be an Aspect server and a Connectivity server making up the
system.

5.2 What is a Workplace?


This is the working environment for a particular group of people who might wish to access the system. In a
newly installed system there are 4 default workplaces provided, intended for various users.

13

• Engineering Workplace
• Operator Workplace
• Plant Explorer Workplace
• Two Screen Plant Explorer Workplace

In a delivered system there may be more. A delivered application is likely to have a workplace tailored to
the requirements of the customer.

The main difference between the Engineering Workplace and the Plant Explorer Workplace is that only the
Engineering Workplace allows you to use advanced tools such as Function Designer and Bulk Data Manager.

5.3 How to Start the Engineering Workplace


You can access the Engineering Workplace by right-clicking on “My ePlant” on your computer desktop and
then select “Engineering Workplace”. You can also use the “Start” button to select “Workplace”: Start >
Programs > ABB Industrial IT 800xA > System > Workplace

The Workplace logon screen has three selection panes:

• The ‘System’ selection pane


• The ‘Environment’ selection pane
• The ‘Available workplaces’ pane

In a typical plant there will be only one system available. This will be the system that was built for the
application.

In a system that has environment support enabled in Configuration Wizard you can work with two
environments: Engineering and Production. Environment support is a separately licensed functionality.

14

5.4 Browse the Aspect Directory
Plant Explorer is used to browse and navigate in the Aspect Directory.

Plant Explorer is based on the


concept of Windows Explorer. When
viewing a structure, objects are in the
left-hand window (pane) and aspects
of the selected object are in the right-
hand window (pane).

5.5 Plant Modeling / Structures


The creation and integration of aspect objects representing your plant control system is known as Plant
Modeling. A natural way to represent the relations between different aspect objects is to organize them in
a structure.

Depending on the user looking for the information or their role in the plant, an aspect object may exist
logically in several different structures. This concept of structures is central to the Aspect Object
architecture.

Plant Explorer organizes the 800xA system into Structures


that can be accessed from the pull-down menu in the upper
left-hand window.

Within a system, aspects travel with the aspect object. If an


object is moved to another structure, the aspects move as
well. If an object is inserted (copied) from one structure into
another, the aspects associated with the object will be
inserted too.

NOTE! The same object can be seen in different structures.

15

There are 19 structures by default. The use of these structures will vary from system to system depending
upon the needs of the person(s) that are configuring and using the system.

The majority of time we use only a few of these structures, which are marked in blue:

• Control Structure
• Functional Structure
• Location Structure

5.6 Context Menus


By right-clicking on an object, the
corresponding aspects will appear. Each
object has certain aspects available, which
can be different from one object to the
other. Also the aspects have a context
menu to handle the aspects themselves.

NOTE! User roles affect the contents of


the context menu.

5.7 Navigate between Structures


You can easily navigate from one
structure to another, if the same object
is used in several structures.

Just click on the structure aspect and it


will lead you to the place where the
object is located in the other structure.

NOTE! A good example is an object


type, which is placed in the Object Type
Structure and in the Library Structure.

5.8 Structures used for Application Engineering


These are the main application structures of the 800xA system. These structures are primary structures,
because it is assumed that most Application Engineers will perform most of their work within these
structures.

16

5.8.1 Functional Structure
The Functional Structure describes the functionality of the plant. It is used to structure the plant into
systems and subsystems according to the plant equipment. By this it can also be used to organize displays,
alarm sectioning and other functions that are related to the structure of the plant.

It can also display aspect objects that are not directly related to any specific control logic, like a heat
exchanger (the physical object) included in a control loop.

5.8.2 Control Structure


The Control Structure is used to organize the process control environment in the system i.e. to define
where the different parts of the control application execute. Also, the user can check consistency and
monitor the system status.

It is initialized without any objects. After the configuration is done, it contains the networks and nodes that
are used to control the plant process

This structure contains control networks, control projects, applications, controllers, stations, different types
of sub-objects (like I/O boards and process objects as well as signals assigned to different objects within this
structure).

5.8.3 Location Structure


The Location Structure (optional) is supplied to help the user identify plant equipment based on the
geography or location of the objects in the plant. Objects in this structure would consist of buildings,
rooms, and locations of the physical site. As such, there are no default objects in this structure upon system
creation.

5.8.4 Library Structure


The Library Structure is used to categorize and store reusable entities. It contains all object type libraries
and its versions. The object types of these libraries are stored in Object Type Structure. It contains the
templates for such object types as the Alarm and Event List configuration, History Logs, and Trends.

5.8.5 Object Type Structure


Almost all aspect objects are instances of an Object Type. The intent is to make it possible to create and
efficiently re-use standardized solutions to recurring problems.

An example would be a control valve. Rather than create a new and unique Aspect Object for every valve in
your plant, it would be more efficient to create a few valve types. When you needed a particular solution,
you would use an instance of one of your valve Object Types. When an instance of that object type is used,
the aspects that are pre-defined for that object type are automatically instantiated and associated with the
new instance.

17

5.9 Structures used for Administration
5.9.1 User Structure
The User Structure holds the defined users and user groups allowed to work in the system.

All users must have a related MS Windows user account. The security settings primarily contain information
about a user and what the user is allowed to do within the system (his user role).

5.9.2 Workplace Structure


The Workplace structure is used to define and create the layout of the screens for user interface to the
system. This includes workplaces for operations, maintenance, management etc.

The workplace objects types of aspect that can be placed here are numerous, and they control the layout
and function of a workplace, for example tool bars and menu items.

5.9.3 Service Structure


The Service Structure holds the services, their groups and providers, and the relations between these
defined in a system.

A service is a global function in the network, and the objects and aspects in the Service Structure control
the definition and deployment of the services.

5.9.4 Maintenance Structure


The Maintenance Structure is used to define and work on Backups, System Configuration Versions, and
Synchronizations

5.9.5 Additional Structures


Other structures that contain important information or may require a one-time configuration for the
system include:

• Admin Structure
• Aspect System Structure
• Node Administration Structure
• Graphics Structure

6 ABB 800xA & Control builder M

6.1 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.

18

The Project Explorer in Control Builder M and the Plant Explorer / Engineering Workspace should be
considered as two separate interfaces for building and maintaining control projects.

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

6.1.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.

Working in the Plant Explorer:

• View aspects in structures


• Editing graphics
• Editing Faceplates
• Working with Import/Export tool to handle subsets of automation system
• Backup on 800xA
• Security
• Managing and creating libraries

Working in the Control Builder M

• Build control logic


• Creating hardware and downloading firmware
• Setting an application in Test and Simulate mode
• Uppgrading applications
• Downloading applications to controllers
• Setting task connections

19

6.1.2 How to Start the Control Builder M
Right click on the Sxx_Project object in the Control Structure and select “Open Project”. This will open the
Control Builder M application.

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

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.

20

6.2 Project Explorer – 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).

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.

6.2.1 Toolbar Buttons


The Toolbar provides quick access to frequently used commands or options

6.2.2 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:

• Libraries
• Applications
• Controllers

21

6.2.2.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.

6.2.2.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 program(s) or control modules containing the
program code to be compiled and downloaded for
execution in the controller(s). Each application to be used
must be connected to a controller.

An application may contain up to 64 programs. This means that you can split the control strategy into
different parts, depending on required interval times and priorities.

22

All languages are available for both Programs and Control Modules. Choose the language that most suites
your needs or preference.

6.2.2.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. The access variables
are used for communication between applications, which may
exist in the same controller or in different controllers. 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 and 1000ms respectively.

6.2.3 Limits
• Max 64 programs per application
• Max 256 applications per Control Project
• Max 8 applications per controller
• Max 32 tasks per controller
• Max 32 controller per Control Project

Application programming can be done from any Engineering Station in the system at the same time. But be
careful that only one engineer works on a library / application at the same time.

6.3 Program Organization Units (POU)


The IEC 61131 standard describes programs, function blocks and functions as Program Organization Units
or POUs. These units help you organize your automation project into code blocks to minimize code writing
and optimize the code structure and code maintenance.

The function blocks and functions POUs are not limited to “one-time-use”. You can use them repeatedly
and in a recursive structure. In addition to these two POUs, there is the program. Although the program is
the only POU that cannot be reused in any of the other POUs it is defined as a POU. As can be seen, one can
use both the function block and the function recursively to an unlimited “depth” whereas the program is a
“top-level” POU.

23

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.

6.3.1 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).

24

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

25

6.3.2 Declaration Pane
Use the declaration pane to declare 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.

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. Variables can be written in Microsoft Excel and then copied and pasted to the declaration pane
of the POU editor.

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).

6.3.3 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.

26

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.

6.3.4 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
execution is determined by the order of
the tabs for function blocks used in
programs. The execution order for control
modules is set up by the system for the
most effective order possible.

6.4 Test (Simulation) Mode


It is possible to simulate a project without using any


physical hardware. Save the project and then either click
the “Test” button or select Tools > Test Mode from the
menu in the Project Explorer to simulate the project.

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.

27

6.5 Control Structure – Project Explorer
This section gives you an overview about the link between the Project Explorer in Control Builder M and the
Control Structure in the Engineering Workplace.

6.5.1 Tag Shown on Both Places


The same tag is shown in Project Explorer and Control Builder. Any changes to this object will reflect on
both places immediately.

6.5.2 Different Places


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

• Libraries are handled in Library Structure


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

28

6.5.3 Automatic Update
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.

29

7 Working with Control Builder M system software
NOTE: If you having problems understanding some component – just select it and press “F1” for it’s help-
file. The help-files are written for professionals, but they are very good.

As general rule configuration goes like:

• Insert libraries used


• Create new libraries if needed
• Create templates (General common
functionality)
• Implement libraries and templates in your
project

Open Control builder M as earlier shown.

8 Control Builder M - Libraries


8.1 Inserting libraries
The course project work requires installing the Profibus PA
devices PA drivers onto the system itself. This has been
done by teacher.

Attaching libraries to the project environment you are


building is done by going to the libraries structure and with
right-click selecting “Insert library”. A new window opens
as in pic. Scroll to the left and select the suitable *.lbr file
and press “Open”.

8.2 Library content


Looking at software libraries in more detail one can see that it
consists of several parts

Look at the AlarmEventLib as presented in pic

The subparts are:

• Connected libraries: The other libraries this library uses


• Data types: the types defined by this library
• Function Block types: The IEC61131-3 language blocks
• Control Module Types: ABB own programming
language block types

30

8.3 Hardware libraries
Hardware libraries are attached in similar manner to the
project – but one must begin from Libraries à Hardware
link with insert – as presented in pic

Hardware libraries are *.hwl files.

Looking at a hardware library it consists of the device


drivers and it’s software configurations options – as
presented in pic for the ABB Gauge pressure transmitter
probe.

8.4 Attaching libraries to project


After libraries are inserted to the project software they must be
attached either to the control applications (Software libraries) or
Controllers (Hardware libraries) – in similar manner with right click
and “Connect library” as presented in pic.

9 Control Builder M - Application configuration


When opening a configuration pane it consists of three major parts, Declaration Pane, Code Pane, and
Message Pane, as presented in pic

31

9.1 Variables
(See PLC programming help guide)

9.2 Function blocks


Are also defined in the application programs like local variables

9.3 Code pane


Is where the functionality of program is defined.

More sheets can be added with right click on the code pane lower
lane and insert. A name and programming language must be specified
for the new code pane. One program can thus consist of several code
panes with different languages.

You can read more about the programming languages in the program
help files. (They are good)

9.3.1 Readymade program blocks for basic measurement and control


ABB has built some readymade libraries that are optimized for basic input/ouput handling. These are
collected into several libraries that are supplied with the basic system to the customer. (Typically customer
makes additional libraries and templates according to own special needs as well.)

The readymade libraries streamline the work by including already corresponding Faceplates, icons and
alarm handling aspects that are then easily implemented in the operator workplace environment
configuration.

The students are recommended to take a look at the ready made libraries and there components, but good
choices are the function blocks SingnalInReal, SignalOutBool from SingnalLib and PidLoop and
PidCascadeLoop from ControlBasicLib.

9.3.2 Program block naming


32

NOTE: Though for Control Builder M the name and description aren’t compulsory information – they are
critical information for the Alarm & Event system and thus must be configured. The Name must correspond
to the name of block given at insertion – as presented in pic.

So first in “Insert function block the right type is selected and the name of that Block is given to the block.
The name is then seen on top of the FBD. Local help-variable are created (eg. B_name) that is then given as
initial value the same name as the block has. Finally this help-variable is tied to the blocks input “Name”
variable.

9.3.3 Predefined Program


All software structures come with a basic predefined structure, Program 3. This program block consists of
some basic functions needed for PLC supervision, like time-synchronization. This block is not to be edited.

9.4 Task connection


All programs must be connected to a task in the controller. The Task defines the execution speed and
priorities. A program is attached to a task with right click and selecting “properties à Task Connection”.

10 Control Builder M - I/O configuration


The I/O configuration is done in the Controllers part

The PLC part consists of:

• Connected applications: the software


applications to this PLC must be connected.
• Connected libraries: The hardware libraries
needed for this PLC
• Hardware AC 800M: The physical
configuration
• Tasks: configuration on process tasks used in
this PLC controller
• Access Variables: to declare variables that are
to be accessed from a remote system using
the MMS, COMLI, ModBus TCP or SattBus protocol.

10.1 PLC-brain hardware selection


The used PLC-type must be defined first. It can be changed with right click and “Replace unit” as presented
in pics

33

10.1.1 System Identy (IP-configuration)
The IP-configuration is a 2-stage process

1. PLC controller IP-configuration

The PLC hardware must be told in which IP-address it is located. This info is mostly used by the Connectivity
server to know where (which IP-address) this PLC is located at. Configuration is done by selecting the PLC-
controller and right-click “Properties à System Identity” – as presented in pics (So where the Connectivity
server phones)

2. PLC Ethernet card IP-configuration

The PLC hardware Ethernet port must be told which address it holds and listens too (Which number is
mine) This is done by opening the corresponding Ethernet card configuration view (double-click) and
selecting the “Settings” tab as presented in the pics

10.2 I/O-module insertion


I/O modules are assembled under the PLC-brain 11 Modbus. To insert a new I/O card select the 11 Modbus
and with right click “Insert unit”.


34

NOTE: The hardware type must be attached in the
controller part HW-library first. Then they show up in the
“Connected Libraries” part.

Select right type of I/O card and it’s bus location


(=position).

Loal I/O’s use position numbers 1-12. Remote I/O’s use


then position numbers above 100.

NOTE: If you select wrong position – you can’t change it


later. Have to delete and redo…

10.3 Control module Communication modules


The communication modules of other fieldbuses are inserted as “children of hardware (Parallel to PLC-
brain). Select the Hardware and right-click and insert

Once a communication card has been inserted it’s parameters are to be specified

35

10.3.1 Communication module substation inserting and conf. for Profibus DP&PA
Inserting a fieldbus device is a 2-stage process.

1. inserting the physical device

Select the Control Module and insert a new


module

The module bus position must be specified


(Profibus supports 127 positions/DP busline)

2. Communication specifications for the


desired device (Software)

Select the device and Insert unit. The possible units for this device are now selectable. Some devices
support several SW-units – so a position for each inserted unit must chosen.

10.4 I/O point configuration


Each physical input and output must be specified to the card and point in the card. Opening a card gives
you the Hardware configuration window.

The window consists of several tabs.

• Settings defines the physical connections to the field and what to do in problems?
• Connections – the variable assigned to this point and a description field for it
• Properties – scaling of the signal, unit definition, # on decimals and if the point is inverted
• Status: Useful while online. Can read the value at card and force a value (good for testing at some
points)
• Unit status: information from this I/O card – eg. Communication problems or measurement over-
undervalue info is given here…

11 Control Builder M - Testing the program in Testmode


Before downloading the application to a PLC and going online, it is necessary to first test the application in
an offline mode to ensure that everything is working properly. This mode is called the Test Mode, where
the Control Builder compiles and executes the code locally in the PC as if it is an AC 800M controller. The
test mode is an easy way to test the application many times. However, external communication is disabled
during the test mode, thus reading and writing variables connected to IO units cannot be validated in test
mode.

36

Test-mode

The test mode helps in testing and analyzing the project, without having a PLC ready in the Project Explorer
tree. The variable values can be changed to study the program response. Example shown in pics below.

37

12 OPC server for ABB DCS system


The OPC server for the Connectivity server must be enabled to listen to your PLC Device.

Double-click the OPC Server icon on the desktop (if desktop shortcut is selected during installation), or start
the OPC Server from the Start menu: Start > Programs > ABB Industrial IT AC 800M > ....... > OPC Server for
AC 800M 5.0

Connecting the OPC Server

1. Open the Data Access tab screen.


2. In the Controller Identity field, enter the IP address of the
PLC.
3. Click Connect.
4. Open the Alarm and Event tab screen, and repeat Step 2
and Step 3.
5. Enable time synchronization from Settings à Time
synchronization

NOTE! This is done together with teacher

38