# Hardware 2023 **Repository Path**: igem_ucas_china/hardware-2023 ## Basic Information - **Project Name**: Hardware 2023 - **Description**: iGEM UCAS Hardware Project 2023. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-08-04 - **Last Updated**: 2023-10-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #+title: NOX Kit iGEM UCAS Hardware 2023 #+author: iGEM UCAS Hardware * 关于 #+attr_org: :width 0.8 #+name: NOX-kit-header-image #+caption: NOX Kit (iGEM UCAS 2023) [[./img/NOX-kit-header.png]] (英文版见 [[file:README.org][=README.org=]], 注: 英文版才是最终版的呢... ) NOX Kit 是一个提供温度控制, 温度监测和生物发光监测功能的通用生物实验环境检测硬件套件. #+name: nox-animation #+attr_org: :width 0.6 #+caption: 项目动画演示 [[./img/nox-animation.gif]] 在本次项目中, 我们的生物放大器可以将微量的待测物质放大并转化为生物荧光. 当前为了检测生物荧光反应, 往往需要通过昂贵的荧光显微镜且难以进行大规模测量. 所以为了提供低成本且高通量的探测, 所以我们设计了 NOX Kit 来应对这一需求. NOX Kit 有如下的特性 (详见 [[feature-description][特性说明]] 一节): + 模块化设计: 可拓展配置, 根据工作需求增减模块 + 多工作模式: 可单机工作, 或通过总线组成探测阵列进行高通量测量 + 友好的用户操作界面: 只需要简单点击即可收集数据, 可实时可视化阵列 + 可复现的低成本设计: 核心板制作成本只需 5 元 (RMB, 不到 1 美元). 构造精简可稳定复现, 大量生产. 所以对于一般使用者, NOX Kit 是简单易用的, 只需要连接设备即可进行数据采集和可视化; 而对于开发者, NOX Kit 则是低成本可拓展的, 通过 NOX Kit 提供的接口可以在 NOX Kit 的基础上构建更多低成本, 高通量的生物检测装置. ** 开发故事 在开发 NOX Kit 的过程中, 我们调研了生物实验的经验和需求, 经过了多次的原型迭代和开发得到了最终的 NOX Kit. #+name: develop-shots #+attr_org: :width 0.6 #+caption: 外壳原型草图设计的开发讨论过程 [[./img/prototype-of-the-shell.jpeg]] 在和实验组交流沟通过程中, 我们多次修正了探测器的原型设计, 解决了许多具有实际意义的问题, 包含但不限于: + 通过约束反应腔室体积减少试剂浪费和荧光不均匀引入的位置依存性问题 + 通过迭代检测元件提高检测范围内的信号灵敏度 + 通过迭代外壳设计和软件设计获得更好的用户使用体验 + ... 并在这个设计过程中, 我们积累了许多设计经验: + 通过建模仿真, 并结合实验方法和实验结果进行硬件设计 + 在保证性能的情况下, 从探测原理上进行等价替换, 选择更加经济的硬件 + 如何更好的进行团队沟通和协作 + ... 如此, 才逐渐形成了现在的模块化 NOX Kit. #+name: final-prototype #+attr_org: :width 0.5 #+caption: 一个单探测器工作模式的探测器原型 [[./img/detect-device-prototype.png]] * 特性说明 <> ** 模块化设计 为了应对不同的工作需求, 以及不同的探测灵敏范围, 可以增减不同的模块: + 核心板 核心板由 STC8G1K08A 芯片为主控, 通过光敏和热敏电阻提供生物荧光和温度探测功能. + 加热模块 加热模块可以选择搭配 PTC 加热片模块 (5V 1A 1W), 半导体控温模块 (5V 1A 1W) 等模块. + 电源模块 电源模块可以选择以 3.7V 锂电池驱动, 5V DC 电源或是 5V USB 电源控制. + ... 该项目可作为基础套件, 可以通过拓展增加更多的模块支持, 未来可继续开发更多的适配模块, 并移植到更多的生物实验检测环境中. ** 多工作模式 NOX Kit 可以选择工作在不同的模式: + 单探测器工作模式 NOX Kit 可通过串口直接与上位机进行通信, 作为单探测器进行工作. 一个单探测器的案例如下: #+name: detector-work-in-single-board-mode-application-scene #+attr_org: :width 0.8 #+caption: 使用 NOX Kit 搭配加热模块组建的空气中微量元素的探测器 [[./img/structure.png]] 通过风扇向反应腔室中泵入气体, 通过 NOX Kit 探测由生物放大产生生物荧光, 将检测到的数据信号传送给上位机进行数据采集. + 高通量探测阵列工作模式 #+name: detector-work-in-multi-board-mode-application-scene #+attr_org: :width 0.8 #+caption: 使用 NOX Kit 通过 I^2C 总线组成探测阵列 [[./img/detect-device-main-structure.jpg]] NOX Kit 可通过 I^2C 总线和主机连接, 实现同一台主机控制一组探测器形成探测阵列, 实现高通量探测功能. ** 友好的交互 对于一般用户, NOX Kit 提供了一个用于单探测器工作模式时的采集程序: #+name: user-friendly-interface #+attr_org: :width 0.8 #+caption: 用户友好的操作界面 (注: 截图来自调试环境, 非实际工作环境) [[./img/user-interface-early-stage.png]] 用户可以通过简单的交互即可进行数据采集和可视化. 而对于开发者, NOX Kit 提供了 Python 的接口类, 可以通过简单调用来构建数据采集程序. ** 可复现的低成本设计 常见的 iGEM 项目往往建立在一些通用的开发板 (Arduino, Raspberry Pi) 之上, 这些开发板往往性能 overkill 且价格较高, 难以实现低成本的大规模生产. NOX Kit 为了解决这个问题, 在设计元件选型时选择了低成本且易取得的元件进行设计. 而得益于 NOX 项目作为生物放大器的作用, 可以轻易将微量待测物质进行放大的特点, 使得在荧光显微镜下有 1400 的信噪比, 所以我们得以使用更加实惠的探测元件取得和高精密仪器相似的结果. 对于核心板, 其成本在 5 元之内 (详见 [[BOM][物料表]]). * 未来展望 NOX Kit 使得任何人都可以使用低成本的方式使用我们的检测设备. 并且我们开发的硬件功能齐全拓展性强, 未来可以进行一些升级迭代, 如: + 添加更多拓展板模块: 如显示器模块, 可以使得在单探测器工作模式时不依赖电脑进行数据可视化. + 优化反应腔室使其更加精简紧凑, 使得探测器更加便携. + 将 NOX Kit 封装并定义标准接口投入商业化使用, 为生物实验提供更加低成本且易使用的检测手段. 并且在开源基础上通过提供技术支持和使用教育进行盈利. #+latex: \appendix * 附录: 技术说明 ** 用户使用手册 *** NOX Monitor 启动程序, 程序左侧边栏为控制栏, 通过串口选择连接的 NOX Kit 设备, 点击开始进行数据收集, 点击结束停止收集, 点击保存可以将收集的数据保存在本地; 程序右侧为数据收集的可视化结果. *** 生物安全 为防止检测装置使用后的工程菌残留, 可对装置通过 30 min 紫外照射和酒精涂抹可对装置进行杀菌操作. ** 开发者手册 *** 单探测器模式 通过 UART 串口协议和单板进行通信. 通过向探测器串口发送指令可得到指令对应的结果: #+name: uart-command-table #+caption: UART 指令表 | Command | Description | |---------+------------------------| | T | Read ADC Temperature | | P | Read ADC Photoresistor | NOX Kit 对用户提供了 NOX Monitor 进行单探测器数据测量工作, 而对开发者则提供了 Python NOX 进行调用. *** 多探测器阵列 通过 I2C 总线协议连接主机和单板. 在编译固件时, 可选择提供探测器元件的地址, 在通过 I2C 总线进行访问时, 通过指定固件对应的地址, 以及对应的数据地址即可读取数据. #+name: i2c-address-table #+caption: I^2C 数据地址 | Address | Description | |---------+-------------------| | 0 | ADC Temperature | | 1 | ADC Photoresistor | 通过主机连接探测器阵列可以进行多探测器的阵列检测, 实现高通量探测功能. *** Python NOX 使用 NOX Kit 提供了如下的 Python 类可供快速调用: #+name: python-nox-usage-example #+begin_src python from nox import nox board = nox(port) # <= the port of nox kit board.temp() # => read temperture board.photo() # => read photoresister #+end_src (详见 =pyserial=, 其中包含了 =nox.py=, 以及一些例程) *** 组装教程 1. 准备元件 本项目的所有工程文件均为开源文件, 你可以在 [[file:3dmodel][=3dmodel=]] 文件夹下找到所有的零件模型 (SolidWorks). 而对于核心板使用的元件, 请见 [[BOM][物料表]] 进行配置. 其中对于探测元件的选型, 有如下依据: \(R_{\mathrm{pair}} \approx \sqrt{R_{\mathrm{sensor\ work\ point}}}\). 其中 \(R_{\mathrm{pair}}\) 为探测电阻的分压电阻, \(R_{\mathrm{sensor\ work\ point}}\) 为探测电阻工作点附近的阻值. 2. 焊接电路板 核心板结构经过精简, 使用的元件数量少, 功能精悍, 容易复现搭建: #+name: core-board-weld #+caption: 简单的核心板焊接过程 [[./img/core-board-weld.gif]] 3. 零件组装 4. 烧录固件 NOX Kit 提供了一个 [[file:Rakefile][=Rakefile=]] 执行脚本进行操作, 详见源代码. ** 物料表 <> #+name: core-board-bom-table #+caption: 核心板物料表 | Components | Number | Price (RMB Yuan per one) | Sum (RMB Yuan) | |--------------------------+--------+--------------------------+----------------| | Photoresister | 1 | 3.4/10 | 0.34 | | MCU STC8G1K08A | 1 | 0.76 | 0.76 | | Temperature Sensor (10K) | 1 | 2.1/10 | 0.21 | | Bread Board | 1 | 3.44/2 | 1.72 | | Resister | 2 | 2.05/100 | 0.04 | | Total | | | 3.07 | #+tblfm: @2$4..@-1$4 = $2 * $3;%.2f #+tblfm: @>$4 = vsum(@2..@-1)