Sie sind auf Seite 1von 183

ControlIT

Control Builder M Beginner’s Handbook


Starting up and Installation
Version 2

User´s Guide
Control Builder M Beginner’s Handbook
Starting up and Installation
Version 2
User’s Guide
Copyright © 1999 ABB Automation Products AB.
The contents of this document can be changed by ABB Automation Products AB without prior
notice and do not constitute any binding undertakings from ABB Automation Products AB.
ABB Automation Products AB is not responsible under any circumstances for direct, indirect,
unexpected damage or consequent damage that is caused by this document.

All rights reserved.

Release: September 2001


Document number: 3BSE 021 350R201 Rev A

Printed in Sweden.

Trademarks
Registered trademarks from other companies are:
Microsoft™, Windows™, Windows 2000® from Microsoft® Corporation.
PostScript™ and Acrobat Reader™ from Adobe Systems Inc.

3BSE 021 350R201 Rev A


Contents

1 Introduction 11
Project Examples in the Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
This is Control Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
This is SoftController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
This is OPC Server for the AC 800M/C . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
This is MMS Server for AC 800M/C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
This is AC 800M/C Controller Integration . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.1 System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Control Builder PC Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Base Software for SoftController PC Requirements . . . . . . . . . . . . . . . . . 19
OPC Server for AC 800M/C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.2 Supported Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.3 Alternative Controller Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Control Builder and Controller Configuration . . . . . . . . . . . . . . . . . . . . . . 22
Control Builder and SoftController Configurations . . . . . . . . . . . . . . . . . . 22
Distributed Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.4 Programming Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Project Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Programming Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.5 How to Read this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Typographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Online Help and Assistance for Control Builder . . . . . . . . . . . . . . . . . . . . 26
1.6 Related Documents and Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2 Safety Instructions 29
Be Careful - Prevent Accidents and Protect Valuable Equipment . . . . . . . 29
Before Replacing I/O Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Operating Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Signal Noise Due to Cables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Hazardous Electrical Supplies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3BSE 021 350R201 Rev A 5


Contents

3 Installation and Start-up 31


3.1 Control Builder Installation and Start-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Step-by-Step Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Setting up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Starting up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2 SoftController Installation and Start-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Settings and Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3 OPC Server Installation and Start-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Settings and Starting up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4 AC 800M/C Controller Integration Installation . . . . . . . . . . . . . . . . . . . . . . . 34
3.5 Using RNRP in a Non-ControlIT Configuration . . . . . . . . . . . . . . . . . . . . . . . 37
3.6 Controller Firmware Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.7 Add or Remove Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4 Control Builder - A Quick Look 41
4.1 Starting the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2 Project Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Menu Bar and Tool Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.3 About Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Where to Declare a Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
How to Declare a Local Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.4 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.5 Closing the Control Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

6 3BSE 021 350R201 Rev A


Contents

5 Creating a Project – Shop Doors 59


5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.2 Selecting the Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.3 Declaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Variable and Data Type Preparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Declaring the Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.4 Writing the Code Using the FBD Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Changing the Programming Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Dividing the Code into Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Code Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
About FBD Editor Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.5 Writing the Code Using the ST Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Declaring the Function Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Dividing the Program into Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Code Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
About ST Editor Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.6 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.7 Configuring the Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.8 Connecting I/O Interfaces to the Application . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.9 Project Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6 Downloading and Testing the Application 85
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.2 Firmware Upgrade via Serial Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.3 Setting a Unique Controller IP Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.4 Downloading the Project via Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.5 Downloading the Project via RS-232 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Creating a PPP Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Establishing Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.6 Downloading to a SoftController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Downloading to SoftController Internally in the PC . . . . . . . . . . . . . . . . . 101
Downloading to SoftController via an Ethernet Network . . . . . . . . . . . . . 101
Downloading to SoftController via a Serial COM Port . . . . . . . . . . . . . . . 101
6.7 Testing the Program Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
7 Structured Data Types 103
7.1 Declaring a Structured Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Connecting Variables to I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
The Variable Editor in Simulation Mode . . . . . . . . . . . . . . . . . . . . . . . . . . 110
7.2 Predefined I/O Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
8 A Project Using SFC Language 115
8.1 The Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
8.2 The Variables and the Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
8.3 The SFC Program in Simulation Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

3BSE 021 350R201 Rev A 7


Contents

9 Re-use of Code 119


9.1 Creating a Library Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
9.2 Creating a Function Block Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
9.3 Testing Function Block Type MyFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
10 Creating Control Modules 127
10.1 About Control Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
10.2 The Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
10.3 Creating a Data Type for the Control Module Parameters . . . . . . . . . . . . . . . 129
10.4 Creating MyModuleType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
10.5 Designing the Graphics for MyModuleType . . . . . . . . . . . . . . . . . . . . . . . . . 133
10.6 Constructing the Crossroads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
10.7 Declaring Variables for the Single Control Module . . . . . . . . . . . . . . . . . . . . 137
10.8 Writing the Interaction Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
10.9 Connecting the Variables to the Instance Parameters . . . . . . . . . . . . . . . . . . . 140
10.10 Connecting a Task to MySingleModule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.11 Simulating the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
A Control Builder Settings 145
A.1 System Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Auto-Logon to Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Redundant Network Routing Protocol, RNRP . . . . . . . . . . . . . . . . . . . . . . 147
A.2 Product Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Auto-Startup of Control Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Memory Reservation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Selecting Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Select File Locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
B SoftController Settings and Operation 153
B.1 Setup and Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
B.2 Setup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
User Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
System Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Product Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

8 3BSE 021 350R201 Rev A


Contents

C OPC Server for AC 800M/C Installation and Settings 159


C.1 Installation and Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
OPC Server Configuration Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
C.2 Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
System Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Product Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
C.3 Running the OPC Server and OPC Client on Different Computers . . . . . . . . 162
DCOM settings on the OPC server PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
DCOM settings on the client PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
C.4 Connection with Third Party OPC Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
C.5 Network Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
D MMS Server for the AC 800M/C 165
The MMS Server Panel Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
E Communication Protocols 166
E.1 TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Installing the TCP/IP Network Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Setting IP Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
F Communication Cable Configuration 169
F.1 Connecting AC 800M or AC 800C to a PC . . . . . . . . . . . . . . . . . . . . . . . . . . 169
F.2 Connecting 200-CPU on Advant Controller 250 to a PC . . . . . . . . . . . . . . . . 169
F.3 Connecting 200-CI232 on Advant Controller 250 to a PC . . . . . . . . . . . . . . 170
G Comparison Between the Control Builder Products 171
H Glossary 173
H.1 Terms and Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Index 179

3BSE 021 350R201 Rev A 9


Contents

10 3BSE 021 350R201 Rev A


Chapter 1: Introduction

Chapter 1
Introduction

Welcome to ControlIT - a truly open industrial control system. The next


generation of control systems for modern industrial technology.
This handbook is for technicians who intend to programControlIT for
AC 800M/C products using the programming tool, Control Builder M.
Information Refer to Control Builder M when Control Builder is mentioned
in this manual.
The book introduces you, first of all, to the programming tool Control Builder
Basic, but also to the Control Builders, Standard and Professional. It also
describes the installations and settings of the SoftController, the OPC Server
for AC 800M/C and the MMS Server for AC 800M/C, which are available on
the CD-ROM containing the Control Builder.
We will then start to examine examples created with the Control Builder. The
first tutorial (Tutorial_01) will familiarize you with the declaration of
variables, writing program code and connecting I/O signals. The program code
is written using four different program editors, Function Block Diagram
(FBD), Structured Text (ST), Instruction List (IL) and Ladder Diagram (LD)
code. Several step-by-step projects are described. You can check your solution
against the examples installed together with the Control Builder. Tutorial_02
is used to illustrate the Simulation mode facilities, and Tutorial_03 illustrates
the use of a Sequential Function Chart (SFC) to show the power of this
programming language.
The examples were created using Control Builder Basic, except a few, which
were created using Control Builder Professional, see the table below.
Downloading of various controllers are described step-by-step in the relevant
chapters or appendices.
A comparison between the three Control Builder products is presented in one
of the appendices.

3BSE 021 350R201 Rev A 11


Chapter 1: Introduction

Information. The three products are upwards compatible, which means that
code can easily be transferred from one to the other. Most of the libraries are
common to all three products. Refer to "Comparison Between the Control
Builder Products", on page 171.
Information. Read the Release Notes on the ControlIT for AC 800M/C
CD-ROM, which specifies any products and functions not supported in the
current release.

Project Examples in the Manual


Five programming languages have been used in the project examples de-
scribed in the manual, as shown in the table below. The examples are included
on the ControlIT for AC 800M/C CD-ROM and have the project names given
below.

Language Product
Project Name Aim/Description
FBD ST IL SFC LD Bas Std Pro

Tutorial_01 × × × - × To familiarize you with the dec- × × ×


laration of variables, writing
program code and connecting
I/O signals. Exactly the same
functions are programmed using
the FBD, ST, IL and LD lan-
guages.
Tutorial_01_Struct × × × - × Based on Tutorial_01, but illus- × × ×
trates the use of structured data
types, which is an alternative
way of using variables in a more
structured way.
Tutorial_02_FBD × × × - × To demonstrate how a program × × ×
Tutorial_02_ST is tested and how it behaves in
Tutorial_02_IL simulation mode.
Tutorial_02_LD
Tutorial_03 - - - × - To demonstrate how a program, × × ×
written in the SFC language, is
tested and how it behaves in sim-
ulation mode. The action code
and transition conditions are
written in ST code.

12 3BSE 021 350R201 Rev A


Chapter 1: Introduction

Language Product
Project Name Aim/Description
FBD ST IL SFC LD Bas Std Pro

ShopDoors_FBD × × - - - A step-by-step description of × × ×


ShopDoors_ST how to construct your own small
project, simulate it and down-
load it to a controller.
MyFBType_FBD × × - - - A step-by-step description of ×∗ × ×
MyFBType_ST how to construct a user-defined
function block type to be stored
in a library.
TrafficLight_FBD × × - - - A step-by-step description of - - ×
TrafficLight_ST how to construct a user-defined
Control Module type to be
stored in a library and how to use
instances of the Control Module
in a project.
*. May be used with a few restrictions.

Safety
Caution. The chapter "Safety Instructions", on page 29, is mandatory reading
for anyone planning to use the systems described.

This is Control Builder


Control Builder is a fully integrated Windows 2000 Professional application
for efficient configuration and programming of the ABB controllers
AC 800M, AC 800C, SoftController and Advant Controller 250.
There are three types of Control Builders; Control Builder Basic, Control
Builder Standard and Control Builder Professional. They are available on the
ControlIT for AC 800M/C CD-ROM (require licenses).
Programming Languages
Control Builder provides five different programming languages according to
IEC 61131-3. They are Function Block Diagram (FBD), Structured Text (ST),
Instruction List (IL), Ladder Diagram (LD) and Sequential Function Chart
(SFC).

3BSE 021 350R201 Rev A 13


Chapter 1: Introduction

Project Explorer
The Project Explorer facilitates navigation through the entire project. It is a
tool used to navigate through, create or modify a project. The controller
software and hardware are configured in the Project Explorer.
Libraries
Control Builder is delivered with a comprehensive set of predefined functions.
These include data types, functions, function blocks and Control Modules that
can be used in the project.
All libraries are delivered together with the Control Builder program. You can
use them freely in your projects and test them in Simulation mode. Examples
of the libraries available are described below.
• The System Library (SystemLib) contains all the basic data types and func-
tions, e.g. type conversions, math and time, and logic functions such as flip-
flop, timer and counter function blocks, as specified in IEC 61131-3.
• The Communication Library (CommunicationLib) includes function blocks
for protocols such as MMS, ModBus, Foundation Fieldbus, SattBus,
COMLI and Siemens 3964R.
• The Control Libraries (e.g. ControlBasicLib, ControlExtendedLib etc.) in-
clude single PID control and cascade PID control function blocks, control
modules, etc.
• The Alarm and Event Library (AlarmEventLib) contains function blocks for
alarm and event detection, and alarm printouts on a local printer.
Application
The three products, Control Builder Basic, Control Builder Standard and Con-
trol Builder Professional have very powerful functions. Below, the most im-
portant differences between the systems are described, but see also the
appendix, "Comparison Between the Control Builder Products", on page 171,
for more precise information.
Control Builder Basic:
A project created in Control Builder Basic can handle one application, which
is divided into a maximum of three programs. Program code, function blocks
and functions can be placed freely in any of these programs.
Each of the three programs is connected to a task. The interval time and the
priority can be set for each task.
Users can create their own data types and function blocks when needed. These
can be re-used within the application, increasing efficiency and application
quality.

14 3BSE 021 350R201 Rev A


Chapter 1: Introduction

Control Builder Standard and Control Builder Professional:


A project created in Control Builder Standard or Professional can handle
several applications, each with several programs. Several programming
stations can be used together in the project, and several controllers can be
handled within a project.
The user can create libraries containing data types, function block types, etc.,
which can then be used in any project.
Control Builder Professional can handle Control Modules, which are
components for efficient object-oriented programming. Extended library
packages for complex control are available for this product.
Tip. To obtain information on the current Control Builder version, select
Help > About Control Builder in the Project Explorer menu.

This is SoftController
The SoftController which is available on the ControlIT for AC 800M/C CD-
ROM (requires a license), is real-time software technology that turns a PC into
a powerful process controller. The controller runs under Microsoft® Windows
2000® Professional operating system and is programmed using the Control
Builder. It supports the compact and modular I/O systems, S800 I/O, S200 I/
O, and S200L I/O centrally via a serial I/O bus (except S800 I/O) and remotely
via a PROFIBUS-DP fieldbus. Foundation Fieldbus I/O devices can also be
connected.
Communication is possible with other control systems via MMS, PPP,
COMLI, SattBus, 3964R, ModBus and user-defined protocols (via COM
ports), etc. Communication with the programming tool is achieved with MMS
via Ethernet or a serial port (PPP).
Further information about installation, setup, etc., is available in the appendix,
"SoftController Settings and Operation", on page 153.

3BSE 021 350R201 Rev A 15


Chapter 1: Introduction

This is OPC Server for the AC 800M/C


The OPC server for the AC 800M/C is available on the ControlIT for
AC 800M/C CD-ROM (requires a license). It provides access to controller
run-time data, such as variables and I/O signals from an OPC client, see Fig. 1.

OPC Client

OPC server for Control


AC 800M/C Builder

MMS server

Ethernet

Controller Controller Controller

Fig. 1 The OPC server distributes data, alarms and events between the controllers and
the OPC client. The figure shows the case when the Control Builder and the OPC serv-
er are installed in the same PC.
Further information about installation, setup, etc., is available in the appendix,
"OPC Server for AC 800M/C Installation and Settings", on page 159.

This is MMS Server for AC 800M/C


The function of the MMS Server resembles a multiplexer between the three
products, see Fig. 1. The MMS Server is automatically installed when install-
ing any of the three products on the ControlIT for AC 800M/C CD-ROM:
Control Builder, SoftController or OPC Server. It starts automatically when
any of these products are started or when the PC is booted (Windows 2000
Professional is started).

16 3BSE 021 350R201 Rev A


Chapter 1: Introduction

This is AC 800M/C Controller Integration


The AC 800M/C Controller Integration provides the connection/integration
between ControlIT for AC 800M/C and OperateIT A. The AC 800M/C Con-
trollers and their programming tool Control Builder Professional will then be
a part of the ABB IndustrialIT concept. The product is available on the
ControlIT for AC 800M/C CD-ROM (requires a license).
The Control Builder Project Explorer, which reproduces in its tree structure
the libraries, the hardware of the controllers, the application programs, etc., is
mirrored to the OperateIT A Plant Explorer. They are mirrored as aspects,
which means, that a great number of faceplates and dialogs in the Control
Builder Professional libraries can be used in the HSI built using the
OperateIT A Graphic Builder.
The AC 800M/C Controller integration concept follows the architechtural
principles of the ABBs Industrial IT concept. It can be split into two main
functions.
• Aspect System for AC 800M/C, which is the integration itself. The control-
lers AC 800M, AC 800C, SoftController and Advant Controller 250 can
then be connected to OperateIT A using different configurations without us-
ing the OperateIT A Generic OPC Server.
• Graphics Object Type Library for AC 800M/C. A number of graphic as-
pects as display elements, faceplates and dialogs will be available for use in
the OperateIT A Workplace. For example, when the process operator is
clicking on a valve (display element) on his Operator screen, then a dialog
(faceplate) will be shown where access to essential control, for example,
Hand/Automatic maneuver, is available.
The installation of the AC 800M/C Controller Integration is described in sec-
tion "AC 800M/C Controller Integration Installation", on page 34.

3BSE 021 350R201 Rev A 17


1.1 System Requirements Chapter 1: Introduction

1.1 System Requirements


Control Builder PC Requirements

Recommended
Hardware Minimum requirements requirements for medium
and large applications
Computer Pentium 166 MHz Pentium II 350 MHz or better
Operating system Windows 2000 Professional Windows 2000 Professional
Additional Software Word 2000. Required if project Word 2000. Required if project
documentation should be print- documentation should be print-
ed out. ed out.
Internet Explorer, at least ver- Internet Explorer, at least ver-
sion 5.5. Required to read the sion 5.5. Required to read the
online Help documentation. online Help documentation.
Acrobat Reader, at least version Acrobat Reader, at least version
4.0. Required to read the online 4.0. Required to read the online
documentation. documentation.
Internal memory 64 Mbyte RAM memory 128 Mbyte RAM memory
Hard disk Min. 50 Mbyte disk available Min. 50 Mbyte disk available
(200 Mbyte for a complete in- (200 Mbyte for a complete in-
stallation) stallation)
Screen 800 x 600, 32768 colors 1280 x 1024, 32768 colors
Drive CD-ROM, local or via network CD-ROM, local or via network
Communication Ethernet or RS232C serial Ethernet or RS232C serial
channel for controller commu- channel for controller commu-
nication nication
Pointing device Mouse or other device* Mouse with scroll wheel
Keyboard Standard PC keyboard Standard PC keyboard
*.A mouse with 3 buttons is recommended if Control Module Diagram (CMD) editing is to be used.

18 3BSE 021 350R201 Rev A


Chapter 1: Introduction 1.1 System Requirements

Base Software for SoftController PC Requirements

Hardware Requirements
Computer Pentium 166 MHz or better with the necessary environmental pro-
tection, depending on the installation environment
Operating system Windows 2000 Professional
Internal memory 96 Mbyte RAM memory
Hard disk Min. 15 Mbyte disk available (60 Mbyte for a complete installa-
tion)
Drive CD-ROM, local or via network
Communication Ethernet or RS232C serial channel for controller and program-
ming tool communication
Screen Color or monochrome
Power Supply Uninterruptable Power Supply (UPS)

OPC Server for AC 800M/C

Hardware Requirements
Computer Pentium 166 MHz or better
Operating system Windows 2000 Professional
Internal memory 64 Mbyte RAM memory
Hard disk Min. 25 Mbyte disk available
Drive CD-ROM, local or via network
Communication Ethernet for controller communication
Screen Color or monochrome
Keyboard Standard PC keyboard

3BSE 021 350R201 Rev A 19


1.2 Supported Controllers Chapter 1: Introduction

1.2 Supported Controllers


Controllers are the “targets” for the programs developed with the program-
ming tool. It is to such units that the program code will be downloaded and
executed.
Various controller hardware is available:
• Controller AC 800M is a modular controller platform with various CPU and
memory alternatives. This system is suitable for medium and large applica-
tions where flexibility is required.

Fig. 2 AC 800M (with S800 I/O).


• Controller AC 800C is a compact controller with a low starting cost but high
functionality. This system is suitable for small stand-alone applications or
small sub-systems in larger applications.

Fig. 3 AC 800C.

20 3BSE 021 350R201 Rev A


Chapter 1: Introduction 1.2 Supported Controllers

• SoftController is a PC-based controller. Here, a PC serves as a controller


connected to I/Os and can be remotely connected to the programming work-
place. An alternative setup is to have both the Control Builder and the Soft-
Controller running on the same PC. The SoftController is suitable for
applications requiring high performance and high memory capacity, but is
less mission critical.
• Advant Controller 250 is a modular controller with various CPU and mem-
ory alternatives. This system is suitable for medium and large applications
where flexibility is required.

Fig. 4 Advant Controller 250.

3BSE 021 350R201 Rev A 21


1.3 Alternative Controller Configurations Chapter 1: Introduction

1.3 Alternative Controller Configurations


Control Builder and Controller Configuration
The Control Builder is installed on a PC and a controller is connected to the
PC via a serial communication cable (using the COM port) or Ethernet.

Fig. 5 A PC running the Control Builder communicating with an AC 800M controller


(with S800 I/O).

Control Builder and SoftController Configurations


1. The Control Builder and the SoftController are installed on the same PC,
with the I/O hardware connected directly to the PC using a communica-
tion card as the hardware interface between the software and the I/Os.

Fig. 6 A PC running both the Control Builder and the SoftController connected to
I/Os. The PC can be equipped with various interface cards for I/O communication.
2. The Control Builder is installed on one PC and the SoftController is in-
stalled on another PC. Here, the remotely connected PC acts as a control-
ler CPU with externally connected I/Os.

22 3BSE 021 350R201 Rev A


Chapter 1: Introduction 1.3 Alternative Controller Configurations

Ethernet

Fig. 7 A PC running the Control Builder communicating with a PC running


the SoftController with connected I/Os.

Distributed Control
The Control Builders, Standard and Professional, can communicate with sev-
eral controllers via Ethernet. The controller types may be mixed, and a project
can be divided in several applications, which can be shared between several
programmers working on programming stations interconnected via Ethernet.
The OPC Server for the AC 800M/C enables the distribution of run-time data
between an OPC client and controllers via Ethernet.
PC running Control Builder PC running Control Builder
and OPC Server

To OPC Client

Ethernet

Fig. 8 Programmers can share the same project, and the program code can be
distributed to different controllers.

3BSE 021 350R201 Rev A 23


1.4 Programming Software Chapter 1: Introduction

1.4 Programming Software


Project Explorer
Various automation projects can easily be created and maintained using Con-
trol Builder Project Explorer. These can be loaded, edited and saved in a way
similar to ordinary MS Windows functions. Windows users will be familiar
with the Project Explorer within a few minutes at the keyboard.
In a project, both the software (programs, functions, etc.) and the hardware
(the actual hardware connected to the controller) needed for an automation
task are modeled. The relationships are visualized using a graphical display
(see Fig. 9).

DO810 DI810
PM860/TP830

Fig. 9 Graphical visualization of the Project Explorer and the actual hardware setup.
Programming and code editing are carried out using grids, tabs and a text edi-
tor with basic MS Windows functions, such as drag-and-drop.

24 3BSE 021 350R201 Rev A


Chapter 1: Introduction 1.5 How to Read this Manual

Programming Languages
Five different programming languages can be used; Function Block Diagram
(FBD), Structured Text (ST), Instruction List (IL), Ladder Diagram (LD) and
Sequential Function Chart (SFC), in accordance with IEC 61131-3. The spe-
cific rules and syntax of the programming languages will not be discussed in
detail in this manual. Please refer to the Control Builder Online Help.

1.5 How to Read this Manual


Typographical Conventions
The text in this manual makes frequent use of different typefaces and fonts to
more clearly indicate emphasis, user input, menus, etc., found in the software.
• Italics. Italicized serif text is used to emphasize words (e.g. a definition).
• Bold sans serif. Bold sans serif text is used to indicate “words” found in
menus etc., in the software.
• Non-proportional text. Non-proportional text is used to indicate
user input. Text shown in this typeface should be typed exactly as stated.

Icons
Warning indicates the presence of a hazard which could result in personal in-
jury.
Caution indicates the presence of a hazard which could result in equipment or
property damage.
Information alerts the reader to pertinent facts and conditions.
Tip indicates advice on, for example, how to design your project or how to use
a certain function.

These icons are used to indicate which Control Builder product the section re-
fers to. “Bas” stands for Basic, “Std” for Standard and “Pro” for Professional.

Examples
References are made in this manual to programming examples, through which
you can learn the basics of the Control Builder.
To open an example, select the folder Example Files in the Open Project di-
alog, see figure below.

3BSE 021 350R201 Rev A 25


1.5 How to Read this Manual Chapter 1: Introduction

Fig. 10 Select Example Files instead of Project Files to open an example.


Information. All files in the directory Examples are Read Only which means
that they can not be altered. To be able to save changes performed in the tuto-
rials, you must first copy them to your own project folder, and then open them
from that folder.
Information. There are more examples in the Example files folder which are
not used in this book.

Online Help and Assistance for Control Builder


In almost all situations, extended help and assistance are available through
built-in online help. Here you will find help topics covering subjects ranging
from very simple to highly advanced usage of the system; subjects which are
far beyond the scope of this manual.
To activate the Help function choose Help from the menu bar located at the top
of each window (see Fig. 11). Here you can either obtain Online Help (Help
topics) or read the manuals using Adobe Acrobat Reader (Manuals).

26 3BSE 021 350R201 Rev A


Chapter 1: Introduction 1.6 Related Documents and Glossary

Fig. 11 The “Help” menu will guide you to the online help and manuals in PDF format.
There is a third Help facility. To obtain information concerning a specific ob-
ject, mark the object and then press the F1 key. For example, mark the external
I/O module DX210 in the Project Explorer and then press F1. Information con-
cerning DX210 appears.

1.6 Related Documents and Glossary


All the related documents (user’s guides) which are available on the ControlIT
for AC 800M/C CD-ROM, will be installed on the hard disk (if required). You
can read them (using Adobe Acrobat Reader) by selecting in the Control
Builder menu, Help>Manuals.
A glossary with related terms is available in the appendix "Glossary", on page
173.
Information. The Last Minute Notes (available during the installation of the
Control Software) contain information which was too late for the Release
Notes. The contents are dynamic and may change between revisions.

3BSE 021 350R201 Rev A 27


1.6 Related Documents and Glossary Chapter 1: Introduction

28 3BSE 021 350R201 Rev A


Chapter 2: Safety Instructions

Chapter 2
Safety Instructions

This chapter is mandatory reading for anyone planning to use the systems
described in this manual.

Be Careful - Prevent Accidents and Protect Valuable


Equipment
A control system is a general tool, which can be used in various processes.
Responsibility for attaining and maintaining a reasonable level of safety must
therefore rest with the people who engineer, operate and maintain the
equipment. They must have intimate knowledge of the functions and inherent
safety risks of the processes involved, and the imaginative power to anticipate
situations in which accidents may occur.
Special attention should be paid to situations in which the mains supply is
switched on or off, units are fitted or removed, cables are connected or
disconnected, and units are reset or switched to manual operation. If possible,
the process should be shut down before such actions are taken.
The level of safety can be improved considerably by taking steps to bring the
process to a safe state when power supplies, communication links or parts of
the control system fail. Such steps may, for instance, imply the installation of
valves or relays which are spring-returned to a safe position.

Before Replacing I/O Units


If I/O units are removed or inserted under system power, hazardous conditions
may arise or units may be damaged. It is therefore highly recommended that
the process side power be disconnected before removing or inserting an I/O
unit. Refer to corresponding I/O manuals regarding the necessary steps.

Maintenance
In order to avoid long shutdowns, it is advisable to keep spares of components
in stock.
Always make regular backup copies of the application program.

3BSE 021 350R201 Rev A 29


Chapter 2: Safety Instructions

Operating Environment
Before the system is brought on-line, find out which environmental conditions
are applicable. The following points are important.
• The product must not be exposed to conditions exceeding the values stated
in the technical specifications.
• The product must not be used in an environment where it is exposed to
strong electrical interference. Electrical machines can produce interference
which exceeds the permitted levels for the equipment, e.g. during repair
work.
• All products must be handled with appropriate caution with regard to
electrostatic damage.
Important: Software
• Use the fault-monitoring facility of the system to prevent mishaps and
accidents.
• Check before executing any changes.
Important: Hardware
Do not disconnect the power supply to a system which is in operation.

Signal Noise Due to Cables


Cables which might cause electrical interference (e.g. power-line cables) must
not be installed close to bus cables carrying fast digital signals. Ensure a
minimum distance of 100 mm between them inside cabinets.

Hazardous Electrical Supplies


Operations in which personnel may come into contact with high-voltage
supplies should only be performed by those trained in the maintenance of
electrical equipment and who are fully aware of the risks involved.

30 3BSE 021 350R201 Rev A


Chapter 3: Installation and Start-up 3.1 Control Builder Installation and Start-up

Chapter 3
Installation and Start-up

3.1 Control Builder Installation and Start-up


This procedure is general for all products on the ControlIT for AC 800M/C
CD-ROM: Control Builder Basic, Control Builder Standard and Control
Builder Professional, SoftController and the OPC server for AC 800M/C. The
MMS Server is automatically installed when any of the other products is in-
stalled.

Fig. 12 The Installation dialog box.


The Installation dialog box contains the following buttons:
• The Release Notes button shows the latest information.
• The Online Manuals button gives access to the manuals in PDF format
(Acrobat Reader, a program which reads Acrobat files, will be automatical-
ly installed if this reader is not already installed).
• The Terminals Diagrams button shows terminal diagram forms to be used
for creating external cable connection drawings to the AC 800M and S800
I/O systems.

3BSE 021 350R201 Rev A 31


3.1 Control Builder Installation and Start-up Chapter 3: Installation and Start-up

• The Install Software button activates the installation procedure.


• The Help button leads to information on how to install a product.
• The Exit button allows the user to quit the installation procedure.
The installation may be interrupted by using the Cancel button in any of the
subsequent setup dialog boxes. If the installation procedure is interrupted, all
previously installed components will be disregarded.

Step-by-Step Instructions
Below, the installation of the products available on the CD-ROM on the PC is
described. The procedure is the same for all products, and “Control Builder”
is used to denote the product to be installed in the steps below.
1. Log in as Administrator in Windows 2000.
2. Insert the CD into the CD drive*. After a few seconds the Welcome dialog
box appears, see Fig. 12 on page 31. If the dialog box does not appear,
start the file Startme.bat, which is located in the root directory of the CD-
ROM.
3. Click on Install Software. A dialog box will be displayed which shows
the products that can be installed from the CD-ROM.
4. Select “Control Builder” and you will be guided through the installation
procedure. Please read the text in each dialog box as it contains important
information about the steps to be taken during installation. For normal
use the suggested default settings are recommended.
5. A status report will show that the installation has been successfully com-
pleted with the specified settings. It is recommended that you check the
checkbox for reading the Last Minute Notes and read these before open-
ing the installed program.
6. The installation is now complete. The Install Software dialog box may
now be closed, returning you to the Welcome dialog box where the instal-
lation is terminated by clicking on Exit. Read the Release Notes (deliv-
ered together with the manuals on the CD-ROM).

* If the CD-ROM is available via a network, this shared directory must be connected to your PC
(the Installation wizard requires this). Select Tools>Map network drive in the Windows 2000
Explorer and connect the PC to the shared drive.

32 3BSE 021 350R201 Rev A


Chapter 3: Installation and Start-up 3.2 SoftController Installation and Start-up

Setting up
The Control Builder can be configured in a number of ways with respect to
language, memory usage, etc., see the appendix, "Control Builder Settings",
on page 145.

Starting up
Start the Control Builder using the Windows Start Menu (Start>Pro-
grams>ABB Industrial IT>Control IT>Control Builder Basic) or double-
click the Control Builder icon on the desktop (if selected during installation).
During start-up of the Control Builder, the MMS Server, which is needed for
communication between the Control Builder and the controller, will automat-
ically be started, see "This is MMS Server for AC 800M/C", on page 16.
Control Builder Professional has logging in and privilege functions, refer to
the Control Builder’s Online Help.

3.2 SoftController Installation and Start-up


Installation
The installation procedure is similar for all products on the ControlIT for
AC 800M/C CD-ROM, see "Control Builder Installation and Start-up", on
page 31.

Settings and Operation


The SoftController can be configured in various ways with respect to lan-
guage, memory usage, etc. This, together with the operation of the controller,
is described in the appendix, "SoftController Settings and Operation", on page
153.

3.3 OPC Server Installation and Start-up


Installation
The installation procedure is similar for all products on the ControlIT for
AC 800M/C CD-ROM, see "Control Builder Installation and Start-up", on
page 31.

3BSE 021 350R201 Rev A 33


3.4 AC 800M/C Controller Integration Installation Chapter 3: Installation and Start-up

Settings and Starting up


The OPC server can be configured in a number of ways with respect to lan-
guage, memory usage, etc., see the appendix, "OPC Server for AC 800M/C In-
stallation and Settings", on page 159.
The start-up procedures are also described in the appendix, "OPC Server for
AC 800M/C Installation and Settings", on page 159.

3.4 AC 800M/C Controller Integration


Installation
In these instructions it is assumed that the installation is to take place on a com-
puter in which Windows 2000 has been installed and all settings required for
the Control Builder and OperateIT A are properly entered (Ethernet network,
IP addresses, printer, etc.). The following related programs should also been
installed,
• OperateIT A1.2 (refer to the ABB OperateIT A1.2 Installation Guide, which
is available on the OperateIT A CD-ROM),
• Control Builder Professional (refer to section "Control Builder Installation
and Start-up", on page 31),
• OPC Server for AC 800M/C (refer to Section 3.3 on page 33).
Information. It is recommended to install the AC 800M/C Controller Integra-
tion on every OperateIT A station, even connectivity servers.
Information. The manual AC 800M/C Controller Integration, User’s Guide
contains additional information.
Carry out the following steps to install the Integration.
1. Log in as Administrator in Windows 2000.
2. Insert the Control IT for AC 800M/C CD-ROM, and in the installation
splash screen which appears (see Fig. 12 on page 31), click on Install
software. In the next splash screen, click on AC 800M/C Controller In-
tegration, and you will be guided through the installation procedure.
Faceplates for many standard library types will be installed during this
procedure.
3. Start the Configuration Wizard by selecting Programs>ABB Industrial
IT>Configuration Wizard in the Windows Start menu. The Configura-
tion Wizard appears, see Fig. 13.

34 3BSE 021 350R201 Rev A


Chapter 3: Installation and Start-up 3.4 AC 800M/C Controller Integration Installation

For detailed information, refer to the manual OperateIT A1.2 Administra-


tor’s Guide, and consult the chapter on Configuration.

Fig. 13 The Configuration Wizard.


4. Select Create System in the Configuration Wizard, and follow the in-
structions in the wizard. When the checkboxes for system extensions ap-
pear, check the checkbox AC 800M/C Integration, and continue the
installation. If any problems arises, refer to the manual OperateIT A1.2
Administrator’s Guide, and consult the chapter on Configuration.
5. Start the Control Builder Proffessional.
6. Create a new, or open an existing project in the Control Builder Proffes-
sional and the types (libraries, function block types, control modules
etc.), will now be mirrored to the OperateIT A Plant Explorer. Only types
with checked aspect object attribute will be mirrored.
7. Simulate or go online and instances will also be mirrored to the
OperateIT A Plant Explorer.
OperateIT A will be connected to the OPC server in the following steps.
8. Make sure that the OPC server for AC 800M/C is running and has been
connected to the controller.
9. In the OperateIT A Plant Explorer, open the OPC Data Source Definition
aspect of the Control Network object found in the Control strucure.
10. Add a provider, and select the OPC server node.

3BSE 021 350R201 Rev A 35


3.4 AC 800M/C Controller Integration Installation Chapter 3: Installation and Start-up

It is now time to configure Alarm and Event.


11. In the OperateIT A Plant Explorer, open the AdvAeServer object in the
Service Structure, and select Basic object.
12. Open the Config View of the Service Group Definition aspect and select
the Special Configuration tab, see Fig. 14.

Fig. 14 The OperateIT A Plant Explorer Workplace.


13. Add a collector, and select the Program identity
ABB.AC800MC_OpcAeServer.2.
14. Apply the changes in the Service Group Definition aspect. The installa-
tion of the Integration Kit is now complete.
Information. When a project is created, opened or simulated, an additional di-
alog box will be shown with the question
Shall mirroring to OperateIT be made? Yes, No.

36 3BSE 021 350R201 Rev A


Chapter 3: Installation and Start-up 3.5 Using RNRP in a Non-ControlIT Configuration

3.5 Using RNRP in a Non-ControlIT


Configuration
The RNRP service, which is required for routing and creating a redundant
network in ControlIT for AC 800M/C and OperateIT A, is available on the
ControlIT for AC 800M/C CD-ROM. This service is automatically installed
when the Control Builder, OPC server or the Controller Integration is installed.
To install the RNRP service in OperateIT A, it is recommended that the
Controller Integration be installed on the PCs running OperateIT A. Follow the
instructions below.
1. Insert the Control IT for AC 800M/C CD-ROM, and in the installation
splash screen which appears (see Fig. 12 on page 31), click on Install
software. In the next splash screen, click on AC 800M/C Controller In-
tegration, and you will be guided through the installation procedure.
2. Select the setup wizard from the Windows Start menu (Start>Pro-
grams>ABB Industrial IT>Control IT>Control Builder>RNRP>Setup
Wizard). In this wizard the RNRP parameters are configured. Refer to the
manual AC 800M/C Communication, Protocols and Design.

3BSE 021 350R201 Rev A 37


3.6 Controller Firmware Upgrade Chapter 3: Installation and Start-up

3.6 Controller Firmware Upgrade


The firmware in the controller hardware and the Control Builder must have the
same version numbers. The procedure for upgrading the controller firmware is
described in the section, "Firmware Upgrade via Serial Line", on page 85.
Information. The serial line firmware upgrade procedures must be used when
upgrading controllers with firmware versions older than 2.0.

3.7 Add or Remove Programs


Programs can conveniently be added (installed from the ControlIT for
AC 800M/C CD-ROM) or be removed (from the disk).
To add or remove a program follow the instructions below.
1. Open the Windows Control panel using the Windows Start menu
(Start>Settings>ControlPanel), see figure below.

Fig. 15 The Windows Control Panel.


2. Double-click on Add/Remove Programs and a list with all programs on
your disk appears, see figure below.

38 3BSE 021 350R201 Rev A


Chapter 3: Installation and Start-up 3.7 Add or Remove Programs

Fig. 16 The Control Builder Professional program is selected. Note the Change/Re-
move button which appears when you select a program.
3. Select a program to be added or removed in the list, and click on the
Change/Remove button. The dialog box below appears.

Fig. 17 Components can be added and programs can be reinstalled or removed using
this dialog box.

3BSE 021 350R201 Rev A 39


3.7 Add or Remove Programs Chapter 3: Installation and Start-up

The buttons have the following functions.


• Add Components is used to add a component which is not already in-
stalled, e.g., if you have performed a customized installation where
some components were not selected.
• Reinstall is used to reinstall a program. The already installed program
will be removed and the program on the CD-ROM will be reinstalled.
Note that this function is not to be used for upgrading.
• Remove All will remove the selected program and all its components.
• Exit will exit the Installation Handler program.

40 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 3.7 Add or Remove Programs

Chapter 4
Control Builder - A Quick Look

In this chapter we will take a quick look at the Control Builder engineering
tool. A ready-for-test tutorial (Tutorial_01) will be used to help you become
familiar with the Project Explorer and its contents. An application program for
a simple tank filling process, written in Function Block Diagram (FBD), Struc-
tured Text (ST), Instruction List (IL) and Ladder Diagram (LD) code, is pre-
sented, and the declaration of local, global and access variables is described.
Note that the example files are read-only files.
The second tutorial (Tutorial_02) is used to show how the project is simulated
and checked online.
Examples are given with exactly the same function, but using different pro-
gramming languages. The project using the FBD language is, for example,
called “Tutorial_02_FBD”, the project using the ST language is called
“Tutorial_02_ST”, etc. Refer to "Examples", on page 25, to find out how to
open an example.
The figures in this chapter (and the following chapters) have been taken from
Control Builder Basic, but the tutorial should work in any of the three
products. The appearance of the figures will be different in Control Builder
Standard and Proffessional due to their extended capabilities.
Tip. Control Builder Basic has the default program names Fast, Normal and
Slow (but can be renamed), and only one application can be programmed in a
project. Each of the three programs is connected to a task. The other two Con-
trol Builder products can have several applications, each with a task connected
to them. The programs are called Program 1, Program 2, and Program 3 in-
stead of Fast, Normal and Slow.
Tip. Projects created in Control Builder Standard or Control Builder Profes-
sional can be opened in Control Builder Basic only if they have been created
without the extra facilities available in the more extensive engineering tools,
see "Comparison Between the Control Builder Products", on page 171.

3BSE 021 350R201 Rev A 41


4.1 Starting the Project Chapter 4: Control Builder - A Quick Look

4.1 Starting the Project


After start-up, the Project Explorer is shown on the left of the screen. Select
File>Open Project... to open a project. As the program prompts you for a
project name, navigate to the folder Examples and select the directory
Tutorial_01. Choose Tutorial_01.prj (.prj is the file extension for project
files).
Information. All files in the directory Examples are Read Only which means
that they can not be altered. To be able to save changes performed in the tuto-
rials, you must first copy them to your own project folder, and then open them
from that folder.

4.2 Project Explorer


The Project Explorer is the “core” of the programming environment. The pro-
gram and hardware configurations are administrated from the
Project Explorer. (See Fig. 18.)

Title bar
Project name
Menu bar
Tool bar

Project Explorer pane

Message pane

Fig. 18 The Project Explorer.


Information. One application per project can be used in Control Builder Basic.
In Control Builder Standard and Control Builder Professional several applica-

42 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.2 Project Explorer

tions can be used, and a third folder, named Applications is thus seen at the top
level.

Menu Bar and Tool Bar


At the top of the Project Explorer, the title bar is shown. As can be seen the
project name “Tutorial_01” is shown in the title bar. This is the name of the
project that is active. The asterisk (*) indicates that something has been
changed but not yet saved on file. The current mode (Offline/Online) is then
displayed. Below the title bar is the menu bar.
Depending on which pane or mode we are in, the commands in the drop-down
menus in the menu bar will be either black or dimmed indicating which com-
mands are available and which are not. Below the menu bar is the tool bar,
with buttons for the most common commands, for example, simulating or sav-
ing the project.

Libraries
Initially, only the folders for the libraries and the controller are shown. Click
on the “+” sign beside the Libraries folder to expand the folder (clicking on
the “-” sign will collapse the folder).
The libraries contain predefined functions and function blocks that can be used
in your programs. Figure 19 shows the SystemLib and Function Block
Types, expanded.

Fig. 19 The Project Explorer with part of the Libraries folder expanded.

3BSE 021 350R201 Rev A 43


4.2 Project Explorer Chapter 4: Control Builder - A Quick Look

Controller
Collapse the libraries by clicking on the minus sign to the left of the Libraries
folder in the Project Explorer window. Expand the folder Controller a number
of levels. This gives a clear picture of the entire controller.
Access Variables
The access variables are used for communication with other systems. For fur-
ther information, see the Online Help.
Hardware
Expand the folder Hardware to its maximum “depth”. The Project Explorer’s
display of the hardware setup is almost identical to the “real” hardware setup,
i.e. as the units are mounted and connected to the I/Os, see Fig. 20.

Fig. 20 The Project Explorer’s display of the hardware setup.


Double-click on an I/O unit to show the Hardware Configuration Editor. The
connections made in the project between the application program and the hard-
ware will be shown.

44 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.2 Project Explorer

Fig. 21 The Hardware Configuration Editor with an I/O module AI810 selected.
Collapse the folder Hardware.
Tip. Mark an I/O module (e.g. AI810) and press the F1 key to obtain informa-
tion on the unit.

Tasks
Expand the folder Tasks. The three tasks are connected to their respective pro-
grams (one task per program). The tasks serve as “work schedulers” for the
programs and contain settings for interval time and priority.
Control Builder Standard and Control Builder Professional have a maximum
of 16 tasks per controller.
Double-click on the Tasks icon, this will bring up the Task Overview Editor.
The editor displays the settings for all tasks, i.e. priority, interval time, etc.,
(see Fig. 22).

Fig. 22 The Task Overview Editor displays the settings for the three programs.
Close the editor.

3BSE 021 350R201 Rev A 45


4.2 Project Explorer Chapter 4: Control Builder - A Quick Look

Application
The application contains the program code to be compiled and downloaded for
execution in the controller.
An application contains three programs; Fast, Normal and Slow. Each pro-
gram is connected to one task. This means that you can divide the control soft-
ware into different parts, depending on the required interval times and
priorities.
Control Builder Standard and Control Builder Professional can use several ap-
plications, each with several programs, and the program names are Program 1,
Program 2, Program 3, etc.
You can create and define your own data types and function blocks in the ap-
plication. User-defined data types and function blocks can be created and used
in the programs.
A simple tank-filling process is programmed in Tutorial_01, see the process
flow chart below.

Valve 23
HH
H HH LL
Tank 23
Level

L Temp.
LL
TIC
23

Fig. 23 The process programmed in the project Tutorial_01.


In the Project Explorer, expand the folder Application and then Programs.
Double-click on Normal and then select the tab FBD_Code (in the program
code pane) to show the program written in Function Block Diagram code.

46 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.2 Project Explorer

Variables pane

Code pane

Fig. 24 The program in FBD code for Tutorial_01.


Information. Note that the program Normal contains four tabs with different
programs (with similar behavior) written in four different languages.

3BSE 021 350R201 Rev A 47


4.2 Project Explorer Chapter 4: Control Builder - A Quick Look

Select the tab ST_Code to show the same functions written in Structured Text
code. Note that there are four sets of variables. Use the scroll bar in the vari-
able declaration pane to view all the variables. The tank and its objects are
called Tank23 in FBD code and Tank21 in ST code.

Fig. 25 The Program in ST code for Tutorial_01.


Select the tab IL_Code to show the same functions written in Instruction List
code. Note that there are four sets of variables. Use the scroll bar in the vari-
able declaration pane to view all variables. The tank and its objects are called
Tank 22 in IL code, etc.

48 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.2 Project Explorer

Fig. 26 The Program in IL code for Tutorial_01.


Tip. The column widths in the editor above can be adjusted (all columns in the
selected pane will be adjusted at the same time) by selecting Adjust Column
Widths in the Tools menu.

Select the tab LD_Code to show the same functions written in Ladder code.
Note that there are four sets of variables. Use the scroll bar in the variable dec-
laration pane to view all the variables. The tank and its objects are called
Tank 24 in LD code.

3BSE 021 350R201 Rev A 49


4.3 About Variables Chapter 4: Control Builder - A Quick Look

Fig. 27 The program in LD code for Tutorial_01.

4.3 About Variables


There are three kinds of variables in the system – local, global and access
variables.
Local variables can only be accessed in the same function block or program in
which they are declared. They can not be accessed from any other function
block or program.
Global variables can be accessed from any of the programs. Before accessing
a global variable in a function block, it must be declared as External.
Access variables are variables that can be accessed by other controllers. This
allows data exchange between controllers. Further information about access
variables can be found under the section Communication in the
Control Builder Online Help function.

50 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.3 About Variables

Where to Declare a Variable


Follow the instructions below to open a variable declaration pane.
• To declare a local variable in a program, double-click the program icon (for
instance, Fast, Normal or Slow) in the Project Explorer.
• To declare a local variable in a function block, double-click a function block
in the Project Explorer to open its editor, and then select the tab Variables
in that editor (see Fig. 28).

Fig. 28 Variables and External variables tabs in the Function Block Type editor.
• To declare a global variable in an application, double-click on Application
in the Project Explorer.
• To declare a connection to a global variable in a function block, double-
click on the function block icon in the Project Explorer to open its editor.
Then select the tab External Variables (see Fig. 28) in the editor.
• To declare an access variable, double-click the icon Access Variables in
the Project Explorer.

How to Declare a Local Variable


This section describes how local variables are declared. You do not need to fol-
low the step-by-step instructions below, but may continue to read the chapter.
The procedures for declaring different types of variables are similar. Below,
the procedure for declaring a local variable in a program of type Fast is de-
scribed.
1. Double-click on the program icon Fast in the Project Explorer. The pro-
gram editor will be displayed on the screen.
2. The editor is divided into two parts – the upper pane (declaration pane or
declaration grid) and the lower pane (code pane). There are two different
tabs in the upper pane (Variables and Function blocks). Variables are
declared under the tab Variables. We will discuss the other tab later.

3BSE 021 350R201 Rev A 51


4.4 Simulation Chapter 4: Control Builder - A Quick Look

3. If the Variables tab is not activated, click on it. Then place the cursor in
the upper left cell and type My_Variable.
4. Move to the cell to the right by pressing the tab key and type bool
(Boolean) here. Note how you only need to type “b”, and the editor will
guess the rest. Write out the word “bool” or accept the editor’s suggestion
by pressing the tab key.
5. The next column is labelled “Attributes”. Each variable can have an at-
tribute such as retain, coldretain, constant, etc. The attribute
governs the value of the variable upon program execution, rebooting, etc.
You can scroll through the possible settings by pressing the Alt key and
using the up and down arrow keys. Choose retain. See also the Control
Builder Online Help for more information.
6. In the next column, the initial value of the variable is defined. Set this to
true.
7. Skip the following two columns and go to the column labelled Descrip-
tion. In this column you can write a short description of the variable.
Write something like “A short test”. Your grid should now look like the
one in Fig. 29.

Fig. 29 Declaration of a boolean variable.

4.4 Simulation
The second project, Tutorial_02_FBD, is used to demonstrate how to
check a project in simulation mode. There are four different projects, one for
each of the programming languages, FBD, ST, IL and LD. Use any of these
projects. In simulation mode you can change variable values and see the pro-
gram response online. The program is to be connected to a controller
AC 800M, but you do not need the controller to simulate the program. The ex-
ample consists of a simple counter, which counts when a start variable is true.
The counter sets another variable to true when a preset limit is reached.
Another variable resets the counter.
1. Open the project Tutorial_02_FBD.prj (or any of the other three
projects).
2. Expand the tree in the Project Explorer and double-click on the program
Normal. The code editor opens and displays the code (see Fig. 30).

52 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.4 Simulation

Fig. 30 A simple counter.


This is a simple counter (there are library counter function blocks available,
but they are not used in this tutorial).
3. Close the program editor.
4. Choose Tools>Simulate Project and in the dialog box that appears, se-
lect Continue. The simulation mode will be entered.
5. Double-click on the program Normal and the progression of the variables
will be shown “online”, see Fig. 31.

3BSE 021 350R201 Rev A 53


4.4 Simulation Chapter 4: Control Builder - A Quick Look

The Stop_Limit value may be


changed online at either of
these locations

Fig. 31 The progression of the variable values is displayed “online” (FBD).


6. In the code pane, start the counter by clicking on Counter_Start and
then right-click and select On. Wait until the counter reaches the stop lim-
it 50, then the value of Stop_Limit_Ind will change to true. At the
same time, the color of the variable will change to blue.
7. Reset the counter and the variable Stop_Limit_Ind by setting the
Counter_Reset to true. You can also change the stop limit.
8. Close the online editor and halt the simulation by choosing Tools>Stop
Simulate.

54 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.4 Simulation

The figure below shows the ST online editor in Tutorial_02_ST.

The Stop_Limit
value may be
changed online at
either of these loca-
tions

Fig. 32 The progression of the variable values is displayed “online” (ST). A highlighted
variable in the online code pane indicates that the variable is true (1).

3BSE 021 350R201 Rev A 55


4.4 Simulation Chapter 4: Control Builder - A Quick Look

The figure below shows the IL online editor in Tutorial_02_IL.

The Stop_Limit
value may be
changed online
at either of these
locations

Fig. 33 The progression of the variable values is displayed “online” (IL).

56 3BSE 021 350R201 Rev A


Chapter 4: Control Builder - A Quick Look 4.4 Simulation

The figure below shows the LD online editor in Tutorial_02_LD.

The Stop_Limit
value may be
changed online at ei-
ther of these loca-
tions

Fig. 34 The progression of the variable values is displayed “online” (LD).


The test using Tutorial_02 is now complete. As an additional exercise, you can
try to simulate Tutorial_01 and check that the program works as expected.

3BSE 021 350R201 Rev A 57


4.5 Closing the Control Builder Chapter 4: Control Builder - A Quick Look

4.5 Closing the Control Builder


Control Builder is closed like any other Windows program, choose
File>Close Project, then, choose File>Exit.

Tip. You can print out the project documentation before closing the Control
Builder. The procedure for this is described in the section "Project Documen-
tation", on page 83.

58 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.1 Introduction

Chapter 5
Creating a Project – Shop Doors

5.1 Introduction
This chapter describes the steps necessary to set up a project called MyDoors,
to write some simple code, and to go into simulation mode to show on screen
how the variables change during program execution. Finally, we will down-
load the program to the AC 800M controller.
Two alternatives are presented for programming the project; one in FBD and
one in ST. Follow the appropriate section for your project.
Tip. After this session, you can check your project MyDoors against the ap-
plication found in the directory Examples>ShopDoors_FBD (the project
using the FBD editor) or Examples>ShopDoors_ST (the project using the
ST editor).
We are going to simulate the entrance to a store. The entrance has the follow-
ing specifications.
• It consists of two sliding doors.
• The doors are opened when a photocell is activated by a customer.
• Each door has its own motor, to open and close the door.
• The doors return to default position (closed) 5 seconds after the photocell
was last activated. Hence, several customers can arrive one after the other
thereby extending the time the door is open.
• The number of customers is recorded for statistics. Manual resetting of this
counter should be possible.
• The total number of times the doors have been opened since they were last
serviced should be recorded. Each opening of the doors should result in an
increment of a counter. When the counter reaches a preset limit, a flag
should be set indicating that service is required. Manual resetting of the flag
should be possible.

3BSE 021 350R201 Rev A 59


5.2 Selecting the Template Chapter 5: Creating a Project – Shop Doors

5.2 Selecting the Template


Depending on the hardware setup, different templates are available for dif-
ferent controllers. The template for the controller AC 800M will be
used, but you can select another controller. Downloading to all controller
types is described later.
1. Start the Control Builder. Minimize everything except the Control
Builder.
2. In the Project Explorer, under the menu File, select New project, then se-
lect the template controller AC 800M.
3. Enter the project name MyDoors. A disk location for your project will
automatically be suggested.
4. Click on the OK button.
We will describe the hardware later. At this time we will use Control Builder
to simulate the code.

5.3 Declaration
Variable and Data Type Preparation
Before starting to write the code you should have a clear picture of the objects
in the “model”. Although it is possible to start writing the code and define the
variables later, it is best to define them from the beginning.
• Photocell
The photocell has two states, active and inactive, typically represented by a
Boolean variable. We use a Boolean variable called Photo_Cell (1 =
active, 0 = inactive).
• Motors for the doors
The entrance itself consists of two doors facing each other. They are opened
by two motors which are controlled by Boolean signals (Motor_1 and
Motor_2). The time during which the doors should be open is declared in
a variable DoorsOpen_Time.
• Number of customers
Every time the photocell is activated, a counter representing the total num-
ber of customers entering the shop should be incremented. This counter,
Customers_Qty, is of type integer.

60 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.3 Declaration

At certain dates, the shop manager records the total number of customers up
to this date and resets the counter. Hence, we declare a Boolean variable
Reset_Counter which resets the counter.
• Service of the doors
As the doors are to be serviced at regular intervals, let us say after being
opened 10,000 times, we want to keep a record of the number of times they
have been opened since they were serviced. The number of times the doors
are opened is stored as the variable Openings_Freq.
When the counter reaches the upper limit defined by Openings_Total
a flag (Service_Req) is set indicating that service is required. Manual re-
setting of the service counter is activated using a Boolean variable
Serviced. The doors should not stop working if service is not performed.

Declaring the Variables


1. In the Project Explorer, expand the project tree until you see the program
Normal. Double-click on the icon and the program editor opens.
2. The program editor is divided into three panes; the declaration grid, the
code pane, and the message pane. If you do not see the third pane, choose
View>Message Pane and it will be shown at the bottom of the window.
(See Fig. 35.)

The declaration grid

The code pane

The message pane

Fig. 35 The editor for the program Normal.

3BSE 021 350R201 Rev A 61


5.3 Declaration Chapter 5: Creating a Project – Shop Doors

3. Place the cursor in the upper left cell in the declaration pane and type
Photo_Cell.
4. Move one cell to the right by pressing the tab key. The status of the pho-
tocell (activated or not) is a Boolean variable, hence, type bool in the
column “Data type”. Note that you need only type “b”; the editor will fill
in the rest. Accept the editor’s suggestion by pressing the tab key. The
cursor will move to the column labelled “Attributes”.
5. When the name Photo_Cell was typed the editor added retain by
default. There are many other choices. Scroll between the possible
choices by holding the Alt key down and scrolling with the up and down
arrow keys. Choose the default setting retain. Press the tab key to
move to the next column.
6. The initial value is the value that the variable will have at start-up – the
initiation – of program execution. (Actually, it depends on the settings of
the attribute, but we will not go into this here.) Since the variable de-
scribes the status of the photocell we set it to false (0) to indicate that the
doors are closed at start-up.
7. Skip the column I/O address. The address will be automatically filled in
when configuring the hardware, see "Connecting I/O Interfaces to the
Application", on page 80.
8. The last column is reserved for comments. Here you can enter text de-
scribing the variable. Your first row should now look like row 1 in Fig. 36.

Fig. 36 Declaration of the Boolean variable Photo_Cell.


9. Next, declare the time during which the doors should remain open, and
add a variable that records the time elapsed since the photocell was acti-
vated, see Fig. 37.

Fig. 37 Declaration of the variables DoorsOpen_Time and Doors_Open_ET.


Tip. Note the attribute constant of the variable DoorsOpen_Time.
You can either explicitly type “constant” or scroll through the available
formats using Alt together with the up and down arrow keys.
10. Fill in the remaining rows in the grid according to Fig. 38.

62 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.3 Declaration

Fig. 38 Declaration of the variables.


Tip. If you forget the data types that can be specified in the Data type col-
umn, choose Insert>Variable, Type, Attribute (or press Ctrl + J) to get a
list of possible data types.
11. Choose Editor>Check (or type Ctrl + B) to check that everything is cor-
rect. A message similar to the following one should be displayed in the
message pane.
Starting check 2000-03-14-11:16:08.
Summary: Time 1 second, 0 errors, 0 warnings.
We have now defined the set of variables that is to be used.
Information. The program code can be written in any of the five programming
languages. The next section describes how to write the code using the Function
Block Diagram (FBD) editor and the section following that describes how to
write the code using the Structured Text (ST) editor. Select the appropriate sec-
tion.

3BSE 021 350R201 Rev A 63


5.4 Writing the Code Using the FBD Editor Chapter 5: Creating a Project – Shop Doors

5.4 Writing the Code Using the FBD


Editor
We shall now start to write the program code that controls the doors. This is
done in the code pane.

Changing the Programming Language


To change the appropriate editor (FBD) for the current code block (local selec-
tion), right-click on the tab Code and select Change Language. The dialog
box Change Language appears. Check the appropriate editor radio button. To
select the appropriate editor for all (not already used) code blocks in the appli-
cation (global selection), select the menu Tools > Setup and then the tab Gen-
eral. Check the appropriate editor radio button.

Dividing the Code into Blocks


The code pane contains the actual code which can be divided into blocks in or-
der to create a better structure.

Fig. 39 The program editor with empty code pane.

64 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.4 Writing the Code Using the FBD Editor

The different blocks, represented by tabs (the figure above shows three tabs –
Motors_Doors, Number_Of_Customers and
Service_On_Doors), can be written in any of the available programming
languages. The Function Block Diagram (FBD) editor will be used in this sec-
tion to program the project.
1. Change the name of the code block to Motors_Doors by pointing to
the tab Code and right-clicking. Then choose Rename…. In the dialog
box, enter the new name Motors_Doors. This code block describes
the motors for the doors.
2. Add another code block for the number of customers by pointing to the
tab Motors_Doors and right-clicking. Then choose Insert…. In the fol-
lowing dialog box, specify the name Number_Of_Customers and
ensure that FBD is selected as the programming language. This code
block effectuates the counting of the number of customers.
3. Add a third code block called Service_On_Doors.
Information. The declaration pane remains the same and serves as a common
declaration area for all code blocks.

Code Input
1. Activate the code block Motors_Doors.
2. Choose Insert>Insert Function/Function Block (or press Ctrl + K),
then expand ‘SystemLib’ and find the function block TOf by scrolling
down or typing ‘TOf’.
3. Change the instance name to ‘OpenDoors’ and click OK. This will auto-
matically declare the function block in the declaration pane and generate
the function block OpenDoors in the editor, see Fig. 40 below and Fig. 41
on page 66.

Fig. 40 The function block of type TOf.


4. Select (click on the input line of TOf) the first input parameter and right-
click. Then choose Connect... and type Photo_Cell in the dialog box.
Accept the selection by clicking Apply/Next or OK.
5. Connect all parameters according to Fig. 41.

3BSE 021 350R201 Rev A 65


5.4 Writing the Code Using the FBD Editor Chapter 5: Creating a Project – Shop Doors

Fig. 41 The code block in the tab Motors_Doors. The function block is automatically de-
clared in the variables pane.
Information. To connect two variables to an output parameter, use a comma ‘,’
in the dialog box. For example, Motor_1, Motor_2.
6. Choose Editor>Apply (or press Ctrl+W) in order to check and save the
code.
7. Change tab to Number_Of_Customers and add the code, see figure
below.

Fig. 42 The code block in the tab Number_Of_Customers.


8. Change tab to Service_On_Doors and add the code, see figure below.

Fig. 43 The code block in the tab Service_On_Doors.


9. Choose Editor>Apply (or press Ctrl+W) in order to check and save the
code.

66 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.4 Writing the Code Using the FBD Editor

10. Close the editor.


If you receive error messages in the message pane you can double-click on the
error line to quickly go to the place where the error occurred. You will also find
help concerning the type of error in the message pane.
The next section describes how to write the code for the Shop Doors project
using the Structured Text (ST) editor, which is an alternative to this section.

About FBD Editor Tools


Structure view
The Structure view is part of the FBD and LD editors and is a tool for exam-
ining the FBD code. It shows the execution order of the function blocks, see
Fig. 44 below and Fig. 24 on page 47.
1. Place the cursor on the left vertical boarder line of the FBD code pane,
and with the mouse button down, drag to the right. The Structure view
will now be visible.
2. Click on a line in the Structure view, and the corresponding function
block in the FBD editor will be highlighted.

Structure view

Fig. 44 The Structure view to the left of the FBD editor facilitates the project work.

3BSE 021 350R201 Rev A 67


5.4 Writing the Code Using the FBD Editor Chapter 5: Creating a Project – Shop Doors

Dividing the FBD editor window


The code pane of the FBD editor can be divided into two halves. For instance,
one page of the FBD code can be displayed in one half and another page in the
other half.
1. Place the cursor on the upper horizontal boarder line of the FBD code
pane, and with the mouse button down, drag downwards. The code pane
will be split into two halves.

Fig. 45 The FBD editor can be split into two sections.


Tip. The FBD editor has a ‘tool tip’ indication, which appears when you move
the cursor close to a connection in the editor, see figure belowFig. 46.

Tank 23_LL

Fig. 46 The tool tip indication.

68 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.5 Writing the Code Using the ST Editor

5.5 Writing the Code Using the ST Editor


It is presumed that the ST editor is selected. Refer to "Changing the Program-
ming Language", on page 64, for instructions on how to change the language.

Declaring the Function Blocks


Function blocks are required for the timer and counters.
1. Activate the Function Blocks tab in the declaration pane.
2. Fill in the grid according to Fig. 47. In row 1 we declare the TOf function
block and name it OpenDoors. On the next row we declare the CTU
function block and name it Customer_Count_Up. Note that on rows
2 and 3 we declare two different function blocks using the same function
block type.

Fig. 47 Declaration of the function blocks.


You may perhaps not know very much about what the TOf and the CTU
function blocks stand for and why we have chosen them. Consult the On-
line Help function for further information about function block types.
Tip. To get help, place the cursor in a cell with the function block that you
want to look up, and press F1.
3. Choose Editor>Check (or type Ctrl + B) to check that everything is cor-
rect. A message such as the following one should be displayed:
Starting check 2000-06-14-11:16:08.
Summary: Time 1 second, 0 errors, 0 warnings.
4. Change back to the Variables tab.

Dividing the Program into Blocks


We shall now start to write the program code that controls the doors. This is
done in the code pane. The code pane contains the actual code which can be
divided into blocks in order to create a better structure.

3BSE 021 350R201 Rev A 69


5.5 Writing the Code Using the ST Editor Chapter 5: Creating a Project – Shop Doors

Fig. 48 The program editor with empty code pane.


The different blocks, represented by tabs (the figure above shows three tabs –
Motors_Doors, Number_Of_Customers and
Service_On_Doors), can be written in any of the available programming
languages.
1. Change the name of the code block to Motors_Doors by pointing to
the Code tab and right-clicking. Then choose Rename…. In the dialog
box, specify the new name Motors_Doors. This code block describes
the motors controlling the doors.
2. Add another code block for the number of customers by pointing to the
tab Motors_Doors and right-clicking. Then choose Insert…. In the fol-
lowing dialog box, specify the name Number_Of_Customers and
ensure that ST is selected as the programming language. This code block
governs the counting of the number of customers.
3. Add a third code block called Service_On_Doors.
Information. The declaration pane remains the same and serves as a common
declaration area for all code blocks.
Information. To change to another programming language, see "Changing the
Programming Language", on page 64.

70 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.5 Writing the Code Using the ST Editor

Code Input
1. Activate the code block Motors_Doors and place the cursor on the
first line in the code block.
2. Choose Insert>Variable Type, Attribute... (or press Ctrl + J). The
variables and function blocks declared in the tab Function Blocks in the
declaration pane are shown.
3. Choose the function block OpenDoors either by starting to type Open…
or by using the mouse to select a function block from the list. Accept the
selection by pressing Return. Then, when you type the leading left pa-
renthesis ‘(‘, the parameter editor will be activated, see Fig. 49.

Fig. 49 The parameter editor.


4. Place the cursor in the first empty white cell and choose Insert>Actual
parameter From List… (or press Ctrl + J). Choose the variables by
either starting to type the name, or by using the mouse to select a variable.
Accept the selection by pressing the Return key.
5. Fill in the parameter list according to Fig. 50.

Fig. 50 Input of the function block parameters.

3BSE 021 350R201 Rev A 71


5.5 Writing the Code Using the ST Editor Chapter 5: Creating a Project – Shop Doors

6. Choose Editor>Apply and Close (or press Ctrl + U) to insert the param-
eters into the code.
7. The output from the function block (Q) can be passed on by specifying an
output parameter in the parameter assistant (e.g. Start_Motor on the
“Q” line, i.e. line 3) but we will use a different way of accessing variables
from function blocks, using dot notation, see "Predefined I/O Data
Types", on page 112.
The output Q is a Boolean signal which should be passed on to the motors
to open the doors. Since both doors should be opened, the signal must be
passed to both motors. To do this, write:
Motor_1 := OpenDoors.Q;
Motor_2 := OpenDoors.Q;
Here we address the output Q of the function block directly, and assign
its value to the two motors, to open both doors.

Fig. 51 The code block in the tab Motors_Doors.


8. Choose Editor>Apply (or press Ctrl+W) in order to check and save the
code.
9. Change tab to Number_Of_Customers and add the code, see Fig. 52.

72 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.5 Writing the Code Using the ST Editor

Fig. 52 The code block in the tab Number_Of_Customers.


(You can write the code structured with tabs and spaces or not.)
Note that you should not type in the text as in an ordinary text editor. In-
stead you should use Insert>Function block and the parameter editor.
10. Change tab to Service_On_Doors and add the code, see Fig. 53.

Fig. 53 The code block in the tab Service_On_Doors.


11. Choose Editor>Apply (or press Ctrl+W) in order to check and save the
code.
12. Close the editor.
Tip. If you receive error messages in the message pane you can double-click
on the error line to quickly go to the place where the error occurred. You will
also find help concerning the type of error in the message pane.

About ST Editor Tools


Select a Variable in the Code Pane
1. In the code pane (below the declaration grid), select the Code tab and
type My_Variable.
Tip. You can also choose Insert>Variable, … (or use Ctrl + J) and choose
from the list that is presented.

3BSE 021 350R201 Rev A 73


5.5 Writing the Code Using the ST Editor Chapter 5: Creating a Project – Shop Doors

Variables list box

Fig. 54 Press Ctrl+J to fetch a variable from the variables list box.
2. Double-click on a variable in the list box to insert the variable into the
code pane.
Statement Selector
1. Tip. While we are in the code pane, let us look at another programming
help function. Go to a blank line and choose Insert>Statement… (or
press Ctrl + I). A list box will present the instructions that can be inserted.
2. Type an “i” and the cursor will jump to the first if statement. You have
three possible choices, select the third using the up and down arrow keys
or the mouse. The if statement will be inserted with the appropriate for-
mat (see Fig. 55). Now, you have only to fill in the blanks.

74 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.5 Writing the Code Using the ST Editor

Fig. 55 The statement list box helps you to input statements.


3. Close the editor. Do not save the program.

3BSE 021 350R201 Rev A 75


5.6 Simulation Chapter 5: Creating a Project – Shop Doors

5.6 Simulation
In Simulation mode you can simulate your project without a controller being
connected. The values of the variables can be changed and you can immedi-
ately see the program response.
Note that all variables are reset to their initial values when simulation is
started.
1. Choose Tools>Simulate Project.
2. Double-click on the program Normal. The online editor is displayed.
3. All variables in the program Normal are listed in the upper pane and the
code in the lower pane, see Fig. 56.

Fig. 56 Simulation mode (FBD).

76 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.6 Simulation

Fig. 57 Simulation mode (ST).


Here we can see the current values for the duration that the doors should
be open, the status of the motors, the number of times the doors may be
opened before service is required, etc.
4. On the first line (Photo_Cell) we see that the photocell is set to False
(no customer has activated the photocell). If you change this to 1 (True)
you will see that the motors change to True (start), the number of open-
ings since last service is increased by one, and the number of customers
is increased by one.
5. Change the value of the photocell back to 0 (no customer in front of the
photocell). Notice how the clock starts, and counts up to five seconds.
When it reaches 5 seconds the motors are set to 0 (off) and the doors will
close. See the section "Simulation", on page 52, on how to change a value
online.
6. Set the variable Photo_Cell to 1 and then directly back to 0 (a custom-
er has passed the photocell). The number of openings is increased as well
as the number of customers. Wait until the doors have closed.
7. Now, swiftly input 1, 0, 1, 0, 1, 0 (three customers on a row passing the
photocell) and notice that when the first customer passes the photocell the
clock starts, then when the next customer passes the clock is reset to 0 and

3BSE 021 350R201 Rev A 77


5.6 Simulation Chapter 5: Creating a Project – Shop Doors

hence the opening time is extended to a new period of 5 seconds, and so


on. Also, note that the number of openings of the doors is only increased
by one whereas the number of customers is increased by three. We now
have 3 openings of the doors and 5 customers.
8. Reset the counter for the customers by changing the value on the last line
(Reset_Counter) to 1 and then back to 0.
9. Play around with the photocell so the number of openings
(Openings_Freq) passes Openings_Total. Then,
Service_Req will become True.
10. Change the value of Serviced to 1 and then 0 and see what happens to
the counters and flags. Note that the variable Openings_Freq is reset.
11. Choose Tools>Stop Simulate in the Project Explorer to exit simulation
mode.

78 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.7 Configuring the Hardware

5.7 Configuring the Hardware


In the following it is assumed that an AC 800M controller is used.
1. Expand Controller in the Project Explorer, expand Hardware AC 800M,
PM860/TP830 and ModuleBus.
2. Right-click on the ModuleBus and choose New Unit and then S 800I/O.
Choose the input unit AI810 and accept the default position (1) by click-
ing on OK. This unit was added to show how an I/O unit is added.
Information on an I/O unit, e.g. AI810, is available in the Online Help
function, by marking the I/O unit in the Project Explorer and then press-
ing the F1 key.
3. Continue configuring your hardware and the “hardware tree” should look
like the one shown in Fig. 58. Only 4 DO814 and 5 DI810 will be con-
nected to I/Os in the project.

Fig. 58 The hardware setup.

3BSE 021 350R201 Rev A 79


5.8 Connecting I/O Interfaces to the Application Chapter 5: Creating a Project – Shop Doors

5.8 Connecting I/O Interfaces to the


Application
Two methods of connecting the I/O signals to the variables are described be-
low.
Method 1
1. Double-click on the I/O module 5 DI810. An editor will appear. Activate
the tab Connections. Place the cursor in the first cell in the column la-
belled “Variable”. We will now add the variable that should be assigned
to the input signal – the photocell.
2. Type N (for program Normal) and observe that the editor fills in the rest.
Press . (period) to move to the next level – the variable in the application.
A list containing all declared variables appears.
3. Double-click on Photo_Cell in the list and the full path will be copied in
(see Fig. 59).

DI810
PM860/TP830

AC 800M controller and S800 I/O

Fig. 59 The variable Normal.Photo_Cell is connected to I/O address IX0.11.5.1 of the


S800 I/O interface.

80 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.8 Connecting I/O Interfaces to the Application

Method 2
1. Delete the text in the first cell and then choose Insert>Insert Path From
Tree. A path selector will be shown, see figure below. This selector re-
sembles the Project Explorer. Expand Normal and double-click on
Motor_2. The full path will be copied in, see Fig. 60.

Alternative way to se-


lect the path selector

Fig. 60 The path selector for connecting variables to the I/O.


2. Save, and close the editor. Note the remark at the bottom of the window.
This gives the data type and the description that we entered when declar-
ing the variable.
3. Double-click on the I/O module 4 DO814 and enter the connections for
the two outputs in the project, see Fig. 61.

3BSE 021 350R201 Rev A 81


5.8 Connecting I/O Interfaces to the Application Chapter 5: Creating a Project – Shop Doors

Fig. 61 The connections of the two motor variables to the I/O.


4. Check the declaration by choosing Editor>Check (or by pressing
Ctrl + B). Close the editor.
You may now inspect the connections to the I/Os in another way, by opening
the program Normal and looking under the column labelled I/O address. Here
you will find the address of the photocell and the motors, see Fig. 62.

Fig. 62 The column labelled I/O address shows how the variables are connected to
the I/Os.
Changes made to the I/O connections in either editor (the programming editor
or the I/O unit editor) will be reflected in both editors. Hence, you may use
whichever of the editors you are most comfortable with.
Your project has now been simulated and the hardware configuration is com-
plete. It is now time to download the project to the controller (of the type which
was selected at the beginning of this project). The next chapter describes the
downloading of a project to various controllers.

82 3BSE 021 350R201 Rev A


Chapter 5: Creating a Project – Shop Doors 5.9 Project Documentation

5.9 Project Documentation


The project including the application, the libraries and controllers, can be
printed out. The Control Builder print-out function uses Microsoft Word (must
been installed) as a word processor, which will automatically be opened when
a print-out is requested.
1. Select in the Project Explorer, File>Documentation... to open the
Documentation dialog box, see Fig. 63.

Fig. 63 The dialog box for selecting the document name and document template.
Select Application in the Project Explorer, and then your application, for
instance, ShopDoors_FBD. Select File>Documentation... to open the
Documentation dialog box, see Fig. 63.
2. Enter (or browse to) an available Word document file name (on the first
row of the dialog box above) to overwrite the selected document file, or
enter (or browse to) a Word template name on the second row to use one
of the available Word templates for your application print out. Check the
checkbox in the “Documentation project constants” (not required) and
then click OK. Microsoft Word will be activated to display the applica-
tion (project constants, data types, programs, etc.) including contents. To
print, select File>Print... in Microsoft Word.
3. Repeat steps 1 and 2, but select Controller (instead of Application). Your
controller configuration will be printed out.

3BSE 021 350R201 Rev A 83


5.9 Project Documentation Chapter 5: Creating a Project – Shop Doors

84 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.1 Introduction

Chapter 6
Downloading and Testing the
Application

6.1 Introduction
This chapter describes the project download procedures for the controllers
AC 800M, AC 800C, SoftController, and Advant Controller 250. It also de-
scribes the firmware upgrade and controller IP address setting procedures.
You must select the way in which to download via Ethernet or via the RS-232
serial port. A configuring tool, IPConfig, which is available after installation
of the Control Builder, is used to simply configure your controller IP address.

6.2 Firmware Upgrade via Serial Line


The controller firmware and the Control Builder must have the same version
numbers. If you are not sure that they are the same, perform the steps in this
section. It will only take a few minutes of your time.
Information. Firmware upgrade can be performed from the Control Builder
via the Ethernet network, see the Control Builder Online Help, but the Serial
line upgrade procedure always functions.
1. Connect the serial cable between the PC running the Control Builder and
the Controller to the tool port as specified in the table below. For the type
of cable, see the appendix "Communication Cable Configuration", on
page 169.

Controller Tool Port Connector Cable Name


AC 800M COM 4 RJ 45 TK212
AC 800C COM 0 RJ 45 TK212
AC 250 Ch 0 DSUB 9-pole 200-CPC

3BSE 021 350R201 Rev A 85


6.2 Firmware Upgrade via Serial Line Chapter 6: Downloading and Testing the Application

2. Select the appropriate COM port for the PC (default COM 1).
Caution. Any program, that may block the selected COM port, must not
be running during the upgrade procedure. If the MMS Server is config-
ured to use the COM port, it must be stopped.
3. Power up the controller.
4. Select from the Windows Start menu (Start>Programs>ABB Industrial
IT>Control IT>Control Builder>Serial Firmware Upgrade). The fol-
lowing dialog box appears.

Fig. 64 The Serial Firmware Upgrade dialog box.


5. In the dialog menu above, select Settings and then the COM port select-
ed in the step 2 above.
6. Click on the button Connect, and then hold down the Init/Reset pushbut-
ton on the controller (for at least 3 seconds)*. Wait about 1 minute until a
message appears. If an error message “Connect failed” appears, you
should check the cables and repeat the steps above (see also in the Serial
Firmware Upgrade Online Help). If the connection is OK, then the fol-
lowing dialog box appears.

* For AC 800C and Advant Controller 250: Set the mode switch to position 0 before
resetting and then set it back to 1 after the reset.

86 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.3 Setting a Unique Controller IP Address

Fig. 65 The Status dialog box appears if the connection to the controller is OK.
7. Select the same Firmware and Control Builder versions, then click on
Upgrade and wait 5 - 10 minutes. The behavior of the LEDs during the
upgrade procedure is described in the Serial Firmware Upgrade Online
Help.
8. Hold down the Init/Reset button on the controller (for at least 3 sec-
onds)*.

6.3 Setting a Unique Controller IP


Address
A unique controller IP address must be set to avoid conflict with other devices
on the Control Network. The procedure described below assigns a unique ad-
dress to the controller via the serial line, without being connected to the net-
work. A configuring tool, called IPConfig, is used to set the IP address.
Information. IPConfig cannot be used for programs running in the PC (the
SoftController, etc.).
1. Connect the serial cable between the PC running the Control Builder and
the Controller to the tool port as specified in the table below. For the type

* For AC 800C and Advant Controller 250: Set the mode switch in position 0 before
the reset and then set it back to 1 after the reset.

3BSE 021 350R201 Rev A 87


6.3 Setting a Unique Controller IP Address Chapter 6: Downloading and Testing the Application

of cable, see the appendix "Communication Cable Configuration", on


page 169

Controller Tool Port Connector Cable Name


AC 800M COM 4 RJ 45 TK212
AC 800C COM 0 RJ 45 TK212
AC 250 Ch 0 DSUB 9-pole 200-CPC

2. Select the appropriate COM port for the PC (default COM 1).
Caution. Any program, that may block the selected COM port, must not
be running during the upgrade procedure. If the MMS Server is config-
ured to use the COM port, it must be stopped.
3. Power up the controller.
4. Start from the Windows Start menu (Start>Programs>ABB Industrial
IT>Control IT>Control Builder>IPConfig). The following dialog box
appears.

Fig. 66 The IP Config dialog box.


5. Click on the button Connect, and then hold down the Init/Reset button
on the controller (for at least 3 seconds)*. Wait up to 1 minute.
If the connection procedure fails, then a time-out message appears.
Check the cables and repeat the above steps.

* For AC 800C and Advant Controller 250: Set the mode switch to position 0 before
resetting and then set it back to 1 after the reset.

88 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.3 Setting a Unique Controller IP Address

If OK, the current IP settings, i.e., the IP Ethernet address and its associ-
ated subnetmask, are displayed in the dialog box, see figure below.

Fig. 67 The IPConf dialog box when the controller is connected.


Information. Enable Autostart should normally be disabled. Read more
about this in the IPConfig Online Help.
6. Enter a unique IP address and subnetmask (obtainable from your Control
Network Administrator). Example: IP address 172.16.255.254 (the de-
fault controller address), and its associated subnetmask, 255.255.0.0.
7. Click on Set IP in the IPConfig dialog box to send the new address to the
controller.
8. Hold down the Init/Reset button on the controller (for at least 3 sec-
onds)*.
9. Connect the network cable between the controller and the Control Net-
work. The port and channel positions are shown in the table below.

Communication
Controller Position Channel
Interface
AC 800M Built-in - CN1
AC 800C CI272 1 or 2 COM 0
AC 250 CIE Anywhere AUI

* For AC 800C and Advant Controller 250: Set the mode switch to position 0 before
resetting and then set it back to 1 after the reset.

3BSE 021 350R201 Rev A 89


6.4 Downloading the Project via Ethernet Chapter 6: Downloading and Testing the Application

Caution. CN2 on the AC 800M controller must not be connected to the


network.
10. You can check the results by using a built-in function in Windows. Open
a Command Prompt window, and enter ping followed by the IP address
set (for example: c:\ping 172.16.255.254). If communication is
established, then a Reply message appears, saying that the controller is
OK, otherwise a time-out message appears.

6.4 Downloading the Project via Ethernet


Contact with the controller has now been established and the project is to be
downloaded. At this stage, you can choose to download via Ethernet or via
RS-232 (described in the next section). The choice is essential for the project.
Information. This section is valid for all controllers except the SoftController,
which is dealt with in Section 6.6 on page 101.
Information. If the controller is to be connected to a PC via a switch or a hub,
then a straight-through Ethernet cable should be used. If there is a direct con-
nection between the controller and the PC, then use a cross-over Ethernet ca-
ble.
Caution. The PC must have the same NetID and subnetmask as the controller.
For example, if the controller has the IP address 172.16.X.Y, then the PC must
have the IP address 172.16.P.Q. The digits X, Y, P and Q are of no significance
in this case. For further information, see “Communication Cable Configura-
tion” on page 169.
Tip. You can find the PC (Control Builder) System identity (IP address) in the
About... dialog box of the Control Builder.
1. Start the Control Builder and open the project to be downloaded.
2. In the Project Explorer, mark Controller*, right-click and select Set Sys-
tem Identity, see figure below.

Fig. 68 The Set System dialog box.


* For Control Builder Standard and Professional: Expand Controllers and then
Controller_1 (or the controller name given).

90 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.4 Downloading the Project via Ethernet

3. Enter the same IP address as the controller address (for example:


172.16.255.254).
4. In the Project Explorer, expand Hardware until you find the Ethernet
hardware. Double-click on 1 Ethernet if an AC 800M controller is to be
connected, or 0 Ethernet if an AC 800C or Advant Controller 250 con-
troller is to be connected, see table below.

Channel
Controller
No.
AC 800M 1
AC 800C 0
AC 250 0

5. Enter the same IP address and subnetmask as given in the IPConfig.


6. Click on Apply/Close to save and close the list. The Ethernet channel is
now set to the appropriate IP address.
Caution. The network cable must not be connected to CN2.
7. Save the project.
8. Select in the Project Explorer, Tools>Download and go online to send
the new IP address (and your project) to the controller. The IP address is
only valid after a controller reset. The dialog box below appears.
Tip. Information about the downloading procedure is shown in the mes-
sage pane.

3BSE 021 350R201 Rev A 91


6.4 Downloading the Project via Ethernet Chapter 6: Downloading and Testing the Application

Fig. 69 The Online Analysis dialog box (for Control Builder Professional). The radio but-
tons for warm and cold restart are available if the application is to be changed. No
download will take place if no changes are made to the application.
Possible communication errors will be reported in the “Remarks” column
of the Online Analysis dialog box.
9. Click on Continue to download the application and close the Online
Analysis dialog box.

92 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.5 Downloading the Project via RS-232

6.5 Downloading the Project via RS-232


Creating a PPP Connection
This procedure describes the downloading via a serial line connection between
the controller and the PC running the Control Builder. Connection to a network
is not required. Note that if you decide to download the project via RS-232,
then you must continue to download via RS-232. Changing to the download-
ing procedure via Ethernet requires special settings (see section 6.4).
It is presumed that the correct firmware is installed in the controller (see sec-
tion 6.2).
Caution. This procedure does not work for Advant Controller 250 equipped
with PM253 or PM254.
1. Use the IPConfig tool (described in section 6.3) to download the control-
ler IP address factory settings (click on the button Restore Factory Set-
tings in the IP Config dialog box, see Fig. 66 on page 88). This will
assign the IP address 192.168.255.254 to the PPP channel.
2. Connect a serial cable between the PC running the Control Builder and
the tool port, see table on page 85.
3. Power up the controller (the Ethernet network must not be connected).
A new PPP connection is now to be added to the PC.
4. Select from the Windows Start menu (Start>Settings>Network and
Dial-up Connections>Make New Connection). The Welcome dialog
box of the Network Connection Wizard appears.

Fig. 70 The Welcome dialog box of the Network Connection Wizard.

3BSE 021 350R201 Rev A 93


6.5 Downloading the Project via RS-232 Chapter 6: Downloading and Testing the Application

5. Click on Next, and in the new dialog box, check the radio button as in the
figure below.

Fig. 71 Selecting the Network Connection Type.


6. Click on Next and check the radio button as in the figure below.

Fig. 72 Selecting the controller to be a guest.


7. Click on Next, and select the device as in the figure below.

94 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.5 Downloading the Project via RS-232

Fig. 73 Selecting a device.


8. Click on Next, and check the radio button as in the figure below.

Fig. 74 Selecting a connection for all users.


9. Click on Next, and enter any name for the connection. The connection is
called PPP in the figure below.

3BSE 021 350R201 Rev A 95


6.5 Downloading the Project via RS-232 Chapter 6: Downloading and Testing the Application

Fig. 75 Entering a connection name.


10. Click on Finish. The network connection is now complete and the system
will make an attempt to connect the PC to the controller. When the dialog
box below appears, click on Cancel.

Fig. 76 Click on the Cancel button to stop the connection attempt.


11. Select from the Windows Start menu (Start>Settings>Network and
Dial-up Connections).

96 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.5 Downloading the Project via RS-232

12. Select the new connection (named in step 9), right-click and select Prop-
erties. The dialog box below appears.

Fig. 77 Setting the properties of the new PPP connection.


13. Click on Configure to open the Modem Configuration dialog box. Fill in
exactly as in the figure below and click OK.

Fig. 78 Modem Configuration settings.

3BSE 021 350R201 Rev A 97


6.5 Downloading the Project via RS-232 Chapter 6: Downloading and Testing the Application

14. Click on the tab Networking in the PPP-Default Properties dialog box,
see Fig. 77.
15. Mark Internet Protocol TCP/IP, and in the dialog box click on Proper-
ties. The dialog box below appears.

Fig. 79 The Internet Protocol (TCP/IP) Properties dialog box.


16. Click on the button Advanced. The dialog box below appears.

Fig. 80 The Advanced TCP/IP Settings.

98 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.5 Downloading the Project via RS-232

17. Uncheck the box Use default gateway on remote network and then
click OK.
A PPP configuration has now been created and configured on your PC.
The new connection must be tested. The cable must be connected be-
tween the PC and the controller and the latter be turned on.

Establishing Communication
1. Select the new PPP connection name from the Windows Start menu (PPP
or the name you gave it in step 9) Start>Settings>Network and Dial-up
Connections>PPP.
If you get an OK message, then communication with the controller has
been established and the PC will be given an IP address by the controller.
Tip. Look at the bottom right corner of the Windows desktop toolbar.
Right-click on the PPP icon (a symbol with two PCs) to get information
on the connection status.
2. Start the Control Builder. The MMS Server should automatically start.
3. In the MMS Control Panel, select Setup>PPP Setup. A dialog box ap-
pears, see the figure below.

Fig. 81 The PPP Configuration dialog box.


4. In the dialog box, click Add to open another dialog box, see the figure
below.

3BSE 021 350R201 Rev A 99


6.5 Downloading the Project via RS-232 Chapter 6: Downloading and Testing the Application

Fig. 82 The dialog box for adding a PPP connnection.


5. Select the newly created PPP connection and click on Select. The former
dialog box (Fig. 81) appears with information on the selected PPP con-
nection, see figure below.

Fig. 83 The settings for the selected PPP connection.


6. Click on OK.
Tip. In the menu of the MMS Server Control Panel, select View>
PPP Status, to get information on the PPP connection.
So far, the PPP connection has been created and the connection to the
controller has been established, and the MMS Server knows about this
connection. The next step is to establish communication with the Control
Builder.
7. In the Control Builder, open the project (to be downloaded), mark your
controller, right-click and select System Identity. The dialog box below
appears. Enter the IP address 192.168.255.254.

100 3BSE 021 350R201 Rev A


Chapter 6: Downloading and Testing the Application 6.6 Downloading to a SoftController

Fig. 84 Setting the system identity.


8. Save the project and download it (see steps 8 and 9 on page 91).

6.6 Downloading to a SoftController


Downloading to SoftController Internally in the PC
1. Find the system identity of the PC running the SoftController.
2. In the Project Explorer right-click on Controller* and set the controller
System Identity to the IP address of the PC + “:2”.
Example
PC IP address: 172.16.12.12
SoftController system identity: 172.16.12.12:2
3. Download your project to the SoftController and go online.

Downloading to SoftController via an Ethernet Network


The downloading procedure from a PC running the Control Builder to a PC
running the SoftController (via Ethernet) is the same as internal downloading
in a PC, see above.
Information. The TCP/IP protocol must be installed before downloading. The
installation procedure is described in the Control Builder Online Help func-
tion.

Downloading to SoftController via a Serial COM Port


The downloading procedure from a PC running the Control Builder to a PC
running the SoftController (via a COM port) is the same as internal download-
ing in a PC, see above.
Information. The PPP protocol must be installed for one of the COM ports of
the PC running the Control Builder and on the PC running the SoftController
before downloading. The protocol installation procedure is described in the
Control Builder Online Help function.
* For Control Builder Standard and Professional: Expand Controllers and then
Controller_1 (or the controller name given)

3BSE 021 350R201 Rev A 101


6.7 Testing the Program Online Chapter 6: Downloading and Testing the Application

Information. The serial downloading procedure is slow, which means that it


can take a long time to download a program.

6.7 Testing the Program Online


This section describes the testing of the example ShopDoors using the
AC 800M controller, but the principles can be applied to any application.
The forcing function will be used to activate/deactivate an I/O. Note that the
forcing function is disabled in simulation mode.
1. Open the online editor for the program Normal and for the module DI810.
Check the box in the column Forced for the inputs. Change the value of
the variable Photo_Cell to 1 and then directly back to 0 and inspect
the values for the motors (they will change to 1 for five seconds and then
back to 0). We have previously changed the values for the variable
Photo_Cell in the online editor for the program Normal and seen that
the motors start and stop. Now, we are using the I/Os to control the
motors. (See Fig. 85.)

Fig. 85 The status of the photocell and the motors can be forced in the I/O editor.
2. Close all editors.

102 3BSE 021 350R201 Rev A


Chapter 7: Structured Data Types 7.1 Declaring a Structured Data Type

Chapter 7
Structured Data Types

When dealing with projects with several I/O connections it may be difficult to
gain an overview of the variables and their I/O connections in the project.
There is an alternative method of declaring variables, which will be described
below. Tutorial_01 has been changed to illustrate the use of structured data
types. This new example is called Tutorial_01_Struct.
Information. It is assumed that you have worked through the chapter "Control
Builder - A Quick Look", on page 41. The ST code pane is used to illustrate
the variables.
The program is written using four different programming languages, as in
Tutorial_01.

7.1 Declaring a Structured Data Type


1. Open the project Tutorial_01_Struct.
2. In the Project Explorer, expand Application and Data Types. Four data
types have been declared in the example, see Fig. 86.

Fig. 86 Four data types have been declared in the Project Explorer.

3BSE 021 350R201 Rev A 103


7.1 Declaring a Structured Data Type Chapter 7: Structured Data Types

3. Double-click on Panel_Type to open the variable editor for this type, see
Fig. 87.

Fig. 87 The components in the data type Panel_Type.


Four components are declared in Panel_Type. They are all Boolean.
4. Close the editor.
5. Double-click on Tank_Type in the Project Explorer to open the second
data type, see Fig. 88.

Fig. 88 The components in the data type Tank_Type.


Six components are declared in Tank_Type. Four are Boolean, one is real and
one is of data type Temperature_Limit_Type. This means that you can nest a
data type in another data type.
6. Close the editor.
7. Examine the data types, Temperature_Limit_Type and Valve_Type.

104 3BSE 021 350R201 Rev A


Chapter 7: Structured Data Types 7.1 Declaring a Structured Data Type

8. Close the variable editors. Expand Programs and double-click on Nor-


mal in the Project Explorer. The program editor appears, see figure be-
low. Select the tab ST_Code.

Fig. 89 The ST_Code tab.


There is a set of variables for each program editor tab. For example, the
variables for Tank21 belong to the ST code tab, Tank22 belong to the IL
code tab, etc. The variable Tank21 is of data type Tank_Type. Look at the
arrow in the code pane of Fig. 89. Using the period ’.’ notation the vari-
able is easily defined. Entering the variable HL (High Level) of type
TLim of Tank21 is described in the next step.

3BSE 021 350R201 Rev A 105


7.1 Declaring a Structured Data Type Chapter 7: Structured Data Types

9. Place the cursor on an empty line in the code pane. Enter Tank21.
As soon as the period ‘.’ is entered, a list box appears with the already
declared components of Tank21, see figure below.

Fig. 90 The list box with the already declared components appears when the period is
entered.
Double-click on TLim. Enter a new period ’.’ and the next available compo-
nent appears.
10. Double-click on HL in the list box and the result on the line will be
Tank21.TLim.HL.
11. Close the program editor, but do not save the changes. It is now time to
connect the variables to the I/O.
Information. The following three figures show the other tabs in the project.

106 3BSE 021 350R201 Rev A


Chapter 7: Structured Data Types 7.1 Declaring a Structured Data Type

Fig. 91 The FBD_Code tab in the project Tutorial_01_Struct.

3BSE 021 350R201 Rev A 107


7.1 Declaring a Structured Data Type Chapter 7: Structured Data Types

Fig. 92 The IL_Code tab in the project Tutorial_01_Struct.

108 3BSE 021 350R201 Rev A


Chapter 7: Structured Data Types 7.1 Declaring a Structured Data Type

Fig. 93 The LD_Code tab in the project Tutorial_01_Struct.

3BSE 021 350R201 Rev A 109


7.1 Declaring a Structured Data Type Chapter 7: Structured Data Types

Connecting Variables to I/O


1. In the Project Explorer, expand Hardware AC 800M, PM860/TP830 and
then ModuleBus and finally double-click on module 6 DI810. The hard-
ware editor for the module appears.
2. Position the cursor in an empty variable field, e.g. IX0.11.6.1. Click on
the button Insert Path From Tree in the tool bar. Expand Normal and
then Tank21 in the tree, see figure below.

Path selector

Fig. 94 The tool Insert Path.


3. Double-click on the component HHL. The variable Normal.Tank21.HHL
will be connected to the I/O signal IX0.11.6.1.
4. Close the editors, but do not save the changes.

The Variable Editor in Simulation Mode


The appearance of the variables in the pane of the program editor will change
noticeably when you change to Simulation mode (compare with Fig. 89 on
page 105).
1. Start simulation of the project (Tutorial_01_Struct) and open the Pro-
gram editor of the program type Normal.

110 3BSE 021 350R201 Rev A


Chapter 7: Structured Data Types 7.1 Declaring a Structured Data Type

2. Expand the variables in the Variables pane, see figure below.

Fig. 95 The Variables pane in simulation mode. Variable Tank21 and some other
variables are expanded.
Note the excellent overview, particularly the variable Tank21 with its nested
TLim of data type Temperature_Limit_Type.
3. Close the project, but do not save the changes. You should now have
gained an idea of how useful structured data types can be, and how to use
them in your project.

3BSE 021 350R201 Rev A 111


7.2 Predefined I/O Data Types Chapter 7: Structured Data Types

7.2 Predefined I/O Data Types


Variables connected to I/Os, can be of one of the simple data types: bool, dint,
dword or real, or one of the system I/O data types. The latter are very useful,
but have not been discussed so far in this manual.
Connecting a channel to a simple data type is often sufficient when the appli-
cation program only requires access to the channel value. More advanced ap-
plications, such as detecting forcing of a channel or validity of an analog
channel, require the use of the I/O data types.
The following I/O data types are defined: BoolIO, DIntIO, DWordIO and
RealIO. Two of them are described below.
Tips. You can read more about data types in “I/O Configuration” in the Con-
trol Builder Online Help function.
BoolIO Data Type

Name
Name.Value
Name.IOValue
Name.Forced

Fig. 96 The components of BoolI/O data type. “Name” is the variable name.
The components are as follows:
• Value
This is the value used by the application.
Information. The other components below must not be changed in the ap-
plication.
• IOValue
This is the value of the I/O channel. IOValue and Value are equal if the chan-
nel is not forced.
• Forced
Specifies whether or not the channel is forced.

112 3BSE 021 350R201 Rev A


Chapter 7: Structured Data Types 7.2 Predefined I/O Data Types

RealIO Data Type


This data type is more complex with components on several levels.

Name
Name.Value
Name.IOValue
Name.Forced
Name.Status
Name.Parameters
Name.Parameters.Max
Name.Parameters.Min
Name.Parameters.Inverted
Name.Parameters.Fraction
Name.Parameters.Unit
Fig. 97 The components of the RealIO data type.
The components are as follows:
• Value
This is the value used by the application.
• IOValue
This is the value of the I/O channel. IOValue and Value are equal if the chan-
nel is not forced.
• Forced
Specifies whether or not the channel is forced.
• Status
If the channel status is not OK, then Status (dInt) can take any of the four
negative values representing underflow (-4029), overflow (-4030), unit er-
ror (-4031) or channel error (-4032).
• Parameters
The measuring range.

3BSE 021 350R201 Rev A 113


7.2 Predefined I/O Data Types Chapter 7: Structured Data Types

114 3BSE 021 350R201 Rev A


Chapter 8: A Project Using SFC Language 8.1 The Process

Chapter 8
A Project Using SFC Language

The example Tutorial_03, on the ControlIT for AC 800M/C CD-ROM, is a project


using the Sequential Function Chart (SFC) editor to demonstrated the behavior of
the SFC programming language. A “Hot drink vending machine” process is sim-
ulated. The SFC features when programming sequences are obvious in this kind
of process.

8.1 The Process


The process diagram and the control panel of the vending machine are shown in
the figure below. Pressing one of the push-buttons on the control panel starts heat-
ing of the water and mixing of the ingredients.

Fig. 98 The process diagram and the control panel for the vending machine.

3BSE 021 350R201 Rev A 115


8.2 The Variables and the Code Chapter 8: A Project Using SFC Language

8.2 The Variables and the Code


To inspect the variables and the code (on the program level), expand
Application_1 and Program in the Project Explorer and then double-click on
Program2, see Fig. 99. A number of variables and two function blocks (open the
tab Function Blocks) are declared in Program2.
The drink is prepared in five steps. By double-clicking on, for instance, the step
Selection, the actions inside the step will be shown, and the code for the selected
action will be displayed in the right field of the code editor, see Fig. 99. The action
code is written using the ST editor and will be executed as long as the transition
condition below the step is not fulfilled.
Tip. Click on the transition to see the transition conditions in the right field of the
code editor.

Action
Program in
Selection_N

Transition

Action tabs

Fig. 99 The variables and code in Program2.

116 3BSE 021 350R201 Rev A


Chapter 8: A Project Using SFC Language 8.3 The SFC Program in Simulation Mode

Information. A step may have three actions, P1, N and P0. P1 is executed only
once, upon entering the step, N is executed as long as the step is active and finally,
P0 is executed only once, just before leaving the step. Double-click on the step
Preparation, and note that this step has the actions P1 and N.

8.3 The SFC Program in Simulation Mode


Proceed as follows to start the simulation of the process (making coffee).
1. Start simulation and open Program2.
2. Set the variables (in the variables pane) Level_Water_OK and
Level_Coffee_OK to true.
3. Set the variables Sel_Coffee and Start to true. The process should now be
running. Note the execution of the different steps in the program.

Fig. 100 The program in simulation mode. The process is waiting for the variable Start to
be set to true (the push-button Start on the control panel).
4. After examination, stop the simulation and close the program.

3BSE 021 350R201 Rev A 117


8.3 The SFC Program in Simulation Mode Chapter 8: A Project Using SFC Language

118 3BSE 021 350R201 Rev A


Chapter 9: Re-use of Code 9.1 Creating a Library Folder

Chapter 9
Re-use of Code

Predefined function block types (from the library) have been used in earlier chap-
ters. This chapter describes the procedure for creating a library (MyLibrary) and
a user-defined function block type. The function block type (called MyFBType)
is created using two predefined function blocks from the system library. An in-
stance of this function block type is then used to test its function.
The procedures described in this chapter can be used with Control Builder Basic,
but you can only use a user-defined function block type in one project. You cannot
create a library folder and then add a user-defined function block type to that fold-
er.

9.1 Creating a Library Folder


The procedures described in this section can only be performed using the Control
Builder Standard or Professional.
A library folder will be created in this section. The folder can be saved and stored
together with the other libraries, which are delivered with the system. The folder
can be filled with user-defined function block types, control module types etc.,
which can then be used in various projects.
To create a library folder (MyLibrary) proceed as follows.
1. Mark Libraries in the Project Explorer, right-click and select New Library.
A dialog box for naming the new library folder appears.
2. In the dialog box, enter the name MyLibrary and click OK. Click on
“Browse” if a path for the folder other than the default is desired.
3. Expand MyLibrary. Three icons for data types, function block types and con-
trol module types will be automatically created in MyLibrary, see Fig. 101
on page 120. You can now create your own function block types to be stored
in the library and instances of them can be used in applications.

3BSE 021 350R201 Rev A 119


9.2 Creating a Function Block Type Chapter 9: Re-use of Code

Fig. 101 MyLibrary folder with the three subfolders for storing different types of data, func-
tion blocks and modules.
4. Save MyLibrary.

9.2 Creating a Function Block Type


In this section a simple function block type called MyFBType will be created. It
consists of two predefined (standard) types, one function type and one function
block type. MyFBType should start a timer of the type TOn if the input parameters
A, B and C are all true. The output parameter Q will be true if the input parameters
are true and the preset delay time of TOn has elapsed, see Fig. 102 on page 121.
There are two examples on the ControlIT for AC 800M/C CD-ROM using the
FBD and the ST languages. The FBD editor will be used to program the code in
this section. Follow the steps below to create MyFBType.
Information. To change to the appropriate code editor, refer to "Changing the Pro-
gramming Language", on page 64.
1. In the Project Explorer, mark Function Block Types (in MyLibrary) and
right-click. Select New Function Block Type.... In the dialog box, name the
new function block type MyFBType and click OK.

120 3BSE 021 350R201 Rev A


Chapter 9: Re-use of Code 9.2 Creating a Function Block Type

Fig. 102 MyFBType is defined below Function Block Types in MyLibrary.


2. Mark MyFBType, right-click and select Editor. The program editor for
MyFBType appears.
3. Select the tab Parameters in the declaration editor and enter the parameters,
see figure below.

Fig. 103 The parameters for MyFBType.


4. Activate the code pane. Right-click and select Insert Function/Function
Block. A dialog box appears.
5. Expand SystemLib in that dialog box, and mark the function AND. Below
Properties at Size:, enter 3 and click on Apply. An instance of the function
AND with three inputs appears in the code pane. Note that the dialog box
Insert Function/Function Block remains open. Find and select the function
block TOn and click OK. The dialog box Create Element appears. Click No
and the two function blocks appear in the code pane.

3BSE 021 350R201 Rev A 121


9.2 Creating a Function Block Type Chapter 9: Re-use of Code

Tip. Look below the tab Function Blocks in the Declaration pane. The block TOn
is now automatically declared.
6. The graphical connection between the two blocks will now be created. Mark
the input In on the function block TOn and place the cursor close to the out-
put of the function AND. Right-click and select Connect to previous selec-
tion (or press Ctrl+left-click). A graphical connection between the two
blocks will be created, see Fig. 104.
7. The five input and output parameters are to be connected to the function and
the function block. Mark an input or output, right-click, select Connect and
enter the name of the parameter. Repeat this for all five connections, see Fig.
104.

Code pane zoom

Fig. 104 The FBD code in the code pane of MyFBType. Use the zoom buttons in the tool
box to zoom in and out of the code pane.
8. Choose Editor>Apply (or press Ctrl+W) in order to check the code.
9. Save the project. MyFBType will be saved in MyLibrary. MyFBType can
now be used as instances in any application.
Tip. To show the path of MyLibrary, right-click and select Properties.

122 3BSE 021 350R201 Rev A


Chapter 9: Re-use of Code 9.3 Testing Function Block Type MyFB

9.3 Testing Function Block Type MyFB


To test the function block type MyFB, we will use an instance of the type in a pro-
gram, connect variables, and test it in simulation mode.
1. In the Project Explorer, expand Applications and then Programs.
2. Mark the program Normal, right-click and select Editor Enter.
3. In the Variable Declaration pane, declare the in- and output variables, see
Fig. 105.
4. Position the cursor in the code pane and check that the FBD editor is selected
(right-click on the code tab and select Change Language, and then click the
radio button Function Block Diagram (FBD)).
5. Right-click in the code pane and select Insert Function/Function Block.
Find MyLibrary and expand it. Mark MyFBType and accept the proposed
name MyFBType_1 and click OK. An instance of MyFBType is now dis-
played in the editor. In the next step, some variables will be connected to the
function block.
6. In the code pane, mark a function block input or output, right-click and select
Connect.... In the dialog box, enter the name of the variable and click
Apply/Next (or OK). Repeat this for all the variables, see Fig. 105.

Fig. 105 An instance of MyFBType is connected to variables for testing.

3BSE 021 350R201 Rev A 123


9.3 Testing Function Block Type MyFB Chapter 9: Re-use of Code

7. Press Apply, check and save the program and close the program editor.
8. In the Project Explorer, expand Applications, Program and finally Normal.
The instance of MyFBType is now visible. Expand the instance and the in-
stance of the predefined function block TOn appears in the tree, see Fig. 106.

Fig. 106 MyFBType and the predefined function block instances used are shown in the tree
structure.
9. To start the simulation, select Tools>Simulate Project in the Project Ex-
plorer. In the Simulate Analysis window, click on Continue. In the Project
Explorer, double-click on the program Normal to open the Online editor, see
Fig. 107.
Tip. A function block type created with the ST editor can be used as an in-
stance in the FBD editor and vice versa, or in fact, in any other of the five
editors. In the examples on the ControlIT for AC 800M/C CD-ROM the two
types MyFB_ST and MyFB_FBD can be used for testing.

124 3BSE 021 350R201 Rev A


Chapter 9: Re-use of Code 9.3 Testing Function Block Type MyFB

Fig. 107 The Online editor in simulation mode. Use the zoom buttons in the tool box to
zoom in and out of the code pane.
10. Change the variable value Time_input to 10 s and set A, B and C to true.
After 10 seconds the output variable Q will be true.
11. Close the Online editor and stop the simulation.
Tip. You can set a password to protect MyLibrary, see the Control Builder Online
Help.

3BSE 021 350R201 Rev A 125


9.3 Testing Function Block Type MyFB Chapter 9: Re-use of Code

126 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules

Chapter 10
Creating Control Modules

This chapter describes the procedure for creating a Control Module type. It
(MyModuleType) simulates a traffic-light. Instances of the Control Module type
are then used in a Single Control Module called TrafficLight, which simulates a
crossroads with four interacting traffic-lights.
Note. Control Builder Professional must be used.

This project has been created using both the FBD editor (TrafficLight_FBD) and
the ST editor (TrafficLight_ST) in the examples on the ControlIT for AC 800M/C
CD-ROM. Only the former is explained in detail in this chapter, but the ST pro-
gram screen dumps are shown.
Information. Each folder name and Control Module has a suffix determined by
the programming language selected. The suffix is omitted in this chapter.

MyModuleType
Interaction code

Single Control Module


“TrafficLight”

MyModuleInstance MyModuleInstance
Interaction code Interaction code

MyModuleInstance MyModuleInstance
Interaction code Interaction code

Interaction code

Fig. 108 One user-defined Control Module type and four instances of it are used in this
project.

3BSE 021 350R201 Rev A 127


10.1 About Control Modules Chapter 10: Creating Control Modules

10.1 About Control Modules


In Control Builder Professional the IEC 61131-3 POU (Program Organization
Units) have been extended with Control Modules, a powerful concept for packag-
ing reusable control solutions. They include program code, visual representation,
interaction, data acquisition, and communication, etc.
The use of Control Modules makes it possible to program in an efficient, object-
oriented way. A Control Module has the following main key advantages:
• The Control Modules can have graphical presentation of the connections be-
tween them.
• The Control Module has automatic optimal execution order, without unneces-
sary delay.
Information. The graphical presentation is intended for testing and trouble-
shooting, not for operator system substitution.
• Data flow between Control Modules is defined by interconnecting their param-
eters, graphically or via variables.
• A Control Module can be programmed using any of the five programming lan-
guages.
Information. If a Control Module is not to be reused (i.e., instances cannot be cre-
ated) a Single Control Module is recommended.
For more information, read the chapter Application in the AC 800M/C Control
Software User’s Guide.

10.2 The Project


MyModuleType should have the following functions.

Init
Lights.Red
TOn1 Lights.Yellow
TOn2 Lights.Green

Fig. 109 MyModuleType with its parameters and graphics.


Init=true activates the Control Module function. TOn1 is the green light duration
timer (the reverse of the red light duration timer) and TOn2 is the yellow light du-

128 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.3 Creating a Data Type for the Control Module Parameters

ration timer. The table below shows the required sequence of two traffic-lights lo-
cated at right-angles to each other at a junction, see Fig. 118 on page 137.

Traffic Light 1 Traffic Light 2


Step
Red Yellow Green Red Yellow Green
1 × ×
2 × × ×
3 × ×
4 × × ×
5 × ×

10.3 Creating a Data Type for the Control


Module Parameters
A data type called ‘Traffic_Light’ with three components; Red, Yellow and
Green, will be used with the Control Module to simplify the parameter connec-
tions (and to illustrate the use of a data type).
1. In the Project Explorer, expand both Libraries and MyLibrary and mark
Data types. Right-click, and name the new data type Traffic_Light.
Mark Traffic_Light, right-click and select Editor Enter. Enter the three
parameters, see Fig. 110.

Fig. 110 The three parameters in the variable Traffic_Light.


2. Check, save the project and close the editor.

3BSE 021 350R201 Rev A 129


10.4 Creating MyModuleType Chapter 10: Creating Control Modules

10.4 Creating MyModuleType


1. In the Project Explorer expand Libraries and MyLibrary. Mark Control
Module types, right-click and name the Control Module type
MyModuleType.

Fig. 111 MyModuleType is defined below Control Module types in MyLibrary.


Tips. Generally, a green icon in the Project Explorer indicates that it repre-
sents a type and a blue icon indicates that it represents an instance.
2. Mark MyModuleType, right-click and select Editor Enter. The program ed-
itor for MyModuleType appears.
3. In the declaration pane, select the tab Parameter and enter the parameters,
see Fig. 112. The parameter Lights is of data type Traffic_Light, which was
declared in the preceding section.
4. Check that the FBD editor is selected in the code pane (click in the code
pane, right-click to check that FBD is selected). The code for MyModule-
Type is to be programmed. The code will be divided into 3 sections, using
“page breaks”.
5. Create the following functions using some predefined functions and function
block instances, see figure below. Creating different instances and making
the connections were described in the section "Testing Function Block Type
MyFB", on page 123.

130 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.4 Creating MyModuleType

Fig. 112 The first part (page 1) of The FBD program code for MyModuleType. (There are 2
more pages). The >> sign after the variable name indicates connection with another page.
6. Create the next page of the FBD code using the page selector, see Fig. 113.
To make a page break, insert the first element, mark it and select
Tools>Page Layout>Insert Page Break. The page break will be set above
the marked element. The FBD editor now contains 2 pages.

3BSE 021 350R201 Rev A 131


10.4 Creating MyModuleType Chapter 10: Creating Control Modules

Page selector

Fig. 113 The second page of The FBD program code for MyModuleType.
7. Create the last functions for MyModuleType on page 3, see Fig. 113.

8. Check, save and close the editor. It is now time to create the graphics (the
traffic-light with red, yellow and green signals) which is placed in the Con-
trol Module type.

132 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.5 Designing the Graphics for MyModuleType

FB Declaration and Program Code in Structured Text (ST)


The function block declaration and the program code to be created when using the
ST editor should be as in Fig. 114.

Fig. 114 The MyModuleType created using the ST code editor.

10.5 Designing the Graphics for


MyModuleType
The traffic-light consists of a gray colored rectangle with three circles. Using
three Boolean parameters of data type Traffic_Light, the circles can change colors
(gray to red, gray to yellow or gray to green).
1. In the Project Explorer, mark MyModuleType, right-click and select CMD
Editor. The CMD (Control Module Diagram) editor for MyModuleType
will be opened.

3BSE 021 350R201 Rev A 133


10.5 Designing the Graphics for MyModuleType Chapter 10: Creating Control Modules

2. Draw a rectangle and three circles using the tools in the tool box on the left
side of the editor, see Fig. 115.
Tip. If you use the Duplicate function when making the second and third cir-
cles, they will be the same size.

Fig. 115 The traffic-light graphics in MyModuleType.


3. Mark the rectangle (click on the edge of the rectangle), right-click and then
click on Color. Select line color -3 and area color 3 and click OK. The rec-
tangle will be filled with gray.
Tip. Click on the tool button (Home) if you get lost in the CMD editor
and cannot find the traffic-light.
4. Mark the upper circle, right-click and then click on Color. In the dialog box
which appears, see figure below, set the line color to -3 and the area color
to 4.
5. Click on More to open a dialog box to enter colors to be activated by the pro-
gram. Enter the text, see Fig. 116, and click OK. The upper circle will be
gray, but will be red if the variable is set to true by the program.

134 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.6 Constructing the Crossroads

Fig. 116 The dialog box for entering colors and variable names for an object where the color
is to be changed by the program.
6. Repeat this for the middle circle and set the alternative area color to yellow
and finally set the lower circle alternative area color to green.
7. To ensure that the Control Module type works properly, test it as we did with
MyFBType.

10.6 Constructing the Crossroads


MyModuleType will be used to control the traffic at a crossroads. Four instances
of the Control Module type will be used in a Single Control Module.
1. In the Project Explore, expand Applications and mark Control Modules.
Right-click and select CMD Editor. The window with the CMD editor ap-
pears.
2. Right-click in the CMD editor window and select Open Control Module. A
checkered pattern indicates that the Control Module is open for graphical
work. The window is the working area for all Control Module instances
which are created in the application. A Single Control Module is to be cre-
ated and in this module we will place four instances of MyModuleType (the
traffic-lights) together with simple graphics with two rectangles representing
the crossroads.
3. In the menu of the CMD editor window, select Create>New Empty Control
Module>Single Control Module. The cursor changes to a cross indicating
that the boarder of the Single Control Module is to be defined.
4. Holding the mouse button down, drag the mouse to draw a rectangle. Upon
releasing the mouse button, a dialog box appears requesting a name for the
Single Control Module. Name it MySingleModule_1 and click OK.
5. Close the CMD editor and open it instead from the Project Explorer.

3BSE 021 350R201 Rev A 135


10.6 Constructing the Crossroads Chapter 10: Creating Control Modules

Tip. MySingleModule_1 is shown below Control Modules in the Project Ex-


plorer tree structure.
6. Mark MySingleModule_1, right-click and select CMD Editor. Only the Sin-
gle Control Module area appears in the CMD editor window and four in-
stances of MyModuleType are to be placed appropriately in this area.
7. In the CMD editor menu select Create>Control Module.... In the dialog box
mark MyLibrary and MyModuleType. Name the instance
MyModuleInstance_1. Do not check the check box Connect Parameters, as
this will be done later. Click on OK. The cursor will change to a cross.
8. Drag the mouse (with the button held down) to specify the size of the in-
stance. MyModuleInstance_1, with visible boarders, will be displayed,
when the mouse button is released, see figure below.

Fig. 117 ModuleInstance_1 shown in MySingleModule.


9. Repeat steps 7 and 8 three times to create MyModuleInstance_2, _3, and _4.
Tip. The Duplicate function (mark* the instance, right-click and select
Duplicate) can be used to create 4 identical instances. The instances will
automatically be named ModuleInstance_2, ModuleInstance_3, etc.
Tip. The four Control Module instances are now visible in the tree structure
of the Project Explorer (together with their function block instances).
10. Position the four instances, see Fig. 118, and add the crossroads (using two
rectangles), see the figure below (you do not need to “paint” the road as in
the figure).

* The border of the Control Module is normally not visible. To make it visible, hold down
the mouse button and draw the mouse, diagonally over the CMD editor area, and then
release the mouse button.

136 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.7 Declaring Variables for the Single Control Module

MyModuleInstance_1 MyModuleInstance_2

MyModuleInstance_4 MyModuleInstance_3

Fig. 118 The crossroads with the four traffic-lights.


11. Close the CMD editor, save and check the program.

10.7 Declaring Variables for the Single


Control Module
The parameters of the four Control Module instances are to be interconnected us-
ing variables. The variables are declared on the application level (the variables
will be available for all objects in the application) or on the module level (the vari-
ables will only be available for objects in the Single Control Module). The latter
is chosen in this application. The variables can also be presented graphically, us-
ing graphical connections between the module instances in the Single Control
Module, or they can be declared in the conventional way by declaring them in the
declaration pane. The latter alternative is also chosen in this application.
1. In the Project Explorer, mark MySingleModule_1, right-click and select Ed-
itor. The program editor for the Single Control Module appears.

3BSE 021 350R201 Rev A 137


10.8 Writing the Interaction Program Chapter 10: Creating Control Modules

2. Select the tab Variables in the Variables declaration pane and enter the var-
iables, see figure below. The variables will be connected to the parameters
of the Control Module instances in a later section.

Fig. 119 The variables to be connected to MySingleModule_1.


3. Check, save and close the program editor.

10.8 Writing the Interaction Program


The program governing the interactions between the four Control Module in-
stances is to be written in the code pane. The programming procedures using the
FBD editor will be described, and the ST code is only shown as screen dumps.
1. In the Project Explorer, mark MySingleModule_1, right-click and select
Editor Enter.
2. In the code pane, insert the function blocks and connect the variables, see
Fig. 120.

138 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.8 Writing the Interaction Program

Fig. 120 The interaction program code for MySingleModule_1.


3. Check, save the application and then close the editor.

3BSE 021 350R201 Rev A 139


10.9 Connecting the Variables to the Instance Parameters Chapter 10: Creating Control Modules

Program Code in Structured Text (ST)


The program code for the interaction program created using the ST editor should
be as in Fig. 121.

Fig. 121 The interaction program created using the ST code editor.

10.9 Connecting the Variables to the


Instance Parameters
The parameters of the function blocks used must be connected to the variables de-
clared in the Variables editor.
Tip. If an initial value is set in the initial value column for a parameter in the Vari-
ables declaration pane, then no connection to a variable is required. This means
that the initial value replaces the variable. This is useful during testing of, for in-
stance, a function block with several parameter inputs.
1. In the Project Explorer, expand MySingleModule_1 and double-click on
MyModuleInstance_1. The parameter editor for the instance appears.
2. Connect the parameters to the variables (Actual Parameter), see Fig. 122.

140 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.9 Connecting the Variables to the Instance Parameters

Fig. 122 The connections between the variables and the parameters in
MyModuleInstance_1.
3. Repeat steps 1 and 2 for MyModuleInstance_2, _3, and _4, but change the
parameters, see Fig. 123.

Fig. 123 The connections for MyModuleInstance_2, _3, and 4.


4. Check and save the application, and then close the Parameter editor.

3BSE 021 350R201 Rev A 141


10.10 Connecting a Task to MySingleModule Chapter 10: Creating Control Modules

10.10 Connecting a Task to MySingleModule


A task must be connected to MySingleModule. There is several ways of doing
this. One way is described below. For the other ways, see the Online Help func-
tion.
1. Mark MySingleModule_1, right-click, select Properties and then Task
Connection. Enter the task name Normal.
Information. All instances in the Control Module will be executed under the
control of task Normal. The task properties can be inspected by expanding
Controllers>TrafficLight>Task, and then double-clicking on the task
Normal.
2. Check your application in the Project Explorer, by marking Traffic_Light,
right-clicking and then selecting Check. Note that the Check tab (at the bot-
tom of the window) may give some information.
3. Save the project.

10.11 Simulating the Project


The project is now ready to be tested in simulation mode.
1. To start simulation select Tools>Simulate Project in the Project Explorer.
Click Continue in the dialog box “Simulate Analysis”, which appears.
2. In the Project Explorer, expand Applicaton and TrafficLight and then mark
Control Modules, right-click and finally select Graphics. The CMD editor
of the Control Module appears in online mode, see Fig. 124. The Online ed-
itor must be opened to allow changes in the values of variables.

142 3BSE 021 350R201 Rev A


Chapter 10: Creating Control Modules 10.11 Simulating the Project

Fig. 124 The graphics of Traffic_Light.


3. In the Project Explorer, double-click on MySingleModule_1 to open the On-
line editor, see Fig. 125.

3BSE 021 350R201 Rev A 143


10.11 Simulating the Project Chapter 10: Creating Control Modules

Fig. 125 The Online editor showing MySingleModule variables and the FBD code.
Information. Note that a change in the Control Module type will affect all in-
stances of that type.

144 3BSE 021 350R201 Rev A


Appendix A: Control Builder Settings

Appendix A
Control Builder Settings

To set up the system for best performance and to suit your requirements regarding
language, etc., the Setup Wizard is used. When logged in with local Administrator
authority, the Setup Wizard is started from the Windows Start menu.
Information. Some tabs have a button marked Apply. Specified settings will not
be implemented until this button has been clicked on, see Fig. A-1.
All Setup Wizard dialog boxes contain a Display Settings button. Click on this
button to print out a log file on the screen containing all available settings in the
Wizard. This also prints out a list of system environment variables.

3BSE 021 350R201 Rev A 145


Appendix A: Control Builder Settings

A.1 System Settings


Auto-Logon to Windows
If this function is enabled, the Windows operating system will automatically
logon a selected user when the PC is started. The function should only be used if
automatic start-up of the Control Builder is desired.
Enter the user name, password (twice) and the computer name (domain), to which
the user belongs, see Fig. A-1. If a non-existent user name is entered, the
Auto-logon function will fail.

Fig. A-1 General system settings for Auto-logon.

Information. If the Enable Auto-Logon function is enabled and you remove the
Control Builder program, then the Auto-Logon function will remain enabled.

146 3BSE 021 350R201 Rev A


Appendix A: Control Builder Settings

Redundant Network Routing Protocol, RNRP


This setting is not normally used if communication with the controller(s) is
established via one network. Otherwise, network addresses require settings made
in the dialog box shown below.
Information. These settings are the same for Control Builder, SoftController and
the OPC Server for AC 800M/C. A change affects all three installed products.

Fig. A-2 General system settings for the redundant network routing protocol, RNRP.

Parameters for interface status and routing through the network are set for the
Control Builder in the dialog box shown above. The tab Parameters shows the
routing parameters and the other tabs are used for common setting of specific
parameters for Ethernet/Serial interfaces.
For further information, refer to the manual “Control Builder, Communication,
Protocols and Design” and the Control Builder’s Online Help function.

3BSE 021 350R201 Rev A 147


Appendix A: Control Builder Settings

A.2 Product Settings


Auto-Startup of Control Builder
If this function under the tab Auto-Startup is enabled, the Control Builder will be
automatically started up immediately after the user is logged onto the system.
Users can also be automatically logged on, see "Auto-Logon to Windows", on
page 146.
Information. Control Builder will start without any application opened.
The path to Control Builder should be entered in the dialog box, see Fig. A-3.

Fig. A-3 General product settings for the Auto-Startup.

148 3BSE 021 350R201 Rev A


Appendix A: Control Builder Settings

Memory Reservation
The total memory reserved for an application is based on a calculation involving
the size of the physical RAM memory and the paging file on the hard disk. Under
the Memory tab the following sizes are shown (see Fig. A-4).
• Physical RAM memory
• Total recommended paging file (this file can be changed in the Windows
control panel)
• Maximum recommended heap
• Actual heap (must normally be increased)
The heap should be set to the size of the application, but should not exceed the
Maximum heap size. Start by using the default value and then increase the value
according to the demands of the application.

Tip. The amount of free memory can be inspected by opening the About... dialog
box in the Control Builder Help menu. You should increase the heap size if there
is less than 30% left.

Fig. A-4 General product settings for the memory.

Information. Do not forget to click Apply to activate the changes.

3BSE 021 350R201 Rev A 149


Appendix A: Control Builder Settings

Information. You should not specify a heap size larger than the paging file. As
before, when the size of the heap is saved, the system checks that it does not
exceed the size of the paging file.
If the heap size is larger than the maximum heap size (half of the total paging file),
a warning message advises you to change the heap size. If the heap size is larger
than the paging file, an error message tells you to reduce the heap size.

Selecting Language
Under the Language tab it is possible to choose the language to be used for the
programming tool, the libraries, and the Online Help files (see Fig. A-5). The in-
stallation program will, by default, choose the same language as Windows 2000
is set to. If the language is not supported by the product, English will be used as
the default language.
Information. The ControlIT for AC 800M/C CD-ROM must be available when
the language of the Help files is to be changed.

Fig. A-5 General product settings for the language.

Click on the button Change... to select the language. A dialog box for selection
of the path of the required language file will be opened.
Caution. The default language selection is not fool-proof. Check if the
appropriate language has been set and change it, if necessary, in the dialog box
above.

150 3BSE 021 350R201 Rev A


Appendix A: Control Builder Settings

Select File Locations


Control Builder has a number of specific file locations which can be changed.
Each user may have his own file location profile.
Currently, the working folder is managed by the Setup Wizard, see Fig. A-6.

Fig. A-6 General product settings for file locations.

If you click on the button Use Default Settings, then all your own settings will be
reset to the general settings determined by the network administrator.
Click on Modify... to change the path of the locations. A browser will be opened
to assist you in locating the appropriate path, see Fig. A-7. If the setting is to be a
personal setting click on Change Personal Setting, and if it is to be the default
for any user, click on Change Product Setting. The latter is dimmed if you do
not have Administrator privileges. The changes made to the product settings will
only affect users without a personal setting.

3BSE 021 350R201 Rev A 151


Appendix A: Control Builder Settings

Fig. A-7 The browser for locating the file path.

152 3BSE 021 350R201 Rev A


Appendix B: SoftController Settings and Operation

Appendix B
SoftController Settings and
Operation

B.1 Setup and Operation


This section describes the functions available in the dialog box which appears
when the SoftController is started. Note that there are more settings available,
such as screen resolution, memory reservation, language selection, etc., as de-
scribed in the section, "Setup Wizard", on page 156.

General
The control panel of the SoftController is started using the Windows Start menu
(Start>Programs>ABB Industrial IT>Control IT>SoftController). The startup
of the SoftController is managed from the control panel.
Warning! To obtain optimal performance of the SoftController, the user must log
on as a user that belongs to the ABB Controller user group or as a user that be-
longs to the local administrator user group (with default privilege settings). The
ABB Controller user group is created during installation of the SoftController.

Setup
The SoftController settings are defined in the Setup menu and the Security menu
of the control panel.

Fig. B-1 The control panel of the SoftController.

3BSE 021 350R201 Rev A 153


Appendix B: SoftController Settings and Operation

Start-up functions
Select item Start-up information... in the Setup menu to select the start-up func-
tions “Auto-start” or “Stand-alone”.

Fig. B-2 The dialog box for setting up different start-up alternatives.

The Auto-start function setting will automatically start the SoftController within
30 s after the start-up of the control panel. During this 30 s delay, a dialog box is
displayed from which the automatic start-up can be cancelled. The SoftController
is then started with an empty system without any user application.
The Stand-alone function setting will prevent any other application from running
in the computer, in order to achieve maximum performance and reliability. If the
MMS Server is running while this alternative is chosen, the SoftController will
not be able to start and a message box will appear on the screen.
Alter System Variables
Select System Variables... in the Setup menu to alter the system variables. Use
the Get button to fetch a value and the Set button to store a value.

Fig. B-3 System variables setup dialog box.

154 3BSE 021 350R201 Rev A


Appendix B: SoftController Settings and Operation

Password setting
Select item Password... in the Security menu to define a password. It is possible
to restrict access to the following operations with a password.
• starting the SoftController
• stopping the SoftController
• opening the System variables dialog box
• opening the start-up information dialog box
• changing the password

Fig. B-4 Password setting.

Operation
The SoftController is operated from the control panel.

Fig. B-5 The control panel of the SoftController.

Start the SoftController


The Start button starts the SoftController and changes the status from “Not start-
ed” to “Started”.
Information. The SoftController is started as an empty system without a user ap-
plication.

3BSE 021 350R201 Rev A 155


Appendix B: SoftController Settings and Operation

Terminate the SoftController


Click the Terminate button on the control panel to terminate the SoftController.
A dialog box appears to confirm the requested operation, since this will result in
an empty system with no user application. The status indication will change from
“Started” to “Not started”.
Exit the Control Panel
Click the Exit button on the control panel to exit the panel. This is only possible
if the status of the SoftController is “Not started”.
View the Log File
Select item View log file in the File menu to display the log file.
SoftController Information
Select item About in the Help menu to display information about the
SoftController.

B.2 Setup Wizard


To set up the system for best performance and to suit your requirements regarding
language, etc., the Setup Wizard is used. When logged on with local Administrator
authority, the Setup Wizard is started from the Windows Start menu. The Wizard
can also be started from the SoftController control panel.
Information. The Setup Wizard is automatically started the first time
SoftController is started.
Information. Some tabs have a button marked Apply. Specified settings will not
be implemented until this button has been clicked on.
All Setup Wizard dialog boxes contain a Display Settings button. Click on this
button to print out a log file on the screen containing all available settings in the
Wizard. This also prints out a list of system environment variables.

User Settings
Four Windows functions require a great deal of the processor capacity and should
be switched off for optimized SoftController performance. These functions are
shown in the Settings dialog box, see Fig. B-6. When the dialog box is shown to
the user (normally only the first time SoftController is started), the checkboxes are
dimmed if the settings are already disabled. If any of the settings are checked but
not dimmed, click on the Apply button to implement the changes.
Information. User settings are settings that affect the currently logged-on user.

156 3BSE 021 350R201 Rev A


Appendix B: SoftController Settings and Operation

Fig. B-6 Functions which can be disabled for optimized SoftController performance.

System Settings
Auto-Logon to Windows
This setup is similar to that for the Control Builder, see the section "Auto-Logon
to Windows", on page 146.
Redundant Network Routing Protocol, RNRP
This setup is similar to that for the Control Builder, see the section "Redundant
Network Routing Protocol, RNRP", on page 147.

Product Settings
Auto-Startup of SoftController
This setup is similar to that for the Control Builder, see the section "Auto-Startup
of Control Builder", on page 148.
Memory Reservation
This setup is similar to that for the Control Builder, see the section "Memory
Reservation", on page 149.
Select File Locations
This setup is similar to that for the Control Builder, see the section "Select File
Locations", on page 151.

3BSE 021 350R201 Rev A 157


Appendix B: SoftController Settings and Operation

158 3BSE 021 350R201 Rev A


Appendix C: OPC Server for AC 800M/C Installation and Settings

Appendix C
OPC Server for AC 800M/C
Installation and Settings

C.1 Installation and Operation


An OPC Server program is available on the ControlIT for AC 800M/C CD-ROM.
Its installation is similar to that of the Control Builder. After installation, the OPC
Server program is automatically started when the PC is started.

OPC Server Configuration Panel


The OPC Server configuration panel is used to specify the controller(s) to be con-
nected to the OPC Server. When connected, the OPC Server has access to all rel-
evant data in the controller(s). The panel has two controller specification tabs, one
for data access and another for alarms and events.
To open the OPC Server Configuration panel, right-click on the OPC icon on
the Windows desktop taskbar and select Open OPC Server Configuration or to
exit the panel, select Stop OPC Server.

Fig. C-1 The OPC Server configuration panel.

3BSE 021 350R201 Rev A 159


Appendix C: OPC Server for AC 800M/C Installation and Settings

Configuration panel management is thoroughly described in the Online Help


function for the configuration panel.
Information. The OPC Server requires access to some files (called domain files),
describing the content of a controller, in order to connect to that specific
controller. These files are created by the Control Builder and fetched
automatically by the OPC Server when required.
In order to fetch these files the OPC Server must communicate with the Control
Builder that made the last download to the controller.
The OPC Server needs to be updated when a new version of the application
program has been downloaded to the controller. This update is automatic and may
take several minutes for large applications. The update will only take a few
seconds if an FTP Server is used (read the topic Using FTP Server with OPC
Server in the OPC Server online Help for more details).
During the update time the HSI clients will not be updated with new information
for the changed application. If the domain files are lost (e.g. due to a hard disk
crash), the Control Builder will recreate them when selecting "Online" or "Online
with download", even though no change has been made in the application
program.
Note that the files must be manually collected from the Control Builder system if
the Control Builder is not running and the FTP Server is not used. The files are
stored in the project directory of the current project. The files must then be put in
a directory called Files in the working directory of the OPC server. A browse
dialog is displayed to help you to locate the missing files.
You are recommended to have the Control Builder, which downloaded the project,
running when starting the OPC Server.

C.2 Settings
To set up the system for best performance and to suit your requirements regarding
display, etc., the Setup Wizard is used, see Fig. C-2. When logged on with local
Administrator authority, the Setup Wizard is started from the Windows Start
menu.
Information. Note that the OPC Server configuration panel has additional
settings, such as heap size, system variables and auto-load configuration.
Information. Some tabs have a button marked Apply. Specified settings will not
be implemented until this button has been clicked on.

160 3BSE 021 350R201 Rev A


Appendix C: OPC Server for AC 800M/C Installation and Settings

All Setup Wizard dialog boxes contain a Display Settings button. Click on this
button to print out a log file on the screen, containing all available settings in the
Wizard. This also prints out a list of system environment variables.

Fig. C-2 The Setup Wizard for the OPC Server.

System Settings
Auto-Logon to Windows
This setup is similar to that for the Control Builder, see the section "Auto-Logon
to Windows", on page 146.
Redundant Network Routing Protocol, RNRP
This setup is similar to that for the Control Builder, see section "Redundant
Network Routing Protocol, RNRP", on page 147.

Product Settings
Memory Reservation
This setup is similar to that for the Control Builder, see the section "Memory
Reservation", on page 149.
Select File Locations
This setup is similar to that for the Control Builder, see the section "Select File
Locations", on page 151.

3BSE 021 350R201 Rev A 161


Appendix C: OPC Server for AC 800M/C Installation and Settings

C.3 Running the OPC Server and OPC


Client on Different Computers
If you want to run the OPC Server and your OPC Client on different computers
the following DCOM settings must be performed. This is done using the
Windows 2000 tool DCOMCnfg.

DCOM settings on the OPC server PC


1. Run dcomcnfg.exe (enter dcomcnfg in the Run dialog accessed under the
Start button).
2. In Default Properties - make sure Enable Distributed COM on this
computer is checked.
3. In Default Properties - set Default Authentication Level to (none)
4. In Applications, locate OPC Server for AC 800M/C.
5. Click on the Properties button and move to General, and set
Authentication level to (none).
6. Move to Security. Mark Use custom access permissions for Access
Permissions and click on the Edit button.
Add the user group(s) or the user accounts that the OPC Client is running un-
der.
7. Mark Use custom launch permissions for Launch Permissions and
click on the Edit button. Add the same user group(s) or user accounts as
above.
8. If you for some reason do not want the OPC Server to run under the System
account, change this in Control Panel>Administrative
Tools>Services>OPC Server for AC 800M/C>Properties.
9. Reboot the PC.

DCOM settings on the client PC


1. Run dcomcnfg.exe (enter dcomcnfg in the Run dialog accessed under the
Start button).
2. In Default Properties - make sure Enable Distributed COM on this
computer is checked.
3. In Default Properties - set Default Authentication Level to (none)
4. Reboot the PC.

162 3BSE 021 350R201 Rev A


Appendix C: OPC Server for AC 800M/C Installation and Settings

If your OPC Client requires the OPC Server to be registered on the client machine,
the ControlIT for AC 800M/C CD-ROM contains a registry file to facilitate
registration of the OPC Server on the client machine.
Insert the CD-ROM in to the client machine, right-click on the file
\Products\OPCServer\OPCServerRegEntriesForClientMachine.reg and
select Merge.

C.4 Connection with Third Party OPC


Client
The OPC Server for AC 800M/C can be connected to any client that supports OPC
Data Access or OPC Alarm and Event. See the OPC client documentation for con-
figuration details.
Such clients are OperateIT A1.0, A1.1 and A1.2 with their Generic OPC Connec-
tivity. See the OperateIT manual Plant Engineering Methods, 3BSE017088,
Chapter 17.
Below is a summery of how the connection is to be done.
Information. This method should not be used if the AC 800M/C Controller Inte-
gration Product is in use. See section section 3.4 on page 34.
1. Make sure that the DCOM configuration settings are correct on both the as-
pect directory server node and the OPC server node.
2. Start the OPC server using the Windows Start Menu (Start>Pro-
grams>ABB Industrial IT>Control IT>OPCServer>OPCServerPanel),
and connect the OPC Server to the controller(s).
3. Add the OPC Server node to the Node Administration Structure (use the
Pseudo Server node type).
4. Create a Generic OPC Server Network object in the Control structure. In the
Additional Arguments dialog box, make sure that Bypass connector using
DCOM is checked and add the OPC Server node as a provider. Select
ABB.AC800MC_OPCDaServer.2 and click on Create.
5. The created network object has an Uploader aspect. Open its Config View
and click on Start Upload to populate the Control Structure with all instanc-
es known by the OPC Server.

3BSE 021 350R201 Rev A 163


Appendix C: OPC Server for AC 800M/C Installation and Settings

C.5 Network Considerations


In some installations the control builder might be connected to more than one
network. In such installations and if more than one Control Builder or an OPC
server is used all PCs must have the same primary network and the OPC server
has to be able to communicate with this network.

Example
If Control Builder A has network addresses 172.16.67.41 and 10.46.41.242 and
Control Builder B has addresses 172.16.67.42 and 10.46.41.241 both computers
have to have the 172.16 network as their primary network, the OPC server has to
be able to commuciate with the computers on the 172.16 network. The primary
network is the network defined as the first network in the network setup.

164 3BSE 021 350R201 Rev A


Appendix D: MMS Server for the AC 800M/C

Appendix D
MMS Server for the AC 800M/C

The MMS Server for the AC 800M/C is a program that allows more than one of
our products to run and communicate with each other on the same computer. The
server is automatically installed when the Control Builder, the SoftController or
the OPC Server is installed, so no further action is required concerning this.
To exit the MMS Server, click on the MMS Server icon located on the
Windows desktop taskbar.

The MMS Server Panel Menu


The most essential MMS Server panel menu items are described below.

View>Remote System To show a list of all remote systems on that part of


the Control Network where the PC is connected.
View>PPP Status To show the status of the configured PPP links and
to show their IP addresses.
Setup>PPP Setup To configure a PPP link on the PC (running the Con-
trol Builder).

3BSE 021 350R201 Rev A 165


Appendix E: Communication Protocols

Appendix E
Communication Protocols

E.1 TCP/IP
Installing the TCP/IP Network Protocol
The TCP/IP network protocol must always be installed in the PC when running
any of the three Control Builder products.
The TCP/IP protocol is used as a “carrier” for the following application protocols:
• MMS on TCP/IP
• SattBus on TCP/IP
It is recommended that both Ethernet and the PPP protocol be installed. Read the
Control Builder Online Help function for further information.

Setting IP Addresses
Generally, an IP address X.Y.Z.Q is written with four integers X, Y, Z and Q
separated by a period (.). An IP address consists of a network identity part, NetID,
and a host identity part, HostID. All systems on the same network must have the
same network identity part, NetID. IP addresses are divided into different classes:

Class Value of X NetID HostID Possible host IP Default subnet


addresses mask

A 1-126 X Y.Z.Q X.0.0.1 - X.255.255.254 255.0.0.0

B 128-191 X.Y Z.Q X.Y.0.1 - X.Y.255.254 255.255.0.0

C 192-223 X.Y.Z Q X.Y.Z.1 - X.Y.Z.254 255.255.255.0

Every host must have a globally unique IP address. Normally, an IP address and
subnet mask can be obtained from your network manager. If you can not obtain
an IP address and you have no intention of connecting your network to the
Internet, you may use one of the reserved IP addresses for private IP networks. In
this case, you should use the following Class B network identity part, NetID:
172.16 or the class A identity part, NetID: 10.

166 3BSE 021 350R201 Rev A


Appendix E: Communication Protocols

This means that the IP addresses 172.16.0.0-172.31.255.254 or 10.0.0.1-


10.255.255.254 are available as host IP addresses. Addresses on this network can
not be registered for use on the Internet.
List of IP Addresses for Reserved Private Networks

Class A 10.0.0.0 - 10.255.255.255


Class B 172.16.0.0 - 172.31.255.255
Class C 192.168.0.0 - 192.168.255.255

3BSE 021 350R201 Rev A 167


Appendix E: Communication Protocols

168 3BSE 021 350R201 Rev A


Appendix F: Communication Cable Configuration

Appendix F
Communication Cable Configuration

F.1 Connecting AC 800M or AC 800C to a PC


RTS 1 8 CTS
DTR 2 • 6 DSR
TD 3 2 RD
AC 800M PC
0V 4 1 DCD
or
0V 5 • 50V Female
AC 800C
3 TD 9-pin, D-type
RJ-45 plug RD 6 connector
DCD 7 4 DTR
CTS 8 7 RTS
Shield Shield

Fig. F-1 Cable TK212 configuration.

F.2 Connecting 200-CPU on


Advant Controller 250 to a PC
RD 2 3 TD
TD 3 2 RD PC
AC 250
DTR 4 8 CTS Female
Male 9-pin,
D-type 0V 5 50V 9-pin, D-type
connector 1 DCD connector
• 4 DTR
6 DSR
Shield Shield

Fig. F-2 Cable 200-CPC configuration.

3BSE 021 350R201 Rev A 169


Appendix F: Communication Cable Configuration

F.3 Connecting 200-CI232 on


Advant Controller 250 to a PC
DCD 1 1 DCD
RD 2 3 TD
200-CI232 TD 3 2 RD PC
Male DTR 4 • 6 DSR Female
9-pin, D-type 0V 5 50V 9-pin, D-type
connector connector
DSR 6 • 4 DTR
RTS 7 8 CTS
CTS 8 7 RTS
Shield Shield

Fig. F-3 Cable configuration.

170 3BSE 021 350R201 Rev A


Appendix G: Comparison Between the Control Builder Products

Appendix G
Comparison Between the Control
Builder Products

The table below shows the main differences between the three Control Builder
products.
Information. A project created in Control Builder Professional, can be opened in
Control Builder Standard or Basic, if the application name and the controller
name are identical.
Control Control
Control
Function Builder Builder
Builder Basic
Standard Professional

Make/change libraries No Yes Yes


Make/change/use Control Modules No No Yes
No. of controllers 1 8 32
No. of applications 1 8 256
No. of applications per controller 1 1 8
No. of programs per application 3 64 64
No. of tasks per controller 3 16 16
Distribute code in an application to several No No Yes
controllers
Share code between several programming stations No Yes Yes
Source code control* Official only Official/ Official/
unofficial unofficial
Integration with the OperateIT A No No Yes
Logging in and user privileges No No Yes
* A function for safe source code handling by using one official and one inofficial version of all files (e.g., library,
application etc.) in a project.

3BSE 021 350R201 Rev A 171


Appendix G: Comparison Between the Control Builder Products

172 3BSE 021 350R201 Rev A


Appendix H: Glossary H.1 Terms and Descriptions

Appendix H
Glossary

H.1 Terms and Descriptions


The following is a list of terms associated with the products described
in this Guide.

Term Description
Application A collection of POUs (Programs, Function Blocks and Control Modules)
and their interconnections. Different parts of the Application are executed
under the control of Tasks. Variables in the Applications can be connected
to I/Os and can be accessible as communication server points through the
use of Access Variable names.
The application is the top hierarchical level and contains data types,
Control Modules, Function Blocks etc.
Application Part of the controller firmware that from a protocol serves clients with
Communication server application data read and write operations
Code block Used to divide the code into parts that are easier to handle (pages). A
code block consists of code that can be written in one of the following
programming languages: IL, ST, FBD, SFC or LD
COM Component Object Model, is the Microsoft binary standard, defining how
objects can interact. An object can, for instance, be a data structure, a
control module or a program.
Configuration Term describing all Applications and the Controller Configuration present
in a controller. All normal user loadable entities in a controller (i.e. except
the firmware).
Control Builder To construct your Control Software application you need the engineering
tool called Control Builder.
Control Module The Control Module is the main structuring element in a controller
application and contains both application program code and graphical
features.

3BSE 021 350R201 Rev A 173


H.1 Terms and Descriptions Appendix H: Glossary

Control Network Network connecting several controllers and PCs with Configuration Tools.
Note that a Control Network encompasses both Ethernet and serial links.
The Tool port on the controllers is part of the Control Network.
Control Software The software you run in the controller is called Control Software. This
name does not denote a specific software package you load into the
controller but is merely a name for the scope of functions you can use in a
controller. These functions are derived from:
- The hardware (supervision, communication buses, I/O buses, etc.)
- The firmware loaded into the controller (real-time executive system, real
time clock, redundant communication, etc.)
- The application program loaded into the controller (library functions,
communication protocols, etc.)

Controller Cold The controller performs a controller abrupt stop and hardware reset
Restart followed by an application cold restart of all applications.
Controller - Hardware Description. i.e. the hardware units it contains and settings for
Configuration these hardware units.
- Connections between hardware and applications (e.g. I/O connections).
- Access names for communication (Access Variable) and their
connection to Application variables.
- Task definitions.
Note: References applications but does not encapsulate them.
Controller Firmware The system software in the controller.
Controller Reset A controller stop followed by a combination of memory reset and hardware
reset
Controller Warm The controller restarts and all applications are warm restarted. Only
Restart possible as a consequence of power up.
Data type A data type is a description of the structure of a variable or a parameter.

174 3BSE 021 350R201 Rev A


Appendix H: Glossary H.1 Terms and Descriptions

Data type Defines the characteristics of a variable, a set of values and a set of
permitted operations. Data types may be simple or structured, either
predefined or user defined.
The supported basic data types are:
bool (1 bit) Boolean
word (16 bits)
dword (32 bits) Double Word
int (16 bits including the sign bit) Integer
int (16 bit) Unsigned integer (without the sign bit)
dint (32 bits including the sign bit). Double Integer
real (32 bits) Floating point number
Note that all data types allocate 32 bits in memory.
DCOM Distributed Component Object Model, is an extension of COM. It defines
how objects can interact over a network. COM and DCOM are available on
most Windows platforms and on several Unix platforms.
Ethernet Network cabling system according to IEE 802.3
FBD Function Block Diagram.
Firmware Real-time executive system, real-time clock, redundant communication
and so forth
Function A function returns a single value and communicates using input and
output parameters, but it can also use and alter global variables that are
not passed on as parameters.
The function does not keep values from previous calls unlike the function
block.
Functions can be used in a program, a function block or other functions.
An example of a function is the mathematical function sin or the
conversion function bool_to_string.
Function block A function block returns one or more values of simple or structured data
types. You can use function blocks in a program and in a function block. It
can contain other function blocks and functions. A function block
communicates using input and output parameters, but it can also use and
alter global variables that are not passed on as parameters.
A function block keeps all values of the variables since the last call, unlike
the function.

3BSE 021 350R201 Rev A 175


H.1 Terms and Descriptions Appendix H: Glossary

IL Instruction List. A low-level language in which the instructions are listed in


a column - one instruction on each line. It has a structure similar to simple
machine assembler code.
Instance An instance is an individual description of the type. Every instance has the
characteristics defined by the type, but each instance has its own
individual behavior according to those characteristics.
LD Ladder Diagram.
MMS Manufacturing Message Specification, which specifies the messages
used for industrial communication (manufacturing, process robotics, etc.).
This is the application layer used within MAP (Manufacturing Automation
Protocol), a specification for open communication based on the OSI
model.
Module A controller platform contains hardware modules for processing,
communication, I/O etc. A module is the same as a Unit. Note that there is
a software term Control Module.
OLE Object Linking and Embedding.
OPC OLE for Processing Control.
PLC Programmable Logic Controller
POU Program Organization Unit The IEC 61131-3 standard describes
programs, function blocks and functions as Program Organization Units,
or POUs. These software elements have the important property that their
behavior can be used repeatedly in different parts of an application. The
behavior and structure of a POU, such as a function block, is defined by a
type declaration. Copies of function blocks created from a particular type
are referred to as function blocks. A Control Module definition has been
added to this concept.
PROFIBUS PROcess FIeld BUS
PROFIBUS-DP Open, vendor-independent fieldbus for time-critical communication
between controllers and distributed peripherals (remote I/O)
Project Explorer The Project Explorer is a tool you can use to create, modify and navigate
in a project.
Remote I/O I/O accessible via a fieldbus
RNRP Redundant Network Routing Protocol
SFC Sequential Function Chart. A graphical language based on GRAFCET.
SFC is one of the programming languages in Control Builder.

176 3BSE 021 350R201 Rev A


Appendix H: Glossary H.1 Terms and Descriptions

ST Structured Text. A high-level programming language. It is highly structured


and has a comprehensive range of constructs for assignments,
function/function block calls, expressions, conditional statements,
iterations, etc.
Task A task is a "working schedule" for the program. Each task is connected to
the corresponding program by default. At run time, tasks are executed
according to interval time, priority and offset.
TCP/IP Transmission Control Protocol/ Internet Protocol
A communication protocol is a set of rules and regulations through which
systems networked together can communicate. TCP/IP is a very common
protocol.
TCP ensures communication data consistency and security and IP
provides the routing mechanism. TCP/IP is a routable protocol, which
means that all messages contain not only the address of the destination,
but also the address of a destination network. This allows TCP/IP
messages to be sent to multiple networks within an organization. Each
client and server in a TCP/IP network requires an IP address, which is
either permanently assigned or dynamically assigned at start-up.
Tool, Configuration Products used to configure and program controllers. The tools connect to
Tool, Programming controllers via the Control Network .
Tool
Unit See Module.

3BSE 021 350R201 Rev A 177


H.1 Terms and Descriptions Appendix H: Glossary

178 3BSE 021 350R201 Rev A


Index
A Control Module E
about 128
AC 800M/C Controller Inte- Create 136 Editor
gration Kit 17 Open 135 Apply 66
Access variables 44, 50 Single 135 Check 63
Action Term 173 Enter 121
Code 116 Control Network FBD 64
Tabs 116 Term 173 ST 52, 69, 133
Add or Remove Programs 38 Control Software 174 Variable Editor in Simula-
Add Programs 38 Controller 44, 79 tion Mode 110
Apects System for AC 800M/ AC 800C 20 Ethernet 175
C 17 Controller Integration Kit 17 Examples 12, 25
Application 14 Create MyFBType 13
per controller 171 Control Module 136 ShopDoors 13
Print out 83 Data type 129 TrafficLight 13
Tutorial_01 46 FB 120 Tutorial_01 12
Apply 122 Library folder 119 Tutorial_02 12
Autostart 154 Project 59 Tutorial_03 12
Auto-Start-up 148 Single Control Module 135
Crossroad 137 F
B Ctrl + B (Check) 63
Ctrl + J (Insert actual parame- F1 key 45
Block 64 ter) 71 FBD 64
Boolean 60 Ctrl + J (Insert Variable type) Code 107, 122
71 Code online 144
Ctrl + J (Insert variable) 73 Online 54
C Ctrl + K (Insert FB) 65 Program code 131
Check 63 Ctrl + U (Apply and close) 72 File Locations 151
Class A, B and C 166 Ctrl+W (Apply) 66 Firmware
Closing the Control Builder 58 Term 174
Code in ST 133 Upgrade 38
Code Input (ST) 71
D Forced 102
COM 173 Data type 63 Function blocks 69, 71
Communication Declare 103 Create 120
Protocol 166 Preparation 60 Declare 69
Compare Control Builder Structured 103
products 171 DCOM 175 G
Configuration Declare
Term 173 FB 133 Graphical connections 137
Configuration pane (OPC Function blocks 69 Graphics 142
server) 159 Structure data type 103 Duplicate 134
Connect a task 142 Variables 61 MyModuleType 133
Connecting I/O 80 Distributed control 23 Graphics Object Type Library
Control Builder Divide code 64 17
Close 58 Download
Compare products 171 SoftController 101
Settings 145, 146 Duplicate 136 H
Start-up 33 Graphics 134 Hardware 44
Term 173 Configuration editor 44
What is it? 13 Configure 79
Setup 24
Heap 149, 150
Help, Online 26

3BSE 021 350R201 Rev A 179


Index

Home 134 N R
HSI 17
New Library 119 RAM 149
New Unit 79 Redundant Network Routing
I Protocol, RNRP 147
Remove Programs 38
I/O 82 O Rename 70
Address 82 Requirement
Editor 102 On-Board I/O 102
Signal 16 Online 55 Control Builder 18
Icons 25 FBD code 144 Restart (cold) 174
IEC 61131-3 14, 25, 128 Help 26 Restart (warm) 174
IL Manuals 26 Retain 62
Code 108 Testing 102 Re-use of Code 119
Online 56 OPC Client 16 RNRP 37, 147, 176
IL see Instruction List OPC Server
Industrial IT 17 Configuration panel 159 S
Init 128 Control Network 23
Insert Installation 33 Safety 13, 29
Function/Function Block 65 This is OPC Server 16 Security 155
Page Break 131 Operate IT 17 Selector 74
Path 110 Operation (SoftController) Sequential Function Chart
Install 31 153, 155 (SFC) 115
AC 800M/C Integration Kit Set up
34 Auto-start-up 148
OPC Server 33
P File location 151
SoftController 153 Page break 130, 131 Language 150
Installation Paging file 150 Memory 149
Software 32 Parameter 121, 130 RNRP 147
Step-by-step Instructions 32 Editor 71 System 146
Instance 119, 130, 140 Password setting 155 Settings
Parameters 140 Path selector 81 Control Builder 145, 146
Instance (term) 176 POU (Program Organization OPC Server 159
Instruction List 25 Units) 128, 176 SoftController 153
Integration Kit 34 Precautions Setup Wizard 145, 156, 160
Interaction Program 138 Hardware 30 SFC 117
Introduction 11 Operating environment 30 Language 115
IP address 166 Software 30 Shop Doors project 59
Predefined 119 Signal noise 30
Print out 83 Simulation 52, 76, 110
L Privileges 171 (ST) 77
Language 115, 150 Product Settings 148 Mode 111
LD online 57 Program 133 Mode (FBD) 76
LD_code 109 Change language 64 SFC 117
Library 14, 43, 129 Check 69 Stop 54, 78
New 119 Code 65, 70 Traffic_Lights 142
Line color 134 Code input 65 Variables editor 110
Log File Editor 61 Single Control Module 135,
View 156 FBD_Code 46 137
Logging in 171 IL_Code 49 Create 135
Interaction program 138 SoftController 15, 21
Language 25 Installation and Settings 153
M LD_Code 49 Operation 153, 155
per application 171 Terminate 156
Maintenance 29 Rename 65, 70 Source code control 171
Manuals, Online 26 Re-use of code 119 ST 55, 69, 105
Memory 149 SFC 115 ST see Structured Text
Menu bar 42 Software 24 Stand-alone function 154
Message pane 42 ST_Code 48 Start-up 31
Microsoft Word program 83 Write 64, 69 Project 42
MMS 176 Write FBD code 64 SoftController 154
MMS Server 33, 165 Write ST code 69 Statement
More 134 Project 24 List box 75
MyLibrary 119 Project Explorer 14, 24, 42 Selector 74
MyModuleType 130 Project Explorer (term) 176 Step 116
Structure view 67
Structured data types 103

180 3BSE 021 350R201 Rev A


Index

Structured Text (ST) 25, 133,


140
System Requirements 18
SystemLib 43, 65, 121

T
Tasks 45, 142, 171
TCP/IP 166
Identity 166
Protocol 166
Template
Select 60
Title bar 42
Tool 177
Tool bar 42, 43
Transition condition 116
Tutorials 41
Tutorial_01 41
Tutorial_01_Struct 103
Tutorial_02_FBD 12
Tutorial_02_ST 12
Tutorial_03 115
Typographical Conventions
25

U
Upgrade Controller firmware
38
User assistance 26
User privileges 171
User-defined (predefined) 119

V
Variable 50
Access 51
Alter System Variables 154
Connect to instance parame-
ters 140
Connection to I/O 110
Declare 51, 60, 116
External 51
Insert 73
Local 51
View log file 156

W
Write a Program 64, 69
Write FBD code 64
Write ST code 69

Z
Zoom buttons 122, 125

3BSE 021 350R201 Rev A 181


Index

182 3BSE 021 350R201 Rev A


Specifications subject to change without notice. 3BSE 021 350R201 Rev A
Printed in Sweden. © 1999 ABB Automation Products AB. September 2001

Das könnte Ihnen auch gefallen