PLCcom for S7 - symbolic S7 access for .net and java developers

The PLCcom for S7 library is a highly optimized component specially designed for Java and .net software developers. It enables developers with programming languages such as C#, Visual Basic or Java to access an S7 PLC in a convenient and program-controlled manner, both to read and write data - including the - including symbolic access with Secure Communication on variables.

PLCcom is compatible with S7 controllers (200, 300, 400, 1200, 1500 series, ET200S, SoftPLC WinAC RTX as well as Logo! 0BA7, 0BA8 and 0BA0) and CPUs from other manufacturers (e.g. VIPA 100V/200V/300V/300S, etc.).

The libraries support the protocols Profinet, MPI and PPI.

picture PLCCom S7 .net java C# Visual Basic

Flexible access to S7 PLC: symbolic or absolute addressing

The current version of PLCcom for S7 offers the option of accessing variables in a PLC using either symbolic addressing or absolute addressing (Put/Get) In contrast to conventional put/get communication, which is based exclusively on absolute addressing, symbolic addressing enables simpler and more flexible handling.

You have the choice: use either the Put/Get communication with absolute addressing or use the new symbolic addressing, depending on the PLC type, application and requirements. Both communication channels are supported (depending on the edition) so that you remain flexible.

An overview of the functions

Feature PLCcom for S7 .net or java version

For commercial or commercial use

Professioneller Top Level Support

Connection to S7 controllers of the series
200, 300, 400, 1200, 1500, ET200SP, SoftSPS WinAC RTX and compatible CPUs from other manufacturers

Connection to S7 controllers Logo!
0BA7, 0BA8, 0BA0, 0BA1 und 0BA2

Reading and writing data using put/get access

Symbolic access
Reading and writing data from optimized or non-optimized areas

Symbolic access
Subscribing to variables from optimized or non-optimized areas

High performance access

TCP/IP access

MPI/PPI access

Multiple read and write accesses in a common function call

Reading or writing multiple values simultaneously in different areas

Provide several effective optimization methods for effective concurrent reading and writing of values

Automatic detection of the best optimization method

Starting and stopping the CPU

Reading and setting the PLC system time

Read information like model, order number, firmware etc.

Get mode and state from CPU

Get LEDs mode from PLC
(on, off, indicating)

Reading system status list SSL

Query of the diagnostic data of PLC

Send password
to unlock connection of
password-protected PLCs

Read a list of created PLC objects. (All or specific block type e.g. only OBs)

Read length of
a specific block

Read a specific block in
MC7-format and save to a select file
(Backup)

Get specific block properties version, author, create language and many more

Restore block data
from a selectable MC7-file
(Restore)

Restore in different block number

Delete blocks

Data server for event controlled variable monitoring on the SPS

Progressive logging of SPS data to file system or SQL database

Progressive logging of SPS data to SQL database

Writing the latest image of SPS data to file system

Writing the latest image of SPS data to SQL database

Encoded data storage to filesystem

Free database choice by developer

Feature
S7-200
(Put/Get access)
S7-300
(Put/Get access)
S7-400
(Put/Get access)
S7-1200/1500/ET200SP
(symbolic access)
S7-1200
(Put/Get access)
S7-1500/ET200SP
(Put/Get access)
WinAC RTX(from version 2010)
(Put/Get access)
Logo(from version 0BA7)
(Put/Get access)

Read data

Write data

Subscribe for event-controlled reading of variables


via data server

via data server

via data server

native

via data server

via data server

via data server

via data server

Reading data from multiple areas combined

Multiple read and write accesses in a common function call


restricted

Reading or writing multiple values simultaneously in different areas

Starting and stopping the CPU

Reading and setting the PLC system time

Get basic info from PLC e.g. Modell, ordernumber, Firmware etc.

Get mode and state from CPU

Get LEDs mode from PLC
(on, off, indicating)

Reading system status list SSL
(if existing)

Get diagnostic data

Send password
to unlock connection of
password-protected PLCs

*1), 2*)

Read a list of created PLC objects
(All or specific block type
e.g. only OBs)

Read length of
a specific block

Read a specific block in
MC7-format and save to a select file
(Backup)

Get specific
block properties e.g.
(version, author,
Create language and many more)


restricted

Restore block data
from a selectable MC7-file
(Restore)

Restore in
different blocks

Delete blocks

*1)for 1200 series up to firmware 4.6. From firmware version 4.7 access via “Anonymous” user
*2)for 1500 and ET200SP series up to firmware 3.0. From firmware version 3.1 access via “Anonymous” user

PLCcom for S7 is available for two programming platforms:

    1. .net-Version
      The .net version supports both the classic .net Framework-programming from Framework Version 4.7.2 as well as more modern frameworks up to .net 8.0.
      Furthermore, the delivery package contains versions for .net-Standard Version 2.1 and versions for .net 5.0,
      .net 6.0, .net 7.0, .net 8.0.
      The offer is aimed at .net developers, especially those who work with the programming languages C# or Visual Basic.
      Additionally, a nuget package is provided via nuget.org.
    2. java-Version
      The java version provides developers with a library that can be seamlessly integrated into java-based applications and is compatible with common development environments such as Eclipse or NetBeans. It supports java JRE / OpenJRE from Version 11.23 and has been tested up to Version 21 . However, please note that java version 12 is not supported due to TLS 1.3 issues.

Fast and uncomplicated integration in .net and java environments

Depending on the version, the libraries are 100% .net or java libraries that support both symbolic and absolutely addressed S7 access. The component can be integrated easily and directly in a java or .net environment, e.g. with C# or Visual Basic as a reference, OS API calls are not necessary.
It is possible to use the component in 32 or 64 bit environments and across platforms without any problems.
The internal routines are optimized for high-performance access.

The scope of delivery also includes extensive code examples that illustrate how easy it is to connect the PLC controller to your application and can also be used directly in your projects.

Below are two simple code examples to illustrate this:

Example: simple reading with symbolic access

Example: simple writing with symbolic access

Further extensive code examples can be found in the download package or here on the example page:

Effective optimization options

PLCcom for S7 was equipped with various internal optimization options. The developer can specify in which way read or write optimizations can be performed internally. So it is e.g. possible to summarize the same data areas in shared read accesses when reading (COMBINE_AREAS) or read or write different data areas in a shared access (mix access CROSS_AREAS).

In addition, PLCcom for S7 offers the feature of determining the best optimization method internally (AUTO) and applying it automatically.
Due to these implemented optimization algorithms, only the minimum necessary accesses to the PLC are carried out. This allows a tangible and measurable acceleration in processing to be achieved.

Guaranteed fast support - because your time is valuable

Industrial customers know this: Any downtime means production losses and enormous costs. With PLCcom for S7 , you not only secure a powerful communication interface, but also an all-round carefree package:

  • 1 year top-level support: With us, you receive exclusive support for one year. Should unexpected problems arise, our experienced support team will be on hand immediately to reduce downtime to a minimum.
  • 1 year maintenance plan: During this period, we guarantee you regular updates, upgrades and continuous improvements. This ensures that your software is always up to date.

The period can be extended on request. There is no automatic extension.

Test app for “PLCcom for S7” available for download (freeware)

picture Plccom for S7 testApp

The test app for PLCcom for S7 is now available for download. .net and java developers can use it to test absolute or symbolic S7 access to S7 controllers in advance.
The source code of the app is also included in the download package of the library.

Please visit our download section to download the app.

Ready to give PLCcom a try?

The best and quickest way to get to know our PLCcom component is to download the free trial version and get to know and try out the functions at your leisure.

You get full access to all functions and can start creating your software in no time at all.