A package for commuincation with various Agilent Vacuum pump controllers and sensors.
Project description
Agilent-Vacuum
A collection of classes for communication with various Agilent Vacuum pump controllers.
This package supports:
- Agilent TwissTorr 74FS Rack Turbo Pump controller PDF user guide
- Agilent IPCMini Ion Pump Controller PDF user guide
This is was developed for internal use at Luxbright. It has been used 24/7 in production lines and R&D labs since year 2023. But we only use a subset of all implemented commands and not all commands are tested by the pytest suite.
I hope that it can be useful as it is, or as source of inspiration for somebudy else. This is not an official library from Agilent and we are not associated with the, we are only a user of their products.
This library is implemented using asyncio.
Turbo pump driver usage
from agilent_vacuum.twis_torr_74 import TwisTorr74Driver
from agilent_vacuum.communication import PressureUnit, SerialClient
from agilent_vacuum.exceptions import ComError, WinDisabled
Create a serial client, this exaple connects to a USB to RS232 adapter on a Raspberry Pi. Initiate a driver and try to connect to controller.
client = SerialClient("/dev/ttyS0")
turbo = TwisTorr74Driver(client)
try:
await turbo.connect()
except ComError as e:
logger.warning(f"Turbo pump connect failed. {e}")
except EOFError as e:
logger.warning(f"Turbo pump connect failed. {e}")
Start turbo pump and read status and speed.
await turbo.start()
status = await turbo.get_status()
speed = await turbo.read_turbo_speed
logger.info(f"Turbo status {status.name} and speed {speed} rpm.")
Read vacuum gauge (requires optional gauge connected to controller)
unit = await turbo.get_pressure_unit()
value = await turbo.read_presure()
logger.info(f"{pressure} {unit.name}")
Stop turbo pump.
await turbo.stop()
Ion pump driver usage
from agilent_vacuum.ipc_mini import IpcMiniDriver, PumpStatus
from agilent_vacuum.communication import PressureUnit, SerialClient
from agilent_vacuum.exceptions import ComError, WinDisabled
Create a serial client, this exaple connects to the UART on a Raspberry Pi via an RS323 circuit. Initiate a driver and try to connect to controller.
client = SerialClient("/dev/ttyS0")
ion_pump = IpcMiniDriver(client)
try:
await ion_pump.connect()
except ComError as e:
logger.warning(f"Turbo pump connect failed. {e}")
except EOFError as e:
logger.warning(f"Turbo pump connect failed. {e}")
Start the Ion Pump and read status
await ion_pump.start()
status = await ion_pump.get_status()
logger.info(f"Ion pump status {status.name}")
Read vacuum level
unit = await ion_pump.get_pressure_unit()
value = await ion_pump.read_presure()
logger.info(f"{pressure} {unit.name}")
Stop Ion Pump
await ion_pump.stop()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agilent_vacuum-0.1.2.tar.gz.
File metadata
- Download URL: agilent_vacuum-0.1.2.tar.gz
- Upload date:
- Size: 20.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa8879c5e6039eb0f7d6fee670183a660cb29038270779cc1742c2834de3836b
|
|
| MD5 |
0e369d2b512ae73c92be41ce2b665327
|
|
| BLAKE2b-256 |
faf5f9f897b1259a162e7c97b616550d4002584b18f282bf59a6cfabb749cb29
|
File details
Details for the file agilent_vacuum-0.1.2-py3-none-any.whl.
File metadata
- Download URL: agilent_vacuum-0.1.2-py3-none-any.whl
- Upload date:
- Size: 17.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ac530cab59c73abd7866e608db8168fe862184c4d6726818aa9cd8630f35075
|
|
| MD5 |
83b6798fffebbc3cc8b68689b2b879e1
|
|
| BLAKE2b-256 |
e2092fdc90ba693c03e73086405c386ea7ebf0724f09c65fe324852aca1f11a0
|