Giter Club home page Giter Club logo

s7-trace's Introduction

S7Trace

Real-time PLC Data Logging and Charting Application

S7Trace is a robust, WPF-based application designed for real-time data logging and charting from PLCs using old, battletested the Siemens S7 communication protocol. It offers a user-friendly interface to configure PLC variables, connect to PLCs, log data to CSV files, and visualize real-time data through dynamic charts.

Features

  • Configurable connection settings (IP address, rack, and slot)
  • Configurable PLC variables (name, area ID, type, size, offset, and enable/disable)
  • CSV Logging of data
  • Real-time data visualization with charting
  • Supports multiple PLC variable types

Roadmap

Here are some features and improvements planned for future releases:

  • Improve logging
  • Implement database logging
  • Improve charting performance by optimizing data handling and rendering
  • Add tools to manipulate, zoom, and measure values on the chart
  • Implement user-defined chart styles and customization options
  • Enhance error handling and user notifications
  • Add support for UDP or TCP communication
  • Add support for multiple PLC communication protocols
  • Add support for more protocols and devices
  • Implement MVVM (Model-View-ViewModel) design pattern

Getting Started

Prerequisites

Usage

  1. Launch the S7Trace application.
  2. Configure the connection settings (IP address, rack, and slot).
  3. Set up the PLC variables you wish to monitor.
  4. Connect to your PLC by clicking "Connect".
  5. Start Recording to begin logging data.
  6. Activate charting if you would like to visualize the data in real-time.
  7. Stop Recording when you're done logging data.
  8. Disconnect from the PLC.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the MIT License.

Acknowledgments

  • Sharp7 for providing the S7 communication library
  • LiveCharts for providing the charting library (alternatively, you can use other charting libraries like OxyPlot or LiveCharts2)

s7-trace's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.