Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 17 von 17

Thema: Real Höchstwert innerhalb 1 sec

  1. #11
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.618
    Danke
    775
    Erhielt 646 Danke für 492 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Sprungmarke haste vergessen.

    Code:
         UN M1.0
         L S5 T#1S
         SE T1
         U T 1
         = M 1.0
         U M1.0
         SPB NULL
    Paul: NOP 0
         L #Messwert 
         L #Hoechstwert
         <R 
         SPB GO 
         L #Messwert 
         T #Hoechstwert 
    GO:NOP 0
         SPA ENDE
    NULL:L 0.0
         T #Hoechstwert
         SPA Paul
    ENDE:NOP 0
    Rücksprünge sind aber ein guter Weg sich eine Schleife zu bauen die im blödesten Moment zuschlägt. Wann immer möglich Rücksprünge vermeiden (ist eigentlich immer möglich)

  2. Folgender Benutzer sagt Danke zu vollmi für den nützlichen Beitrag:

    Sepple (06.04.2011)

  3. #12
    Registriert seit
    23.04.2009
    Ort
    Allgäu
    Beiträge
    3.042
    Danke
    241
    Erhielt 863 Danke für 617 Beiträge

    Standard

    Zitat Zitat von PN/DP Beitrag anzeigen
    Der Höchstwert müßte statt auf 0.0 auf den aktuellen Meßwert gesetzt werden.
    Das sehe ich absolut nicht so:
    1. Wird im neuen Zyklus der Wert sowieso auf den aktuellen Messwert gesetzt.
    2. Nach Deiner Variante hast Du im neuen Zyklus den aktuellen Messwert vom letzten Zyklus (den gespeicherten) was aber wenn der Messwert im neuen Zyklus kleiner ist?
    Wo ich Dir allerdings Recht gebe und was auch sinnvoll ist, das "Wegschreiben" ( T #Weiterverarbeitung ) des Sekundenwertes.
    Gruß
    Paule
    ----------------------------------------------------------------------------
    > manchmal verliert man und manchmal gewinnen die anderen <

  4. #13
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.177
    Danke
    922
    Erhielt 3.288 Danke für 2.657 Beiträge

    Standard

    Zitat Zitat von Paule Beitrag anzeigen
    Zitat Zitat von PN/DP Beitrag anzeigen
    Der Höchstwert müßte statt auf 0.0 auf den aktuellen Meßwert gesetzt werden.
    Das sehe ich absolut nicht so:
    1. Wird im neuen Zyklus der Wert sowieso auf den aktuellen Messwert gesetzt.
    Man müßte definieren, ob der OB1-Zyklus, in dem der Timer abläuft, noch zum alten Meßzeitraum gehört oder schon zum neuen Meßzeitraum (ich zähle ihn zum neuen, weil die Sekunde da ja schon abgelaufen ist, aus dem dieser Meßwert stammt - und weil es einfacher zu programmieren ist).
    In Deiner Programmvariante ist es jedenfalls so, daß in genau dem OB1-Zyklus der Meßwert völlig ignoriert wird (weder für den alten noch für den neuen Meßzeitraum berücksichtigt wird).

    Zitat Zitat von Paule Beitrag anzeigen
    Wo ich Dir allerdings Recht gebe und was auch sinnvoll ist, das "Wegschreiben" ( T #Weiterverarbeitung ) des Sekundenwertes.
    Wenn der Wegschreib-Code etwas umfangreicher ist, kann das T #Weiterverarbeitung auch gerne ein
    Code:
          CALL "Hoechstwertspeichern"
           Wert:=#Hoechstwert
    sein.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #14
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.177
    Danke
    922
    Erhielt 3.288 Danke für 2.657 Beiträge

    Standard

    Zitat Zitat von Paule Beitrag anzeigen
    1. Wird im neuen Zyklus der Wert sowieso auf den aktuellen Messwert gesetzt.
    Nicht unbedingt. Falls in einem Meßzeitraum nur negative Meßwerte kommen, dann wäre die gesetzte 0.0 der Höchstwert.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  6. #15
    Registriert seit
    23.04.2009
    Ort
    Allgäu
    Beiträge
    3.042
    Danke
    241
    Erhielt 863 Danke für 617 Beiträge

    Standard

    In Deiner Programmvariante kann es genauso vorkommen (wenn der letzte Wert der höchste ist), dass genau in dem Moment der neue Höchstwert ermittelt wird wenn der letzte gespeichert wird, und das kann falsch sein.
    Zitat Zitat von PN/DP Beitrag anzeigen
    Der Höchstwert müßte statt auf 0.0 auf den aktuellen Meßwert gesetzt werden.
    Code:
          L    #Hoechstwert
          T    #Weiterverarbeitung
          SPA  NEUH
     
    COMP: L    #Messwert
          L    #Hoechstwert
          >R
          SPBN ENDE
     
    NEUH: L    #Messwert
          T    #Hoechstwert
     
    ENDE: NOP 0
    Zitat Zitat von PN/DP Beitrag anzeigen
    Nicht unbedingt. Falls in einem Meßzeitraum nur negative Meßwerte kommen, dann wäre die gesetzte 0.0 der Höchstwert.

    Harald
    Das ist ein klasse Argument und das lasse ich gerne so stehen, aber nur mit der Anmerkung dass es in Deiner Variante auch nicht geht.
    Gruß
    Paule
    ----------------------------------------------------------------------------
    > manchmal verliert man und manchmal gewinnen die anderen <

  7. #16
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.177
    Danke
    922
    Erhielt 3.288 Danke für 2.657 Beiträge

    Standard

    Zitat Zitat von Paule Beitrag anzeigen
    In Deiner Programmvariante kann es genauso vorkommen (wenn der letzte Wert der höchste ist), dass genau in dem Moment der neue Höchstwert ermittelt wird wenn der letzte gespeichert wird, und das kann falsch sein.
    Ich schrieb ja bereits, daß man definieren müßte, zu welchem Meßzeitraum der Meßwert gehören soll, der genau in dem OB1-Zyklus gemessen wurde, in dem der Timer abläuft. Bei mir wird dieser Meßwert für den neuen Meßzeitraum berücksichtigt.

    Zitat Zitat von Paule Beitrag anzeigen
    Zitat Zitat von PN/DP Beitrag anzeigen
    Nicht unbedingt. Falls in einem Meßzeitraum nur negative Meßwerte kommen, dann wäre die gesetzte 0.0 der Höchstwert.

    Harald
    Das ist ein klasse Argument und das lasse ich gerne so stehen, aber nur mit der Anmerkung dass es in Deiner Variante auch nicht geht.
    Meine Variante müßte auch mit negativen Werten funktionieren (hab's aber nicht getestet). Ich sehe jetzt nicht, wieso es nicht gehen sollte.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  8. #17
    Registriert seit
    23.04.2009
    Ort
    Allgäu
    Beiträge
    3.042
    Danke
    241
    Erhielt 863 Danke für 617 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von PN/DP Beitrag anzeigen
    Meine Variante müßte auch mit negativen Werten funktionieren (hab's aber nicht getestet). Ich sehe jetzt nicht, wieso es nicht gehen sollte.
    Bin es noch mal durchgegangen, ja Du bist da ein Zyklus schneller dran, darum sollte es passen.
    [Klugscheißmodus] berechtigt!
    Gruß
    Paule
    ----------------------------------------------------------------------------
    > manchmal verliert man und manchmal gewinnen die anderen <

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 11.08.2010, 22:09
  2. Alarmbehandlung innerhalb der Steuerung (Codesys)
    Von dietere im Forum Sonstige Steuerungen
    Antworten: 0
    Letzter Beitrag: 19.11.2007, 17:29
  3. Antworten: 1
    Letzter Beitrag: 24.03.2007, 14:16
  4. Antworten: 2
    Letzter Beitrag: 03.04.2006, 07:05
  5. Problem mit Timer und Zähler innerhalb eines FC
    Von Anonymous im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 01.06.2004, 09:43

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •