【问题标题】:How to communicate Python with Siemens PLC using Python-snap7?如何使用 Python-snap7 与西门子 PLC 进行 Python 通信?
【发布时间】:2019-10-29 01:46:57
【问题描述】:

我正在尝试将 Python 与 CPU1212C PLC 通信(使用 PLCSIM),但总是出现错误。

代码:


IP = '192.168.100.100'
RACK = 0
SLOT = 1

plc = snap7.client.Client()
plc.connect(IP, RACK, SLOT)

print(plc.get_cpu_state()) 

No handlers could be found for logger "snap7.common"

Traceback (most recent call last):
File "C:/Python27/Teste_Snap7.py", line 8, in plc.connect(IP, RACK, SLOT)
File "C:\Python27\lib\site-packages\snap7\client.py", line 25, in f check_error(code, context="client")
File "C:\Python27\lib\site-packages\snap7\common.py", line 65, in check_error raise Snap7Exception(error)
Snap7Exception: TCP : Connection timed out 

这是 Windows10 的问题吗?

我正在使用 Windows10 64 位、Python 2.7.17、Snap7 1.1.0、Python-Snap7 0.10。

我将 snap7.dll 和 snap7.lib 文件复制并粘贴到 System32、Python27、Python27/site-packages/snap7 文件夹中。我为每个文件夹在环境变量中创建了一个路径以尝试工作。

我遵循了这个教程:https://www.youtube.com/watch?v=BKnK4AT_WKs

【问题讨论】:

    标签: python plc siemens snap7


    【解决方案1】:

    这不是Windows相关的问题,在错误信息中你可以看到问题:

        Snap7Exception: TCP : Connection timed out.        
    

    验证您与机器的物理连接,然后验证客户端 IP。

    【讨论】:

      【解决方案2】:

      验证:

      • 如果 PLC 实际 ping 通
      • 如果您的 PC 上启用了 Snap7 服务器
      • 如果机架和插槽正确,请根据您的 PLC。

      snap7提供的手册非常详尽,请参考

      【讨论】:

        【解决方案3】:

        在 tia 门户中验证: 属性 > 保护和安全 > 连接机制 > 并检查“使用 PUT/GET.. 允许访问”

        【讨论】:

          猜你喜欢
          • 2022-10-08
          • 2022-08-13
          • 2022-11-17
          • 2015-12-02
          • 1970-01-01
          • 2021-09-13
          • 2018-10-09
          • 2020-05-16
          • 1970-01-01
          相关资源
          最近更新 更多