20.01.2011, 17:03
Beitrag #1
|
tillev
LVF-Grünschnabel
Beiträge: 13
Registriert seit: Oct 2009
2009
2006
de
78054
Deutschland
|
NI PCI 6230 - Fehlkauf?
Hallo liebe DAQ-Experten,
ich habe eine Messanwendung, bei der ich zwei analoge Kanäle mit 100kHz, und 6 andere mit max. 5kHz abtasten möchte. Also habe ich mir die NI PCI 6230 gekauft, die ja laut Datenblatt 8 AI Kanäle und 250kS/s hat.
Mein Plan war, eben zwei Kanäle mit 100kHz und den Rest mit 5kHz zu takten. Es kommt aber immer der verbreitete Fehler 50103.
Meine Recherche hat bisher ergeben, dass diese Karte vielleicht nur eine Timing-Quelle haben könnte uns es also gar nicht möglich ist, Kanäle unterschiedlich abzutasten? Das würde ja bedeuten, dass die Karte eigentlich nur 30 kHz kann, wenn ich alle acht Kanäle nutze.
Ist das so? Und wenn ja, wie hätte ich das beim Kauf sehen können? Steht das irgendwo im Datenblatt?
Vielen Dank im Voraus für Eure Hilfe
tillev
|
|
|
21.01.2011, 09:05
Beitrag #2
|
|
|
21.01.2011, 09:26
(Dieser Beitrag wurde zuletzt bearbeitet: 21.01.2011 09:37 von Lucki.)
Beitrag #3
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
NI PCI 6230 - Fehlkauf?
Falls der Vorgang, den du erfassen willst, wiederholbar ist, dann besteht noch Hoffnung:
2 Tasks einrichten, Task 1: 2 Kanäle mit 100kHz, Task 2: 5 Kanäle mit 5 kHz. Dann zuerst den Vorgang mit Task 1 erfassen, dann mit Task 2, und dann die beiden Daten kombinieren, als seien sie in einem Zug erfasst worden.
Nach dieser Methode lassen sich z-B auch alle 8 Kanäle mit der max. Datenrate (bei Dir 250kHz) erfassen. Es ist dann nur der Programmieraufwand höher und die Update-Rate in den Diagrammen geringer.
|
|
|
21.01.2011, 20:28
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
NI PCI 6230 - Fehlkauf?
Im ersten Moment sage ich: Ja - Fehlkauf, und möchte meinen Vorschreibern somit widersprechen.
Ich gehe einmal davon aus, dass du deine insgesamt 8 Kanäle kontinuierlich und auch wirklich gleichzeitig erfassen willst. Dann hast du Recht, dann kommst du auf die max. 30 kHz, solange du dein AI-Task "einfach" konfigurierst.
Die Vorschläge von Andora und Lucki bedeuten, dass du für gewisse Zeit ein AI-Task mit 100 kHz für deine ersten beiden Kanäle laufen lässt, dieses dann aber stoppen musst, um die restlichen Kanäle mit 5 kHz aufzunehmen. Es wären also immer Lücken in der Datenerfassung. Ganz zu schweigen davon, dass der Start/Stopp der Task ja auch Zeit kostet.
Aber es besteht noch ein wenig Hoffnung, durch geschicktes Definieren des AI-Tasks. "Einfach" erst 20x AI0 + AI1 als Kanäle definieren, und dann deine restlichen 6 (AI2-AI7), also ein Task mit insgesamt 46 Kanälen. Dieses dann mit 5 kHz laufen lassen, mit einer Gesamtrate von 230 kHz also. Somit hast du zumindest annähernd eine konstante Erfassungsrate für AI0 + AI1.
Nachteil: Du musst das erfasste Array von Messwerten erst mal kräftig umbauen...
Ich habe mal schnell was zusammengeklickt, hoffentlich ohne Fehler, und auch nicht gerade optimal, aber es geht erst einmal ums Prinzip:
AI_230kHz_Task.vi (Größe: 53,84 KB / Downloads: 216)
Zur Frage, hättest du das sehen können? Im User-Manual der 6230 steht, dass sie nur 1 AD-Wandler hat, der im MUX-Betrieb bei der Erfassung mehrerer Kanäle läuft. Das ist der Hinweis darauf, dass die 250 kHz nur für alle Kanäle gesamt zur Verfügung stehen.
Hast du dich nicht von deinem NI-Vertreter beraten lassen?
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!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
24.01.2011, 14:03
(Dieser Beitrag wurde zuletzt bearbeitet: 24.01.2011 14:18 von Lucki.)
Beitrag #6
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
NI PCI 6230 - Fehlkauf?
Wie gesagt setzt mein Vorschlag voraus, daß der zu untersuchende Vorgang periodisch ist oder sich nur langsam verändert.
Bei jedem altem Oszilloskop mit nur einem Strahl gibt es auch die beiden Betriebsarten für das Messen von 2 Kanälen: Chopping und Alternierend. Chopping entspricht dem normalen Mutiplexing der AD-Karte. Bei alternierendem Betrieb wechseln sich die Strahldurchläufe für Kanal 1 und 2 jeweils ab. Diese Betriebsart ist naturgemäß nicht für die Darstellung einmalige Vorgänge geeignet, und auch bei sehr langsam verlaufenden Vorggängen macht es sich nicht gut. Dieser Betriebsart entpricht mein Vorschlag. Man könnte es als "Kanal-Mutiplexing" bezeichnen, im Gegensatz zum normalen "Zeitmultiplexing". Es ist übrigens nicht aus dem Bauch heraus vorgeschlagen, sondern hat sich in einer industiellen Anwendung bestens bewährt. Wundern tue ich mich nur, daß im Rest der Welt noch niemand auf diese Idee gekommen zu sein scheint.
Der Vorschlag von Jens beruht darauf, mit hoher Scan-rate die Kanäle in dieser Reihenfolge zu multiplexen:
0101010101010101010101010101010101010101234567010101010.....
Für Kanal 0 hätte man dann diese Datenfolge:
dddddddddddddddddddddxxxdddd...
D=Datenpunkt, x=Lücke in den Datenpunkten.
Um die Lücken mit Datenpunkten zu füllen, müßte man interpolieren, was aber über drei fehlende Punkte sehr ungenau würde. Die Idee ist aber nichr grundsätzlich schlecht, nur würde ich dann das abscannen so ändern, daß man nie mehr als einen fehlenden Datenpunkt hat. Der ließe sich besser interpolieren. Also abscannen so:
010101010101012301010101010101451010101010101067010101..
Für Kanal 0 hätte man dann diese Datenfolge:
ddddddxddddddxddddddxdd...
Der Vorteil ist die Möglichkeit einer kontinuierlichern Betriebsweise. Nachteile sind die fehlenden, zu interpolierenden Datenpunkte, und daß die beiden unterschiedlichen Sampleraten in einem festen Verhältnis zueinander stehen (oben: Verhältnis 20:1, unten: Verhältnis 21:1). Das zu ändern käme jedesmal einem Aufstand gleich.
|
|
|
27.01.2011, 10:10
Beitrag #7
|
tillev
LVF-Grünschnabel
Beiträge: 13
Registriert seit: Oct 2009
2009
2006
de
78054
Deutschland
|
NI PCI 6230 - Fehlkauf?
Hallo Jens,
da die Lösung von Lucky zwar funktioniert, das ständige Starten und Stoppen aber meine komplette Anwendung ausbremst, habe ich mich dran gemacht Deine Lösung näher zu studieren.
Ich denke ich hab sie jetzt verstanden und so starr wie ich dachte, ist die Struktur auch nicht. Ich kann ja sowohl die Grundfrequenz (d.h. bei Dir die 5 kHz), als auch die Zahl der Kanäle (bei Dir 20) variabel machen. Dann kann ich beide Frequenzen (fast) frei einstellen.
Nur noch zum Verständnis und für andere, die Dein vi vielleicht auch ansehen. Müsste bei dem "Delete from Array" der Index0-Eingang nicht 40 sein. Bei Dir steht da 20, aber ich hab ja 2x20Kanäle?
Vielen Dank für Deine Rückmeldung.
Grüße
tillev
|
|
|
27.01.2011, 10:46
Beitrag #8
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
NI PCI 6230 - Fehlkauf?
' schrieb:Nur noch zum Verständnis und für andere, die Dein vi vielleicht auch ansehen. Müsste bei dem "Delete from Array" der Index0-Eingang nicht 40 sein. Bei Dir steht da 20, aber ich hab ja 2x20Kanäle?
Ja, du hast Recht, da muss eine 40 stehen
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!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
27.01.2011, 15:48
Beitrag #9
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
NI PCI 6230 - Fehlkauf?
' schrieb:da die Lösung von Lucky zwar funktioniert, das ständige Starten und Stoppen aber meine komplette Anwendung ausbremst,
Da machst Du etwas falsch. Bei Betriebsmodus "Endliche Anzahl" ist ein Task beendet, wenn die Anzahl Samples erreicht ist - da muß nichts mehr gestoppt werden.
Was gemacht werden muß:
[list=1]
[*]Task 1 (2 Kan schnelle Erfassung) und Task 2 (6 Kan langsame Erfassung) konfigurieren.<>
[*]Task 1 starten<>
[*]Wenn Task 1 beendet: Task 2 starten<>
[*]Wenn Task 2 beendet: Task 1 starten<>
[*]Gehe zu 2.<>
[st]Die Tasks müssen auch nicht ständig neu konfigurierrt werden. Das würde die Anwendung wirklich ausbremsen, aber das machst Du doch hoffentlich nicht, oder?
|
|
|
31.01.2011, 08:14
|
tillev
LVF-Grünschnabel
Beiträge: 13
Registriert seit: Oct 2009
2009
2006
de
78054
Deutschland
|
NI PCI 6230 - Fehlkauf?
Hallo zusammen,
das ist wirklich ein blödes Thema, wenn man so an den technischen Grenzen seiner Messkarte rumkratzt :-)
@ Lucky:
das sieht mein LV leider anders. Wenn ich die "Task-Stoppen" entferne und nur noch "Warten bis beendet" benutze, kommt wieder der alt bekannte 50103-Fehler. Konfiguriert wird übrigens nur 1x zu Beginn der Messung.
@Jens:
hab leider bei Deiner Lösung ein neues Problem bekommen. In meiner Anwendung läuft noch ein Zähler mit, der vom Analogen-Task getaktet wird. Der sollte eigentlich auch mit 100kHz abgetatstet werden, wird jetzt aber eben nur noch mit 5 kHz ausgelesen. Leider hab ich beim Zähler wohl keine Möglichkeit, einfach auch die Zahl der Kanäle auf 20 zu erhöhen, oder?
Viele Grüße
tillev
|
|
|
| |