Unity EFB Toolkit V8.0

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. 2 concerns

6.     Compatibility. 3

7.     New features. 3

8.     Last minute information. 3

8.1.      Setup procedure. 3

8.2.      Renaming an EF/EFB.. 3

8.3.      Usage of table with constant strings. 3

8.4.      Access to EBOOL variables. 4

8.5.      Usage of system services. 5

8.6.      Known issues

 

 

1.     System requirements

EFBToolkit 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:

 

Administrative privilege is require to work on Unity EFBToolKit.

 

System with Microsoft Windows 7 Professional 32/64bits

System: Pentium Processor 2.4 GHz or higher, recommended 3.0 GHz
RAM memory: 2 GB minimum; recommended: 3 GB

Hard disk: 2 GB minimum, recommended 10 GB                  

 

System with Microsoft Windows XP Professional

System: Pentium Processor 1.2 GHz or higher, recommended 3.0 GHz
RAM memory: 1 GB minimum; recommended: 2 GB

Hard disk: 2 GB minimum, recommended 5 GB


Microsoft Internet Explorer 5.5 or higher

 

2.     Installation procedure

2.1.   Recommendation before installation

·         Uninstall the older version of EFB Toolkit manually.

·         Check that the latest Windows service packs and security patches are installed

·         Check that EFB Toolkit and Unity Pro is not running currently

·         Check that 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 V7.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 has 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:

o    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.

o    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.

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

4.     Uninstall

o    To uninstall "EFB Toolkit":

From the Windows Control Panel select Add / Remove programs:

Select Unity EFB Toolkit in the list and click remove button

o    To uninstall "GNU ARM C":

From the Windows Control Panel select Add / Remove programs:

Select GNU4EFBToolkit in the list and click remove button

5.     Safety concerns

The programming language 'C' is not as safe as standard IEC programming languages (inside Unity Pro). Though 'C' is a powerful programming language that offers lot of features to the users (for example pointers), but it also contains risks, for example:

-       The user can define a pointer and modify the addresses which user can freely access in his program

-       The user can cast a pointer to any type he likes

If you are programming function blocks in 'C', you have to be aware of such consequences. A 'C' coded function block is a piece of code compiled from a standard 'C' compiler that is used inside the PLC. There are NO security checks inside Unity Pro or inside the PLC that validates the function block code for correct operation. If the code is not correct, the PLC may 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.     Compatibility

Please refer into the included documentation for information if you have a requirement for the migration of function blocks coming from PL7 or CONCEPT world.

7.     New features

·         Compatible with Unity Pro V8.0 to support M580 and Momentum Unity platforms.

·         REF generic data type support

·         ANY_ELEMENTARY_REF_ANY generic data type support

·         Quality improvements

8.     Last minute information

8.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.

 

8.2.   Renaming an EF/EFB

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

 

8.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.

8.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.

8.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.

 

8.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.

·         The system services s_mask_it  and   s_demask_it is not supported by MDI PLC although it is mentioned on the user manual.The user manual will be corrected on the later release.

·         Momentum Unity platform is mentioned as MDI in User manual.