We are moving! We are currently migrating our community to the new Bosch Connected Industry Online Portal. The community will be available latest in the new year again, until then it will be in read-only mode. Click here for more information.
05-30-2023 11:07 AM
I'm working for a Siemens RFID with model RF186C, I use OPC UA to connect with it, PLC works as OPC UA client, now the connection is established, I can read variables from the reader, but If have to use method call to read tag and write tag, If I want to use method call for read tag, I need assign some input and output parameters(arguments), the ReadTag method declared in reader is as following:
ReadTag (
[in] ScanData Identifier
[in] CodeTypeDataType CodeType
[in] UInt16 Region
[in] UInt32 Offset
[in] UInt32 Length
[in] ByteString Password
[out] ByteString ResultData
[out] AutoIdOperationStatusEnumeration Status);
the problem is that there are some structures in the parametes which is not present in TwinCAT, for example I did the first parameter Identifier
VAR
_identifier : DWORD;
END_VAR
_paramCounterIn := _paramCounterIn + 1;
_paramListIn[_paramCounterIn].IsString := FALSE;
_paramListIn[_paramCounterIn].pString := ADR(_identifier);
_paramListIn[_paramCounterIn].ParamAdr := ADR(_identifier);
_paramListIn[_paramCounterIn].ParamSize := SIZEOF(_identifier);
_inputArgInfos[_paramCounterIn].DataType := eUAType_UInt32;
_inputArgInfos[_paramCounterIn].ValueRank := -1;
_inputArgInfos[_paramCounterIn].ArrayDimensions[1] := 0;
but it failed, sometimes it throws following error, does anyone have experience for method call with Opc UA, please give me some instruction, thanks!
0x E4DD 0105 | UAC_E_ITEMTYPE | Invalid or unsupported item type |
Solved! Go to Solution.
05-30-2023 11:34 AM
Maybe this Siemens documentation helps:
https://support.industry.siemens.com/cs/attachments/109808136/AH_OPCUA-Ident_76_en-US.pdf
05-30-2023 02:07 PM
You are trying to execute the OPC UA method call natively with the PLCopen function blocks - this is indeed not so easy and you have to do some calculations to set the correct data addresses.
Have you looked at the NexeedOpcUaClient addon ?
Maybe it will make things easier for you.
05-31-2023 03:16 AM
thanks, but I already have this document, and the ReadTag method declaration comes from it, but my question is how to use method call with OPC UA PLCOpen API in beckhoff.
05-31-2023 03:17 AM
this is a good news for me, but I can't find NexeedOpcUaClient in BCI object repository, can you sent the link for it?