添加 raman-oper.md
This commit is contained in:
+178
@@ -0,0 +1,178 @@
|
||||
# 拉曼光谱仪典型操作流程
|
||||
|
||||
## 流程图
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
Start([开始]) --> SetIT[设置积分时间<br/>例: 10ms / 20ms / ...]
|
||||
|
||||
SetIT --> Calibration[/校准阶段/]
|
||||
|
||||
subgraph CAL [校准 — 按当前积分时间]
|
||||
Calibration --> DarkSetup[滤光轮移至位置6<br/>全黑挡片]
|
||||
DarkSetup --> DarkAcq[采集暗光谱<br/>不开光源]
|
||||
DarkAcq --> DarkSave[保存暗光谱<br/>标记积分时间]
|
||||
|
||||
DarkSave --> LightSetup[滤光轮移至位置5]
|
||||
LightSetup --> AddWater[加入纯水作为参比]
|
||||
AddWater --> LightAcq[采集明光谱]
|
||||
LightAcq --> LightSave[保存明光谱<br/>标记积分时间]
|
||||
end
|
||||
|
||||
LightSave --> MoreIT{还需校准<br/>其他积分时间?}
|
||||
MoreIT -- 是 --> SetIT
|
||||
MoreIT -- 否 --> Sample[/正式采集阶段/]
|
||||
|
||||
subgraph ACQ [样品采集]
|
||||
Sample --> SelectIT[选择积分时间<br/>匹配已有校准数据]
|
||||
SelectIT --> AddSample[加入样品溶液]
|
||||
AddSample --> SampleAcq[采集样品光谱<br/>ODx数据]
|
||||
SampleAcq --> SampleSave[保存样品光谱]
|
||||
end
|
||||
|
||||
SampleSave --> Process[/数据处理阶段/]
|
||||
|
||||
subgraph PROC [数据处理]
|
||||
Process --> LoadCal[加载同积分时间的<br/>暗光谱 + 明光谱]
|
||||
LoadCal --> Absorbance[计算吸光度<br/>A = -log₁₀ 样品 - 暗 / 明 - 暗]
|
||||
Absorbance --> Smooth[平滑处理吸光度曲线]
|
||||
Smooth --> Result[输出最终吸光度谱]
|
||||
end
|
||||
|
||||
Result --> End([结束])
|
||||
```
|
||||
|
||||
## 时序图
|
||||
|
||||
### 单次完整流程(含多积分时间校准)
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
actor 操作员
|
||||
participant FW as 电动滤光轮
|
||||
participant SPEC as 光谱仪
|
||||
participant SW as 软件
|
||||
participant FS as 本地存储
|
||||
|
||||
rect rgb(240, 248, 255)
|
||||
Note over 操作员, FS: 校准阶段 — 积分时间 10ms
|
||||
操作员->>SW: 设置积分时间 = 10ms
|
||||
SW->>SPEC: 配置积分时间 10ms
|
||||
SW->>FW: 移至位置6(全黑挡片)
|
||||
FW-->>SW: 到位确认
|
||||
SW->>SPEC: 采集暗光谱(无光源)
|
||||
SPEC-->>SW: 返回暗光谱数据
|
||||
SW->>FS: 保存 dark_10ms.csv
|
||||
|
||||
操作员->>操作员: 加入纯水(参比)
|
||||
SW->>FW: 移至位置5
|
||||
FW-->>SW: 到位确认
|
||||
SW->>SPEC: 采集明光谱
|
||||
SPEC-->>SW: 返回明光谱数据
|
||||
SW->>FS: 保存 ref_10ms.csv
|
||||
end
|
||||
|
||||
rect rgb(245, 240, 255)
|
||||
Note over 操作员, FS: 校准阶段 — 积分时间 20ms
|
||||
操作员->>SW: 设置积分时间 = 20ms
|
||||
SW->>SPEC: 配置积分时间 20ms
|
||||
SW->>FW: 移至位置6(全黑挡片)
|
||||
SW->>SPEC: 采集暗光谱
|
||||
SPEC-->>SW: 返回暗光谱数据
|
||||
SW->>FS: 保存 dark_20ms.csv
|
||||
|
||||
SW->>FW: 移至位置5
|
||||
SW->>SPEC: 采集明光谱
|
||||
SPEC-->>SW: 返回明光谱数据
|
||||
SW->>FS: 保存 ref_20ms.csv
|
||||
end
|
||||
|
||||
rect rgb(255, 248, 240)
|
||||
Note over 操作员, FS: 样品采集阶段
|
||||
操作员->>操作员: 加入样品溶液
|
||||
操作员->>SW: 选择积分时间 10ms,开始采集
|
||||
SW->>SPEC: 采集样品光谱(积分时间 10ms)
|
||||
SPEC-->>SW: 返回样品光谱(ODx)
|
||||
SW->>FS: 保存样品光谱
|
||||
end
|
||||
|
||||
rect rgb(240, 255, 240)
|
||||
Note over 操作员, FS: 数据处理阶段
|
||||
SW->>FS: 加载 dark_10ms + ref_10ms
|
||||
FS-->>SW: 返回匹配的校准数据
|
||||
SW->>SW: A = -log₁₀((样品-暗)/(明-暗))
|
||||
SW->>SW: 平滑处理吸光度曲线
|
||||
SW-->>操作员: 显示最终吸光度谱
|
||||
end
|
||||
```
|
||||
|
||||
### 复用已有校准数据(跳过校准)
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
actor 操作员
|
||||
participant SPEC as 光谱仪
|
||||
participant SW as 软件
|
||||
participant FS as 本地存储
|
||||
|
||||
操作员->>SW: 选择积分时间 20ms
|
||||
SW->>FS: 查询是否存在 20ms 校准数据
|
||||
FS-->>SW: 找到 dark_20ms + ref_20ms
|
||||
Note over SW: 校准数据已有,无需重新标定
|
||||
|
||||
操作员->>操作员: 加入样品溶液
|
||||
操作员->>SW: 开始采集
|
||||
SW->>SPEC: 采集样品光谱(积分时间 20ms)
|
||||
SPEC-->>SW: 返回样品光谱
|
||||
SW->>FS: 加载 dark_20ms + ref_20ms
|
||||
SW->>SW: 计算吸光度
|
||||
SW->>SW: 平滑处理
|
||||
SW-->>操作员: 显示最终吸光度谱
|
||||
```
|
||||
|
||||
## 操作说明
|
||||
|
||||
| 步骤 | 滤光轮位置 | 操作 | 输出 |
|
||||
|------|-----------|------|------|
|
||||
| 1. 设置积分时间 | — | 选择积分时间(如 10ms、20ms) | — |
|
||||
| 2. 采集暗光谱 | 位置6(全黑) | 不开光源,直接采集 | 暗光谱(Dark)+ 积分时间标记 |
|
||||
| 3. 采集明光谱 | 位置5 | 加纯水后采集 | 明光谱(Reference)+ 积分时间标记 |
|
||||
| 4. (可选)重复 1-3 | — | 切换其他积分时间再次校准 | 多组校准数据 |
|
||||
| 5. 采集样品谱 | — | 加样品溶液,选择对应积分时间后采集 | 样品光谱(Sample) |
|
||||
| 6. 计算吸光度 | — | 加载同积分时间校准数据,公式换算 | 吸光度曲线(Absorbance) |
|
||||
| 7. 平滑处理 | — | 算法平滑 | 最终吸光度谱 |
|
||||
|
||||
## 关键约束:积分时间一致性
|
||||
|
||||
> **暗光谱、明光谱、样品光谱三者的积分时间必须完全一致,否则吸光度计算无意义。**
|
||||
|
||||
- 校准数据(暗光谱 + 明光谱)保存时**必须记录积分时间**
|
||||
- 用户可在不同积分时间下分别校准并保存,形成一组校准数据库
|
||||
- 正式采集时,软件自动匹配当前积分时间对应的校准数据
|
||||
- 如果已有对应积分时间的校准数据,可**跳过校准直接采集**,无需每次重新标定
|
||||
|
||||
### 校准数据存储结构示例
|
||||
|
||||
```
|
||||
calibration/
|
||||
├── 10ms/
|
||||
│ ├── dark.csv # 暗光谱 @10ms
|
||||
│ └── reference.csv # 明光谱 @10ms
|
||||
├── 20ms/
|
||||
│ ├── dark.csv
|
||||
│ └── reference.csv
|
||||
└── 50ms/
|
||||
├── dark.csv
|
||||
└── reference.csv
|
||||
```
|
||||
|
||||
### 吸光度计算公式
|
||||
|
||||
$$
|
||||
A(\lambda) = -\log_{10} \frac{I_{sample}(\lambda) - I_{dark}(\lambda)}{I_{reference}(\lambda) - I_{dark}(\lambda)}
|
||||
$$
|
||||
|
||||
- **I_dark**: 暗光谱(滤光轮位置6,无光源,积分时间 = T)
|
||||
- **I_reference**: 明光谱(滤光轮位置5,纯水参比,积分时间 = T)
|
||||
- **I_sample**: 样品光谱(积分时间 = T)
|
||||
- **T**: 三者必须使用相同的积分时间
|
||||
Reference in New Issue
Block a user