Hallo zusammen,
seit einigen Tagen hänge ich nun an dem gleichen Problem und brauche Hilfe. Ich programmiere gerade ein Schwingungsmesssystem mit Hilfe von
ompactDAQ Elementen und will bei einer Grenzwertüberschreitung automatisch E-Mails verschicken. Das klappt auch schon soweit mit Hilfe der Labview Biblotheken.
Das Problem ist, ich will während das E-mail Versands weiter Messen. Um das zu erreichen wollte ich die beiden Vorgänge parallelisieren. Dazu habe ich das Versenden der E-Mail in eine eigene Schleife gepackt welche mit Hilfe einer Que den Versandauftrag bekommt. Das Parallelisieren scheint auch zu klappen (ich kann in der Schleife beliebig lange Timer laufen lassen ohne dass die Messung unterbrochen wird).
Was jedoch immer passiert ist, dass während des eigentlichen Versandvorgangs mit Hilfe des
Senden VIs mein Messprogramm keine Daten erhält. Mir scheint es so, als würde das Versand VI den Zugriff meines Labviewprogramms auf das Netzwerk blockieren. Die Messdaten werden von den CompactDAQ Elementen per LAN übertragen.
Erfolgt der Versand der E-Mail innerhalb von 5 Sekunden (So lange können die DAQ Elemente die Messwerte Buffern) ist dies kein Problem und das Programm läuft wunderbar durch. Dauert es jedoch länger entsteht eine Lücke in den zu Verfügung stehenden Messwerten und mein Programm stürzt ab. Ich könnte natürlich das Timeout für das Versenden auf 5 Sekunden reduzieren, jedoch soll der E-Mail Versand auch bei schlechter Internetverbindung (UMTS) möglich sein. Ich könnte auch versuchen das Versenden der E-mails mit Hilfe eines Shell Scriptes aus meinem Messprogramm auszulagern oder versuchen die Bufferzeit zu erhöhen, aber schön ist das nicht.
Habt ihr noch Vorschläge was ich anders machen könnte? Ist das ein bekanntes Problem? Oder stehe ich nur mal wieder furchtbar auf dem Schlauch?
Ich habe gerade kein Beispiel zur Hand, und es würde euch ohne CompactDAQ Element warscheinlich auch wenig bringen, aber wenn ihr trotzdem eins wollt hänge ich gerne noch was an.
Mit freundlichen Grüßen
Julian