Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for AimTTi QL355TP #5021

Merged
merged 5 commits into from
Feb 20, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/changes/newsfragments/5021.improved_driver
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Added support for AimTTi QL355TP power supply.
Moved _numOutputChannels lookup table to the class body.
9 changes: 9 additions & 0 deletions qcodes/instrument_drivers/AimTTi/Aim_TTi_QL355_TP.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from ._AimTTi_PL_P import AimTTi


class AimTTiQL355TP(AimTTi):
"""
This is the QCoDeS driver for the Aim TTi QL355TP series power supply.
"""

pass
23 changes: 12 additions & 11 deletions qcodes/instrument_drivers/AimTTi/_AimTTi_PL_P.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,16 @@ class AimTTi(VisaInstrument):
Tested with Aim TTi PL601-P equipped with a single output channel.
"""

_numOutputChannels = {
"PL068-P": 1,
"PL155-P": 1,
"PL303-P": 1,
"PL601-P": 1,
"PL303QMD-P": 2,
"PL303QMT-P": 3,
"QL355TP": 3,
}

def __init__(self, name: str, address: str, **kwargs: Any) -> None:
"""
Args:
Expand All @@ -226,19 +236,10 @@ def __init__(self, name: str, address: str, **kwargs: Any) -> None:

_model = self.get_idn()["model"]

_numOutputChannels = {
"PL068-P": 1,
"PL155-P": 1,
"PL303-P": 1,
"PL601-P": 1,
"PL303QMD-P": 2,
"PL303QMT-P": 3,
}

if (_model not in _numOutputChannels.keys()) or (_model is None):
if (_model not in self._numOutputChannels.keys()) or (_model is None):
raise NotKnownModel("Unknown model, connection cannot be " "established.")

self.numOfChannels = _numOutputChannels[_model]
self.numOfChannels = self._numOutputChannels[_model]
for i in range(1, self.numOfChannels + 1):
channel = AimTTiChannel(self, f"ch{i}", i)
channels.append(channel)
Expand Down
2 changes: 2 additions & 0 deletions qcodes/instrument_drivers/AimTTi/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
from .Aim_TTi_PL303QMD_P import AimTTiPL303QMDP
from .Aim_TTi_PL303QMT_P import AimTTiPL303QMTP
from .Aim_TTi_PL601_P import AimTTiPL601
from .Aim_TTi_QL355_TP import AimTTiQL355TP

__all__ = [
"AimTTiChannel",
Expand All @@ -14,5 +15,6 @@
"AimTTiPL303QMDP",
"AimTTiPL303QMTP",
"AimTTiPL601",
"AimTTiQL355TP",
"NotKnownModel",
]