Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich schreibe mit einem OPC-Server Daten in einen Umrichter. Zur Kontrolle kann ich die Daten mit einem Externen Programm wieder auslesen. Wenn ich nun Werte schreibe, die in dem Umrichter mit einer bestimmten Anzahl Dezimalstellen angeben kann, werden meine Werte nicht richtig übertragen. Also wenn ich z.B. im LabVIEW 50,0 Hz vorgebe kommt nur 5,0 Hz an. Bei dem Strom, der mit 2 Nachkommastellen angegeben werden kann, kommt nur ein Hundertstel an. Also z.B. 0,09A anstatt 9,00A. Mein ersten Gedanke war, dass es Probleme mit „ , “ und „ . “ gibt. Habe aber meine Systemdarstellung auf Ami Style umgeändert, hat aber nichts gebracht.
das VI sieht so aus. Hab einfach ein Beispiel ein wenig umgeschrieben. Was ich auch noch komisch finde, beim lesen der Daten ließt er zwar z.B. die 50 wieder, die vorgegeben wurden, aber im Umrichter steht eigentlich nur 5. Wenn ich ein VI schreibe in dem nur der Wert gelesen wird, dann ließt er den richtigen Wert. (Mit dem schreiben funktioniert das leider nicht). Ach so noch was anderes. Der Wert der geschrieben werden soll ist vom Typ 16 Bit bipolig. Da bin ich doch richtig mit dem I32?
nee....wenn du ne Kommazahl schreiben willst, dann darfst du kein Integerformat verwenden! Erstmal muss das Bedienelement auch als Single oder Double formatiert sein. Und das "Schreib-" und das "Lese-" VI müssen auch in dem Format sein. Schau dir im Hilfefenster mal den Pfad an, wo die VI's liegen...in dem File findest du auch ein VI "Data Socket Write Double", probiers damit mal. Laden kannst du das VI mit "Select a VI" auf der Functions-Palette!
Gruss
Achim
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Das Endgerät erwartet immer eine Integerzahl. In diese Intergerzahl werden z.B. zwei Nachkommastellen hineininterpretiert. Wenn du also 9,00 A übergeben willst, musst du 900 übertragen - dieses Verfahren ist allgemein üblich.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
das habe ich mir schon fast gedacht. Dann gibt es sozusagen auch keine Möglichkeit das automatisch umzuformatieren, da die Werte eine unterschiedliche Anzahl von Kommastellen haben? Muss dann wohl bei jedem Wert schauen wieviele der hat und dann mit 10,100... multiplizieren.
Mir ist gerade noch was aufgefallen. Wenn ich z.b. 50,3 schreibe ( mit double schreiben), dann packt er es. Wenn ich 50,0 vorgebe, dann schreibt er nur 5. Ich habe schon "Abschließende Nullstelen unterdrücken" deaktiviert in Format und Genauigkeit und den Wert auf eine Kommastelle definiert. Kann ja eigentlich nur daran liegen, dass er das ",0" nicht überträgt. Hat jemand ne Lösung?