LabVIEWForum.de
Analoge Signalerzeugung instabil unter Windows 10 - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Analoge Signalerzeugung instabil unter Windows 10 (/Thread-Analoge-Signalerzeugung-instabil-unter-Windows-10)



Analoge Signalerzeugung instabil unter Windows 10 - Winterkind - 19.02.2018 15:12

Hallo,

ich habe ein recht umfangreiches Programm geschrieben mit LV2017 SP1 32Bit.
In der Entwicklungsumgebung unter Win 7 und als Exe-Datei unter Windows 7 64 Bit habe ich keine Probleme.
Ich erzeuge ein analoges Signal unter 50Hz das ich mit einem Oszilloskop perfekt messen kann.
Als Hardware benutze ich die NI-Karte 6001OEM.

Windows 7 64 Bit Sollwert 50Hz Istwert 50Hz +- 0.1Hz ==> perfekt
Windows 10 64 Bit Sollwert 50Hz Istwert 45Hz +- 3Hz ständig schwabbelndes Signal ==> Mist

Ich habe alles unnötige heraus geschnitten und die eigentliche Routine als vi beigelegt.

Zur Kontrolle habe ich zwei andere NI 6001 Karten genommen und auch zwei NI 6008 Karten ohne Unterschied.

Was mache ich falsch? Gibt es Einstellungsmöglichkeiten im Measurement & Automation Explorer ?

Ich hoffe ihr könnt mir weiterhelfen.

Vielen Dank.


RE: Analoge Signalerzeugung instabil unter Windows 10 - GerdW - 19.02.2018 15:43

Hallo Winterkind,

warum nutzt du nicht die Möglichkeit, der Hardware das genaue Timing zu überlassen?
Deine USB6001 unterstützt das doch auf ihren AO-Kanälen!


RE: Analoge Signalerzeugung instabil unter Windows 10 - jg - 19.02.2018 22:05

Eine Software-Schleife mit einem Wait von 1 ms unter Windows, das läuft in der Regel nicht stabil. Erst recht nicht, wenn da noch Hardware-Zugriffe mit dabei sind.
(19.02.2018 15:12 )Winterkind schrieb:  Windows 7 64 Bit Sollwert 50Hz Istwert 50Hz +- 0.1Hz ==> perfekt
Ausnahmen bestätigen natürlich die Regel. In diesem Fall würde ich sagen: Glück gehabt.
(19.02.2018 15:12 )Winterkind schrieb:  Windows 10 64 Bit Sollwert 50Hz Istwert 45Hz +- 3Hz ständig schwabbelndes Signal ==> Mist
Und ganz ehrlich, das ist der Normalfall. Wenn jetzt die Leistung der PCs gleich war (soll heißen, selbe CPU, Motherboard, Speicher, usw.), dann siehst du an diesem Ergebnis einfach, dass Windows 10 offenbar mehr Resourcen braucht als Windows 7.

Lösung: s. Gerds Beitrag.

Gruß, Jens


RE: Analoge Signalerzeugung instabil unter Windows 10 - Lucki - 20.02.2018 01:01

Die von Gerd genannte Lösung hört sich einfach an, aber vom Programmieren her ist es doch eine höhere Schwierigkeitsstufe.
Ich empfehe Dir, das Beispiel
DAQmx /Analoge Ausgabe /kontinuierliche Ausgabe ohne Regeneration
gründlich zu studieren und so weit wie möglich nachzumachen.


RE: Analoge Signalerzeugung instabil unter Windows 10 - Winterkind - 21.02.2018 08:31

Hallo nochmal,

ich habe die Signalerzeugung umgebaut und jetzt läuft sie stabil.
Da ich im laufenden Betrieb die Frequenzen mehrfach wechseln muss
und messe wie die externe Hardware (Prüfling) darauf reagiert wurde eine kleine Samplezahl gewählt.

Nun gibt es wieder Unterschiede zwischen Windows 7 64Bit I3 Prozessor ca. 5Jahre alt
und dem Windows 10 64Bit System auf einem Asus Board I5 Prozessor und Dualchannel 8Gb (und auch anderer Hardware mit Windows 10).

Unter Windows 7 kann ich in den Feldern Frequenz und Amplitude neue Werte eingeben die am Oszilloskop unmittelbar messbar sind.
Unter Windows 10 passiert 2 Sekunden garnichts bevor dann das Signal reagiert.
Das wird von meinen Prüfling als KO-Kriterium bewertet.


Ist unter Windows 10 die USB Karte 6001 einfach nicht mehr geeignet?


RE: Analoge Signalerzeugung instabil unter Windows 10 - GerdW - 21.02.2018 09:29

Hallo Winterkind,

nur zwei Samples im Ausgabesignal - bei 1kHz Samplerate?
Du willst also alle 2ms neue Waveforms über den USB-Bus schieben?

- Wieso willst du andauernd die Samplerate neu setzen? (Und das auch noch für jede Waveform im Waveform-Array!) Die ändert sich doch nie!?
- 2s Verzögerung sind aber auch nicht ok: ändert sich diese Verzögerung mit der Zeit? Wird sie größer, je länger das VI läuft?

Zitat:Ist unter Windows 10 die USB Karte 6001 einfach nicht mehr geeignet?
Die USB6001 ist weiterhin geeignet, sie funktioniert ja…
Vielleicht hat MS einfach etwas bei den USB-Treibern und deren Integration im OS geändert?


RE: Analoge Signalerzeugung instabil unter Windows 10 - Winterkind - 21.02.2018 15:16

Hallo Gerd,

du hast Recht. Ich habe den Eigenschaftsknoten aus der Whileschleife heraus genommen das macht keinen Sinn.

Ich habe 2 Samples gewählt weil sonst, wenn ich einen neuen Wert eingebe, die verbleibenden Samples aus den aktuellen Durchlauf noch ausgegeben werden.
Das kann dann selbst unter Windows 7 je nach dem in welchem Moment neue Wert eingeben wird zu einen undefinierten Verzögerung führen.
Die schnellste Reaktionszeit erhalte ich, wenn ich 2 Samples wähle.

Auch eine längere Laufzeit (> 1 Stunde) des kompilierten vi unter Windows 10 ändert nichts an der verzögerten Reaktion von 2 Sekunden.

PS. Wenn ich das Programm beende unter Windows 10 wird das Signal unmittelbar mit dem Programm beendet ohne die 2 Sekunden Verzögerung.

Gruß Marcus