Quantcast
Channel: SPS-Forum - Automatisierung und Elektrotechnik
Viewing all articles
Browse latest Browse all 47324

TIA FC der die IDB Adresse ausliest

$
0
0
Hallo,
ich habe Probleme mit einem Code, ich schreibe an einem Standard FC der die IDB Adresse ausließt und in einer Liste einträgt ....
Die restlichen infos im #_modulInfoBuffer.IDB_Address( DB_Any) interessieren mich nicht ich möchte dort nur die IDB Adresse von der Variable IDB eintragen.
Probleme macht hier der Slicer Word zugriff, woran kann das liegen?
Code:

IF #InitialAktiv THEN
    "Modul_SetInfo"(ModulInfo:=#BA.ModulInfo, IDB_Name:= WSTRING_TO_STRING(IN:= GetInstanceName(size:=0)), IDB:= #InitialAktiv );
END_IF;

Code:

//Init
#Modul_SetInfo := FALSE;
//
IF IS_ARRAY(OPERAND:= #ModulInfo) THEN
    IF TypeOfElements(#ModulInfo) = SS_FunctionInfo THEN
        #_size := UDINT_TO_INT(IN:= CountOfElements(#ModulInfo));
       
        FOR #_index := #LOWER_SIZE TO #_size DO
            #_retVal := MOVE_BLK_VARIANT(SRC:=#ModulInfo, COUNT:=#COPY_SIZE, SRC_INDEX:=#_index, DEST_INDEX:=0, DEST=>#_modulInfoBuffer);
            IF #_retVal <>0 THEN // error ?
                #Modul_SetInfo := FALSE;
                RETURN;
            END_IF;
           
            IF #_modulInfoBuffer.IDB_Address = 0 AND #_modulInfoBuffer.Name = 'Null' THEN
                #_modulInfoBuffer.Name := #IDB_Name;
                #_modulInfoBuffer.IDB_Address.%W2 := #IDB.%W2;
               
                IF #_retVal <>0 THEN // error ?
                    #Modul_SetInfo := FALSE;
                    RETURN;
                END_IF;
                #_retVal := MOVE_BLK_VARIANT(SRC:=#_modulInfoBuffer, COUNT:=#COPY_SIZE, SRC_INDEX:=1, DEST_INDEX:=#_index, DEST=>#ModulInfo);
                IF #_retVal <>0 THEN // error ?
                    #Modul_SetInfo := FALSE;
                    RETURN;
                END_IF;
            END_IF;
        END_FOR;
        //All modul elements at home :)...
        #Modul_SetInfo := TRUE;
    END_IF;
 END_IF;


Viewing all articles
Browse latest Browse all 47324


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>