Giter VIP home page Giter VIP logo

pyiec61850's Introduction

pyiec61850

Server and Client of PyIEC61850 based on mz-automation

A. Requirements

a. Python 3.8.10

  1. Install python-launcher
  2. Install asdf
  3. sudo apt-get install python3-dev sudo apt-get install liblzma-dev sudo apt-get install libsqlite3-dev sudo apt-get install libreadline-dev sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev
    libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev
    xz-utils tk-dev libffi-dev liblzma-dev python-openssl
  4. asdf install python 3.8.10

b. CMake 3.7.2 or higher

  1. sudo apt-get install g++ sudo apt-get install gcc sudo apt-get install libssl-dev
  2. wget wget https://github.com/Kitware/CMake/releases/download/v3.20.0/cmake-3.20.0.tar.gz
  3. tar -zxvf cmake-3.20.0.tar.gz
  4. cd cmake-3.20.0
  5. export CC=<path_of_gcc/gcc-version> export CXX=<path_of_g++/g++-version>
  6. ./bootstrap && make && sudo make install

c. SWIG 4.0.0 or higher

  1. wget http://prdownloads.sourceforge.net/swig/swig-4.0.0.tar.gz
  2. tar xzf swig-4.0.0.tar.gz
  3. cd swig-4.0.0
  4. ./configure
  5. make
  6. sudo make install

B. Installation

  1. cd ~
  2. sudo apt update && upgrade
  3. git clone https://github.com/keyvdir/pyiec61850.git
  4. cd pyiec61850
  5. git clone https://github.com/mz-automation/libiec61850.git
  6. wget https://github.com/Mbed-TLS/mbedtls/archive/refs/tags/v2.28.4.tar.gz
  7. tar -zxvf v2.28.4.tar.gz
  8. mv mbedtls-2.28.4/ libiec61850/third_party/mbedtls/mbedtls-2.28.4
  9. cd libiec61850
  10. py --list
  11. cmake -DBUILD_PYTHON_BINDINGS=ON -DPYTHON_EXECUTABLE=/home/mind_support/.asdf/shims/python3.8 .
  12. make WITH_MBEDTLS=1
  13. cd ..
  14. python3 server.py and python3 client.py (different terminal window)

Server example Client example

C. IEC 61850 Information Model

IEC 61850 Information Model

D. Write and Read Data

Data type for write, read, and other complete functions can be found in “libiec61850/pyiec61850/iec61850.py”. Please refer to the original website of IEC61850 for further information of the data types. https://libiec61850.com/api/modules.html

pyiec61850's People

Contributors

keyvdir avatar chanelcolgate 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.