Вы находитесь на странице: 1из 30

Course T300, Engineering an 800xA System

Chapter 8 Hardware and Task configuration

TABLE OF CONTENTS
Chapter 8 Hardware and Task configuration................................................................................................................................. 8-1
8.1 General Information ............................................................................................................................................................. 8-3
8.1.1 Description .................................................................................................................................................................... 8-3
8.1.2 Objectives...................................................................................................................................................................... 8-3
8.1.3 Reference Documentation............................................................................................................................................. 8-3
8.1.4 Limits............................................................................................................................................................................. 8-3
8.1.5 Steps to go ..................................................................................................................................................................... 8-3
8.2 Controller.............................................................................................................................................................................. 8-5
8.2.1 General .......................................................................................................................................................................... 8-5
8.2.2 Handling ........................................................................................................................................................................ 8-5
8.2.3 Controller Settings ........................................................................................................................................................ 8-6
8.3 Task ...................................................................................................................................................................................... 8-9
8.3.1 General .......................................................................................................................................................................... 8-9
8.3.2 Create Task.................................................................................................................................................................... 8-9
8.3.3 Delete Task.................................................................................................................................................................. 8-10
8.3.4 Copy / Paste a Task..................................................................................................................................................... 8-10
8.3.5 Connect a Task............................................................................................................................................................ 8-11
8.3.6 Settings ........................................................................................................................................................................ 8-12
8.3.7 Allocation .................................................................................................................................................................... 8-14
8.4 Hardware handling ............................................................................................................................................................. 8-16
8.4.1 General ........................................................................................................................................................................ 8-16
8.4.2 Create Hardware Unit ................................................................................................................................................. 8-16
8.4.3 Delete Hardware ......................................................................................................................................................... 8-17
8.4.4 Copy and Paste Hardware Unit................................................................................................................................... 8-18
8.4.5 Hardware Unit Settings............................................................................................................................................... 8-19
8.4.6 I/O Boards ................................................................................................................................................................... 8-20
8.5 I/O Handling....................................................................................................................................................................... 8-22
8.5.1 General ........................................................................................................................................................................ 8-22
8.5.2 Datatypes for I/O......................................................................................................................................................... 8-22
8.5.3 I/O Allocation.............................................................................................................................................................. 8-24
8.5.4 Parametrizing I/O........................................................................................................................................................ 8-25
8.5.5 Forcing I/O .................................................................................................................................................................. 8-26
8.6 Soft Controller.................................................................................................................................................................... 8-27
8.6.1 General ........................................................................................................................................................................ 8-27
8.6.2 Start Soft Controller.................................................................................................................................................... 8-27
8.6.3 Assign Soft Controller in CBM .................................................................................................................................. 8-27
8.6.4 IP-Address Soft Controller ......................................................................................................................................... 8-28

8-1

Course T300, Engineering an 800xA System

8-2

Engineering an 800xA System

8.1 General Information


8.1.1 Description
This chapter describes the AC800 M controller handling including the hardware
configuration, task configuration and how to simulate a AC 800M controller in the
Soft Controller.

8.1.2 Objectives
On completion of this chapter you will be able to:

Create a new controller for a project and deal with the settings

Create a new hardware unit for a controller and deal with the settings

Create a new I/O Board and deal with the settings

Describe what a task is

Create a task and deal with the task settings

8.1.3 Reference Documentation


800xA User Guide System Network Configuration
Use the online help: Contents tab > Hardware Configuration
Use the online help: Contents tab > I/O Configuration
Use the online help: Contents tab > Execution

8.1.4 Limits

Max 64 programs per application

Max 256 applications per project

Max 8 applications per controller

Max 32 tasks per controller

Max 32 controller per project

8.1.5 Steps to go
1. Create a new AC800M controller
2. Set the System Identity for the controller
3. Set the Ethernet IP-Address for the controller
4. Create / Modify the tasks
5. Create a new hardware unit for the controller (e.g. PM864)

8-3

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

6. Assign the application to the controller


7. Assign the task to the application / program
8. Create the I/O Boards
9. Allocate the IOs
10. Parameterize the IOs

8-4

Engineering an 800xA System

8.2 Controller
8.2.1 General
The Controllers folder in the Control Builder contains the physical controller(s) used
in the project. For each controller you can configure the Access Variables, the
Hardware and the Tasks. The application(s) connected to each controller are placed in
the Application(s) folder.

8.2.2 Handling
8.2.2.1 Create Controller
1. Right mouse click onto Controllers and select New Controller

Right
click

Left
click
2. Left mouse click onto AC800M
3. The New Controller dialog box is displayed. Type in the new controller name
and click onto the OK button.

8.2.2.2 Delete Controller


Right mouse click onto the controller in the Control Builder and select the Delete
entry from the Context Menu.

8-5

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

Right
click

Left
click

8.2.3 Controller Settings


8.2.3.1 System Identity
In order to be able to download control projects to the controller and view live
controller data (OPC server), you must set the controller IP address (if redundant
configuration, you have to set multiple IP addresses) in Control Builder.
The controller must have been given an IP address using the IPConfig tool. However,
once an IP address has been set, it can be changed from Control Builder. See chapter
09 Download of this T300 course for more information.
The System Identity is the network address of the selected controller. The network
address is shown beside the controller icon in the Project Explorer tree.
Note that the IP address of the first Ethernet port has to be the same as the IP address
of the controller (system identity). The second Ethernet port is only used if the
controller is connected to a redundant network
For more information about network concepts and suggested configuration of IP
addresses please use the System Network Configuration user guide for the 800xA
system.
The suggested configuration for the first controller is:

Primary network:

172.16.0.151

Secondary Network:

172.17.0.151 (needed only for redundancy)

Subnet Mask:

255.255.252.0

Change default address of a controller:


1. Right mouse click onto a controller and left mouse click onto System Identity.

8-6

Engineering an 800xA System

2. The System Identity dialog box is displayed. Type in the IP address and click
onto the OK button.

8.2.3.2 Remote System Information


Remote systems are controllers and engineering stations connected to the same MMS
network as your own local system.
A connected remote control system1 can be inspected and maintained from Control
Builder. This can be an important tool when troubleshooting the system
Maintenance of the remote systems may involve any of the following operations:

display of information about the applications and system software, with their
versions, in remote systems,

download of the initial firmware to controllers, or

Upgrading of firmware versions in controllers (firmware: The system software


in the controller)

You will get access to Remote System Information from a controller by a right mouse
click onto a controller and left mouse click onto Remote System...

8-7

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

Menu Item

Function

Show Remote Systems

Shows a list of all addresses to the control systems


(including MMS process numbers) connected to the
same network as the requesting system.

Show Application Information

Shows information about the application(s) running


in the selected remote controller system, such as
application name, application status, compilation
date and time, compiling engineering station identity,
and the checksum of the application. You can also
remove a running application here.

Show Firmware Information

Shows information from a controller, such as unit


position, type of hardware unit, name and version of
the current firmware and firmware creation date.
Firmware can also be loaded to selected controllers
here.

Show MMS Variables

Shows all the MMS variables in the system.

Show Controller Log


Show MMS Connections

Shows the Controller System log


Shows connection information about the remote
systems, such as IP address, server/client function,
identity of the connected system (destination
system), usage, and number and maximum of
transactions sent since connection was established.
Shows a dialog box where the system variable
values in a controller can be changed.

Change System Variables

8-8

Engineering an 800xA System

8.3 Task
8.3.1 General
In the Project explorer of the Control Builder you will find three default programs,
labeled Program1 connected to the task Fast, Program2 connected to the task
Normal and Program3 connected to the task Slow. The programs, containing the
code, are not executed unless a "work scheduler" - a task - is connected and serves as
an "engine" running the code in the controller.

A task is defined as an execution control element that is capable of starting, on a


periodic basis, the execution of a set of POUs ( Program Organization Units ).
The configuration of a task is performed in the Task Properties Dialog.
All POUs connected to a task execute with the same priority, interval time and offset.
Programs, function blocks or control modules can be connected to tasks.
An application can also be connected to a task, and all POUs in the application
execute in this task unless otherwise specified. A task can only execute POUs in one,
and only one, application. Hence, POUs from different applications can not be
connected to the same task.

8.3.2 Create Task


1. Right mouse click onto the Tasks folder and left mouse click onto New Task

2. The New Task dialog box is displayed. Type in the task name and click onto
the OK button.

8-9

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8.3.3 Delete Task


Right mouse click onto a Task and left mouse click onto Delete

8.3.4 Copy / Paste a Task


Copy and paste has to be done in the Plant Explorer in the Control Structure.
1. Right mouse click onto a task and left mouse click onto Copy.

8-10

Engineering an 800xA System

2. Right mouse click onto Tasks folder and left mouse click onto Paste.
The task with all settings, connections and properties is copied.

8.3.5 Connect a Task


You can connect a task to a

Application

Control Module

Program

Function Block

If you connect a task to an application, then all the POUs of this application (Control
Modules, Programs and Function Blocks) are running in this task.
Connecting an application POU (e.g. Program) to a different task as the application
belongs to, then this POU is disconnecting from the application task and runs in its
assigned task.
A task can only execute POUs in one, and only one, application. Hence, POUs from
different applications can not be connected to the same task.
Before you are able to connect a task to a POU, first of all you have to assign the
application to the controller. Do this by opening the Context Menu for the Connected
Applications folder of a controller and selecting the application from the list.

8-11

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

For connecting a task please open the Context Menu for the

Application object and select the entry Task Connection

Program object and select the entry Task Connection

Function Block object and select the entry Properties Task Connection

Control Module object and select the entry Properties Task Connection

8.3.6 Settings
The three most important task parameters that can be set to optimize program
execution are:

Priority

Interval time

Offset

8.3.6.1 Priority
There are six levels of priority:
Time Critical Highest, High, Normal, Low and Lowest, numbered from 0 to 5.
The tasks are executed according to their priority where the time-critical task has the
highest priority.
A task with higher priority may interrupt any task with lower priority, but a task
cannot interrupt another task with the same priority.
There can only be one time-critical task. Such a task may interrupt the execution at
any point, while other tasks may only interrupt execution at defined points.

8-12

Engineering an 800xA System

8.3.6.2 Interval Time


The interval time during which the program is executed, is set in the Task Overview
window, or in the Task Properties dialog box.
Default values are 50 ms ( Fast ), 250 ms ( Normal ) and 1000 ms ( Slow ).
You can change these values at any time. For a time-critical task, the interval time can
be as short as 1 ms. The interval time of tasks of priority 1-5 cannot be less than 10
ms. The resolution is 1 ms.
If two tasks have the same priority and both are waiting to execute, the task with the
shortest interval time will be executed first.

8.3.6.3 Offset
The periodic execution of tasks implies that all tasks will sooner or later be scheduled
to execute at the same time. When tasks are scheduled to execute at the same time, the
task with the highest priority will be executed first. If tasks have the same priority the
task with the shortest interval time will be executed first.
POU execution has higher priority than other functions, such as communication. These
functions are performed in the gaps between the executions of different tasks. If
several tasks with long execution times are executed immediately, one after the other,
the time gaps are few but long.
Offset is a mechanism that can be used to avoid unexpected delays in execution when
tasks are scheduled to execute at the same time.
The next two pictures display the execution of two tasks with the same priority with
interval times of 50 ms and 100 ms. When both tasks have a 0 ms offset, the execution
start time of task 2 is delayed, and the actual interval time for task 2 is influenced by
variations in the execution time of task 1.

No offset. The two tasks have the same priority, but different interval times (50 and
100 ms).

8-13

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

Offset is set on task 2. The two tasks have the same priority, but different interval
times (50 and 100 ms) and are thus executed at the requested times.

To set the offset please open the property dialog for a task (e.g. Normal) and insert the
value in ms into the offset field.

8.3.7 Allocation
To assign a task to applications, programs or functions the application has to be
allocated to a controller.
In general, it is recommended that one application be assigned to one controller.
There are some advantages in doing this, such as:

There is only one application to track of variables

The application and the controller may have the same names

Variables can be freely connected ( if several applications are connected to


the same controller, then variables must be sent between the applications via
communications ), and it will be easy to search among them.

Allocate an application to a controller:

8-14

Engineering an 800xA System

1. Right mouse click onto Connected Applications folder and left mouse click
onto Connect Application

2. Click the list box to display available applications. Select an application in the
dialog box displayed ( Appl_Tank1 ). Click OK.

8-15

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8.4 Hardware handling


8.4.1 General
AC800M can be defined as a hardware platform to which individual hardware units
may be connected and which, depending on the specific unit configuration and
operating system selected, can be programmed to perform multiple functions.
Once configured, the AC800M hardware platform effectively becomes the AC800M
Controller.
The hardware units that form the AC800M Controller are:

Processor units (including baseplate)


(PM856/PM860/PM861/PM864/PM865)

High Integrity Processor Unit


(consist of PM865 and SM810 with corresponding baseplates)

Communication interfaces for different protocols (including baseplates)


(CI851/852/853/854/855/856/857/858/860/SM810)

CEX-Bus Interconnection Unit


(BC810)

Power supply units, providing various power output levels


(SD821/822/823/SS822/SS823)

Battery back-up until


(SB821)

8.4.2 Create Hardware Unit


1. Right mouse click onto the Hardware AC800M folder and select New Unit
2. Left mouse click onto the hardware unit (PM861 / TP830)

8-16

Engineering an 800xA System

3. Select a position for the hardware unit in the dialog box displayed. The first
available position is chosen by default. If another position is desired, click the
list box to display available positions. Click OK.

8.4.3 Delete Hardware


Delete an I/O board in Control Builder:
1. Right mouse click onto a hardware unit ( e.g.AI810 )and left mouse click onto
Delete

8-17

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8.4.4 Copy and Paste Hardware Unit


Copy and paste has to be done in PP in the Control Structure.
Copy of a hardware unit in PP Control Structure:
1. Right mouse click onto 1,AI810 and left mouse click onto Copy.

8-18

Engineering an 800xA System

2. Right mouse click onto 11,ModuleBus folder and left mouse click onto Paste.
The I/O board with all settings, connections and properties is copied.

8.4.5 Hardware Unit Settings


For settings, connections and properties of a hardware unit use the hardware editor.
Change parameters on a hardware unit in the Control Builder:

8-19

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

1. Right mouse click onto PM860/TP830 and left mouse click onto Editor

2. In the hardware editor window select a tap and type in the parameter

8.4.6 I/O Boards


8.4.6.1 General
The 800xA system supports a number of different I/O systems. An I/O system is
defined by the way you connect I/O to the system. You can do this in several ways.
For example, you can connect I/O to the controller system bus, connect it directly to
the CPU, or connect it via a fieldbus. In a PC, you can connect I/O via a PC-board that
is either connected to I/O directly or via a fieldbus.
Several I/O units are usually grouped in what are called I/O connections. The number
of I/O units grouped together in a connection depends on the current I/O system. For
example, in Central I/O, there are up to eight I/O units in one connection, but for
PROFIBUS-DP, all I/O units on a particular slave are considered to belong to one
connection. It is also possible to have just one I/O unit in a connection (for example,
On Board I/O).

8.4.6.2 Create I/O


Create a new I/O Board on module bus for the controller:
1. Right mouse click onto the ModuleBus folder and select New Unit
2. Select S800 I/O and left mouse click onto AI810

8-20

Engineering an 800xA System

3. Select a position for the I/O unit in the dialog box displayed. The first
available position is chosen by default. If another position is desired, click the
list box to display available positions. Click OK.

8-21

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8.5 I/O Handling


8.5.1 General
You can connect only one variable to one I/O signal and vice versa. This is not a
problem for output signals, but for input signals it may be necessary to read the same
input signal from different programs, or from different places in the same program.
You can do this by putting the variable connected to I/O in a common area, for
example, the application. Then the variable is connected as a parameter to the
program. If a type IN parameter is used, a copy of the I/O signal's value is received
after I/O copying. If a type IOOUT parameter is used, only a reference to the I/O
signal is received. This means that another task with a higher priority, which also I/O
copies this signal, can update the signal's value in the middle of a scan.
If the same I/O signal is to be read from different applications, I/O copying must be
done from one of the applications. The value can then be moved to other applications
through ordinary communication services, for example Program external
communication.
On digital input units, it is sometimes necessary to access all inputs as a dword. This is
a simple way to test whether one of the inputs is set, and if it is, to test each bit
separately. You can also do this for digital output units. For digital output units, there
is one exception to the rule "one variable to one I/O signal". On digital input units, you
can connect one variable per I/O signal and you can connect a variable to all inputs, as
a dword. You can also do this on digital output units, except you cannot connect in
both ways simultaneously.

8.5.2 Datatypes for I/O


Variables connected to I/O can be of any of the simple data types bool, dint, dword or
real, or any of the system-defined I/O data types. For example, a DI810 unit input can
be connected to a variable of bool data type or a variable of BoolIO data type.
For applications requiring only the channel value, you can use a simple data type.
More advanced applications which request information about forcing I/O channels or
the validity of analog channel values must use system-defined I/O data types.
You can perform forcing and display of forced and non-forced values from an
engineering station regardless of whether the channel is connected to a simple data
type or an I/O data type.
The following I/O data types are defined: BoolIO, DIntIO, DWordIO and RealIO.

8.5.2.1 BoolIO
A variable of type BoolIO can be connected to a digital input or output channel. The
datatype is defined by the system and has the following components:
Name

8-22

Data type

Description

Value

Bool

Value used by the application.

IOValue

Bool

Value of the I/O channel. IOValue and Value are equal if


the channel is not forced.

Engineering an 800xA System

Forced

Bool

Indicates whether or not the channel is forced.

8.5.2.2 RealIO
You can use the RealIO data type for variables connected to I/O. The Value, IOValue,
Forced and Status components are given by the system to the application. The
Inverted, Max, Min, Unit and Fraction components are given by the user of the
application to the system in the Scaling tab. The data type has the following
components.
Name

Data type

Description

Value

Real

Value used by the application.

IOValue

Real

Value of the I/O channel. IOValue and Value are equal


if the channel is not forced.

Forced

Bool

Specifies whether or not the channel is forced.

Status

Dint

If the channel status is not OK, Status can take any of


these values:
-4029 Underflow
-4030 Overflow
-4031 UnitError
-4032 ChannelError

Parameters

SignalPar

Measuring range

The data type SignalPar has the following components.


Name

Data type

Description

Max

Real

Maximum value to which you can scale a maximum


input signal.

Min

Real

Minimum value to which you can scale a minimum


input signal.

Inverted

Bool

Specifies if the connection to the analog I/O is reversed


(0 mA->100%, 20 mA->0%).

Fraction

Dint

Specifies the number of decimals to be displayed.

Unit

string

Display the physical unit.

8.5.2.3 DintIO
The data type dint IO has the following components.
Name

Data type

Description

Value

Dint

Value used by the application.

IOValue

Dint

Value of the I/O channel. IOValue and Value are equal if


the channel is not forced.

Forced

Bool

Specifies whether or not the channel is forced.

8-23

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8.5.2.4 DwordIO
The data type dint IO has the following components.
Name

Data type

Description

Value

Dword

Value used by the application.

IOValue

Dword

Value of the I/O channel. IOValue and Value are equal if


the channel is not forced.

Forced

Bool

Specifies whether or not the channel is forced.

8.5.3 I/O Allocation


Only variables can be connected to I/O channels. Use the connections tab of the
hardware configuration editor to make connections between variables and I/O
channels or other hardware channels. All I/O access is carried out through a variable
connected to an I/O channel.
Connections can only be edited in Offline mode. The connections tab is not available
for units without channels to which you can connect variables.
The connections tab contains a grid. The heading row features the headlings Channel,
Name, Type, Variable and I/O Description. There are as many rows as there are
channels to which you can connect. A digital unit can also be connected to all
channels as a double word (dword).
Connect a variable to a channel of a board:
1. Right mouse click onto a board and left mouse click on Editor Enter

Right
click

Left
click

8-24

Engineering an 800xA System

2. Select the Variable parameter field for Input 1 and click the Insert Path
from Tree button (or CTRL+T). This displays a tree control from which
you can select the application and then the variable you need.

8.5.4 Parametrizing I/O


Signals can be scaled in the unit's hardware configuration editor for each variable
connected to an analog I/O channel. You do this in the Properties tab which is
accessible only in Offline mode.
The tab consists of a grid with rows showing the channel number and a column for
each existing scaling parameter under the headings Channel, Variable, Min (minimum
physical value), Max (maximum physical value), Unit, Fraction and Inverted.
Channels with no variable connected are dimmed to show that these components
cannot be edited.
Set properties for a channel at a board:
1. Right mouse click onto a board and left mouse click on Editor Enter

8-25

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

2. Select the Properties Tab in the Hardware Editor window.


3. Change the default properties for input 1.

8.5.5 Forcing I/O


All I/O channels that can be connected to a variable in an application, can also be
forced in online mode, except for channels such as UnitStatus on each I/O unit and
AllUnitsStatus on the current controller.
Forcing is performed in the hardware configuration editor under the Status tab or using
the POU editor. Application programs requiring information about forcing and forced
values can use the system-defined I/O data types when connecting variables to I/O
channels. The I/O data types contain the IOValues and Forced components.
The Forced component indicates if the I/O channel is forced. The IOValue component
contains the value of the I/O channel.
Only a warm restart will retain the forced I/O. Cold restart will reset all forced I/O.
Normally, only channels with variable connections to application programs can be
forced.
However, if no variable is connected you have to change the parameter Copy
unconnected channels under the Settings tab for the current controller to obtain a
status update. The I/O channels you can select to copy are either None, the Inputs or
the Outputs or both the Inputs and Outputs. If selected, the copying of unconnected
I/O channels is performed once a second so their statuses are available in the Status
tab, as for normally connected I/O channels.
When a channel is forced, all copying between the I/O value and the application value
ceases. The forced value is different for inputs and outputs.
For inputs, forcing changes the variable value sent to the application.
For outputs, forcing changes the physical I/O channel value.
In this way, the application can see both the Variable (application) value and the
Channel (I/O) value.
When an I/O channel is forced the notice icon is shown on the I/O unit in the Project
Explorer.

8-26

Engineering an 800xA System

8.6 Soft Controller


8.6.1 General
The Soft Controller is to be used to simulate an application. This can be used to
download and simulate the application to the Soft Controller, independently of the
intended application hardware.
It is also possible to use the Soft Controller for communication purposes, for example,
COMLI or MODBUS.

8.6.2 Start Soft Controller


To start the Soft Controller please

Double click onto the Soft Controller icon on the desktop

Click All Programs folder\ABB Industrial IT\800xA System\Control and


IO\Soft Controller.

Click the Start button and minimize the dialog then.

8.6.3 Assign Soft Controller in CBM


With the Simulate Hardware functionality in the Control Builder you can simulate a
AC 800M controller in the Soft Controller.
Take a standard AC 800M controller and open the Context Menu for it. Please select
the entry Simulate Hardware.

8-27

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8.6.4 IP-Address Soft Controller


If you have a single node installation you can use the local host IP-Address
127.0.0.1:2. Otherwise you have to setup the IP-Address from the computer, where the
Soft Controller runs on.
To get the IP-address please select the Soft Controller and do a left mouse click onto
File and left mouse click onto View logfile.

In the logfile the IP-address from the Soft Controller computer is shown (in this
example the network address is 10.1.182.37:2 ).

8-28

Engineering an 800xA System

IPAddr

To simulate the AC 800M controller in the Soft Controller you have to set the System
Identity to the Soft Controller IP-Address.

8-29

Engineering an 800xA System


Chapter 8 Hardware and Task configuration

8-30

Вам также может понравиться