微量注射泵的设计与实现
2014-08-03蔡姗姗
陈 曦 王 清 蔡姗姗
(河北工业大学控制科学与工程学院,天津 300130)
微量注射泵是应用于工业生产、实验室和医院的一种微流量供给装置,主要用于精密流体传输,例如:医院的自动输液以及生产中自动微量加药等。目前在欧美国家,关于微量注射泵的研制和应用都已进入一个相对成熟和稳定的阶段,而国内关于微量注射泵的研制和临床使用尚落后于欧美国家,仍处于推广阶段,因此注射泵的市场前景很广阔[1]。目前市场上已有的微量注射泵的主要问题是价格昂贵,在运行过程中速度、流量不稳,而且一般只实现单通道匀速注射。本设计旨在研究开发一套性能优越的微量注射泵系统,使系统稳定、操作简单,应用在系统中能同时控制多台微量注射泵进行加减速注射,且能与计算机实时通信。
1 系统概述①
微量注射泵硬件系统整体可以分为主控制模块、电机运动模块、状态检测模块和RS-485通信模块。
整个微量注射泵的系统流程如图1所示,上位机通过标准RS-485接口实现与主控制芯片串行通信连接,实际应用中通过计算机或微处理器给微量注射泵写入动作或查询指令。当接收到正确的一帧数据后,主控模块控制步进电机,通过减速器减速后驱动精密丝杠,以实现将旋转运动最终变为针管的直线运动。控制指令脉冲的数量、频率和通电顺序,便可控制从动部件运动的位移量、速度和运动方向。同时通过状态检测模块得到注射器和电机的实际工作情况反馈给主控制模块,做到实时检测微量注射泵的情况。
图1 微量注射泵的系统流程图
2 系统的硬件构成
整个系统的硬件组成如图2所示。
图2 硬件系统组成
2.1 主控制模块
主控制模块分为液晶显示模块、键盘与开关模块、A/D模块、电源装置以及报警系统等部分。主控制模块采用MPC82G516A作为系统的控制芯片进行控制和数据处理,MPC82G516A是基于80C51的高效1-T结构的单芯片处理器,与8051指令集兼容。因此在与标准8051有同样的处理能力的情况下其运行速度非常低,能很大程度的减少耗电量。其拥有64K字节的内置Flash存储器用于保存代码和数据,除处理8051MCU的标准功能外,还集成了很多系统级的功能。这些功能都能够有效减少电路板面积和系统成本,使得MPC82G516A作为一个强有力的微控制器能很好地应用在微量注射泵中。
2.1.1键盘与开关
键盘电路主要用于微量注射泵各种简单动作, 包括开/关、启动/紧急停止以及报警消除等。设置地址开关用于设置每个泵的地址,实现多泵配合使用。多泵模式中最多可连接15台,保证每个泵有唯一地址,上位机可与每台泵分别通信。
2.1.2液晶显示、电源及报警电路
液晶显示用于实时显示注射泵的各种参数和运行状态,如注射速度、累计用量、注射状态及已注射时间等, 使操作者能够实时掌握微量注射泵的工作状态,同时为人工控制微量注射泵提供良好的控制界面。由于液晶显示界面的特殊性,需预先把要显示的参数、字符定制到液晶里面。液晶显示采用芯片HT1621控制,HT1621直接与微控制器4线串行接口, 控制简单[2]。系统设计由外部交流电源供电,需提供8~12V的电压,外接电源稳压电路如图3所示。报警电路用于当微量注射泵工作过程中出现供电错误、注射完毕、注射器阻塞等不正常工作情况时提供声光报警功能。报警声音由蜂鸣器提供,发光二极管提供光报警功能。
图3 外接电源稳压电路
2.2 状态检测电路
状态检测电路用于数据采集和处理。状态检测电路主要完成检测注射器活塞运动位置、注射泵注射阻塞判断以及电源供电状况等任务。在微量注射泵的机械设计部分中,在注射器活塞的初始位置和结束位置设置了两个行程开关。当运动到这两个位置时会使相应的行程开关闭合,那么对位置的检测就转换为对行程开关状态的检测,由此判断活塞运动是否开始或到达末端。
在电机轴上安装的增量式旋转编码器和压力传感器实时监控电机的实际工作情况,设计采用光电式旋转编码器,通过失步检测编码器控制活塞运动,当旋转编码器停止编码时,进入堵转状态,发送脉冲信号,则电机立刻停止运转,产生报警。因结构简单、体积小、精度高、响应速度快、性能稳定,设计选择E6A2系统编码器[3]。采用电阻应变式压力传感器。4个压敏电阻组成惠斯通电桥电路,无差压时,电桥两臂平等,差压信号加到4个陶瓷压敏电阻上时,压敏电阻的阻值随差压变化。当压力传感器测得压力超过最大限压时引起电桥失衡,进而引起电流的变化,通过ADS1242芯片进行数模转换,把模拟信号转化为数字信号,再传至主控芯片。此时会使电机停止工作,且产生声光报警。
2.3 电机运动模块
电机运动模块设计原理如图4所示,由步进电机驱动器控制步进电机带动滚珠丝杠驱动活塞推拉器,注射器活塞与活塞推拉器联动完成抽取和分配定量液体。其中,CZT系列滚珠丝杠副是由丝杠、螺母及滚珠等零件组成的机械元件,其作用是将旋转运动转变为直线运动或将直线运动转变为旋转运动,系统采用FFB型内循环变位导程预紧螺母式滚珠丝杠副,丝杠的导程为8.00mm,即滚珠丝杠每旋转360°滚珠丝杠移动一个导程,也就是8.00mm[4]。步进电机的步进角只能选择为1.8°,步进电机工作在整步时,步进电机转一周需要200个脉冲。每个脉冲可以使丝杠传动0.04mm,所以微量注射泵工作期间,步进电机需要的脉冲个数为:设定长度/0.04。
图4 电机运动模块设计原理图
微量注射泵采用的步进电机是两相混合式步进电机, 型号是57BYG250B。此步进电机需有驱动器和控制器才能正常工作。驱动器的作用是对控制脉冲进行环形分配、功率放大,使步进电机绕组按一定顺序通电。为了实现对步进电机的准确控制,利用两相混合式步进电机驱动器ZD-6560-V4来驱动电机运行。从单片机I/O口出来的信号分别连接到驱动器的脉冲和脱机端,驱动器与单片机的接线采用共阳端接法接5V电压,输出端接混合式步进电机,直接控制其转动。单片机控制步进电机驱动器原理如图5所示。
图5 步进电机驱动器与单片机连接图
2.4 RS-485通信接口
微量注射泵通信模块的稳定、可靠是非常重要的。MPC82G516A单片机本身内部具有一个全双工口的串行通信口,可同时发送和接收数据。485串行通信接口使用差分信号输出,考虑到实际需求,采用RS-485通信接口(图6)实现多站收发,又使微量注射泵精度高、传输快、抗干扰能力强。由于单片机串口的电平为TTL电平,因此必须在单片机串口和RS-485接口之间加上电平转换电路(这里采用SN75176BP)。选择较为通用的Modbus通信协议,可以方便快速地实现对不同生产现场的控制设备进行组网,便于集中监控[5]。
图6 RS-485通信接口电路图
3 系统的软件设计
为了方便微量注射泵功能的修改和扩展,系统以KeilμVision3开发环境完成系统的程序设计,采用模块化设计方法。系统软件包括主控程序、步进电机驱动程序和RS-485通信程序。主控程序用于控制整个系统, 步进电机驱动程序用于驱动步进电机,RS-485通信程序用于完成与上位机数据的接收和发送[6],上位机通过Modbus通信协议实现与微量注射泵的通信。
主控程序主要包括初始化模块、自检模块、键盘与开关模块、液晶显示模块、状态检测模块和报警模块。整个程序设计在时钟中断和外部中断调度下并行运行,通过多级中断优先方式相互衔接来完成任务。初始化模块包括单片机初始化、定时器初始化、液晶初始化和全局参数初始化。自诊断模块完成判断微量注射泵是否能运行正常,诊断的内容有步进电机能否转动及传感器与行程开关是否正常等内容。微量注射泵上电初始化后开始运行自检模块,若自检不正常则运行报警模块,若自检正常再开始判断是按键按下还是有数据传输,此时即可根据指令分别执行相应的子程序。微量流射泵通信程序如图7所示。
图7 RS-485通信程序
当需要数据通信时,RS-485通信发送和接收模块按Modbus协议进行通信,启动主程序后,上位机可自主设定微量注射泵的各项参数,给予控制指令,并可以实时查询微量注射泵的工作状态和错误代码,保证系统工作正常,便于以后系统的维护和升级。
4 结束语
讨论了微量注射泵系统的整体设计, 提出了一套可实现的注射泵控制系统的硬件和软件方案。系统采用步进电机作为步进推进装置,步进电机驱动器的高细分提高了注射精度, 且应用多个传感器可对注射状态进行检测。实验中微量注射泵的流量可达到1~100μL/min,实现了对输注流体的注射速度和注射量的可靠控制。结果表明:系统具有可行性。目前,系统正不断的进一步完善,使其拥有更广泛的应用前景。