LabVIEWForum.de
Gerundete Zahlen und Nachkommastellen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Gerundete Zahlen und Nachkommastellen (/Thread-Gerundete-Zahlen-und-Nachkommastellen)

Seiten: 1 2 3


Gerundete Zahlen und Nachkommastellen - dc6xs - 27.03.2007 10:55

' schrieb:..
also ne, ich kann im BS (SuSe) selber nix finden bzgl. Formatierung und Nachkommastellen.
..

Kann es sein das Du die deutsche Spracheinstellungen von SUSE nutzt, LV aber die englisch(US_Eng) erwartet?
Locale(s) ist vielleicht das richtige Stichwort um zu suchen.


Gruß, Rob

PS: Da mir vor Jahren die schlechte Übersetzung der Kommandozeilen-Fehlermeldungen etc. nicht gefallen hat, nutz ich weiterhin mein Linux auf englisch, macht sich bei der Fehler suche im Netz auch einfacher. Ist aber Geschmackssache.


Gerundete Zahlen und Nachkommastellen - exxpkeb - 27.03.2007 11:00

Hallo Alle Zusammen,

leider muß ich hier einen zweiten Thread eröffnen, da der erste (Rubrik App Builder) bisher zu keiner Lösung führte, und ich dringend auf eine Lösung angewiesen bin.

Situation: BS ist SuSe 10. Daten werden über TCP/IP mit C-Script über einen LV Node geholt. Die Daten kommen als "Doubles" rein und sollen 1:1 in einem numerischen Indikator angezeigt werden. alles gar kein Problem solange ich nur die LV Vi´s benutze.

Problem: Jage ich meine Vi´s durch den Application Builder gehen die Nachkommastellen verloren und LV rundet meine Werte in ganze Zahlen.

Ich habe schon jede Konfig Möglichkeit bei "Format&Precision" versucht, hat nix gebracht.. Nachkommastellen sind futsch!

Weiß jemand Rat?

Gruß
Keb


Gerundete Zahlen und Nachkommastellen - eg - 27.03.2007 11:03

Kann das vielleicht an der Formattierung im C-Skript liegen? Du bekommst ja vom TCP einen String. Wird da dein Double als ASCII oder direkt binär übertragen?

Eugen


Gerundete Zahlen und Nachkommastellen - exxpkeb - 27.03.2007 11:09

Hi u danke für die Antworten Big Grin

also meine Open SuSe 10.2 ist English, LV auch.
Soweit ich weiß haben auch alle andern Rechner auf den ich schon rumprobiert habe diese Einstellungen.

Das mit der Konfig Möglichkeit in LV muss ich eben mal testen.

Bei beiden Lösungsansätzen bleibt die Frage, warum LV mit den Vi´s keine Probs macht (nachkommastellen sind da!), und die gleichen Vi´s als Application nicht richtig funktionieren (keine Nachkommastellen!)...???

das doch echt starange....

danke u Gruß
#Keb


Gerundete Zahlen und Nachkommastellen - exxpkeb - 27.03.2007 11:19

Die Fehlerquelle müsste doch irgendwo ab Application Builder liegen....
denn im Vi funktionierts ja.. und was genau übers Netz kommt weiß ich nicht...
Die Variabeln im Script holen sich "Double" Werte und im Vi bekomme ich die Nachkommastellen wie gewünscht angezeigt, bis hier also keine Fehler.
Bei einer 2,0023765 bekomme ich diese auch...

Erst wenn ich die Application aus dem Vi mache habe ich das Problem.. dann sehe ich nur die glatte 2 ohne komma und Nullen..
..?


Gerundete Zahlen und Nachkommastellen - exxpkeb - 27.03.2007 11:22

so sieht die variabel im Script aus:

#
# CINRun(LStrHandle VariableName, float64 *DataValue .....
#

???


Gerundete Zahlen und Nachkommastellen - IchSelbst - 27.03.2007 11:54

Ich tippe auf den DecimalSeparator. Der könnte in der LV-IDE anders sein als in der EXE. LV-IDE: Punkt, EXE: Komma - oder umgkehrt. In der IDE setzt die IDE den DecimalSeparator gemäß Setupeinstellung in der IDE. Die EXE nimmt den von der User-Einstellung im Betriebssystem.


Gerundete Zahlen und Nachkommastellen - exxpkeb - 27.03.2007 11:57

ok! aber wo oder wie stelle ich das ein..?
Ich hoffe man kann das konfigurieren, wäre ja schlimm wenn nicht..
Kannst du deinen Tip und die "Lösung" mal erläutern bitte?
(Ich versteh nicht ganz wie er durch nen Punkt/Komma "tausch" auf gerundete ganze Zahlen kommt..)

Gruß
Keb


Gerundete Zahlen und Nachkommastellen - eg - 27.03.2007 12:09

Erstens sind es nicht gerudete, sondern abgeschnittene Zahlen. Gerundet wäre, wenn du aus 2.6 eine 3 bekommen würdest, du bekommst aber nur eine 2. Aus diesem Grund sagt dir jeder, es hat mit Punkt/Komma Einstellung zu tun. Das was IchSelbst gemeint hat ist richtig. Das habe ich auch gemeint.

Eugen


Gerundete Zahlen und Nachkommastellen - IchSelbst - 27.03.2007 12:10

Voraussetzung meiner Überlegungen ist natürlich, dass der Wert als ASCII über TCP/IP übertragen wird.

' schrieb:ok! aber wo oder wie stelle ich das ein..?
Vor der Ein/Umstellung würde ich erst mal verifizieren, ob dem überhaupt so ist. Irgendwo in den vielen Setupeinstellungen der IDE gibt es die Option "DecimalSeparator" (oder wie immer die heißt). Musst du halt mal suchen und ausprobieren. Ich habe hier kein LV.

Zitat:(Ich versteh nicht ganz wie er durch nen Punkt/Komma "tausch" auf gerundete ganze Zahlen kommt..)
Deine Zahl heiße "2,0023765". Und sofort fällt die auf, dass der DezimalPUNKT ein Komma ist. Was weiß ich, was LV so alles macht, wenn es einen String über TCP/IP empfängt und als Zahl speichern soll. Wenn die Einstellung DecimalSeparator='.' gilt, dann wird von der Zahl eben nur "2" übernommen - was dann zwar wie gerundet aussieht aber eher abgeschnitten ist. Hieße die Zahl "2.0023765" würde es wieder gehen.

Nachtrag: jetzt ist mir doch eg zuvorgekommen.