diff --git a/hp4194/cv.py b/hp4194/cv.py new file mode 100644 index 0000000000000000000000000000000000000000..06260fb245417b70015513d231f9479b3430a66b --- /dev/null +++ b/hp4194/cv.py @@ -0,0 +1,78 @@ +from interface import * +import control +import matplotlib.pyplot as plt + + +#connect to device +device = control.hp4194() +device.write('reset') + +#create interface +messparameter,messparameter_dict = messparameter() +sweep_parameter,sweep_parameter_dict = sweep_parameter() +control_panel,measure,calibrate,clear_graphs,view=control_panel() + + +out = widgets.Output() + +hbox1 = widgets.HBox([sample,control_panel]) +display(hbox1) +hbox2=widgets.HBox([messparameter,sweep_parameter]) +display(hbox2) +display(out) + +def add_widgets_to_list(source_dictionary,target_list): + for widget in source_dictionary.values(): + target_list.append(widget) + + +all_widgets = [measure,calibrate,clear_graphs] +add_widgets_to_list(view,all_widgets) +add_widgets_to_list(sweep_parameter_dict,all_widgets) +add_widgets_to_list(messparameter_dict,all_widgets) + +def change_state(widgets_list): + for widget in widgets_list: + widget.disabled = not widget.disabled + + +def on_calibrate_clicked(b): + with out: + change_state(all_widgets) + device.write('reset') + + # perform an open calibration + device.inst.write("RQS255") + + device.write('imp_G_B') + device.write('bias_off') + + device.write('sweep_freq') + device.set_parameter('set_start',sweep_parameter_dict['start'].value) + device.set_parameter('set_stop',sweep_parameter_dict['stop'].value) + device.set_parameter('set_nop',sweep_parameter_dict['nop'].value) + + if sweep_parameter['type']=='Linear': + device.write('sweep_lin') + else:# log + device.write('sweep_log') + if sweep_parameter['direction']=='Up': + device.write('sweep_up') + else: + device.write('sweep_down') + + device.write('sweep_single') + device.write('imp_monitor_I') + device.set_parameter('set_osc',sweep_parameter_dict['osc'].value) + device.set_parameter('set_delay_time',sweep_parameter_dict['d_time'].value) + device.set_parameter('set_delay_apperture',sweep_parameter_dict['d_apperture'].value) + device.set_parameter('aver_num',sweep_parameter_dict['averaging'].value) + + device.write('open_cal_on') #data saved in registers OG and OB + device.write('start_open_cal') + device.wait() + + + + change_state(all_widgets) + \ No newline at end of file diff --git a/hp4194/test_interface.ipynb b/hp4194/test_interface.ipynb index 224a8fb4a90a8f2e5c2f3e9f0e873baedc37da50..2da6bbc3c037e45a5915ac4fb3915dd430b6f552 100644 --- a/hp4194/test_interface.ipynb +++ b/hp4194/test_interface.ipynb @@ -71,7 +71,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "65fbeb88cf39431eb687d12f6b1ab62a", + "model_id": "9d5320c4d8714f21907d8a2845d1361b", "version_major": 2, "version_minor": 0 }, @@ -85,7 +85,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "ef76aa4581d0423fb10586cd6ce61587", + "model_id": "0283052d535f40f3b9d71d12950bcf7f", "version_major": 2, "version_minor": 0 }, @@ -99,7 +99,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "bc5a8b63c9054093ae38ece5ec8f77e3", + "model_id": "f9b54cce2db34bf0b214703d0e08d560", "version_major": 2, "version_minor": 0 },