|
|
|
# AWRAMS 相关的服务器端处理文件
|
|
|
|
系统通过config.py 配置测量类型,awrams surface profiler
|
|
|
|
并得到配置文件
|
|
|
|
系统从网络获得数据存为文件后,依据获得的配置文件然后处理文件。
|
|
|
|
|
|
|
|
## 实施流程
|
|
|
|
### 服务器配置
|
|
|
|
python >3.8
|
|
|
|
numpy > 1.21.4
|
|
|
|
### 标定文件
|
|
|
|
|
|
|
|
calfile/awrams
|
|
|
|
直接拷贝在这个目录下
|
|
|
|
|
|
|
|
### 设备ID config.py
|
|
|
|
可以定义多个ID, 后面为每个id定义传感器的序列号
|
|
|
|
```python
|
|
|
|
DEVICE_ID = [ 2 ]
|
|
|
|
```
|
|
|
|
|
|
|
|
### 设备配置文件
|
|
|
|
```python
|
|
|
|
CURRENT_DIR =Path()
|
|
|
|
DATA_DIR = Path("data")
|
|
|
|
CAL_DIR = Path("calfile")
|
|
|
|
OUTPUT_DIR = Path("data","output")
|
|
|
|
YAML_FILE_NAME = "config.yml"
|
|
|
|
FILE_MARK = ['Spectrum','DATA']
|
|
|
|
BEGIN_WAVELENGTH = 350
|
|
|
|
END_WAVELENGTH = 950
|
|
|
|
SAVE_EXT_NAME = ".csv"
|
|
|
|
INTERVAL = 1.0
|
|
|
|
SEPARATOR = ";"
|
|
|
|
NEWLINE = "\n"
|
|
|
|
```
|
|
|
|
### 设置应用类型 config.py
|
|
|
|
```python
|
|
|
|
class Device(Enum) :
|
|
|
|
AWRAMS = 1
|
|
|
|
SURFACE = 2
|
|
|
|
PROFILE = 3
|
|
|
|
|
|
|
|
[label](myserver.py)class RamsesFunc(Enum):
|
|
|
|
Lsky = 1
|
|
|
|
Lwater = 2
|
|
|
|
Esky = 3
|
|
|
|
|
|
|
|
class RamsesSURFACE(Enum):
|
|
|
|
Lsky = 1
|
|
|
|
Lwater = 2
|
|
|
|
Esky = 3
|
|
|
|
|
|
|
|
class RAMSESPROFILE(Enum):
|
|
|
|
Lu = 1 #upwelling
|
|
|
|
Ed = 2
|
|
|
|
Esky = 3
|
|
|
|
```
|
|
|
|
|
|
|
|
### 设置传感器序列号 config.py
|
|
|
|
依据系统类型,配置传感器的序列号。 传感器序列号见出厂设置的序列号
|
|
|
|
如果存在不同组,需要为不同组设置 传感器序列号
|
|
|
|
如下设置了两组AWRAMS ID: 2 and 3
|
|
|
|
```python
|
|
|
|
class Config(object):
|
|
|
|
|
|
|
|
def __init__(self) -> None:
|
|
|
|
self.AWRAMS = { # 每个ID对应一组
|
|
|
|
"2" : {
|
|
|
|
"1":{"SN":"85B5","FUNC":RamsesFunc.Lsky.name},
|
|
|
|
"2":{"SN":"852F","FUNC":RamsesFunc.Lwater.name},
|
|
|
|
"3":{"SN":"50ED","FUNC":RamsesFunc.Esky.name},
|
|
|
|
},
|
|
|
|
"3" : {
|
|
|
|
"1":{"SN":"85B5","FUNC":RamsesFunc.Lsky.name},
|
|
|
|
"2":{"SN":"852F","FUNC":RamsesFunc.Lwater.name},
|
|
|
|
"3":{"SN":"50ED","FUNC":RamsesFunc.Esky.name},
|
|
|
|
}
|
|
|
|
}
|
|
|
|
self.SURFACE = {
|
|
|
|
"1":{"SN":"854D","FUNC":RamsesSURFACE.Lsky.name},
|
|
|
|
"2":{"SN":"8536","FUNC":RamsesSURFACE.Lwater.name},
|
|
|
|
"3":{"SN":"50D3","FUNC":RamsesSURFACE.Esky.name},
|
|
|
|
}
|
|
|
|
self.PROFILE = {
|
|
|
|
"1":{"SN":"85B5","FUNC":RAMSESPROFILE.Lu.name},
|
|
|
|
"2":{"SN":"859F","FUNC":RAMSESPROFILE.Ed.name},
|
|
|
|
"3":{"SN":"852F","FUNC":RAMSESPROFILE.Esky.name},
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
### 获得传感器的标定参数
|
|
|
|
将以上获得传感器配置,传递给configAWRAMS.py, 从标定文件获取正确的配置参数
|
|
|
|
|
|
|
|
### 数据文件夹
|
|
|
|
data目录
|
|
|
|
data目录依据设备类型进行分类
|
|
|
|
|
|
|
|
### 定义服务器设置
|
|
|
|
app.py 定义端口, 参数传给了myserver
|
|
|
|
|
|
|
|
### 处理数据
|
|
|
|
将数据储存在特定目录,调用处理该目录的函数处理
|