
public class KeithleyDevice extends org.lsst.ccs.subsystem.monitor.Device implements BiasDevice, PhotoDiodeDevice
| Constructor and Description |
|---|
KeithleyDevice()
Constructor *
**************************************************************************
|
KeithleyDevice(String host,
int port)
KeithleyDevice constructor - put Keithley in initial subsystem state
|
| Modifier and Type | Method and Description |
|---|---|
double |
accumBuffer(int nreads,
double nplc)
accumBuffer: start the accumulation of readings into the devices
internal buffer
**************************************************************************
|
double |
accumBuffer(int nreads,
double nplc,
boolean wait)
accumBuffer: start the accumulation of readings into the devices
internal buffer
**************************************************************************
|
protected int[] |
checkChannel(String name,
int hwChan,
String type,
String subtype)
Checks a channel's parameters for validity.
|
void |
clearBuffer()
Clear buffer *
**************************************************************************
|
protected void |
close()
Closes the connection.
|
protected void |
configure(org.lsst.ccs.subsystem.monitor.Monitor mon)
Performs configuration.
|
double |
getCurrent()
Shows the set current.
|
String |
getCurrentLimit()
Shows the soft current limit.
|
double |
getLast_curr() |
double |
getLast_volt() |
double |
getRunBias(int cfgstate)
Returns the bias value for acquisition *
**************************************************************************
|
int |
getState() |
StringBuilder |
getString(double[] values)
Converts an array of numbers to a string.
|
double |
getVoltage()
Shows the set voltage.
|
String |
getVoltageLimit()
Shows the soft voltage limit.
|
protected void |
initChannel(int chan,
int type,
int subtype)
Initializes a channel.
|
protected void |
initialize()
Initializes the device
**************************************************************************
|
boolean |
isAccumInProgress()
Tells whether PD accumulation is in progress *
**************************************************************************
|
boolean |
isDoPDPlot() |
void |
open()
Opens connection to a device using all defaults *
**************************************************************************
|
String |
open(String host)
Opens connection to a device.
|
String |
open(String host,
int port)
Opens connection to a device.
|
String |
openftdi(String host,
int port)
Opens FTDI connection to a device.
|
String |
query(String str) |
String |
query(String str1,
String str2) |
void |
rampVolts(double duration,
double value)
Ramps to the desired voltage *
**************************************************************************
|
void |
rampVolts(double duration,
double value,
int nsteps)
Ramps to the desired voltage over a given time and for nsteps
|
double[][] |
readBuffer()
Read buffer *
**************************************************************************
|
double[][] |
readBuffer(String filename)
Read buffer and dump it to a file
|
String |
readBufferStr() |
protected double |
readChannel(int chan,
int type)
Reads a channel.
|
double |
readCurrent()
Reads the actual current.
|
double |
readVoltage()
Reads the actual voltage.
|
void |
reset()
reset - reset the Keithley to a known default state
|
void |
send(String str) |
void |
send(String str1,
String str2) |
void |
setAbort(boolean state) |
void |
setArmCount(int count)
Sets ARM count *
**************************************************************************
|
void |
setBuffSize(int value)
Set buffer size *
**************************************************************************
|
void |
setCfg(TSConfig cfg) |
void |
setChannel(int value)
Sets the channel.
|
void |
setCurrent(double value)
Sets the current.
|
void |
setCurrentLimit(double value)
Sets the soft current limit.
|
void |
setCurrentRange(double value)
Sets the current range *
**************************************************************************
|
void |
setDisplay(boolean dstate)
Sets the Display ON(true)/OFF(false) *
|
void |
setDoPDPlot(boolean doPDPlot) |
void |
setDPSF(hep.aida.IDataPointSetFactory dpsf)
Sets the data point set factory address *
**************************************************************************
|
void |
setOutput(int state)
Turns the output on or off.
|
void |
setRate(double rate)
Sets the read rate in PLC *
**************************************************************************
|
void |
setRunBias(double runBias,
int cfgstate)
Sets the bias value for acquisition *
**************************************************************************
|
void |
setState(int istate) |
void |
setTimeout(double nsec)
Sets the timeout
**************************************************************************
|
void |
setTrigCount(int value)
Sets TRIGger count *
**************************************************************************
|
void |
setVoltage(double value)
Sets the voltage.
|
void |
setVoltageAcq(int cfgstate)
Sets the voltage to the value needed for acquisition.
|
void |
setVoltageLimit(double value)
Sets the soft voltage limit.
|
void |
setVoltageRange(double value)
Sets the voltage range *
**************************************************************************
|
boolean |
showOutput()
Shows the output state.
|
void |
softReset()
softReset - reset the Keithley to a known default state w/o initializing
all settings
|
void |
zeroCorrectCurrent()
Zero correct the current *
**************************************************************************
|
addChannel, addConfigValues, addLine, checkHwLine, checkLine, checkOnline, checkTimeout, disable, dropChannel, enable, getConfigValues, getFullName, getOutputLines, initChannel, initSensors, isHwLineSet, isLineSet, isOnline, isTimeout, readChannelGroup, readChannelNow, readSensors, setHwLine, setLine, setLineWarm, setOnline, setOutputLines, testOnlinegetChildren, getEnvironment, setEnvironmentclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitisOnlineisOnlinechange, dropSubmittedChanges, getCheckedValueFromConfiguration, getComponentByName, getName, getParent, getParentObject, getSubmittedChanges, getSubsystem, init, isParameterConfigurable, notifyChange, notifyChangeWithoutPreliminaryChecks, postStart, printConfigurableParameters, setBulkParameter, shutdownNow, start, submitChange, submitChanges, validateBulkChangepublic KeithleyDevice(String host, int port) throws org.lsst.ccs.drivers.commons.DriverException
host - device addressport - port or baud * * @param runBias CCD bias voltage while
running *
**************************************************************************org.lsst.ccs.drivers.commons.DriverExceptionpublic KeithleyDevice()
public void setCfg(TSConfig cfg)
setCfg in interface BiasDevicesetCfg in interface PhotoDiodeDeviceprotected void configure(org.lsst.ccs.subsystem.monitor.Monitor mon)
configure in class org.lsst.ccs.subsystem.monitor.Device@Command(name="open", description="Open connection to device using defaults") public void open() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverExceptionprotected void close()
close in class org.lsst.ccs.subsystem.monitor.Device@Command(name="init", description="(re) initialize connection") protected void initialize()
initialize in class org.lsst.ccs.subsystem.monitor.Devicepublic void setDPSF(hep.aida.IDataPointSetFactory dpsf)
setDPSF in interface BiasDevicesetDPSF in interface PhotoDiodeDevice@Command(name="open", description="Open connection to device") public String open(@Argument(name="host",description="Host name") String host) throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="open", description="Open connection to device") public String open(@Argument(name="host",description="Host name") String host, @Argument(name="port",description="Port number") int port) throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="openftdi", description="Open FTDI connection to device") public String openftdi(@Argument(name="serialname",description="Serial device name") String host, @Argument(name="baud",description="baud rate") int port) throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="setarmcount", description="Set the ARM count") public void setArmCount(@Argument(name="count",description="ARM count") int count)
@Command(name="settrigcount", description="Set the trigger count") public void setTrigCount(@Argument(name="value",description="trigger count") int value) throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="setdisplay", description="Set the display") public void setDisplay(@Argument(name="OnOff",description="true(ON)/false(OFF)") boolean dstate)
setDisplay in interface BiasDevicesetDisplay in interface PhotoDiodeDevicedstate - org.lsst.ccs.drivers.commons.DriverException - **************************************************************************@Command(name="clrbuff", description="Clears the Keithley read buffer") public void clearBuffer() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(type=QUERY, name="accumBuffer", description="start the buffer accumulation") public double accumBuffer(@Argument(name="nreads",description="#reads (armcount)") int nreads, @Argument(name="nplc",description="#Pulse Line Counts btwn reads (0.01->60.)") double nplc)
accumBuffer in interface BiasDeviceaccumBuffer in interface PhotoDiodeDevicenreads - nplc - @Command(type=QUERY, name="accumBuffer", description="start the buffer accumulation") public double accumBuffer(@Argument(name="nreads",description="#reads (armcount)") int nreads, @Argument(name="nplc",description="#Pulse Line Counts btwn reads (0.01->60.)") double nplc, @Argument(name="wait",description="to wait (true) or not to (false)") boolean wait)
accumBuffer in interface BiasDeviceaccumBuffer in interface PhotoDiodeDevicenreads - nplc - wait - @Command(type=QUERY, name="readBuffer", description="read the buffer") public double[][] readBuffer()
readBuffer in interface BiasDevicereadBuffer in interface PhotoDiodeDevice@Command(type=QUERY, name="readBuffer", description="read the buffer and dump to file") public double[][] readBuffer(@Argument(name="filename",description="output filename for the Keithley buffered values") String filename)
filename - **************************************************************************@Command(name="readBufferStr", description="read the buffer and returns as a string") public String readBufferStr() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="setBuffSize", description="Set the buffer size.") public void setBuffSize(@Argument(name="value",description="buffer size") int value)
setBuffSize in interface BiasDevicesetBuffSize in interface PhotoDiodeDevicevalue - @Command(name="setVoltageRange", description="Set the voltage range. Can be 10V, 50V or 500V") public void setVoltageRange(@Argument(name="value",description="Voltage Range to set") double value)
setVoltageRange in interface BiasDevicesetVoltageRange in interface PhotoDiodeDevicevalue - @Command(name="setVoltage", description="Set the voltage") public void setVoltage(@Argument(name="value",description="Voltage to set") double value)
setVoltage in interface BiasDevicesetVoltage in interface PhotoDiodeDevicevalue - @Command(name="setChannel", description="not implemented") public void setChannel(@Argument(name="value",description="Channel to select") int value)
setChannel in interface PhotoDiodeDevicevalue - @Command(name="setVoltageAcq", description="Set the voltage to the acquisition set point") public void setVoltageAcq(int cfgstate)
setVoltageAcq in interface BiasDevicesetVoltageAcq in interface PhotoDiodeDevicecfgstate - @Command(type=QUERY, name="rampVolts", description="ramp the voltage") public void rampVolts(@Argument(name="duration",description="number of seconds to ramp from current voltage to desired voltage") double duration, @Argument(name="value",description="Voltage to ramp to") double value)
rampVolts in interface BiasDevicerampVolts in interface PhotoDiodeDeviceduration - value - @Command(type=QUERY, name="rampVolts", description="ramp the voltage") public void rampVolts(@Argument(name="duration",description="number of seconds to ramp from current voltage to desired voltage") double duration, @Argument(name="value",description="Voltage to ramp to") double value, @Argument(name="nsteps",description="number of steps") int nsteps)
rampVolts in interface BiasDeviceduration - value - nsteps - **************************************************************************@Command(description="return last current measurement") public double getLast_curr()
getLast_curr in interface BiasDevicegetLast_curr in interface PhotoDiodeDevice@Command(description="return last voltage measurement") public double getLast_volt()
getLast_volt in interface BiasDevicegetLast_volt in interface PhotoDiodeDevice@Command(name="getVoltage", description="Show the set voltage") public double getVoltage() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(type=QUERY, name="readVoltage", description="Read the actual voltage") public double readVoltage()
readVoltage in interface BiasDevicereadVoltage in interface PhotoDiodeDevice@Command(name="setVoltageLimit", description="Set the soft voltage limit") public void setVoltageLimit(@Argument(name="value",description="Voltage limit to set") double value) throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="getVoltageLimit", description="Show the soft voltage limit") public String getVoltageLimit() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="setCurrentRange", description="Set the current range") public void setCurrentRange(@Argument(name="value",description="Current Range to set") double value)
setCurrentRange in interface BiasDevicesetCurrentRange in interface PhotoDiodeDevice@Command(name="setCurrent", description="Set the current") public void setCurrent(@Argument(name="value",description="Current to set") double value)
setCurrent in interface BiasDevicesetCurrent in interface PhotoDiodeDevice@Command(name="zeroCorrectCurrent", description="Zero correct the current") public void zeroCorrectCurrent() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverExceptionpublic double getCurrent()
@Command(type=QUERY, name="readCurrent", description="Read the actual current") public double readCurrent()
readCurrent in interface BiasDevicereadCurrent in interface PhotoDiodeDevice@Command(type=QUERY, name="isAccumInProgress", description="Are the current readings being accumulated") public boolean isAccumInProgress()
isAccumInProgress in interface PhotoDiodeDevice@Command(name="setCurrentLimit", description="Set the soft current limit") public void setCurrentLimit(@Argument(name="value",description="Current limit to set") double value) throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(type=QUERY, name="showcurrlim", description="Show the soft current limit") public String getCurrentLimit() throws org.lsst.ccs.drivers.commons.DriverException
org.lsst.ccs.drivers.commons.DriverException@Command(name="setRate", description="sets the read rate in plc") public void setRate(@Argument(name="rate",description="number of PLC") double rate)
setRate in interface BiasDevicesetRate in interface PhotoDiodeDevice@Command(name="setOutput", description="Turn output on or off. 1 ==> ON") public void setOutput(@Argument(name="state",description="Output state: on or off") int state)
setOutput in interface BiasDevicesetOutput in interface PhotoDiodeDevice@Command(type=QUERY, name="showoutput", description="Show the output state") public boolean showOutput()
showOutput in interface BiasDeviceshowOutput in interface PhotoDiodeDevicepublic StringBuilder getString(double[] values)
@Command(name="setTimeout", description="set timeout for Keithley SCPI communication") public void setTimeout(@Argument(name="nsec",description="length of timeout in seconds") double nsec)
setTimeout in interface BiasDevicesetTimeout in interface PhotoDiodeDevicensec - protected int[] checkChannel(String name, int hwChan, String type, String subtype) throws Exception
checkChannel in class org.lsst.ccs.subsystem.monitor.DeviceExceptionprotected void initChannel(int chan,
int type,
int subtype)
initChannel in class org.lsst.ccs.subsystem.monitor.Device@Command(name="reset", description="reset trips etc...") public void reset()
reset in interface BiasDevicereset in interface PhotoDiodeDevice@Command(name="softReset", description="soft reset etc...") public void softReset()
softReset in interface BiasDevicesoftReset in interface PhotoDiodeDeviceprotected double readChannel(int chan,
int type)
readChannel in class org.lsst.ccs.subsystem.monitor.Devicechan - type - @Command(name="setrunbias", description="Sets the bias value for acquisition") public void setRunBias(double runBias, int cfgstate)
setRunBias in interface BiasDevicesetRunBias in interface PhotoDiodeDevice@Command(type=QUERY, name="getRunBias", description="Returns the bias value for acquisition") public double getRunBias(int cfgstate)
getRunBias in interface BiasDevicegetRunBias in interface PhotoDiodeDevice@Command(name="abort", description="abort or clear abort for any long operation") public void setAbort(boolean state)
setAbort in interface BiasDevicesetAbort in interface PhotoDiodeDevice@Command(name="setstate", description="set keithley device status") public void setState(int istate)
setState in interface BiasDevicesetState in interface PhotoDiodeDevice@Command(type=QUERY, name="getState", description="get keithley device status") public int getState()
getState in interface BiasDevicegetState in interface PhotoDiodeDevicepublic boolean isDoPDPlot()
@Command(description="set whether PD plots are produced") public void setDoPDPlot(@Argument(description="true for do plots") boolean doPDPlot)
setDoPDPlot in interface BiasDevicesetDoPDPlot in interface PhotoDiodeDevice@Command(name="send", description="write a string to the device") public void send(String str)
send in interface BiasDevicesend in interface PhotoDiodeDevice@Command(name="send", description="write a string to the device") public void send(String str1, String str2)
send in interface BiasDevicesend in interface PhotoDiodeDevice@Command(name="query", description="write a command and read response") public String query(String str)
query in interface BiasDevicequery in interface PhotoDiodeDevice@Command(name="query", description="write a command and read response") public String query(String str1, String str2)
query in interface BiasDevicequery in interface PhotoDiodeDeviceCopyright © 2016 LSST. All rights reserved.