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 

Grundkonzept einer Datenerfassung/Auswertung



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!

02.10.2009, 14:16
Beitrag #13

Malte84 Offline
LVF-Grünschnabel
*


Beiträge: 26
Registriert seit: May 2009

8.5
2008
de

45897
Deutschland
Grundkonzept einer Datenerfassung/Auswertung
Zitat:Ist deine (3-Minuten-)Messung spätestens dann beendet, wenn das Array voll ist, dann brauchst du keinen Ringpuffer. Bei der nächsten Messung würde das Array ja wieder von vorne beginnend aufgefüllt werden.
Willst du aber einen Ringpuffer als solchen haben, hat das an sich nichts mit dem Array-Initialisieren als solchem zu tun. Für den Ringpuffer brauchst du auch ein initialisiertes Array. Der Ringpuffer ist ja nur dazu da, um bei einer (un-)endlich lang dauernden Messung nur z.B. die letzten 3 Minuten zu speichern.
Weder bei der Ringpuffermethode, noch bei der ohne, werden Teile gelöscht - zumindest nicht explizit. Bei jeder dieser Methoden werden lediglich Daten überschrieben und ein Lese- und ein Schreibzeiger angepasst. Genau dieses Überschreiben (Replace) ist ja Ziel der Übung.
Ok, vermutlich habe ich eine falsche Vorstellung vom Ringpuffer. Bisher habe ich mir den manuell vorgestellt (Array ist 2 Pufferlängen groß, erster Pufferinhalt wird reingeschrieben, zweiter Pufferinhalt wird reingeschrieben, dritter wird reingeschrieben mit Überschreiben des ersten, vierter wird reingeschrieben mit Überschreiben des zweiten, etc). Das nennt man scheinbar "linear"? So meinst du es aber vermutlich nicht, sondern eben dynamisch mit Lese- und Schreibzeigern, von denen ich aber (bisher) nichts verstehe/kenne.

Aber: Ist das notwendig? Reicht für meine Anwendung ein linearer Ringpuffer nicht völlig aus?

Folgende Idee: Für die Verarbeitung ist es ja nicht notwendig, dass ich so viele "Vergangenheitswerte" mitnehme. Es würde, um zB den Knick beim Intergieren zu vermeiden, völlig ausreichen jeweils den Pufferinhalt vom letzten Durchlauf mitzunehmen. Ich muss hier ja sowieso begrenzen, weil sonst in der Verarbeitung viel zu viele Daten ankommen und die Schleifengeschwindigkeit mit zunehmender Datenmenge ins unendliche geht.
Also: "Manueller Ringpuffer". Dh, immer nur den aktuellen Pufferinhalt und den vom Durchlauf zuvor in die Verarbeitung schicken, dort verarbeiten, im Graf nur den letzten anzeigen und die Daten (falls Speicherung gewünscht) dann in ein sehr groß initialisiertes Array schicken, welches so mit der Zeit aufgefüllt wird. Vor der Speicherung evtl noch den leeren Rest abschneiden und das wars.

Aber wahrscheinlich habe ich es doch noch nicht verstanden und auch hier ist wieder ein Denkfehler drin? -_-

@Datentypen:
Gut, da werde ich dann wohl leider nicht viel einsparen können. Danke für die Erklärung.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
Grundkonzept einer Datenerfassung/Auswertung - Malte84 - 02.10.2009 14:16

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
Question Auswertung von Schwellwerten / Aufzeichnung in TDMS ZwergNase 3 4.018 12.08.2019 19:57
Letzter Beitrag: GerdW
  Datenerfassung mit einer zeitgesteuerten Schleife DM_94 16 10.879 25.07.2018 10:20
Letzter Beitrag: DM_94
  Auswertung Drehgeber mit NI 9401 BenutzernameNO 6 6.661 29.08.2016 13:25
Letzter Beitrag: GerdW
  Datenerfassung cDAQ + NI9203 keine synchrone Datenerfassung dieseldunst 5 6.602 24.06.2016 14:49
Letzter Beitrag: jg
  Datenerfassung und Auswertung Rajesh 9 8.007 09.06.2015 07:40
Letzter Beitrag: wladimir s
  Laufzeitprobleme; Auswertung Lifter 7 6.373 27.11.2013 21:33
Letzter Beitrag: jg

Gehe zu: