S7-314, Snap7: CLI: функция отклонена ЦП (неизвестная ошибка) - PullRequest
0 голосов
/ 08 октября 2019

Я пытаюсь прочитать данные из Siemens PLC с помощью python snap7 (PLC 314-2 DP), но я сталкиваюсь с этой ошибкой. В чем здесь общая проблема и как ее решить?

import snap7.client as c
from snap7.util import *
from snap7.snap7types import *

def ReadMemory(plc,byte,bit,datatype):
    result = plc.read_area(areas['MK'],0,byte,datatype)
    if datatype==S7WLBit:
        return get_bool(result,0,bit)
    elif datatype==S7WLByte or datatype==S7WLWord:
        return get_int(result,0)
    elif datatype==S7WLReal:
        return get_real(result,0)
    elif datatype==S7WLDWord:
        return get_dword(result,0)
    else:
        return None


if __name__ == "__main__":
    plc = c.Client()
    plc.connect('172.16.138.98',0,0)
    print(ReadMemory(plc,0,0,S7WLReal))

Ошибка:

b'CLI : function refused by CPU (Unknown error)'
Traceback (most recent call last):
  File "/home/m4hd1/PycharmProjects/MemoryRead/ReadMemory.py", line 33, in <module>
    print(ReadMemory(plc,0,0,S7WLReal))
  File "/home/m4hd1/PycharmProjects/MemoryRead/ReadMemory.py", line 6, in ReadMemory
    result = plc.read_area(areas['MK'],0,byte,datatype)
  File "/home/m4hd1/PycharmProjects/MemoryRead/venv/lib/python3.7/site-packages/snap7/client.py", line 256, in read_area
    check_error(result, context="client")
  File "/home/m4hd1/PycharmProjects/MemoryRead/venv/lib/python3.7/site-packages/snap7/common.py", line 65, in check_error
    raise Snap7Exception(error)
snap7.snap7exceptions.Snap7Exception: b'CLI : function refused by CPU (Unknown error)'

Process finished with exit code 1
...