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

Ergebnis 1 bis 6 von 6

Thema: Addierer als Zähler läuft begrenzt bei 16777220

  1. #1
    Registriert seit
    06.05.2015
    Beiträge
    19
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi Leute,

    ich habe einen fremden Baustein auseinander genommen weil aufgefallen ist, dass der Zähler irgendwann stehen geblieben ist.

    Es wird hier mit einem Addierer für Realzahlen gearbeitet. Es wird immer eine 1 aufaddiert (Siehe screenshot). Der Zähler stoppt bei 16.777.220 . Das Realformat sollte doch aber Zahlen bis 2.147.483.648 speichern, oder sehe ich das falsch?

    Problem Zähler.jpg
    Besten Dank schon Mal

    Matti
    Zitieren Zitieren Addierer als Zähler läuft begrenzt bei 16777220  

  2. #2
    Registriert seit
    09.08.2006
    Beiträge
    3.642
    Danke
    915
    Erhielt 661 Danke für 543 Beiträge

    Standard

    Mehr als 8 Stellen geht nicht. Wuerde nur Max 7 Stellen verwenden. Gibts hier und bei Siemens mehrere Beiträge dazu...

  3. #3
    Registriert seit
    23.10.2009
    Beiträge
    399
    Danke
    59
    Erhielt 114 Danke für 88 Beiträge

    Standard

    Bei Real-Zahlen werden 24 Bit für die Mantisse und 8 Bit für den Exponenten benutzt. Bei der Addition müssen die Exponenten angeglichen werden, deshalb wird ab einem Größenverhältnis der beiden Summanden von mehr als 1:16777216 (1:2^24) nichts mehr addiert.
    Von dem ursprünglichen Software-Schreiber war "Real" wohl eine blöde Wahl.
    Gruß
    Erich

  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.268
    Danke
    537
    Erhielt 2.708 Danke für 1.957 Beiträge

    Standard

    Auf jeden Fall auf DINT umstellen, dann funktioniert das. Wenn das vom Wertebereich nicht reichen sollte, kann man bei Überlauf der DINT eine zweite DINT oder INT hochzählen.
    Allerdings hat man da ein Problem, wenn man das dann in einem HMI darstellen möchte, das auch nicht mehr als ein volles DINT darstellen kann.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. #5
    Registriert seit
    06.05.2015
    Beiträge
    19
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Super!!! Vielen Dank für die Erklärung!

    Noch eine andere Frage dazu. Ich muss noch den Resetwert anpassen. Also wenn der maximale Dint Wert erreicht ist soll er zurückgesetzt werden. Der Dint Bereich ist jetzt ja groß genug.
    Ich würde nun also 2.147.483.648 einsetzen. Die Zahl kann ich am Vergleicher im Format L#00000000 aber nicht eingeben. Hier sind nur 8 Stellen erlaubt. Warum ist das so und welche ist hier die höchste mögliche Zahl? Hatte eine hohe Zahl probiert und dann wurde es Minus... Da habe ich was noch nicht so ganz verstanden.

  6. #6
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.752
    Danke
    323
    Erhielt 1.527 Danke für 1.286 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Der korrekte Wert ist: >= 2.147.483.647, der einfachste Weg wäre wahrscheinlich aber einfach der Vergleich auf < 0.
    Wenn der Zähler bei 2.147.483.647 +1 zähle, dann ist der Wert danach -2.147.483.648.

    Aber wenn es sich bei deinen Zähler wirklich um ganze Sekunden handelt, dann wäre das eine Dauerbetriebszeit von
    68,... Jahren, sprich solange hält die Kiste, also speziell die SPS mit höchster Wahrscheinlichkeit sowieso nicht.
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

Ähnliche Themen

  1. Step 7 Offene Kommunikation bei Profinet CPU's. Verbindungen Begrenzt?
    Von hope_jippos im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 22.05.2014, 15:25
  2. S7-400 Zähler läuft nur einmal
    Von caipi im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 07.12.2011, 22:53
  3. Addierer
    Von Xorron im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.02.2009, 07:33
  4. Addierer
    Von _Praktikant_ im Forum Simatic
    Antworten: 48
    Letzter Beitrag: 23.08.2007, 20:15
  5. OP7 läuft schneller an als S7-315-2DP
    Von !Chris! im Forum HMI
    Antworten: 6
    Letzter Beitrag: 08.09.2005, 10:00

Lesezeichen

Berechtigungen

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