Files
2026-06-18 15:25:29 +08:00

6.2 KiB
Raw Permalink Blame History

拉曼光谱仪典型操作流程

流程图

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([结束])

时序图

单次完整流程(含多积分时间校准)

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

复用已有校准数据(跳过校准)

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: 三者必须使用相同的积分时间