Stückzahlzähler

  • ANZEIGE
  • wie meinst du das genau?


    ne Variable auf die du nach jedem zyklus inkrementierst?
    was hast du vor
    willst du die als Meldung anzeigen, soll das nur Schicht-,Tages- oder Gesamtstückzähler sein
    wann soll zurückgestzt werden?


    bissel mehr Info bitte


    Gruß Loipe

  • Hallo
    Es soll eine Meldung angezeigt werden, die mir sagt, wie oft ein Programm in einer Schicht abläuft.
    Die Meldung sollte wenn möglich immer wieder auf null gesetzt werden.
    Nochmals vielen Dank.
    Metallmaus

  • Immer noch bischen dünn die Info.


    Aber mal grundsätzlich: Du brauchst eigentlich nur eine Variable zum Zählen (PERS num nZaehl:=0; ) und immer wenn Dein Zählereignis eintritt, zaehlst Du eins hoch (Incr nZaehl;).
    Ausgeben kannst Du mit TPWrite"Zaehlerstand= "\Num:=nZaehl;


    Und nullen mit nZaehl:=0;


    Gruß
    Stromer

  • Hallo,


    bin ebenfalls auf der Suche nach eine Lösung mit diesen Zähler - bei mir
    soll angezeigt werden wieviel Stück pro Stunde abgearbeitet werden.
    Das normale aufzählen funktioniert soweit.


    Kann eventuell jemand weiterhelfen?? Danke :?:

  • Hallo Klausii,
    dafür müsstest du erstmal deine Zykluszeit kennen. Schau mal in der Doku nach clkStart, clkStop, ... usw.
    Wenn du die hast musst du einfach 3600 Sekunden (1 Stunde) durch deine Zykluszeit Teilen. z.B.


    ! Deklarationen
    VAR clock clkStopuhr;
    VAR num nZykluszeit:=0;


    ! Dieser Teil am Anfang vom Zyklus
    ClkStop clkStopuhr;
    nZykluszeit:=ClkRead(clkStopuhr);
    TPWrite "Zykluszeit : "\num:=Round(nZykluszeit Dec:=2);
    TPWrite "Ausbringung pro Stunde: "\num:= Round(3600 / nZykluszeit \Dec:=0);
    ClkReset clkStopuhr;
    ClkStart clkStopuhr;

    Ist nicht getestet aber müsste funktionieren.


    Gruß Z750

  • Hallo Z750,


    also ich habs mal probiert im Simulator geht leider nicht so ganz.
    Wenn ich ein zyklus mal durchlaufen lasse steht in der Variable immer nur
    0 drinne kann mir leider auch nicht erklären warum?? So hab ich es gemacht:


    VAR num nzykluszeit:=0;
    VAR clock clock2;


    PROC main()
    ClkStop clock2;
    nzykluszeit := ClkRead(clock2);
    MoveJ [[**************]], v1000, z50, tool0;
    MoveJ [[**************]], v1000, z50, tool0;
    MoveJ [[**************]], v1000, z50, tool0;
    TPWrite "Zykluszeit: "\Num:=nzykluszeit;
    !TPWrite "Stückzahl pro Stunde: "\Num:=Round(3600 / zykluszeit);
    ClkReset clock2;
    ClkStart clock2;
    ENDPROC


    Dec:=2 <- kennt er irgendwie nicht...




    Gruß Klausii

    Einmal editiert, zuletzt von Klausii ()

  • Ich kanns mir leider nicht verkneifen: Hast Du schon mal in die Doku geschaut? :meld:


    Wenn ich einen Timer gleich am Anfang des Programms stoppe und auslese, naja, dann wird wohl 0 drin stehen.


    Wenn ich Stückzahl pro Zeiteinheit bestimmen müßte würde ich mir einen zeitgesteuerten Interrupt nehmen, in dem ich jedes mal die Stückzahl auslese, hochrechne (oder auch nicht, je nach Aktualisierungszeit) und dann die Stückzahl wieder nullen.
    Das Hochzählen läuft dann im Hauptprogramm z.B. beim Ablegen der fertigen Teile.


    Gruß
    Stromer


    nix für ungut


  • Ich glaube nicht daß du dich dafür entschuldigen musst.
    Dazu sind Foren wie dieses ja hier. Um zu helfen.

    Gruß Roland


    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.


    Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.

    Konrad Adenauer

  • hallo,


    seh ich genauso.
    Das mit dem Dec funktioniert wegen einem Tippfehler nicht. Muss eigentlich noch ein "\" davor.
    Das Round in verbindung mit zB \Dec :=2 rundet auf 2 stellen nach dem Komma.


    Gruß Z750

Hilfe und Support für ABB Roboter Programmierung, Konfiguration, Inbetriebnahme finden Sie hier im ABB Roboter Forum. ABB Rapid Programmierung ist einfach, die Roboterforum Community hilft sehr gerne.

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