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

Ergebnis 1 bis 10 von 10

Thema: Änderungen in einem DB feststellen

  1. #1
    Registriert seit
    05.01.2012
    Ort
    48720 Rosendahl
    Beiträge
    43
    Danke
    5
    Erhielt 5 Danke für 5 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi!

    Ich muss in einem Projekt 200 Thermoelemente erfassen und mittels einer 2-Punkt Kalibrierung den eingelesenen Rohwert Kalibrieren. Ich habe mir hierzu eine Funktion geschrieben die mittels 4 Real Werten, einen Faktor und einen Offset ermittelt und hierrüber den Rohwert kalibriert. Um die Zykluszeit so gering wie möglich zu halten, möchte ich den Faktor sowie den ermittelten Offset nicht bei jedem Zyklus neu berechnen. Ich möchte dies nur machen, wenn in dem DB mit dem 4 Real Werten je Thermoelement sich ein Wert ändert.
    Nun zu meiner Frage:
    Gibt es einen einfachen Weg, das ändern nur eines Real Wertes in einem DB mit mehreren Real Werten zu erfassen, sodass ich darauf hin mein Faktor sowie Offset neu berechne?

    Hoffe es ist einigermassen verständlich was ich erreichen möchte.

    Gruß
    Markus
    Geändert von Maggi (08.10.2015 um 12:53 Uhr)
    Gruß Maggi
    Zitieren Zitieren Änderungen in einem DB feststellen  

  2. #2
    Registriert seit
    25.11.2008
    Ort
    Westpfalz
    Beiträge
    1.550
    Danke
    187
    Erhielt 212 Danke für 186 Beiträge

    Standard

    Aus mathematischer Sicht köntest du alle Werte des DB addieren und die Summe mit der Summe des vorigen Zyklus vergleichen.
    Aus prozesstechnischer Sicht willst du auf der einen Seite Zykluszeit sparen, auf der anderen wieder etwas dazu tun,
    da frage ich mich ob es nicht sinnvoller wäre die Hardware etwas aufzurüsten?

    mfG Sinix
    and we all support the team (S.King - Die Arena)

  3. #3
    Registriert seit
    20.01.2009
    Beiträge
    190
    Danke
    32
    Erhielt 15 Danke für 14 Beiträge

    Standard

    Du könntest in jedem SPS-Zyklus nur eine bestimmte Anzahl von Werten skalieren. Ist halt eine Frage, wie schnell sich deine Werte ändern und welche Zykluszeit du bereits hast, bzw. wieviel sich deine Zykluszeit erhöhen darf.

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.327
    Danke
    932
    Erhielt 3.332 Danke für 2.690 Beiträge

    Standard

    Ist Deine CPU zu langsam für Deinen Prozess oder wieviel Zykluszeit hoffst Du umständlich einzusparen?

    Wenn Du sowieso jeden Wert zwecks Änderungserkennung anfassen mußt (womöglich auch noch indirekt addressiert), dann kannst Du vermutlich auch gleich das bisschen Rechnerei machen.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #5
    Maggi ist offline Benutzer
    Themenstarter
    Registriert seit
    05.01.2012
    Ort
    48720 Rosendahl
    Beiträge
    43
    Danke
    5
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Danke für eure Antworten.

    Hab mir schon sowas gedacht, dass es hierzu keine "fertige" bzw. einfache Lösung gibt.
    Ihr habt recht so wild sind die Berechnungen auch nicht, dachte nur was nicht unbedingt immer wieder neu bearbeitet werden muss kann man sich sparen. Aber der Aufwand hierzu ist wahrscheinlich größer als die Berechnung an sich.

    Schönen Abend noch!
    Gruß Maggi

  6. #6
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.327
    Danke
    932
    Erhielt 3.332 Danke für 2.690 Beiträge

    Standard

    Das ist die Arbeitsweise einer SPS, daß sie ...zig mal je Sekunde immer wieder neu berechnet, was sie bereits kurz davor schonmal berechnet hat, und in den meisten Fällen hat sich zur vorherigen Berechnung nichts geändert.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  7. #7
    Registriert seit
    19.10.2010
    Beiträge
    328
    Danke
    15
    Erhielt 36 Danke für 31 Beiträge

    Standard

    Ich würde mir einfach den alten Wert am Ende jedes Zyklus speichern und im nächsten Zyklus alt mir neu vergleichen. Man könnte hier sogar noch eine kleine Hysterese mit einbauen. Ob du jetzt alle Werte in jedem Zyklus prüfst oder nur die Hälfte / Drittel ist dir und deinem Prozess überlassen. Ich denke aber, dass das die Zykluszeit nicht wirklich nach oben schnellen lässt.

  8. #8
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard

    L MW NeuerWert
    L MW AlterWert
    XOW
    = Merkerbit Änderung

    L MW NeuerWert
    T MW AlterWert

    und das 4 mal und immer auf das gleiche Merkerbit

  9. #9
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard

    Äh MD da Realwerte und XOD

  10. #10
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    SPS Freak hat recht.Man muss eine Hysterese reinbringen.1 Bit zappelt immer.

Ähnliche Themen

  1. TIA Wertänderung feststellen
    Von taylor1982 im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 01.09.2015, 22:05
  2. Step 7 Speicherbereich in 315-2 DP feststellen?
    Von AKA im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 08.04.2014, 12:10
  3. Antworten: 2
    Letzter Beitrag: 23.06.2010, 11:18
  4. Profibus Adresse feststellen
    Von styrax im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 09.01.2010, 16:54
  5. Feststellen ob Profibus DP Slave bereit
    Von YesWeCant im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 06.08.2009, 15:43

Stichworte

Lesezeichen

Berechtigungen

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