##// END OF EJS Templates
Script test de pruebas actuales con el update de heading en el block 360, el parametro adicional es heading que se lee del experiment.conf
Script test de pruebas actuales con el update de heading en el block 360, el parametro adicional es heading que se lee del experiment.conf

File last commit:

r1418:2ccc6450afd4
r1759:c8ee9da660f1
Show More
basic_proc00004.py
125 lines | 5.3 KiB | text/x-python | PythonLexer
avaldezp
update y revision RHI
r1411 # Ing. AVP
# 04/01/2022
# ARCHIVO DE LECTURA
#---- DATA RHI --- 23 DE NOVIEMBRE DEL 2021 --- 23/11/2021---
#---- PEDESTAL ----------------------------------------------
#------- HORA 143826 /DATA_RM/TEST_PEDESTAL/P20211123-143826 14:38-15:10
#---- RADAR ----------------------------------------------
#------- 14:26-15:00
#------- /DATA_RM/DRONE/2MHZ_5V_ELEVACION/
#------- /DATA_RM/DRONE/2MHZ_5V_ELEVACION/ch0/2021-11-23T19-00-00
import os, sys
import datetime
import time
import numpy
from ext_met import getfirstFilefromPath,getDatavaluefromDirFilename
from schainpy.controller import Project
#-----------------------------------------------------------------------------------------
print("[SETUP]-RADAR METEOROLOGICO-")
path_ped = "/DATA_RM/TEST_PEDESTAL/P20211123-143826"
avaldezp
last_update primeras correciones rhi
r1418 path_ped = "/DATA_RM/TEST_PEDESTAL/P20220217-172216"
avaldezp
update y revision RHI
r1411 print("PATH PEDESTAL :",path_ped)
path_adq = "/DATA_RM/DRONE/2MHZ_5V_ELEVACION/"
avaldezp
last_update primeras correciones rhi
r1418 path_adq = "/DATA_RM/2MHZTEST/"
avaldezp
update y revision RHI
r1411 print("PATH DATA :",path_adq)
figpath_pp_rti = "/home/soporte/Pictures/TEST_PP_RHI"
print("PATH PP RTI :",figpath_pp_rti)
figpath_pp_rhi = "/home/soporte/Pictures/TEST_PP_RHI"
print("PATH PP RHI :",figpath_pp_rhi)
path_pp_save_int = "/DATA_RM/TEST_SAVE_PP_INT_RHI"
print("PATH SAVE PP INT :",path_pp_save_int)
print(" ")
#-------------------------------------------------------------------------------------------
print("SELECCIONAR MODO: PPI (0) O RHI (1)")
mode_wr = 1
if mode_wr==0:
print("[ ON ] MODE PPI")
list_ped = getfirstFilefromPath(path=path_ped,meta="PE",ext=".hdf5")
ff_pedestal = list_ped[2]
azi_vel = getDatavaluefromDirFilename(path=path_ped,file=ff_pedestal,value="azi_vel")
V = round(azi_vel[0])
print("VELOCIDAD AZI :", int(numpy.mean(azi_vel)),"°/seg")
else:
print("[ ON ] MODE RHI")
list_ped = getfirstFilefromPath(path=path_ped,meta="PE",ext=".hdf5")
ff_pedestal = list_ped[2]
ele_vel = getDatavaluefromDirFilename(path=path_ped,file=ff_pedestal,value="ele_vel")
V = round(ele_vel[0])
avaldezp
last_update primeras correciones rhi
r1418 V = 8.0#10.0
avaldezp
update y revision RHI
r1411 print("VELOCIDAD ELE :", int(numpy.mean(ele_vel)),"°/seg")
print(" ")
#---------------------------------------------------------------------------------------
print("SELECCIONAR MODO: PULSE PAIR (0) O FREQUENCY (1)")
mode_proc = 0
if mode_proc==0:
print("[ ON ] MODE PULSEPAIR")
else:
print("[ ON ] MODE FREQUENCY")
ipp = 60.0
print("IPP(Km.) : %1.2f"%ipp)
ipp_sec = (ipp*1.0e3/150.0)*1.0e-6
print("IPP(useg.) : %1.2f"%(ipp_sec*(1.0e6)))
VEL=V
n= int(1/(VEL*ipp_sec))
print("N° Profiles : ", n)
#--------------------------------------------
plot_rti = 0
plot_rhi = 1
integration = 1
save = 0
#---------------------------RANGO DE PLOTEO----------------------------------
dBmin = '1'
dBmax = '85'
xmin = '17'
xmax = '17.25'
ymin = '0'
ymax = '600'
#----------------------------------------------------------------------------
time.sleep(3)
#---------------------SIGNAL CHAIN ------------------------------------
desc = "USRP_WEATHER_RADAR"
filename = "USRP_processing.xml"
controllerObj = Project()
controllerObj.setup(id = '191', name='Test_USRP', description=desc)
#---------------------UNIDAD DE LECTURA--------------------------------
readUnitConfObj = controllerObj.addReadUnit(datatype='DigitalRFReader',
path=path_adq,
avaldezp
last_update primeras correciones rhi
r1418 startDate="2022/02/17",#today,
endDate="2022/02/17",#today,
startTime='00:00:00',
avaldezp
update y revision RHI
r1411 endTime='23:59:59',
delay=0,
#set=0,
online=0,
walk=1,
ippKm=ipp)
procUnitConfObjA = controllerObj.addProcUnit(datatype='VoltageProc',inputId=readUnitConfObj.getId())
opObj11 = procUnitConfObjA.addOperation(name='selectHeights')
opObj11.addParameter(name='minIndex', value='1', format='int')
# opObj11.addParameter(name='maxIndex', value='10000', format='int')
opObj11.addParameter(name='maxIndex', value='400', format='int')
if mode_proc==0:
opObj11 = procUnitConfObjA.addOperation(name='PulsePair', optype='other')
opObj11.addParameter(name='n', value=int(n), format='int')
procUnitConfObjB= controllerObj.addProcUnit(datatype='ParametersProc',inputId=procUnitConfObjA.getId())
if integration==1:
opObj11 = procUnitConfObjB.addOperation(name='PedestalInformation')
opObj11.addParameter(name='path_ped', value=path_ped)
opObj11.addParameter(name='t_Interval_p', value='0.01', format='float')
avaldezp
last_update primeras correciones rhi
r1418 opObj11.addParameter(name='wr_exp', value='RHI')
avaldezp
update y revision RHI
r1411
if plot_rhi==1:
opObj11 = procUnitConfObjB.addOperation(name='Block360')
opObj11.addParameter(name='n', value='10', format='int')
opObj11.addParameter(name='mode', value=mode_proc, format='int')
# este bloque funciona bien con divisores de 360 no olvidar 0 10 20 30 40 60 90 120 180
opObj11= procUnitConfObjB.addOperation(name='WeatherRHIPlot',optype='other')
opObj11.addParameter(name='save', value=figpath_pp_rhi)
opObj11.addParameter(name='save_period', value=1)
controllerObj.start()