Welcome to the Industrial Automation website!

NameDescriptionContent
HONG  KANG
E-mail  
Password  
  
Forgot password?
  Register
当前位置:

Industrial Networks Connecting Controllers via OPC

来源: | 作者:佚名 | 发布时间 :2023-11-13 | 315 次浏览: | Share:

Abstract

In order to modernize their infrastructure and keep up with the state of the art,

ABB Power Systems decided to replace the older controller AC450 with a new

generation of controllers called AC800M. Just like its predecessor, its main task is to

work as a sequencer in an otherwise mostly unchanging topology. Although the new

controller AC800M provides modern communication features and a sophisticated

application development system, it lacks of a communication interface compatible

with the residing controllers AC160. A hardware approach addressing this problem

is in development, but not available at this point of time. Thus the decision was

made to realize the connection using OPC, a widely spread and open software

communication interface standard with a high potential of reusability. In addition,

it was aimed at gaining additional knowledge about the OPC interface, which is

commonly used in industry.

In this thesis, we evaluate adequate hardware and software to realize this connection

and we have programmed the controllers with applications to evaluate its

performance and integrity. In addition, we are making considerations about redundancy

that is vital in automation business in order to increase reliability and

availability. We have shown that it is possible to interconnect controllers using

OPC with satisfactory average performance results. Due to high maximum round

trip times and high complexity when realizing redundancy, it is recommended to

use such a system for testing purposes or non-critical operational applications, but

not for critical systems. In this thesis we also identify and judge several alternative

ways of connection.


Introduction

This chapter will provide a rough overview of the problem treated by this Master’s

Thesis. All technical devices and expressions will be explained more precisely in

the next chapter. Please note that since this is a public thesis, it does not contain

sensitive company-internal data.

1.1 ABB Power Systems

ABB Power Systems is one of the world’s leading providers of infrastructure for

controlling combined cycle power stations and waste-to-energy plants. Such a

plant control infrastructure includes several hardware parts consisting of controllers,

input/output-boards and communication devices as well as many software components

to engineer, run, observe and analyze the power plant. A power plant control

system has to satisfy a broad variety of different needs, from the efficient and reliable

control of the turbines and associated supporting functions (such as lube oil)

to easy configuration and operation as well as to sophisticated analysis functions

addressing technical and economical aspects.

1.2 Problem Statement

Due to high investment costs, the technical management of power plants is a slowgoing

business with long life-cycles. Thus, a considerable amount of hardware

devices currently in use are tens of years old. For future applications within ABB

Power Systems it will be necessary to connect a controller of the newest series used

within ABB, Control IT AC800M, with an older controller of the type Advant

Controller 160 (AC160). The problem is that these two controllers do not share

a fast communication interface of similar type and therefore cannot communicate

directly. The standard communication intended for AC160 is Advant Fieldbus 100

(AF100). However, AC800M can support a whole range of buses except for AF100.

As a consequence, the communication must be implemented using some relaying

technique.

AF100 is a planned bus with a pre-determined scan table and thus meets realtime

requirements. Process Data Transfer is managed through Cyclic Data Packets

(CDPs). Each CDP is configured individually on the communication interface for

a certain signal identity, cycle time, size and direction. Each broadcasted CDP has

a unique signal identity, whereas receiving CDPs can have the same signal identity,

provided they are situated in different communication interfaces. That is, multiple

interfaces can receive the same CDP. The cycle time determines how often the data

of the CDP is transferred on the bus. When a CDP is transferred on the Advant

Fieldbus 100, the interval between consecutive transfers is always the same, the

cycle time. Thus, process data transfer is deterministic, regardless of which other

tasks the communication interfaces perform

AF100 is a planned bus with a pre-determined scan table and thus meets realtime

requirements. Process Data Transfer is managed through Cyclic Data Packets

(CDPs). Each CDP is configured individually on the communication interface for

a certain signal identity, cycle time, size and direction. Each broadcasted CDP has

a unique signal identity, whereas receiving CDPs can have the same signal identity,

provided they are situated in different communication interfaces. That is, multiple

interfaces can receive the same CDP. The cycle time determines how often the data

of the CDP is transferred on the bus. When a CDP is transferred on the Advant

Fieldbus 100, the interval between consecutive transfers is always the same, the

cycle time. Thus, process data transfer is deterministic, regardless of which other

tasks the communication interfaces perform

AF100 Communication

To establish connection to the AF100 fieldbus, we inserted an ABB CI527 PCI card

into the personal computer. The according AC100 OPC Server, which allows us to

access the AF100 bus, was installed with the 800xA for AC100 software extension

[19]. It is to mention that AC100 OPC Server allows access on bit-level, for example,

an integer value is presented by the server both as integer value and split up in 32

boolean values.

2.5.3 MMS Communication

An Intel Ethernet PCI card allowed the communication with the AC800M via MMS

on TCP/IP. The according AC800M OPC Server is part of the 800xA installation.

All communication over this port is performed via the Manufacturing Message

Specification (MMS) protocol running over TCP/IP, utilized for example by the

engineering tool to program the controller. The same connection can also be used

for controller to controller communication when having several MSS-ready devices.

Furthermore, the AC800M OPC Server communicates with the controller via the

same protocol and infrastructure, making available all variables by default [17].

2.5.4 Beckhoff PROFIBUS Communication

For the first PROFIBUS connection we used the FC3102 PCI card from Beckhoff.

This card was chosen due to its flexibility: It provides two ports in one PCI card

which can be freely adjusted either as master, slave or passive bus monitor [20


The programs we used to interconnect two OPC servers were Matrikon’s OPC

Data Manager (ODM) [23] and Kepware’s LinkMaster [24]. These programs called

OPC routers or OPC bridges are able to read data from one server and write

it to another. Both programs are similar in configuration and operation. The

functionality includes the definition of groups and update rates, input/output pairs,

dead-bands and quality checks. LinkMaster even allows to write one input value to

more than one output variables and to perform mathematical operations in between.

To make bulk configuration easier (e.g. with Excel), both programs allow to import

and export the configuration from and to comma separated values (CSV) files

We ran both bridging programs with a fully functional, time-limited testing

license provided for free by its vendors for the duration of our thesis.

2.5.7 Helper Programs

For setup and testing, a range of other software was used on the engineering/test

system computer. The most important programs are shortly specified here:

• MatrikonOPC Explorer is a freeware OPC client allowing to connect to

any compliant OPC server and displaying the value of chosen tags. It also

supports writing of variables and preserving settings. Furthermore, it allows

measuring the maximum update rate of the OPC servers it is connected to.

• Office 2003 of Microsoft was used for day to day work and configuration

tasks. Especially Excel was helpful for variable definition in AC800M and for

bulk configuring the bridging software using CSV files. Furthermore, with the


  • SIEMENS 6GK1105-2AA10 SIMATIC NET series optical switching module (OSM ITP62)
  • Schneider Modicon Quantum 140CPU65260 Unity Processor
  • Schneider Modicon Quantum 140ACO02000 Analog Output Module
  • Schneider Modicon Quantum 140CPS11420 power module
  • Allen-Bradley 1747-CP3 SLC ™ Series of programming cables
  • Kollmorgen S33GNNA-RNNM-00 - Brushless Servo Motor
  • Kollmorgen 6sm56-s3000-g-s3-1325 - Servo Motor
  • Kollmorgen AKM52K-CCCN2-00 - Servo Motor
  • Kollmorgen PSR3-230/75-21-202 - Power Supply
  • Kollmorgen akm24d-anc2r-00 - Servo Motor
  • Kollmorgen AKM22E-ANCNR-00 - Servo Motor
  • Kollmorgen S60300-550 - Servo Drive
  • Kollmorgen B-204-B-21 - Servomotor
  • Kollmorgen AKM21E-BNBN1-00 - Servo Motor
  • Kollmorgen TT2953-1010-B - DC Servo Motor
  • Kollmorgen pa8500 - Servo Power Supply
  • Kollmorgen BDS4A-210J-0001-207C2 - Servo Drive
  • Kollmorgen TTRB1-4234-3064-AA - DC Servo Motor
  • Kollmorgen MH-827-A-43 - Servo Motor
  • Kollmorgen AKM24D-ACBNR-OO - Servo Motor
  • Kollmorgen 00-01207-002 - Servo Disk DC Motor
  • Kollmorgen AKM21C-ANBNAB-00 - Servo Motor
  • Kollmorgen PSR3-208/50-01-003 - Power Supply
  • Kollmorgen 6SM56-S3000 - Servo Motor
  • Kollmorgen DBL3H00130-B3M-000-S40 - Servo Motor
  • Kollmorgen 6SN37L-4000 - Servo Motor
  • Kollmorgen AKM65K-ACCNR-00 - Servo motor
  • Kollmorgen 6SM56-L3000-G - Servo Motor
  • Kollmorgen AKMH43H-CCCNRE5K - Servo Motor
  • Kollmorgen PSR4/52858300 - Power Supply
  • Kollmorgen KBM-79H03-E03 - Direct Drive Rotary Motor
  • Kollmorgen AKM33E-ANCNDA00 - Servo Motor
  • Kollmorgen U9M4/9FA4T/M23 - ServoDisc DC Motor
  • Kollmorgen AKM13C-ANCNR-00 - Servo Motor
  • Kollmorgen AKM43L-ACD2CA00 - Servo Motor
  • Kollmorgen AKM54K-CCCN2-00 - Servo Motor
  • Kollmorgen M-605-B-B1-B3 - Servo Motor
  • Kollmorgen AKD-P00606-NBAN-0000 - Rotary Drive
  • Kollmorgen 6SM-37M-6.000 - Servo Motor
  • Kollmorgen A.F.031.5 - Sercos Interface Board
  • Kollmorgen 918974 5054 - Servo PWM
  • Kollmorgen U12M4 - ServoDisc DC Motor
  • Kollmorgen AKD-B00606-NBAN-0000 - Servo Drive
  • Kollmorgen MV65WKS-CE310/22PB - Servo Drive
  • Kollmorgen 65WKS-CE310/22PB - Servo Drive
  • Kollmorgen EM10-27 - Module
  • Kollmorgen S64001 - Servo Drive
  • Kollmorgen CR03200-000000 - Servo Drive
  • Kollmorgen 6SM57M-3000+G - Servo Motor
  • Kollmorgen BDS4 - Servo Drive
  • Kollmorgen AKD-P00306-NBEC-000 - Servo Drive
  • Kollmorgen AKD-B01206-NBAN-0000 - Servo Drive
  • Kollmorgen STP-57D301 - Stepper Motor
  • Kollmorgen 6SM37L-4.000 - Servo Motor
  • Kollmorgen 44-10193-001 - Circuit Board
  • Kollmorgen PRDR9SP24SHA-12 - Board
  • Kollmorgen PRD-AMPE25EA-00 - Servo Drive
  • Kollmorgen DBL3N00130-0R2-000-S40 - Servo Motor
  • Kollmorgen S406BA-SE - Servo Drive
  • Kollmorgen AKD-P00607-NBEI-0000 - Servo Drive
  • Kollmorgen AKD-P01207-NBEC-0000 - Servo Drive
  • Kollmorgen CR03550 - Servo Drive
  • Kollmorgen VSA24-0012/1804J-20-042E - Servo Drive
  • Kollmorgen N2-AKM23D-B2C-10L-5B-4-MF1-FT1E-C0 - Actuator
  • Kollmorgen 04S-M60/12-PB - Servo Drive
  • Kollmorgen H33NLHP-LNW-NS50 - Stepper Motor
  • Kollmorgen A-78771 - Interlock Board
  • Kollmorgen AKM43E-SSSSS-06 - Servo Motor
  • Kollmorgen AKD-P00607-NBEC-0000 - Servo Drive
  • Kollmorgen E21NCHT-LNN-NS-00 - Stepper Motor
  • Kollmorgen cr10704 - Servo Drive
  • Kollmorgen d101a-93-1215-001 - Motor
  • Kollmorgen BDS4A-203J-0001-EB202B21P - Servo Drive
  • Kollmorgen MCSS23-6432-002 - Connector
  • Kollmorgen AKD-P01207-NACC-D065 - Servo Drive
  • Kollmorgen CK-S200-IP-AC-TB - I/O Adapter and Connector
  • Kollmorgen CR10260 - Servo Drive
  • Kollmorgen EC3-AKM42G-C2R-70-04A-200-MP2-FC2-C0 - Actuator
  • Kollmorgen BDS5A-206-01010-205B2-030 - Servo Drive
  • Kollmorgen s2350-vts - Servo Drive
  • Kollmorgen AKM24D-ANC2DB-00 - Servo Motor
  • Kollmorgen E31NCHT-LNN-NS-01 - Stepper Motor
  • Kollmorgen PRD-0051AMPF-Y0 - Servo Board
  • Kollmorgen TB03500 - Module
  • Kollmorgen 60WKS-M240/06-PB - Servo Drive
  • Kollmorgen M21NRXC-LNN-NS-00 - Stepper Motor
  • Kollmorgen H-344H-0212 - Servo Motor
  • Kollmorgen MCSS08-3232-001 - Connector
  • Kollmorgen AKM33H-ANCNC-00 - Servo Motor
  • Kollmorgen PA-2800 - Power Supply
  • Kollmorgen MTC308C1-R1C1 - Servo Motor
  • Kollmorgen PRDR0091300Z-00 - Capacitor Board
  • Kollmorgen BDS4A-206J-0024/01502D79 - Servo Drive
  • Kollmorgen S20330-VTS - Servo Drive
  • Kollmorgen S20250-CNS - Servo Drive
  • Kollmorgen SBD2-20-1105-WO - Servo Drive Board
  • Kollmorgen M405-C-A1--E1 - Servo Motor
  • Kollmorgen PRD-PB805EDD-00 - Servo Drive
  • ABB NE810 3BSE080207R1 Network switch
  • ABB NE802; NE802 Network switch 3BSE080237R1
  • GE HYDRAN 201Ti Single Channel Gas Monitoring Transmitter
  • GE Hydran M2-X Transformer Online Monitoring Equipment
  • GE Hydran M2 Transformer Monitoring System
  • Kollmorgen Seidel 65WKS-CE310/6PB - Servo Drive Control
  • Kollmorgen U9M4T - Servodisc DC Motor, With Harmonic Drive Transmission
  • KOLLMORGEN TT-2952-1010-B - INLAND BRUSH SERVO MOTOR WITH TACH
  • ONE VF-RA2474N-5/10/12/15 - Servo Drive Power Cable
  • Kollmorgen S30601-NA - Servostar 346 + EtherCat
  • Kollmorgen HDIL100P1 - Direct Drive Linear Hall Effect Assembly
  • Kollmorgen TT-4239-1010-AA - DC Servo Motor 875 RPM
  • PMI Kollmorgen 00-00907-999 - ServoDisc DC Motor 0.5" Diameter Shaft
  • INLAND KOLLMORGEN TT-2952-1010-B - MOTOR (USES RESOLVER)
  • KOLLMORGEN CTI-187-2 - BRUSHLESS MOTOR DANAHER MOTION
  • Kollmorgen 12-0857 - Lead Screw Electric Cylinder without Motor
  • Kollmorgen AKM13C-ANCNR-00 - Servo Motor
  • kollmorgen 6sm, 10m - Cable
  • KOLLMORGEN ME2-207-C-94-250 - GOLDLINE SERVOMOTOR-ENCODER COMMUTATED
  • Kollmorgen MT308A1-R1C1 - GoldLine Motor
  • Kollmorgen 73 & 54 cm Travel - Ironless Linear Motors on THK Rail
  • Kollmorgen AKM53H-ACCNR-00 - Servo Motor
  • Kollmorgen PA5000 - Power Supply
  • KOLLMORGEN D082M-12-1310 - GOLDLINE DDR DIRECT DRIVE ROTARY MOTOR 230Vrms 300 RPM
  • Kollmorgen RBEH-01210-A14 - Brushless Motor, Heidenhain D-83301
  • KOLLMORGEN Servotronix PRD-CC18551H-11 - Servo Board
  • Kollmorgen DH083M-13-1310 - Ho Direct Drive Rotary. Max Speed: 400/500 RPM
  • KOLLMORGEN BMHR-4.8XX - INLAND MOTOR
  • Kollmorgen Seidel 84421 - Motor Cable 20 Metre 6SM 27/37 AKM DBL Engines
  • Kollmorgen AKD1207-NBCC-0000 - Drive