全自动PCR仪软件设计概要
一份全自动 QPCR(聚合酶链反应)仪器的软件整体设计概要文档,涵盖需求分析、架构设计、模块划分、功能列表与开发规划。
一、需求分析
核心目标
操作全自动PCR仪器,实现三大功能的自动化:
- 核酸提取 —— 样本前处理
- PCR扩增 —— 核酸扩增
- 检测 —— 荧光检测与数据分析
关键特性
- 项目文件化:单次实验过程形成项目文件,记录进展和阶段性结果,支持恢复/另存为新实验
- 半自动兼容:核酸提取部分可作为可选模块,兼容不同仪器设备的操控命令
- 跨平台:主目标为 Linux 平板环境,最小工作量可迁移到 Windows
- 独立可组合:三大核心功能业务上独立可控,整体流程上可自由组合
二、三层架构设计
总体架构
┌─────────────────────────────────┐
│ UI 操作层 │ ← 用户软件 + 调试软件
├─────────────────────────────────┤
│ 业务逻辑层 │ ← 项目/样本/实验/质控/数据处理
├─────────────────────────────────┤
│ 硬件通讯层(CAN Server-Client)│ ← 驱动 + 调度
├─────────────────────────────────┤
│ 数据存储层(数据库) │ ← 试剂/染料/实验方案
└─────────────────────────────────┘
1. 硬件设备驱动层
- 沿用田浩然老师的 Server-Client 监听模型
- 核心:基于 CAN 总线通信,不断监听 CAN 内容获取反馈
- 适配多种 CAN 卡驱动,支持 Linux 和 Windows 双平台
- 判断执行状态和运行状态
2. 调度逻辑层
- 将分散硬件组合为抽象的 PCR 仪对象
- 将相关命令批量组合,形成模块化调度指令
- 不同硬件模块组合 → 功能模块控制逻辑 → 应用功能
3. 业务逻辑层
核心模块包括:
| 模块 | 功能描述 |
|---|---|
| 数据管理 | 试剂/染料/样本类型等基础数据存储(数据库 + Excel 临时文件) |
| 项目管理 | 一组实验的完整生命周期管理(从样本扫描→提取→扩增→读数→报告),支持中断与恢复 |
| 样本管理 | 录入、删除、修改、保存等基本操作 |
| 实验类型管理 | 实验方案选择与管理 |
| 核酸提取实验管理 | 整盘样本连续/批量处理,可能含临时终端 |
| 核酸扩增实验管理 | 整盘样本批量处理,保留样本信息编辑接口 |
| 核酸数据读取管理 | 原始数据批量处理 + 数据形式转换 + 分析展示 |
| 关键数据保存 | 按样本/实验唯一编号存储:样本信息 + 提取结果 + 扩增历史数据 |
| 核酸提取功能 | 根据样本参数和实验方法调用处理流程,实时监控执行 |
| 核酸扩增与读数功能 | 温控模块控制 + 数据反馈(原始数据需二次处理) |
| 数据处理与展示模块 | 数据处理 → 标准输入格式转换 → 展示控件实时展示 |
并发设计:核酸提取和扩增模块支持同时运行,项目管理关注模块占用状态而非串行等待;扩增与读数绑定较深,采用先决条件执行。
4. UI 交互层
用户软件界面清单
- 开机/自检/初始化/关机流程
- 登录
- 主界面
- 项目文件管理(新建、打开、编辑、删除、另存)
- 核酸提取模块
- 程序编辑(容积、孔位、加热模块、混合参数、吸磁参数、等待时间等)
- 通用设置(升温/降温类型)
- 实时数据显示(当前步骤、下一步骤、图像更新)
- PCR扩增与检测模块
- 程序编辑
- 实时数据显示
- 校准模块(扩增校准)
- 校准测试、校准流程编辑、结果展示与存储
- 质控模块(扩增质控)
- 质控测试、质控状态分析
- 结果分析与展示
- 系统设置(版本、时间日期、语言、调试界面、恢复出厂)
- 维护与运行日志
- 用户管理
- 试剂与染料管理
调试软件
- 开放所有硬件功能,用于验证功能执行准确性
- 单步调试组合
5. 数据存储层
- 静态数据:染料、试剂、样本类型 → 数据库存储,开机加载更新
- 实验方案:独立模块管理(核酸提取随试剂板变化,扩增随时间/样本编辑变化)
- 实时数据:PCR 数据可存临时文件防崩溃,或先存内存最终一次性导出
- 项目文件:唯一数据管理文件,记录进展和阶段性结果,可恢复/另存
三、质控与校准的独立性
- 质控:从实验结果分析数据,管理试剂有效性
- 校准:根据标准试剂预期结果反算校准曲线(计算函数 + 应用函数)
- 两者都是相对独立的模块,不影响主体实验流程,但能提升结果准确性
四、UI 设计原则
- 侧边固定按钮作为主菜单
- 每个页面业务逻辑尽量单一、可划分
- 数据展示模块独立存在,定义数据输入接口即可工作
- 采集数据需经过处理后展示
五、开发规范与进度
代码规范
- 遵循谷歌代码风格
- 自动从注释解析代码(文档生成)
工作量预估
分为不同层次预估(硬件层、业务层、UI层)
架构取舍
- 为尽快走向稳定开发,底层架构可能适当精简
- 从简原则,先跑通核心流程
关联笔记
- 全自动QPCR仪器概要设计 —— QPCR 目录下另一份概要设计文档(周立功 M6708Q 核心板)
- 全自动QPCR仪器HLD高层设计 —— 高层设计 PPT
- ELITe InGenius操作手册-全自动一体化分子诊断系统 —— 竞品 ELITe InGenius 操作手册
- 全自动化学发光错误码定义全集 —— 同类 IVD 设备的通信协议参考
- 荧光补偿算法-液相芯片多色荧光检测 —— 多色荧光补偿算法原理