Automatic commit. Thu Aug 2 10:00:02 WST 2012
[matches/honours.git] / research / TCS / interface.py
index f578d02..1260582 100755 (executable)
@@ -31,7 +31,7 @@ calibrate = {
 }
 
 # TODO: Adjust aqcuisition parameters here
-aquire = { "DAC_Sweep" : "0.0 + 250.0*int(step/200)", # DAC Sweep value (t is in STEPS, not seconds!)
+aquire = { "DAC_Sweep" : "2000",#"0.0 + 250.0*int(step/200)", # DAC Sweep value (t is in STEPS, not seconds!)
        "ADC_Averages" : 200,
        "ADC_Vi" : 5, # ADC channel to read back Vi (set by DAC) through
        "ADC_Is" : 4, # ADC channel to read back Is through
@@ -64,11 +64,21 @@ parameters = {
        "Heating Current" : None,
        "Heating Voltage" : None,
        "Chamber Pressure" : None,
+       "610B Zero" : None,
+       "602 Zero" : None,
+       "610B Scale" : None,
+       "602 Scale" : None,
        "602 0.1 Battery" : None,
        "602 0.03 Battery" : None,
        "602 0.01 Battery" : None,
        "602 0.003 Battery" : None,
-       "602 0.001 Battery" : None
+       "602 0.001 Battery" : None, 
+       "ADC Battery" : None,
+       "ADC Regulator" : None,
+       "Title" : None,
+       "Comment" : None,
+       "Data" : None,
+
 }
 
 def getTime():
@@ -138,36 +148,58 @@ def main():
        #checkList()
 
        
-       comment = None
+       
                
 
        # Experiment
        # TODO: Modify data to record here
        sweep = 1
-       #record_data([4, 5], getDate()+"/"+str(getTime())+".dat", None, None, "Measure emission&sample current varying with time, constant initial energy.")
-       while True:
-               os.system("mkdir -p " + getDate())
-               record_data([4, 5], getDate()+"/"+str(getTime())+".dat", None, 2500, "Measure deflection plate. lens with DAC. Sweep" + str(sweep) + " (started on " + aquire["start_date"]+")")
-               sweep += 1
+       #while True:
+       os.system("mkdir -p " + getDate())
+       record_data([4], getDate()+"/"+str(getTime())+".dat", None, 2500)
+       sweep += 1
        
 
-def checkList():
+def checkList(output_file):
+       try:
+               input_file = open(getDate()+"/checklist", "r")
+       except:
+               input_file = None
+
+       if (input_file != None):
+               for line in input_file:
+                       k = line.split("=")
+                       item = k[0].strip(" \r\n")
+                       value = k[1].strip(" \r\n")
+                       if (item in parameters):
+                               parameters[item] = value
+       
+               print("Checklist found. Overwrite? [Y/n]")
+               response = sys.stdin.readline().strip(" \r\n")
+               if (response == "" or response == "y" or response == "Y"):
+                       input_file = None
        
-       output = open(getDate()+"/checklist", "w", 0)
+       if (input_file == None):
+               for item in parameters:
+                       sys.stdout.write("\""+str(item)+"\" = " + str(parameters[item]) + " New value?: ")
+                       response = sys.stdin.readline().strip("\r\n ")
+                       if (response != ""):
+                               parameters[item] = response
+                       sys.stdout.write("\n")
+                       
+
+       checklist = open(getDate()+"/checklist", "w", 0)
        for item in parameters:
-               sys.stdout.write("Enter value for \""+str(item)+"\": ")
-               parameters[item] = sys.stdin.readline().strip("\r\n ")
-               sys.stdout.write("\n")
-               output.write(str(parameters[item]) + "\n")
+               checklist.write("# "+str(item) + " = " + str(parameters[item]) + "\n")
+               output_file.write("# "+str(item) + " = " + str(parameters[item]) + "\n")
 
 
-def record_data(ADC_channels, output, pollTime = None, dac_max = None, comment = None):
+
+def record_data(ADC_channels, output, pollTime = None, dac_max = None):
+       
        if (output != None):
                output = [open(output, "w", 0), sys.stdout]
-               if (comment == None):
-                       print("Enter a comment for the experiment.")
-                       comment = sys.stdin.readline().strip("\r\n ")
-               output[0].write("# Comment: "+str(comment)+"\n")
+               checkList(output[0])
        else:
                output = [sys.stdout]
 

UCC git Repository :: git.ucc.asn.au