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

Ergebnis 1 bis 6 von 6

Thema: S7 Gleitpunkt und libnodave 12345678.123

  1. #1
    Registriert seit
    13.03.2007
    Ort
    Nürnberg
    Beiträge
    561
    Danke
    56
    Erhielt 50 Danke für 45 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo
    gestern bin ich reingefallen, als ich mit libnodave die Gleitpunkt-Zahl
    12345678.123 geschrieben habe.
    In der S7 addiere ich alle 250ms +0.25.

    Aber da tat sich nichts.
    Jetzt weiss ich dass der Bereich dafür offensichtlich nicht genügt. ( 1.2345 e007 )

    Seltsam ist in der S7 jedoch auch:
    Wenn die Gleitpunkt 0.0 ist und dann immer 0.25 addiert wird,
    kommt NICHT exact 1.25 1.50 1.75 2.00 dabei raus. (1.9995... etc)
    Liegt das an der S7 312C ?
    (konnte das eine S5 135 mit doppelter Genauigkeit nicht besser?)

    grüße
    Kabelsalat ist Gesund
    (vom CCC abgekupfert)

    Prognosen sind schwierig,
    besonders wenn sie die Zukunft betreffen.
    (Ursprung nicht wirklich bekannt)


    Zitieren Zitieren S7 Gleitpunkt und libnodave 12345678.123  

  2. #2
    Registriert seit
    11.04.2008
    Ort
    Bayern
    Beiträge
    523
    Danke
    26
    Erhielt 67 Danke für 67 Beiträge

    Standard

    liegt am aufbau der gleitpunktzahl.dies kann so weit gehen das gar nichts addiert wird wenn die Differenz beider Zahlen zu groß ist.

  3. #3
    Registriert seit
    29.03.2004
    Beiträge
    5.735
    Danke
    143
    Erhielt 1.685 Danke für 1.225 Beiträge

    Standard

    Zitat Zitat von Senator42 Beitrag anzeigen
    Seltsam ist in der S7 jedoch auch:
    Wenn die Gleitpunkt 0.0 ist und dann immer 0.25 addiert wird,
    kommt NICHT exact 1.25 1.50 1.75 2.00 dabei raus. (1.9995... etc)
    Liegt das an der S7 312C ?
    (konnte das eine S5 135 mit doppelter Genauigkeit nicht besser?)
    Hm, bei der Addition von Zweierpotenzen oder deren Kehrwerten müsste eigentlich bei der Berechnung der genaue Wert dargestellt werden. Hast du vielleicht als Anfangswert nicht 0.0 geladen?

    Was meinst du mit "S5 135" und doppelter Genauigkeit? Imho hatte die S5 intern eine andere Darstellungsweise von Gleitpunktzahlen als IEEE 754, aber wohl auch nur maximal 32 Bit. Diese Ungenauigkeit wohnt jedoch allen Gleitpunktdarstellungen inne.

  4. #4
    Registriert seit
    13.03.2007
    Ort
    Nürnberg
    Beiträge
    561
    Danke
    56
    Erhielt 50 Danke für 45 Beiträge

    Standard

    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Hast du vielleicht als Anfangswert nicht 0.0 geladen?
    Was meinst du mit "S5 135" und doppelter Genauigkeit?
    nein, nicht 0.0 sondern 0. hatte aber dann 0.25 danach gings ungenau weiter.

    >"S5 135"
    S5 135 CPU 928 oder 946
    > doppelter Genauigkeit
    da gibts einen Systemparameter (BS-Zelle glaube ich) mit dem die KG Genauigkeit erhöht werden kann.
    Kabelsalat ist Gesund
    (vom CCC abgekupfert)

    Prognosen sind schwierig,
    besonders wenn sie die Zukunft betreffen.
    (Ursprung nicht wirklich bekannt)



  5. #5
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Zitat Zitat von Senator42 Beitrag anzeigen
    nein, nicht 0.0 sondern 0. hatte aber dann 0.25 danach gings ungenau weiter.

    >"S5 135"
    S5 135 CPU 928 oder 946
    > doppelter Genauigkeit
    da gibts einen Systemparameter (BS-Zelle glaube ich) mit dem die KG Genauigkeit erhöht werden kann.
    Habe da was gefunden bekommen (Danke an qm): Bei der 928A/B konnte zwischen 16-Bit-Mantisse und 24-Bit-Mantisse gewählt werden. Dies wird im DX0 eingestellt. Die neuen CPUs rechnen immer mit 24-Bit-Mantisse.
    Es bleiben aber insgesamt nur 32 Bit für die KG-Zahl übrig, genausoviel wie für eine IEEE-Zahl.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  6. #6
    Registriert seit
    13.03.2007
    Ort
    Nürnberg
    Beiträge
    561
    Danke
    56
    Erhielt 50 Danke für 45 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    damit dieser punkt abgehakt wird, hab ich mal bei S*S geschaut:

    FRAGE:
    Wie groß ist die Auflösung bei 16 Bit-, 24 Bit- bzw. 32 Bit-Mantisse, bei welchen CPU-Typen ist eine Einstellung im DX 0 - Bereich möglich und in welchem Mantissenformat rechnen die CPU-Typen 928 A/B (3UA21/3UB21)?
    ANTWORT:

    • Genauigkeit bei einer 16-bit-Mantisse: 2 exp(-16) = 0,000015259 (entspricht 4 Nachkommastellen)
    • Genauigkeit bei einer 24-bit-Mantisse: 2 exp(-24) = 0,000000059604 (entspricht 7 Nachkommastellen)

    Eine Einstellung im DX 0, ob mit 16- oder 24-Bit-Mantisse gerechnet werden soll, können Sie bei den folgenden CPU-Typen vornehmen:

    • CPU 922 (ab Ausgabestand 9)
    • CPU 928 (mit MLFB-Endung -3UA12)
    • CPU 928B (mit MLFB-Endung -3UB11/-3UB12)

    Die CPU-Typen 928 A/B (3UA21/3UB21) rechnen immer mit einer 24-Bit-Mantisse.
    Kabelsalat ist Gesund
    (vom CCC abgekupfert)

    Prognosen sind schwierig,
    besonders wenn sie die Zukunft betreffen.
    (Ursprung nicht wirklich bekannt)


    Zitieren Zitieren 4 oder 7 Stellen  

Ähnliche Themen

  1. libnodave S5 und KG (Gleitpunkt)
    Von Senator42 im Forum Hochsprachen - OPC
    Antworten: 3
    Letzter Beitrag: 08.11.2010, 22:25
  2. Antworten: 0
    Letzter Beitrag: 09.09.2010, 00:27
  3. LibNoDave unter VB.Net ohne libnodave.net.dll
    Von Earny im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 09.03.2010, 18:57
  4. Anzeigeformat für Gleitpunkt
    Von win98 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 10.08.2009, 15:21
  5. Antworten: 4
    Letzter Beitrag: 17.03.2009, 16:01

Stichworte

Lesezeichen

Berechtigungen

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