Skip to content

Latest commit

 

History

History
101 lines (74 loc) · 2.82 KB

lakeshore370.rst

File metadata and controls

101 lines (74 loc) · 2.82 KB

rst

Lakeshore 370

The Lakeshore 370 (LS370) units are an older version of the Lakshore 372, used for 100 mK and 1K thermometer readout. Basic functionality to interface and control an LS370 is provided by the socs.Lakeshore.Lakeshore370.py module.

Configuration File Examples

OCS Site Config

To configure your Lakeshore 370 for use with OCS you need to add a Lakeshore370Agent block to your ocs configuration file. Here is an example configuration block:

{'agent-class': 'Lakeshore370Agent',
 'instance-id': 'LSA22YG',
 'arguments': [['--serial-number', 'LSA22YG'],
               ['--port', '/dev/ttyUSB1'],
               ['--dwell-time-delay', 0]]},

Each device requires configuration under 'agent-instances'. See the OCS site configs documentation for more details.

Docker Compose

The Lakeshore 370 Agent should be configured to run in a Docker container. An example configuration is:

ocs-LSA22YG:
  image: simonsobs/socs:latest
  hostname: ocs-docker
  environment:
    - INSTANCE_ID=LSA22YG
  volumes:
    - ${OCS_CONFIG_DIR}:/config:ro
  devices:
    - "/dev/ttyUSB1:/dev/ttyUSB1"

Note

The serial numbers here will need to be updated for your device.

Note

The device path may differ on your machine, and if only using the ttyUSB value as shown here, is not guaranteed to be static.

Description

Direct Communication

Direct communication with the Lakeshore can be achieved without OCS, using the Lakeshore370.py module in socs/socs/Lakeshore/. From that directory, you can run a script like:

from Lakeshore370 import LS370

ls = LS370('/dev/ttyUSB1')

You can use the API detailed on this page to then interact with the Lakeshore. Each Channel is given a Channel object in ls.channels. You can query the resistance measured on the currently active channel with:

ls.get_active_channel().get_resistance_reading()

That should get you started with direct communication. The API is fairly full featured. For any feature requests for functionality that might be missing, please file a Github issue.

Agent API

socs.agents.lakeshore370.agent.LS370_Agent

Supporting APIs

For the API all methods should start with one of the following:

  • set - set a parameter of arbitary input (i.e. set_excitation)
  • get - get the status of a parameter (i.e. get_excitation)
  • enable - enable a boolean parameter (i.e. enable_autoscan)
  • disable - disbale a boolean parameter (i.e. disable_channel)

socs.Lakeshore.Lakeshore370