1. 引言
随着生物医学研究的深入发展,高通量样本处理已成为现代实验室的核心需求。更为严峻的是,在精准医疗时代背景下,伴随液体活检、单细胞测序等技术的临床普及,样本处理正面临高通量与高精度的挑战,对自动化的需求日益迫切。据不完全统计,在血液样本临床检验过程中,前处理部分约占临床检验总时间的65%,样本运输时间约占2%,样本在线分析时间约占15%,分析后处理时间约占18% [1]-[3]。生化样本前处理系统按各组功能的不同分为筛选、贴签、开盖、移液和离心部分。生物样本移液及开关盖时间占用较长,而且人工操作易出现失误[4],不可溯源。因此,实现自动化的开盖,移液,以及后处理的关盖等处理操作。既可以减少操作时间的浪费、降低人工成本,又可提高测试质量和检验系统工作效率[5]。
近年来,实验室自动化技术逐渐成为解决此类问题的核心方向,但自动化系统普遍存在投资巨大[1]、系统封闭、灵活性不足,难以适应中小型实验室或个性化实验设计的需求。这种设备可及性的不平衡现象正在加剧科研资源的分布不均,制约着创新研究的开展。
为解决这一问题,已有多种自动化移液与开关盖系统被提出。张航等人提出的冻存管旋盖分液装置[6],集成了平移模组、吸液蠕动泵、旋盖主轴和加液装置,但其结构复杂、成本高昂,系统调试和维护难度较大。赵可心等人开发的基于高自由度机械臂的移液系统[7],通过机械臂运动与移液指令协同,实现了多角度多位置的精确操作,虽在灵活性方面有显著提升,但仍需人工开盖,自动化程度有限。杨增帅等人提出一种开盖装置[8],开盖装置实现了基本的自动启闭功能,但启盖过程中常伴随冻存管管体被带起,存在操作风险,且整体效率偏低。包唐伟提出一种孔口耦合式自动开关盖板装置及其安装使用方法[9],提出的孔口耦合式自动开关盖板装置通过机械耦合结构解决了启盖时的同步问题,但该装置一次仅能处理单个冻存管,需人工更换样品,难以满足高通量需求。针对现有设备在成本、效率与系统集成度上的不足,本文提出了一种生物样本自动移液设备多轴运动控制系统设计。该系统通过多轴协同运动实现移液装置与开关盖机构的集成操作,可同时完成多个冻存管的自动开启与闭合,显著提升操作效率;其机械结构简化、控制系统开放,制造成本显著低于商业化系统(约为后者的10%~20%),同时在精度与重复性方面保持实验室级要求。该方案在性能与成本之间取得了平衡,为中小型实验室提供了一种高性价比、可扩展的自动化生物样本处理解决方案。
G-code与3D打印技术的发展,使得利用通用硬件(如42步进电机、丝杆导轨)构建低成本、高灵活性的自动化平台成为可能[10]。这为我们构建实验室自动化提供了新的思路。借助G-code这一数控标准语言,可以对电机的运动轨迹[11]、速度及操作顺序进行精确控制,从而实现系统的高可扩展性与模块化设计。通过3D打印技术设计出特定的机械结构则可以将通过硬件(如42步进电机、丝杆导轨)稳定地组合在一起[12]。因此本文结合3D打印技术[13],以G-code为控制语言设计了一种基于G-code的多轴脉冲时序控制的自动移液系统[14]。
2. 系统总体方案设计与主要的硬件组成
2.1. 整体架构设计
硬件系统由电脑、多轴主控板、步进电机驱动、传动装置、步进电机、3D打印零件等组成。根据步进电机形状、传动装置预留接口位置设计出特定3D打印零件,从而满足整体系统的稳定固定。示意图见图1电脑生成运动指令,该指令格式为G-code。多轴主控板(MKS Monster8 V2, Makerbase),步进电机驱动(如TMC2209)参数;传动模块以高精度丝杆和导轨实现机械位移。步进电机采用42步进电机,其参数步距角:1.8˚、保持转矩:400 mN∙m、额定电压为1.5 A、相数:2、机身长度:40 mm。
Figure 1. Overall hardware control
图1. 整体硬件控制
2.2. Marlin固件与通信流程
2.2.1. Marlin固件原理
本Marlin是RepRap可自复制快速原型机(俗称“3D打印机”)的开源固件。Marlin最初源自Sprinter和grbl,于2011年8月12日通过其Github版本成为一个独立的开源项目。Marlin根据GPLv3获得许可,对所有应用程序免费。
从一开始,Marlin就是由RepRap爱好者构建的,旨在为RepRap爱好者打造,成为一个简单、可靠且适应性强且“正常工作”的打印机驱动程序。作为其质量的证明,Marlin被几家受人尊敬的商用3D打印机使用。LulzBot、Průša Research、Creality3D、BIQU、Geeetech和Ultimaker只是提供Marlin变体的少数供应商。Marlin还能够驾驶CNC机器和激光雕刻机。
Marlin有用的一个关键是它是围绕轻量级Arduino框架构建的,因此它可以在大量廉价的微控制器上运行,从经典的Atmel AVR 8位板一直到最新的ARM 32位OEM和来自BigTreeTech和Makerbase等公司的升级版。本研究中的控制板是MKS Monster8 V2,marlin固件支持该硬件,并且支持对硬件参数的修改的支持。
2.2.2. 部件间通讯流程
本系统采用上、下位机协同的控制架构。上位机(PC)运行自主开发的控制软件,负责人机交互、任务调度与基于用户输入实验参数的路径规划与G-code生成。上位机生成的G-code不仅包含各轴目标位置及进给率,还可包含显式的分段时长作为动作时间基准。生成的指令通过USB串口(115,200 bps)实时传输至下位机(配备定制化Marlin固件的MKS Monster8 V2主板)。当MKS Monster8 V2接收到G-code时通过Marlin固件对接收到的G-code进行实时解析,设置各轴步进电机的脉冲频率,从而产生同步的STEP脉冲以驱动步进电机,同时输出相应的I/O控制信号以完成周边器件的协同动作。简言之,上位机定义“去向与时间分配”,下位机将“时间映射为脉冲/频率”并在硬件层面实现精确的多轴运动控制,该协同方案兼顾了路径优化的灵活性与执行时序的精确性。
3. G代码控制算法设计
在开关盖,移液等操作中涉及到多轴配合控制即在同一时间内各轴完成规定的动作。通过设置各轴不同的速度便可实现同一时间内各轴完成规定的动作。开关盖中难点在于当瓶盖旋转的时候随着螺纹的旋转,瓶盖的高度会发生变化,此时用于开关盖的旋转刀头则需随着瓶盖高度变化而变化,从而保证瓶盖与用于开关瓶盖的旋转刀头之间不会产生相对运动,继而影响整体的开关盖效果良好能力。在移液等操作则涉及到各轴位移之间的配合。结合各轴位移与各轴机械参数找出各轴电机的脉冲频率之比,通过各轴比值即可完成多轴控制协同[15]。
3.1. G代码指令
G-code指令中,常用的运动指令包括G0 (快速定位)与G1 (直线插补),这些指令分别用于空程和精确定位。G0用于快速移动到目标位置,不做精确控制;G1则沿着直线路径以指定的进给速度进行精确定位,适用于需要精密操作的场合。运动与模式类G0:快速定位(空程,通常不做精确插补);G1:直线插补,带进给率F,用于精确定位与耦合运动;G28:归位(回原点);G90/G91:绝对/相对坐标模式切换。
3.2. 基于脉冲频率与机械传动参数的多轴协同控制算法
为了实现旋转,移液,定位等多轴运动协同,必须建立“位移–脉冲数–频率”的数学关系,保证在同一时间内相关轴运动相应指定距离。多轴协同运动的核心在于多轴在同一时间完成规定的位移任务,运动的关键因素其中包括电机脉冲频率、机械传动参数等信息。通过对这两个要素的控制,可以实现精确的运动控制和定位。在实际操作中通过设置主轴脉冲频率为基准反算其他轴的脉冲频率即可实现多轴协同运动,基于脉冲频率与机械传动参数的多轴协同控制算法的数学本质是根据机械传动参数等信息构建出脉冲比例信息过程。
由上述可知步进电机的线速度v由脉冲频率和机械传动参数决定。对于采用丝杆传动结构的系统,机械传动参数主要为丝杆导程p (单位:mm/rev)与电机减速比
。因此电机转一圈对应的直线位移,
。电机每转所需的总脉冲数为
,其中S为电机整步数,m为驱动器细分数。因此,当电机以脉冲频率
运行时,其线速度可表示为:
(1)
该公式揭示了G代码参数与固件底层脉冲控制的直接映射关系:脉冲频率决定了运动速度的时间基准;丝杆导程
、电机传动比
和步进分辨率(
)共同决定每单位位移所需脉冲数;
设第i轴的目标位移为
(单位:mm或˚)
(2)
(3)
根据此式便可导出若要求在时间t内完成多轴,则对应的脉冲频率为:
(4)
轴协同的本质在于:所有运动轴在同一时间窗t内完成各自规定的距离,即各轴频率满足比例关系。
(5)
3.3. 开盖/关盖动作中的多轴协同控制
旋转与升降的同步本质在于,通过脉冲频率的控制,我们可以确保两轴在相同时间内完成各自的运动。为实现旋转与升降的协同控制,我们通过建立A轴旋转轴角位移与Z轴升降轴线位移的映射关系,得到两者之间的同步规则。记A轴瞬时角位移为
(单位:˚),Z轴高度为
(单位:mm)。定义耦合系数
。
(6)
其中,
是耦合系数(单位:mm/˚),表示每旋转1˚对应Z轴的高度变化(mm)。则A轴从初始角度
旋转到
时,Z轴相应变化为
(7)
脉冲频率是实现旋转与升降轴同步控制的核心。每个步进脉冲的产生都与旋转角度和升降高度的变化对应。通过设置合适的脉冲频率,可以精确控制A轴的旋转与Z轴的升降动作,使两者在相同的时间窗内完成各自的运动。
为此,我们需要计算每个轴的脉冲数,并根据期望的运动时间
或线速度
来确定脉冲频率。设定了旋转角速度
后,我们可以通过下列公式计算Z轴的线速度
,并根据此线速度反向计算出脉冲频率
。同样,A轴的角速度
会对应到脉冲频率
。
记电机与传动参数:A轴电机全步数
(steps/rev),微步细分
,电机转动一圈总脉冲数
(pulses/rev),若存在减/增速比记为
(output rev/motor rev);Z轴对应参数为
,丝杆导程为
(mm/rev),传动比为
。
A轴每度对应步数(steps/deg):
(8)
Z轴每毫米对应步数(steps/mm):
(9)
相应的脉冲频率(pulse/s)为:
(10)
通过这些公式,我们可以计算出每个轴所需的脉冲数,从而使A轴与Z轴在Marlin固件中得到精确的脉冲调度。通过这种脉冲与位移的关系,Marlin固件能够精确控制A轴旋转与Z轴升降的同步。因此,A轴与Z轴的同步控制在实质上是通过控制两者的脉冲频率比来实现的。由式(8, 9, 10)可知,若想实现开盖时刀头同步上升则上升轴和旋转轴应该满足:
(11)
旋转与升降的瞬时位移满足
,从而在物理层面确保开盖或关盖过程中开盖旋转刀头与管盖的啮合与分离过程平滑同步。
4. 系统验证
4.1. 运动精度
本实验采用得力度数显游标卡尺(DL91150,量程0~150 mm,分辨率0.01 mm,误差 ≤ 0.03 mm),对XYZ轴运动系统进行定位精度与重复性测试。实验通过固定游标卡尺于自动移液平台的XYZ轴的型材上(见图2),结合G代码指令驱动单轴运动[16],记录实际位移并与G代码命令值对比,验证机械结构与控制系统的匹配性。
Figure 2. Vernier caliper fixed to X-axis profile
图2. 游标卡尺固定于X轴型材
基于得力度数显游标卡尺(DL91150,误差 ≤ 0.03 mm),对XYZ轴运动系统进行多位移点测试(0.1 mm、1 mm、10 mm、20 mm、30 mm、40 mm)。每个位移点重复三次测量并取均值。在对X轴测试时发现其误差约为10%。测试结果见表1。
Table 1. XYZ axis motion accuracy test results
表1. XYZ轴运动精度测试结果
运动轴 |
理论位移 |
0.1 |
1 |
10 |
20 |
30 |
40 |
X轴 |
实际位移 |
0.097 |
0.99 |
9.927 |
19.83 |
29.76 |
39.71 |
误差(%) |
3.00% |
1.00% |
0.73% |
0.85% |
0.80% |
0.73% |
Y轴 |
实际位移 |
0.093 |
0.986 |
9.947 |
19.927 |
29.86 |
39.785 |
误差(%) |
7.00% |
1.40% |
0.53% |
0.37% |
0.47% |
0.54% |
Z轴 |
实际位移 |
0.094 |
1.003 |
9.963 |
19.94 |
29.907 |
39.94 |
误差(%) |
6.00% |
0.30% |
0.37% |
0.30% |
0.31% |
0.15% |
A轴 |
实际位移 |
0.093 |
0.98 |
9.926 |
19.965 |
30.11 |
40.151 |
误差(%) |
7.00% |
2.00% |
0.74% |
0.18% |
0.36% |
0.37% |
4.2. 移液重量
为验证全自动移液平台的液体分配精度,本研究采用高精度电子天平(最小分度值0.01 mL)对0.1 mL至0.5 mL的液体体积进行滴定实验,实验中采用的移液样本为纯净水。实验过程中,首先对电子天平进行预热与置零校准,移液枪预先润洗三次以消除残留影响。通过平台控制移液枪依次分配目标体积,每组体积重复三次操作并取均值,最终记录实际体积并计算误差。实验结果如表2所示,整体误差范围为1.50%~3.00%,表明系统在中低体积范围内具备较好的稳定性,但小体积(0.1 mL)误差相对较高。测试结果见表2。
Table 2. Pipetting weight accuracy test results
表2. 移液重量精度测试结果
理论值(ml) |
0.1 |
0.2 |
0.3 |
0.4 |
0.5 |
实际均值 |
0.103 |
0.203 |
0.307 |
0.407 |
0.513 |
误差(%) |
3.00% |
1.50% |
2.33% |
1.75% |
2.60% |
4.3. 开盖关盖率测试结果
在本研究中,开关盖成功的判定标准为:关盖时管盖完全旋紧至指定位置,且无肉眼可见的明显歪斜或松弛。开盖时管盖可随刀头离开管身。单个批次的开关盖操作,若成功数量达到或超过总管数的80%,即判定该批次操作成功。此标准的确立是基于以下考量:首先,它涵盖了自动化设备在批量处理时可能存在的固有性能波动,是效率与可靠性的平衡点;其次,该比例确保了批次内绝大多数样本的密封性满足长期保存的;最后,从统计过程控制角度,该成功率显著高于随机水平,表明操作过程处于受控状态。开盖测试结果见表3。关盖测试结果见表4。
Table 3. Lid opening rate test results
表3. 开盖率测试结果
测试项目 |
测试结果 |
开盖次数 |
50 |
全部打开次数 |
46 |
打开超过80%次数 |
4 |
打开低于80%次数 |
0 |
成功率 |
100% |
Table 4. Cover rate test results
表4. 关盖率测试结果
测试项目 |
测试结果 |
关盖次数 |
50 |
全部关闭次数 |
48 |
关闭超过80%次数 |
2 |
关闭低于80%次数 |
0 |
成功率 |
100% |
5. 讨论
5.1. 运动精度验证分析
通过本实验可以发现,小位移误差较为显著,X/Y/A/Z轴在0.1 mm位移时误差为3%~7%,其主要原因是游标卡尺系统误差(±0.03 mm)对小位移测量影响放大和丝杆螺母间隙或同步带弹性形变导致微小位移时传动效率下降;与之相对的是大位移精度较高,当位移 ≥ 10 mm时,XYZA轴误差均≤0.85%,表明系统在大范围运动中具备较高稳定性,其中Z轴表现最优(误差 ≤ 0.37%),得益于线性导轨的高刚性及丝杆传动的低回差特性。
5.2. 移液重量精度分析
可以发现在0.1 ml处误差较大,其主要原因可能为电子秤的最小分度值为0.01 ml导致在测量小体积液体时误差值较大,其次丝杆实际导程与标称值偏差会导致位移误差随行程增加线性放大,丝杆螺母间隙会导致反向运动时产生空行程。除此以外,液体挂壁效应也会导致微量损失。
总体而言,小体积误差(如0.1 mL误差3.00%)受活塞初始运动惯性及液体表面张力影响显著;而中体积(如0.4 mL误差1.75%)因系统进入稳态运动阶段,精度表现更优。
5.3. 开盖关盖率测试结果分析
对本次50次开盖与50次关盖实验结果进行综合分析可知:以开盖或关盖完成度超过80%视为成功标准后,开盖总体成功率达到100% (其中完全打开46次,占92%;打开程度在80%~100%之间3次,占6%),关盖成功率亦达到100% (其中完全关闭48次,占96%;关闭程度在80%~100%之间2次,占4%)。结果表明,该开关盖装置在连续操作中具备较高的可靠性与稳定性,能够稳定实现有效的启闭动作,基本满足实际应用需求。少量未完全开启或关闭的情况多为边缘误差,可能源于机械对位偏差、夹持力或扭矩传递不足、个别冻存管盖紧固程度差异等因素。此外,环境温度、管体表面湿度或摩擦系数变化也可能导致瞬时扭矩不足,从而出现“接近完全打开/关闭”的现象。总体来看,装置性能稳定、成功率高,但在极端样本或边界条件下仍存在轻微波动。后续工作可通过优化末端夹持结构、调整运动速度曲线及引入力矩闭环控制,提高启闭一致性与适应性,从而进一步提升系统的鲁棒性与长期运行可靠性。
5.4. 优缺点分析及未来展望
本研究提出的多轴运动控制系统在高精度移液和冻存管开关盖操作中展现了显著优势,成功率高,精度优异,特别适用于中小型实验室,且通过采用G-code控制、模块化设计和3D打印技术,有效降低了系统成本。然而,系统在小体积液体分配时存在较大的误差,主要受到电子天平分辨率和传动系统微小间隙的限制。此外,机械传动精度和环境适应性仍需进一步优化,以提升小位移操作精度和系统在不同实验条件下的稳定性。未来可通过优化传动部件、提高液体分配精度、引入智能反馈系统、并结合更高精度的传感器来提升系统性能。此外,通过加强对低成本材料的研究与应用,可使该系统在更多实验室中得到广泛应用。
6. 总结
本研究成功设计并实现了一套基于MKS Monster8 V2主控制器与定制化Marlin固件的生物样本自动移液设备多轴运动控制系统,通过集成6个42步进电机与TMC2209驱动器构建了高精度(微步控制精度达0.007˚)的多轴协同操作平台。系统采用G代码作为核心控制指令,由上位机生成优化指令集并通过USB通信下发给下位机执行,实现了对24孔冻存板的精准操作(开盖、关盖成功的个数达到总数的80%的成功率为100%)与亚微升级别移液(移液误差率 < 3.00%)。实验验证表明,系统在位移运动的误差率不超过7%。在大位移运动即运动距离在10 mm及以上(误差率 ≤ 0.85%)与中体积移液(误差率 ≤ 1.75%)中表现优异,但小尺度操作精度仍受传动间隙与测量工具限制。
基金项目
项目类型:辽宁省科技计划。
项目号:2024-MSLH-350。
项目名称:纤维素纳米纤丝和液态金属增强的聚乙烯醇复合水凝胶的研究。
项目类型:辽宁省教育厅面上项目。
项目号:JYTMS20231205。
项目名称:人工智能辅助皮肤瘢痕精准敷贴制备方法的研究。
NOTES
*通讯作者。