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!
hab folgendes Problem. Ich hab den Auftrag bekommen ein VI, die einen PI Steplock an steuert und ein SR830 Lock-In amplifier ausliest, so zu überarbeiten, dass Mängel/Schönheitsfehler nicht mehr auftreten. So nun mein Problem. Die beiden Geräte sind nur an den Rechnerplatz im Labor angeschlossen. Wenn ich die Fehler beheben will, kann ich nicht das VI ausführen, da die Geräte nicht angeschlossen sind. Mittlerweile habe ich einen Steplock, der von der selben Firma ist und das gleiche Modell von Kontroller hat, doch ich scheitere an den Lock-In-Verstärker. Ich bin in LV noch anfänger, doch ichhab irgendwo in einen Einstiegskurs etwas von "simulierten/virtuellen Geräten" Gehört (hab LV 8.1.2). Kann mir jmd in dieser Sache paar Nachhilfstunden geben???
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Hilfe, beim überarbeiten von einem VI
Also, soweit ich weiß ist es nur möglich Geräte von National Instruments zu simulieren.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
' schrieb:Die beiden Geräte sind nur an den Rechnerplatz im Labor angeschlossen. Wenn ich die Fehler beheben will, kann ich nicht das VI ausführen, da die Geräte nicht angeschlossen sind.
Häh? Du kannst also nicht direkt im Labor arbeiten, sondern nur an nem anderen Rechner? So kann man doch keine Fehler beheben! Was soll denn der Quatsch...Selbst mit simulierten Geräten könntest du nur ansatzweise die ordnungsgemäße Funktion testen...also: Entweder LV auf dem Laborrechner installieren, oder die Geräte zu dir an den Arbeitsplatz holen! Gut...das hast du mit einem Gerät schon gemacht...aber was ist denn jetzt dein konkretes Problem? An was scheiterst du denn genau?
A.
"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)
18.07.2007, 13:53 (Dieser Beitrag wurde zuletzt bearbeitet: 18.07.2007 13:53 von Pate Toni.)
Danke für die posts!! naja. es ist ja so, dass Lv auf den LAborrechner installiert, doch da es viele Gründe gibt, dass ich nicht an den rechner arbeiten kann, muss ich das über einen normlen arbeitsplatz machen. die erwähnten fehler sind nicht allzu problematisch. irgendwo ein vorzeichen fehler und sowas. ich brauche die simulierten Geräte, um zu schauen, wo der sein könnte, da das Programm ziehmlich komplex und unübersichtlich ist. Ohne diese Geräte, läuft es nicht, da nur fehlermeldungen kommen!!!! Ich wollt halt speziell wissen, ob ich LabVIEW sagen kann, dass ist das Gerät es ist an diesen anschluss und LabVIEW dies sofort annimmt ohne das es verrrückt spielt!!!
Also ich glaube nicht, dass es simulierte Geräte gibt...du schließt die Geräte ja vermutlich über GPIB an, oder? Da müssen ja Fehlermeldungen kommen, wenn nix dran hängt...Evtl. könntest du dir mit ner zweiten GPIB-Karte in deinem Rechner selber was programmieren...
...oder du musst halt nachts/abends ins Lab, damit du mit dem Rechner arbeiten kannst..
Good Luck!
A.
"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)
Der Schrittmotor wird über COM-Anschluss betrieben und das Signal vom SR830 wird über GPIB-Anschluss empfangen!!! Es ist ja so, dass man mit dem Programm schon was messen kann, doch man muss viele Umrechnung machen, da irgendwo im Programm die fehler drin sind. Zudem misst das Programm von hinten und es sihet total beschuert aus!!! Und so was kann man ohne probleme beheben, ich hab auch schon den fehler entdeckt, doch ich kann nicht schaun, die Veränderung das gebracht hat was es sollte!!!!
' schrieb:Wenn du einen Fehler meinst entdeckt zu haben, dann müsstes du halt deine "Messeingänge" zwecks Simulation mal durch irgendwelche Konstanten ersetzen.
MfG, Jens
Das ist die eine Hälfte der Miete. Die andere ist, allen Code, der wegen fehlender Hardware Ärger macht, zu deaktivieren (Funktionspalette/Strukturen) Wenn man beides macht, bin ich schon der Meinung, daß man eine ganze Menge am Programm testen kann, und natürlich kann man sich auch in Schönheitsoperationen austoben.
Man kann sogar einen Schalter "Simulieren" vorsehen. Es gibt die bedingte Deaktivierung, das ist ein Case mit mehreren Fällen. Bei "Simulierung" würde z.B die Datenerfassung deaktiviert, und gleichzeitig die Bereitstellung simulierter Daten aktiviert.
(Ein normaler Case wäre dafür ungeeignet. Denn selbst wenn ein Case gar nicht ausgeführt wird, so läßt sich das VI dennoch nicht starten, wenn dieser nie ausgeführte Case unausführbaren Code enthält)
' schrieb:Also ich glaube nicht, dass es simulierte Geräte gibt...du schließt die Geräte ja vermutlich über GPIB an, oder? Da müssen ja Fehlermeldungen kommen, wenn nix dran hängt...Evtl. könntest du dir mit ner zweiten GPIB-Karte in deinem Rechner selber was programmieren...
...oder du musst halt nachts/abends ins Lab, damit du mit dem Rechner arbeiten kannst..
Also wenn der Treiber ein IVI Treiber wäre könnte man den schon als Simulation laufen lassen. IVI Treiber haben normalerweise einen Simulationsmodus. Aber: IVI Treiber sind in CVI geschrieben udn als DLL importiert, erfreuen sich deshalb wenig Beliebtheit in LabVIEW Kreisen und werden auch nur noch selten getan, ausser durch NI für ihre eigenen Modularen Instrumente.
Ob der Simulationsmodus für wirkliches Testen denn geeignet ist ist aber immer noch fraglich. Man bekommt dann zwar keine Fehlermeldungen wenn man das (nicht existierende) Gerät ansprechen will, aber eben auch nur simulierte Daten was schon mal ein einfacher konstanter Messwert sein kann oder ganz einfach immer 0.0000.
Ansonsten kannst Du versuchen selber einen Simulationslayer zu schreiben. Dazu müsstest Du alle Treiber VIs die Du benützt als eigene Kopie abspeichern (neuen Namen, zum bsp. anderer Prefix verwenden) und dann beispielsweise Logik einbauen die bei einer ungültigen VISA Resource Deine Simulationslogik aufruft und ansonsten das originale VI. Viele VIs brauchen im Simulationsfall wohl nichts zu tun, aber das hängt von der Komplexität des Instruments ab und wie realistisch eventuel zurückgelesene Daten sein müssen. Beim [INSTRUMENT] Initialize.vi fügst Du einen Boolean hinzu der wenn auf True gesetzt einfach eine leere VISA Resource zurückgibt und ansonsten das originale VI aufruft. Nun noch alle originalen Treiber VIs in Deiner Applikation durch Deine neuen ersetzen und schon bist Du soweit.
Alternativ könntest Du versuchen, Deine Instrument über VISA Remote Access übers Netzwerk anzusprechen, aber das ist meist nicht sinnvoll da man normalerweise schon beim Instrument selber sein muss um verifizieren zu können, dass es auch das tut was man von ihm verlangt oder was es einem erzählt dass es tut.