INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

07.05.2011, 15:28
Beitrag #1

Markus82 Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2011

2010
2008
DE



Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Hallo,

ich möchte mittels eines cRio-9073 und NI 9215 Daten aufnehmen.
Soweit kein Problem, jedoch kommt nun die Schwierigkeit.

Die Daten sollen getriggert aufgezeichnet werden. Das bedeutet, dass ich eine gewisse Zeit vor dem Trigger aufnehmen will (z.B. 0,5-1,5s vor dem Trigger) und eine variable Zeit danach (0,5-2s).

Der Ansatz ist ein Fifo zu nutzen, in dem die Werde vor dem Trigger gespeichert werden.
Da die Frequenz der Messdatenerfassung und die Erfassungsdauer variabel sein soll müsste ich dazu den FiFo variabel gestalten.
Ein weiteres Problem ist der FiFo an sich, da dieser voll läuft. Ich möchte jedoch ein "Überlaufen" haben, also wenn der FiFo voll ist soll das Schreiben der neuen Daten zu einem entfernen der ältesten führen. Um somit die n neusten Daten im FiFo liegen.
Durch die Größe des FiFo kann somit zum Zeitpunkt des Triggerns die Speicherdaten im Vorlauf gemessen werden.

Also kann mir jemand bei den Problemen Helfen?
Also die Größe des FiFos innerhalb der Vi zu ändern.
Und ein "Überlaufen" der FiFo zu erzeugen.

Vielen Dank,
Markus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2011, 07:39 (Dieser Beitrag wurde zuletzt bearbeitet: 08.05.2011 08:20 von Y-P.)
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Du kannst ja von der "aktuellen" Zeit die Sekundenzahl abziehen, die Dein Pretrigger haben soll. Alles was älter ist, kannst Du aus Deinem FIFO (Array) rausschmeißen.

Gruß Markus
Hab' Dir schnell mal was zusammengeklickt, wie ich das in etwa meine:

2010 .vi  FIFO_bereinigen.vi (Größe: 13,83 KB / Downloads: 316)


Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2011, 17:00
Beitrag #3

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Habe auch mal was auf die Schnelle skizziert.

2010 .vi  FIFO.vi (Größe: 12,26 KB / Downloads: 276)

Es gibt aber noch eine weitere interessante Möglichkeit, einen FIFO zu begrenzen: Bei den Queue-Funktionen gibt es neuerdings das VI "Element verlustbehaftet hinzufügen". D.h. im Klartext: Wenn die Queue voll ist, wird nicht gewartet, sondern das älteste Element fliegt raus.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2011, 17:25
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
@Markus82:
Erste Antworten hast du. Trotzdem solltest du deine Frage ein wenig präzisieren.
Du hast deine Frage im Unterforum FPGA gestellt. Geht es also mglw. im DMA-FIFOs zwischen FPGA und RT-Teil des cRIO? Oder was genau?

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.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2011, 18:00
Beitrag #5

Markus82 Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2011

2010
2008
DE



RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Hallo,
ersmal danke!
Ich hatte vergessen mitzuteilen, wie ich Daten sammle!
Die FiFo dient natürlich zur Datenübertragung vom Crio zum Hostsystem
Das CRio ist per FPGA programmiert.
Am liebsten wäre mir, dass das CRio die Vor und Nachlaufzeit dem CRio übergeben werden und das FPGA dann die Daten aufzeichnet und dann bei einem Triggersignal die Daten an das Hostsystem sendet.
ICh habe für das System die FPGA Lizenz aber keine Realtimelizens.
Somit muss ich ein FPGA-Programm erstellen, welches mir die Daten überträgt.
Ich würde mich über weitere Hilfe freuen!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2011, 19:11 (Dieser Beitrag wurde zuletzt bearbeitet: 08.05.2011 19:11 von Lucki.)
Beitrag #6

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
(08.05.2011 18:00 )Markus82 schrieb:  Ich würde mich über weitere Hilfe freuen!
-- und wir würden uns über eine Kommentierung der bereits gegebenen Hilfen freuen. Oder lagen die so daneben, daß hier die einzig adäquate Antwort "Der Mantel des Schweigens" ist?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2011, 19:16
Beitrag #7

Markus82 Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2011

2010
2008
DE



RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Beide Antworten bezogen sich leider nicht auf die FiFos welche zur Datenübertragung eingesetzt werden und sind somit leider nicht nutzbar.
Ich versuche jedoch aktuell das Problem mit dem verlustbehafteten Zufügen zu lösen. Bei dieser Vatiante werden jedoch weiterhin die Daten im Hostsystem verarbeitet, was ich vermeiden wollte.
Ich werde mich melden wenn es funktioniert hat.
Demnach erstmal vielen Dank aber wenn noch jemand ne idee hat sowas direkt im FPGA zu implementieren wäre ich für Vorschläge dankbar!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.06.2011, 09:52 (Dieser Beitrag wurde zuletzt bearbeitet: 01.06.2011 09:53 von dlambert.)
Beitrag #8

dlambert Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 89
Registriert seit: May 2009

2010
2007
en

12359
Deutschland
RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Wenn die Zeitspanne der Aufzeichnung ( Pretrigger bis Posttrigger ) und die Samplerate bekannt sind, weist Du wie viele Daten pro Trigger anfallen. In dieser Größe legst Du einen FPGA Memoryblock an und baust damit einen Ringspeicher in den die Daten laufen. Nach dem Posttriggerevent schiebst Du die Daten in den Target2Host DMA FIFO.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.06.2011, 21:02
Beitrag #9

cheggers Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Jun 2011

2010 SP1
2008
EN


Schweiz
RE: Schwierigkeiten mit variabler Datenerfassung, Zeitstempel und Fifo
Hallo,

auf dem FPGA musst du einen Ringpuffer generieren. Solange der Trigger nicht kommt, wird kontinuierlich ein FPGA Memory beschrieben (von Adresse 0 bis N und dann wieder von vorne). Ich habe mir es einfach gemacht: Ich habe ein Memory für Pretriggered Samples und ein FPGA Memory für Posttriggered Samples. Das Memory für die Pretriggered Daten funktioniert wie beschrieben als Ringpuffer, das Memory für die Posttriggered Daten wird nur einmal nach dem Trigger beschrieben.

Vom Host kann jeweils die Grösse der Pre- und Posttriggered Samples angegeben werden. Da auch die Sample-Clock vom Host vorgegeben werden kann, ist somit auch klar wie lange die Pre- und Posttriggered Zeit ist.

Nach der Erfassung können die Daten per DMA zum Host gesendet werden.

Ich hoffe dies Hilft als Ideenanstoss.

Grüsse,
cheggers


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  FPGA FIFO vs. MEMORY derandyk 1 4.504 30.11.2018 11:42
Letzter Beitrag: GerdW
  16 Kanal AI mit FPGA und DMA FIFO derandyk 12 12.387 23.11.2018 15:56
Letzter Beitrag: BNT
  FPGA FIFO Roland 5 7.822 28.05.2018 20:16
Letzter Beitrag: jg
  unplausible Werte aus FIFO kwakz 2 7.436 28.09.2015 06:05
Letzter Beitrag: kwakz
  FPGA FIFO - Oszilloscop PxCE_HB 9 13.478 08.09.2015 14:35
Letzter Beitrag: GerdW
  FIFO Fehler beim auslesen logan 2 7.002 15.01.2015 16:33
Letzter Beitrag: logan

Gehe zu: