Forum: Mikrocontroller und Digitale Elektronik Programmablauf mit Keithley 3390 durch SCPI möglich?


von mika (Gast)


Lesenswert?

Hallo Zusammen,

ich befinde mich gerade in einem Praktikum und stehe vor der Aufgabe, 
den vorhandenen Keithley 3390 dazu zu bringen, eine bestimmte Abfolge 
von Sinussignalen für einen jeweils festgelegten Zeitraum direkt 
hintereinander auszugeben.

Über die Suche habe ich bisher nichts gefunden und das Dokument "Syntax 
and Style" vom SCPI Consortium hat mich als Leihen mit seinen 819 Seiten 
auf Anhieb doch etwas erschlagen. Ich konnte bisher nicht einmal 
herausfinden, ob das was ich vorhabe überhaupt mit SCPI umsetzbar ist.


Am besten erkläre ich erst einmal an einem Beispiel, worum es mir 
überhaupt geht:

Nehmen wir bspw. einem Sinus mit einer Frequenz von 100Hz, welche sich 
auch nicht mehr ändern soll. Dann soll bei 100mV_pp gestartet werden und 
dieses Signal für 30 Sekunden beibehalten werden. Anschließend soll das 
Signal auf 200mV_pp ansteigen und wieder für 30 Sekunden gehalten werden 
usw.
Beim letzten Durchgang mit der gewünschten maximalen Amplitude soll nach 
30 Sekunden dieser Maximalwert als DC-Signal nochmal für 30 Sekunden 
beibehalten werden. Dabei wäre es am besten, wenn die letzte Periode 
einfach beim Maximum der oberen Halbwelle endet und dieser Wert als 
DC-Signal beibehalten wird.

Ich hoffe, ich konnte einigermaßen erklären, was mir da vorschwebt, und 
dass ich bei meiner Fragestellung einen angemessenen Ton getroffen habe? 
Ich bin bisher nicht sehr bewandert im schreiben von Forenbeiträgen :)

Als Software zum Ansteuern des 3390 steht mir momentan KI-Wave zur 
Verfügung. LabView wäre im Haus aber auch noch vorhanden.

Für jegliche  Art von konstruktiven Antworten wäre ich wirklich sehr 
dankbar.

Schöne Grüße

von Andi S. (laserandi)


Lesenswert?

Hallo,
ich kann dir empfehlen, dich an die Bedienungsanleitung bzw. Programming 
Manual von Keithley zu halten. Nicht von jedem Gerät werden alle SCPI 
Befehle unterstützt auch wenn es mit SCPI konform ist.

Hast du dir schon die Keithley Webseite angeschaut? Hier findet man oft 
Beispiele und fertige Software (z.B. LabView) vielleicht ist etwas 
dabei, was dir schon weiter hilft.

Das Hauptproblem werden in Deinem Fall die Übergänge bzw. der DC-Wert, 
der zum Schluss erhalten bleiben soll, sein. So wie ich das verstanden 
habe willst Du keine Sprünge in der Spannung haben - richtig?

Gruß
Andi


PS: Ich habe gerade das Manual runter geladen und festgestellt, dass es 
sich um einen Arbitrary Waveform Generator handelt. Schau dir mal 
Kapitel 5-7 an. Da steht wie man sich Signale selber erzeugen kann.

von mika (Gast)


Lesenswert?

Wow, vielen Dank für die flotte Antwort!

Um ehrlich zu sein, bin ich bis jetzt größtenteils in Kapitel 7 des 
Manuals rumgedümpelt, da es da ja auch um das Ansteuern des Geräts geht 
und hatte daher die Beispiele in Kapitel 5 noch garnicht gesehen. Dafür 
schonmal vielein lieben Dank.

Bis ich mir deine anderen Vorschläge in Ruhe ansehen kann, wird es 
sicher Anfang nächster Woche, aber auch dafür möchte ich mich nochmals 
bedanken.

Ich werde wieder was posten, sobald ich mir im Klaren darüber bin, wo 
ich mit den neu gewonnenen Informationen stehe :)

von Andi S. (laserandi)


Lesenswert?

Zu viel des Dankes.
Ich habe gerade mal KI-Wave installiert. Das ist so einfach zu bedienen, 
dass versteht sogar meine Oma. Warum benutzt du das nicht einfach wenn 
du es schon da hast?
Gruß
Andi

von mika (Gast)


Lesenswert?

Das war natürlich das erste, was ich versucht habe :)

Leider ist die in KI-Wave pro Datei verfügbare Zeitspanne bei 
ausreichender Diskretisierung des Sinussignals zu kurz, um den gesamten 
Ablauf in eine Datei packen zu können. Das maximum scheint bei etwa 
260.000 Diskretisierungsschritten zu liegen. Durch rumprobieren habe ich 
festgestellt, dass ich pro Periode mindestens 60 
Diskretisierungsschritte verwenden muss, damit der Sinus sauber 
ausschaut und auch das gewünschte Maximum erreicht. Das führt dann zu 
etwa 3,5 Minuten pro Datei. Falls sich daran noch was drehen lässt, habe 
ich es noch nich herausgefunden.

Ich habe mir für jeden Abschnitt (30 Sekunden waren nur ein Beispiel, 
die tatsächliche Zeitspanne ist länger) bereits eine Datei angelegt, bei 
welcher der Sinus dann auch beim jeweiligen Maximum endet, damit ein 
Übergang ohne Sprung zur nächsten Datei erfolgen kann. Dabei hat mir 
dann der kleine Speicher des Gerätes einen Strich durch die Rechnung 
gemacht, der nach dem Übertragen der dritten oder vierten Datei gemeldet 
hat, dass er voll ist.

Daher war meine Hoffnung, dass diese Limitierung sich durch ein 
Handgeschriebenes Skript umgehen lässt. Deswegen auch meine daurauf 
abzielende Anfrage.

Ich werde jetzt für die ersten Tests ledigilich die KI-Wave Datei für 
den abschließenden Teil verwenden und davor einfach von Hand regeln. Mal 
sehen, wie das funktioniert. Zwischendurch werde ich mich nochmal mit 
den bereits aufgezählten punkten beschäftigen. Vielleicht habe ich ja 
noch ne erleuchtung :)

Für Vorschläge bin ich natürlich immer offen :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.