MFC

Aera MFC

class nupylab.instruments.mfc.aera_mfc.AeraMFC(port: str, addresses: int | Sequence[int], mfc_classes: AeraChannel | Sequence[AeraChannel], data_label: str | Sequence[str], name: str = 'Aera MFC')

Bases: NupylabInstrument

AeraMFC instrument class. Abstracts Aera MFC driver for NUPyLab procedures.

data_label

labels for DataTuples.

name

name of instrument.

lock

thread lock for preventing simultaneous calls to instrument.

aera

AeraMFC driver class with channels for all connected MFCs.

Initialize Aera data labels, name, and connection parameters.

Parameters:
  • port – string name of port, e.g. ASRL1::INSTR.

  • addresses – MFC addresses.

  • mfc_classes – MFC channel classes to add to AeraMFC.

  • data_label – labels for DataTuples. get_data() returns flow rate for each channel, and corresponding labels should match entries in DATA_COLUMNS of calling procedure class.

  • name – name of instrument.

Raises:
  • ValueError if lengths of addresses, mfc_classes, and data_label

  • do not match.

connect() None

Connect to Aera MFCs.

get_data() List[DataTuple]

Read flow for each MFC channel.

Returns:

DataTuples with flow for each channel.

set_parameters(setpoints: Sequence[float]) None

Set Aera flow setpoints.

Parameters:

setpoints – MFC channel setpoints.

Raises:

ValueError if lengths of setpoints and data_label do not match.

shutdown() None

Shutdown Aera MFC gas flow and close serial connection.

start() None

Convert setpoints from sccm to % and set flow.

Raises:

NupylabError if start method is called before set_parameters.

stop_measurement() None

Stop Aera MFC measurement. Not implemented.

ROD-4

class nupylab.instruments.mfc.rod4.ROD4(port: str, data_label: Sequence[str], name: str = 'ROD-4')

Bases: NupylabInstrument

ROD-4(A) instrument class. Abstracts ROD-4 driver for NUPyLab procedures.

data_label

labels for DataTuples.

name

name of instrument.

lock

thread lock for preventing simultaneous calls to instrument.

rod4

ROD4 driver class.

Initialize ROD-4 data labels, name, and connection parameters.

Parameters:
  • port – string name of port, e.g. ASRL1::INSTR.

  • data_label – labels for DataTuples. get_data() returns flow rate for each channel, and corresponding labels should match entries in DATA_COLUMNS of calling procedure class.

  • name – name of instrument.

Raises:

ValueError if length of data_label is not 4.

connect() None

Connect to ROD-4.

get_data() List[DataTuple]

Read flow for each MFC channel.

Returns:

tuple of four DataTuples with flow for each channel.

set_parameters(setpoints: Sequence[float]) None

Set ROD-4 flow setpoints.

Parameters:

setpoints – tuple or list of 4 channel setpoints.

Raises:

ValueError if lengths of setpoints is not 4.

shutdown() None

Shutdown ROD-4 gas flow and close serial connection.

start() None

Convert setpoints from sccm to % and set flow.

Raises:

NupylabError if start method is called before set_parameters.

stop_measurement() None

Stop ROD-4 measurement. Not implemented.