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 NuSMV symbolic model checker
v2.6.0
via NuSMV's homepage [.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-optimizer FBD-Optimizer *.xml → fbd2st → *.st → st2x → *.st/*.sctx │
│ fbd-to-st FBD-to-ST Compiler *.xml → fbd2st → *.st │
│ iec-checker IEC-Checker *.st → iecchecker → *.log │
│ impact-analysis I/O-Impact Analysis *.xml → fbd2st → *.st → st2ia → *.dot │
│ st-parser ST-Parser *.st → st2ast → *.dot/*.txt │
│ test-case-gen Test-Case-Generator FORMULA:str → ds2ts → stdout │
│ xml-validator XML-Validator *.xml → xmlval → stdout │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Usage: python -m plcrex --help
Tool | Usage | Script | Version | Design flow |
---|---|---|---|---|
FBD-Optimizer | plcrex fbd-optimizer [OPTIONS] SOURCE EXE EXPORT FILENAME |
st2x | 2.3.1 | *.xml → fbd2st → *.st → st2x → *.st / *.sctx |
FBD-to-ST Compiler | plcrex fbd-to-st [OPTIONS] SOURCE EXPORT FILENAME |
fbd2st | 1.4.1 | *.xml → fbd2st → *.st |
IEC-Checker | plcrex iec-checker [OPTIONS] SOURCE EXE EXPORT FILENAME |
iecchecker | 1.2.1 | *.st → iecchecker → *.log |
I/O-Impact Analysis | plcrex impact-analysis [OPTIONS] SOURCE EXPORT FILENAME |
st2ia | 1.4.2 | *.xml → fbd2st → *.st → st2ia → *.dot |
ST-Parser | plcrex st-parser [OPTIONS] SOURCE EXPORT FILENAME |
st2ast | 1.2.1 | *.st → st2ast → *.dot / *.txt |
Test-Case-Generator | plcrex test-case-gen [OPTIONS] FORMULA EXPORT FILENAME |
ds2ts | 3.1.0 | FORMULA:str → ds2ts → stdout |
XML-Validator | plcrex xml-validator [OPTIONS] SOURCE |
xmlval | 1.2.1 | *.xml → xmlval → stdout |
NOTE: Use the "--help" option to see feature details
Licenses
PLCreX and its dependencies are licensed as follows:
Tool | Version | License |
---|---|---|
PLCreX | 1.3.0 | GPLv3 |
IEC-Checker | 0.4 | LGPL v3.0 |
NuSMV | 2.6.0 | LGPL v2.1 |
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-1.3.0.tar.gz
(409.1 kB
view hashes)
Built Distribution
plcrex-1.3.0-py3-none-any.whl
(421.2 kB
view hashes)