latest changes made in colombia and in germany
This commit is contained in:
parent
349785996d
commit
67b8a11089
58
fishgrid.cfg
58
fishgrid.cfg
@ -1,20 +1,21 @@
|
|||||||
*FishGrid
|
*FishGrid
|
||||||
Grid &1:
|
Grid &1:
|
||||||
Used1 : true
|
Used1 : true
|
||||||
Columns1 : 8
|
Gridno1 : 1
|
||||||
Rows1 : 2
|
RecordMode1 : standalone
|
||||||
|
Columns1 : 2
|
||||||
|
Rows1 : 4
|
||||||
ColumnDistance1 : 50.0cm
|
ColumnDistance1 : 50.0cm
|
||||||
RowDistance1 : 50.0cm
|
RowDistance1 : 50.0cm
|
||||||
ChannelOffset1 : 0
|
ElectrodeType1 : headstage
|
||||||
ElectrodeType1 : plain
|
RefElectrodeType1: screw
|
||||||
RefElectrodeType1: plain
|
|
||||||
RefElectrodePosX1: 0.00m
|
RefElectrodePosX1: 0.00m
|
||||||
RefElectrodePosY1: 0.00m
|
RefElectrodePosY1: 0.00m
|
||||||
WaterDepth1 : 0.25m
|
WaterDepth1 : 0.25m
|
||||||
Hardware Settings:
|
Hardware Settings:
|
||||||
DAQ board:
|
DAQ board:
|
||||||
AISampleRate: 20.000kHz
|
AISampleRate: 20.000kHz
|
||||||
AIMaxVolt : 1.0mV
|
AIMaxVolt : 20.0mV
|
||||||
Amplifier:
|
Amplifier:
|
||||||
AmplName : 16-channel-amplifier
|
AmplName : 16-channel-amplifier
|
||||||
AmplModel : EM-64B
|
AmplModel : EM-64B
|
||||||
@ -24,10 +25,10 @@
|
|||||||
LowpassCutoff : 10.000kHz
|
LowpassCutoff : 10.000kHz
|
||||||
Recording:
|
Recording:
|
||||||
General:
|
General:
|
||||||
Experiment.Name : recording fish behavior
|
Experiment.Name : tube competition
|
||||||
StartDate : ~
|
StartDate : ~
|
||||||
StartTime : ~
|
StartTime : ~
|
||||||
Location : Colombia - Los Llanos
|
Location : Colombia - leticia
|
||||||
Position : ~N, ~W
|
Position : ~N, ~W
|
||||||
WaterTemperature : 20.0C
|
WaterTemperature : 20.0C
|
||||||
WaterConductivity: 5.0uS/cm
|
WaterConductivity: 5.0uS/cm
|
||||||
@ -35,46 +36,5 @@
|
|||||||
WaterOxygen : 0.0mg/l
|
WaterOxygen : 0.0mg/l
|
||||||
Comment : ~
|
Comment : ~
|
||||||
Experimenter : T. Raab et al. :)
|
Experimenter : T. Raab et al. :)
|
||||||
Buffers and timing:
|
|
||||||
DataTime : 100ms
|
|
||||||
DataInterval: 1000ms
|
|
||||||
BufferTime : 60s
|
|
||||||
Pre-processing:
|
|
||||||
PreProcessor1: none
|
|
||||||
PreProcessor2: none
|
|
||||||
PreProcessor3: none
|
|
||||||
PreProcessor4: none
|
|
||||||
PreProcessor5: none
|
|
||||||
PreProcessor6: none
|
|
||||||
PreProcessor7: none
|
|
||||||
PreProcessor8: none
|
|
||||||
|
|
||||||
*CommonNoiseRemoval
|
|
||||||
CommonNoiseRemoval: none
|
|
||||||
|
|
||||||
*Spectra
|
|
||||||
Size : "8192"
|
|
||||||
Overlap: true
|
|
||||||
Window : Hanning
|
|
||||||
Decibel: true
|
|
||||||
Decay : 100iterations
|
|
||||||
FMin : 0Hz
|
|
||||||
FMax : 2000Hz
|
|
||||||
Clip : true
|
|
||||||
|
|
||||||
*RMSPixel
|
|
||||||
TraceLength: 10s
|
|
||||||
|
|
||||||
*Recording
|
*Recording
|
||||||
PathFormat: "%04Y-%02m-%02d-%02H_%02M"
|
PathFormat: "%04Y-%02m-%02d-%02H_%02M"
|
||||||
|
|
||||||
*Acquisition
|
|
||||||
device1 : /dev/comedi0
|
|
||||||
blacklist1: ~
|
|
||||||
device2 : /dev/comedi1
|
|
||||||
blacklist2: ~
|
|
||||||
device3 : /dev/comedi2
|
|
||||||
blacklist3: ~
|
|
||||||
device4 : /dev/comedi3
|
|
||||||
blacklist4: ~
|
|
||||||
reference : RSE
|
|
||||||
|
98
rasp_grid.py
98
rasp_grid.py
@ -18,7 +18,7 @@ from IPython import embed
|
|||||||
from uldaq import (get_daq_device_inventory, DaqDevice, AInScanFlag, ScanStatus,
|
from uldaq import (get_daq_device_inventory, DaqDevice, AInScanFlag, ScanStatus,
|
||||||
ScanOption, create_float_buffer, InterfaceType, AiInputMode)
|
ScanOption, create_float_buffer, InterfaceType, AiInputMode)
|
||||||
|
|
||||||
def GPIO_setup(LED1_pin, LED2_pin, Button1_pin, Button2_pin, power_controll_pin):
|
def GPIO_setup(LED1_pin, LED2_pin, LED_out_pin, Button1_pin, Button2_pin, power_controll_pin):
|
||||||
# LED output pins
|
# LED output pins
|
||||||
GPIO.setmode(GPIO.BOARD)
|
GPIO.setmode(GPIO.BOARD)
|
||||||
|
|
||||||
@ -27,6 +27,12 @@ def GPIO_setup(LED1_pin, LED2_pin, Button1_pin, Button2_pin, power_controll_pin)
|
|||||||
GPIO.setup(LED2_pin, GPIO.OUT) # 2
|
GPIO.setup(LED2_pin, GPIO.OUT) # 2
|
||||||
GPIO.output(LED2_pin, GPIO.HIGH)
|
GPIO.output(LED2_pin, GPIO.HIGH)
|
||||||
|
|
||||||
|
if LED_out_pin != None:
|
||||||
|
GPIO.setup(LED_out_pin, GPIO.OUT)
|
||||||
|
GPIO.output(LED_out_pin, GPIO.LOW)
|
||||||
|
|
||||||
|
LED_status = [False, True, False]
|
||||||
|
else:
|
||||||
LED_status = [False, True]
|
LED_status = [False, True]
|
||||||
|
|
||||||
# switch controlled input
|
# switch controlled input
|
||||||
@ -191,11 +197,12 @@ def main():
|
|||||||
|
|
||||||
LED1_pin = 11
|
LED1_pin = 11
|
||||||
LED2_pin = 13
|
LED2_pin = 13
|
||||||
|
LED_out_pin = 35
|
||||||
Button1_pin = 16
|
Button1_pin = 16
|
||||||
Button2_pin = 18
|
Button2_pin = 18
|
||||||
power_controll_pin = 37
|
power_controll_pin = 37
|
||||||
|
|
||||||
LED_status = GPIO_setup(LED1_pin, LED2_pin, Button1_pin, Button2_pin, power_controll_pin)
|
LED_status = GPIO_setup(LED1_pin, LED2_pin, LED_out_pin, Button1_pin, Button2_pin, power_controll_pin)
|
||||||
|
|
||||||
last_button_1_t = time()
|
last_button_1_t = time()
|
||||||
last_button_2_t = time()
|
last_button_2_t = time()
|
||||||
@ -213,7 +220,7 @@ def main():
|
|||||||
low_channel = 0
|
low_channel = 0
|
||||||
high_channel = channels
|
high_channel = channels
|
||||||
|
|
||||||
samples_per_channel = rate * 2 # * channels = Buffer size
|
samples_per_channel = rate * 20 # * channels = Buffer size
|
||||||
# rate = 20000
|
# rate = 20000
|
||||||
scan_options = ScanOption.CONTINUOUS
|
scan_options = ScanOption.CONTINUOUS
|
||||||
flags = AInScanFlag.DEFAULT
|
flags = AInScanFlag.DEFAULT
|
||||||
@ -273,13 +280,6 @@ def main():
|
|||||||
print(ranges[range_index])
|
print(ranges[range_index])
|
||||||
|
|
||||||
# Allocate a buffer to receive the data.
|
# Allocate a buffer to receive the data.
|
||||||
data = create_float_buffer(channel_count, samples_per_channel)
|
|
||||||
# system('clear')
|
|
||||||
|
|
||||||
# Start the acquisition.
|
|
||||||
rate = ai_device.a_in_scan(low_channel, high_channel, input_mode, ranges[range_index], samples_per_channel,
|
|
||||||
rate, scan_options, flags, data)
|
|
||||||
last_idx = 0
|
|
||||||
# f = open('/media/pi/data1/test_file.raw', 'wb')
|
# f = open('/media/pi/data1/test_file.raw', 'wb')
|
||||||
|
|
||||||
|
|
||||||
@ -290,22 +290,32 @@ def main():
|
|||||||
sleep(.1)
|
sleep(.1)
|
||||||
GPIO.output(LED1_pin, GPIO.LOW)
|
GPIO.output(LED1_pin, GPIO.LOW)
|
||||||
LED_status[0] = False
|
LED_status[0] = False
|
||||||
|
sleep(2.)
|
||||||
|
data = create_float_buffer(channel_count, samples_per_channel)
|
||||||
|
# system('clear')
|
||||||
|
|
||||||
|
# Start the acquisition.
|
||||||
|
rate = ai_device.a_in_scan(low_channel, high_channel, input_mode, ranges[range_index], samples_per_channel,
|
||||||
|
rate, scan_options, flags, data)
|
||||||
|
last_idx = 0
|
||||||
|
|
||||||
|
|
||||||
sleep(2)
|
|
||||||
|
|
||||||
emergency_LED_t = time()
|
emergency_LED_t = time()
|
||||||
emergency_LED_interval = 0.5
|
emergency_LED_interval = 0.5
|
||||||
|
|
||||||
|
|
||||||
LED_t = time()
|
LED_t = time()
|
||||||
LED_t_interval = 2
|
LED_t_interval = 2
|
||||||
|
|
||||||
|
out_LED_t = time()
|
||||||
|
out_LED_interval = 1
|
||||||
|
|
||||||
temp_t0 = time()
|
temp_t0 = time()
|
||||||
next_temp_t = 0
|
next_temp_t = 0
|
||||||
temp_interval = 300 # sec --> 5 min
|
temp_interval = 300 # sec --> 5 min
|
||||||
|
|
||||||
disp_eth_power = True
|
disp_eth_power = True
|
||||||
|
#while True:
|
||||||
while GPIO.input(Button1_pin) == GPIO.LOW:
|
while GPIO.input(Button1_pin) == GPIO.LOW:
|
||||||
if record_temp == True:
|
if record_temp == True:
|
||||||
if time() - temp_t0 > next_temp_t:
|
if time() - temp_t0 > next_temp_t:
|
||||||
@ -321,9 +331,7 @@ def main():
|
|||||||
w1_f.close()
|
w1_f.close()
|
||||||
next_temp_t += temp_interval
|
next_temp_t += temp_interval
|
||||||
|
|
||||||
# blinking LED
|
# blinking LED for rec
|
||||||
if GPIO.input(power_controll_pin) == GPIO.HIGH:
|
|
||||||
|
|
||||||
if time() - LED_t < .1 and LED_status[0] == False:
|
if time() - LED_t < .1 and LED_status[0] == False:
|
||||||
LED_status[0] = True
|
LED_status[0] = True
|
||||||
GPIO.output(LED1_pin, GPIO.HIGH)
|
GPIO.output(LED1_pin, GPIO.HIGH)
|
||||||
@ -331,34 +339,27 @@ def main():
|
|||||||
LED_status[0] = False
|
LED_status[0] = False
|
||||||
GPIO.output(LED1_pin, GPIO.LOW)
|
GPIO.output(LED1_pin, GPIO.LOW)
|
||||||
if time() - LED_t >= LED_t_interval:
|
if time() - LED_t >= LED_t_interval:
|
||||||
LED_t = time()
|
LED_t = time() - (time() - LED_t - LED_t_interval)
|
||||||
elif GPIO.input(power_controll_pin) == GPIO.LOW:
|
|
||||||
print('battery low')
|
if len(LED_status) == 3:
|
||||||
|
if time() - out_LED_t < .1 and LED_status[2] == False:
|
||||||
if time() - emergency_LED_t > emergency_LED_interval:
|
LED_status[2] = True
|
||||||
if LED_status[0] == LED_status[1]:
|
GPIO.output(LED_out_pin, GPIO.HIGH)
|
||||||
GPIO.output(LED1_pin, GPIO.HIGH)
|
elif time() - out_LED_t >= .1 and LED_status[2] == True:
|
||||||
GPIO.output(LED2_pin, GPIO.LOW)
|
LED_status[2] = False
|
||||||
LED_status = [True, False]
|
GPIO.output(LED_out_pin, GPIO.LOW)
|
||||||
emergency_LED_t = time()
|
|
||||||
else:
|
|
||||||
if LED_status[0] == True:
|
|
||||||
GPIO.output(LED1_pin, GPIO.LOW)
|
|
||||||
GPIO.output(LED2_pin, GPIO.HIGH)
|
|
||||||
LED_status = [False, True]
|
|
||||||
emergency_LED_t = time()
|
|
||||||
else:
|
else:
|
||||||
GPIO.output(LED1_pin, GPIO.HIGH)
|
pass
|
||||||
GPIO.output(LED2_pin, GPIO.LOW)
|
|
||||||
LED_status = [True, False]
|
if time() - out_LED_t >= out_LED_interval:
|
||||||
emergency_LED_t = time()
|
out_LED_t = time() - (time() - out_LED_t - out_LED_interval )
|
||||||
|
|
||||||
|
|
||||||
# dist & eth0 controll
|
# dist & eth0 controll
|
||||||
if GPIO.input(Button2_pin) == GPIO.HIGH and (time() - last_button_2_t) > 5:
|
if GPIO.input(Button2_pin) == GPIO.HIGH and (time() - last_button_2_t) > 5:
|
||||||
if disp_eth_power == True:
|
if disp_eth_power == True:
|
||||||
subprocess.run(['tvservice', '-o'])
|
subprocess.run(['tvservice', '-o'])
|
||||||
subprocess.run(['vcgencmd', 'display_power', '0'])
|
subprocess.run(['vcgencmd', 'display_power', '0'])#
|
||||||
|
|
||||||
subprocess.run(['sudo', 'ip', 'link', 'set', 'eth0', 'down'])
|
subprocess.run(['sudo', 'ip', 'link', 'set', 'eth0', 'down'])
|
||||||
GPIO.output(LED2_pin, GPIO.LOW)
|
GPIO.output(LED2_pin, GPIO.LOW)
|
||||||
@ -369,7 +370,7 @@ def main():
|
|||||||
subprocess.run(['tvservice', '-p'])
|
subprocess.run(['tvservice', '-p'])
|
||||||
subprocess.run(['vcgencmd', 'display_power', '1'])
|
subprocess.run(['vcgencmd', 'display_power', '1'])
|
||||||
subprocess.run(['sudo', '/bin/chvt', '6'])
|
subprocess.run(['sudo', '/bin/chvt', '6'])
|
||||||
subprocess.run(['sudo', '/bin/chvt', '7'])
|
subprocess.run(['sudo', '/bin/chvt', '7'])#
|
||||||
|
|
||||||
subprocess.run(['sudo', 'ip', 'link', 'set', 'eth0', 'up'])
|
subprocess.run(['sudo', 'ip', 'link', 'set', 'eth0', 'up'])
|
||||||
GPIO.output(LED2_pin, GPIO.HIGH)
|
GPIO.output(LED2_pin, GPIO.HIGH)
|
||||||
@ -380,24 +381,21 @@ def main():
|
|||||||
status, transfer_status = ai_device.get_scan_status()
|
status, transfer_status = ai_device.get_scan_status()
|
||||||
|
|
||||||
index = transfer_status.current_index
|
index = transfer_status.current_index
|
||||||
|
#print(last_idx - index)
|
||||||
if (last_idx > index) and (index != -1):
|
#embed()
|
||||||
|
#quit()
|
||||||
|
if index < 0 or index == last_idx:
|
||||||
|
continue
|
||||||
|
|
||||||
|
if index > last_idx:
|
||||||
|
(np.array(data[last_idx:index], dtype=np.float32) / gain).tofile(f)
|
||||||
|
else:
|
||||||
(np.array(data[last_idx:], dtype=np.float32) / gain).tofile(f)
|
(np.array(data[last_idx:], dtype=np.float32) / gain).tofile(f)
|
||||||
(np.array(data[:index], dtype=np.float32) / gain).tofile(f)
|
(np.array(data[:index], dtype=np.float32) / gain).tofile(f)
|
||||||
f.flush()
|
f.flush()
|
||||||
|
|
||||||
if index == -1:
|
|
||||||
pass
|
|
||||||
else:
|
|
||||||
(np.array(data[last_idx:index], dtype=np.float32) / 1000).tofile(f)
|
|
||||||
|
|
||||||
if index == -1:
|
|
||||||
last_idx= len(data)
|
|
||||||
else:
|
|
||||||
last_idx = index
|
last_idx = index
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
f.close()
|
f.close()
|
||||||
temp_f.close()
|
temp_f.close()
|
||||||
|
|
||||||
|
101
rasp_grid_cfg.py
101
rasp_grid_cfg.py
@ -10,14 +10,15 @@ from PyQt5.QtCore import *
|
|||||||
class Grid_tab(QWidget):
|
class Grid_tab(QWidget):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
self.gird_no_val = 1
|
self.grid_no_val = 1
|
||||||
|
self.rec_mode_val = 'standalone'
|
||||||
self.columns_val = 8
|
self.columns_val = 8
|
||||||
self.rows_val = 8
|
self.rows_val = 8
|
||||||
self.col_dist_val = 50
|
self.col_dist_val = 50
|
||||||
self.row_dist_val = 50
|
self.row_dist_val = 50
|
||||||
self.channel_offset_val = 0
|
self.channel_offset_val = 0
|
||||||
self.elec_type_val = 'plain'
|
self.elec_type_val = 'headstage'
|
||||||
self.ref_elec_type_val = 'plain'
|
self.ref_elec_type_val = 'screw'
|
||||||
self.ref_elec_posx_val = 0.00
|
self.ref_elec_posx_val = 0.00
|
||||||
self.ref_elec_posy_val = 0.00
|
self.ref_elec_posy_val = 0.00
|
||||||
self.water_depth_val = 0.25
|
self.water_depth_val = 0.25
|
||||||
@ -33,78 +34,76 @@ class Grid_tab(QWidget):
|
|||||||
|
|
||||||
def get_widgets(self):
|
def get_widgets(self):
|
||||||
grid_noL = QLabel('Grid no:', self)
|
grid_noL = QLabel('Grid no:', self)
|
||||||
self.grid_no = QLineEdit(str(self.gird_no_val), self)
|
self.grid_no = QLineEdit(str(self.grid_no_val), self)
|
||||||
self.gridlayout.addWidget(grid_noL, 0, 0)
|
self.gridlayout.addWidget(grid_noL, 0, 0)
|
||||||
self.gridlayout.addWidget(self.grid_no, 0, 1)
|
self.gridlayout.addWidget(self.grid_no, 0, 1)
|
||||||
|
|
||||||
|
rec_modeL = QLabel('Recorde mode', self)
|
||||||
|
self.rec_mode = QLineEdit(self.rec_mode_val, self)
|
||||||
|
self.gridlayout.addWidget(rec_modeL, 1, 0)
|
||||||
|
self.gridlayout.addWidget(self.rec_mode, 1, 1)
|
||||||
|
|
||||||
col_elecsU =QLabel('n', self)
|
col_elecsU =QLabel('n', self)
|
||||||
col_elecsL =QLabel('Electrod Columns:', self)
|
col_elecsL =QLabel('Electrod Columns:', self)
|
||||||
self.col_elecs = QLineEdit(str(self.columns_val), self)
|
self.col_elecs = QLineEdit(str(self.columns_val), self)
|
||||||
self.gridlayout.addWidget(col_elecsL, 1, 0)
|
self.gridlayout.addWidget(col_elecsL, 2, 0)
|
||||||
self.gridlayout.addWidget(self.col_elecs, 1, 1)
|
self.gridlayout.addWidget(self.col_elecs, 2, 1)
|
||||||
self.gridlayout.addWidget(col_elecsU, 1, 2)
|
self.gridlayout.addWidget(col_elecsU, 2, 2)
|
||||||
|
|
||||||
row_elecsU = QLabel('n', self)
|
row_elecsU = QLabel('n', self)
|
||||||
row_elecsL = QLabel('Electrod Rows:', self)
|
row_elecsL = QLabel('Electrod Rows:', self)
|
||||||
self.row_elecs = QLineEdit(str(self.rows_val), self)
|
self.row_elecs = QLineEdit(str(self.rows_val), self)
|
||||||
self.gridlayout.addWidget(row_elecsL, 2, 0)
|
self.gridlayout.addWidget(row_elecsL, 3, 0)
|
||||||
self.gridlayout.addWidget(self.row_elecs, 2, 1)
|
self.gridlayout.addWidget(self.row_elecs, 3, 1)
|
||||||
self.gridlayout.addWidget(row_elecsU, 2, 2)
|
self.gridlayout.addWidget(row_elecsU, 3, 2)
|
||||||
|
|
||||||
col_spaceU = QLabel('cm', self)
|
col_spaceU = QLabel('cm', self)
|
||||||
col_spaceL = QLabel('Column spacing:', self)
|
col_spaceL = QLabel('Column spacing:', self)
|
||||||
self.col_space = QLineEdit(str(self.col_dist_val), self)
|
self.col_space = QLineEdit(str(self.col_dist_val), self)
|
||||||
self.gridlayout.addWidget(col_spaceL, 3, 0)
|
self.gridlayout.addWidget(col_spaceL, 4, 0)
|
||||||
self.gridlayout.addWidget(self.col_space, 3, 1)
|
self.gridlayout.addWidget(self.col_space, 4, 1)
|
||||||
self.gridlayout.addWidget(col_spaceU, 3, 2)
|
self.gridlayout.addWidget(col_spaceU, 4, 2)
|
||||||
|
|
||||||
row_spaceU = QLabel('cm', self)
|
row_spaceU = QLabel('cm', self)
|
||||||
row_spaceL = QLabel('Row spacing:', self)
|
row_spaceL = QLabel('Row spacing:', self)
|
||||||
self.row_space = QLineEdit(str(self.row_dist_val), self)
|
self.row_space = QLineEdit(str(self.row_dist_val), self)
|
||||||
self.gridlayout.addWidget(row_spaceL, 4, 0)
|
self.gridlayout.addWidget(row_spaceL, 5, 0)
|
||||||
self.gridlayout.addWidget(self.row_space, 4, 1)
|
self.gridlayout.addWidget(self.row_space, 5, 1)
|
||||||
self.gridlayout.addWidget(row_spaceU, 4, 2)
|
self.gridlayout.addWidget(row_spaceU, 5, 2)
|
||||||
|
|
||||||
# channel_offsetU = QLabel('n', self)
|
|
||||||
# channel_offsetL = QLabel('Channel offset:', self)
|
|
||||||
# self.channel_offset = QLineEdit(str(self.channel_offset_val), self)
|
|
||||||
# self.gridlayout.addWidget(channel_offsetL, 4, 0)
|
|
||||||
# self.gridlayout.addWidget(self.channel_offset, 4, 1)
|
|
||||||
# self.gridlayout.addWidget(channel_offsetU, 4, 2)
|
|
||||||
|
|
||||||
elec_typeL = QLabel('Electrode Type:', self)
|
elec_typeL = QLabel('Electrode Type:', self)
|
||||||
self.elec_type = QLineEdit(self.elec_type_val, self)
|
self.elec_type = QLineEdit(self.elec_type_val, self)
|
||||||
self.gridlayout.addWidget(elec_typeL, 5, 0)
|
self.gridlayout.addWidget(elec_typeL, 6, 0)
|
||||||
self.gridlayout.addWidget(self.elec_type, 5, 1)
|
self.gridlayout.addWidget(self.elec_type, 6, 1)
|
||||||
|
|
||||||
ref_elec_typeL = QLabel('Ref. Electrode Type:', self)
|
ref_elec_typeL = QLabel('Ref. Electrode Type:', self)
|
||||||
self.ref_elec_type = QLineEdit(self.ref_elec_type_val, self)
|
self.ref_elec_type = QLineEdit(self.ref_elec_type_val, self)
|
||||||
self.gridlayout.addWidget(ref_elec_typeL, 6, 0)
|
self.gridlayout.addWidget(ref_elec_typeL, 7, 0)
|
||||||
self.gridlayout.addWidget(self.ref_elec_type, 6, 1)
|
self.gridlayout.addWidget(self.ref_elec_type, 7, 1)
|
||||||
|
|
||||||
ref_elec_xU = QLabel('m', self)
|
ref_elec_xU = QLabel('m', self)
|
||||||
ref_elec_xL = QLabel('Ref. Electrode Pos-x:', self)
|
ref_elec_xL = QLabel('Ref. Electrode Pos-x:', self)
|
||||||
self.ref_elec_x = QLineEdit('%.2f' % self.ref_elec_posx_val, self)
|
self.ref_elec_x = QLineEdit('%.2f' % self.ref_elec_posx_val, self)
|
||||||
self.gridlayout.addWidget(ref_elec_xL, 7, 0)
|
self.gridlayout.addWidget(ref_elec_xL, 8, 0)
|
||||||
self.gridlayout.addWidget(self.ref_elec_x, 7, 1)
|
self.gridlayout.addWidget(self.ref_elec_x, 8, 1)
|
||||||
self.gridlayout.addWidget(ref_elec_xU, 7, 2)
|
self.gridlayout.addWidget(ref_elec_xU, 8, 2)
|
||||||
|
|
||||||
ref_elec_yU = QLabel('m', self)
|
ref_elec_yU = QLabel('m', self)
|
||||||
ref_elec_yL = QLabel('Ref. Electrode Pos-y:', self)
|
ref_elec_yL = QLabel('Ref. Electrode Pos-y:', self)
|
||||||
self.ref_elec_y = QLineEdit('%.2f' % self.ref_elec_posy_val, self)
|
self.ref_elec_y = QLineEdit('%.2f' % self.ref_elec_posy_val, self)
|
||||||
self.gridlayout.addWidget(ref_elec_yL, 8, 0)
|
self.gridlayout.addWidget(ref_elec_yL, 9, 0)
|
||||||
self.gridlayout.addWidget(self.ref_elec_y, 8, 1)
|
self.gridlayout.addWidget(self.ref_elec_y, 9, 1)
|
||||||
self.gridlayout.addWidget(ref_elec_yU, 8, 2)
|
self.gridlayout.addWidget(ref_elec_yU, 9, 2)
|
||||||
|
|
||||||
water_depthU = QLabel('cm', self)
|
water_depthU = QLabel('cm', self)
|
||||||
water_depthL = QLabel('Water depth:', self)
|
water_depthL = QLabel('Water depth:', self)
|
||||||
self.water_depth = QLineEdit('%.2f' % self.water_depth_val, self)
|
self.water_depth = QLineEdit('%.2f' % self.water_depth_val, self)
|
||||||
self.gridlayout.addWidget(water_depthL, 9, 0)
|
self.gridlayout.addWidget(water_depthL, 10, 0)
|
||||||
self.gridlayout.addWidget(self.water_depth, 9, 1)
|
self.gridlayout.addWidget(self.water_depth, 10, 1)
|
||||||
self.gridlayout.addWidget(water_depthU, 9, 2)
|
self.gridlayout.addWidget(water_depthU, 10, 2)
|
||||||
|
|
||||||
space = QLabel('', self)
|
space = QLabel('', self)
|
||||||
self.gridlayout.addWidget(space, 10, 0)
|
self.gridlayout.addWidget(space, 11, 0)
|
||||||
|
|
||||||
class Hardware_settings_tab(QWidget):
|
class Hardware_settings_tab(QWidget):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
@ -276,27 +275,6 @@ class Recording_settings(QWidget):
|
|||||||
self.gridlayout.addWidget(experimenterL, 10, 0)
|
self.gridlayout.addWidget(experimenterL, 10, 0)
|
||||||
self.gridlayout.addWidget(self.experimenter, 10, 1)
|
self.gridlayout.addWidget(self.experimenter, 10, 1)
|
||||||
|
|
||||||
# DataTimeU = QLabel('ms', self)
|
|
||||||
# DataTimeL = QLabel('Data Time:', self)
|
|
||||||
# self.datatime = QLineEdit(str(self.datatime_val), self)
|
|
||||||
# self.gridlayout.addWidget(DataTimeL, 11, 0)
|
|
||||||
# self.gridlayout.addWidget(self.datatime, 11, 1)
|
|
||||||
# self.gridlayout.addWidget(DataTimeU, 11, 2)
|
|
||||||
#
|
|
||||||
# DataIntervalU = QLabel('ms', self)
|
|
||||||
# DataIntervalL = QLabel('Data Interval:', self)
|
|
||||||
# self.datainterval = QLineEdit(str(self.datainterval_val), self)
|
|
||||||
# self.gridlayout.addWidget(DataIntervalL, 12, 0)
|
|
||||||
# self.gridlayout.addWidget(self.datainterval, 12, 1)
|
|
||||||
# self.gridlayout.addWidget(DataIntervalU, 12, 2)
|
|
||||||
#
|
|
||||||
# BufferTimeU = QLabel('s', self)
|
|
||||||
# BufferTimeL = QLabel('Buffer Time:', self)
|
|
||||||
# self.buffertime = QLineEdit(str(self.buffertime_val), self)
|
|
||||||
# self.gridlayout.addWidget(BufferTimeL, 13, 0)
|
|
||||||
# self.gridlayout.addWidget(self.buffertime, 13, 1)
|
|
||||||
# self.gridlayout.addWidget(BufferTimeU, 13, 2)
|
|
||||||
|
|
||||||
space = QLabel('', self)
|
space = QLabel('', self)
|
||||||
self.gridlayout.addWidget(space, 11, 0)
|
self.gridlayout.addWidget(space, 11, 0)
|
||||||
|
|
||||||
@ -395,8 +373,10 @@ class MainWindow(QTabWidget):
|
|||||||
cfg = f.readlines()
|
cfg = f.readlines()
|
||||||
|
|
||||||
for line in cfg:
|
for line in cfg:
|
||||||
if 'Gridno' in line:
|
if 'Gridno1' in line:
|
||||||
self.Grid.grid_no_val = int(line.split(':')[1].strip())
|
self.Grid.grid_no_val = int(line.split(':')[1].strip())
|
||||||
|
elif 'RecordMode1' in line:
|
||||||
|
self.Grid.rec_mode_val = line.split(':')[1].strip()
|
||||||
elif 'Columns1' in line:
|
elif 'Columns1' in line:
|
||||||
self.Grid.columns_val = int(line.split(':')[1].strip())
|
self.Grid.columns_val = int(line.split(':')[1].strip())
|
||||||
elif 'Rows1' in line:
|
elif 'Rows1' in line:
|
||||||
@ -475,7 +455,8 @@ class MainWindow(QTabWidget):
|
|||||||
f.write('*FishGrid\n')
|
f.write('*FishGrid\n')
|
||||||
f.write(' Grid &1:\n')
|
f.write(' Grid &1:\n')
|
||||||
f.write(' Used1 : true\n')
|
f.write(' Used1 : true\n')
|
||||||
f.write(' Gridno1 : 1\n')
|
f.write(' Gridno1 : %.0f\n' % int(self.Grid.grid_no.text()))
|
||||||
|
f.write(' RecordMode1 : %s\n' % self.Grid.rec_mode.text())
|
||||||
f.write(' Columns1 : %.0f\n' % int(self.Grid.col_elecs.text()))
|
f.write(' Columns1 : %.0f\n' % int(self.Grid.col_elecs.text()))
|
||||||
f.write(' Rows1 : %.0f\n' % int(self.Grid.row_elecs.text()))
|
f.write(' Rows1 : %.0f\n' % int(self.Grid.row_elecs.text()))
|
||||||
f.write(' ColumnDistance1 : %.1fcm\n' % float(self.Grid.col_space.text()))
|
f.write(' ColumnDistance1 : %.1fcm\n' % float(self.Grid.col_space.text()))
|
||||||
|
Loading…
Reference in New Issue
Block a user