现代控制技术在中药智能配药系统中的应用
步进电机驱动器与C200HE-NC413的连线类似于图3中伺服电机驱动器与C200HE-NC413的连线,而步进电机驱动器与步进电机间的连线则如图4所示。本系统中控制机械手摆动的步进电机采用STONE公司的86BYG250B,驱动器采用STONE公司的混合式步进电机驱动器SH20806C;控制送袋与推袋的两个步进电机采用SANYO公司的103H548,驱动器采用STEP公司的四相混合式步进电机细分驱动器ST4HB03X。步进电机的控制类型为不具有位置反馈功能的开环控制,控制方法为在确定运动起点与终点的基础上,将位移或角度改变以200脉冲/转(0.18度/步)为分辨率转变为脉冲数,写入映射在NC413中的内存位置,从而控制步进电机完成定位。
1.2 系统工作步骤
系统中有各种电机、限位、定位用传感器以及与真空气泵连接的电磁阀,可以完成取空药袋、打开空药袋及封装、输送药袋等功能,其工作时序见图5。
图5 系统工作时序图
利用OMRON的编程软件CX-Programmer完成梯形图的编写,程序包括如下六个模块:
(1)初始化模块,其功能是将PLC的内存单元初始化,进行电气部分的归零操作,目的是为配药系统进行运转做好准备,防止误操作对系统造成不可挽回的破坏;
(2)接收模块,其功能是接收上位机界面中输入的二进制编码的信息(包括药品种类、数量、贴数等),存入预先定义的内存单元;
(3)发送模块,其功能是将药品种类、数量等按照数据库与伺服电机结构中已定义的方式分别转变为下药直流电机位置和转动圈数,并发送到集成电路板,完成下药操作;
(4)反馈模块,其功能是接收来自集成电路板的直流电机转动停止(即规定重量下药动作完成)的反馈信号;
(5)控制模块,其功能是在确定下药过程完成后,驱动机械手完成取空药袋、打开空药袋、定位及集药等任务,并驱动药袋封口装置动作,触发直流电动机带动皮带转动,送出药品;javascript:window.open(this.src);" style="cursor:pointer;"/>
(6)故障处理模块,其功能是接收各处传感器反馈的接近或故障信号,随时停止系统的配药动作,以进行故障处理。
此外,在发送模块和控制模块中建立时间联系,使得在一次多贴药配药过程中,下一贴药的下药、取空药袋动作与上一贴药的封口、传输动作并行进行,缩短了配药时间。
2 上位机软件控制系统
上位机软件控制系统包括药品信息数据库和人机对话界面,前者主要存储医院的药品信息,包括名称、数量、价格、药性、有效期等;后者则与数据库建立连接,可以实现查询、开处方、药品管理、处方管理、打印、液晶显示等功能。其流程图如图6所示。
2.1 工控组态软件FIX32
FIX32是美国 Intellution公司开发的基于视窗的大型应用软件,包含动态显示、报警、趋势、控制策略、控制网络通信等组件。在本系统中,应用FIX32编写了主界面和系统运行的动态模拟显示程序。
(1)主界面是上位机与下位机之间的连接桥梁,其功能是与VB编写的界面建立联系,激活配药控制界面和药品管理界面。
(2)系统运行动态模拟显示的实现方式是首先在
FIX32的DRAW模式下画出整个配药系统的模拟图,包括静止物体及各种动作显示,设定限位与故障反馈警报;然后在FIX32中对I/O点进行组态,并在数据库中建立各药罐、各动作I/O类型及其在下位机PLC中的地址。这样,当PLC中的程序开始运行时,相应地址中的模拟量或开关量便发生变化。这种变化可在配药系统动作的同时显示到动态模拟界面,使动态模拟同步进行。在配药系统封闭运行的情况下,其作用之一是可以从动态模拟画面中实时观察到系统的运作情况,之二是可在系统发生可反馈性故障时在第一时间得到提示,快速完成对故障的调整。
2.2 界面编辑软件VB
该部分软件包括取药与加药两个模块,均具有权限控制功能,用户需输入密码,可保证系统的安全性。VB界面框架图如图7所示。
取药模块的主要任务是与ACCESS数据库取得联系,将需要的药品名、数量、贴数等通过FIX32传入下位机中,完成取药操作。其中,在数据库中的药品名采用拼音查询,数量与贴数则可多次修改。同时,VB还要向液晶屏输出患者及处方信息,并完成处方打印。
javascript:window.open(this.src);" style="cursor:pointer;"/>
加药模块为药品管理员专用,主要任务是从界面中修改数据库中货存药品的所有信息。
对散装中药实现定量配置的中药智能配药系统在控制方法上有多种创新,具有良好的人机界面,能在足够短的时间内对指定药方完成配药。该系统通过了上海市科委主持的专家鉴定,达到国内领先、国际先进的水平,在运行中情况良好,可靠性和安全性都得到了验证。