LabVIEWForum.de
SPI Signal mit PXI-6280 - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: SPI Signal mit PXI-6280 (/Thread-SPI-Signal-mit-PXI-6280)



SPI Signal mit PXI-6280 - dtea - 06.12.2012 13:42

Hallo miteinander,

mein Problem ist das die Datenausgabe zu langsam ist. Der Zeitraum zwischen 2 Datensätzen des SPI Signals ist zu lang.

Wie im slow.png(das links) zu sehen ist schreibe ich die Daten und starte dann die Tasks und stoppe diese wieder. Das funktioniert auch super ist nur zu langsam.
Mein VI besteht im Prinzip aus dem Beispielen von: http://zone.ni.com/devzone/cda/epd/p/id/6200

Kurz mein Programm: Daten.datei öffnen und mit den SPI VIs umwandeln und in Array speichern dann das Array eben ausgeben. Selbe Samplerate und SPI-Timings wie im BSP von NI.
Da das Array ca. 22k Zeilen hat dauert das mit dem Starten und Stoppen über 10 Minuten. Mit den eigentliche Gerät ca. 4 Minuten. Nur soll es mit LabView automatisiert werden und natürlich schneller gehen.

Im versuch.png(mitte) versuche ich es zu beschleunigen. Bekomme aber immer den Fehler 200288 (http://digital.ni.com/public.nsf/allkb/BFCE83133C0ECAD786256E6000814B68?OpenDocument )

Zitat:Attempted to write a sample beyond the final sample generated. The generation has stopped, therefore the sample specified by the combination of position and offset will never be available.

Specify a position and offset which selects a sample up to, but not beyond, the final sample generated. The final sample generated can be determined by querying the total samples generated after a generation has stopped.

Daraus habe ich versucht das Offset im RelativZu: Erstes Sample anzupassen. So wie ich den 2. Absatz verstanden habe. Wie man im versuch.png sicher sieht habe ich schon verzweifelte Versuche mit dem Offset unternommen.

Ursprünglich hatte ich die Ausgabe so vor wie im anderes.png(das rechte mit der FFT) nur wollte LabView das nicht. Fehlermeldung sagte das er nicht Schreiben kann wenn der Buffer leer ist. Bei anders.png habe ich die PXI-6071E verwendet. Ist für das SPI aber zu langsam.

Ich befürchte fast das die 6280 auch zu langsam ist für mein vorhaben, hoffe aber jemand kann mir trotzdem helfen das ganze zu beschleunigen.

Ach ja mein System: Win7 64bit mit LV2010 und das Ziel PXI-8175 Controller mit LabView RT im Remote Betrieb

Vielen Dank für jegliche Hilfe im Voraus,
Gruß David


RE: SPI Signal mit PXI-6280 - dtea - 10.12.2012 17:19

Da anscheinend keiner einen Tipp hat habe ich mich von der 6280 abgewand.
Mein Chef hat mir noch eine 6534 zur Verfügung gestellt und meinte das die vielleicht schneller ist.
Dev5 im VI ist die 6534, Dev3 ist noch die 6280.
Die Datei die ich öffne beinhaltet die Binärdaten die ich gerne mit 10Mhz ausgeben würde. Bzw. es soll erstmal überhaupt was rauskommen egal wie schnell.

Momentan bekomme ich den Fehlercode: -200077
Zitat:Fehler -200077 ist bei SPI_v7.vi aufgetreten

Mögliche Ursachen:

Requested value is not a supported value for this property. The property value may be invalid because it conflicts with another property.

Property: SampQuant.SampPerChan
Requested Value: 330
Samples Per Channel Increment: 4

Task Name: _unnamedTask<42>

Das Help-File (http://digital.ni.com/manuals.nsf/websearch/CCB88DC67022A750862573A7007ACAB7 ) hat mir leider auch nicht weiter geholfen und die 200077 Fehler in Foren erst recht nicht...

Ich verstehe bei der Fehlermeldung auch garnicht was damit gemeint ist mit dem Samples Per Channel Increment. Heist das es werden jedes mal 4 Samples mehr oder wie?

Hoffe es kann mir jemand damit helfen.
Vielen Dank,
Gruß David


RE: SPI Signal mit PXI-6280 - dtea - 12.12.2012 16:46

http://forums.ni.com/t5/Digital-I-O/Errors-1074115896-and-1074116169-Rewriting-Named-Waveforms-on/td-p/1941019

hats erklärt, vorallem der abschnitt:
Zitat:The second error comes from the waveform quantum (num samples to write per channel increment) that our memory is under constraint from. The way we address the memory, the number of samples in the waveform must be in a certain increment, which you see specified. In this case, the increment being 32 means you can write a waveform of 32 samples, 64, 96, 128, and so on. Any size waveform outside of this increment (not divisible by 32) will throw that error.