philipp2604.SimpleS7OpcClient 1.0.0

dotnet add package philipp2604.SimpleS7OpcClient --version 1.0.0                
NuGet\Install-Package philipp2604.SimpleS7OpcClient -Version 1.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="philipp2604.SimpleS7OpcClient" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add philipp2604.SimpleS7OpcClient --version 1.0.0                
#r "nuget: philipp2604.SimpleS7OpcClient, 1.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install philipp2604.SimpleS7OpcClient as a Cake Addin
#addin nuget:?package=philipp2604.SimpleS7OpcClient&version=1.0.0

// Install philipp2604.SimpleS7OpcClient as a Cake Tool
#tool nuget:?package=philipp2604.SimpleS7OpcClient&version=1.0.0                

SimpleS7OpcClient

License: MIT build and test GitHub Release NuGet Version

Description

This library wraps nauful's LibUA library to provide easy communication with Siemens S7 controllers using their built-in OPC server.

This library is still WIP and not complete yet.

The usage in production environments is strongly discouraged!

Only anonymous access without login and encryption has been tested yet.

Quick Start

Please have a look at the example application inside the repo.

  1. Create a new instance of S7OpcClient with the application specific parameters (application description, connection settings, ...)
  2. Create a new instance of S7OpcClientService using the prior created S7OpcClient instance.
  3. Read and write tags from tag tables:
    1. Read a tag by using S7OpcClientService.ReadSingleTableTag().
    2. Write to a tag by using S7OpcClientService.WriteSingleTableTag().
  4. Read and write DataBlock variables:
    1. Read a variable by using S7OpcClientService.ReadSingleDbVar().
    2. Write to a variable by using S7OpcClientService.WriteSingleDbVar().

State of implementation

  • Anything but anonymous, unencrypted access has not been tested yet.
  • Custom PLC data types are not supported yet, but all of the 'everyday' types are implemented.

Download

You can acquire this library either directly via the NuGet package manager or by downloading it from the NuGet Gallery.

Questions? Problems?

Feel free to reach out!

Ideas / TODO

  • Implement custom PLC data types
  • Tests!

Third Party Software / Packages

Please have a look at THIRD-PARTY-LICENSES for all the awesome packages used in this library.

License

This library is MIT licensed.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 89 9/25/2024

Initial release