(31.01.2014 09:54 )GerdW schrieb: Hallo domi,
hier hatte ich dir vor zwei Tagen schon mal vorgeschlagen, das Gerät nur einmal zu konfigurieren und dann nur noch neue Messwerte abzufragen.
Hast du das probiert? Was kam dabei heraus?
Warum machst du das im aktuellen Beispiel-VI nicht?
Genau das wollte ich jetzt machen
Ja um es in das aktuelle VI zu programmieren bräuchte ich am besten die richtigen SCPI Befehle. Oder aber ich mache das eben doch über die Treiberbausteine, da ich mir hier allerdings auch nicht sicher war wie das funktioniert wollte ich es erst mal eigenständig, in dem ich das Treiberbeispiel verändere, versuchen. Später hätte ich das umbebaute Bsp dann in Initialisierung und Messung aufgeteilt und wieder in das Hauptprogamm eingebaut.........wenn es dann funktioniert.
Habe nun aber über die Supporthotline von Agilent schon eine Befehlsanordnung die zumindest gerade im MAX funktoniert hat, sie macht aber noch nicht ganz das was ich will:
*RST %Reset
CONF:TEMP\sTC,K,(@107) %Configuration der Messung
ROUT:SCAN\s(@107) %festgelegt das nur dieser Kanal gelesen werden soll
FORM:READ:TIME\sON %Zeitstempel an
FORM:READ:TIME:TYPE\sREL %Relativer Zeitstempel
TRIG:COUN\sINF %Trigger Count (Trigger Source ist Default auf Intern)
INIT %Initialisieren
{
R? 1 %Abfrage 1 Wert aus dem Buffer
}
ABOR %Abbrechen der Messung
Im MAX habe ich denn hinter jeden Befehl noch \n und dann hat es funktioniert, allerdings liest er nun so oft er kann und ich habe über klicken auf Query viel langsamer ausgelesen, so kam es mir vor als würde ich z.B. gerade den 50 Wert auslesen wobei schon der 900ste in den Buffer geschrieben wurde. Also fehlt noch ein Befehl indem festgelegt wird das erst wieder geschrieben wird wenn ausgelesen wurde, was allerdings nicht so einfach ist, da die Messung auf jedenfall nicht neugestartet werden darf da mir sonst die Zeitstempel verloren gehen
alles nicht so einfach.
Nunja ich lese mal weiter im Programmierhandbuch, falls jemand zu der Syntax eine Anmerkung hat oder weiß wie ich das mache bitte hier antworten
. In dem Treiberbeispiel wird das irgendwie über *ESE , *ESR und *OPC gemacht aber mit diesen Status Registern kenn ich mich leider null aus
Gruß Domi
PS: die geschweiften Klammern sollen die Whileschleife darstellen