Variable mittels String lesen

  • Moin Gemeinde,
    ich bin hier schon länger stiller Leser und konnte mir auch bis jetzt immer mit der Suchfunktion selber weiterhelfen.
    Ist schon gewaltig was hier für ein geballtes Fachwissen rumgeistert. :grinser043:
    Doch nun bin ich einfach nicht fündig geworden.
    folgendes Problem: ich möchte gern eine Variable mittels "zusammen gebastelten" Strings lesen.
    Im Grund ist mein Problem in den letzten Programmzeilen der Funktion Base_nr_suchen().


    Programm mit Funktionsaufruf


    Hier nun die Funktion:


    Ich hoffe es ist klar geworden wo mein Problem liegt.
    Und freue mich über eure Ideen. :supi:


    MFG Damson

  • Schritt für Schritt zum Roboterprofi!
  • Hallo Damson,


    die Basenamen stehen doch in der $config.dat unter
    DECL CHAR BASE_NAME[32,24]
    BASE_NAME[1,]="Flansch_an_R2"
    BASE_NAME[2,]=" "
    BASE_NAME[3,]=" "
    BASE_NAME[4,]=" "
    BASE_NAME[5,]=" "
    ...


    Insbesondere kannst du also den Basenamen direkt in KRL lesen. Somit könntest du doch einfach deinen String der Reihe nach gegen die in BASE_NAME[,] vergleichen (siehe StrComp). Die gesuchte Basenummer ist dann einfach der BASE_NAME[]-Index bei dem der Vergleich nicht schief geht.


    Fubini

  • Hi Damson,
    wenn du doch eigenen weg gehen willst, dann kannst in einem unterprogramm char vergleichen.


    syntax fehler sind nicht ausgeschlossen

    Einmal editiert, zuletzt von freelancer ()

  • Hi das geht alles in die falsche Richtung ich meinte eher so:

    Code
    BOOL TEST
    CHAR STRING[]
    STRING[]="$OUT[40]"
    Test=Varvalue(String[]); ich weiß so klappt es nicht 
    Test=String[].value ; oder so ähnlich


    Im Grunde will ich nur ein Variable lesen deren Name ich aber nur als Sting habe.
    Irgendwie sind solche Probleme echt schwer zu verschriftlichen :denk:
    Aber ich denke so ist es ein wenig klarer. Ich benötige nur diesen Befehl/Funktion den ich hier als Varvalue dargestellt habe.


    MFG DAMSON

  • Hi Damson,
    die Funktion kenne ich von ABB und frage, ob man das auf kuka überstezen kann,
    habe ich schon im forum gesehen. Das würde mich auch interessieren,
    bis jetzt aber würde ich behaupten, dass kuka kann das nicht.
    So sieht das bei abb:
    GetDataVal "varName_"+ValToStr(zaehler)+"_"+ValToStr(typNr),varTemp;
    lesen:
    varTemp=varName_1_15
    oder Signale:
    GetDataVal "do"+station+"Frei",doStationFrei;


    Die Funktion ist geil. ABB - unerreichbar :supi:

    Einmal editiert, zuletzt von freelancer ()

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden