Skip to content

Commit b8961ea

Browse files
srossmannsrossmann
authored andcommitted
Documentation Update
1 parent 805a190 commit b8961ea

2 files changed

Lines changed: 168 additions & 20 deletions

File tree

README.md

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ Visit www.eeip-library.de for more informations and Codesamples
1616
3.1. [Usage of Implicit Messaging to Read and Write data to Rockwell Point I/O](#example1)
1717
4. [Library Documentation](#librarydocumentation)
1818
4.1. [Methods](#methods)
19+
4.2. [Properties](#properties)
1920

2021
<div id="installation"/>
2122

@@ -176,3 +177,147 @@ large_forward_open: Use Service code 0x58 (Large_Forward_Open) if true, otherwis
176177
**def forward_close(self)**
177178

178179
Closes a connection (Service code 0x4E)
180+
181+
<div id="properties"/>
182+
183+
#### 4.2 Properties
184+
185+
**tcp_port**
186+
187+
TCP of the Remote Device (Default is 0xAF12)
188+
189+
**target_udp_port**
190+
191+
Only for Implicit Messaging
192+
UDP-Port of the IO-Adapter for explicit Messaging - Standard is 0x08AE
193+
194+
**originator_udp_port**
195+
196+
Only for Implicit Messaging
197+
UDP-Port of the Scanner for explicit Messaging - Standard is 0x08AE
198+
199+
**ip_address**
200+
201+
IP-Address of the Ethernet/IP Device
202+
203+
**o_t_requested_packet_rate**
204+
205+
Only for Implicit Messaging
206+
Requested Packet Rate (RPI) in ms Originator -> Target for implicit messaging (Default 0x7A120 -> 500ms)
207+
208+
**t_o_requested_packet_rate**
209+
210+
Only for Implicit Messaging
211+
Requested Packet Rate (RPI) in ms Target -> Originator for implicit messaging (Default 0x7A120 -> 500ms)
212+
213+
**o_t_owner_redundant**
214+
215+
Only for Implicit Messaging
216+
"1" Indicates that multiple connections are allowed Target -> Originator for Implicit-Messaging (Default: TRUE)
217+
For forward open
218+
219+
**t_o_owner_redundant**
220+
221+
Only for Implicit Messaging
222+
"1" Indicates that multiple connections are allowed Originator -> Target for Implicit-Messaging (Default: TRUE)
223+
For forward open
224+
225+
**o_t_variable_length**
226+
227+
Only for Implicit Messaging
228+
With a fixed size connection, the amount of data shall be the size of specified in the "Connection Size" Parameter.
229+
With a variable size, the amount of data could be up to the size specified in the "Connection Size" Parameter
230+
Originator -> Target for Implicit Messaging (Default: True (Variable length))
231+
For forward open
232+
233+
**t_o_variable_length**
234+
235+
Only for Implicit Messaging
236+
With a fixed size connection, the amount of data shall be the size of specified in the "Connection Size" Parameter.
237+
With a variable size, the amount of data could be up to the size specified in the "Connection Size" Parameter
238+
Target -> Originator for Implicit Messaging (Default: True (Variable length))
239+
For forward open
240+
241+
**o_t_length**
242+
243+
Only for Implicit Messaging
244+
The maximum size in bytes (only pure data without sequence count and 32-Bit Real Time Header (if present)) from Target -> Originator for Implicit Messaging (Default: 505)
245+
Forward open max 505
246+
247+
**t_o_length**
248+
249+
Only for Implicit Messaging
250+
The maximum size in bytes (only pure data without sequence count and 32-Bit Real Time Header (if present)) from Originator -> Target for Implicit Messaging (Default: 505)
251+
Forward open max 505
252+
253+
**o_t_connection_type**
254+
255+
Only for Implicit Messaging
256+
Connection Type Originator -> Target for Implicit Messaging (Default: ConnectionType.MULTICAST)
257+
Possible values: ConnectionType.NULL, ConnectionType.MULTICAST, ConnectionType.POINT_TO_POINT
258+
259+
**t_o_connection_type**
260+
261+
Only for Implicit Messaging
262+
Connection Type Target -> Originator for Implicit Messaging (Default: ConnectionType.MULTICAST)
263+
Possible values: ConnectionType.NULL, ConnectionType.MULTICAST, ConnectionType.POINT_TO_POINT
264+
265+
**o_t_priority**
266+
267+
Only for Implicit Messaging
268+
Priority Originator -> Target for Implicit Messaging (Default: Priority.SCHEDULED)
269+
Could be: Priority.SCHEDULED; Priority.HIGH; Priority.LOW; Priority.URGENT
270+
271+
**t_o_priority**
272+
273+
Only for Implicit Messaging
274+
Priority Target -> Originator for Implicit Messaging (Default: Priority.SCHEDULED)
275+
Could be: Priority.SCHEDULED; Priority.HIGH; Priority.LOW; Priority.URGENT
276+
277+
**o_t_instance_id**
278+
279+
Only for Implicit Messaging
280+
Class Assembly (Consuming IO-Path - Outputs) Originator -> Target for Implicit Messaging (Default: 0x64)
281+
282+
**t_o_instance_id**
283+
284+
Only for Implicit Messaging
285+
Class Assembly (Consuming IO-Path - Outputs) Target -> Originator for Implicit Messaging (Default: 0x64)
286+
287+
**o_t_iodata**
288+
289+
Only for Implicit Messaging
290+
Provides Access to the Class 1 Real-Time IO-Data Originator -> Target for Implicit Messaging
291+
292+
**t_o_iodata**
293+
294+
Only for Implicit Messaging
295+
Provides Access to the Class 1 Real-Time IO-Data Target -> Originator for Implicit Messaging
296+
297+
**o_t_realtime_format**
298+
299+
Only for Implicit Messaging
300+
Used Real-Time Format Originator -> Target for Implicit Messaging (Default: RealTimeFormat.HEADER32BIT)
301+
Possible Values: RealTimeFormat.HEADER32BIT; RealTimeFormat.HEARTBEAT; RealTimeFormat.ZEROLENGTH; RealTimeFormat.MODELESS
302+
303+
**t_o_realtime_format**
304+
305+
Only for Implicit Messaging
306+
Used Real-Time Format Target -> Originator for Implicit Messaging (Default: RealTimeFormat.HEADER32BIT)
307+
Possible Values: RealTimeFormat.HEADER32BIT; RealTimeFormat.HEARTBEAT; RealTimeFormat.ZEROLENGTH; RealTimeFormat.MODELESS
308+
309+
**assembly_object_class**
310+
311+
Only for Implicit Messaging
312+
AssemblyObject for the Configuration Path in case of Implicit Messaging (Standard: 0x04)
313+
314+
**configuration_assembly_instance_id**
315+
316+
Only for Implicit Messaging
317+
ConfigurationAssemblyInstanceID is the InstanceID of the configuration Instance in the Assembly Object Class (Standard: 0x01)
318+
319+
**last_received_implicit_message**
320+
321+
Only for Implicit Messaging
322+
Date and time when the last Message has been received
323+

eeip/eipclient.py

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ def __init__(self):
4343
self.__multicastAddress = 0
4444
self.__lock_receive_data = threading.Lock()
4545
self.__last_received_implicit_message = 0
46+
self.__tcp_port = 0xAF12
4647

4748

4849
self.__udp_client_receive_closed = False
@@ -889,21 +890,21 @@ def target_udp_port(self):
889890
@target_udp_port.setter
890891
def target_udp_port(self, target_udp_port):
891892
"""
892-
UDP-Port of the IO-Adapter - Standard is 0xAF12
893+
UDP-Port of the IO-Adapter - Standard is 0x08AE
893894
"""
894895
self.__target_udp_port = target_udp_port
895896

896897
@property
897898
def originator_udp_port(self):
898899
"""
899-
UDP-Port of the Scanner - Standard is 0xAF12
900+
UDP-Port of the Scanner - Standard is 0x08AE
900901
"""
901902
return self.__originator_udp_port
902903

903904
@originator_udp_port.setter
904905
def originator_udp_port(self, originator_udp_port):
905906
"""
906-
UDP-Port of the Scanner - Standard is 0xAF12
907+
UDP-Port of the Scanner - Standard is 0x08AE
907908
"""
908909
self.__originator_udp_port = originator_udp_port
909910

@@ -1053,62 +1054,64 @@ def t_o_length(self, t_o_length):
10531054
@property
10541055
def o_t_connection_type(self):
10551056
"""
1056-
Connection Type Target -> Originator for Implicit Messaging (Default: ConnectionType.Multicast)
1057+
Connection Type Originator -> Target for Implicit Messaging (Default: ConnectionType.MULTICAST)
1058+
Could be: ConnectionType.NULL, ConnectionType.MULTICAST, ConnectionType.POINT_TO_POINT
10571059
"""
10581060
return self.__o_t_connection_type
10591061

10601062
@o_t_connection_type.setter
10611063
def o_t_connection_type(self, o_t_connection_type):
10621064
"""
1063-
Connection Type Target -> Originator for Implicit Messaging (Default: ConnectionType.Multicast)
1065+
Connection Type Originator -> Target for Implicit Messaging (Default: ConnectionType.MULTICAST)
1066+
10641067
"""
10651068
self.__o_t_connection_type = o_t_connection_type
10661069

10671070
@property
10681071
def t_o_connection_type(self):
10691072
"""
1070-
Priority Originator -> Target for Implicit Messaging (Default: Priority.Scheduled)
1073+
Priority Target -> Originator for Implicit Messaging (Default: Priority.Scheduled)
10711074
Could be: Priority.Scheduled; Priority.High; Priority.Low; Priority.Urgent
10721075
"""
10731076
return self.__t_o_connection_type
10741077

10751078
@t_o_connection_type.setter
10761079
def t_o_connection_type(self, t_o_connection_type):
10771080
"""
1078-
Priority Originator -> Target for Implicit Messaging (Default: Priority.Scheduled)
1081+
Priority Target -> Originator for Implicit Messaging (Default: Priority.Scheduled)
10791082
Could be: Priority.Scheduled; Priority.High; Priority.Low; Priority.Urgent
10801083
"""
10811084
self.__t_o_connection_type = t_o_connection_type
10821085

10831086
@property
10841087
def o_t_priority(self):
10851088
"""
1086-
Priority Originator -> Target for Implicit Messaging (Default: Priority.Scheduled)
1087-
Could be: Priority.Scheduled; Priority.High; Priority.Low; Priority.Urgent
1089+
Priority Originator -> Target for Implicit Messaging (Default: Priority.SCHEDULED)
1090+
Could be: Priority.SCHEDULED; Priority.HIGH; Priority.LOW; Priority.URGENT
10881091
"""
10891092
return self.__o_t_priority
10901093

10911094
@o_t_priority.setter
10921095
def o_t_priority(self, o_t_priority):
10931096
"""
1094-
Priority Originator -> Target for Implicit Messaging (Default: Priority.Scheduled)
1095-
Could be: Priority.Scheduled; Priority.High; Priority.Low; Priority.Urgent
1097+
Priority Originator -> Target for Implicit Messaging (Default: Priority.SCHEDULED)
1098+
Could be: Priority.SCHEDULED; Priority.HIGH; Priority.LOW; Priority.URGENT
10961099
"""
10971100
self.__o_t_priority = o_t_priority
10981101

10991102
@property
11001103
def t_o_priority(self):
11011104
"""
1102-
Priority Target -> Originator for Implicit Messaging (Default: Priority.Scheduled)
1103-
Could be: Priority.Scheduled; Priority.High; Priority.Low; Priority.Urgent
1105+
Priority Target -> Originator for Implicit Messaging (Default: Priority.SCHEDULED)
1106+
Could be: Priority.SCHEDULED; Priority.HIGH; Priority.LOW; Priority.URGENT
11041107
"""
11051108
return self.__t_o_priority
11061109

11071110
@t_o_priority.setter
11081111
def t_o_priority(self, t_o_priority):
11091112
"""
1110-
Priority Target -> Originator for Implicit Messaging (Default: Priority.Scheduled)
1111-
Could be: Priority.Scheduled; Priority.High; Priority.Low; Priority.Urgent
1113+
Priority Target -> Originator for Implicit Messaging (Default: Priority.SCHEDULED)
1114+
Could be: Priority.SCHEDULED; Priority.HIGH; Priority.LOW; Priority.URGENT
11121115
"""
11131116
self.__t_o_priority = t_o_priority
11141117

@@ -1174,32 +1177,32 @@ def t_o_iodata(self, t_o_iodata):
11741177
@property
11751178
def o_t_realtime_format(self):
11761179
"""
1177-
Used Real-Time Format Originator -> Target for Implicit Messaging (Default: RealTimeFormat.Header32Bit)
1178-
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZeroLength; RealTimeFormat.Modeless
1180+
Used Real-Time Format Originator -> Target for Implicit Messaging (Default: RealTimeFormat.HEADER32BIT)
1181+
Possible Values: RealTimeFormat.HEADER32BIT; RealTimeFormat.HEARTBEAT; RealTimeFormat.ZEROLENGTH; RealTimeFormat.MODELESS
11791182
"""
11801183
return self.__o_t_realtime_format
11811184

11821185
@o_t_realtime_format.setter
11831186
def o_t_realtime_format(self, o_t_realtime_format):
11841187
"""
11851188
Used Real-Time Format Originator -> Target for Implicit Messaging (Default: RealTimeFormat.Header32Bit)
1186-
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZeroLength; RealTimeFormat.Modeless
1189+
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZEROLENGTH; RealTimeFormat.MODELESS
11871190
"""
11881191
self.__o_t_realtime_format = o_t_realtime_format
11891192

11901193
@property
11911194
def t_o_realtime_format(self):
11921195
"""
11931196
Used Real-Time Format Target -> Originator for Implicit Messaging (Default: RealTimeFormat.Modeless)
1194-
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZeroLength; RealTimeFormat.Modeless
1197+
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZEROLENGTH; RealTimeFormat.MODELESS
11951198
"""
11961199
return self.__t_o_realtime_format
11971200

11981201
@t_o_realtime_format.setter
11991202
def t_o_realtime_format(self, t_o_realtime_format):
12001203
"""
12011204
Used Real-Time Format Target -> Originator for Implicit Messaging (Default: RealTimeFormat.Modeless)
1202-
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZeroLength; RealTimeFormat.Modeless
1205+
Possible Values: RealTimeFormat.Header32Bit; RealTimeFormat.Heartbeat; RealTimeFormat.ZEROLENGTH; RealTimeFormat.MODELESS
12031206
"""
12041207
self.__t_o_realtime_format = t_o_realtime_format
12051208

0 commit comments

Comments
 (0)