一种取样平台三维运动控制模块的设计
2018-03-28杨延丽
杨延丽,黄 震
(1. 厦门安防科技职业学院 福建厦门361026;2. 厦门大学 福建厦门361005)
0 引 言
随着我国医疗水平不断提高,对于全自动化的医疗设备需求量越来越大,同时对全自动设备的自动化程度、精度稳定性等指标的要求也越来越高,对于医疗设备的研制来说,如何将手工设备和半自动设备升级成稳定可靠的全自动化设备,是非常重要的问题。全自动化的医疗仪器往往需要在一个操作平台上完成各种动作,如吸取血清样本、吸取反应试剂、向反应杯中加入微量液体等,这些动作都需要使用全自动化的运动控制器来完成,再结合相应的控制软件和人机界面软件等。依据医疗仪器检验项目的检验方法和原理,完成复杂的医疗检验过程,能大幅度提高医疗检验的通量、精度、重复性等指标,降低检验成本。
本文介绍了一种用于医疗仪器取样平台的三维运动控制模块的设计,该模块已经在全自动化医疗仪器上进行了批量的生产并投入医院使用,从总体运行情况和大量的测试数据来看,该运动控制模块运行稳定,可靠性高。
1 取样平台三维运动控制模块机械结构设计
在仪器的操作平台上,设计三维运动控制进行定位的机械机构,即 X、Y、Z三轴运动机械臂,X、Y、Z三轴的电机,三轴电机驱动器,嵌入式运动控制卡共同组成本模块的大三维运动控制系统。
在机械运动机构设计上,每轴均采用了“步进电机+直线导轨”的方式进行直线运动,各轴根据负载大小的不同采用不同的电机型号和导轨型号。步进电机是一种可以开环使用的数字传动装置,具有快速启动、停止,转速与输入时钟频率成正比,能实现精确定位以及直接接受数字量等特点[1]。本模块采用的CPC滚珠静音直线导轨可以进行平稳的运动导引,能达到很高的定位精度。
Y轴导轨安装在仪器平台左右两侧的金属固定板上,为了保证运行精度和平稳性,Y轴导轨左右各一个。Y轴电机固定在底板上,电机轴上装入主动轮,与主动轮等高同线的另外一端固定从动轮,主动轮和从动轮通过同步带连接,同步带的两个末端通过固定零件固定在直线导轨的滑块上。通过左右两个直线导轨保证Y轴运行的直线性。Y轴安装完毕后,在左右两个导轨的滑块上固定X轴,大三维的 X轴就架在Y轴之上运行。为了保障X轴运行的平稳性和直线性,X轴仍然采用双导轨设计。如图 1所示,将电机和X轴固定座安装在X轴固定板上,套入主动轮。从动轮固定座、X轴固定底板垫块固定于X轴固定底板上,同样采用同步带连接主动轮和从动轮,同步带末端固定在导轨的滑块上。
图1 X轴机械结构设计图Fig.1 Mechanical structure of large-scale threedimensional X-axis motion
大三维的 Z轴负责带动加样针进行垂直运动,完成一系列动作。Z轴的直线运动机构仍然采用电机和直线导轨方式,Z轴下端固定在 X轴的一个导轨滑块上,Z轴架在X轴的运动机构之上。
2 三维运动控制模块硬件控制设计
对于大三维运动控制单元,要求速度快,动作精确,并且载重量大,因此本模块采用了 PC作为运动控制中心,根据运动控制的方法、方式对三维机构多点、多曲线度地连续控制,可以达到非常高的速度和精度。系统每次运行,需要进行几百上千次操作,传动系统需要保证稳定性、精确性、可靠性。在三维运动中,目前大多使用光电开关与光栅板配合的方式,这样无论在精确度、方便性和成本上都没有优势。本模块针对机器的特点进行了改进,将光电开关、光栅板去除,只保留原点位置的一个位置检测,并且保证每次都是同一方向的位置定位,这样就提高了原点定位的准确度。通过软件的控制设计,本模块可以完成一系列复杂的自动化工作,由于 PC是整个医疗仪器系统的控制中心,有许多重要的通讯、控制、人机交互等工作需要处理,所以大三维运动控制采用专门的嵌入式运动控制卡,对 X、Y、Z三轴电机进行控制,结合加速、减速曲线控制,实现精确定位、平稳的启动与停止。在长期运行时,会按环节即时复位,重新定位,以保证最大限度地减少误差。使用运动控制卡来完成运动控制和计算,大大减轻了 PC上位机的工作量。另一方面整机的机械结构得到了很大的精简。
根据以上的运动控制分析,设计了如下硬件控制方案:大三维的运动控制以上位机 PC为总控制中心,PC通过串口控制嵌入式运动控制卡,运动控制卡根据 PC指令完成各种运动控制的运算,控制 X、Y、Z三轴的电机驱动器,从而实现了上述复杂的运动控制[2]。硬件连接逻辑关系如图2所示。
图2 大三维运动控制硬件连接逻辑关系图Fig.2 The circuit interconnection with logical function of large-scale three-dimensional motion control module
本模块选用的集成化嵌入式运动控制卡EasySmc 5470,它使用高速ARM 32位处理器(主频208,Hz),配合 FPGA 实现三轴的运动控制。该控制卡提供了丰富的通讯控制命令,为上位机 PC对大三维的定位和运动控制提供了可靠的保障[3]。
X 轴电机驱动器 MD656的 EN-、DIR-、PLS-分别连接嵌入式运动控制卡的 X-FREE、X-DIR、X-CP引脚,这 3个功能引脚分别为脱机信号、方向控制、步进脉冲信号,X轴电机驱动器 MD656的 EN+、DIR+、PLS+全部接入嵌入式运动控制卡的 X-OPTP阳极公共端。X 轴电机驱动器 MD656的 A+、A-、B+、B- 4个引脚分别接入X轴两相步进电机的A相和B相。X轴电机驱动器外接24,V DC电源。Y轴和Z轴电机、电机驱动器、运动控制卡之间的电路连接方式与X轴相同。
3 三维运动控制模块控制软件设计
运动控制模块的软件设计主要是运动轨迹控制算法的设计、运动控制函数库的设计和上位机 PC的界面程序设计。上位机与集成化嵌入式运动控制卡之间的通讯,按照在运动控制卡基本控制命令基础上制定的完备的通讯协议格式进行。
运动控制模块的控制功能主要依靠运动控制函数库,该函数库包含所有的与运动控制相关的功能函数。这些函数主要是基本运动函数,包括原点复位函数、限位光耦查询函数、运动初始化函数、单轴运动函数、多轴直线插补函数、两轴圆弧插补函数、制动函数、轴状态查询函数、运动参数查询函数等。主要的工作过程包括初始化、工作模式设定、运动函数、状态读取等,从而完成运动控制功能,对于具体运动,编写了相应的运动函数,方便程序的进一步开发;另外根据运动控制卡的寄存器和命令的结构,编写了通用的操作函数。
要实现医疗仪器平台的准确取样、往微孔板加样、拾取加样 TIP头等动作,要求 X、Y轴准确运动定位,再者总体移液量大,分液程序复杂,所以要求三维运动控制机构运行要达到一定速度,才能满足仪器整体检测速度和检测效率的要求。为此,三维运动控制模块控制软件设计需要采用合适的运动轨迹算法(直线插补、圆弧插补)和加减速控制算法(梯形曲线加减速、S曲线加减速)[4]。
三维运动的目标是实现高速高精度的移液,因此一方面要求三维运动系统反应快,快速准确起停,缩短准备时间;另一方面要求运动过程平稳,冲击小,而电机在起动和停止时容易产生冲击、超程或振荡,这就必须进行加减速控制。其中最常用的一种方式是梯形曲线加减速算法[5]。规则的梯形曲线分为3个阶段:①匀加速段,速度按照设定的加速度值从零加速到最大速度 Vmax;②匀速段,加速度值为零,速度保持已达到的最大速度运行;③匀减速段,按设定的加速度减速到零,同时到达目标位置。梯形速度曲线的实质在于限制了加速度的大小,实际上也就限制了电机的起动电流和起动转矩,减少了对机械部件的冲击力度。可以证明,梯形曲线是在给定位置、最大速度和加速度的条件下,各种运动轨迹中时间最优的曲线。
上位机PC界面程序采用Delphi来编写,同时需要生成数据报表的组件FastReport 4.2和串口通讯控件SPCOMM。在控制界面上,通过直接输入XYZ坐标使三维运动控制机构直接运动到目的地,或者在当前位置基础上实现 XYZ中任意一轴的单步运动,从而可以对本三维运动模块进行测试,满足其运动的准确性、可靠性、稳定性等指标。该程序根据每台仪器的参数的实际定位,将三轴的坐标原点尺寸,加样平台上试剂、血清样本位置等参数实际测量调校后保存在参数表中,这样每次使用仪器时,直接将参数表调入使用,大大简化了批量生产制造和使用过程对仪器初始位置尺寸参数调校工作,也有利于提高仪器三维运动控制的准确性。
4 结 论
本文介绍的这种适合医疗仪器取样平台三维运动控制模块,经过研制的样机的性能指标测试,可以实现平台上各种样品取样、移液、加样等医学检验所需要的自动化动作,并在整体运行速度、运动控制精度、运行平稳度方面完全满足医疗仪器的指标要求,是一种成本较低、实用性比较强的三维运动控制模块。但是,该模块在运行精度、长时间运行可靠性方面还有进一步提升的空间,比如在运动轨迹控制算法上借鉴数控加工机械的位插补控制算法,采用更专业的运动控制芯片等,这也是下一步研究工作的重点。
[1]郭成,翁盛隆,谈士力,等. DSP和PBL3717A构成的步进电机的控制系统[J]. 单片机与嵌入式系统应用,2004(3):63-67.
[2]孙志刚,马文光,朱德森,等. 基于 80C196KC的交流伺服电机控制卡的开发与应用[J]. 机械与电子,1999(3):11-13
[3]张玮. 运动控制卡的研究[D]. 西安:西安交通大学,2002:8-11.
[4]杨进录. 如何使机械运动部件控制最佳[J]. 电子工业专用设备,2005(3):25-27.
[3]杨凯峰. 单轴运动控制器的设计[D]. 武汉:华中科技大学,2008:11-13.