移液器数据的自动传输处理系统
2020-01-09徐擎黄莉梁晓雄上海市计量测试技术研究院
徐擎 黄莉 梁晓雄 / 上海市计量测试技术研究院
0 引言
移液器作为量出式量器,可分为分定量式移液器和可调移液器两大类,广泛用于医院、卫生防疫站、输血站、生化实验室、环境实验室、制药实验室的精密微量取样。移液器检定周期为一年,一个移液器大多数情况下需要检定三个点,一个点需要检定六次,每个点都需要计算平均值、误差、重复性等数据,此过程耗时且繁琐,工作强度很大,为解决上述问题,笔者研发了一套实用高效的移液器数据自动传输处理系统。
1 系统总体结构
系统由两个模块构成,如图1所示。
蓝牙模块,其功能包括电源管理、蓝牙通信、实时时钟与闪存。数据处理模块,其功能包括蓝牙通信管理、数据解析、相关信息输入、原始记录生成与证书生成。除需要人工输入移液器相关信息外,所有模块都能自动完成相应操作。
图1 系统方案模块
2 处理系统
2.1 数据采集模块
对于提供物理接口的电子天平可以直接与电脑连接进行数据通信;对于不支持的电子天平主要有两种办法。
1)图像识别:使用摄像头,将液晶屏上的数字转换成文字输入;
2)蓝牙数据输出:将蓝牙通信模块与液晶屏输入并联,将所有的数据无线传输到电脑。
方法一成本较高,使用环境受限,本文不展开论述。方法二需要一个蓝牙模块,使用板载供电,借助接一分二信号线将蓝牙模块输入与液晶屏并联,将所有输入数据同步输出到电脑。整个模块和一元硬币大小相近,可以很好地放入电子天平内,且不影响读数。
2.1.1 蓝牙通信芯片
蓝牙通信芯片采用nRF51822芯片,具有体积小、功耗低、可独立编程等优点。具体接线方式见图2。
2.1.2 电源管理
对于提供板载3 V或液晶屏使用3 V电压的电子天平可直接供电,对于不提供的天平,使用AMS1117芯片降压之后再为蓝牙芯片供电,如图3所示。
2.2 数据处理模块
2.2.1 数据解析
不同天平的液晶屏结构不同,使用的编码方式也不同,蓝牙输出到电脑的数据无法直接读取。在此设计了一套自校准程序,在质量不发生变化的情况下,蓝牙输出的是一段重复的字符串。在天平内放入盛有水且表面较大的容器,静置。期间水蒸发,读数缓慢下降,百分位、千分位、万分位发生变化且速率不同,字符串中对应的位置也会由此变化。然后清零,再缓慢加入1 mL多的水,十分位发生了10次变化,个位从0变为1,由此确定个位与十分位,并可以获得该显示屏的编码方式。自校准程序生成配置文件,至此,电脑能将蓝牙输出的乱码有效地转化成质量示值。此过程大约持续5~15 min。具体流程见图4。
图2 nRF51822芯片接线方式
图3 3 V稳压电路
2.2.2 数据传输
数据处理是基于MATLAB程序,模块化设计,方便之后的修改与升级。数据处理由两个子程序构成,数据传输流程如图5所示。数据记录程序提供数据预览,在软件数据查错后再提供人工检查的机会,最大程度的避免错误的发生。具体流程图见图5。
2.2.2 原始记录与证书生成
检定人员在相关信息界面,输入检定规程中规定的外观检查、密合性检查、温度、厂家编号、容量等项目,原始记录与证书生成程序就能直接生成原始记录、检定证书、检定结果通知书或者校准证书。具体流程见图6。
图4 数据解析的流程
图5 数据传输的流程
图6 原始记录与证书生成的流程
3 程序
3.1 MATLAB生成Excel表格并实现数据处理
本项目使用MATLAB程序直接生成Excel文件并进行编辑,其好处是能够完成更复杂的操作,不受模板限制,能够完成加点、自动分页等操作。其实现生成编辑Excel示例代码如下:
if exist(filespec_user,'file');
Workbook = Excel.Workbooks.Open(filespec_user);
else
Workbook = Excel.Workbooks.Add;
Workbook.SaveAs(filespec_user);
end
Sheets = Excel.ActiveWorkbook.Sheets;
Sheet1 = Sheets.Item(1);
Sheet1.Activate;
3.2 MATLAB计算重复性与不确定度的程序编写
对移液器进行检定,需要给出相对误差与重复性,相对误差与重复性具体评定过程参考JJG 646-2006《移液器》。A1~A6为数据,B1为检定点量值
EA=(A1+A2+A3+A4+A5+A6)/6;①
EA=roundn(EA,-4);②
①EA为六次测量的平均值,
②将平均值保留四位小数。
E=[A1;A2;A3;A4;A5;A6;B1]* Kt;%Kt=1.002 858 ③
③根据六次质量值求出实际容量值。
XD=(B1-EA)/EA*100;④
XD=roundn(XD,-1);%% ⑤
④XD为移液器容量相对误差,
⑤将相对误差保留一位小数。
CF=std([A1;A2;A3;A4;A5;A6],1);⑥
CF=roundn(CF*100,-1);%% ⑦
⑥CF为移液器容量重复性,
⑦将重复性保留一位小数。
3.3 生成原始记录与证书程序编写
Sheet1.Range('A1:H1').MergeCells = 1;% 合并单元格
Sheet1.Range('A4:H14').Borders.Weight = 3;% 设置单元格的边框
Sheet1.Range('A1:H9').HorizontalAlignment = 3;%设置单元格对齐方式
Sheet1.Range('A1').Value = '被测试点 /μL';% 写入单元格内容
使用以上四个基本语句进行循环嵌套,就可以自动绘制合适的Excel表格,完美适配单一量程,可调量程,与额外加点移液器。
4 实际预览
表1、表2为程序自动生成的原始记录与检定证书预览。
表1 程序自动生成的原始记录预览
表2 程序自动生成的检定证书预览
5 结语
移液器蓝牙数据采集装置硬件结构简单,不影响测量结果;基于蓝牙通信与MATLAB软件对数据传输记录,具有自动分析解码等齐全的功能。产品的实用性强,能够适配市场上大多数电子天平。基于MATLAB的数据处理程序能够快速准确地完成数据的后期处理、电子原始记录与证书生成,大大减轻了检定人员的劳动强度,工作效率极大提高,并填补了国内容量微量计量自动化方面的空白。