Files
ADAndor/ADApp/Db/andor3.template

343 lines
8.1 KiB
Plaintext

# Database for the records specific to the Andor SDK3 cameras
# Phillip Sorensen
# October 8, 2012
###############################################################################
# Note: The following are records defined in ADBase.template. #
# We are changing some of the fields here to reflect valid values for #
# Andor SDK3 #
###############################################################################
###############################################################################
# These records control the data type and color. #
###############################################################################
# Only unsigned 16 and 32 bit integers are supported. Determined by PixelEncoding
record(mbbo, "$(P)$(R)DataType")
{
field(ZRST, "UInt16")
field(ZRVL, "3")
field(ONST, "UInt32")
field(ONVL, "5")
field(TWST, "")
field(TWVL, "")
field(THST, "")
field(THVL, "")
field(FRST, "")
field(FRVL, "")
field(FVST, "")
field(FVVL, "")
field(SXST, "")
field(SXVL, "")
field(SVST, "")
field(SVVL, "")
}
record(mbbi, "$(P)$(R)DataType_RBV")
{
field(ZRST, "UInt16")
field(ZRVL, "3")
field(ONST, "UInt32")
field(ONVL, "5")
field(TWST, "")
field(TWVL, "")
field(THST, "")
field(THVL, "")
field(FRST, "")
field(FRVL, "")
field(FVST, "")
field(FVVL, "")
field(SXST, "")
field(SXVL, "")
field(SVST, "")
field(SVVL, "")
}
# Only Mono color mode is supported at this time
record(mbbo, "$(P)$(R)ColorMode")
{
field(ZRST, "Mono")
field(ZRVL, "0")
field(ONST, "")
field(ONVL, "")
field(TWST, "")
field(TWVL, "")
field(THST, "")
field(THVL, "")
field(FRST, "")
field(FRVL, "")
field(FVST, "")
field(FVVL, "")
field(SXST, "")
field(SXVL, "")
field(SVST, "")
field(SVVL, "")
}
record(mbbi, "$(P)$(R)ColorMode_RBV")
{
field(ZRST, "Mono")
field(ZRVL, "0")
field(ONST, "")
field(ONVL, "")
field(TWST, "")
field(TWVL, "")
field(THST, "")
field(THVL, "")
field(FRST, "")
field(FRVL, "")
field(FVST, "")
field(FVVL, "")
field(SXST, "")
field(SXVL, "")
field(SVST, "")
field(SVVL, "")
}
# The following records are specific to the Andor SDK3
# Note that we don't define the choices for mbbo and mbii records here.
# These choices are built at iocInit by reading the list of valid choices
# from the Andor SDK. This is very nice because they automatically change
# depending on the capabilities of the camera.
###############################################################################
# These records are additional acquisition parameters #
###############################################################################
record(ao, "$(P)$(R)FrameRate")
{
field(PINI, "YES")
field(DTYP, "asynFloat64")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_FRAME_RATE")
field(VAL, "10")
}
record(ai, "$(P)$(R)FrameRate_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_FRAME_RATE")
field(PREC, "3")
field(SCAN, "I/O Intr")
}
record(mbbo, "$(P)$(R)PreAmpGain")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_PREAMP_GAIN")
}
record(mbbi, "$(P)$(R)PreAmpGain_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_PREAMP_GAIN")
field(SCAN, "I/O Intr")
}
record(mbbo, "$(P)$(R)ReadoutRate")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_READOUT_RATE")
}
record(mbbi, "$(P)$(R)ReadoutRate_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_READOUT_RATE")
field(SCAN, "I/O Intr")
}
record(bo, "$(P)$(R)Overlap")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_OVERLAP")
field(ZNAM, "No")
field(ONAM, "Yes")
}
record(bi, "$(P)$(R)Overlap_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_OVERLAP")
field(ZNAM, "No")
field(ONAM, "Yes")
field(SCAN, "I/O Intr")
}
record(bo, "$(P)$(R)NoiseFilter")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_NOISE_FILTER")
field(ZNAM, "No")
field(ONAM, "Yes")
}
record(bi, "$(P)$(R)NoiseFilter_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_NOISE_FILTER")
field(ZNAM, "No")
field(ONAM, "Yes")
field(SCAN, "I/O Intr")
}
record(mbbo, "$(P)$(R)PixelEncoding")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_PIXEL_ENCODING")
}
record(mbbi, "$(P)$(R)PixelEncoding_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_PIXEL_ENCODING")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)ReadoutTime")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_READOUT_TIME")
field(PREC, "4")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)TransferRate")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_TRANSFER_RATE")
field(PREC, "3")
field(SCAN, "I/O Intr")
}
record(bi, "$(P)$(R)FullAOIControl")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_FULL_AOI_CONTROL")
field(ZNAM, "No")
field(ONAM, "Yes")
field(SCAN, "I/O Intr")
}
record(mbbo, "$(P)$(R)A3Binning")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_BINNING")
}
record(mbbi, "$(P)$(R)A3Binning_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_BINNING")
field(SCAN, "I/O Intr")
}
record(mbbo, "$(P)$(R)A3ShutterMode")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SHUTTER_MODE")
}
record(mbbi, "$(P)$(R)A3ShutterMode_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SHUTTER_MODE")
field(SCAN, "I/O Intr")
}
record(bo, "$(P)$(R)SoftwareTrigger")
{
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SOFTWARE_TRIGGER")
field(ZNAM, "Done")
field(ONAM, "Trigger")
}
record(bo, "$(P)$(R)SensorCooling")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SENSOR_COOLING")
field(ZNAM, "Off")
field(ONAM, "On")
}
record(bi, "$(P)$(R)SensorCooling_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SENSOR_COOLING")
field(SCAN, "I/O Intr")
field(ZNAM, "Off")
field(ONAM, "On")
}
record(mbbo, "$(P)$(R)TempControl")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_TEMP_CONTROL")
}
record(mbbi, "$(P)$(R)TempControl_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_TEMP_CONTROL")
field(SCAN, "I/O Intr")
}
record(mbbi, "$(P)$(R)TempStatus_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_TEMP_STATUS")
field(SCAN, "I/O Intr")
}
record(mbbo, "$(P)$(R)FanSpeed")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_FAN_SPEED")
}
record(mbbi, "$(P)$(R)FanSpeed_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_FAN_SPEED")
field(SCAN, "I/O Intr")
}
record(stringin, "$(P)$(R)SerialNumber")
{
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SERIAL_NUMBER")
}
record(stringin, "$(P)$(R)FirmwareVersion")
{
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_FIRMWARE_VERSION")
}
record(stringin, "$(P)$(R)SoftwareVersion")
{
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_SOFTWARE_VERSION")
}
record(stringin, "$(P)$(R)ControllerID")
{
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))A3_CONTROLLER_ID")
}