2016-03-24 9 views
2

Ich versuche, Daten von einem DPO3034 Umfang abzurufen, indem diese die folgenden Befehle zu senden:Kurvenübertragung für Tektronix DPO3000 Scope

DATA:SOURCE CH1 
DATA:ENCDG ASC 
DATA:START 
CURVE? 

ich 98, 98, 98, 97, 97, 98, 98,... Wie kann ich diese im ASCII-Format Werte in Spannungen umwandeln?

Ich habe versucht, auch das Abrufen von Daten, die binär formatiert sind

DATA:SOURCE CH1 
DATA:ENCDG RIBINARY 
DATA:START 
CURVE? 

ich #520000a b a b b a b c b c a b a a a b^b b a b a b.... Wie kann ich konvertieren diese richtige Datenpunkte?

Command reference for the DPO3000

Antwort

1

Diese Werte Sie lesen sind CURVE? verwenden, sind digitale Wert, der Verstärkung hat und versetzt sie in die (in der Regel) Volt drehen. Sie sollten auch diese Werte lesen:

double YZero = double.Parse(io.Query("WFMO:YZE?")); 
double YMult = double.Parse(io.Query("WFMO:YMU?")); 
double YOff = double.Parse(io.Query("WFMO:YOF?")); 

Und dann sollten Sie die tatsächliche Spannung von jedem Wert rawValue im Array berechnen Sie erhalten von CURVE?:

double voltValue = YZero - YOff * YMult + (YMult * double.Parse(rawValue)); 

gleiche gilt für binäre Daten, analysieren nur es in int16 (abhängig von der Bitlänge jeder Nummer)

PS Ich glaube, Ihr Handbuch ist nicht das neueste, ich empfehle das Herunterladen von diesen von Tektonix Website.