|
Hello Freinds, I am Swapnil, a Industrial Automation Engineer just came across the library and its a really good project and I am very incline with the ideas. But I have a question there a various great libraries that exist in the languages like for python it has pymodbus, pymcrotocol, python-snap7 etc. I just think it can ship faster. I am really intrested in the python implementation as I heavily reily on python for my day to day work. Thanks. |
Replies: 1 comment
|
You do not wrap pymodbus / python-snap7 as the Python baseline. PLC4X generates each language from the same protocol specs (MSPEC). The public API ( For Python, that generated binding is PLC4Py. It is still early: install from the repo, not PyPI, and the drivers that exist today are Modbus and UMAS. Getting started is here: https://plc4x.apache.org/plc4x/latest/users/getting-started/plc4py.html If you need S7 / EtherNet/IP / etc. in production Python now, call the Java library (JPype, a small service, or the PLC4X server) or keep pymodbus/python-snap7 for that one protocol. Those libs will not grow into the rest of PLC4X. If you want to help Python ship faster, the useful work is more generated drivers in PLC4Py, not adapters around the ecosystem libs. |
You do not wrap pymodbus / python-snap7 as the Python baseline. PLC4X generates each language from the same protocol specs (MSPEC). The public API (
PlcDriverManager, connection strings, request builders) is meant to look the same in Java, Go, C, and Python. Bolting existing Python libraries underneath would fork that API and make a later swap painful, not cheaper.For Python, that generated binding is PLC4Py. It is still early: install from the repo, not PyPI, and the drivers that exist today are Modbus and UMAS. Getting started is here: https://plc4x.apache.org/plc4x/latest/users/getting-started/plc4py.html
If you need S7 / EtherNet/IP / etc. in production Python now, call the Java libra…