Dauerhafte Anzeige von Zähler

  • Hallo, erstmal ein :applaus: und :danke: an die mitglieder in diesem forum. ich lese schon länger mit und es hat mir auch schon sehr geholfen.
    so, nun zu meiner frage: ich habe in unserem roboterprogramm auf arbeit einen zähler programmiert, soweit so gut. nun will ich aber das mir der zähler ständig im bedienteil vom roboter angezeigt wird.( evtl meldungsfenster) hab nix gefunden wie das geht. der zähler ist I[2].
    nächste frage: unter anzeige->variablen->zähler seh ich den wert von i[2], aber dahinter steht nur zähler, das kann man doch irgendwie ändern. ich will das da "Dosenlagen" steht.
    bin um jede hilfe dankbar.


    ps: bin kein programmierer, nur der bediener des robbys und ich hab ein paar abfragen eingefügt. kuka ist eben mein kleines hobby geworden. ach ja, es handelt sich um einen KR180 PA2 mit KRC2 steuerung

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


    das kannst du bequem über Anzeige -> Variable -> Übersicht -> Konfiguration oder ConfigMon.ini bearbeiten einstellen. In der ConfigMon.ini findest du in etwa so einen Eintrag:


    [Group1] ; 1. Reiter
    GroupTitle=Example1 ; Titel des Reiters
    Editable=Expert ; wer darf editieren (Benutzergruppe)
    Visible=Operator ; wer darf anschauen (Benutzergruppe)
    ColWidthState=35
    ColWidthName=100
    ColWidthVariable=100
    ColWidthValue=51
    ConfigWindowWidth=310
    ShowWindowWidth=306
    Item1=NMOV;Bewegungen;0;3;20 ; Item1=<Variablenname>; <AnzeigeName>; <Aktualisierung 1=an 0 = aus>;...
    Item2=JERKVIOL;Max. Ruckverletzung;1;3;30
    Item3=GETMOM;Max. Getriebemomentenverletzung;1;3;30
    Item4=MOTMOM;Max. Motormomentenverletzung;1;3;30



    den du entweder selber editierst. Alternativ kanns du das aber auch alles über die Oberfläche unter Konfiguration einstellen. Du musst aber soweit ich weis als Experte angemeldet sein um etwas einstellen zu können.


    Gruß
    Fubini

  • zu 1.


    zu 2.
    Einfach unter anzeige->variablen->zähler "NAME" drücken und schon kannst du den Text ämdern.

    Kontrolle ist eine Illusion, denn niemand weiss was als nächstes passiert.

  • @notime:


    Werden die Meldungen nicht auch in die Log-Datei eingetragen.
    :denk: Das fänd ich dann aber voll nervig, wenn ich den mal durchsehen müsste...

    Greetings, Irrer Polterer!

    Wie poste ich falsch? Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Life is a beta version. Full of bugs and no Manual.

  • danke für eure antworten, aber was hat es mit dem code von notime auf sich, was passiert da alles? und wo wird das hingeschrieben? ist es ein neues programm? dann muss man es ja auch irgendwie mit einbinden, oder?


    DECL INT OFFSET
    DECL STATE_T STATE
    DECL MSG_T EMPTY_MSG
    EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] " ",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
    ...
    $MSG_T=EMPTY_MSG
    OFFSET=0
    $MSG_T.KEY[]="Dosenlagen = %1"
    SWRITE($MSG_T.PARAM[], STATE, OFFSET, "%d", I[2])
    $MSG_T.VALID=TRUE
    WHILE $MSG_T.VALID
    WAIT SEC 0.05
    ENDWHILE


    kann mir jemand diese zeilen ausdeutschen? hab im handbuch schon was über $MSG_T gelesen, aber damit komm ich nicht klar.

  • Also:


    Code
    DECL INT OFFSET
    DECL STATE_T STATE
    DECL MSG_T EMPTY_MSG
    EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] " ",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}


    sind alle nötigen Declarationen von benötigten Varialben. Die kannst du am Anfang von dem Programm eintragen wo die Meldung erzeugt werden soll. Alternativ kann man die Declaration auch in die ".dat"-Datei schreiben oder wenn es global sein soll in die "$CONFIG.DAT".



    Der nachfolgende Code kommt dort hin wo du deine Meldung erzeugen möchtest.


    Code
    $MSG_T=EMPTY_MSG


    Weist $MSG_T den leeren Grundkörper der Meldung zu ($MSG_T.TYP=#NOTIFY ist eine Hinweismeldung)


    Code
    $MSG_T.KEY[]="Dosenlagen = %1"


    Setzt den Text der Meldung. "%1" ist ein Platzhalter für den Parameter


    Code
    OFFSET=0
    SWRITE($MSG_T.PARAM[], STATE, OFFSET, "%d", I[2])


    Schreibt deinen Wert des Zählers I[2] als Parameter in die Meldung.
    $MSG_T.PARAM_TYP=#VALUE = Parameter ist eine Zahl oder Text und kein Datenkankeintrag
    "%d" = Dezimal- oder Integerzahl


    Code
    $MSG_T.VALID=TRUE
    WHILE $MSG_T.VALID
    WAIT SEC 0.05
    ENDWHILE


    "Feuern" der Meldung und warten das die Meldung angezeigt wurde.

    Kontrolle ist eine Illusion, denn niemand weiss was als nächstes passiert.

  • Hallo Robotergemeinde,


    Kann man auch selbst erstellte Variablen des Typs Real anzeigen lassen als Hinweismeldung :denk: . Habe es so wie beschrieben programmiert, nur bekomme ich die Meldung was in den Anführungsstrichen steht (Name der Variabel und leider nicht die Dezimalzahlen :cry:).



    KRC 2 Steuerung

  • Eine Frage hätte ich da noch, :hilfe:


    gibt es einen Befehl, wo das Programm die ganzen Hinweismeldungen selbständig löschen kann. (z.B. nach einer bestimmten Zeit oder nach einem Programm durchlauf).
    Da diese Angezeigten Real Variablen sich immer wiederholen würden.

  • Probiers mal so



    wenn du die Anzeige löschen willst dann einfach StrClear($Loop_Msg[])


    Gruß Loipe

  • Guten Morgen


    Also meine Variablen kann ich jetzt Wunderbar anzeigen lassen.
    Leider Bekomme ich es nicht hin, dass meine Hinweismeldungen gelöscht werden. :cry:
    Wenn ich z.B. nach meinen Hinweismeldungen StrClear($Loop_Msg[]) reinschreibe,
    bekomme ich die Fehler Meldung, Name nicht als UP vereinbart.
    (Muss ich noch was deklarieren?) :huh:

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