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!
' schrieb:Was bedeutet eigentlich bei dem Type Cast (nach Rechtsklick) die Option Convert Data to 4.x, sodass nach "abhaken" auch ein rotes 4.x auf dem Zeichen im Diagramm erscheint?
Das sind alte VI's von früheren Versionen...kannste vergessen!
' schrieb:Und warum kann ich manchen Build Array's (nach Rechtsklick) die Option Concatenate Inputs anklicken und bei manchen nicht?
Wenn der Output schon bestimmt ist durch nen Anschluss an nen anderen Eingang, dann kannst du nachträglich nicht mehr "Concatenate" machen...
"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)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Neu bei LabVIEW
vgl. Anhang.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
also mit dem temporären Zuwachs fehlt mir noch ein wenig der Grundgedanke, wie LabVIEW arbeitet.
Also ich habe meinen Sollwert erstmal umgeleitet und schicke ihn durch eine neue Sequenz. In diese habe ich die Funktion add eingearbeitet, um über eine neue Control-Variable den Zuwachs zu steuern. Jetzt habe ich in diese Sequenz die Funktion Tick Count hineingesetzt und auf 1000ms gestellt.
Ich dachte dann würde LabVIEW alle 1 Sekunde meinen Sollwert um (z.B. gewählt) 1 erhöhen.
Aber das tut es nicht. Also führt LabVIEW auf diese Art die Sequenz nicht alle 1000ms neu aus? Wie bastel ich das denn?
So long, Physikus.
29.10.2007, 11:01 (Dieser Beitrag wurde zuletzt bearbeitet: 29.10.2007 11:02 von Achim.)
also mit dem temporären Zuwachs fehlt mir noch ein wenig der Grundgedanke, wie LabVIEW arbeitet.
Also ich habe meinen Sollwert erstmal umgeleitet und schicke ihn durch eine neue Sequenz. In diese habe ich die Funktion add eingearbeitet, um über eine neue Control-Variable den Zuwachs zu steuern. Jetzt habe ich in diese Sequenz die Funktion Tick Count hineingesetzt und auf 1000ms gestellt.
Ich dachte dann würde LabVIEW alle 1 Sekunde meinen Sollwert um (z.B. gewählt) 1 erhöhen.
Aber das tut es nicht. Also führt LabVIEW auf diese Art die Sequenz nicht alle 1000ms neu aus? Wie bastel ich das denn?
So long, Physikus.
LV arbeitet so, wie du es ihm sagst, d.h. du musst wie in jeder anderen Programmiersprache diesen Vorgang selber programmieren. Du musst feststellen, wann deine Zeit abgelaufen ist (nicht missverstehen) und dann z.B. ne Case-Struktur aktiv schalten in der du die Inkrementierung durchführst! Lies dir mal durch, was TickCount eigenlich macht...
Post #1700
"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)
Momentan versuche ich eine Zeit einzugeben, um sie in einen Array gesteckt an mein Gerät zu übergeben.
Abgesehen davon, dass es nicht funktioniert eine Frage.
Soweit ich das verstanden habe gebe ich ja die Sekunden vor und lasse diese dann per Format Date / Time String in einen String umwandeln. In meinem Fall mit der Vorgabe Minute:Sekunde aka %M:%S.
Da ich es ja in einen vorhanden Array implementieren will schicke ich den String sofort in einen String to Byte Array.
Danach lasse ich mir über einen Indicator erstmal zeigen was herauskommt.
Was mich jetzt irritiert, dass dieser Indicator als U8 angegeben ist. Das bedeutet doch, dass die Ausgabe 8 bit besitzt, also 4 byte - oder?
Meine Ausgabe besteht aber aus 10 Zahlen a fünf Tupel. Das macht doch 10 bit, also 5 byte.
' schrieb:Soweit ich das verstanden habe gebe ich ja die Sekunden vor und lasse diese dann per Format Date / Time String in einen String umwandeln. In meinem Fall mit der Vorgabe Minute:Sekunde aka %M:%S.
Da ich es ja in einen vorhanden Array implementieren will schicke ich den String sofort in einen String to Byte Array.
Häh?
' schrieb:Was mich jetzt irritiert, dass dieser Indicator als U8 angegeben ist. Das bedeutet doch, dass die Ausgabe 8 bit besitzt, also 4 byte - oder?
Meine Ausgabe besteht aber aus 10 Zahlen a fünf Tupel. Das macht doch 10 bit, also 5 byte.
Häh?
1. Ich versteh nicht, was du versuchst zu bewerkstelligen... was willst du an welches Gerät wie übergeben?
2. 8 Bit = 1 Byte...dachte ich immer...
"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)
Ich soll einem Tempereaturregler sagen was er tun soll und diesen Befehl muss ich in Form eines Arrays zusammenbauen.
Also blanko sieht mein Befehl so aus: ************
Erste Information: Das Gerät ist Slave Nr. 1, Kennung x1
-> 01********
Du sollst den Befehl schreiben (er könnte auch den aktuellen Befel lesen): Kennung x10
-> 01 0010 *******
Schreib mir den Sollwert 1 rein, Kennung x3100
-> 01 0010 3100 ******
Der Wert des Sollwertes folgt als 4 Byte Array
-> 01 0010 3100 04*****
Und so weiter...
Und mein aktuelles Problem ist eben, dass ich ihm sagen soll in welchem Zeitinervall er den Sollwert erreichen soll.
Und dieses Zeitintervall muss ich ja irgendwie in LabVIEW eingeben können, es dann in einen Array umwandeln, dass ich es an den bisherigen Befehlsarray dranhängen kann.
' schrieb:Und mein aktuelles Problem ist eben, dass ich ihm sagen soll in welchem Zeitinervall er den Sollwert erreichen soll.
Und dieses Zeitintervall muss ich ja irgendwie in LabVIEW eingeben können, es dann in einen Array umwandeln, dass ich es an den bisherigen Befehlsarray dranhängen kann.
Hm...ich weiß immer noch nicht so richtig, was dein Problem ist...meinst du das hier:
"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)
Allerdings muss ich den String dann wieder in einen Array umwandeln, um ihn an die bisherigen Befehlsarray dranzuhängen.
Und wenn ich das richtig gesehen habe bisher, dann hängt die Länge des Arrays entschieden davon ab wie groß das Intervall und somit der umzuwandelnde String ist.