Structure of the data storage system (ENI Explorer)

The ENI Server manages the blocks generated by the PLC Control or other clients within a folder structure inside the file storage system. They are stored as objects and identified by a type and access rights. In addition, a version history is kept for each object, if this feature is supported by the database. Within a folder, the object name and type have to be unique.

ENI Explorer

Like Windows Explorer, the ENI Explorer is an independent program that can be connected with the required ENI Server via the associated ENI access data. Like ENI Server, ENI Admin and ENI Control it is part of the ENI Server Suite. The ENI folder/object structure can be displayed in ENI Explorer and the required database functions can be called up directly, independent of the data management system and of TwinCAT PLC Control. Object type, access rights, current check-out status and user are displayed.

Structure of the data storage system (ENI Explorer) 1:

Integration into TwinCAT PLC Control

TwinCAT PLC Control is a potential client of the ENI Server. For each project, the connection to the ENI Server can be defined. The required project blocks can then be created as objects in the data management system. To this end, they are assigned to one of the three object categories. Objects are stored fully, i.e. in addition to the block content, block properties such as access rights are also transferred via the XML format. For each object category, automated exchange with the data management system can be defined.

XML format for the objects

The following example shows the representation of a block in XML format. It includes, for example, information about: block name (<name>), block type (<pou>), path of the block in the object organiser structure (<path>), access rights for the eight possible user groups (<accesslevels>), and the block content in the declaration part (<interface>) and program part, which in this case is written in structured text (<ST>,<body>).

<?xml version="1.0"
encoding="ISO-8859-1"?>
<pou>
    <accesslevels> rw,rw,r,rw,r,rw,rw,rw
</accesslevels>
    <path> \/languages </path>
    <name> ST_EXAMPLE </name>
    <flags> 4 </flags>
    <interface>
    <![CDATA[PROGRAM ST_EXAMPLE
    VAR
        YVAL: INT := -250;
        BOTTOM: INT := -250;
        RUN_STRING: STRING(20) := 'Start';
        OFFSET: INT := 2;
    END_VAR
    ]]>
    </interface>
    <st>
        <body>
        <![CDATA[RUN_STRING:='Start';
        IF (YVAL < 0) THEN
            YVAL := YVAL + OFFSET;
            BOTTOM := YVAL + OFFSET;
        END_IF
        ]]>
        </body>
    </st>
</pou>

ENI object categories

Different data object categories are distinguished for administration via the ENI interface:

  1. Project-specific objects: blocks that were created specially for a particular project.
  2. Shared objects: blocks that are usually used in several projects, e.g. block libraries.
  3. Automatically generated compilation objects: Data that are only generated during processing by an application, e.g. symbol files that are created during compilation of a project (i.e. they do not directly correspond to an object!)
  4. Local objects (are not managed within the data storage system)

Objects are assigned to one of the categories (1, 2 or 4) as part of the project options (automated) or object properties (individual).

The ENI parameters can be configured separately for each of the object categories 1-3.

Project structure in the data storage system

In the associated data storage system and therefore "in the ENI" under the "root" that was configured in ENI Control, one or several paths and folders are created for each project, in which the project blocks are represented as objects (for example, a separate folder could be defined for each ENI object category).

Each project object is allocated a data type. As a result, the block names transferred from the TwinCAT PLC Control are allocated a type-specific extension and a type symbol, thus representing the objects outside the programming system.

Operation of the ENI interface in TwinCAT PLC Control

In TwinCAT PLC Control, the ENI can be activated as a project option. Dialogs are then available for the following functions:

  1. Specification under project options of whether and for which ENI object category a newly created object should be assigned.
  2. Configuration of the type of connection to the ENI in the project options for each of the three ENI object categories (project objects, shared objects, compilation files):
  1. Individual allocation of an object to an object category (see above) in the object properties of each object
  2. Input of user name and password via a database login dialog (project menu) for accessing the data management system
  3. Database commands in the project menu, for individual objects or for the whole project: