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.4via IEC-Checker's GitHub releases [.url] - Download Kicodia
v122798884via KIELER's Download page [.url] - Download NuSMV symbolic model checker
v2.6.0via NuSMV's homepage [.url] - Download Microsoft Build Tools 2015 .url
- Install PLCreX via PyPI:
pip install plcrexor - 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|