-
Notifications
You must be signed in to change notification settings - Fork 315
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
Driver/Mercury iPS with VISA #897
Driver/Mercury iPS with VISA #897
Conversation
Add a working VISA driver with a single non-trivial parameter
…Qcodes into driver/MercuryiPS_VISA
…Qcodes into driver/MercuryiPS_VISA
Codecov Report
@@ Coverage Diff @@
## master #897 +/- ##
==========================================
+ Coverage 80.38% 80.48% +0.09%
==========================================
Files 49 49
Lines 6801 6804 +3
==========================================
+ Hits 5467 5476 +9
+ Misses 1334 1328 -6 |
Note: development of this driver is paused until an agreement on the desired magnet ramping behaviour has been reached. |
From talking to scientists, it seems that
will suit the needs of everyone. Development resumed! |
…Qcodes into driver/MercuryiPS_VISA
lh.setFormatter(formatter) | ||
|
||
|
||
def get_messages(iostream: io.StringIO) -> List[str]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we use pytests capture log for this i.e. https://docs.pytest.org/en/latest/logging.html#caplog-fixture ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LOL! ^^
There are many extra features we can think of adding (one example: rotated coordinate systems to account for sample misalignment), but I think the driver is now in a functional state. @QCoDeS/core |
default: 0 | ||
getter: | ||
q: "READ:DEV:GRPX:PSU:SIG:FSET" | ||
r: "{}" # should there be a unit appended? How does the instrument do it? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is the answer to this question known now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point. It is known.
@@ -190,14 +243,73 @@ def __init__(self, name: str, address: str, visalib=None, | |||
# to ensure a correct snapshot, we must wrap the get function | |||
self.IDN.get = self.IDN._wrap_get(self._idn_getter) | |||
|
|||
# TODO: Query instrument to ensure which PSUs we have | |||
# TODO: Query instrument to ensure which PSUs are actually present |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this an "issue" or "nice-to-have"? in other words, will it be done in this PR? If not, perhaps, make an issue out of it?
y=self.GRPY.field(), | ||
z=self.GRPZ.field()) | ||
|
||
for coord in ['x', 'y', 'z', 'r', 'theta', 'phi', 'rho']: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can this list be referred to from FieldVector
class or similar?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not so easily. Also, I do not suspect that list to change very much in the near future, so it's prolly not worth the effort.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
Status: I am currently waiting for feedback from a scientist who kindly volunteered to try out this new driver. |
@QCoDeS/core, this driver version has now been tested at a real lab station and allegedly worked fine and solved two problems with the older driver (the problem described in #543 and a problem with wrong metadata, both basically solved by using So I'd say we merge and actually also deprecate the older driver. |
I'll merge this now, but not deprecate the old driver just yet. The reason is that someone is using the old driver with two axes being MercuryPS Slaves and the third one being a less noisy power supply. I will add that functionality to the MercuryiPS VISA driver in a separate PR and then we can finally get rid of the old, untrusted IPInstrument driver (and maybe IPInstrument altogether?). |
Merge: b2344b7 658e591 Author: William H.P. Nielsen <[email protected]> Merge pull request #897 from WilliamHPNielsen/driver/MercuryiPS_VISA
Add a VISA driver for the MercuryiPS using the
FieldVector
setpoint technology already in use in our AMI430 driver.Fixes #543
Changes proposed in this pull request:
Work items:
FieldVector
@jenshnielsen