Skip to main content

Pinning

What is pinning?

Pinning means that a reference point is set to the current version of a safety application. The pin saves the specific version of the safety application and the associated objects. By means of the pin, it is possible to identify a specific version of the application in the project and of an object in the editor on the EtherCAT Safety Module. Based on the pin, the verifier can identify changes in the application structure, the content of its objects, or the included library function blocks at any time.

Important

A specific version is made identifiable by setting a pin; however, no copy of the specific version is generated when doing this.

Comparison view

The pin functions are located in the editor of the application object. To do this, select the SafetyApp object in the project tree and click Edit Object in the context menu. The Objects tab shows the comparison view. This shows the version and the CRC of the objects of the current project and the pinned project.ct.

For a detailed description of the information and the object list of the comparison view, see the Objects help page.

Example 3. Example
Figure 5. Comparison view of a safety application which has not yet been pinned
Comparison view of a safety application which has not yet been pinned


Figure 6. Comparison view of a pinned safety application
Comparison view of a pinned safety application


Figure 7. Comparison view of a pinned safety application with changed POU of the current application
Comparison view of a pinned safety application with changed POU of the current application




Pinning a safety application

You can use the Create new pin command to set a pin on the current execution version of the listed objects. When this is done, the CRC and the version are noted, but not the contents. You can enter a pin name. The revision number of the pin is automatically incremented by 1 with each "new" pinning.

The Clear pin command deletes the current pin and all objects are returned to In work.

  • Scope of the safety application

    • Which Safety objects belong to the application?

    • Which library function blocks does the application require?

  • Execution-relevant version of the objects and library function blocks in the scope of the application

    • Code of each object of the application

    • Configuration and device parameter of each logical I/O object of the application

    • Interface of the external implementation of each library function block used

    • Version designations of the objects

The comments of the objects do not belong to the execution-relevant version. These are not pinned and therefore can be updated at the end and during the verification.

You as the verifier identify a pinned version by a pin identifier, which is displayed at different points in the development system.

The pin identifier contains the following:

  • Name

  • Revision counter, which is automatically incremented by 1 when pinning

  • CRC: A CRC32 of the pinned execution version

In addition, the time of pinning is recorded. However, this is not part of the pin identifier.

Display of the pin information and deviations

As a developer, you can display the pin information for the application for a safety application in the comparison view.

The safety application pin information consists of the following:

  • Name: Name of the pin

  • Revision

  • CRC: The CRC is created for the entire pinned application.

  • Last change: Time of pin generation

In addition, the comparison view of the SafetyApp object shows how the current project version differs from the currently pinned version of the application.

The following differences are shown:

  • New objects

  • Deleted objects

  • Objects modified with regard to code or device parameters

  • POUs recently drawn from libraries

  • Library function blocks no longer referred

  • Library function blocks differing with regard to interface or implementation version

Differences are clearly highlighted in color so that the verifier can easily identify them:

  • Green: New objects or function library blocks in the project

  • Red: Change/difference in the contents of the object or device parameter set or library function block

  • Blue: Objects or library function blocks deleted from, or no longer used in the project

Pinning in the project view and object view

When the safety application is pinned, the pin information is displayed in the comparison view. In the project tree, the SafetyAppIcon.png node and its child objects are marked with the SafetyPinIcon.png symbol. The SafetyApp node is considered pinned PinIcon.png if the object itself and all its child objects correspond to the object version noted in the pin.

If the application has not yet been pinned or if the pin has been deleted, then only the In work status appears in the top line. In the project tree, the SafetyAppIcon.png node and its child objects are not marked in the project tree.

If a child object of the safety application is In work, then the safety application is also In work.

The information about the pin or In work is shown in the object view and in the project printout.

Performing a verification

Tip

By setting a pin, you can detect execution-relevant changes during and after verification.

As a developer, you release the current version of a safety application in the project for verification or for continued verification after a change. Pinning makes this version identifiable with regard to the execution-relevant parts for verification tasks and for the acceptance.