0% found this document useful (0 votes)
50 views24 pages

T315C-07 Libraries - RevE

Uploaded by

Ruben Hernandez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views24 pages

T315C-07 Libraries - RevE

Uploaded by

Ruben Hernandez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 24

System 800xA Training

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 General Information

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

7.1.3 Reference Documentation


3BSE038018 System 800xA
System Guide – Functional Description
3BSE035981 System 800xA Control
AC 800M Binary and Analog Handling

Chapter 7 - 2
System 800xA Training

7.2 Library Concept

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

7.2.2 Types and Instances


It is important to understand what is meant by a type and an instance of a type. We
often have the case where a particular object is used many times in an application. An
object type is defined and then each time the type is used an instance of the type is
created. In most circumstances the link between the type and the instance is
maintained. Therefore, if in future, the type is modified, then all instances of that type
will be changed.
For example, a chemical plant may contain many hundreds of block valves, but it is
likely that they are all of the same type. In the control program we may define one
valve type and then whenever one is required in the program a new instance of that
type is created.

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.

7.2.3 Type Names and Instance Names


Do not confuse the type name with the instance name.
When an instance of a function block type or control module type is declared you are
asked to give the instance a name:

Instance name Type name

The diagram above shows a small segment of an application. In TankControl_Prg


there are two instances of a SignalInBool type function block. In the first the instance
name is LSH2 and it is of type SignalInBool.
The second instance is of the same type but has an instance name LSL1.

Chapter 7 - 4
System 800xA Training

7.2.4 Data Types


In a modern control system there is a need to store many different types of data
(numeric, status, text strings, dates and times etc). Each type of data has different
memory format requirements. Therefore when a variable is declared inside an
application, it is named and also given a data type. Available data types are defined in
libraries.
ABB define a set of standard data types within the ABB standard libraries which
become available following installation of the system.
NOTE! It is also possible for the user to define his own data types
in project specific libraries.
The data types are used by variables declared within the application. A variable may
be considered as an instance of a data type.

7.2.5 Function Block Types


Function blocks provide additional functionality for the programmer. ABB supplies a
large number of pre-defined function blocks in the standard libraries. For example, in
the library BasicLib there are function block types for timing, data conversion,
counting and much more. In the library ProcessObjExtLib there are function blocks
for valves and motors.
Instances of function block types may be created in programs and control modules in
an application (provided the appropriate library is connected to that application).

7.2.6 Control Module Types


Control modules are a unique addition to the traditional programming methods. They
may be considered as enhanced function blocks. They may contain code, graphics and
other function blocks or control modules.
ABB provides many control module types in the standard libraries. The user may then
create instances of these types in his application. Control modules are instantiated at
application level or else inside other control module types.

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

NOTE! It is not possible for the user to define own functions.

7.2.8 Library Dependencies


A given library may have type definitions which may use types from another library.
This is so that simple libraries may provide types which may be used to build more
complex types in a ‘higher’ library.

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

7.3 Standard System Libraries


A summary of what we have learned so far:
1. ABB provides many standard libraries
2. Libraries add functionality to a project
3. Libraries are used to store type definitions called Types.
4. A library may contain Functions, Data Types, Function Block Types and Control
Module Types.
5. A user may define his own ‘user’ libraries which may contain project specific,
user defined, data types, function block types or control module types (but not
Functions)
6. A library may be connected to another (higher) library. The higher library may
then use types from the connected library to make more complex types.

7.3.1 Library Versions


System 800xA fully supports version handling for libraries. (This topic is dealt with
later in the course). For now, you should note that a library name includes its version
designation, for example – BasicLib 1.4-6.
 First Digit Major Version Number
 Second Digit Minor Version Number
First and second digits are, by convention separated by a period.
 Third Digit Revision number
Third digit is separated from the previous with a hyphen.

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

7.3.2 Libraries Overview


In the next sections a brief description of the contents of the libraries provided by
ABB is given.

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

7.3.3 Fundamental Libraries


System
It contains only data types and functions. This is a special library which is loaded with
all projects. It connects automatically to all libraries and applications in the project.
Functions provide arithmetic, comparison, logical operations, data type conversion,
timers, date and time handling amongst others.
NOTE! It is not possible to define own functions.

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

7.3.4 Continuous Control Libraries


There is a range of Control libraries available with increasing level of sophistication
and complexity. The libraries are described below in ascending order of complexity.
The control libraries contain function block types and control module types for
continuous control of processes (sometime referred to as PID control).

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

7.3.5 Process Object Libraries


The Process Object libraries provide function block types and control module types
for many basic process control devices (valves, pumps etc.)
ProcessObjBasicLib
This library is a sub-library to ProcessObjExtLib and provides core functions used by
the devices there.
The main types are prefixed by the word ‘Bi’ or ‘Uni’. ‘Bi’ types are two directional
devices (e.g. a motor with forward and backward motion) whereas ‘Uni’ are one
direction devices (e.g. a block valve).

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

7.3.6 Online Help


Select “Help > Help Topics” in the menu bar.

OR
Click on the “Help” Icon in the toolbar.

Context sensitive help


When a library is open in the Project Explorer help on any item may be obtained by
marking the item and then pressing the ‘F1’ key.

If you need to read about a strange new function block, just mark it and press ‘F1’.

Chapter 7 - 14
System 800xA Training

7.3.7 Library Overview in User Manuals


All official manuals from ABB are available on:
“Start > Programs > ABB Industrial IT 800xA > Reference Documentation”

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 Hardware Libraries


All hardware is defined as hardware types (units) in Control Builder. Hardware types
are organized and installed as libraries. Thus, it is possible to handle hardware types in
a more independent way, which allows us to use older and newer hardware units in the
same system.

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

7.5 Industry Specific Libraries


Libraries have been developed by “Centers of Excellence” for certain industries. This
is not a full overview, but introduces some widely used libraries.
NOTE! These libraries are not part of the standard system
delivery!

7.5.1 Rolling Mill Control Library


This library provides standardized application modules specific for the Rolling Mills
industry, such as:
 Special I/O modules
 Fast execution
 Fast communication
 Control function blocks
 Diagnostic function blocks

Chapter 7 - 17
775551819.doc

7.5.2 Minerals (BMI) Libraries


This library provides specific solutions for the Cement industry and other Mineral
related industries. There are numerous control object categories available:
 Basic objects (AI, DI, AO, DO)
 Group objects (sequential group control, cyclic group control, pre-selections, start
warning)
 Consumer objects (uni- and bi-directional motor control, variable speed drive
control, damper/actuator control, valve control)
 Intelligent drive control (incl. serial interfaces)
 Loop objects (PID control)
 Power monitoring objects (intelligent relays)
 Dosing objects (weigh feeder control)
 Report objects (counters)

Chapter 7 - 18
System 800xA Training

7.5.3 Pulp & Paper Library


This library provides specific solutions for the Pulp and Paper industry. The Pulp &
Paper library is a set of software functions that give the programmer additional
functions, such as:
 PID Controllers with Auto tuning
 Manual Stations
 Ratio Stations
 On/Off valves and motors
 Motor controlled valves
 Variable speed motors
 Groupstart and Sequence objects
 Refiner objects

Chapter 7 - 19
775551819.doc

7.5.4 Reuse Solution for Oil & Gas


REUSE Solutions for Oil, Gas and Petrochemical include comprehensive software
libraries for function blocks in AC800M and Human System Interfaces for AC800M,
AC400 and Melody controllers.

Chapter 7 - 20
System 800xA Training

7.5.5 PC Device Library


This library provides device-level objects for process industry. It builds upon the
standard AC 800M libraries to provide additional functionality and engineering
efficiency.
• Valve (on/off) with Feedbacks
• Manual Valve with Feedbacks
• Pneumatic Control Valve
• Electric Control Valve
• Choke Valve
• On/Off Motor
• On/Off Motor with Motor Control Center
• Integration with ABB Insum MCC
• Integration with other MCC
• Motor 2 Speed / 2 Direction
Project(s) • Variable Speed Motor
• Integration with ABB Drives
• Integration with other Drives
• Duty / Standby Motors
• Transmitter / Transmitter 4L
• Dual Transmitter / Dual Transmitter 4L
Industry/ • Flow Transmitter with Compensation
Equipment • Digital Input
• Digital Output
Libraries • Bool Input
• Bool Output
• PID Controller
• Advanced PID Controller
PCDeviceLib • Controller PID Loop
• Ratio Controller
• Controller PV Calc
• Setpoint Ramper
• Totalized Analog Input
800xA • Totalized Pulse and Counter Inputs
(DP820 / S200-IB16)
Libs • Process Trips & Interlocks
• Group Control
• Group Cycle Control
• Control Module Template • Group Interface
• Faceplate(s) • Start Warning
• Graphic Objects

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

7.6 Library Handling

7.6.1 Inserting a Library into a Project using Control Builder


1. Mark the object Libraries in the project tree.

2. Click right and select “Insert Library”

3. Select the libraries that are required in the “Insert library…” dialogue and click the
“Insert” button.

Chapter 7 - 22
System 800xA Training

7.6.2 Inserting a Library into a Project using Engineering Workplace


1. Go to the Control Structure and select the project for which the library is
required. Select the Project aspect and in the preview window select the tab
“Libraries”.

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

7.6.3 Connecting a Library to an Application


The most convenient way to do this job is using the Control Builder.
There may be many libraries in a project and there may also be many applications in a
project. Each application may have a different set of libraries connected to it,
according to the requirements of the application.

In order to connect a library to an application, that library must already be present


(inserted) in the Control Project as shown in the previous step.
1. Mark the Connected Libraries folder underneath the application concerned, right
click and select “Connect Library”.

2. Reserve the application or library you wish to connect a library to.

3. Select the library to be connected from the list and then click “OK”.

NOTE! The libraries are connected to applications in a similar


way as Hardware libraries are connected to the
controllers.

 Exercise 7.1

Chapter 7 - 24

You might also like