< PreviousField Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4 , Ed. 1.2.0, 09 Jul 2019 Page 19 of 33 Table 12 – Method Transfer arguments Argument Description CommunicationRelationId The argument value contains the nodeId of the ConnectionPoint representing the connection between a device and a physical network within the Information Model. OPERATION The argument value indicates the data transfer direction. Allowed values are “READ” and “WRITE”. SLOT The argument name shall match with the corresponding COMMAND – attribute name SLOT. The argument value shall come from the attribute value of COMMAND – attribute SLOT of the corresponding COMMAND that shall be processed. SUBSLOT The argument name shall match with the corresponding COMMAND – attribute name SUBSLOT. The argument value shall come from the attribute value of COMMAND – attribute SUBSLOT of the corresponding COMMAND that shall be processed. INDEX The argument name shall match with the corresponding COMMAND – attribute name INDEX. The argument value shall come from attribute value of COMMAND – attribute INDEX of the corresponding COMMAND that shall be processed. API The argument is not supported by current COMMAND description. The default value for this argument is 0. REQUEST The argument name shall match with the corresponding COMMAND sub-element name REQUEST. The byte stream submitted trough the argument is created from definitions provided by the REQUEST element of the corresponding COMMAND that shall be processed. REPLY The argument name shall match with corresponding COMMAND sub-element name REPLY. The byte stream returned by this argument applies to definitions provided by the REPLY element of the corresponding COMMAND that shall be processed. RESPONSE_CODES The argument name shall match with the COMMAND sub-element name RESPONSE_CODES. The argument value conveys the PROFINET specific communication service response bytes. ServiceError 0: OK / execution finished -1: Transfer Failed / canceled by caller -3: Transfer Failed / no existing communication relation -4: Transfer Failed / invalid communication relation identifier -5: Transfer Failed / invalid sendData content -6: Transfer Failed / invalid receiveData formatProfinet 5.6.1.5 GetPublishedData This method is not supported by PROFINET IO. 5.6.1.6 SetAddress Signature SetAddress( [in] byte[6] MAC, [in] byte[4] IP, [in] String DNSNAME, [in] byte[4] SubnetMask, [in] byte[4] Gateway, [out] Int32 ServiceError); Table 13 provides the description of the arguments. Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4, Ed. 1.2.0, 09 Jul 2019 Page 20 of 33 Table 13 –Method SetAddress arguments Argument Description MAC The argument value holds the unique identifier of a device. The argument name matches with the name of Topology elements ConnectionPoint property MAC is defined in Table 9. IP The argument value holds the new IP address for a device. The argument name matches with the name of the Topology elements ConnectionPoint property IP is defined in Table 9. DNSNAME The argument value holds the new DNSNAME (station name) for a device. The argument name matches with the name of the Topology elements ConnectionPoint property DNSNAME is defined in Table 9. SubnetMask The argument value holds the new SubnetMask (station name) for a device. The argument name matches with the name of the Topology elements ConnectionPoint property SubnetMask is defined in Table 9. Gateway The argument value holds the new Gateway (station name) for a device. The argument name matches with the name of the Topology elements ConnectionPoint property Gateway is defined in Table 9. ServiceError 0: OK / execution finished successfully -1: SetAddress Failed / canceled by caller -3: SetAddress Failed / not initialized -4: SetAddress Failed / not connected to a network -5: SetAddress Failed / no device found responding to MAC -6: SetAddress Failed / duplicate address error -7: SetAddress Failed / device did not accept new address -8: SetAddress Failed / invalid argument MAC -9: SetAddress Failed / invalid argument IP -10: SetAddress Failed / invalid argument DNSNAME -11: SetAddress Failed / invalid argument SubnetMask -12: SetAddress Failed / invalid argument Gateway -13: SetAddress Failed / not possible in status connected The service SetAddress corresponds with the IEC 61158-5-10 specified DCP ASE service set. 5.6.1.7 Scan The method signature specified in IEC 62769-7 applies. The corresponding topologyScanResult schema is specified in Annex A. The scan service maps to the PROFINET IO DCP ASE specified service Identify according to IEC 61158-5-10. 5.6.1.8 ResetScan The method signature specified in IEC 62769-7 applies. Methods for Gateways 5.6.2.1 General The methods signatures defined in 5.6.2 shall apply. The methods shall be implemented in the EDD element (IEC 62769-4) contained in a Gateway related FDI Package containing the communication device definitions. Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4 , Ed. 1.2.0, 09 Jul 2019 Page 21 of 33 5.6.2.2 Connect Subclause 5.6.2.2 describes the PROFINET Gateway specific implementation of the service Connect specified in IEC 62769-7. METHOD BeginConnect( DD_STRING CommunicationRelationId, DD_STRING DNSNAME, unsigned int DeviceID, unsigned int VendorID, unsigned long ServiceID, unsigned long &DelayForNextCall, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } METHOD EndConnect( DD_STRING CommunicationRelationId, unsigned long ServiceID, unsigned long &DelayForNextCall, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } METHOD CancelConnect( DD_STRING CommunicationRelationId, unsigned long ServiceID, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } Table 14 provides the description of the arguments. Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4, Ed. 1.2.0, 09 Jul 2019 Page 22 of 33 Table 14 – Method Connect arguments Argument Description CommunicationRelationId The argument value contains the nodeId of the ConnectionPoint representing the connection between a device and a physical network which is directly connected to the communication server hardware. The nodeId allows finding the direct parent-child relation. DNSNAME The argument name shall match with the corresponding attribute name defined for the ConnectionPoint which is described by a corresponding EDD element specified in 5.5. The argument value holds the device’s network address. DeviceID The argument value holds the manufacturer defined device identification number. (See GSDML “Attributes of element DeviceIdentity”.) VendorID The argument value holds the PNO defined manufacturer identification number. (See GSDML “Attributes of element DeviceIdentity”.) ServiceId The service transaction code establishes the relation between the service request and the corresponding response. DelayForNextCall The value specifies a delay time in ms to limit the EndConnect invocation cycle that shall not be faster than specified in the argument value. ServiceError 1: OK / function started asynchronously, result has to be polled with EndConnect 0: OK / execution finished, connection established successfully -1: Connect Failed / canceled by caller -2: Call Failed / unknown ServiceId -3: Connect Failed / device not found -4: Connect Failed / invalid device address -5: Connect Failed / invalid DeviceID -6: Connect Failed / invalid ManufacturerID 5.6.2.3 Disconnect Subclause 5.6.2.3 describes the PROFINET specific implementation of the service Disconnect specified in IEC 62769-7. METHOD Disconnect( DD_STRING CommunicationRelationId, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } All the arguments of the Disconnect method are described in Table 11. 5.6.2.4 Transfer Subclause 5.6.2.4 describes the PROFINET specific implementation of the service Transfer specified in IEC 62769- 7. METHOD BeginTransfer( DD_STRING CommunicationRelationId, DD_STRING OPERATION, unsigned short SLOT, unsigned short SUBSLOT, unsigned short INDEX, unsigned long API, DD_STRING REQUEST, DD_STRING &REPLY, DD_STRING &RESPONSE_CODES, unsigned long ServiceId, unsigned long &DelayForNextCall, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4 , Ed. 1.2.0, 09 Jul 2019 Page 23 of 33 } METHOD EndTransfer( DD_STRING CommunicationRelationId, DD_STRING &REPLY, DD_STRING &RESPONSE_CODES, unsigned long ServiceId, unsigned long &DelayForNextCall, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } METHOD CancelTransfer( DD_STRING CommunicationRelationId, unsigned long ServiceId, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } Table 15 provides the description of the arguments. Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4, Ed. 1.2.0, 09 Jul 2019 Page 24 of 33 Table 15 – Method Transfer arguments Argument Description CommunicationRelationId The argument value contains the nodeId of the ConnectionPoint representing the connection between a device and a physical network within the Information Model. OPERATION The argument value indicates data transfer direction. Allowed values are “READ” and “WRITE”. SLOT The argument name shall match with the corresponding COMMAND – attribute name SLOT. The argument value shall come from the attribute value of COMMAND – attribute SLOT of the corresponding COMMAND that shall be processed. SUBSLOT The argument name shall match with the corresponding COMMAND – attribute name SUBSLOT. The argument value shall come from the attribute value of COMMAND – attribute SUBSLOT of the corresponding COMMAND that shall be processed. API The argument is not supported by the current COMMAND description. The default value for this argument is 0. INDEX The argument name shall match with the corresponding COMMAND – attribute name INDEX. The argument value shall come from the attribute value of COMMAND – attribute INDEX of the corresponding COMMAND that shall be processed. REQUEST The argument name shall match with the corresponding COMMAND sub-element name REQUEST. The byte stream submitted trough the argument is created from definitions provided by the REQUEST element of the corresponding COMMAND that shall be processed. REPLY The argument name shall match with the corresponding COMMAND sub-element name REPLY. The byte stream returned by this argument applies to definitions provided by the REPLY element of the corresponding COMMAND that shall be processed. RESPONSE_CODES The argument name shall match with the COMMAND sub-element name RESPONSE_CODES. The argument value conveys the PROFINET specific communication service response bytes. ServiceId The service transaction code establishes the relation between the service request and the corresponding response. DelayForNextCall The value specifies a delay time in ms to limit the EndTransfer invocation cycle that shall not be faster than specified in the argument value. ServiceError 1: OK / function started asynchronously, result has to be polled with EndTransfer 0: OK / execution finished -1: Transfer Failed / canceled by caller -2: Call Failed / unknown service ID -3: Transfer Failed / no existing communication relation. -4: Transfer Failed / invalid communication relation identifier -5: Transfer Failed / invalid sendData content -6: Transfer Failed / invalid receiveData formatProfinet 5.6.2.5 GetPublishedData This method is not supported in PROFINET. 5.6.2.6 SetAddress Subclause 5.6.2.6 describes the PROFINET specific implementation of the service SetAddress specified in IEC 62769-7. METHOD BeginSetAddress( DD_STRING MAC, DD_STRING IP, DD_STRING DNSNAME, DD_STRING SubnetMask, DD_STRING Gateway, unsigned long ServiceId, unsigned long &DelayForNextCall, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4 , Ed. 1.2.0, 09 Jul 2019 Page 25 of 33 } METHOD EndSetAddress( unsigned long ServiceId, unsigned long &DelayForNextCall, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } METHOD CancelSetAddress( unsigned long ServiceId, long &ServiceError) { ACCESS ONLINE; DEFINITION{<Gateway specific implementation>} } Table 16 provides the description of the arguments. Table 16 – Method SetAddress arguments Argument Description MAC The argument value holds the unique identifier of a device. The argument name matches with the name of Topology elements ConnectionPoint property MAC is defined in Table 9. IP The argument value holds the new IP address for a device. The argument name matches with the name of Topology elements ConnectionPoint property IP is defined in Table 9. DNSNAME The argument value holds the new DNSNAME (station name) for a device. The argument name matches with the name of Topology elements ConnectionPoint property DNSNAME is defined in Table 9. SubnetMask The argument value holds the new SubnetMask (station name) for a device. The argument name matches with the name of Topology elements ConnectionPoint property SubnetMask is defined in Table 9. Gateway The argument value holds the new Gateway (station name) for a device. The argument name matches with the name of Topology elements ConnectionPoint property Gateway is defined in Table 9. ServiceId The service transaction code establishes the relation between the service request and the corresponding response. DelayForNextCall The value specifies a delay time in ms to limit the EndTransfer invocation cycle that shall not be faster than specified in the argument value. ServiceError 1: OK / function started asynchronously, result has to be polled with EndSetAddress 0: OK / execution finished successfully -1: SetAddress Failed / canceled by caller -2: Call Failed / unknown service ID -3: SetAddress Failed / not initialized -4: SetAddress Failed / not connected to a network -5: SetAddress Failed / no device found responding to MAC -6: SetAddress Failed / duplicate address error -7: SetAddress Failed / device did not accept new address -8: SetAddress Failed / invalid argument MAC -9: SetAddress Failed / invalid argument IP -10: SetAddress Failed / invalid argument DNSNAME -11: SetAddress Failed / invalid argument SubnetMask -12: SetAddress Failed / invalid argument Gateway -13: SetAddress Failed / not possible in status connected Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4, Ed. 1.2.0, 09 Jul 2019 Page 26 of 33 5.6.2.7 Scan The method signature specified in IEC 62769-7 applies. The PROFINET gateway business logic shall create the scan result following IEC 62769-7. The following definitions shall be present in the COMPONENT declaration that holds the definitions for a communication device. The data structure corresponds to the data structure defined in the XML schema described in Annex A. The SCAN_LIST attribute inside COMPONENT declaration shall refer to LIST TopologyScanResult. VARIABLE mDNSName { LABEL "Device station name"; TYPE BITSTRING(256); CLASS LOCAL; } VARIABLE mMAC { LABEL "Device MAC Address"; TYPE OCTET(6); CLASS LOCAL; } VARIABLE mIPv4 { LABEL "Device IP Address"; TYPE OCTET(4); CLASS LOCAL; } VARIABLE mSubnetMask { LABEL "Subnet mask"; TYPE OCTET(4); CLASS LOCAL; } VARIABLE mGateway { LABEL "Gateway IP Address"; TYPE OCTET(4); CLASS LOCAL; } VARIABLE mVendorID { LABEL "Manufacturer identification"; TYPE UNSIGNED_INTEGER(4); CLASS LOCAL; } VARIABLE mDeviceID { LABEL "Manufacturer’s Device identification"; TYPE UNSIGNED_INTEGER(4); CLASS LOCAL; } COLLECTION ProfinetIdentificationType { MEMBERS { Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4 , Ed. 1.2.0, 09 Jul 2019 Page 27 of 33 VendorID, mVendorID; DeviceID, mDeviceID; } } COLLECTION ConnectionPoint { MEMBERS { MAC, mMAC; IPv4, mIPv4; DNSName, mDNSName; SubnetMask, mSubnetMask; Gateway, mGateway; Identification, ProfinetIdentificationType; } } LIST Network { TYPE ConnectionPoint; } 5.6.2.8 ScanNext The method signature specified in IEC 62769-7 applies. The PROFIBUS gateway business logic shall create the scan result following IEC 62769-7. Method ScanNext stores the result into data structures described for the method Scan (5.6.2.7). Field Device Integration (FDI) – Part 103-4: Profiles – PROFINET RELEASED FCG TS62769-103-4, Ed. 1.2.0, 09 Jul 2019 Page 28 of 33 Annex A (normative) Topology scan schema A.1 General The topology scan result schema specified in Annex A describes the PROFINET specific format Method Scan argument topologyScanResult . The XML document content and structure shall correspond to the Information Model designed concept to describe a topology in order to enable generic matching between physical devices connected to the network and the FDI Server hosted Information Model. A.2 Network The subsequent element is used to return the scan result corresponding to the Information Model described in IEC 62769-5. The XML schema for a Network element is: <xs:element name="Network" type="PI:ProfinetNetworkT"/> A.3 ProfinetNetworkT The XML schema for a ProfinetNetworkT type is: <xs:complexType name="ProfinetNetworkT"> <xs:sequence maxOccurs="unbounded"> <xs:element name="ConnectionPoint" type="PI:ProfinetConnectionPointT"/> </xs:sequence> </xs:complexType> The elements of a ProfinetNetworkT type are described in Table A.1. Table A.1 – Elements of ProfinetNetworkT Element Description ConnectionPoint The ConnectionPoint element holds the address and identification of the network connected device that has been found during bus scan operations. A.4 ProfinetConnectionPointT The XML schema for a ProfinetConnectionPointT type is: <xs:complexType name="ProfinetConnectionPointT"> <xs:sequence> <xs:element name="Identification" type="PI:ProfinetIdentificationT"/> </xs:sequence> <xs:attribute name="MAC" type="PI:MACT" use="required"/> <xs:attribute name="IPv4" type="PI:IPv4T" use="optional"/> <xs:attribute name="DNSName" type="PI:DNSNameT" use="optional"/> <xs:attribute name="SubnetMask" type="PI:IPv4T" use="optional"/> <xs:attribute name="Gateway" type="PI:IPv4T" use="optional"/> Next >