Skip to Content
Technical Articles
Author's profile photo Dominik Tylczynski

Open source PLC emulator: configurable telegram structures

Configurable telegram structures

This is the open source PLC emulator release 20230410 announcement. With this release the emulator supports configurable telegram structures.

Let’s see how it works in the channel synchronization scenario.

Channel synchronization is established with the following telegrams:

  • SYES “Synchronization Setup” sent from MFS to the emulator
  • SYBE “Synchronization Begin” sent from the emulator to MFS
  • SYEN “Synchronization End” sent from the emulator to MFS

After that the channel is synchronized and life. LIFE telegrams start to flow.

Telegrams%20exchanged%20during%20the%20channel%20synchronization

Telegrams exchanged during the channel synchronization

The configurable telegram structures functionality mimics the SAP MFS configuration: SCM Extended Warehouse Management -> Extended Warehouse Management -> Material Flow System (MFS) -> Telegram Processing -> Define Telegram Structure

Telegram%20structures%20configuration%20in%20SAP%20MFS

Telegram structures configuration in SAP MFS

SYES, SYBE and SYEN telegrams are of ZMFS_TELETOTAL structure, whereas LIFE telegrams are of shorter ZMFS_TELESHORT one.

The emulator recognizes the telegram type, reads its structure and automatically adjusts the telegram display dialog window. The works for all telegram types and structures.

ZMFS_TELETOTAL%20telegram%20dialog%20window

ZMFS_TELETOTAL telegram dialog window

ZMFS_TELESHORT%20telegram%20dialog%20window

ZMFS_TELESHORT telegram dialog window

That is of course a simple demo. Each telegram type can have its own structure now. The structures  are indicated in the emulator properties file:

# Telegram structures
telegramStructureHeader=/SCWM/S_MFS_TELECORE
telegramStructure.LIFE=ZMFS_TELESHORT
telegramStructure.SYES=ZMFS_TELETOTAL
telegramStructure.SYBE=ZMFS_TELETOTAL
telegramStructure.SYEN=ZMFS_TELETOTAL
telegramStructure.WT=ZMFS_TELETOTAL

Other enhancements in this release

Telegram types are no longer hardcoded. they can be freely defined in the MFS configuration. Only LIFE telegram type needs to be specified in the emulator properties file:

# Telegram types; only LIFE type is used for now
telegramType.LIFE=LIFE

SAP Java Connector server and destination names have been centralized in the properties file. They can still be specified the old way as the emulator runtime arguments for backward compatibility.

# Java Connector settings
jcoDestination=S4D
jcoServer=MFS

Sample properties file MFS.properties has been provided with comments for better usability.

The telegram dialog window displays the telegram creation date and time as well as its direction:

  • inbound – from MFS to the emulator
  • outbound – from the emulator to MFS

Closing remarks

The project is available with copyleft license as GitHub repository. Additionally the newest JAR file is provided in the master branch.

I would appreciate your comments, bug notifications and feature request. Post them as issues in the project repository.

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.