|
|
|
@ -7,70 +7,137 @@ from myconfig import MyConfig,DeviceType |
|
|
|
|
from myconfig import DEVICE_ID ,FILE_MARK,YAML_FILE_NAME,CURRENT_DIR,DATA_DIR,CAL_DIR |
|
|
|
|
from myconfig import BEGIN_WAVELENGTH,END_WAVELENGTH,INTERVAL,ROWFACTOR |
|
|
|
|
|
|
|
|
|
from Ramses import Ramses |
|
|
|
|
from awrams import AwramsHandle,HandheldHandle |
|
|
|
|
|
|
|
|
|
IP = "" |
|
|
|
|
PORT = 7887 |
|
|
|
|
ADDRESS = (IP, PORT) # 绑定地址 |
|
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
|
log.info(f"******** HandHeld server initiate.... *********", __name__, "", "") |
|
|
|
|
class MyApp(object): |
|
|
|
|
def __init__(self,): |
|
|
|
|
log.info(f"******** Awarms server initiate.... *********", __name__, "", "") |
|
|
|
|
self.device_type = DeviceType.AWRAMS.name |
|
|
|
|
self.mycfg = MyConfig() # 传入 cfg retrieve 的yml文件 |
|
|
|
|
|
|
|
|
|
# 配置反演需要的参数 波长 间隔 , rowFactor |
|
|
|
|
self.retrieve = self.mycfg.get_retrieve() # 读retrieve.yml |
|
|
|
|
log.info(f"Retrieve: {self.retrieve}", __name__, "", "") |
|
|
|
|
|
|
|
|
|
# log.info(f"syscfg: {device}", __name__, "", "") |
|
|
|
|
self.mycfg.setDeviceType( DeviceType.AWRAMS ) |
|
|
|
|
self.sensor_cfg = self.mycfg.read_yaml() # 读config.yml, 多个device_id 配置 |
|
|
|
|
log.info(f"Current Device: {self.device_type} ", __name__, "", "") |
|
|
|
|
log.info(f"Sensor cfg: {self.sensor_cfg}", __name__, "", "") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
self.cal_cfg = {} |
|
|
|
|
|
|
|
|
|
cfgr = Configuration( ) |
|
|
|
|
cfgr.setDeviceType(self.device_type) |
|
|
|
|
cfgr.setSystemCfgDict(self.sensor_cfg) |
|
|
|
|
|
|
|
|
|
for k,v in self.sensor_cfg.items(): |
|
|
|
|
cfgr.setSystemCfgDict(v) |
|
|
|
|
try: |
|
|
|
|
cfgr.getCalConfiguration() |
|
|
|
|
except Exception as e: |
|
|
|
|
log.error(f"读取配置文件失败. \n {e}",__name__, "", "" ) |
|
|
|
|
raise |
|
|
|
|
log.info(f"v: {cfgr.configuration}", __name__, "", "") |
|
|
|
|
self.cal_cfg.update({k:cfgr.cal_configuration}) |
|
|
|
|
|
|
|
|
|
log.debug(f"cal_cfg: {self.cal_cfg}", __name__, "", "") |
|
|
|
|
log.warning(f"cal_cfg 2: {self.cal_cfg[2].keys()}", __name__, "", "") |
|
|
|
|
# log.warning(f"cal_cfg 3: {self.cal_cfg[3].keys()}", __name__, "", "") |
|
|
|
|
log.info(f"传感器配置文件读取成功", __name__, "", "") |
|
|
|
|
|
|
|
|
|
pass |
|
|
|
|
|
|
|
|
|
def init_data_process(self, mode = 0): |
|
|
|
|
''' 多个handle ''' |
|
|
|
|
self.handheld_handle = { } |
|
|
|
|
for k,v in self.cal_cfg.items(): |
|
|
|
|
ah = HandheldHandle( deviceid=k, cfg=self.sensor_cfg[k], calcfg=v, rtv=self.retrieve) |
|
|
|
|
self.handheld_handle.update( {k:ah } ) |
|
|
|
|
|
|
|
|
|
def run_server(self,): |
|
|
|
|
# 启动接受服务器 |
|
|
|
|
log.info(f"启动接受服务器, IP: {IP} , Port:{PORT} ", __name__, "", "") |
|
|
|
|
|
|
|
|
|
####################################### |
|
|
|
|
device_id = DEVICE_ID # 多个设备 |
|
|
|
|
device_type = DeviceType.AWRAMS.name |
|
|
|
|
mycfg = MyConfig() |
|
|
|
|
server_ = MyThreadingTCPServer(ADDRESS, MyServer, cfg=self.cal_cfg, retrieve = self.retrieve ,handheld_handle=self.handheld_handle ) |
|
|
|
|
|
|
|
|
|
# 配置反演需要的参数 波长 间隔 |
|
|
|
|
retrieve = mycfg.get_retrieve() |
|
|
|
|
log.info(f"Retrieve: {retrieve}", __name__, "", "") |
|
|
|
|
try: |
|
|
|
|
server_.serve_forever() |
|
|
|
|
except KeyboardInterrupt: |
|
|
|
|
log.warning(" Ctrl+C 退出主程序 ",__name__, "", "") |
|
|
|
|
server_.server_close() |
|
|
|
|
except Exception as e: |
|
|
|
|
log.info(" 系统异常, 如下: \n ",__name__, "", "") |
|
|
|
|
log.info(e) |
|
|
|
|
|
|
|
|
|
# log.info(f"syscfg: {device}", __name__, "", "") |
|
|
|
|
mycfg.setDeviceType(DeviceType.AWRAMS) |
|
|
|
|
init_para = mycfg.read_yaml() |
|
|
|
|
log.info(f"Current Device: {device_type} ", __name__, "", "") |
|
|
|
|
log.info(f"Sensor: {init_para}", __name__, "", "") |
|
|
|
|
pass |
|
|
|
|
|
|
|
|
|
cal_cfg = {} |
|
|
|
|
if __name__ == "__main__": |
|
|
|
|
log.info(f"******** Yiwin Handheld server initiate.... *********", __name__, "", "") |
|
|
|
|
app = MyApp() |
|
|
|
|
app.init_data_process( ) |
|
|
|
|
app.run_server() |
|
|
|
|
|
|
|
|
|
# ####################################### |
|
|
|
|
# device_id = DEVICE_ID # 多个设备 |
|
|
|
|
# device_type = DeviceType.AWRAMS.name |
|
|
|
|
# mycfg = MyConfig() |
|
|
|
|
|
|
|
|
|
# # 配置反演需要的参数 波长 间隔 |
|
|
|
|
# retrieve = mycfg.get_retrieve() |
|
|
|
|
# log.info(f"Retrieve: {retrieve}", __name__, "", "") |
|
|
|
|
|
|
|
|
|
# # log.info(f"syscfg: {device}", __name__, "", "") |
|
|
|
|
# mycfg.setDeviceType(DeviceType.AWRAMS) |
|
|
|
|
# init_para = mycfg.read_yaml() |
|
|
|
|
# log.info(f"Current Device: {device_type} ", __name__, "", "") |
|
|
|
|
# log.info(f"Sensor: {init_para}", __name__, "", "") |
|
|
|
|
|
|
|
|
|
# cal_cfg = {} |
|
|
|
|
|
|
|
|
|
cfgr = Configuration( ) |
|
|
|
|
cfgr.setDeviceType(device_type) |
|
|
|
|
cfgr.setSystemCfgDict(init_para) |
|
|
|
|
# cfgr = Configuration( ) |
|
|
|
|
# cfgr.setDeviceType(device_type) |
|
|
|
|
# cfgr.setSystemCfgDict(init_para) |
|
|
|
|
|
|
|
|
|
for k,v in init_para.items(): |
|
|
|
|
cfgr.setSystemCfgDict(v) |
|
|
|
|
try: |
|
|
|
|
cfgr.getCalConfiguration() |
|
|
|
|
except Exception as e: |
|
|
|
|
log.error(f"读取配置文件失败. \n {e}",__name__, "", "" ) |
|
|
|
|
raise |
|
|
|
|
log.info(f"v: {cfgr.configuration}", __name__, "", "") |
|
|
|
|
cal_cfg.update({k:cfgr.cal_configuration}) |
|
|
|
|
|
|
|
|
|
# log.warning(f"cal_cfg: {cal_cfg}", __name__, "", "") |
|
|
|
|
log.warning(f"cal_cfg 2: {cal_cfg[2].keys()}", __name__, "", "") |
|
|
|
|
log.warning(f"cal_cfg 3: {cal_cfg[3].keys()}", __name__, "", "") |
|
|
|
|
log.info(f"传感器配置文件读取成功", __name__, "", "") |
|
|
|
|
# for k,v in init_para.items(): |
|
|
|
|
# cfgr.setSystemCfgDict(v) |
|
|
|
|
# try: |
|
|
|
|
# cfgr.getCalConfiguration() |
|
|
|
|
# except Exception as e: |
|
|
|
|
# log.error(f"读取配置文件失败. \n {e}",__name__, "", "" ) |
|
|
|
|
# raise |
|
|
|
|
# log.info(f"v: {cfgr.configuration}", __name__, "", "") |
|
|
|
|
# cal_cfg.update({k:cfgr.cal_configuration}) |
|
|
|
|
|
|
|
|
|
# # log.warning(f"cal_cfg: {cal_cfg}", __name__, "", "") |
|
|
|
|
# log.warning(f"cal_cfg 2: {cal_cfg[2].keys()}", __name__, "", "") |
|
|
|
|
# log.warning(f"cal_cfg 3: {cal_cfg[3].keys()}", __name__, "", "") |
|
|
|
|
# log.info(f"传感器配置文件读取成功", __name__, "", "") |
|
|
|
|
|
|
|
|
|
# ???????????? |
|
|
|
|
# 不同设备类型接收不同,修改receive.py |
|
|
|
|
# 不同数据裂隙数据处理不同,修改AWRAMS.py |
|
|
|
|
# 分支:服务器:处理不同的文件夹 awramse surface profile c |
|
|
|
|
# 桌面: 服务器的, 读取标准trios文件处理的 -- 暂不考虑 |
|
|
|
|
# # ???????????? |
|
|
|
|
# # 不同设备类型接收不同,修改receive.py |
|
|
|
|
# # 不同数据裂隙数据处理不同,修改AWRAMS.py |
|
|
|
|
# # 分支:服务器:处理不同的文件夹 awramse surface profile c |
|
|
|
|
# # 桌面: 服务器的, 读取标准trios文件处理的 -- 暂不考虑 |
|
|
|
|
|
|
|
|
|
# 启动接受服务器 |
|
|
|
|
log.info(f"启动接受服务器, IP: {IP} , Port:{PORT} ", __name__, "", "") |
|
|
|
|
|
|
|
|
|
server_ = MyThreadingTCPServer(ADDRESS, MyServer, cfg=cal_cfg, retrieve = retrieve ) |
|
|
|
|
|
|
|
|
|
try: |
|
|
|
|
server_.serve_forever() |
|
|
|
|
except KeyboardInterrupt: |
|
|
|
|
log.warning(" Ctrl+C 退出主程序 ",__name__, "", "") |
|
|
|
|
server_.server_close() |
|
|
|
|
except Exception as e: |
|
|
|
|
log.info(" 系统异常, 如下: \n ",__name__, "", "") |
|
|
|
|
log.info(e) |
|
|
|
|
# # 启动接受服务器 |
|
|
|
|
# log.info(f"启动接受服务器, IP: {IP} , Port:{PORT} ", __name__, "", "") |
|
|
|
|
|
|
|
|
|
# server_ = MyThreadingTCPServer(ADDRESS, MyServer, cfg=cal_cfg, retrieve = retrieve ) |
|
|
|
|
|
|
|
|
|
# try: |
|
|
|
|
# server_.serve_forever() |
|
|
|
|
# except KeyboardInterrupt: |
|
|
|
|
# log.warning(" Ctrl+C 退出主程序 ",__name__, "", "") |
|
|
|
|
# server_.server_close() |
|
|
|
|
# except Exception as e: |
|
|
|
|
# log.info(" 系统异常, 如下: \n ",__name__, "", "") |
|
|
|
|
# log.info(e) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|