Skip to content
Snippets Groups Projects
Commit c2ff35e0 authored by esarrey's avatar esarrey
Browse files

Fix voltage aquisition bug

parent 0211e115
No related branches found
No related tags found
No related merge requests found
...@@ -8,6 +8,7 @@ class DAC(): ...@@ -8,6 +8,7 @@ class DAC():
def __init__(self, addr): def __init__(self, addr):
self.type = addr[:2] self.type = addr[:2]
self.setup = False self.setup = False
self.addr = addr
if self.type=="ao": if self.type=="ao":
try: try:
...@@ -23,16 +24,21 @@ class DAC(): ...@@ -23,16 +24,21 @@ class DAC():
log.info("Seems like the DAC is inaccessible") log.info("Seems like the DAC is inaccessible")
def read(self): def read(self):
output = -1
if self.setup: if self.setup:
if self.type=="ai": if self.type=="ai":
return nidaqmx.Task().read() with nidaqmx.Task() as task:
task.ai_channels.add_ai_voltage_chan("Dev1/"+self.addr)
output = task.read()
else: else:
print("Cannot read from a analog output") print("Cannot read from a analog output")
return -1 return output
def write(self, value): def write(self, value):
if self.setup: if self.setup:
if self.type=="ao": if self.type=="ao":
nidaqmx.Task().write(value) with nidaqmx.Task() as task:
task.ao_channels.add_ao_voltage_chan("Dev1/"+self.addr)
task.write(value)
else: else:
print("Cannot write to a analog input") print("Cannot write to a analog input")
\ No newline at end of file
...@@ -53,12 +53,14 @@ class B_Sweep(Procedure): ...@@ -53,12 +53,14 @@ class B_Sweep(Procedure):
field.write(b_values[i]) field.write(b_values[i])
average_voltage = np.arange(0, int(round(self.acq_time * self.freq))) average_voltage = np.arange(0, int(round(self.acq_time * self.freq)), dtype='float64')
for step in range(len(average_voltage)): for step in range(len(average_voltage)):
average_voltage[step] = voltage.read() average_voltage[step] = voltage.read()
sleep(1/self.freq) sleep(1/self.freq)
print(average_voltage)
data = { data = {
'Magnetic Field [V]': b_values[i], 'Magnetic Field [V]': b_values[i],
'Voltage': np.mean(average_voltage) 'Voltage': np.mean(average_voltage)
......
...@@ -52,7 +52,7 @@ class X_Sweep(Procedure): ...@@ -52,7 +52,7 @@ class X_Sweep(Procedure):
for i in range(len(x_positions)): for i in range(len(x_positions)):
stage.move_x_to(x_positions[i]) stage.move_x_to(x_positions[i])
average_voltage = np.arange(0, int(round(self.acq_time * self.freq))) average_voltage = np.arange(0, int(round(self.acq_time * self.freq)), dtype='float64')
for step in range(len(average_voltage)): for step in range(len(average_voltage)):
average_voltage[step] = voltage.read() average_voltage[step] = voltage.read()
......
...@@ -52,7 +52,7 @@ class Y_Sweep(Procedure): ...@@ -52,7 +52,7 @@ class Y_Sweep(Procedure):
for i in range(len(y_positions)): for i in range(len(y_positions)):
stage.move_y_to(y_positions[i]) stage.move_y_to(y_positions[i])
average_voltage = np.arange(0, int(round(self.acq_time * self.freq))) average_voltage = np.arange(0, int(round(self.acq_time * self.freq)), dtype='float64')
for step in range(len(average_voltage)): for step in range(len(average_voltage)):
average_voltage[step] = voltage.read() average_voltage[step] = voltage.read()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment