Unity EFB Toolkit V8.0 SP1

Read me

 

 

Table of contents

 

1.     System requirements. 1

2.     Installation procedure. 1s

2.1.      Recommendation before installation. 1

2.2.      Setup procedure. 2

3.     License right 2

3.1.      Registration. 2

3.2.      License transfer 2

4.     Uninstall 2

5.     Safety Concerns. 2

6.     Migration. 3

7.     Last minute information. 3

7.1.      Setup procedure. 3

7.2.      Renaming an EF/EFB. 3

7.3.      Usage of table with constant strings. 3

7.4.      Access to EBOOL variables. 4

7.5.      Usage of system services. 5

7.6.      Known issues

 

 

1.      System requirements

The Unity EFBToolkit software can be installed on different Windows platforms by using the same setup package. The setup will detect the platform and the specific installation requirements automatically.

The following Windows platforms are supported:

 

·        System with Microsoft Windows 7 Professional 32/64bits

System: Pentium Processor 2.4 GHz or higher, recommended 3.0 GHz
RAM memory: 2GB minimum; recommended: 3GB
Hard disk: minimum available free space 8 GB, recommended 20 GB

·        System with Microsoft Windows 8.1

System: Pentium Processor 2.4 GHz or higher, recommended 3.0 GHz
RAM memory: 2GB minimum; recommended: 3GB
Hard disk: minimum available free space 8 GB, recommended 20 GB

Important Note: EFBToolkit can only run in “Windows 7 compatibility mode”

Steps to set Windows 7 compatibility mode:

1.      Right click on EFBToolkit shortcut icon

2.      Select Properties

3.      Select Compatibility Tab

4.      Enable "Run this program in compatibility mode”

5.    Select Windows 7

6.    Apply and Close

 

1.1.   System with Microsoft Windows Server 2008

System: Pentium Processor 2.4 GHz or higher, recommended 3.0 GHz
RAM memory: 2GB minimum; recommended: 3GB
Hard disk: minimum available free space 8 GB, recommended 20 GB

Recommended version: Windows Server 2008 R2, standard version, SP1       


Note:

·        Administrative privilege is require to work on Unity EFBToolKit

·        Microsoft Internet Explorer 5.5 or higher is recommended

 

 

2.      Installation procedure

2.1.   Recommendation before installation

·        Uninstall the older version of EFBToolkit manually

·        Make sure the latest version of Windows Service Packs and Security patches are installed

·        Make sure EFBToolkit and Unity Pro is NOT running

·        Make sure you have Administrator rights

2.2.   Setup procedure

·        Insert the CD "Unity EFB Toolkit" in the CD ROM drive.

·        Auto Run launches the setup automatically or please run the file setup.exe

·        Follow the instructions for installation.

 

·        Insert the CD "GNU ARM C" in the CD ROM drive.

·        Auto Run launches the setup automatically or please run the file setupGNU.exe

·        Follow the instructions for installation

 

Optional steps for Visual Studio installation (IDE for VC++ Debugging & Coding)

·        Insert the DVD "Microsoft Visual Studio" in the DVD ROM drive.

·        Auto Run launches the setup automatically or please run the file setup.exe

·        Follow the instructions for installation

 

3.      License right

3.1.   Registration

·        For a first installation: you need to register within a period of 21 days.

·        To register EFB Toolkit software, you have to launch the registration tool in the Schneider Electric shortcut and then follow the instructions displayed on the screen.

 

3.2.   Registration when EFB Toolkit version greater or equal to V8.0 rights already registered on the PC

If you have EFB Toolkit registered on your PC your license rights are automatically activated when you install the latest version of EFB Toolkit

 

3.3.   Registration when updating EFB Toolkit version earlier to V7.0 to latest

The license rights management system has been changed, therefore the right on the PC must be reactivated.

 

3.4.   License transfer

To transfer Unity EFB Toolkit license right from a computer to another you have to launch the registration tool in the Schneider Electric shortcut:

·        Transfer authorization from computer to computer:
To transfer the right from one computer to another who connected to a local network.
Note: Unity EFB Toolkit folders needs be shared.

·        Transfer authorization from this computer to a diskette:
To transfer the right from a computer to an USB memory key or a diskette
Note: USB Memory key or the diskette must not be write protected.

·       Transfer authorization from a diskette to this computer :
To transfer the right from an USB key or a diskette to a computer

 

4.      Uninstall

·        To uninstall "EFB Toolkit":

o   From the Windows Control Panel select Add / Remove programs

o   Select Unity EFB Toolkit in the list and click remove button

·        To uninstall "GNU ARM C":

o   From the Windows Control Panel select Add / Remove programs:

o   Select GNU4EFBToolkit in the list and click remove button

 

5.      Safety concerns

The programming language 'C' is a powerful programming language that offers lot of features to the users such as pointers.

But programming in ’C’ naturally contains risks, for example:

·        You can define a pointer and modify the address to which the pointer points freely in your program.

·        You can cast a pointer to any type you like, etc.

If you are programming function blocks in ’C’, You have to be aware of outcomes from each of the function blocks. A ’C’ coded function block is a piece of code compiled from a standard ’C’ compiler used inside the PLC. There are no security checks inside Unity Pro or inside the PLC that check the function block code for correct operation. If the code is not correct, the PLC memory may be corrupted at any location inside the PLC. As a consequence the PLC may crash or behave unexpectedly.

Please validate the function block code, for which you are coding / responsible. For test and debugging phase, it’s recommended to use PLC Simulator of Unity Pro.

 

6.      Migration

Refer EFBToolkit user manual in case of migrating a function blocks of PL7 or CONCEPT.

 

7.      Last minute information

7.1.   Setup procedure

While re-installing the EFB Toolkit software, the file 'library.dsc' located in the family development directory will be possibly overwritten with an empty new file. This file use to contain the names of the libraries and associated relationship. Backup this file before re-installing.

 

7.2.   Renaming an EF/EFB

DDT by name is not allowed for any EF/EFB/DDT.

 

7.3.   Usage of table with constant strings

It’s not possible to declare a table with constant strings in the following form, because of the special runtime environment of an EF/EFB.

const char * cllbk_Tab[] = { "StringA", "StringB" };
s_Declare_Logical(cllbk_Tab);

In this case the strings will be stored somewhere in the DATA segment and pointers to the strings will be stored in the array. The EFB Toolkit detects this issue during patching the EF/EFB object file. A message will be displayed in the logging pane:

Symbol ‘_MYEF_Tab’ in file ‘MYEF_32.OBJ’ is in undefined code section.

To avoid this issue a string table needs be declared in the following way.

typedef char STRING16[16];
const STRING16 cllbk_Tab[] = { "StringA", "StringB" };
s_Declare_Logical(cllbk_Tab);

In this case the strings will be stored directly in the array.

 

7.4.   Access to EBOOL variables

Different kinds of implementation for EBOOL variables are exist:

·        IOIM – for un-located and located EBOOL variables on Premium and for un-located EBOOL variables on Quantum

·        State RAM – only for located EBOOL variables on Quantum

When an EF or EFB interface contains a logical address of an EBOOL variable or an array of EBOOL variables, it is strictly not recommended to convert this address to a physical pointer to access the variable.

The following EF/EFB code snippet is not allowed:

typedef struct {
// Public variables...
// Internal variables...
// Function parameters...
IEC_PARAM_RTE_OFFSET_LG ST_00; // array of EBOOL variables
} ARRAYBITS_INSTANCE_T ;
...
// Convert to physical pointers
ARRAYBITS = s_log_to_phy(ARRAYBITS_instance);
ST00 = s_log_to_phy(ARRAYBITS->ST_00.IECPtr_Log);
// Copy bits from the given array into local variables.
BIT0 = ST00[0];
...

A set of system services exists to access EBOOL variables. The usage of these system services is mandatory:

·        s_rd_1bit() – gets the value of a single bit

·        s_rd_16bits() – gets the values of 16 bits

·        s_rd_Nbits() – gets the values of up to 32 bits

·        s_rd_bit_attrib() – gets the value, history and force attribute of a single bit

·        s_wr_1bit() – sets the value of a single bit

·        s_wr_16bits() – sets the values of 16 bits

·        s_wr_Nbits() – sets the values of up to 32 bits

·        s_wr_bits_attrib() – sets the value, history and force attribute of up to 32 bits

These system services are in charge to detect which kind of implementation has to be used according to the given logical address.

 

7.5.   Usage of system services

The use of the system service functions s_event_func_xxx() implies that the EF/EFB instance can't be on-line deleted.

 

7.6.   Known issues

·        Concurrent installation of same family through "File -> Install Family into Libset" option, may lead the application to misbehave and close. Re-launch the application in this scenario.

·        On-click of log window compiler message, may not lead to the right location if the message is from .h file.