| 
	
		
			| 
					27.08.2009, 15:00  
				  Beitrag #1 |  
			|  |  
			|  |  
	
		
			| 
					28.08.2009, 07:47  
				  Beitrag #2 |  
			| 
					
                                                 | olnol
   LVF-Grünschnabel
 
  
 
 Beiträge: 44
 Registriert seit: Aug 2009
 
 Studentenversion 8.6 & Vollversion 8.2
 -
 de
 
 56412
 Deutschland
 
 | mit 20kS/s abgetastes Signal darstellen 
					28 Aufrufe und wirklich keiner kann mir helfen?
				 
				
				 |  |  
			|  |  
	
		
			| 
					28.08.2009, 08:07  (Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2009 08:09  von chrissyPu.) Beitrag #3 |  
			| 
					
                                                 | chrissyPu
   LVF-Stammgast
 
    
 
 Beiträge: 467
 Registriert seit: Jun 2006
 
 2014 PDS
 2006
 DE_EN
 
 64283
 Deutschland
 
 | mit 20kS/s abgetastes Signal darstellen 
					Hi,
 könnte es sein, dass Deiner Schleife ein Timing fehlt? Wie es für mich aussieht (bin nicht so der DAQmx-Nutzer) läuft die durch und wenn alles abgearbeitet ist, wird halt ein Wert von Deiner Karte gesampled. Dann wieder von vorne - ohne Puffer in der Karte (den Du wahrscheinlich nicht hast, weil du Echtzeit-Anzeigen haben willst) ist das nicht deterministisch und du greifst irgendeinen Wert ab, den Du dann in der While-Schleife manuell auf 20 kHz Abtastrate setzt. So du nur einen Wert vergisst, ist Deine Anzeige damit eher falsch als richtig.
 
 Vorschlag: Da für das menschliche Auge ein Update mit 5 Hz eigentlich ausreichend ist: Puffer doch mal 1000, 2000 Werte in der Karte (je nachdem, was die so kann) und lies diese als Block aus und aktualisier damit dann Deine Anzeige. Das ist auf dem Hostrechner auch ressourcensparender als dauernd abzufragen und den Time lag kannst du wahrscheinlich verschmerzen...
 
 Was auch noch ein problem sein könnte ist, dass Zugriffe auf das Frontpanel mehr Rechenleistung brauchen als wenn ich im BD was hin und her schiebe. Auch aus diesen Gründen ist ein Puffern der Daten, bevor man sie anzeigen lässt, keine schlechte Idee...
 
 Viel Erfolg,
 
 ch
 
 PS Da die meisten hier m.E. doch ehr zu den beruflichen LV-Nutzern gehören, sollte man die Nacht nicht zur Antwortzeit hinzuzählen.
 Einen ganzen Tag auf die Antwort warten finde ich ehrlich gesagt nicht zu viel verlangt...
 
				
				 |  
    |  
			|  |  
	
		
			| 
					28.08.2009, 09:45  
				  Beitrag #4 |  
			| 
					
                                                 |   A.Berndsen
   LVF-Team
 
   
 Beiträge: 2.437
 Registriert seit: Feb 2005
 
 8.2.1 - 2011
 2004
 DE
 
 724xx
 Deutschland
 
 | mit 20kS/s abgetastes Signal darstellen 
					' schrieb:28 Aufrufe und wirklich keiner kann mir helfen? 
Ein Moderator liest Deine Frage auch nur mal um zu sehen, ob alles mit Deinem Beitrag ok ist. 
Und jeder opfert hier freiwillig Zeit, um sich mit einer Frage auseinander zu setzen. Das ist aber noch keine Verpflichtung zu einer Antwort.
 
Schau mal das Beispiel an. Damit kommst Du selber auf die Lösung.
      graph_erstellen.vi  (Größe: 17,8 KB / Downloads: 340) 
 
Grüße 
Andreas
				 
 
				
				 |  |  
			|  |  
	
		
			| 
					28.08.2009, 10:24  (Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2009 10:29  von olnol.) Beitrag #5 |  
			| 
					
                                                 | olnol
   LVF-Grünschnabel
 
  
 
 Beiträge: 44
 Registriert seit: Aug 2009
 
 Studentenversion 8.6 & Vollversion 8.2
 -
 de
 
 56412
 Deutschland
 
 | mit 20kS/s abgetastes Signal darstellen 
					Zitat:könnte es sein, dass Deiner Schleife ein Timing fehlt? Wie es für mich aussieht (bin nicht so der DAQmx-Nutzer) läuft die durch und wenn alles abgearbeitet ist, wird halt ein Wert von Deiner Karte gesampled. Dann wieder von vorne - ohne Puffer in der Karte (den Du wahrscheinlich nicht hast, weil du Echtzeit-Anzeigen haben willst) ist das nicht deterministisch und du greifst irgendeinen Wert ab, den Du dann in der While-Schleife manuell auf 20 kHz Abtastrate setzt. 
Also ich stelle über mein TimingVi ausserhalb der WhileSchleife eine kontinuierliche Datenerfassung mit einer Abtastrate von 20kS/s ein. In meiner While-Schleife lese ich dann pro Durchlauf immer einen Sample aus dem Puffer meiner Karte. Aber ich lese doch nicht irgendeinen Wert mit dieser Methode aus, sondern doch eig nach der Reihenfolge (FIFO) oder habe ich da was falsch verstanden?? 
Das mit dem Auslesen mehrerer Samples gleichzeitig stellt sich einwenig schwierig da. Und zwar muss ich jeden Abtastwert einzeln verarbeiten. 
 Zitat:Schau mal das Beispiel an. Damit kommst Du selber auf die Lösung. 
ich hab hier im mom leider nur V8.2
 
PS: sorry für mein Drängeln   
				
				 |  
    |  
			|  |  
	
		
			| 
					28.08.2009, 12:22  
				  Beitrag #6 |  
			|  |  
			|  |  
	
		
			| 
					28.08.2009, 12:33  
				  Beitrag #7 |  
			| 
					
                                                 |   Y-P
   ☻ᴥᴥᴥ☻ᴥᴥᴥ☻
 
   
 Beiträge: 12.612
 Registriert seit: Feb 2006
 
 Developer Suite Core -> LabVIEW 2015 Prof.
 2006
 EN
 
 71083
 Deutschland
 
 | mit 20kS/s abgetastes Signal darstellen 
					Drängeln hat hier den blöden Nebeneffekt, dass Du (bzw. jeder der drängelt) unter Umständen einfach nicht mehr beachtet wird.    
Gruß Markus
 ' schrieb:PS: sorry für mein Drängeln
 
--------------------------------------------------------------------------Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
 --------------------------------------------------------------------------
 
				
				 |  |  
			|  |  
	
		
			| 
					04.09.2009, 09:52  
				  Beitrag #8 |  
			| 
					
                                                 | johannes_r
   LVF-Gelegenheitsschreiber
 
   
 
 Beiträge: 67
 Registriert seit: Apr 2009
 
 LV2010/2009/8.6.1...
 2010
 EN
 
 97450
 Deutschland
 
 | mit 20kS/s abgetastes Signal darstellen 
					Ich bin zwar auch kein wirklicher Experte aber ich bin der Meinung, dass du mit deinen Einstellungen eine Fehlermeldung bekommen würdest wenn du deinen Fehlerausgang des DAQmx read mit deinem Abbruchsymbol der while Schleife verbindest. Wenn du einen Windows rechner hast und die while Schleife nicht getaktet ist dann läuft sie so schnell sie kann -->hohe cpu auslast. Und außerdem wird sie glaub ich eh nicht mit 20kHz laufen. Bei Windows vielleicht etwas über 1kHz und das nicht deterministisch. Du hast schon recht mit dem FIFO, aber der Speicher auf der Karte ist auch begrenzt und wenn du zu langsam ausliest ist halt nun irgendwann mal der Speicher voll. Dann gehen Samples verloren und du bekommst eine Fehlermeldung... 
Also entweder mehrere Samples auslesen oder es geht nur ca 1kHz Samplerate... 
Wie gesagt ich bin nicht so erfahren wie manch anderer hier, aber zumindest müsste etwas wahres dabei sein   
gruß johannes
				
				
				 |  
    |  
			|  |  
	
		
			| 
					04.09.2009, 13:25  
				  Beitrag #9 |  
			|  |  
			|  |  |  |