Developer Portal Community

    We are still working on migrating to the new Bosch Connected Industry Online Portal. Stay tuned! Click here for the latest updates.

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 
    SOLVED

    How to use OPC UA method with complex input parameters

    How to use OPC UA method with complex input parameters

    hbszjjw
    Established Member

    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

     

    7 REPLIES 7

    SteffenR-
    Community Moderator
    Community Moderator

    Thorsten_Brach
    New Contributor

    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.

     

     

    hbszjjw
    Established Member

    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.

    this is a good news for me, but I can't find NexeedOpcUaClient in BCI object repository, can you sent the link for it?

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist