diff --git a/Model/peacock_uvp/apf04_config_hw.py b/Model/peacock_uvp/apf04_config_hw.py
index b88d7b5..0917319 100644
--- a/Model/peacock_uvp/apf04_config_hw.py
+++ b/Model/peacock_uvp/apf04_config_hw.py
@@ -9,9 +9,9 @@
import logging
from math import ceil
-from .apf04_gain import convert_dB_m2code, convert_code2dB_m, convert_code2dB, convert_dB2code, APF04_CODE_MAX_APPLIED
+from Model.peacock_uvp.apf04_gain import convert_dB_m2code, convert_code2dB_m, convert_code2dB, convert_dB2code, APF04_CODE_MAX_APPLIED
#from .ap_exception import ap_protocol_error
-from .apf_type import cast_int16, cast_uint16
+from Model.peacock_uvp.apf_type import cast_int16, cast_uint16
#ap_protocol_error(3300, "Warning: v_min has to be in [-Nyquist_Range, 0].")
diff --git a/Model/peacock_uvp/apf04_driver.py b/Model/peacock_uvp/apf04_driver.py
index f755b5f..61d17b6 100644
--- a/Model/peacock_uvp/apf04_driver.py
+++ b/Model/peacock_uvp/apf04_driver.py
@@ -10,11 +10,11 @@ from datetime import datetime
import struct
import logging
-from .apf04_modbus import Apf04Modbus
-from .apf04_addr_cmd import *
-from .apf04_config_hw import ConfigHw
-from .apf_timestamp import encode_timestamp
-from .apf04_exception import apf04_exception
+from Model.peacock_uvp.apf04_modbus import Apf04Modbus
+from Model.peacock_uvp.apf04_addr_cmd import *
+from Model.peacock_uvp.apf04_config_hw import ConfigHw
+from Model.peacock_uvp.apf_timestamp import encode_timestamp
+from Model.peacock_uvp.apf04_exception import apf04_exception
# TODO gérer ici les erreur spécifiques au HW
diff --git a/Model/peacock_uvp/apf04_measures.py b/Model/peacock_uvp/apf04_measures.py
index 95748cc..c822c5d 100644
--- a/Model/peacock_uvp/apf04_measures.py
+++ b/Model/peacock_uvp/apf04_measures.py
@@ -11,8 +11,8 @@ from array import *
from struct import calcsize, unpack
from math import sqrt, pi, pow
-from .apf_timestamp import decode_timestamp
-from .apf04_gain import _convert_code2dB_trunc, convert_code2dB_m, convert_code2dB, calc_gain
+from Model.peacock_uvp.apf_timestamp import decode_timestamp
+from Model.peacock_uvp.apf04_gain import _convert_code2dB_trunc, convert_code2dB_m, convert_code2dB, calc_gain
# @brief Utilise une frame pour récupérer un profil voulu (format UDT005)
diff --git a/Model/peacock_uvp/apf04_modbus.py b/Model/peacock_uvp/apf04_modbus.py
index 848f29c..d6309a3 100644
--- a/Model/peacock_uvp/apf04_modbus.py
+++ b/Model/peacock_uvp/apf04_modbus.py
@@ -13,8 +13,8 @@ import traceback
import logging
from time import time, sleep
-from .apf04_exception import apf04_error, apf04_exception
-from .modbus_crc import crc16
+from Model.peacock_uvp.apf04_exception import apf04_error, apf04_exception
+from Model.peacock_uvp.modbus_crc import crc16
def hex_print (_bytes):
""" @brief print a byte array in hexadecimal string
diff --git a/Model/udt_extract/apf06_hardware.py b/Model/udt_extract/apf06_hardware.py
index 1e24a38..e6a4ad6 100644
--- a/Model/udt_extract/apf06_hardware.py
+++ b/Model/udt_extract/apf06_hardware.py
@@ -1,7 +1,7 @@
from array import array
import numpy as np
-from .apf06_gain import calc_gain, convert_code2dB_m, convert_code2dB, APF06_CODE_MAX_APPLIED
+from Model.udt_extract.apf06_gain import calc_gain, convert_code2dB_m, convert_code2dB, APF06_CODE_MAX_APPLIED
class apf06_hardware ():
def conversion_profile(self, vectors_dict, sound_speed, n_vol, n_avg, c_prf, gain_ca0, gain_ca1, blind_ca0, blind_ca1):
diff --git a/Model/udt_extract/convert_type.py b/Model/udt_extract/convert_type.py
index 33b5d4a..0567958 100644
--- a/Model/udt_extract/convert_type.py
+++ b/Model/udt_extract/convert_type.py
@@ -1,11 +1,11 @@
#!/usr/bin/env python3
# -*- coding: UTF_8 -*-
+import sys
import warnings
import json
import os
-
#Le script d'import quand à lui renvoie un Warning lorsque aucun paramètre ne correspond .
#Ce Warning contient le fichier importé concerné et préviens de la valeur qui n'a pas été acceptée.
@@ -63,23 +63,105 @@ def translate_key(raw_key, _type="data"):
translated_key = None
# use of a json file for the translation in valid data type names for the DB
- _transation_path = os.path.dirname(os.path.realpath(__file__))+'/translation.json'
- f = open(_transation_path)
- translation_dict = json.loads(f.read())[_type]
+ # _transation_path = os.path.dirname(os.path.realpath(__file__))+'/translation.json'
+ #
+ # print(f"os.path.realpath(__file__) : {os.path.realpath(__file__)}")
- for key, value in translation_dict.items():
- # leave unchanged the already valid data type names
- # translate those which are translatable
- if (raw_key == key):
- translated_key = key
- break
- elif value["alter_ego"] is not None:
- if raw_key in value["alter_ego"]:
+ # cwd = os.getcwd()
+ # print(f"cwd : {cwd}")
+ # # print(f"os.path.dirname(os.path.abspath(__file__)) : {os.path.dirname(os.path.abspath(__file__))}")
+ # # _transation_path = os.path.abspath(__file__).split('convert_type.py')[0] + "translation.json"
+ # _transation_path = cwd + "/Model/udt_extract/translation.json"
+ # # print("path : ", os.path.dirname(os.path.abspath(sys.argv[0])))
+ # print(f"_transation_path : {_transation_path}")
+ # print(f"__file__ : {__file__}")
+
+ # f = open(_transation_path)
+
+ # f = open(".translation.json", "r")
+ # translation_dict = json.loads(f.read())[_type]
+
+ # for key, value in translation_dict.items():
+ # # leave unchanged the already valid data type names
+ # # translate those which are translatable
+ # # print(f"key : {key}, value : {value}")
+ # if (raw_key == key):
+ # translated_key = key
+ # break
+ # elif value["alter_ego"] is not None:
+ # if raw_key in value["alter_ego"]:
+ # translated_key = key
+ # break
+
+ translation_dict = {"data" : { "echo_avg_profile": {"alter_ego":["amplitude"], "unit": "V", "graph_title": "Echo"},
+ "velocity_avg_profile": {"alter_ego":["velocity"], "unit": "m/s", "graph_title": "Velocity"},
+ "snr_doppler_avg_profile": {"alter_ego":["snr"], "unit": "dB", "graph_title": "SNR
Doppler"},
+ "velocity_std_profile": {"alter_ego":["std_velocity", "std"], "unit": "m/s", "graph_title": "Velocity
standard deviation"},
+ "turbidity_avg_profile": {"alter_ego":["turbi"], "unit": "1/m" },
+ "saturation_avg_profile": {"alter_ego":["saturation"], "unit": None},
+ "ny_jump_avg_profile": {"alter_ego":None, "unit": None},
+ "saturation_profile": {"alter_ego":None, "unit": None},
+ "ny_jump_profile": {"alter_ego":None, "unit": None},
+ "echo_profile": {"alter_ego":["instamplitude"], "unit": "V", "graph_title": "Echo"},
+ "velocity_profile": {"alter_ego":["instvelocity"], "unit": "m/s", "graph_title": "Velocity"},
+ "snr_doppler_profile": {"alter_ego":["instsnr"], "unit": "dB", "graph_title": "SNR
Doppler"},
+ "turbidity_profile": {"alter_ego":["instturbi"], "unit": "1/m"},
+ "temperature": {"alter_ego":["temp"], "unit": "K"},
+ "sound_speed": {"alter_ego": None, "unit": "m/s"},
+ "roll": {"alter_ego": None, "unit": "rad"},
+ "pitch": {"alter_ego": None, "unit": "rad"},
+ "velocity_avg": {"alter_ego": ["v_moy"], "unit": "m/s"},
+ "velocity_max": {"alter_ego": ["v_max"], "unit": "m/s"},
+ "velocity_min": {"alter_ego": ["v_min"], "unit": "m/s"},
+ "velocity_std": {"alter_ego": ["v_std"], "unit": "m/s"},
+ "snr_doppler_avg": {"alter_ego": ["snr_doppler"], "unit": "dB"},
+ "snr_echo_avg": {"alter_ego": ["snr_echo"], "unit": "dB"},
+ "rate_doppler": {"alter_ego": ["n_good"], "unit": "%"},
+ "velocity_distribution": {"alter_ego": ["tests_av_distrib_in_air","tests_av_distrib_in_flume", "distrib"], "unit": None},
+ "noise_g_high": {"alter_ego": ["noise"], "unit": "V"},
+ "noise_g_low": {"alter_ego": None, "unit": "V"}
+ },
+ "param_const" : {"operator" : {"alter_ego": None, "unit": None},
+ "comments" : {"alter_ego": None, "unit": None},
+ "emitter" : {"alter_ego": ["tr_out"], "unit": None},
+ "receiver" : {"alter_ego": ["tr_in"], "unit": None}
+ },
+ "param_var" : {"f0": {"alter_ego": None, "unit": "Hz"},
+ "v_min": {"alter_ego": ["v_min_1"], "unit": "m/s"},
+ "v_max": {"alter_ego": None, "unit": "m/s"},
+ "prf": {"alter_ego": None, "unit": "Hz"},
+ "r_cell1": {"alter_ego": ["r_vol1"], "unit": "m"},
+ "r_dcell": {"alter_ego": ["r_dvol"], "unit": "m"},
+ "n_cell": {"alter_ego": ["n_vol"], "unit": None},
+ "r_em": {"alter_ego": None, "unit": "m"},
+ "n_p": {"alter_ego": ["n_ech"], "unit": None},
+ "v_em": {"alter_ego": None, "unit": "V"},
+ "n_avg": {"alter_ego": ["n_profile", "n_profil"], "unit": None},
+ "a0": {"alter_ego": ["gain_a0"], "unit": "dB"},
+ "a1": {"alter_ego": ["gain_a1"], "unit": "dB/m"},
+ "phase_coding": {"alter_ego": None, "unit": None},
+ "static_echo_filter": {"alter_ego": None, "unit": None},
+ "sound_speed": {"alter_ego": None, "unit": "m/s"}
+ }
+ }
+
+ for key_dict, values_dict in translation_dict.items():
+ for key, value in values_dict.items():
+ # leave unchanged the already valid data type names
+ # translate those which are translatable
+ # print(f"key : {key}, value : {value}")
+ if (raw_key == key):
translated_key = key
break
+ elif value["alter_ego"] is not None:
+ if raw_key in value["alter_ego"]:
+ translated_key = key
+ break
#if translated_key == None:
# print("delete %s"%raw_key)
+
+ print(f"translated_key : {translated_key}")
return translated_key
def translate_paramdict(param_dict):
diff --git a/Model/udt_extract/raw_extract.py b/Model/udt_extract/raw_extract.py
index 1df7d37..e0aae8a 100644
--- a/Model/udt_extract/raw_extract.py
+++ b/Model/udt_extract/raw_extract.py
@@ -8,9 +8,9 @@
import json
from datetime import datetime # pour time count
-from .ubt_raw_file import ubt_raw_file
-from .ubt_raw_data import ubt_raw_data
-from .ubt_raw_flag import *
+from Model.udt_extract.ubt_raw_file import ubt_raw_file
+from Model.udt_extract.ubt_raw_data import ubt_raw_data
+from Model.udt_extract.ubt_raw_flag import *
def raw_extract(_raw_file):
@@ -74,6 +74,7 @@ def raw_extract(_raw_file):
ubt_data.set_config(settings_dict)
+ print("ubt_data.set_config(settings_dict) : ", ubt_data.set_config(settings_dict))
if flag == CONFIG_TAG:
# what is needed from here and which is not in param_us_dict is only blind_ca0 and blind_ca1
diff --git a/Model/udt_extract/ubt_raw_config.py b/Model/udt_extract/ubt_raw_config.py
index dd020c2..9f7cd60 100755
--- a/Model/udt_extract/ubt_raw_config.py
+++ b/Model/udt_extract/ubt_raw_config.py
@@ -7,7 +7,7 @@
from copy import deepcopy
-from .convert_type import translate_paramdict
+from Model.udt_extract.convert_type import translate_paramdict
def paramus_rawdict2ormdict(settings_dict):
"""Function that converts a settings dict read from a raw file (webui2, UB-Lab P) to a formatted dict for data processing.
diff --git a/Model/udt_extract/ubt_raw_data.py b/Model/udt_extract/ubt_raw_data.py
index 7f7967a..5a1f4ce 100755
--- a/Model/udt_extract/ubt_raw_data.py
+++ b/Model/udt_extract/ubt_raw_data.py
@@ -13,9 +13,9 @@ from numpy import asarray as ar
from Model.peacock_uvp.apf_timestamp import decode_timestamp
-from .convert_type import translate_key
-from .date_parser import date_parse
-from .ubt_raw_config import paramus_rawdict2ormdict
+from Model.udt_extract.convert_type import translate_key
+from Model.udt_extract.date_parser import date_parse
+from Model.udt_extract.ubt_raw_config import paramus_rawdict2ormdict
class ubt_raw_data () :
def __init__ (self, _const):