INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Speicher wird erst geleert nach schließen des Programms



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!

05.07.2013, 09:43 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2013 09:48 von raverel.)
Beitrag #1

raverel Offline
LVF-Grünschnabel
*


Beiträge: 29
Registriert seit: Apr 2013

12
2012
EN



Speicher wird erst geleert nach schließen des Programms
Hallo zusammen.

Ich habe folgendes Problem:

Ich habe eine cifX EtherNet/IP Feldbuskarte der Firma Hilscher. Ich habe mir ein Programm geschrieben, um nun die sich im Netzwerk befindlichen Slaves darstellen. Die IP-Adressen der Teilnehmer schreibe ich nacheinander über ein Schieberegister in ein String Array. Das VI "EtherNet IP`s" schreibt mir die zurückgesendeten Daten aus dem Cluster in das IP Adressen Array. Das VI "Remove Same Array" filtert alle gleichen IP`s raus, da er sonst die letzte gefundene IP-Adresse mehrfach in das Array einträgt. Das Problem was ich jetzt habe ist, wenn ich beispielsweise ein Slave im Netzwerk habe und den Suchlauf starte, funktioniert alles reibungslos. Ziehe ich das Netzwerkkabel ab und starte den Suchlauf erneut, wird mir immernoch signalisiert, dass sich 1 Teilnehmer im Netzwerk befindet. Obwohl physikalisch kein Slave mehr im Netzwerk ist. Anscheinend hat LabView noch irgendwo diesen Wert im Speicher. Schließe ich jetzt komplett mein LabView Projekt, öffne mein Projekt/Programm erneut und starte dann den Suchlauf dann nocheinmal, funktioniert alles so wie es soll. Es wird mir als Slaveanzahl der Wert "0" angezeigt. Lösche ich links vom Schieberegister aus dem Array die String Konstante, füge danach eine neue String Konstante ein und starte dann den Suchlauf erneut, funktioniert ebenfalls alles wunderbar. Kann mir da jemand eine Hilfestellung geben? Bin hier am verzweifeln Huh
Vielen Dank

lv12_img


Angehängte Datei(en)
12.0 .vi  Oer_Feldbus_Ethernet_IP_Lifelist.vi (Größe: 24,12 KB / Downloads: 209)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 10:42
Beitrag #2

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Speicher wird erst geleert nach schließen des Programms
Hallo raverel,

mach mal ne Version <=2011 draus.
2012 ist hier noch nicht soo verbreitet im LVF.


Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 10:49 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2013 10:52 von raverel.)
Beitrag #3

raverel Offline
LVF-Grünschnabel
*


Beiträge: 29
Registriert seit: Apr 2013

12
2012
EN



RE: Speicher wird erst geleert nach schließen des Programms
voilà
Big Grin
lv11_img
hab die beiden "Unter Vi`s" auch nochmal angefügt.
lv11_img


Angehängte Datei(en)
11.0 .vi  Oer_Feldbus_Ethernet_IP_Lifelist_V11.vi (Größe: 29,28 KB / Downloads: 209)

11.0 .vi  Oer_Feldbus_Ethernet_IP_IP_Adressen_V11.vi (Größe: 26,62 KB / Downloads: 219)

11.0 .vi  Oer_Feldbus_Ethernet_IP_Remove_Same_From_Array_V11.vi (Größe: 22,14 KB / Downloads: 209)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 10:54 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2013 11:00 von Trinitatis.)
Beitrag #4

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Speicher wird erst geleert nach schließen des Programms
..ich fürchte, dein Sub-VI wirste auch mitschicken müssen!Big Grin

Gruß, Marko


Edit:
Nu sind se da.
Hallo raverel,

irgendwie heißen deine Sub-VIs alle anders, als sie sollten - liegt wahrscheinlich an den Versionsnummern.

Bau das mal bitte richtig zusammen und schicke das ganze unter ANgabe des Main-VIs als zip-file.


Danke!




Gruß, marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 11:00
Beitrag #5

raverel Offline
LVF-Grünschnabel
*


Beiträge: 29
Registriert seit: Apr 2013

12
2012
EN



RE: Speicher wird erst geleert nach schließen des Programms
Nochmal zu allgemeinen Verständnis. Das Sub-VI "EtherNet IP`s" gehört in das "Haupt" VI EtherNet IP Lifelist. Das Sub VI "Remove Same Array" kommt wiederum in das Sub VI "EtherNet IP`s".
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 11:03
Beitrag #6

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Speicher wird erst geleert nach schließen des Programms
(05.07.2013 11:00 )raverel schrieb:  Nochmal zu allgemeinen Verständnis. Das Sub-VI "EtherNet IP`s" gehört in das "Haupt" VI EtherNet IP Lifelist. Das Sub VI "Remove Same Array" kommt wiederum in das Sub VI "EtherNet IP`s".


Deine hochgeladenen VIs heißen aber allesamt anders, als du sie beschreibst und LV will auch andere Namen haben.


Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
05.07.2013, 11:11
Beitrag #7

raverel Offline
LVF-Grünschnabel
*


Beiträge: 29
Registriert seit: Apr 2013

12
2012
EN



RE: Speicher wird erst geleert nach schließen des Programms
So, anders bekomm ich es nicht hin. Müsste aber so passen.
lv11_img

Gruß raverel


Angehängte Datei(en)
0.0 .zip  Feldbus_EtherNet_IP_Lifelist.zip (Größe: 34,98 KB / Downloads: 212)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 11:21
Beitrag #8

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Speicher wird erst geleert nach schließen des Programms
Hallo raverel,

also in deinen VIs sehe ich nicht so recht, wie die sich da was merken sollten. Hast du mal versucht, einfach mal so längere Zeit zu warten zwischen den Aufrufen.

An der Programmierung kann´s nach meinem Dafürhalten nicht liegen. Wenn du die Konstante erneuerst, muss LV auch das VI neu kompilieren - vielleicht hängt´s auch damit zusammen.


Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 11:45 (Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2013 11:59 von GerdW.)
Beitrag #9

GerdW Offline
______________
LVF-Team

Beiträge: 17.427
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Speicher wird erst geleert nach schließen des Programms
Hallo raverel,

Zitat:Anscheinend hat LabView noch irgendwo diesen Wert im Speicher.
Warum soll LabVIEW schuld sein? Merkt sich die aufgerufene DLL evtl. die gefundenen Slaves? Diese meldet dir doch die Slaves im Cluster...

Zitat:Schließe ich jetzt komplett mein LabView Projekt, öffne mein Projekt/Programm erneut und starte dann den Suchlauf dann nocheinmal, funktioniert alles so wie es soll. Es wird mir als Slaveanzahl der Wert "0" angezeigt. Lösche ich links vom Schieberegister aus dem Array die String Konstante, füge danach eine neue String Konstante ein und starte dann den Suchlauf erneut, funktioniert ebenfalls alles wunderbar.
Im ersten Fall wird die DLL aus dem Speicher entfernt, weil der Aufrufer (LabVIEW bzw. das Projekt mit dem VI) beendet wird. Im zweiten Fall wird LabVIEW die DLL aus dem Speicher schmeißen, weil das VI neu kompiliert wird und dazu alle alten Referenzen etc. aufgeräumt werden. Ich würde der DLL den schwarzen Peter zuschieben...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.07.2013, 11:53
Beitrag #10

raverel Offline
LVF-Grünschnabel
*


Beiträge: 29
Registriert seit: Apr 2013

12
2012
EN



RE: Speicher wird erst geleert nach schließen des Programms
Viele Dank für die schnellen Antworten.
Ja mit der dll hört sich plausibel an. Fragt sich jetzt nur, wie ich das Problem mit der dll löse. Undecided
Muss mir dann wohl nochmal das Datasheet durchlesen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Ftd2xx.dll - Treiber wird erst nach Geräteanschluss gefunden 83DM 3 12.576 08.08.2016 10:27
Letzter Beitrag: rolfk
  Fehler beim Schließen des VIs nach Delphi-DLL-Aufruf Bärbel 10 12.661 11.11.2013 11:44
Letzter Beitrag: andreaskoller

Gehe zu: