20 from CommonEtherCATFunction import _CommonSlave |
20 from CommonEtherCATFunction import _CommonSlave |
21 # ------------------------------------------ |
21 # ------------------------------------------ |
22 |
22 |
23 |
23 |
24 TYPECONVERSION = {"BOOL": "X", "SINT": "B", "INT": "W", "DINT": "D", "LINT": "L", |
24 TYPECONVERSION = {"BOOL": "X", "SINT": "B", "INT": "W", "DINT": "D", "LINT": "L", |
25 "USINT": "B", "UINT": "W", "UDINT": "D", "ULINT": "L", |
25 "USINT": "B", "UINT": "W", "UDINT": "D", "ULINT": "L", |
26 "BYTE": "B", "WORD": "W", "DWORD": "D", "LWORD": "L"} |
26 "BYTE": "B", "WORD": "W", "DWORD": "D", "LWORD": "L"} |
27 |
27 |
28 DATATYPECONVERSION = {"BOOL": "BIT", "SINT": "S8", "INT": "S16", "DINT": "S32", "LINT": "S64", |
28 DATATYPECONVERSION = {"BOOL": "BIT", "SINT": "S8", "INT": "S16", "DINT": "S32", "LINT": "S64", |
29 "USINT": "U8", "UINT": "U16", "UDINT": "U32", "ULINT": "U64", |
29 "USINT": "U8", "UINT": "U16", "UDINT": "U32", "ULINT": "U64", |
30 "BYTE": "U8", "WORD": "U16", "DWORD": "U32", "LWORD": "U64"} |
30 "BYTE": "U8", "WORD": "U16", "DWORD": "U32", "LWORD": "U64"} |
31 |
31 |
32 VARCLASSCONVERSION = {"T": LOCATION_VAR_INPUT, "R": LOCATION_VAR_OUTPUT, "RT": LOCATION_VAR_MEMORY} |
32 VARCLASSCONVERSION = {"T": LOCATION_VAR_INPUT, "R": LOCATION_VAR_OUTPUT, "RT": LOCATION_VAR_MEMORY} |
33 |
33 |
34 |
34 |
35 def ExtractHexDecValue(value): |
35 def ExtractHexDecValue(value): |
105 'value': None, |
105 'value': None, |
106 'children': [] |
106 'children': [] |
107 }) |
107 }) |
108 |
108 |
109 slave_type = self.CTNParent.GetSlaveType(self.GetSlavePos()) |
109 slave_type = self.CTNParent.GetSlaveType(self.GetSlavePos()) |
110 params[0]['children'].insert(0, |
110 params[0]['children'].insert( |
111 {'use': 'optional', |
111 0, |
|
112 { |
|
113 'use': 'optional', |
112 'type': self.CTNParent.GetSlaveTypesLibrary(self.NODE_PROFILE), |
114 'type': self.CTNParent.GetSlaveTypesLibrary(self.NODE_PROFILE), |
113 'name': 'Type', |
115 'name': 'Type', |
114 'value': (slave_type["device_type"], slave_type)}) |
116 'value': (slave_type["device_type"], slave_type) |
115 params[0]['children'].insert(1, |
117 }) |
116 {'use': 'optional', |
118 params[0]['children'].insert( |
|
119 1, |
|
120 { |
|
121 'use': 'optional', |
117 'type': 'unsignedLong', |
122 'type': 'unsignedLong', |
118 'name': 'Alias', |
123 'name': 'Alias', |
119 'value': self.CTNParent.GetSlaveAlias(self.GetSlavePos())}) |
124 'value': self.CTNParent.GetSlaveAlias(self.GetSlavePos()) |
|
125 }) |
120 return params |
126 return params |
121 |
127 |
122 def SetParamsAttribute(self, path, value): |
128 def SetParamsAttribute(self, path, value): |
123 self.GetSlaveInfos() |
129 self.GetSlaveInfos() |
124 position = self.BaseParams.getIEC_Channel() |
130 position = self.BaseParams.getIEC_Channel() |