-> Hier kostenlos registrieren
Hallo,
ich habe eine schwierige Aufgabe zu lösen und komme da einfach auf keinen grünen Zweig. Ich bräuchte Hilfe wie man beim Rechnen mit REAL-Werten im Simatic Manager (300er CPU) die Genauigkeit erhöhen kann. Das Problem ist einigermaßen zeitkritisch weil nächste Woche die Inbetriebnahme beim Kunden ist.
https://support.industry.siemens.co...chen-formeln-verwendet-werden-?dti=0&lc=de-WW
„Generell gilt, dass REAL Zahlen mit einer Genauigkeit von 6 Nachkommastellen angegeben und berechnet werden. Bei Berechnungen ist dabei noch zu beachten, dass für jeden einzelnen Rechenschritt diese Genauigkeit ebenfalls gilt.“
Format des Datentyps REAL (Gleitpunktzahlen)
Gleitpunktzahlen in STEP 7 entsprechen dem Grundformat mit einfacher Breite,
wie in der Norm ANSI/IEEE Standard 754-1985 [...] beschrieben. [...]
Genauigkeit beim Rechnen mit Gleitpunktzahlen
---------------------------------------------------------------------------------
Vorsicht
Bei umfangreichen Berechnungen mit Zahlen, die große Größenunterschiede
(mehrere 10-er Potenzen) aufweisen, können Ungenauigkeiten im Rechenergebnis
entstehen.
---------------------------------------------------------------------------------
Die Gleitpunktzahlen in STEP 7 sind auf 6 Dezimalstellen genau. Sie können deshalb
bei der Angabe von Gleitpunktkonstanten nur maximal 6 Nachkommastellen angeben.
---------------------------------------------------------------------------------
Hinweis
Die Rechengenauigkeit von 6 Dezimalstellen bedeutet z. B., dass die Addition von
Zahl1 + Zahl2 = Zahl1 ergibt, wenn Zahl1 größer Zahl2 * 10 hoch y, mit y>6 ist:
100 000 000 + 1 = 100 000 000.
---------------------------------------------------------------------------------
Folgende Aufgabenstellung:
Bei einem Zahnrad werden 3 Höhenmessungen durchgeführt und dadurch soll die Parallelität berechnet werden (beurteilen ob die Fläche eben ist).
Das Problem:
Durch die hohe Ungenauigkeit beim Rechnen mit REAL-Werten ist der Endwert für die Parallelität auch ungenau. Und vor allem für wenn die Höhenmessungen nahe bei einander liegen (zB. Messpunkt 2 = 8.0 und Messpunkt 3 = 8.0001) kommt man mit den Rundungsfehlern genau auf 1 PI dann kommt irgendwas raus.
Lösungswege probiert:
Long Real statt Real verwenden
Open Source Bibliothek OSCAT (http://www.oscat.de/) , dort kann man mit Pseudo Long Reals rechnen
Additionen und Subtraktionen mit DINT statt REAL rechnen
Anhang:
Im Google drive wäre ein leeres Simatic Manager Projekt wo nur die Berechnung drin ist. In der VAT könnten Sie zB. die Teilehoehe_3 ändern und vergleichen ob es mit der Excel Berechnung zusammen stimmt (natürlich dann auch bei der Excel die Teilehöhe 3 ändern). In der Excel sind Zeilen mit zwischen Rechenschritten versteckt, mit einem Doppelklick zwischen Zeile 8 und 21 kann man diese öffnen.
Im Word Dokument ist es nochmal etwas ausführlicher beschrieben mit Bildern (geht hier leider nicht).
https://drive.google.com/drive/folders/12n_vZPzx69ZD6_lCgbHebOk4fjsK9Dq1?usp=sharing
ich habe eine schwierige Aufgabe zu lösen und komme da einfach auf keinen grünen Zweig. Ich bräuchte Hilfe wie man beim Rechnen mit REAL-Werten im Simatic Manager (300er CPU) die Genauigkeit erhöhen kann. Das Problem ist einigermaßen zeitkritisch weil nächste Woche die Inbetriebnahme beim Kunden ist.
https://support.industry.siemens.co...chen-formeln-verwendet-werden-?dti=0&lc=de-WW
„Generell gilt, dass REAL Zahlen mit einer Genauigkeit von 6 Nachkommastellen angegeben und berechnet werden. Bei Berechnungen ist dabei noch zu beachten, dass für jeden einzelnen Rechenschritt diese Genauigkeit ebenfalls gilt.“
Format des Datentyps REAL (Gleitpunktzahlen)
Gleitpunktzahlen in STEP 7 entsprechen dem Grundformat mit einfacher Breite,
wie in der Norm ANSI/IEEE Standard 754-1985 [...] beschrieben. [...]
Genauigkeit beim Rechnen mit Gleitpunktzahlen
---------------------------------------------------------------------------------
Vorsicht
Bei umfangreichen Berechnungen mit Zahlen, die große Größenunterschiede
(mehrere 10-er Potenzen) aufweisen, können Ungenauigkeiten im Rechenergebnis
entstehen.
---------------------------------------------------------------------------------
Die Gleitpunktzahlen in STEP 7 sind auf 6 Dezimalstellen genau. Sie können deshalb
bei der Angabe von Gleitpunktkonstanten nur maximal 6 Nachkommastellen angeben.
---------------------------------------------------------------------------------
Hinweis
Die Rechengenauigkeit von 6 Dezimalstellen bedeutet z. B., dass die Addition von
Zahl1 + Zahl2 = Zahl1 ergibt, wenn Zahl1 größer Zahl2 * 10 hoch y, mit y>6 ist:
100 000 000 + 1 = 100 000 000.
---------------------------------------------------------------------------------
Folgende Aufgabenstellung:
Bei einem Zahnrad werden 3 Höhenmessungen durchgeführt und dadurch soll die Parallelität berechnet werden (beurteilen ob die Fläche eben ist).
Das Problem:
Durch die hohe Ungenauigkeit beim Rechnen mit REAL-Werten ist der Endwert für die Parallelität auch ungenau. Und vor allem für wenn die Höhenmessungen nahe bei einander liegen (zB. Messpunkt 2 = 8.0 und Messpunkt 3 = 8.0001) kommt man mit den Rundungsfehlern genau auf 1 PI dann kommt irgendwas raus.
Lösungswege probiert:
Long Real statt Real verwenden
[*=left]Gibt es beim Simatic Manager / 300er CPU nicht
Open Source Bibliothek OSCAT (http://www.oscat.de/) , dort kann man mit Pseudo Long Reals rechnen
[*=left]Allerdings gibt es nur die Funktion Addieren und Multiplizieren keine Division, Subtraktion, Winkelfunktionen…
Additionen und Subtraktionen mit DINT statt REAL rechnen
[*=left]Hat das Ergebnis bei ein paar Zwischenschritten etwas verbessert allerdings nicht viel am Endergebnis geändert
Anhang:
Im Google drive wäre ein leeres Simatic Manager Projekt wo nur die Berechnung drin ist. In der VAT könnten Sie zB. die Teilehoehe_3 ändern und vergleichen ob es mit der Excel Berechnung zusammen stimmt (natürlich dann auch bei der Excel die Teilehöhe 3 ändern). In der Excel sind Zeilen mit zwischen Rechenschritten versteckt, mit einem Doppelklick zwischen Zeile 8 und 21 kann man diese öffnen.
Im Word Dokument ist es nochmal etwas ausführlicher beschrieben mit Bildern (geht hier leider nicht).
https://drive.google.com/drive/folders/12n_vZPzx69ZD6_lCgbHebOk4fjsK9Dq1?usp=sharing