23.07.2013, 17:50
Beitrag #2
|
Trinitatis
LVF-Guru
Beiträge: 1.694
Registriert seit: May 2008
7.1 / 8.0 /2014-1, 18
2002
DE
18055
Deutschland
|
RE: Instantaner Wert zu instantanem Zeit
Zitat:Das klappt alles auch soweit und so gut ,bloß habe ich das Problem , dass die Sekunden von 0,000 s beim nächsten Wert(Durchlauf) auf 0,1 s springt ,obwohl ein Messintervall 100 ms betragen
Hallo Q62,
mache ich einen Denkfehlr, oder sind 100ms nicht genau 0,1s?
Gruß, Marko
|
|
|
23.07.2013, 20:59
(Dieser Beitrag wurde zuletzt bearbeitet: 23.07.2013 21:01 von Q62.)
Beitrag #3
|
Q62
LVF-Grünschnabel
Beiträge: 22
Registriert seit: May 2013
2012
2013
DE
Sonstige
|
RE: Instantaner Wert zu instantanem Zeit
(23.07.2013 17:50 )Trinitatis schrieb: Zitat:Das klappt alles auch soweit und so gut ,bloß habe ich das Problem , dass die Sekunden von 0,000 s beim nächsten Wert(Durchlauf) auf 0,1 s springt ,obwohl ein Messintervall 100 ms betragen
Hallo Q62,
mache ich einen Denkfehlr, oder sind 100ms nicht genau 0,1s?
Gruß, Marko
Hi Marko,
danke erst einmal das du dich meldest. Richtig 100ms sind 0,1 s , bei 50 Hz hast du 20 ms für eine Periode.
Das heisst wenn mein Messintervall von 0 bis 100 ms sein soll, passen 5 Perioden in den Messintervall.
Nun aber zurück zum Messen: Wenn ich z.b. ein Signal derart messe habe ich nichts von dem instantanem Wert in dem Messintervall .
Ich überspringe quasi das Messintervall und habe nichts von dem instantanen Wert und deshalb will ich "schneller" die Zeit messen und nicht langsam
|
|
|
23.07.2013, 21:54
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Instantaner Wert zu instantanem Zeit
(23.07.2013 20:59 )Q62 schrieb: Hi Marko,
danke erst einmal das du dich meldest. Richtig 100ms sind 0,1 s , bei 50 Hz hast du 20 ms für eine Periode.
Das heisst wenn mein Messintervall von 0 bis 100 ms sein soll, passen 5 Perioden in den Messintervall.
Nun aber zurück zum Messen: Wenn ich z.b. ein Signal derart messe habe ich nichts von dem instantanem Wert in dem Messintervall .
Ich überspringe quasi das Messintervall und habe nichts von dem instantanen Wert und deshalb will ich "schneller" die Zeit messen und nicht langsam
Aber kehren wir zurück zu deinem VI und besprechen/kritisieren einige Merkwürdigkeiten.
1) Zum Erstellen von Pfaden solltest du Build Path und Strip Path verwenden. Durch einen String als "Verzeichnis"-Start (das Control "Pfad") ist das VI nicht mehr einfach konvertierbar auf andere Dateisysteme, bei denen z.B. ein / anstatt \ verwendet wird.
2) Was erhoffst du dir mit der Mess-While Schleife zu erreichen? Wozu verwendest du "Delete From Array", hier langt auch "Index Array". Weshalb 2x dieselbe Spannung per "Delete From Array" herausholen? Wieso gibst du nur den allerletzten Messdurchlauf an das Speicher-VI außerhalb der While-Schleife weiter? Was erhoffst du durch das "Zeit-Array" (soll heißen das Array, dass du per Schieberegister zusammenbaust) zu erreichen?
Zusammenfassend: Laut deiner Aussage funzt (fast) alles. Ich möchte das stark bezweifeln. Zumindest funktioniert es sicher nicht so, wie du dir vielleicht vorstellst, dass es funktionieren sollte.
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.07.2013, 07:46
(Dieser Beitrag wurde zuletzt bearbeitet: 24.07.2013 07:50 von GerdW.)
Beitrag #6
|
GerdW
______________
Beiträge: 17.465
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Instantaner Wert zu instantanem Zeit
Hallo,
noch ein weiteres Problem:
Du baust in deiner Messschleife ein 2D-Array zusammen mit 3 Spalten: einmal "relative Zeit", zweimal Spannungswerte. Du bekommst 1000 Samples vom DAQ-Assi für die beiden Spannungen geliefert - und "klebst" da einfach eine Zeitspalte davor, die überhaupt nichts mit den Zeitpunkten der Samples zu tun hat...
Daraus resultieren gleich zwei Fehler: die von dir beobachteten 0,1s-Intervalle an der Zeitspalte und zweitens die vielen Nullen ab Mitte 15% der Zeitspalte...
P.S.: Ich finde es immer wieder toll, wie Leute riesige ConcatString (mit vielen Zusatzfunktionen) aufbauen, statt nur ein einziges gut selbstdokumentierendes FormatIntoString zu verwenden...
|
|
|
24.07.2013, 09:54
Beitrag #7
|
Q62
LVF-Grünschnabel
Beiträge: 22
Registriert seit: May 2013
2012
2013
DE
Sonstige
|
RE: Instantaner Wert zu instantanem Zeit
(23.07.2013 21:54 )jg schrieb: (23.07.2013 20:59 )Q62 schrieb: Hi Marko,
danke erst einmal das du dich meldest. Richtig 100ms sind 0,1 s , bei 50 Hz hast du 20 ms für eine Periode.
Das heisst wenn mein Messintervall von 0 bis 100 ms sein soll, passen 5 Perioden in den Messintervall.
Nun aber zurück zum Messen: Wenn ich z.b. ein Signal derart messe habe ich nichts von dem instantanem Wert in dem Messintervall .
Ich überspringe quasi das Messintervall und habe nichts von dem instantanen Wert und deshalb will ich "schneller" die Zeit messen und nicht langsam
Aber kehren wir zurück zu deinem VI und besprechen/kritisieren einige Merkwürdigkeiten.
1) Zum Erstellen von Pfaden solltest du Build Path und Strip Path verwenden. Durch einen String als "Verzeichnis"-Start (das Control "Pfad") ist das VI nicht mehr einfach konvertierbar auf andere Dateisysteme, bei denen z.B. ein / anstatt \ verwendet wird.
2) Was erhoffst du dir mit der Mess-While Schleife zu erreichen? Wozu verwendest du "Delete From Array", hier langt auch "Index Array". Weshalb 2x dieselbe Spannung per "Delete From Array" herausholen? Wieso gibst du nur den allerletzten Messdurchlauf an das Speicher-VI außerhalb der While-Schleife weiter? Was erhoffst du durch das "Zeit-Array" (soll heißen das Array, dass du per Schieberegister zusammenbaust) zu erreichen?
Zusammenfassend: Laut deiner Aussage funzt (fast) alles. Ich möchte das stark bezweifeln. Zumindest funktioniert es sicher nicht so, wie du dir vielleicht vorstellst, dass es funktionieren sollte.
Gruß, Jens
Erstmals danke Jens das du auf meinen Beitrag eingegangen bist ,
1) die Stringkonvertierung habe ich nun mit Build Path ersetzt
2)"Was erhoffst du dir mit der Mess-While Schleife zu erreichen?" Sie dient sie dazu ,dass das zu jedem instantanen Wert eine instantane Zeit zugeordnet wird um daaraus ein Array zu basteln.
"Wozu verwendest du "Delete From Array", hier langt auch "Index Array"" weil ich anfangs nichts anderes gefunden hab
"Weshalb 2x dieselbe Spannung per "Delete From Array" herausholen?" Das wird vom Funktionsgenerator als Test erzeugt ,habe jetzt einfach mal 2mal die selbe Spannung genommen(spielt ja auch keine Rolle).
"Wieso gibst du nur den allerletzten Messdurchlauf an das Speicher-VI außerhalb der While-Schleife weiter?" Weil ich durch den allerletzten Messdurchlauf den allerletzten instantanen Spannung ein Wert zuweise.
|
|
|
24.07.2013, 10:14
(Dieser Beitrag wurde zuletzt bearbeitet: 24.07.2013 10:18 von Q62.)
Beitrag #8
|
Q62
LVF-Grünschnabel
Beiträge: 22
Registriert seit: May 2013
2012
2013
DE
Sonstige
|
RE: Instantaner Wert zu instantanem Zeit
(24.07.2013 07:46 )GerdW schrieb: Hallo,
noch ein weiteres Problem:
Du baust in deiner Messschleife ein 2D-Array zusammen mit 3 Spalten: einmal "relative Zeit", zweimal Spannungswerte. Du bekommst 1000 Samples vom DAQ-Assi für die beiden Spannungen geliefert - und "klebst" da einfach eine Zeitspalte davor, die überhaupt nichts mit den Zeitpunkten der Samples zu tun hat...
Daraus resultieren gleich zwei Fehler: die von dir beobachteten 0,1s-Intervalle an der Zeitspalte und zweitens die vielen Nullen ab Mitte 15% der Zeitspalte...
P.S.: Ich finde es immer wieder toll, wie Leute riesige ConcatString (mit vielen Zusatzfunktionen) aufbauen, statt nur ein einziges gut selbstdokumentierendes FormatIntoString zu verwenden...
Danke erst einmal für deine Antwort,
""klebst" da einfach eine Zeitspalte davor, die überhaupt nichts mit den Zeitpunkten der Samples zu tun hat..." Habe ich aber schon erklärt deswegen frage ich gibt es da nicht eine andere Möglichkeit. Das habe ich ja gemacht um zu zeigen wo ich hilfe brauche .
"zweitens die vielen Nullen ab Mitte 15% der Zeitspalte..."
das hast du richtig erkannt
gibt es da kein besseren Timer?
(24.07.2013 05:48 )Achim schrieb: (23.07.2013 20:59 )Q62 schrieb: Nun aber zurück zum Messen: Wenn ich z.b. ein Signal derart messe habe ich nichts von dem instantanem Wert in dem Messintervall .
Ich überspringe quasi das Messintervall und habe nichts von dem instantanen Wert und deshalb will ich "schneller" die Zeit messen und nicht langsam
Du bastelst dir einen Zeitstempel...das ist vollkommen überflüssig. Verwende mal den "Waveform Data type", da ist der Zeitstempel (von der Hardware!) automatisch mit dabei. Dazu gibts jede Menge Beispiele im Example Finder.
Und dann ist der Zeitstempel auch absolut äquidistant, weil sich der DAQmx-Treiber bzw. die Karte darum kümmert! Und dann kriegst du auch mehr Messwerte innerhalb von 100ms, nämlich soviele wie du per Abtastrate (meinetwegen auch per DAQ-Assi) einstellst!
A.
Danke A.,
http://digital.ni.com/public.nsf/allkb/B...DF00363B10
Wenn du das meinst, habe ich getestet funktioniert nicht.
Wenn du was anderes meinst , bitte über so ein ähnlichen Link posten , damit ich weiss welcher es ist .
|
|
|
24.07.2013, 10:17
(Dieser Beitrag wurde zuletzt bearbeitet: 24.07.2013 10:19 von GerdW.)
Beitrag #9
|
GerdW
______________
Beiträge: 17.465
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Instantaner Wert zu instantanem Zeit
Hallo Q62,
siehe Beitrag #5...
Zitat:Wenn du das meinst, habe ich getestet funktioniert nicht.
Ja, das meinte Achim. Wenn es nicht funktioniert, dann ist irgendwas in deinem VI nicht in Ordnung.
Außerdem ist "funktioniert nicht" keine wirklich gute Fehlerbeschreibung...
|
|
|
| |