Control Expert Guide Lines

Introduction

The aim of this document is to provide to the users
of Control Expert some advices on :

how best to use the possibilities offered by the software,

how to optimize the memory usage,

how to optimize the PLC performance in Run Time.

Versions

Date

Author

comment

1.0

JP F

creation

2014 Nov 28th

JP F

DFB mono instantiation      page10

-Upload Infos
page 28

-Data dictionary
page 34

2.0

2016 August 17th

M A

Updated chapter “To improve Build On Line performance”, and
“To improve Build Off Line performance”

2.2

2016 Sept 2nd

M A

Update chapter “On Line modification”

2.3

2020 March 1st

M L

Add info on Program Units

2.4

2021

Feb 4th

M L

Add FBD link (PEP034572R)

Contents

................................................................... 1

Control
Expert Guide Lines. 1

Contents  2

PC configuration. 3

Acronyms. 3

Program
organization   4

Introduction. 4

Multitasking to Optimize Processing. 5

Sections. 6

Sub-routines (SRs) 7

Program Units. 7

Data types
and Variables  8

Introduction. 8

Data Types (EDTs) 8

Derived Data Types (DDTs) 9

Function
Blocks  10

User Elementary Function Blocks (EFBs) 10

Derived Function Blocks (DFBs) 11

User Elementary Functions (EFs) 13

Cleanup application. 14

Programming
languages  17

Introduction. 17

Performance of Languages in Run tIme. 18

FBD Language Best Pratice. 19

Modules and
Functional View   20

Principle and Advantages. 20

Physical
Station configuration  21

Inputs /
Outputs modules. 21

Derived Data Types
for Input/Output Modules (IODDTs) 22

Communication
Configuration. 24

FDT / DTM technology. 25

Project
management 28

Building a project 28

Download the project in the PLC.. 29

On line modification. 30

To improve Build On Line performance. 30

To improve Build Off Line performance. 31

Import functions. 32

Management
of the variable current values. 32

Migration
of Control Expert projects. 33

Additional
information  34

How to duplicate a FB instance in a graphical section. 34

OFS \
Control Expert synchronization. 35

How to
control the customer XML files. 36

Modification
of the IP address. 37

PC configuration

See Control Expert ReadMe delivered with product.

Acronyms

PLC
:   Programmable Logic
Controller

CPU:
Control Processing Unit

I\O
:     Inputs \
Outputs

ST
:     Structured
Text language

LD
:     Ladder language

IL
:      Instruction
List language

FBD
: Functional Blocks Diagram
language

SFC
:   Sequential Functional Chart language

EDT
:  Elementary Data Type

DDT
:  Derived Data Type

IODDT
: Input Output Derived Data Type

EFB
:   Elementary Function Block

DFB
:   Derived Function Block

EF
:     Elementary Function

FDT
:   Field Device Tool

DTM
: Device Type Manager

DCS :  Distributed Control
System

PRM : Profibus Remote Master

XML : Extensible Markup Language

XSD :  Extensible Schema
Definition

Program organization

Introduction

Control Expert enables to use a modular
programming approach by the organization of code into:

Tasks (Multitasking),

Sections,

Sub-routines (SRs).

Program Units

Multitasking to Optimize Processing

Several tasks can be used
to distribute the code, the Control Expert tasks are :

The obligatory Mast task
(periodic or cyclic) contains the main part of the program,

The Fast task (periodic) is used to
execute the parts of the application that require priority processing.
It is intended for use with short-cycle processes to avoid lower cycle
tasks  (Mast, Aux) reaching
their maximum (watchdog) cycle time,

Auxiliary tasks (periodic) which are available only if the Mast task is periodic
and are used to execute parts of the application with lower processing
priority,

Events which are used to execute parts of the application that are
assigned the highest priority in case of external events provided by the
I/O modules or Programmable timer.

The following diagram shows the tasks in a multitasking
structure and their level of priority:

Note 1 :  The multitask system enables to optimize
the PLC performance and adapt the program to best meet the requirements of
the process to be automated.

Sections

A section can be programmed in one of the five
IEC languages of Control Expert

ST: Structured Text

LD: Ladder

FBD: Function Block Diagram

IL: Instruction List

SFC: Sequential Function Chart

A section can only belong to one task (Mast,
Fast, Aux…).

Note 1 : You are advised to use
small sections wherever possible in order to facilitate program maintenance
and optimize performance when performing online modifications. The size of a
section should be limited by the application structure to around 300 Lines in LD, 1000 lines of code in ST
and IL, 300 Blocks in FBD

Note 2 : The
execution of the Sections can be controlled by a conditional bit (configured
in the properties of the Sections), if the process doesn’t need to execute
one or several Sections at each PLC cycle, the use of this features allows to
optimize the Scan Time.

Note 3 : For confidentiality or
security raisons the code of the sections can be protected by Password in
Read or Write mode.

Sub-routines (SRs)

An SR section can be programmed in one of the
following four languages: LD, IL, ST, FBD.

An SR section can only belong to one single task.

We do not recommend use of SR in new program (SR
are mainly used to allow smooth migration of converted application from our
legacy products)

Prefer DFB instead.

Note 1 : SRs are used for
recurrent types of processing that always act on the same global application
variables.

Program Units

A Program Unit is made up of:

-
Parameters

-
Local variables

-
Set of sections

You can build a very modular application using
Program Units.

Online modifications are more effective because changes
are localized in a small area of the application.

It is recommended to use Program Units as much as
possible.

Data types and Variables

Introduction

Control Expert allows to use two categories of variable:

Located variables, defined by a physical memory location,

Unlocated variables, defined by a symbolic name.

Note 1 : We recommend the use of
Unlocated variables because they offer the following advantages:

Better standardization for all PLC families (Premium, Quantum,
Atrium),

Independence from physical PLC memory (the system manages the variables)
which guarantees better programming consistency (no memory overlaps),

Possibility of development
without the need for a high level of coordination between developers,

Possibility to reuse program sections with big facility to
re-assign variables using their names,

Easier maintenance, for example to access and modify tables
(Arrays).

Elementary

Data Types (EDTs)

The Elementary Data Types (EDTs) are :

Integer (Int, Uint, Dint, Udint) or Floating point (Real) data
types for arithmetic operations,

Bit string data types (Word, Dword, Byte) for logical operations
(AND, OR, XOR, etc.),

Boolean data types for the use of single bits (Bool) or with edge
management (Ebool),

Time management data types (Date, Time, TOD, DT).

Note 1 : Control Expert allows the use of extracted
bit of word (type Int, Word and Byte). Sometimes it can be preferable to use
extracted bits of word instead of Bool Types. As it allows working directly
on the word instead of each bit.

It saves also
memory, as for 16 extracted bits from a Word, memory space is 2 bytes, while
16 BOOL take 16 bytes.

Derived Data Types (DDTs)

DDTs are defined by the user as sets of other
data types. DDTs generally allow the structure and legibility of an
application to be optimized by making DDT variables corresponding to
application objects (motor, valve, etc…).

A DDT "structure" is a data type which contains elements of
different types.

A DDT "array" is a data type which contains elements of same
type.

Note 1 : Any modification of a
DDT type (addition or deletion of elements) is automatically propagated to
all of its corresponding instances in the program -> Save time in Build
time,

Note 2 : It is highly
recommended to use DDT structures as much as possible. This enables to limit
the number of variables and optimize the performance of the variable editor
in Control Expert -> Save time in Build time,

Note 3 : Avoid the large DDT structures
including several objects, prefer to define one structure for one object
(motor, valve, etc…) -> Best legibility of the application,

Function Blocks

User Elementary Function Blocks (EFBs)

The EFB function blocks are written by the user in C language.  They are made up of:

Input variables ,

Internal variables ,

Output variables ,

A processing algorithm in C language.

The Control Expert EFB
ToolKit option, which integrates Microsoft’s C compiler, is required in
order to implement EFBs.

Note 1 : If the application requires very complex algorithmic
processing, using C language allows to take advantage of the complete set of
instructions offered by this language.

To optimize the Run time, it
should be noted that the code generated by the EFB ToolKit is executed by the
Intel 32 bit (Premium legacy) and Pentium (Premium and Quantum H-End)
processors that are fitted to our CPUs.

Note 2 : EFBs allow to
standardize specific functions of the procedure to be automated or to
standardize application devices (Motor, Valve, etc.) by offering:

Generic processing by information exchanges through parameters.
Parameters can be transferred by reference (address) or directly by
value,

Latching of parameters and internal variables used during
processing.

Note 3 : Run time performance will be particularly sensitive if the
EFB uses iterative instructions (loops) or
digital treatment.

Note 4 : The fact that the code of the EFB is written in C languages
it’s protected naturally in Control Expert (not visible), very
interesting for confidentially raisons.

Derived Function Blocks (DFBs)

The Derived Function Blocks types are developed
by the user using one or more languages (according to the number of
sections). These languages are:

Graphical languages (LD \ FBD),

Textual languages (ST \ IL).

The advantage of the DFBs is that they enable to
standardize specific functions of the procedure to be automated or to
standardize application devices (Motor, Valve, etc.). More generally the DFBs
allow to :

Simplify program design and data entry,

Increase the legibility of the program,

Facilitate the debugging of the program,

Reduce the volume of the generated code.

Note 1 : Limit the size of DFB
sections (see Section chapter) in order to optimize performance when
performing Online modifications. For performance, prefer to use ST language
than LD or FBD language.

Note 2 : Run time performance
will be better if the DFB uses Boolean instructions, linear instructions (no
loops) and instructions acting on tables (arrays)

Note 3 : Run time will be particularly
degraded when using Loops (For Next, While DO…), programming with Index
( array[index] ), Upstream jump, big move of data memory, use of several level
of nested DFBs.

It is particularly recommended
optimizing the code of a DFB which will be used several times. Some of them
can be used hundreds of time, in that case it is particularly important to
optimize the code.

Note 4 : Same instance of a DFB can be used several time in the program, it
saves data memory, but to avoid in the application a data conflicts some rules
must be respected:

-No
Data conflict problem if:

- The DFB contains Inputs, Outputs
and Inputs/Outputs parameters.

-The DFB contains Privates
variables where the stored value    doesn’t need to be
maintained after the execution of the DFB Instance.

-Possible
Data conflict problem if:

- The DFB contains Privates
Variables where the stored value needs to be maintained after the execution of
the DFB Instance.

- The DFB has Init values
configured in the Public, Privates variables or in the Inputs parameters.

-The DFB contains Timer, Counters.

Another mean to reduce DFB data consumption, is to use addressing mode passed
by address (see Note 5)

Note 5 :  DFB Addressing mode :

*2

*1

*4

*3

Group the EDT Inputs in a Structure (when
possible) to save scan time, EDT data exchange is performed by Value
(*1), while DDT data exchanges by address (*2),

It reduce also the number of Inputs pins used.

When big structure instances (DDT with several hundreds of elements)
are connected to an output parameter of a DFB, addressing mode by value
VAL (*4), you can optimize the execution time of the DFB by modifying
the Output parameter in Input/Output parameter, addressing mode by
address (*3).

User Elementary Functions (EFs)

The EF function blocks are functions used in a
program which perform a predefined software function.

Control Expert provides a set of system EFs. It
is also possible to develop your own EFs in C language using the EFB ToolKit
option, which integrates Microsoft's C compiler.

It should be noted that EFs have no internal
Latch of variables.

This operating mode is used to limit memory usage
in the data area.

Note 1 : For applications requiring more
memory capacity in the data zone, it is preferable to use EF rather than EFB
if the desired function is proposed in both types.

Cleanup application

When programming, it
happens that several functions or variables become useless are removed from
application. Even if they are no more in the programming sections, these
functions or data always belong to the application. They must be purged from
the application to free memory.

To perform Functions (FB,
EFB, DFB) purge in the right way :

First “Purge Unused FB Instances”
from “Function blocks” tab,

in Data Editor

Second “Purge Unused Types” from
“DFB Types” tab,

in Data Editor

Third “Purge Unused Types” from “Application”
Node,

in the Types Library Manager (Menu Tools)

This allows
to:

Eliminate the EF binary code from the program memory area when
they are no longer called in the application (sections, DFBs),

Eliminate EFB binary code from the program memory area when
instances are deleted from the variables editor,

Delete EFs or EFBs types which are no longer used in the program
from the Libset’s "Application" directory.

To perform Variables purge:

“Purge Unused Variables” from
“Variable” tab,

in Data Editor

Note 1 : It is also possible to cleanup all DFB
types of their useless private variables

“Purge Unused Private Data
Instances” from “DFB Types” tab,

in Data Editor

It is recommended to
perform this action at the end of the DFB programming to decrease the memory
consumption of instances.

Programming languages

Introduction

Control Expert includes
the five IEC61131-6 languages as standard:

IL (Instruction List), a language very close to the assembly
language, which enables you to work in very close conjunction with the
processor by using its registers and accumulators,

ST (Structured Text), a structured language which allows you to
process algorithmic programs with complex digital processing,

LD (Ladder Diagram), ladder language is adapted to
“schematic electrical diagram” type logic, particularly well
adapted to programs written in combinational logic. However, the set of
instructions enables more complex algorithms to be implemented via the
operation blocks by using ST instructions,

FBD (Functional Block Diagram) is particularly well suited to
programs that include process control,

SFC (Sequential Functional Chart) is a “state
machine” type language, adapted to sequential processing by steps
and transitions.

Performance of Languages in Run tIme

For applications using Boolean instructions:

Performance is identical for ST, IL and LD languages,

FBD performance is lower because data has to be copied between
the blocks.

For applications using Boolean and numerical
instructions:

Performance is identical for ST and  IL,

LD performance is 10% lower than for ST \ IL,

FBD performance is 30% lower than for ST \ IL.

Note 1 : If you use the Ladder
language (LD) to optimize the Run time performance
uncheck in the Control Expert Project Setting the option ‘Generate with LD link
animation’.

Note 2: If you use the structured Text language (ST):

·
Use
the loops “WHILE DO” against the loops “FOR NEXT” (if
possible) which are more consuming in cycle times,

·
Use
the functions of Libset dedicated to the Arrays management (e.g. use MOVE_AREBOOL_INT rather than the assignment or the loops
“FOR”), these functions allow the optimization of the cycle time.

Note 3: Avoid the variables
assignment with Constant Values, prefer the use of Init values defined in the
Data Editor.

Note 4: Avoid
the exchange of Structure information element by element
(MyStruct1.Element1 := My_Struct2.Element1, ect…), if possible prefer
to use  directly the address
(My_Struct := My_Struc2) which perform the complete element exchanges.

Note 5: We do not
recommend massive use of the following functions :

·
BIT_T0_WORD() -> Use the assignment on
extract bits,

·
WORD_T0_BIT() -> Use the assignment on
extract bits,

·
SEL() -> Use the function MOVE(),

(These functions will
be optimized in Control Expert V6.0)

Note 6: Avoid a big
SFC chart (section), prefer to define several SFC sections (Master Chart \
Slave Charts).

FBD Language Best Pratice

To exchange data between blocks, you can use
variables or wire.

Wire provide an easy way to read code interaction
for small size application.

If EDT data are exchanged, you can animate values of
TEST_DFB.IN.

Copy is done by value in this case.

Note: In this case animation of
complex structure will be impossible.

If Complex Data are exchanged (structured variable such
as DDT), we strongly recommend using variables to avoid any performance impact.

Modules and Functional View

Principle and Advantages

A functional module is a
group of program elements intended to perform a PLC function.

A functional module is comprised of:

Program or event processing sections,

Animation tables associated with the functional
module,

Operator screens associated with the functional
module,

Nested functional modules, performing one or
more automation sub-functions

Note
1 : You are
advised to adopt a development approach using modules and the functional
view, because this enables you:

·
To not be
limited by the structure imposed by the PLC system,

·
To develop in a
consistent and reusable way for all projects,

·
To have direct
access to automation functions.

Note 2 : The representation of
the application in functional view does not take into account the order in
which the PLC executes the program. The sections
contained within the functional modules are executed in the order in which
they are organized in the tasks of conventional structural view (from top to
bottom).

Physical Station configuration

Inputs / Outputs modules

Moving an application-specific module
within the configuration (change of position) results in the automatic
re-allocation of all the references to this module in the program. This means
it is possible to modify the configuration of these modules at any time
without any impact on the program.

If the same type of module
must be used several times in the configuration, simply configure it once and
then Copy\Paste it to the other desired locations.

The module configuration
parameters are copied for each module. You can then adjust them if necessary.

Derived Data
Types for Input/Output Modules (IODDTs)

The purpose of DDTs for I/Os
is to encapsulate variables corresponding to the modules'
application-specific channels in data structures. These data structures are
predefined and supplied in Control Expert for the various modules of the PLC
station.

Using IODDTs:

Facilitates access to application-specific
channels via predefined elements which can be customized (Alias) and
referred to by the program,

Makes it possible to program the application
without having to have the application-specific modules present in the
hardware configuration. This is particular useful when developing
generic applications. The links with the modules will be established
once they have been defined in the physical station configuration

IODDTs are
accessed via the library by selecting the <Catalog> section.

Note: IODDT instances are automatically allocated to
physiques addresses (%MW etc.).

Example: the "Input_Pressure" instance of a standard
"T_DIS_IN_STD" IODDT used with discrete input modules:

The
link between this instance and the discrete input module located in slot 2 of
rack 0 is shown below. The physical addresses are automatically assigned by Control
Expert for each element of the data structure.

In the screen shown below, two Aliases (symbols)
have been defined by the user (Erreur_Voie and Value_Pression) to correspond
to the two elements of the I/O DDT structure shown above.

Communication Configuration

From the "Communication"
directory of the project browser, you can define the logical configuration of
the networks to which the PLC station is connected:  Ethernet, Modbus Plus, Fipway, etc.

The method to be used
involves the following four steps:

·
Creation of a logical network,

·
Configuration of the logical network,

Declaration of the module or the PCMCIA card,

·
Association of the card or of the module with
the logical network.

The advantage of this
approach is that once steps 1 & 2 (creation and configuration of the logical
network) have been performed, you can start programming without having to
first perform steps 3 & 4. These two steps can then be performed at any
time, once the physical location of the network modules has been determined
in the station configuration.

FDT / DTM technology

The FDT/DTM (Field Device Tool / Device
type Manager) technology in introduced in the early 2000s due to the need to
simplify the integration of field devices in distributed control system
(DCS).

This
technology has the following advantages:

·
Open communication interface to integrate third party equipment from
different manufacturers using descriptive files called DTM to configure,
monitor and manage the lifecycle of such equipment

·
Standard user interfaces to operate the equipment (engineering, operations, maintenance,

·
Platform independent, depending on the user need the DTM of the different devices are
accessed on the same way whether it’s a simple configurator or a
sophisticated life cycle management system,

·
Independent of the protocol, the FDT Container and the DTM Devices have
communication interfaces for HART, PROFIBUS, FUNDATION fielbus, AS-I and
other insdustrial protocols.

·

Example
of architecture managed by FDT/DTM:

·
Ethernet
IP for the STB Device

·
ModBus
TCP \ Profibus DP for the PRM Gateway

After the installation of the DTM, the CONTROL EXPERT DTM
Catalog must be updated.

After their configuration in the CONTROL EXPERT project the DTM are
present in the  DTM
Browser.

For the Devices on Profibus DP \ PA connected  to the PRM Gateway itself connected to
Modbus TCP the IOScanning table is automatically filled

The
Devices variables managed by the DTMs are automatically generated in CONTROL
EXPERT.

Project management

Building a project

It is mandatory to build the whole project (Rebuild All Project) in
the following cases:

When the project is first built,

When switching from CPU <-> Simulator,

When the processor or PCMCIA memory card is
replaced,

When certain modifications are made to the
"Project Settings" (Upload Information, etc.).

The incremental
generation (Build Project) must be used preferably in local mode to optimize
the generation time, it is obligatory in connected mode PLC in Run (On line
modification) or PLC in Stop.

Note 1: Once the application is debugged and "definitive",
it is advisable to perform a Rebuild all, to free memory as much as possible.

Note 2: Once the program has
been built do not forget to regularly check memory usage (PLC -> Memory Consumption... menu). When Control
Expert detects excessive memory fragmentation the "Pack" button
becomes active to enable you to perform a defragmentation.

Note 3: The option “Virtual connected mode” in the zone "General -> Build settings" (menu Tools -
> Project Settings) allows to modify the
project in your office and transfer it later without stop the PLC. In this
mode the Build \ Rebuild commands are disabled (to avoid the modification of
the project signature before the PLC connection) and this mode warn you if
the modification you are doing is forbidden in On line mode.

In the attached file there
are additional information on the project generation

Download the project in the PLC

The optimum performance
of communications between the PC and the PLC is achieved via USB port or
Ethernet port for all PLCs embedding these ports.

For Quantum PLC without
embedded Ethernet, use of Modbus+ is recommended

For Premium PLC without
embedded Ethernet, you are advised to
use an Ethernet module during the design and the commissioning phases. The
module can be removed for operation.

On line modification

Control Expert enables
to modify the different sections of the program, with the PLC in RUN.

To ensure that these modifications are consistent, all the modifications are
transferred at once when the Build is performed to be executed in the same
cycle.

The following are considered to be sections:

Sections,

SR Sections,

Timer Events Sections,

Sections of
a DFB type,

Note 1 :  I/O Events are not modifiable in run
mode

Note 2 :  It
is recommended to perform several small consistent sections modification at
once.

Note
3 :  Modification of  SFC actions or transitions of one SFC
section results in the transfer of all Action sections and Transition
sections of the corresponding SFC section.

To improve Build On Line performance

To
optimize the time of On Line modification you may set the following Project
Settings (menu Tools - > Project Settings) :

“General > Project autosaving on download” :  Uncheck the box "Save
STU" \ "Save XVM

To secure application
modification we recommend
to Set “Save STA”.

"General > Management of build messages" : If the option
“Multiple use of FB instances generates” is checked, the system control if all
the DFB \ EFB instances are not used twice in the code and displays
warning which impact the performance of the On line modification.

"General -> PLC embedded data" The option “Upload information”
configured in the zone  are embedded in the PLC after the transfer of the
binary (Download), they consume memory in the program zone. The Upload
information must be configured to authorize the Upload of the project
(PLC -> Control Expert), they allow Control Expert to reconstruct the
graphical part of the project when the Upload command is performed.

If the option “Upload
information management” is in “Automatic” mode, at
each On Line modification the Upload information are transferred automatically
in the PLC.

To optimize
the On Line modification the option must be put on “On user
request” mode, the Upload information will be transferred manually in the
PLC before the Off Line mode by the user (menu
PLC -> Update upload information).

To secure application
modification we recommend to set “Automatic mode”

"General > PLC embedded data" :
Check “Optimize data on-line change” to
reduce the time of the Upload
information generation relating to variables and function blocks of the
project.

“General > Management of Build messages: Turn off any warnings you
don’t need.

“General-> PLC diagnostics” : turn off application
diagnostics, if not used.

“General-> PLC embedded data “ Uncheck  Data dictionary  if not needed  will reduce the amount of MB
being sent by reducing the information on variables. DataDictionary is
usefull for SCADA system or Vijeo Designer HMI.

If need : Use the HMI Variable only, to reduce the number of variables.

General recommendations :

It is recommended to perform
several small consistent sections modification at once. When a modification is done on a section, this complete section is
rebuilt. So little modification on several sections could cause long
time to build.

When Ethernet Comm. is used in the CPU configuration ‘CPU maximum Unity data exchange by
PLC scan’: If you change it to 12x1024, build time will speed up but scan
will be negatively affected. This may be a good setting to try during
the commissioning process, then to be switched back once running in the
field.

Modification of  SFC actions or transitions of one
SFC section results in the transfer of all Action sections and Transition sections of the
corresponding SFC section.

To improve Build Off Line performance

To
optimize the Build time (off line) performance you may set the following
Project Settings (menu Tools - > Project Settings) :

“General > Management of Build messages: Turn off any warnings you
don’t need.

“General-> PLC diagnostics” : turn off application
diagnostics, if not used.

General recommendations :

It is recommended to perform
several small consistent sections modification at once. When a modification is done on a section, this complete section is
rebuilt. So little modification on several sections could cause long
time to build.

Import functions

An Control Expert allows to
export / Import, whole or parts of the application, using xml file format :

*.XEF for the complete project,

*.XHW for the
hardware configuration,

*.XPG for the tasks
(Mast \ Fast \ AUX),

*.XLD for the Ladder
sections or subroutines (SR),

*.XIL for the List
sections or subroutines (SR),

*.XST for the
Structured Text sections or subroutines (SR),

*.XBD for the
Functional Block Diagram sections or subroutines (SR),

*.XSF for the
Sequential Functional Chart \
Macro,

*.XDB for the DFB
types,

*.XDD for the DDT
types,

*.XSY for all
variables (EDT\DDT\DFB\EFB\IODDT),

*.XFM for the
functional modules,

*.XTB for the
animation tables,

*.XCR for the run
time screens,

*.XCM for the
networks configuration.

Note 1 : To keep consistency of the exported files, Control
Expert exports also all the used data in the exported file, user can also
select export options to export SR, DDT type and DFB used .

Every time that an import of an XML file containing data is done, a check of
the cross reference in the project database is applied which can considerably
increase the import time.

Partial
import should be used only for small modification of the application
import a section a functional module a subset of data.

·
Avoid the used of the partial import

- To create new variables with a XSY
file containing all the data of

the existing application

- To import a complete XPG file in an existing application.

For these two cases use a complete import (XEF file) instead

Management
of the variable current values

Migration
of Control Expert projects

The STU file (Control Expert project) cannot
be used to migrate a project from an Control Expert Version to another Control
Expert version because the database embedded must be rebuilded on each
different Control Expert version.

The STA file (Control Expert project
archive) must be used to migrate a project to a new version of Control Expert,
it present also the following advantages:

It’ size is
smaller than an corresponding STU file (it doesn’t contain the
database), it can be exchanged very easily.

After a migration,
ability to connect directly to the PLC (no generation, no download)

After the installation of Control Expert, all the
libraries belonging to the different Control Expert versions are present on
the station. When the STA file is opened it’s necessary to generate and
download the project only if the original project library (coming with the
STA file) is changed, with the original library the previous application functional
level is maintained.

The version of the library is selected  during the opening of the STA file:

Additional information

How to duplicate a FB instance in a graphical
section

In the graphical
languages (LD \ FBD), a Copy
&& Paste of a functional block instance (EFB \ DFB) increments
automatically the name of the instance, “My_Instance_Name” becomes
“My_Instance_Name_0”. Sometimes, it’s useful to use several
times the same instance in the program, for that it’s necessary to call
the “FFB Input Assistant”
from the contextual menu of the section.

The FFB Type and the Instance name must be
selected, the same instance block in now present in the section.

OFS \ Control Expert synchronization

After an OnLine
modification into the Control Expert application, if the recommendation are
not respected the SCADA animation could stop on some variables or some
screens could stop refreshing.

How to configure the
dynamic consistency :

Within the alias configuration
through OFS configuration tool,

Ensure that the “Reload
Database” parameter is checked,

Check the “Project autosaving on
download” option for STU or/and XVM file,

Note 1: A “Data
Dictionary” containing the description of all variables
(located, not located) can be configured (Tools menu -> Project Settings)
in the Internal memory or
in the Extended Memory if configured. When configured, the OFS server  uses the Data Dictionary  instead the XVM or STU files.

How
to control the customer XML files

Before to
import customer XML files in UNTY PRO, it’s interesting to control them
in order to apply correction if errors are detected.

CONTROL EXPERT
provides XSD files (eXtensible Schema Definition) corresponding to different
parts of the application.

These files (called Schema), define the CONTROL
EXPERT XML grammar, they are used to check the validity of a customer XML
files.

A
Microsoft.Net  Class ‘XML URL Resolver” provides
functions using  the XSD files to
check the validity of an XML customer file, information about errors found
are published.

Modification
of the IP address

To take into
account a new processor IP address it’s necessary to put it Off then On.
It is also imperative that the connector is present on the processor to avoid
that the previous IP address stays valid

Jean-Pierre
Ferrero/Aut/Schneider@Europe