Module azcam.tools.archon.controller_archon

Contains the ControllerArchon class.

Classes

class ControllerArchon (tool_id='controller', description=None)

The controller class for STA Archon controllers.

Args

tool_id
tool name
description
description of this tool

Ancestors

Instance variables

var description

Inherited from: Controller.description

descriptive tool name

var enabled

Inherited from: Controller.enabled

1 when tool is enabled

var exposure_time

Inherited from: Controller.exposure_time

exposure time (secs)

var initialized

Inherited from: Controller.initialized

1 when tool has been initialized

var interface_type

Inherited from: Controller.interface_type

interface type (0 = demo, 4 = PCIe)

var is_reset

Inherited from: Controller.is_reset

1 when tool has been reset

var lock

lock for threads

var reset_flag

Inherited from: Controller.reset_flag

True if the controller has been reset

var tool_id

Inherited from: Controller.tool_id

name used to reference the tool ("controller", "display", …)

var verbosity

Inherited from: Controller.verbosity

verbosity for debug, >0 is more verbose

Methods

def apply_all(self)

Send APPLYALL command to the Archon controller.

def apply_cds(self)

Send APPLYCDS command to the controller. CSS/Deint values are updated.

def archon_bin_command(self, command)

Send binary command to the Archon controller.

def archon_command(self, Command)

Send a command to the Archon controller.

def bias_poll(self, mode)

Send BIASPOLLON or BIASPOLLOFF command.

def connect(self)

Connects Azcam to the controller.

def define_keywords(self)

Inherited from: Controller.define_keywords

Defines and resets keywords.

def delete_keyword(self, keyword: str)

Inherited from: Controller.delete_keyword

Delete a keyword.

Args

keyword
keyword
def disconnect(self)

Disconnets Azcam from the controller.

def download_config(self)

Downloads config data from the Archon controller.

def flush(self, cycles=1)

Inherited from: Controller.flush

Flush or clear out the sensor. Returns after clearing is finished, which could take many seconds.

Args

cycles
number of times to flush sensor
def get_archon_status(self)

Get Archon controller status: 0 = UNKNOWN, 1 = IDLE, 2 = EXPOSE, 3 = READY, 4 = FETCH, 5 = DONE.

def get_cds(self)

Get TAPLINES values and stores them in the self.rcds array.

def get_continuous_exposures(self)

Get Continuous Exposure value.

def get_exposures(self)

Get number of exposures.

def get_exposuretime(self)

Get exposure time from the controller.

def get_frame(self)

Get and updates frame status value.

def get_frame_number(self)

Get Frame number.

def get_int_ms(self)

Get IntMS value. The value should be the same as the Archons IntMS.

def get_keyword(self, keyword: str) ‑> list

Inherited from: Controller.get_keyword

Return a keyword value, its comment string, and type. Comment always returned in double quotes, even if empty.

Args

keyword
name of keyword

def get_keywords(self) ‑> list

Inherited from: Controller.get_keywords

Return a list of all keyword names.

Returns

keywords
list of all keywords
def get_no_int_ms(self)

Get NoIntMS value. The value should be the same as the Archons NoIntMS.

def get_parameter(self, Param)

Get a parameter by name. Returns None if not found.

def get_parameters(self)

Get parameters.

def get_pixels_remaining(self)

Return number of remaining pixels to be read (counts down).

def get_power_status(self)

Get power status: ON, OFF, NOT_CONFIGURED, UNKNOWN, INTERMEDIATE, STANDBY.

def get_raw_channel(self)

Get RAWSEL value (raw channel selection).

def get_raw_enable(self)

Get RAWENABLE value.

def get_size(self)

Get pixels and lines.

def get_status(self)

Get status value.

def get_status_valid(self)

Get status_valid value. Last change: 21Dec2016 Zareba

def initialize(self)

Initializes the Archon controller.

def load_params(self)

Send LOADPARAMS command.

def poll(self, mode)

Send POLLON or POLLOFF command.

def power_off(self)

Turns power off.

def power_on(self, wait=1)

Turns power on

def read_config_file(self, filename)

Read Archon configuration file and parse data into dictionaries.

def read_header(self) ‑> list

Inherited from: Controller.read_header

Reads and returns current header data.

Returns

list of header lines
[Header[]]: Each element Header[i] contains the sublist (keyword, value, …
def reboot(self)

Send REBOOT command.

def reset(self)

Resets controller.

def reset_controller(self)

Resets controller. Send REBOOT command + loads config file + sets Power ON.

def set_cds(self)

Sets TAPLINES values.

def set_continuous_exposures(self, cont_exp)

Sets Continuous Exposure value.

def set_exposures(self, Exp)

Sets number of exposures.

def set_exposuretime(self, ExpTimeMS)

Set exposure time variable (millisecs). This is used for exposure count down.

def set_int_ms(self, IntMS)

Set IntMS value.

def set_keyword(self, keyword: str, value: Any, comment: str = 'none', typestring: str = 'none')

Inherited from: Controller.set_keyword

Set a keyword value, comment, and type.

Args

keyword
keyword
value
value of keyword
comment
comment string
typestring
one of …
def set_no_int_ms(self, NoIntMS)

Set NoIntMS value.

def set_parameter(self, Param, value)

Sets parameter.

def set_pocket_pumping(self, flag)

Set Parallel pocket pumping flag.

def set_raw_channel(self, RawChannel)

Sets RAWSEL value (raw channel selection). RAWSEL starts from 0.

def set_raw_enable(self, RawEnable)

Set RAWENABLE value.

def set_roi(self)

Inherited from: Controller.set_roi

Sets ROI parameters values in the controller based on focalplane parameters.

def set_shutter(self, state: bool, shutter_id: int = 0)

Inherited from: Controller.set_shutter

Open or close controller shutter.

Args

state
True to open shutter, False to close shutter
shutter_id
shutter ID number
def set_shutter_state(self, flag: bool = 0)

Inherited from: Controller.set_shutter_state

Sets the shutter state during an exposure.

Args

flag
True open shutter during exposure, False close shutter during exposure
def set_size(self, Pixels, Lines)

Sets pixels and lines.

def start_exposure(self, wait=1)

Start exposure.

def start_idle(self)

Inherited from: Controller.start_idle

Start idle clocking.

def stop_idle(self)

Inherited from: Controller.stop_idle

Stop idle clocking.

def update_cds(self, ucds=None)

Updates TAPLINES values based on space-delimited string string.

def update_config_data(self, mode=0)

Sets configuration data: if mode = 0 get config data from the Archon controller, populate dictionaries. if mode = 1 read configuration file and then send config data to the Archon controller, populate dictionaries.

def update_exposuretime_remaining(self)

Returns exposure time remaining in seconds. Last change: 13Jan2017 Zareba

def update_header(self)

Inherited from: Controller.update_header

Update the header, reading current data. Deletes all keywords if the object is not enabled.

def upload_config(self)

Uploads configuration data to the controller.

def warmboot(self)

Send WARMBOOT command.