/pyMetrohmAUTOLAB

A tool to using Metrohm AUTOLAB SDK in Python(it is still under heavily developed)

Primary LanguagePythonMIT LicenseMIT

Metrohm AUTOLAB control package

This is a unofficial control package to Metrohm-AUTOALB. This package contains a main pacakge named AUTOLAB()

class structure and implemented functions:

class AUTOLAB():
    
    def __init__(self,
                 sdk=R"C:\Program Files\Metrohm Autolab\autolabsdk\EcoChemie.Autolab.Sdk",
                 adx=R"C:\Program Files\Metrohm Autolab\autolabsdk\Hardware Setup Files\Adk.x"):
 
    def disconnectAutolab(self):
    def setSDKandADX(self,sdk,adx):
 
    def isMeasuring(self):
    def connectToAutolab(self,
                         hdw=R"C:\Program Files\Metrohm Autolab\autolabsdk\Hardware Setup Files\PGSTAT302N\HardwareSetup.FRA32M.xml"):
    def measure(self,procedure):
    def save(self):
    def saveAs(self,saveName):
        
    def setCellOn(self,On=True):
    def setMode(self,Mode='Potentialstatic'):   
    def setPotential(self,potential):   
    def setCurrentRange(self,EstimateCurrentInAmpere = 1E-6):
    def wait(self,QuietTime=5):
    def loadData(self,filename):

how to use it:

  • Step 0, install the required packages

    pip install pythonnet
    pip install pyMetrohmAUTOLAB

    And AUTOALB SDK v1.11 You can download it here

  • Step 1, import this package

    import Metrohm.AUTOLAB as EC
  • Step 2, tell Python where your instrument is located

    # tell the code where your SDK is located
    hdw=R'C:\Program Files\Metrohm Autolab\autolabsdk\Hardware Setup Files\PGSTAT302N\HardwareSetup.FRA32M.xml',
    sdk=R"C:\Program Files\Metrohm Autolab\autolabsdk\EcoChemie.Autolab.Sdk"
    adx=R"C:\Program Files\Metrohm Autolab\autolabsdk\Hardware Setup Files\Adk.x"
  • Setp 3, initialise the AUTOLAB class (C's bad habbit)

    # initializing the class first
    autolab = EC.AUTOLAB(sdk=sdk,adx=adx)
    
    autolab.CMD = True # optional: Enable CMDLOG or not, it's good if you want to trace the code
  • Step 4, Have fun with it

    try:
        if autolab.connectToAutolab(hdw): # first we need to connect to our instrument
            print("Connecting to AUTOLAB successfully....")
            # do measurement
            autolab.measure(R"*.nox file path") # it will take times till measrement finish
            autolab.saveAs(R"save file name")
            `
    except:
        print("Connecting to AUTOLAB FAIL....")
        return
  • Optional Step 5, delete the instance

    It is a good habit, but not always necessary.

    # it is a good habit to del the instance at the end of the script
    del autolab