【问题标题】:Is it possible to remotely upload a configuration to Twincat i.e. from a Python script?是否可以远程将配置上传到 Twincat,即从 Python 脚本?
【发布时间】:2022-10-21 17:20:41
【问题描述】:

我正在使用运行 Twincat 3 的 Beckhoff PLC 并使用带有 Pyads 的 Ubuntu 客户端与其通信。有没有办法使用 Python、Bash 或类似的东西将项目配置上传到 Twincat?

我的目标是拥有多个 Python 项目,每个项目都有特定的 Twincat 项目,运行一个 Python 项目会将相应的 Twincat 项目上传到 PLC。据我所知,上传配置的唯一方法是单击 Twincat 软件上的按钮。

【问题讨论】:

    标签: python linux plc twincat


    【解决方案1】:

    有几个步骤可以做你想做的,但理论上是可能的(因为工具链存在,但我没有测试过)

    您的理解中缺少的第一个元素是Automation Interface(AI) 与Automation Device Specification(ADS)。

    ADS 旨在作为一种访问控制器上可用数据的方法,并可能对正在运行的控制器执行命令,但几乎不提供配置和部署功能。

    AI 是您正在寻找的关于脚本开发和代码部署的工具。具体来说,人工智能方法ITcSysManager::ActivateConfiguration 应该在部署到遥控器方面做你想做的事。

    第二个复杂因素是 AI 是通过 .NET 实现的,它旨在在 Windows 环境中本地实现。但是,使用IronPython 应该可以实现.NET 实现的基础,但是这仍然是为了与Visual Studio 接口,因此可能无法在完全unix 环境中完成此操作。

    【讨论】:

      【解决方案2】:

      实际项目和配置存储在 PLC 中:

      C:TwinCAT.1Boot

      所以这很容易。您只需要将请求的配置复制到此目录并重新启动 TwinCat 或 PC 的脚本。这可以通过简单的 cmd 或通过 ADS 命令来完成

      【讨论】: