Skip to main content

Communication and helper functions for lab equipment

Project description

Instruments

Communication and helper functions for lab equipment
If you're reading this, this is a WIP new class-based system of autodetecing instruments and exposing common APIs

Creating instruments

  1. individual files in neoginstruments will be seperate instruments
  2. folders designate interchangeable instruments with common apis
    1. Each folder will result in automatic selection of a instrument
    2. Each folder will use and document an API
  3. Each valid instruments file must have a
    1. name
    2. hwid: array of valid hardware IDs (for linux)
      1. use lsusb to get them. IE:"0403:FAF0"
      2. use "software" to create a virtual instrument
    3. instrument class
      1. Must accept the port as its only argument in __init__. You can get the serial with port.serial_number

Using instruments

Example:

import neogiinstruments  
rotator = neogiinstruments.rotator("rotator1") #creates rotator named rotator1
rotator.instrument_selected = '55114654 - ttyUSB7 - K10CR1' 
rotator.instrument.home() #homes the rotator
rotator.update_to_serial()

Each module will return its respective instrument. Multiple distinct verisons of the same instrument can exist.
You can either manually change instrument_selected or use .view() to make an interactive GUI.
All functions of each instrument are avalible through the .instrument sub-object.

Utilities

you can call port_table() to print a port table

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

NeogiInstruments-2.6.1.tar.gz (12.0 kB view hashes)

Uploaded Source

Built Distribution

NeogiInstruments-2.6.1-py3-none-any.whl (16.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page