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!
23.08.2010, 06:32 (Dieser Beitrag wurde zuletzt bearbeitet: 23.08.2010 06:47 von jak888.)
ich habe folgendes Problem: Ich habe ein Programm geschrieben, welches Ausgänge schaltet und dann Messwerte aufnimmt. Das Ganze soll 24 Stunden durchlaufen. In wahrheit bricht das Programm aber nach 155 Minuten ab. Liegt das an LabVIEW? Gibt es eine maximale Laufzeit, nach der automatisch abgebrochen wird?
Wenn ich dann wieder an den Rechner komme, ist sowohl der Bildschirmschoner aktiviert als auch der Rechner gesperrt. Kann es eventuell daran liegen?
Kommt eine Meldung, wenn das Programm sich beendet?
Wieviel RAM hat dein Computer?
Wie sieht die Struktur aus, in welcher die Daten gespeichert werden? Also welche Datentypen ect.
Am besten mal das Problem-VI hochladen, am besten ein vereinfachtes Beispiel.
Eine Meldung kommt nicht, außer der Normale Datei Speichern Dialog, am ende der Ausführung.
Momentan steht mein Rechner leider noch bei Prüfaufbau und ich kann deshalb weder auskünfte über den RAM geben noch eine VI hochladen.
Ich werde das tun, sobald ich kann.
Meiner Meinung nach sollte der RAM aber nicht kritisch werden, da die ausgegebene Excel Datei um die 64 kB hat. Selbst, wenn die Datenspeicherung in LabVIEW aufwändiger ist, weil ich zu große Zahlenformate verwende, sollte die gesamtdatenmenge nicht 100 MB überschreiten(nur um mal ne Zahl in den Raum zu werfen).
"Good judgement comes from experience, experience comes from bad judgement."
Ohne Vi kann man nur über die zahllosen Möglichkeiten spekulieren oder mittels Glaskugel:glas1:die Lösung finden. Da letzteres nicht funktioniert (zumindest bei mir) und ersteres mühsam ist, würde ich dir raten das VI hochzuladen
Ich war grad nochmal am Aufbau. Und ich muss sagen... Wenn man bei der For-Schleife eine 5 ans n hängt, dann muss man unter Umständen damit rechnen, dass die nur 5 mal durchlaufen wird. Wenn man aber will, dass die Schleife 46 mal durchlaufen wird, sollte man, nach Möglichkeit den Ansatz in betracht ziehen eine 46 ans n zu hängen. Das ist aber nur eine Idee...
Kann mir vielleicht jemand sagen, ob die VI weiterläuft, wenn der Rechner gesperrt ist?
"Good judgement comes from experience, experience comes from bad judgement."
Es wäre schlimm und LabVIEW wäre nicht zu verkaufen, wenn ein Programm/VI max. 2,5 h wie bei dir läuft. Ich habe Programme im Einsatz, die laufen mehrere Monate.
Folgerung: Du hast irgendetwas falsch gemacht. Was macht denn der Speicherverbrauch? Ist der konstant. Du schreibst das was von Excel, das vergisst man gerne, Referenzen zu schließen, was zu steigender Speicherauslastung führt...
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
siehe post oben.
Ich habe bei einem Teslauf die Anazhl der zyklen auf 5 gesetzt, damit die VI schneller durchläuft und ich sehen, kann ob das Programm in dem Zeitraum stabil läuft. Danach habe ich intelligenterweise vergessen die Zahl zurück auf 46 zu setzen. Das war der Fehler.
Excel sollte keine Probleme machen, da ich mit "write to spreadsheet file" in eine Exceltabelle schreibe.
Auch die Datenmenge kann grob überschlagen nicht zu groß sein:
23*60+46=1426 minuten
1426 * 15 = 21350 Messwerte pro kanal
3 kanäle + zeitanzeige = 4
4 * 21350 = 85400 Messwerte insgesamt
Wenn alle Quad sind: 341600 Byte an Daten.
Damit sind die kriterien mMn alle erfüllt:
zeilenzahl < 65535
Datenmenge < 1MB
Nach meinem Verständnis kann ein Array abhängig vom Arbeitsspeicher eine beliebige Menge an daten speichern. Stimmt das so? Macht meine Rechnung halbwegs sinn?
"Good judgement comes from experience, experience comes from bad judgement."
' schrieb:...
Wenn alle Quad sind: 341600 Byte an Daten.
Damit sind die kriterien mMn alle erfüllt:
zeilenzahl < 65535
Datenmenge < 1MB
Nach meinem Verständnis kann ein Array abhängig vom Arbeitsspeicher eine beliebige Menge an daten speichern. Stimmt das so? Macht meine Rechnung halbwegs sinn?
Ja ein Array kann beliebige Mengen an Daten speichern. Zu beachten ist jedoch, dass Arrays Kopien ablegen können und somit ein vielfaches an Speicherbedarf benötigen können. Auch nicht geschlossene Referenzen benötigen viel Speicher.
Was meiner Meinung nach komisch ist, dass der Speichern Dialog ohne Fehlermeldung auftaucht