cpppo
cpppo copied to clipboard
Question: CPPPO Server configuration as Generic Ethernet Module in Studio 5000
Hi, did anyone successfully configure CPPPO Server/Adapter to communicate as Generic Ethernet Module in Studio 5000?
I tried to use one of the provided examples (poll_test.py) and create my own server, only with few attributes (enip_server --print SCADA@22/1/1=INT[1000] TEXT@22/1/2=SSTRING[100] FLOAT@22/1/3=REAL), but all attempts finished with the same result - errors below.
I'm not familiar with CIP communication, so apologize if I misunderstand the concept of communication, or try to do something in an improper way. I would be grateful for any working examples or information what is wrong with my configuration. As I understand, I use the wrong service, but I'm not sure how to configure the proper one.
xxx@xxx-NUC7CJYHN:~$ python3 -m cpppo.server.enip.poll_test
Set sys.path: ['/home/formic/.local/lib/python3.10/site-packages', '/home/formic', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/usr/lib/python3.10/lib-dynload', '/home/formic/.local/lib/python3.10/site-packages', '/usr/local/lib/python3.10/dist-packages', '/usr/lib/python3/dist-packages']
06-30 03:12:29.978 MainThread enip.srv NORMAL main Loaded config files: []
06-30 03:12:29.978 MainThread enip.srv NORMAL main EtherNet/IP Simulator: ('', 44818)
06-30 03:12:29.978 MainThread network NORMAL server_mai enip_srv server PID [51269] running on ('', 44818)
06-30 03:12:29.978 MainThread network NORMAL server_mai enip_srv server PID [51269] responding to external done/disable signal in object 140265607389984
06-30 03:12:29.979 Thread-1 ( enip.srv NORMAL enip_srv EtherNet/IP Server enip_UDP begins serving peer None
06-30 03:12:31.296 Thread-2 ( enip.srv NORMAL enip_srv EtherNet/IP Server enip_54850 begins serving peer ('192.168.1.9', 54850)
06-30 03:12:31.307 Thread-2 ( enip.ucm NORMAL __init__ UCMM accepts route_path: False
06-30 03:12:31.328 Thread-2 ( enip.dev NORMAL request (0x06, 1) Connection_Manager Service 0xd4 Forward Open Reply failed with Exception: 'segment'
Request: {
'input': array( 'B', hexload(r'''
00000000: 54 02 20 06 24 01 05 9c 00 00 00 00 00 00 00 00 |T. .$...........|
00000010: 09 00 01 00 ad 6c 5f d0 00 00 00 00 40 0d 03 00 |.....l_.....@...|
00000020: 08 48 40 0d 03 00 04 28 01 09 34 04 00 00 00 00 |.H@....(..4.....|
00000030: 00 00 00 00 20 04 24 01 2c 01 2c 01 |.... .$.,.,.|
''')),
'service': 212,
'path.size': 2,
'path.segment[0].class': 6,
'path.segment[1].instance': 1,
'forward_open.priority_time_tick': 5,
'forward_open.timeout_ticks': 156,
'forward_open.O_T.size': 8,
'forward_open.O_T.variable': 0,
'forward_open.O_T.priority': 2,
'forward_open.O_T.type': 2,
'forward_open.O_T.redundant': 0,
'forward_open.O_T.large': False,
'forward_open.O_T.NCP': 18440,
'forward_open.O_T.connection_ID': 1608442893,
'forward_open.O_T.RPI': 200000,
'forward_open.O_T.API': 200000,
'forward_open.T_O.size': 4,
'forward_open.T_O.variable': 0,
'forward_open.T_O.priority': 2,
'forward_open.T_O.type': 1,
'forward_open.T_O.redundant': 0,
'forward_open.T_O.large': False,
'forward_open.T_O.NCP': 10244,
'forward_open.T_O.connection_ID': 194689003,
'forward_open.T_O.RPI': 200000,
'forward_open.T_O.API': 200000,
'forward_open.connection_serial': 9,
'forward_open.O_vendor': 1,
'forward_open.O_serial': 3495914669,
'forward_open.connection_timeout_multiplier': 0,
'forward_open.transport_class_triggers': 1,
'forward_open.connection_path.size': 9,
'status': 8,
}
xxx@xxx-NUC7CJYHN:~$ enip_server --print -v SCADA@22/1/1=INT[1000] TEXT@22/1/2=SSTRING[100] FLOAT@22/1/3=REAL
06-30 03:14:55.912 MainThread enip.srv NORMAL main Loaded config files: []
06-30 03:14:55.912 MainThread enip.srv NORMAL main New Tag: SCADA @22/1/1 INT[1000]
06-30 03:14:55.913 MainThread enip.srv NORMAL main New Tag: TEXT @22/1/2 SSTRING[ 100]
06-30 03:14:55.913 MainThread enip.srv NORMAL main New Tag: FLOAT @22/1/3 REAL[ 1]
06-30 03:14:55.913 MainThread enip.srv NORMAL main EtherNet/IP Simulator: ('', 44818)
06-30 03:14:55.913 MainThread network NORMAL server_mai enip_srv server PID [51291] running on ('', 44818)
06-30 03:14:55.913 MainThread network NORMAL server_mai enip_srv server PID [51291] responding to external done/disable signal in object 140325873764384
06-30 03:14:55.914 Thread-1 ( enip.srv NORMAL enip_srv EtherNet/IP Server enip_UDP begins serving peer None
06-30 03:14:58.357 Thread-2 ( enip.srv NORMAL enip_srv EtherNet/IP Server enip_54900 begins serving peer ('192.168.1.9', 54900)
06-30 03:14:58.370 Thread-2 ( enip.ucm NORMAL __init__ UCMM accepts route_path: (any)
06-30 03:14:58.371 Thread-2 ( enip.lgx NORMAL setup_tag Set Tag SCADA @22/1/1 : Class 22/0x0016 Instance 1 Created
06-30 03:14:58.371 Thread-2 ( enip.lgx NORMAL setup_tag Set Tag SCADA @22/1/1 : Class 22/0x0016 Instance 1 Added: SCADA ... 0, 0, 0, ...]
06-30 03:14:58.371 Thread-2 ( enip.lgx NORMAL setup_tag Set Tag TEXT @22/1/2 : Class 22/0x0016 Instance 1 Added: TEXT ..., '', '', ...]
06-30 03:14:58.372 Thread-2 ( enip.lgx NORMAL setup_tag Set Tag FLOAT @22/1/3 : Class 22/0x0016 Instance 1 Added: FLOAT ...L x1 == 0.0
06-30 03:14:58.393 Thread-2 ( enip.dev NORMAL request (0x06, 1) Connection_Manager Service 0xd4 Forward Open Reply failed with Exception: 'segment'
Request: {
'input': array( 'B', hexload(r'''
00000000: 54 02 20 06 24 01 05 9c 00 00 00 00 00 00 00 00 |T. .$...........|
00000010: 09 00 01 00 ad 6c 5f d0 00 00 00 00 40 0d 03 00 |.....l_.....@...|
00000020: 08 48 40 0d 03 00 04 28 01 09 34 04 00 00 00 00 |.H@....(..4.....|
00000030: 00 00 00 00 20 04 24 01 2c 01 2c 01 |.... .$.,.,.|
''')),
'service': 212,
'path.size': 2,
'path.segment[0].class': 6,
'path.segment[1].instance': 1,
'forward_open.priority_time_tick': 5,
'forward_open.timeout_ticks': 156,
'forward_open.O_T.size': 8,
'forward_open.O_T.variable': 0,
'forward_open.O_T.priority': 2,
'forward_open.O_T.type': 2,
'forward_open.O_T.redundant': 0,
'forward_open.O_T.large': False,
'forward_open.O_T.NCP': 18440,
'forward_open.O_T.connection_ID': 603132271,
'forward_open.O_T.RPI': 200000,
'forward_open.O_T.API': 200000,
'forward_open.T_O.size': 4,
'forward_open.T_O.variable': 0,
'forward_open.T_O.priority': 2,
'forward_open.T_O.type': 1,
'forward_open.T_O.redundant': 0,
'forward_open.T_O.large': False,
'forward_open.T_O.NCP': 10244,
'forward_open.T_O.connection_ID': 3909624177,
'forward_open.T_O.RPI': 200000,
'forward_open.T_O.API': 200000,
'forward_open.connection_serial': 9,
'forward_open.O_vendor': 1,
'forward_open.O_serial': 3495914669,
'forward_open.connection_timeout_multiplier': 0,
'forward_open.transport_class_triggers': 1,
'forward_open.connection_path.size': 9,
'status': 8,
}