T315C-07 Libraries - RevE
T315C-07 Libraries - RevE
Chapter 7 Libraries
TABLE OF CONTENTS
Chapter 7 Libraries..........................................................................................................................................................................1
7.1 General Information...............................................................................................................................................................2
7.1.1 Objectives.......................................................................................................................................................................2
7.1.2 Legend............................................................................................................................................................................2
7.1.3 Reference Documentation...............................................................................................................................................2
7.2 Library Concept.....................................................................................................................................................................3
7.2.1 Introduction.....................................................................................................................................................................3
7.2.2 Types and Instances........................................................................................................................................................4
7.2.3 Type Names and Instance Names...................................................................................................................................4
7.2.4 Data Types......................................................................................................................................................................5
7.2.5 Function Block Types.....................................................................................................................................................5
7.2.6 Control Module Types....................................................................................................................................................5
7.2.7 Functions.........................................................................................................................................................................6
7.2.8 Library Dependencies.....................................................................................................................................................6
7.3 Standard System Libraries.....................................................................................................................................................7
7.3.1 Library Versions.............................................................................................................................................................7
7.3.2 Libraries Overview.........................................................................................................................................................8
7.3.3 Fundamental Libraries....................................................................................................................................................9
7.3.4 Continuous Control Libraries.......................................................................................................................................10
7.3.5 Process Object Libraries...............................................................................................................................................12
7.3.6 Online Help...................................................................................................................................................................14
7.3.7 Library Overview in User Manuals..............................................................................................................................15
7.4 Hardware Libraries..............................................................................................................................................................16
7.4.1 Overview.......................................................................................................................................................................16
7.4.2 BasicHwLib..................................................................................................................................................................16
7.5 Industry Specific Libraries...................................................................................................................................................17
7.5.1 Rolling Mill Control Library........................................................................................................................................17
7.5.2 Minerals (BMI) Libraries..............................................................................................................................................18
7.5.3 Pulp & Paper Library....................................................................................................................................................19
7.5.4 Reuse Solution for Oil & Gas.......................................................................................................................................20
7.5.5 PC Device Library........................................................................................................................................................21
7.6 Library Handling..................................................................................................................................................................22
7.6.1 Inserting a Library into a Project using Control Builder..............................................................................................22
7.6.2 Inserting a Library into a Project using Engineering Workplace.................................................................................23
7.6.3 Connecting a Library to an Application.......................................................................................................................24
Chapter 7 - 1
775551819.doc
7.1.1 Objectives
On completion of this chapter you will be able to:
Explain the concept of libraries and types
Describes the standard libraries provided by ABB
Identify the libraries that are used in a project
Insert the required libraries into a Control Project
7.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
Chapter 7 - 2
System 800xA Training
7.2.1 Introduction
One of the three main divisions of a Control Builder M Project is Libraries:
Libraries contain type definitions or types which are used to give additional
functionality to the project.
There are three sorts of type definition which may be made in a library. These are:
Data types
Function block types
Control module types
Chapter 7 - 3
775551819.doc
Type
Instance 1
Instance 2
Instance 3
Note that in the Control Builder project tree, types have bright green icons and
instances have cyan icons.
Chapter 7 - 4
System 800xA Training
Chapter 7 - 5
775551819.doc
7.2.7 Functions
In some libraries certain functions are defined. Functions are usually very basic
operations such as AND (logical operator) or ADD (addition).
You should distinguish between functions and functions blocks:
Functions return a single result immediately on execution of the function call.
Functions do not retain values from previous calls, unlike function blocks.
The majority of functions available in the system are defined in the library called
System, which is always loaded when any project is created. (It is not possible to have
a project which does not have the System library because otherwise it would not be
possible to write even the simplest statements in code!).
ProcessObjExtLib
ProcessObjBasicLib
AlarmEventLib
BasicLib
IconLib
In the example above, the library BasicLib uses types from IconLib. For this to be
possible the library IconLib is connected to BasicLib. We say that BasicLib is
dependent on IconLib.
Chapter 7 - 6
System 800xA Training
For new projects the latest versions of all libraries are used. For modifications to
existing projects, use the library versions that were originally used to build the
project.
Chapter 7 - 7
775551819.doc
Fundamental
Batch Application
Continuous Control
Communication
Hardware
Process Objects
Libraries and their contents are organized by function. This makes it easy to choose
the library required. For example, if you want alarm handling in your code then you
should load AlarmEventLib into your project and then connect it to the applications
that need alarm handling code.
NOTE! The communication libraries for the different protocols
are covered in the chapter “Communication”.
Chapter 7 - 8
System 800xA Training
BasicLib
This library contains only data types and function block types, such as:
Counters
Timers
Edge detection
Multiplexers and Signal switches
Level trips with hysteresis
Shift registers
Latches
Stacks and Queues
Time and Date functions
IconLib
This library is made out of control module types and contains standard icons which are
used by many control modules in other libraries. IconLib is a connected library for
those other libraries which require graphical icons in the control modules.
SupportLib
This library contains hidden objects which are used by some other libraries. This
library may be present in a project but there is nothing in it which can be used
independently by the user.
NOTE! When another library requires it, then it will get loaded
automatically.
AlarmEventLib
This is an important library containing function blocks and control modules for
detection and management of alarms in a controller.
Alarms are detected and generated with the AlarmCond function block type or the
AlarmCondM control module type. Hardware and System alarms generated locally in
the controller may be subscribed to using the AttachSystemAlarm.
Chapter 7 - 9
775551819.doc
ControlSupportLib
This library contains hidden support functions. There are no accessible items in this
library for the user; however it is needed as a sub-library for any of the other control
libraries.
NOTE! It is loaded into a project automatically when another
control library is loaded.
ControlSimpleLib
This is the simplest and lowest level control library. It contains data types and function
block types for basic control loops. More complex loops may not be constructed with
objects only from this library.
ControlBasicLib
This library contains function block types for complete control loops which may be
connected directly to the I/O signals. The controllers can be configured either as P, PI,
PD or PID controller with the following functionality:
Feed forward
Tracking
Deviation alarm output
Limitation of output
Anti-integrator wind-up
Bumpless transfer
Dead Zone for the control deviation
Bumpless switchover to redundant I/O
Cascade and Three position controllers
ControlStandardLib
This library contains control module types use to create PID loops in the CMD editor.
All modules in this library may be connected using graphical connections.
The data type Control Connection (represented by CC above) is used to connect
between modules. It has Forward and Backward components necessary for the correct
data transfer needed during the execution of control loops.
Chapter 7 - 10
System 800xA Training
ControlExtendedLib
This library contains control module types which extend the functionality of the
ControlStandardLib and which may be used to manipulate loop signals, such as:
Take the derivative and integral of signals
Flow signal compensating for pressure and temperature
Lead or lag behavior for signals
ControlAdvancedLib
This library contains an additional PID controller with advanced facilities and also
Static Friction Compensating modules.
Configurable as PPI (Predictive PI controller)
Gain scheduling
Adaptive control
Oscillation detection
Sluggish control detection
ControlFuzzyLib
This library contains control module types which allow the user to create multivariate
control functions using fuzzy logic. This type of logic may be used to create rule-
based control systems based on multiple input signals together with multiple output
actuators. In certain applications fuzzy control has an advantage compared to
traditional PID control methodologies.
It is intended that the types are copied as templates and modified in the user’s own
libraries to suit a particular control scenario.
ControlSolutionLib
This library contains ready-to-use control solutions for commonly occurring customer
processes. These templates are intended to be used directly in an application, as they
are, but may also be copied to a self-defined library and modified.
Cascade loop
Feed forward loop
Override loop
Midrange loop
A control module solution provides a complete loop control solution with control,
signal monitoring, alarm handling, trending, operator graphics and also a possibility to
add asset optimization functionality.
Chapter 7 - 11
775551819.doc
ProcessObjExtLib
This library contains function block types and control module types which are used to
control process objects such as valves and motors.
Function block types and control module types are provided so that a user may choose
a program or control module solution. For example the function block type ValveUni
has a corresponding control module type ValveUniM.
ProcessObjDriveLib
This library provides function block types and control module types for controlling
ABB drives.
The Standard drive is used with standard application firmware that is loaded into the
drive. The standard interface provides most of the control and status signals that the
user will require in most situations.
The Engineered drive gives a complete set of all signals for the drive and allows the
user to tailor a specific and specialized drive solution for those applications requiring
particular behavior. The Engineered drive is effectively an open interface to the drive
controller giving complete freedom to manipulate the behavior of the drive.
NOTE! The Standard drive may be considered as a sub-set of the
Engineered drive.
ProcessObjInsumLib
This library contains function block types and control module types to control and
supervise the INSUM (INtegrated System for User-optimized Motor management).
INSUM is a system for control and supervision of mainly motors. Each motor has a
motor control unit (MCU) located in the motor starter module. Up to 128 INSUM
devices (for example MCUs, or circuit breakers) can be supervised per gateway.
GroupStartLib
This library contains control modules types to control and supervise a sequential
startup of process objects, that is, to build procedures for starting and stopping
processes.
Chapter 7 - 12
System 800xA Training
SeqStartLib
This library contains functionality for control of an SFC (Sequential Function Chart)
from the Operator Workplace. It envisages a starting sequence and a stopping
sequence.
The SeqStartLib is more suitable for group starts of plants and processes. The
GroupStartLib (see above) is more suitable for creating start and stop procedures for
machines. The GroupStartLib and SeqStartLib may act together, for example,
SeqStartLib can be used to start underlying Group Start objects.
SignalLib
This library contains function block types and control module types which add alarm
and event handling to signals (I/O signals and application variables).
The types have several supervision and filtering functions, such as alarm and event
levels, and a faceplate. In their faceplates, it is possible to force objects, view trim
curves, configure and enable/disable alarms and events, and view/modify parameters.
SupervisionLib
This library consists of modules for detector input, system control and monitoring,
overview presentation and output handling.
The modules are applicable for general detection systems as well as safety
applications. All modules can be used in SIL classified applications.
FireGasLib
This library contains control modules for monitoring and control of protection systems
that are typically used in a Fire & Gas system. All modules can be used in SIL
classified applications.
Chapter 7 - 13
775551819.doc
OR
Click on the “Help” Icon in the toolbar.
If you need to read about a strange new function block, just mark it and press ‘F1’.
Chapter 7 - 14
System 800xA Training
You can find an overview of all available library objects, such as data types, functions,
function block types, and control module types in the following document:
Chapter 7 - 15
775551819.doc
7.4.1 Overview
A number of standard libraries with hardware types are delivered with the system:
7.4.2 BasicHwLib
The basic hardware library (BasicHWLib) contains basic hardware types such as
controller hardware for example CPU units, Ethernet communication links, Com
ports, ModuleBus etc.
This library is automatically inserted to all Control Projects and automatically
connected to the controller, via the Control Project template.
Chapter 7 - 16
System 800xA Training
Chapter 7 - 17
775551819.doc
Chapter 7 - 18
System 800xA Training
Chapter 7 - 19
775551819.doc
Chapter 7 - 20
System 800xA Training
The plant devices are represented by an object in PCDeviceLib that is enriched with
aspects that support device management over the entire life cycle. These aspects
include the controller code, faceplates, graphic display elements, alarm lists, event
lists and other key aspects for the standard devices found in most process plants.
Chapter 7 - 21
775551819.doc
3. Select the libraries that are required in the “Insert library…” dialogue and click the
“Insert” button.
Chapter 7 - 22
System 800xA Training
2. Click on the “Insert” button and select the library required by browsing in the
Object Type Structure in the Library Group object.
Chapter 7 - 23
775551819.doc
3. Select the library to be connected from the list and then click “OK”.
Exercise 7.1
Chapter 7 - 24