git.ucc.asn.au
/
matches
/
honours.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Automatic commit. Thu Sep 6 00:00:05 WST 2012
[matches/honours.git]
/
research
/
TCS
/
interface.py
diff --git
a/research/TCS/interface.py
b/research/TCS/interface.py
index
5c0a7c4
..
1b85fb1
100755
(executable)
--- a/
research/TCS/interface.py
+++ b/
research/TCS/interface.py
@@
-13,7
+13,9
@@
import serial
import datetime
import odict
import datetime
import odict
+import Gnuplot, Gnuplot.funcutils
+gnuplot = Gnuplot.Gnuplot()
# TODO: Insert variables for calibration purposes here.
calibrate = {
# TODO: Insert variables for calibration purposes here.
calibrate = {
@@
-32,7
+34,7
@@
calibrate = {
}
# TODO: Adjust aqcuisition parameters here
}
# TODO: Adjust aqcuisition parameters here
-aquire = { "DAC_Sweep" : "
1000.0",#"0.0 + 50.0*int(step/60
)", # DAC Sweep value (t is in STEPS, not seconds!)
+aquire = { "DAC_Sweep" : "
0.0 + 50.0*int(step
)", # 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
"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
@@
-45,7
+47,7
@@
aquire = { "DAC_Sweep" : "1000.0",#"0.0 + 50.0*int(step/60)", # DAC Sweep value
#Setup the serial connection parameters
ser = serial.Serial(
#Setup the serial connection parameters
ser = serial.Serial(
- port="/dev/ttyUSB
0
", # Modify as needed (note: in linux need to run `sudo chmod a+rw /dev/ttyUSBX' to set permissions)
+ port="/dev/ttyUSB
1
", # Modify as needed (note: in linux need to run `sudo chmod a+rw /dev/ttyUSBX' to set permissions)
# Do not change the values below here (unless AVR butterfly is reprogrammed to use different values)
baudrate=4800,
# Do not change the values below here (unless AVR butterfly is reprogrammed to use different values)
baudrate=4800,
@@
-77,6
+79,7
@@
parameters = odict.odict([
("602 0.001 Battery" , None),
("ADC Regulator" , None),
("Sample", None),
("602 0.001 Battery" , None),
("ADC Regulator" , None),
("Sample", None),
+ ("Sample Angle", None),
("Title" , None),
("Comment" , None),
("Data" , None),
("Title" , None),
("Comment" , None),
("Data" , None),
@@
-206,7
+209,7
@@
def main():
sweep = 1
while True:
os.system("mkdir -p " + getDate())
sweep = 1
while True:
os.system("mkdir -p " + getDate())
- record_data([
4,
5], getDate()+"/"+str(getTime())+".dat", None, 4000)
+ record_data([5], getDate()+"/"+str(getTime())+".dat", None, 4000)
sweep += 1
sweep += 1
@@
-259,8
+262,11
@@
def checkList():
def record_data(ADC_channels, output, pollTime = None, dac_max = None):
if (output != None):
def record_data(ADC_channels, output, pollTime = None, dac_max = None):
if (output != None):
+ gnuplot("set title \""+str(output)+"\"")
output = [log_open(output, "w"), sys.stdout]
output = [log_open(output, "w"), sys.stdout]
+
else:
else:
+ gnuplot("set title \"<No file>\"")
output = [sys.stdout]
for field in aquire:
output = [sys.stdout]
for field in aquire:
@@
-277,6
+283,10
@@
def record_data(ADC_channels, output, pollTime = None, dac_max = None):
start_time = time.time()
start_time = time.time()
+ gnuplot("set xlabel \"DAC (counts)\"")
+ gnuplot("set ylabel \"ADC (counts)\"")
+
+
for out in output:
out.write("\n")
out.write("# Experiment " + str(datetime.datetime.now()) + "\n")
for out in output:
out.write("\n")
out.write("# Experiment " + str(datetime.datetime.now()) + "\n")
@@
-289,9
+299,11
@@
def record_data(ADC_channels, output, pollTime = None, dac_max = None):
out.write("\n")
step = 0
out.write("\n")
step = 0
+ data = [] # Keep track of data for dynamic plotting
dacValue = int(eval(aquire["DAC_Sweep"]))
if (setDAC(dacValue) == False):
setDAC(dacValue)
dacValue = int(eval(aquire["DAC_Sweep"]))
if (setDAC(dacValue) == False):
setDAC(dacValue)
+ time.sleep(2.0)
while (pollTime == None or time.time() < start_time + pollTime):
if (aquire["DAC_Sweep"] != None):
nextDacValue = int(eval(aquire["DAC_Sweep"]))
while (pollTime == None or time.time() < start_time + pollTime):
if (aquire["DAC_Sweep"] != None):
nextDacValue = int(eval(aquire["DAC_Sweep"]))
@@
-323,13
+335,19
@@
def record_data(ADC_channels, output, pollTime = None, dac_max = None):
end_time = time.time()
for out in output:
end_time = time.time()
for out in output:
- out.write(str((measure_start + (end_time - measure_start)/2.0 - start_time)))
+ measure_time = measure_start + (end_time - measure_start)/2.0 - start_time
+ out.write(str(measure_time))
out.write("\t"+str(dacValue))
out.write("\t"+str(dacValue))
+ data.append([measure_time, dacValue])
+
for adc in raw_adc:
out.write("\t" + str(adc[1]) + "\t" + str(adc[2]))
for adc in raw_adc:
out.write("\t" + str(adc[1]) + "\t" + str(adc[2]))
+ data[len(data)-1].append(adc[1])
+ data[len(data)-1].append(adc[2])
out.write("\n")
out.write("\n")
-
+
+ gnuplot.plot(Gnuplot.Data(data, title="t = "+str(measure_time), with_="lp", using="2:3"))
for out in output:
if out != sys.stdout:
log_close(out)
for out in output:
if out != sys.stdout:
log_close(out)
UCC
git Repository :: git.ucc.asn.au