aboutsummaryrefslogtreecommitdiff
path: root/qolab/hardware/power_supply/__init__.py
diff options
context:
space:
mode:
authorEugeniy E. Mikhailov <evgmik@gmail.com>2022-03-09 12:38:46 -0500
committerEugeniy E. Mikhailov <evgmik@gmail.com>2022-03-09 12:38:46 -0500
commit994d29b403129c5687980aa9b596114a7a7c0edc (patch)
tree44f90172e57fa40842d0cdb797f296a2d718f7b3 /qolab/hardware/power_supply/__init__.py
parente84ef9e06f25a6da04f54f52e9dfaee1229d5405 (diff)
downloadqolab-994d29b403129c5687980aa9b596114a7a7c0edc.tar.gz
qolab-994d29b403129c5687980aa9b596114a7a7c0edc.zip
draft of Keysight Power Supply control
Diffstat (limited to 'qolab/hardware/power_supply/__init__.py')
-rw-r--r--qolab/hardware/power_supply/__init__.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/qolab/hardware/power_supply/__init__.py b/qolab/hardware/power_supply/__init__.py
new file mode 100644
index 0000000..b1083cf
--- /dev/null
+++ b/qolab/hardware/power_supply/__init__.py
@@ -0,0 +1,26 @@
+from qolab.hardware.scpi import SCPIinstr
+from qolab.hardware.basic import BasicInstrument
+
+class PowerSupply(BasicInstrument):
+ # Minimal set of methods to be implemented by a Power Supply
+ def __init__(self, *args, **kwds):
+ BasicInstrument.__init__(self, *args, **kwds)
+ self.config['Device type']='PowerSupply'
+ self.config['Device model'] = 'Generic Power Supply generator Without Hardware interface'
+ self.config['FnamePrefix'] = 'power_supply'
+ self.deviceProperties = { }
+
+class PowerSupplySCPI(SCPIinstr, PowerSupply):
+ """
+ Do not instantiate directly, use
+ rm = pyvisa.ResourceManager()
+ PowerSupplySCPI(rm.open_resource('TCPIP::192.168.0.2::INSTR'))
+ or
+ PowerSupplySCPI(rm.open_resource('USB0::10893::4354::MY61001869::0::INSTR'))
+ """
+ def __init__(self, resource, *args, **kwds):
+ SCPIinstr.__init__(self, resource)
+ PowerSupply.__init__(self, *args, **kwds)
+ self.config['DeviceId'] = str.strip(self.idn)
+
+from .keysight_e3612a import KeysightE3612A