From ec2126195713b8beab91212bb5c78dd4f903b66f Mon Sep 17 00:00:00 2001 From: esea_info Date: Wed, 19 Apr 2023 14:56:27 +0800 Subject: [PATCH] add deal server data --- Ramses.py | 4 +- app.spec | 68 +++++++++++++++------------ awrams.py | 124 ++++++++++++++++++++++++++++++++++++++++++++------ myconfig.py | 12 ++++- yiwinframe.py | 49 ++++++++++++++++++-- 5 files changed, 207 insertions(+), 50 deletions(-) diff --git a/Ramses.py b/Ramses.py index 49c9671..eacf52d 100644 --- a/Ramses.py +++ b/Ramses.py @@ -127,8 +127,8 @@ class Ramses(object): d = [] # List [ Tuple[ it:int, sing_set:tuple[int] ] ] print(f" ================= ") print(f" {self.buf.hex()} ") - # self.it = 2 << int(self.buf[1]) # integrated time - self.it = 2 << int(self.buf[0]) # integrated time + self.it = 2 << int(self.buf[1]) # integrated time + # self.it = 2 << int(self.buf[0]) # integrated time self.light_int = struct.unpack( " None: self.device_type = device_type pass + + def check_config_yml(self, ) -> None: + return Path(self.yml_cfg_file).exists() + pass + def check_retrieve_yml(self, ) -> None: + return self.retrieve_cfg_file.exists() + pass def setRetrieveCfg(self, rtv_yml:str="") -> None: if rtv_yml =="": diff --git a/yiwinframe.py b/yiwinframe.py index 4a34e75..b1de741 100644 --- a/yiwinframe.py +++ b/yiwinframe.py @@ -27,6 +27,7 @@ from tools.mylogger import log # -定义菜单ID,关联Event------------------------- ID_MEASURE = 1 +ID_DEAL_SERVER = 2 ID_SENSOR_SETTING = 11 ID_LOGGING_SETTING = 12 @@ -112,7 +113,7 @@ class YiwinFrame(wx.Frame): settingMenu.AppendSeparator() settingMenu.Append(ID_MEASURE, u'&处理数据', ' ') settingMenu.AppendSeparator() - settingMenu.Append(ID_LOGGING_SETTING, u'&采集设置', ' ') + settingMenu.Append(ID_DEAL_SERVER, u'&处理服务器数据', ' ') self.menubar.Append(settingMenu, u'&系统 ') plotMenu = wx.Menu() @@ -147,6 +148,7 @@ class YiwinFrame(wx.Frame): self.Bind(wx.EVT_MENU, self.OnCalInfo, id=ID_CAL_INFO ) # self.Bind(wx.EVT_MENU, self.OnStart, id=ID_MEASURE) self.Bind(wx.EVT_MENU, self.OnDealData, id=ID_MEASURE) + self.Bind(wx.EVT_MENU, self.OnDealServer, id=ID_DEAL_SERVER) # self.Bind(wx.EVT_MENU, self.OnLoggingSetting, id=ID_LOGGING_SETTING) self.Bind(wx.EVT_MENU, self.OnPlotLast, id=ID_PLOT_LAST ) @@ -221,6 +223,7 @@ class YiwinFrame(wx.Frame): self.sensor_cfg = self.mycfg.read_yaml() def OnDealData(self, e)-> None: + ''' SD卡的文件结构 ''' log.info(f"OnDealData: 处理测量数据", __name__, "", "") if not self.calinfo_is_ok: self.onNotify("Pls get the cal info, and try again" ) @@ -254,16 +257,56 @@ class YiwinFrame(wx.Frame): # self.onNotify("处理数据已经结束" ) pass + + + def OnDealServer(self, e)-> None: + '''对服务器数据进行再次处理,''' + log.info(f"OnDealServer: 处理服务器数据", __name__, "", "") + if not self.calinfo_is_ok: + self.onNotify("Pls get the cal info, and try again" ) + log.warning(f"Pls get the cal info, and try again", __name__, "OnDealData") + self.statusBar.SetStatusText("Pls get the cal info, and try again",0) + pass + + self.awrams.getDataFileList() + self.awrams.setDeviceID(self.device_id) + self.awrams.setRetrieve(self.retrieve) + if self.syscfg != {}: + self.awrams.setSyscfg(self.syscfg) + else: + log.warning(f"Pls get the cal info, and try again", __name__, "OnDealData","setCfg") + MyException( f"System Configuration is empty." ) + pass + + # 处理数据 + self.alterStatus_0(" 正在处理数据...." ) + try: + self.mythread.set_task( self.awrams.dealAllMeasurements ) + self.mythread.start() + except Exception as e: + log.error(e) + pass + + pass def OnCalInfo(self,e): '''依据传感器获取标定文件信息''' ####################################### + self.onNotify("正在获取标定信息") device_id = self.device_id # 多个设备 device_type = DeviceType.SURFACE.name self.mycfg = MyConfig() - self.mycfg.setDeviceType(DeviceType.SURFACE) + + # 检查配置文件是否存在,不存在报错 config.yml retrieve.yml + if not self.mycfg.check_config_yml(): + self.popDialog("没有发现config.yml文件") + pass + if not self.mycfg.check_retrieve_yml(): + self.popDialog("没有发现retrieve.yml文件") + pass + init_para = self.mycfg.read_yaml() log.info(f"Current Device: {device_type} ", __name__, "", "") log.info(f"Sensor: {init_para}", __name__, "", "") @@ -289,7 +332,7 @@ class YiwinFrame(wx.Frame): # log.warning(f"self.syscfg: {self.syscfg}", __name__, "", "") log.warning(f"self.syscfg 2: {self.syscfg[2].keys()}", __name__, "", "") - log.warning(f"self.syscfg 3: {self.syscfg[3].keys()}", __name__, "", "") + # log.warning(f"self.syscfg 3: {self.syscfg[3].keys()}", __name__, "", "") log.info(f"传感器配置文件读取成功", __name__, "", "") self.alterStatus_0("传感器配置文件读取成功") self.onNotify("获取标定信息成功")