LabVIEWForum.de - Network enabled shared variable datet nicht mehr up

LabVIEWForum.de

Normale Version: Network enabled shared variable datet nicht mehr up
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Liebes Forum,

Ich habe folgende Vis erstellt:

[attachment=43282]

[attachment=43283]

Das erste ist das TargetVi, installiert auf meinem CompactRio. Es liest im hochpriorisierten Loop zwei Messdaten ein und schreibt sie in die single-process-Variable "Messdatenarray_Single Process". Dieser Array wird dann im niedrig priorisierten Loop in ein eine networkshared Variable geschrieben.

Der zweite Shot ist das HostVI auf dem WindowsPC installiert. Es soll eigentlich nicht anderes machen, als die Daten von der networkshared Variable auszulesen und anzuzeigen und beide VIs per Knopfdruck zu beenden.

Wenn nur das TargetVI gestartet ist, funktioniert alles gut und ich bekomme auch in der networkshared Variable meine Messdaten. Wenn ich nun das HostVI starte, friert der Array in der networkshared variable ein und ich kann nur noch den letzten Messwert auslesen, der vor dem Starten des HostVis ausgegeben wurde. Die singleprocess- Variable spuckt weiter munter Messwerte aus.

Ich habe keine Ahnung woran das liegen könnte! Alle Variablen die mit dem zeitkritischen Loop zu tun haben sind FIFO enabled, alle anderen nicht ( so wie es immer empfohlen wird). An der Übertragung kann es auch nicht liegen, da der letzte Messwert ja beim Host ankommt. Per Highlight habe ich auch herausgefunden, dass die Anzeige im Host VI immer wieder updated, aber halt immer die gleichen Werte bekommt, weil die Variable nicht mehr neu beschrieben wird.

Kann es sein, dass sich die beiden Vis irgendwie blockieren? Wenn ja, wieso (es handelt sich ja um eine networkpublished Variable, also können doch mehrere drauf zugreifen. Ausserdem soll das eine Vi ja lesen und das andere schreiben, also besteht hier doch eher weniger Konfliktpotential oder?) ?
Ok ich habe absolut nichts geändert und gerade ging es...hab mich schon gefreut! Jetzt habe ich das Projekt angespeichert und es nochmal versucht: wieder taucht das Problem auf, nur dass jetzt die beiden VIs sehr lange brauchen um sich zu beenden wenn man den Stop-Button drückt...
Kannst Du vielleicht Deine VIs hochladen? Evtl. hast Du irgendwelche Race-Conditions.

Übrigens: Geiler Thementitel - "nicht mehr" sind die beiden einzigen deutschen Wörter. Big Grin

Gruß Markus

(29.01.2013 16:57 )bigfudge schrieb: [ -> ]Ok ich habe absolut nichts geändert und gerade ging es...hab mich schon gefreut! Jetzt habe ich das Projekt angespeichert und es nochmal versucht: wieder taucht das Problem auf, nur dass jetzt die beiden VIs sehr lange brauchen um sich zu beenden wenn man den Stop-Button drückt...
Alles Klar hier is das komplette Projekt. Wie gesagt, solange ich nur das Target-VI laufen lasse, ist alles in Ordnung. Die Probleme fangen erst an, wenn ich das Host-VI auch noch starte.

Vielen Dank schonmal für alle Antworten!
(29.01.2013 20:51 )Y-P schrieb: [ -> ]Übrigens: Geiler Thementitel - "nicht mehr" sind die beiden einzigen deutschen Wörter. Big Grin

Tja da ist wohl die Anglophilität mit mir durchgegangen Wink

Mir ist übrigens gerade aufgefallen, dass im HostVI ein SubVI fehlt. Das ist im Moment nicht von Belang für das Problem (wie ihr sehen werdet, wird der Case, in dem das Subvi ist, im Moment überhaupt nicht aufgerufen). Also einfach rauslöschen und schon kanns weiter gehen Wink
OK Ich hab das Problem jetzt selber lösen können. Ich weiß zwar immer noch nicht was ich eigentlich falsch gemacht habe, aber ich habe jetzt das COmpactRio formatiert, alles neu drauf gespielt und die VIs zunächst einmal so weit entschlackt, dass nur das Notwendige drin ist. Jetzt kommt alles einwandfrei an!

Werde jetzt so weiter vorgehen und das VI von Innen heraus aufbauen und nicht von außen nach innen, wie ich es bis jetzt probiert hatte.

Vielen Dank für eure Hilfe!
Referenz-URLs