DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Sortieren von Daten in DAC

Hallo,

ich habe gerade mit einem der Entwcikler gesprochen. Leider hatte ich da eine falsche Information im Kopf. Die Script-Verarbeitungsblöche verarbeiten jeweils nur einen Scan der Kanäle. Damit steht diesen Blöcken leider immer nur der aktuelle (einzelne) Kanalwert zur Verfügung.

Eine Alternative gibt es leider auch nicht. Was dann bedeutet, dass DAC zurzeit keine Möglichkeit anbietet die Daten während der Messung zu sortieren.

 

Andreas

0 Kudos
Message 11 of 35
(2,965 Views)

Vielleicht reicht es ja aus zur Visualisierung der Daten eine Streuungsanzeige zu nehmen. Damit kann man X / Y-Werte als Punktwolke anzeigen.

 

Gruß

DIAdemo

 

0 Kudos
Message 12 of 35
(2,956 Views)

Hallo Andreas,

 

vielen Dank für deine Auskunft, auch wenn sie nicht sehr erfreulich ist Smiley Frustrated

 

Dann vielleicht anders:

Besteht denn die Möglichkeit die einzelnen Scans nacheinander in einem Kanal abzulegen? dann könnte man sie doch durch ein Skript sortieren lassen und die weiterführenden Berechungen auch.

 

So, dass ich dann quasi aus der Wertesammlung immer den gesuchten Wert ermitteln und dann ausgeben kann? 

 

@DIAdemo: eine Streuungsanzeige reicht mir leider nicht.

 

Viele Grüße Criss

 

 

0 Kudos
Message 13 of 35
(2,946 Views)

Hallo Chris,

 

Ich habe die Aufgabenstellung noch nicht ganz verstanden, aber grundsätzlich verarbeitet DIAdem DAC die Daten einzeln, also Wert für Wert (Wert erfassen, verarbeiten, anzeigen, speichern - nächster Wert).

Wenn man jetzt alle Daten der laufenden Messung "sammeln" möchte um damit etwas zu machen, wird das Datanarray u.U sehr groß, so groß, dass der Speicher des PC's nicht reicht. Außerdem wird die Verarbeitung der Daten mit zunehmender Größe des Array immer langsamer (da immer mehr Daten verarbeitet werden müssen). Diese beiden Punkte solltest du bei deiner Aufgabe beachten.

 

Als Beispiel habe ich einen Schaltplan angehängt, der in immer größeres Array erzeugt und von allen Werten dieses Arrays den Mittelwert berechnet. Aber wie gesagt, das ist nur ein Beispiel, da ich deine Aufgabe noch nicht ganz verstanden haben.

 

Gruß

Walter

 

 

0 Kudos
Message 14 of 35
(2,937 Views)

Hallo Walter,

 

erstmal Danke für das Script.

 

Ziel der Aufgabenstellung ist eine Überwachung der dynamischen Fahrweise eines Fahrers. Dazu sind die positiven Beschleunigungswerte, der Größe nach, in Absteigender Reihenfolge zu ordnen. Aus den geordneten Werten ist dann das 95. Percentile zu ermitteln. Der größte Wert entspricht 100%, der kleinste dann 0%. Die oberen 5% werden quasi nicht berücksichtigt. Wie schon gesagt funktioniert es mit fertigen Datensätzen. Um dem Fahrer aber eine Hilfestellung zu geben und die Grenzen während einer Messfahrt nicht brechen soll das nun in eine Liveüberwachung umgesetzt werden.

 

Viele Grüße

 

Criss

0 Kudos
Message 15 of 35
(2,920 Views)

Hallo Criss,

 

im Anhang findest du ein Beispiel, dass die gemessenen Daten sortiert und das 95% Quantil berechnet. Dieser Wert wird dann ausgegeben. Damit der Speicher nicht unnötig belastet wird (siehe oben), werden die letzten 100 Messwerte für die Berechnung berücksichtigt. Der älteste Wert wird immer durch einen aktuellen ersetzt.

Ich hoffe das entspricht im Wesentlichen dem was du erwartest.

 

Gruß

Walter

0 Kudos
Message 16 of 35
(2,907 Views)

Ich habe versucht die Daten im DAT-Format zu speichern, so das ich Online-Zugriff darauf habe.

 

Nun kommt aber die angehängte Fehlermeldung. Gibt es eine Möglichkeit diese zu ignorieren, so dass die Messung von allein weiterläuft?

Mit "On Error Resume Next" funktioniert es nicht.

 

Viele Grüße

Criss

0 Kudos
Message 17 of 35
(2,906 Views)

Hallo Walter,

 

Vielen Dank!!!! Das ist echt super!!!

 

Gibt es noch eine Möglichkeit, das keine Nullen in dem Array gespeichert werden, sondern tatsächlich nur Werte die größer Null sind?

 

Und ist es möglich die Meldung, die ich gestern angehängt habe, zu überspringen oder zu ignorieren?

 

Viele Grüße

Criss

0 Kudos
Message 18 of 35
(2,873 Views)

Hallo Criss,

 

das Script habe ich so geändert, dass nur die Werte > 0 für die Berechnung berücksichtigt werden. Bei o oder kleiner wird NoValue angezeigt.

 

Zur zweiten Frage: Wenn der Parameter "Online zugreifbar" im Speicherblock gesetzt ist, sollt die Fehlermeldung nicht mehr erscheinen. Ich bin nur nicht sicher, wie das bei deiner Aufgabe helfen soll.

 

Gruß

Walter

0 Kudos
Message 19 of 35
(2,869 Views)

Hallo Walter,

 

nochmals vielen Dank für deine Hilfe!!!

Ich nutze jetzt das vorletzte Script und das funktioniert weitestgehend. Mit den NoValues funktionierte es nicht so wie ich wollte.

 

Zu 2. Das hatte ich schon eingestellt, will aber trotzdem nicht. Habe den Versuch aber auch verworfen.

 

Eine Frage hätte ich noch:

Ist es möglich die Arraygröße variabel zu gestalten? Also, dass das Array nur die Größe besitzt wieviele positive Werte existieren.

Ich könnte mir das mit If then vorstellen und diesen Wert dann in einer Variablen abspeichern. Leider weiß ich aber nicht so recht wie ich die Werte zählen kann.

 

Viele Grüße Chris

0 Kudos
Message 20 of 35
(2,846 Views)