PLCreX - Simplification, Transformation, Analysis, and Validation of IEC 61131-3 Programmable Logic Controllers
Project description
PLCreX - Simplification, Transformation, Analysis, and Validation of IEC 61131-3 Programmable Logic Controllers
Quick links
Releases
·
Documentation
·
Quick Start
·
Key Features
·
Licenses
·
Acknowledgments
Quick Start
- Download Python
v3.9
[.url] - Download IEC-Checker
v0.4
via IEC-Checker's GitHub releases [.url] - Download Kicodia
v122798884
via KIELER's Download page [.url] - Download NuSMV symbolic model checker
v2.6.0
via NuSMV's homepage [.url] - Download Microsoft Build Tools 2015 .url
- Install PLCreX via PyPI:
pip install plcrex
or - Install PLCreX via PLCreX's GitHub repository:
install-windows.bat
- Activate virtual environment (venv):
run.bat
- [optional] Run local tests:
coverage run -m pytest ./tests/ --verbose
- Activate virtual environment (venv):
Key Features
Usage: plcrex [OPTIONS] COMMAND [ARGS]...
╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --version │
│ --install-completion [bash|zsh|fish|powershell|pwsh] Install completion for the specified shell. │
│ [default: None] │
│ --show-completion [bash|zsh|fish|powershell|pwsh] Show completion for the specified shell, to copy │
│ it or customize the installation. │
│ [default: None] │
│ --help Show this message and exit. │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ fbd-to-sctx FBD-to-SCCharts Compiler (Data-Flow) *.xml → *.sctx │
│ fbd-to-st FBD-to-ST Compiler *.xml → *.st │
│ fbd-to-st-ext FBD-to-ST Compiler (extended) *.xml → *.st │
│ iec-check IEC-Checker *.st → *.log │
│ impact-analysis I/O-Impact Analysis *.xml → *.dot │
│ st-parser ST-Parser *.st → *.dot/*.txt │
│ st-to-qrz ST-to-Quartz Compiler *.st → *.qrz │
│ st-to-scl ST-to-SCL Compiler *.st → *.scl │
│ st-to-sctx ST-to-SCCharts Compiler (Control-Flow) *.st → *.sctx │
│ test-case-gen Test-Case-Generator stdin → stdout │
│ xml-validator XML-Validator *.xml → stdout │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Usage: python -m plcrex --help
Analysis & Validation
Description | Script | Version |
---|---|---|
IEC-Checker | ieccheck | 2.0.0 |
I/O-Impact Analysis | fbdia | 2.0.0 |
ST-Parser | stp | 2.0.0 |
Test-Case-Generator | tcgen | 4.0.0 |
XML-Validator | xmlval | 2.0.0 |
Transformation & Simplification
Description | Script | Version |
---|---|---|
FBD-to-ST | fbd2st | 2.0.0 |
FBD-to-ST (extended) | fbd2st | 2.0.0 |
FBD-to-SCCharts | fbd2x | 2.0.0 |
ST-to-Quartz | st2qrz | 1.0.0 |
ST-to-SCL | st2scl | 1.0.0 |
ST-to-SCCharts | st2scl | 1.0.0 |
Models
The translations of the models are based on PLCreX's intermediate model *.pim
:
Package | Description | Version |
---|---|---|
st |
Structured Text | 1.0.2 |
qrz |
Quartz Model | 1.0.1 |
scl |
Sequentially Constructive Language | 1.0.2 |
Licenses
PLCreX and its dependencies are licensed as follows:
Tool | Version | License |
---|---|---|
PLCreX | 2.0.0 | GPLv3 |
IEC-Checker | 0.4 | LGPL v3.0 |
NuSMV | 2.6.0 | LGPL v2.1 |
KIELER | 122798884 | Eclipse Public License (EPL) |
Acknowledgments
Inspiration, code snippets, etc.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
plcrex-2.0.0.tar.gz
(686.9 kB
view details)
Built Distribution
plcrex-2.0.0-py3-none-any.whl
(707.6 kB
view details)
File details
Details for the file plcrex-2.0.0.tar.gz
.
File metadata
- Download URL: plcrex-2.0.0.tar.gz
- Upload date:
- Size: 686.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 930e491464df9f00d41874203236e9ed9ae1d76a2a8c31663433386e6e00e647 |
|
MD5 | 3d9de89eca4b4ce39182690237e101ae |
|
BLAKE2b-256 | f524e8131009e9e90f65337ce0500be47e7abe9d2263774ab13953f18ab538a0 |
File details
Details for the file plcrex-2.0.0-py3-none-any.whl
.
File metadata
- Download URL: plcrex-2.0.0-py3-none-any.whl
- Upload date:
- Size: 707.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d1ff69b63987f39c18b6867ff11b6baab8d2f29246b8b20180798958cd65b96 |
|
MD5 | 9082114d3d9dec973beb7948a815f110 |
|
BLAKE2b-256 | 6cf9b7e7a86ebab92f733c03e5eeadef4c28d8ccc5cacda5a08a101ac227c1d3 |