' schrieb:Hallo monoceros84
das verstehe ich inhaltlich nicht - gibt es irgendwo einen Text der das erläutert?
Ich habe Lava & den Support auch bemüht (meine Meinung zum Support ist bestätigt worden :-) einheitliche Meinung: es geht nicht. Und meines Voters Sohn glaubt es immer noch nicht. Ich denke ich kann 2 Triggersignale generieren und damit auf 2 Kanälen unterschiedlich einlesen - die Linie ist aber auf Eis
Der Grund ist zweifach.
1) sind die meisten analogen Eingagskarten gemultiplext. D.h. es gibt nur einen AD Konverter und alle Eingänge die Du lesen willst werden nacheinander an diesen AD Konverter gelegt und gemessen. Solange das von einem Task geschieht der immer dieselben Anzahl Kanäle hat, geht das recht gut aber wenn da zwei Task einander ins Gehege zu pfuschen versuchen, bekommst Du unweigerlich Müll, und deshalb kann ein Task keinen AD Konverter benützen der von einem anderen Task schon reserviert/benützt ist.
Warum verwenden die dann nicht einen AD Konverter per Eingang? Ganz einfach, AD Konverter sind so ziemlich das teuerste Teil auf einer DAQ Karte. Karten mit einem AD Konverter per Eingang gibt es zwar aber die bekommst Du echt nicht als Low-Cost Version, nicht mal wenn deren gemessenen Werte bestenfalls als Schätzwerte klassiert werden können, da die billigsten AD Konverter verwendet wurden Du man kaufen kann.
2) Zur Erzeugung des Taktes des AD Konverters und Multipexers sind mindestens zwei Taktgeber nötig. Eine DAQ Karte hat nur eine beschränkte Anzahl von Taktgebern zur Verfügung und die können normalerweise nicht beliebig für alle möglichen Funktionen verwendet werden, da die entsprechende Routing Logik anders sehr komplex (und teuer wird). Und Programmierung davon ist eines der komplexeren Meisterstücke in der DAQ Programmierung. Indem die HArdware zur Takterzeugung einigermassen einfach gehalten wird, kann der DAQ Treiber in den meisten Fällen die Ganze Programmierung davon übernehmen. Wer schon mal versucht hat komplexere Routings von Taktsignalen selber zu programmiern (Synchronisation von analogem Eingang und Ausgang möglichst noch über mehrere Karten hinweg) weiss die automatische Taktprogrammierung von gewöhnlichen DAQmx Tasks sehr zu schätzen.
Zitat:Ich habe 2 Lösungswege gesammelt:
A.) mit der höheren Rate alles messen und dann die überfüssigen Bits wieder Downsamplen oder vergessen - gut, aber nicht sehr intelligent
So tue ich es immer. Ist am einfachsten und funktioniert sehr gut.
Zitat:B.) ich verwende die Soundkarte als zweiten Eingang - funktioniert problemlos - das habe ich realisiert
Der Soundkarteneingang ist alles ausser ein Messeingang. Er ist optimalisiert um so günstig möglich eine erträgliche Soundqualität zu ermöglichen. Als Messeingang ist er aus verschiedenen Gründen nicht geeignet:
1) AC Coupling: Messung von Gleichspannungen ist nicht möglich da Soundkarten normalerweise eine untere Grenzfrequenz von ~20Hz haben.
2) Genauigkeit: Tja diese Karten müssen billig sein. Eine typische Soundkarte kostet weniger als der AD Konverter auf einer einigermassen guten Messkarte. Die entsprechenden Messwerte sind dann auch im Vergleich eher Schätzwerte dann Messwerte. Für eine rein dynamische Messung eines Signals innerhalb des Audiobereiches 20Hz-20kHz könnte es aber manchmal reichen.
Rolf Kalbermatter