Skip to content
Snippets Groups Projects
Commit cd825087 authored by Stefano Di Frischia's avatar Stefano Di Frischia
Browse files

L2SS-652: add jupyter notebook demonstrator

parent 61ea6bff
Branches
Tags
1 merge request!268Resolve L2SS-652 "Investigate hdbpp python"
%% Cell type:code id:d0328351 tags:
``` python
import sys, time
sys.path.append('/hosthome/tango/tangostationcontrol/tangostationcontrol/')
from toolkit.hdbpp_reader.timescaledb import TimescaleDbReader
```
%% Cell type:code id:c2295969 tags:
``` python
reader = TimescaleDbReader({'database':'hdb', 'user':'postgres', 'password':'password', 'port':5432,'host':'archiver-timescale'})
```
%% Cell type:code id:24cd0dbc tags:
``` python
reader.parse_config('postgres:password@archiver-timescale:5432/hdb')
```
%% Output
{'user': 'postgres',
'password': 'password',
'host': 'archiver-timescale',
'database': 'hdb',
'port': 5432}
%% Cell type:code id:582e2c9e tags:
``` python
reader.get_attributes()
```
%% Output
['tango://databaseds:10000/stat/sdp/1/fpga_temp_r',
'tango://databaseds:10000/stat/recv/1/recvtr_i2c_error_r',
'tango://databaseds:10000/stat/recv/1/rcu_error_r',
'tango://databaseds:10000/stat/recv/1/recv_iout_error_r',
'tango://databaseds:10000/stat/recv/1/recv_temp_error_r',
'tango://databaseds:10000/stat/recv/1/recv_vout_error_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_good_r',
'tango://databaseds:10000/stat/recv/1/rcu_mask_rw',
'tango://databaseds:10000/stat/recv/1/rcu_pcb_version_r',
'tango://databaseds:10000/stat/sdp/1/fpga_firmware_version_r',
'tango://databaseds:10000/stat/sdp/1/tr_fpga_communication_error_r',
'tango://databaseds:10000/stat/sdp/1/fpga_error_r',
'tango://databaseds:10000/stat/sdp/1/fpga_processing_error_r',
'tango://databaseds:10000/stat/sdp/1/fpga_input_error_r',
'tango://databaseds:10000/stat/sdp/1/tr_fpga_mask_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_hardware_version_r',
'tango://databaseds:10000/stat/sdp/1/tr_software_version_r',
'tango://databaseds:10000/stat/recv/1/version_r',
'tango://databaseds:10000/stat/recv/1/opcua_missing_attributes_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_green_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_green_on_rw',
'tango://databaseds:10000/stat/recv/1/rcu_led_red_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_red_on_rw',
'tango://databaseds:10000/stat/recv/1/rcu_pcb_id_r',
'tango://databaseds:10000/stat/recv/1/rcu_pcb_number_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_1v8_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_2v5_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_3v3_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_analog_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_digital_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_temp_r',
'tango://databaseds:10000/stat/recv/1/recvtr_monitor_rate_rw',
'tango://databaseds:10000/stat/recv/1/recvtr_translator_busy_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_colour_r',
'tango://databaseds:10000/stat/recv/1/state',
'tango://databaseds:10000/stat/recv/1/status',
'tango://databaseds:10000/stat/sdp/1/version_r',
'tango://databaseds:10000/stat/sdp/1/opcua_missing_attributes_r',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_enable_r',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_enable_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_hdr_eth_destination_mac_r',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_hdr_eth_destination_mac_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_hdr_ip_destination_address_r',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_hdr_ip_destination_address_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_hdr_udp_destination_port_r',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_hdr_udp_destination_port_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_scale_r',
'tango://databaseds:10000/stat/sdp/1/fpga_beamlet_output_scale_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_boot_image_r',
'tango://databaseds:10000/stat/sdp/1/fpga_boot_image_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_global_node_index_r',
'tango://databaseds:10000/stat/sdp/1/fpga_pps_present_r',
'tango://databaseds:10000/stat/sdp/1/fpga_pps_capture_cnt_r',
'tango://databaseds:10000/stat/sdp/1/fpga_pps_expected_cnt_r',
'tango://databaseds:10000/stat/sdp/1/fpga_pps_expected_cnt_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_processing_enable_r',
'tango://databaseds:10000/stat/sdp/1/fpga_processing_enable_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_scrap_r',
'tango://databaseds:10000/stat/sdp/1/fpga_scrap_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_antenna_band_index_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_block_period_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_f_adc_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_fsub_type_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_nyquist_sampling_zone_index_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_nyquist_sampling_zone_index_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_observation_id_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_observation_id_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_station_id_r',
'tango://databaseds:10000/stat/sdp/1/fpga_sdp_info_station_id_rw',
'tango://databaseds:10000/stat/sdp/1/fpga_time_since_last_pps_r',
'tango://databaseds:10000/stat/sdp/1/tr_fpga_mask_r',
'tango://databaseds:10000/stat/sdp/1/tr_sdp_config_first_fpga_nr_r',
'tango://databaseds:10000/stat/sdp/1/tr_sdp_config_nof_beamsets_r',
'tango://databaseds:10000/stat/sdp/1/tr_sdp_config_nof_fpgas_r',
'tango://databaseds:10000/stat/sdp/1/tr_start_time_r',
'tango://databaseds:10000/stat/sdp/1/tr_tod_r',
'tango://databaseds:10000/stat/sdp/1/tr_tod_pps_delta_r',
'tango://databaseds:10000/stat/sdp/1/fpga_bsn_monitor_input_bsn_r',
'tango://databaseds:10000/stat/sdp/1/fpga_bsn_monitor_input_nof_packets_r',
'tango://databaseds:10000/stat/sdp/1/fpga_bsn_monitor_input_nof_valid_r',
'tango://databaseds:10000/stat/sdp/1/fpga_bsn_monitor_input_nof_err_r',
'tango://databaseds:10000/stat/sdp/1/state',
'tango://databaseds:10000/stat/sdp/1/status']
%% Cell type:code id:9f985ceb tags:
``` python
device_name = 'STAT/RECV/1'
reader.get_attributes(pattern=f'*{device_name}*'.lower())
```
%% Output
['tango://databaseds:10000/stat/recv/1/recvtr_i2c_error_r',
'tango://databaseds:10000/stat/recv/1/rcu_error_r',
'tango://databaseds:10000/stat/recv/1/recv_iout_error_r',
'tango://databaseds:10000/stat/recv/1/recv_temp_error_r',
'tango://databaseds:10000/stat/recv/1/recv_vout_error_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_good_r',
'tango://databaseds:10000/stat/recv/1/rcu_mask_rw',
'tango://databaseds:10000/stat/recv/1/rcu_pcb_version_r',
'tango://databaseds:10000/stat/recv/1/version_r',
'tango://databaseds:10000/stat/recv/1/opcua_missing_attributes_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_green_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_green_on_rw',
'tango://databaseds:10000/stat/recv/1/rcu_led_red_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_red_on_rw',
'tango://databaseds:10000/stat/recv/1/rcu_pcb_id_r',
'tango://databaseds:10000/stat/recv/1/rcu_pcb_number_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_1v8_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_2v5_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_3v3_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_analog_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_pwr_digital_on_r',
'tango://databaseds:10000/stat/recv/1/rcu_temp_r',
'tango://databaseds:10000/stat/recv/1/recvtr_monitor_rate_rw',
'tango://databaseds:10000/stat/recv/1/recvtr_translator_busy_r',
'tango://databaseds:10000/stat/recv/1/rcu_led_colour_r',
'tango://databaseds:10000/stat/recv/1/state',
'tango://databaseds:10000/stat/recv/1/status']
%% Cell type:code id:5517c508 tags:
``` python
attr_name = 'rcu_mask_rw'
reader.is_attribute_archived(f'{device_name}/{attr_name}'.lower())
```
%% Output
1
%% Cell type:code id:740064f3 tags:
``` python
a = 'tango://databaseds:10000/stat/sdp/1/fpga_temp_r'
reader.get_last_attributes_values(attributes=a,columns=['value_r'],n=10)
```
%% Output
{}
%% Cell type:code id:d48fe536 tags:
``` python
reader._cursor.execute("SELECT att_conf_id, table_name, att_name FROM att_conf WHERE att_name LIKE '%tango://databaseds:10000/stat/sdp/1/fpga_temp_r%'")
reader._cursor.fetchall()
```
%% Output
[(1, 'att_array_devdouble', 'tango://databaseds:10000/stat/sdp/1/fpga_temp_r')]
%% Cell type:code id:fcab2a21 tags:
``` python
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment