26.03.2008, 16:39
Beitrag #1
|
DrHoas
LVF-Gelegenheitsschreiber
Beiträge: 117
Registriert seit: Oct 2007
2011
2007
DE
Deutschland
|
an laufendem VI arbeiten
Hallo,
ist es möglich an einem laufenden VI zu arbeiten? So könnte ich Messungen machen und nebenher ein paar Schönheitskorrekturen vornehmen. (Ich weiß, ich könnte das VI umbennenen und daran arbeiten. Das ist mir aber bei über 30 SubVIs zu stressig).
Gruß
Philipp
|
|
|
26.03.2008, 16:44
(Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2008 16:45 von Achim.)
Beitrag #2
|
|
|
26.03.2008, 16:53
Beitrag #3
|
StefanHH
LVF-User
Beiträge: 35
Registriert seit: Aug 2006
7.0, 8.21, 8.5, 2013
2006
DE_EN
21220
Deutschland
|
an laufendem VI arbeiten
' schrieb:Hallo,
ist es möglich an einem laufenden VI zu arbeiten? So könnte ich Messungen machen und nebenher ein paar Schönheitskorrekturen vornehmen. (Ich weiß, ich könnte das VI umbennenen und daran arbeiten. Das ist mir aber bei über 30 SubVIs zu stressig).
Gruß
Philipp
Hi.
Nein, eine derartige Möglichkeit kenne ich nicht. Ich frage mich aber auch, wie das rein technisch gehen sollte!? Ein Programm, was sich in Ausführung befindet verändern zu wollen...
Normalerweise wird z.B. ein C Programm vor dessen Ausführung kompiliert und in Maschinenbefehle übersetzt, sodass die eigentliche Syntax nicht mehr betroffen ist. Innerhalb der Entwicklungsumgebung aber z.B. beim Debuggen werden Rückschlüsse auf den Sourcecode gezogen und es bleiben Abhängigkeiten bestehen. Bei LabVIEW dürfte das auch der Fall sein. Mich würden aber noch andere Meinungen dazu interessieren...
Ich sehe nur die Möglichkeit, dass du dein Projekt einmal kompilierst, um es nebenher laufen lassen zu können. Dir ein Backup von deinen VI's sicherst und deine VI's in der Entwicklungsumgebung verschönerst bzw. wartest.
Schöne Grüße,
Stefan
Unter Intuition versteht man die Fähigkeit gewisser Leute,
eine Lage in Sekundenschnelle falsch zu beurteilen.
-Friedrich Dürrenmatt-
|
|
|
26.03.2008, 16:55
Beitrag #4
|
DrHoas
LVF-Gelegenheitsschreiber
Beiträge: 117
Registriert seit: Oct 2007
2011
2007
DE
Deutschland
|
an laufendem VI arbeiten
schade...
Danke.
Philipp
|
|
|
26.03.2008, 17:08
Beitrag #5
|
Achim
*****
Beiträge: 4.223
Registriert seit: Nov 2005
20xx
2000
EN
978xx
Deutschland
|
an laufendem VI arbeiten
' schrieb:Ich frage mich aber auch, wie das rein technisch gehen sollte!? Ein Programm, was sich in Ausführung befindet verändern zu wollen...
In VB geht das so: Du machst einen Breakpoint in den Code an der Stelle, die du bearbeiten willst. Sobald die Ausführung hier hängen bleibt - das Programm also "temporär" steht - kannst du den Code bearbeiten und auch den "Ausführungspunkt" (die Stelle, wo das Programm weitermachen soll) vom Breakpoint nach vorne (nochmal...) oder hinten (etwas auslassen...) verschieben. Das ist so ne Art aktiver Debug-Modus *grins*
Gruß
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)
|
|
|
26.03.2008, 21:06
Beitrag #6
|
|
|
26.03.2008, 22:16
Beitrag #7
|
eg
LVF-SeniorMod
Beiträge: 3.868
Registriert seit: Nov 2005
2016
2003
kA
66111
Deutschland
|
an laufendem VI arbeiten
Aber du kannst eine EXE erzeugen, starten und nebenbei an deinem VI arbeiten. So wie in anderen Programmiersprachen und IDEs.
Gruß, eg
|
|
|
28.03.2008, 08:30
Beitrag #8
|
rolfk
LVF-Guru
Beiträge: 2.305
Registriert seit: Jun 2007
alle seit 6.0
1992
EN
2901GG
Niederlande
|
an laufendem VI arbeiten
' schrieb:Also in Delphi geht das. Die EXE läuft in der IDE unter dem Debugger. Währenddessen kann man den Source ändern.
Für Schönheitsoperationen ist das allemal geeignet. Das Problem ist dann natütlich der Debugger. Möglicherweise - aber eben nur möglicherweise - findet der dann manchen Sourcecode nicht mehr.
Ich hab mich auch schon des öfteren darüber geärgert, dass man in LV den Source nicht ändern kann, wenn die Applikation läuft. Soll die IDE den Debugger halt abschalten, wenn ich den Source ändern will.
Auch Visual C kennt das im Debugger Mode. Im Prinzip wird der ganze Code neu kompiliert und gelinkt und der Debugger versucht dann wieder dort einzusteigen wo er war.
Erstens ist das eine wirklich saugrosse Arbeit um das gut zu tun und ich denke mal dass es etwa 200 andere LabVIEW Features gibt die mir allemal wichtiger sind.
Und zweitens geht das auch bei Visual C regelmässig ein wenig falsch. Oder die Stackvariablen kommen ein bischen durcheinander, oder andere Abhängigkeiten sind plötzlich nicht mehr korrekt, oder die Veränderung benötigt ganz einfach umfangreiche Anpassungen in Variablenwerten und dergleichen um sinnvoll arbeiten zu können.
Alles in allem nicht unbedingt ein Feature wo ich NI gerne unzählige Mannmonate darin investieren sehe.
Rolf Kalbermatter
|
|
|
28.03.2008, 09:53
Beitrag #9
|
IchSelbst
LVF-Guru
Beiträge: 3.689
Registriert seit: Feb 2005
11, 14, 15, 17, 18
-
DE
97437
Deutschland
|
an laufendem VI arbeiten
Gestern war wieder so ein Fall, da hätte ich gern eine Änderung bei laufender EXE gemacht: Text (im String-Anzeigeelement) ändern. Da sieht man plötzlich, dass ein Hinweistext missverständlich ist und möchte den gerne ändern. Geht aber leider nicht. Und bis der Prüfablauf einmal um ist und das Programm beendet werden kann, hab ich wieder vergessen, dass ich "nur" einen Text ändern wollte.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
|
|
|
01.04.2008, 07:10
|
rolfk
LVF-Guru
Beiträge: 2.305
Registriert seit: Jun 2007
alle seit 6.0
1992
EN
2901GG
Niederlande
|
an laufendem VI arbeiten
' schrieb:Gestern war wieder so ein Fall, da hätte ich gern eine Änderung bei laufender EXE gemacht: Text (im String-Anzeigeelement) ändern. Da sieht man plötzlich, dass ein Hinweistext missverständlich ist und möchte den gerne ändern. Geht aber leider nicht. Und bis der Prüfablauf einmal um ist und das Programm beendet werden kann, hab ich wieder vergessen, dass ich "nur" einen Text ändern wollte.
Also so etwas ist halt einfach etwas Management. Beim Testen habe ich immer ein Blatt Papier danaben wo alles was ich so sehe an solchen Dingen fein säuberlich aufgeschrieben wird. Ansonsten weiss ich nämlich sicher dass ich nach dem nächsten Rebuild und Start plötzlich denke "Oh shit, das wollte ich auch noch anpassen".
Was ich wichtiger finde ist die Möglichkeit um während der Ausführung einen Wert in einem Wire anzupassen. Wenn man beispielsweise eine Motion Application macht, hat man typischerweise eine ziemlich langwierige Aufstartphase des Systems (Homing, Grundstellung, eventuel eine ganze Leiste von Bewegungen bis man endlich am interessanten Punkt ist). Dann ist man am Debuggen und sieht dass ein Wert falsch ist und muss eine kitzekleine Änderung am Diagram machen und alles neu starten.
Wenn man jetzt den Wert im Wire doch noch auf einen gültigen Wert setzen kann dann kann man zumindest noch einen Schritt weiter debuggen, bis zum nächsten Fehler. Es gab da mal eine Diskussion um dieses Feature eine extra Möglichkeit von Conditional Probes zu machen aber ich glaube nicht das da schon mehr passiert ist.
Rolf Kalbermatter
|
|
|
| |