中药配方颗粒袋自动发药机控制系统设计
2020-10-26陈思敏
刘 凯,陈思敏,陈 斌
(1.广东机电职业技术学院电气技术学院,广州 510550;2.广州高谱技术有限公司,广州 513623)
0 引言
自动发药机作为药房的核心设备,在缩短患者排队候药时间、降低药师配药劳动强度、提高药房自动化程度等方面发挥了不可替代的作用[1]。目前,盒装药品(西药、中成药)的自动发药机已比较成熟[2-3],但中药房的传统中药饮片由于形态各异,较难实现自动化发药。近几年来,大多数中医类医疗机构的中药房普遍采用“中药饮片+中药配方颗粒袋”组合的发药方式[4]。本研究利用配方颗粒袋尺寸规格一致这一特点[5],以PLC可编程控制器为控制核心,触摸屏和组态软件为上位机监控系统,抓药机械手、搬运机械臂和分药装袋机构为主体控制对象,进行了中药配方颗粒袋自动发药机控制系统的设计与开发,以期为中药药房自动化改造提供参考。
1 发药机结构和工作流程
本课题组设计的中药配方颗粒袋发药机(发明专利号:ZL0151701703.1)实物如图1所示,其结构如图2所示。发药机由储药架、抓药机械手、搬运机械臂和分药装袋机构组成。搬运机械臂由1个竖直方向的链传动模组和2个水平方向的同步带传动模组组成;分药装袋机构由2个输送带、1个出药口和1个分药装袋机器人组成。
发药机的工作流程如下。
(1)确定药品位置和抓药路径。与医院信息管理系统(HIS)对接的药品管理软件首先确定药品种类和数量,然后进行路径优化并将结果信息发送到PLC控制器。
(2)抓药。2 个抓药机械手在搬运机械臂的带动下提升至储药机构最高一层,抓药机械手从上向下按照系统已优化的路径逐层抓取颗粒袋。
(3)分药装袋。抓药机械手每次从药盒成功抓取配方颗粒袋后,自动释放药品,颗粒袋在重力作用下自行掉落到输送带上,药品集中汇集到出药口,机器人自动完成分药和装袋动作。
图1 发药机实物图
2 发药机控制系统
图3 所示为控制系统原理图。触摸屏和组态软件构成上位机监控系统软件。触摸屏用于本机调试、参数设定、手动选择药剂和状态监控;组态软件用于药品管理、处方设定、数据库存储等。在执行部件的控制上,PLC 作为系统的核心控制器,通过I/O控制搬运机械臂、抓药机械手和分药装袋机构的实时运动。
图2 发药机结构简图
图3 控制系统原理图
根据系统设计要求,本系统所选用的主要硬件产品如下。
(1)触摸屏配置。触摸屏选用昆仑通泰TP1061TX型,与PLC之间采用串口RS232接口通讯。
(2)组态软件配置。组态软件选用组态王6.55 版进行图形界面的设计、运行和调试。
(3)PLC 配置。考虑到系统性能要求和现场试验环境,采用可靠性高、抗干扰能力强、工作稳定的三菱FX3U 系列PLC作为核心控制器,共24点输入,24点输出,电源输入为220 V AC,输出为24 V和+5 V DC。
(4)伺服电机及驱动器配置。选用中达电通产台达伺服电机及驱动器。链传动模组使用的伺服电机额定功率为1.5 kW,同步带传动模组使用的伺服电机额定功率为0.4 kW,所有伺服电机配置减速比为1∶10的行星减速器。
(5)机器人配置。分药抓药机器人选择的是ABB IRB 120型工业机器人,该款机器人为6轴通用机器人,可用于搬运、码垛、焊接等场合,最大负载为3 kg,工作范围达580 mm。
3 控制系统策略
3.1 抓药路径规划策略
本系统2 个抓药机械手初始位置在储药架的第一排,抓药时从上向下协同配合依次从待抓药盒中抓取颗粒袋。当控制系统获得发药单上待抓药品的种类和数量信息后,系统首先要进行路径规划,确定每个抓药机械手要抓的药盒和路径,从而避免发生抓药机械手闲置等待和时间浪费的现象。
假设发药单上的待抓药盒在图4 中用灰色方框表示,不抓药品用白色方框表示,借鉴多旅行商问题数学模型,提出如下假设:
(1)2个抓药机械手为纯抓取,不运输颗粒袋;
(2)每个药盒的抓取只能由一个机械手完成,且所有药盒位置都应该到达;
(3)机械手出发点与药盒、各药盒之间的距离已知,要求机械手一次行走的最大距离要大于其抓取路径的长度。
图4 中药发药机平面图
设有K个抓药机械手,需要到L个药盒抓取,di,j(i,j=1,2,…,L),d0j为出发点到各药盒的距离,nk为机械手k 抓取的药盒总数,当nk=0时,表示机械手没有抓取任何药盒;集合Rk为机械手k抓取的药盒点集合,其中的元素rki为该药盒在机械手k的抓取路线中的顺序为i,rk0为该机械手k的出发点。
抓药路径数学模型如下:
上述表达式中,式(1)为目标抓取总距离最小;式(2)表示每条路径上药盒数量不超过总的药盒数;式(3)为每个药盒均得到抓取;式(4)为每条路径的需求点组成;式(5)为判断机械手k是否参与配送。
本文涉及到一种多旅行商问题,其最广泛的应用是车辆路径调度问题(VRP 问题),目前已提出了许多求解的算法,大致可分为精确算法和启发式算法两大类。VRP 问题目前较难避免求解过程中计算量会随问题规模的增大呈指数增长的问题[6-8],因此只适用于小规模的VRP 问题;而实际的抓药过程中,抓药数量多,限制了精确算法的应用。本文应用了启发式算法中的差分进化算法,该算法具有待定参数少、较强的群体收缩和协同收索能力[9-11],通过Matlab仿真验证了该算法可以实现预定的功能,在机器人最优轨迹规划中具有很强的实用性和实时性。
3.2 抓药动作流程
图5 所示为抓药机械手动作过程,机械手包括水平双杆气缸、竖直双杆气缸和真空吸嘴组成。水平气缸用于机械手的伸出与缩回,竖直气缸用于机械手的上升与下降,吸盘用于中药配方颗粒袋的吸取与释放。抓取流程如下:首先,真空发生器启动,抓药机械手水平气缸伸出,当气嘴接触到颗粒袋时且真空压力达到设定值后竖直气缸伸出,在储药盒中的颗粒袋被提起,接着水平气缸缩回,竖直气缸缩回,真空发生器停止工作,失去吸力的颗粒袋在重力的作用下掉落,完成一次抓药和放药过程。
图5 抓药机械手动作过程
3.3 分药与装袋策略
分药装袋机构是实现发药机全自动发药的关键机构,由于中药发药的特点(同一处方,多副药剂,每副药剂药品种类相同),而抓药机械手只能1次抓取1 袋,因此需要对掉落的颗粒袋进行分类。本团队采用5 个分药盒逐个接取颗粒袋,每次接收成功自动移动1 个分药盒,模拟人工分药动作。图6 所示为分药装袋机构控制策略流程,当抓药机械手掉落的药袋从出药口滑出并掉落到1 个分药盒后,触发光电传感器,分药盒向右移1 位,移动4 次后开始向左移,以此类推,待所有药剂收集好后,机器人整体提升装袋。
图6 分药装袋控制策略流程图
4 上位机监控系统设计
根据发药机的实际需求,采用“触摸屏+组态软件”组合,开发了上位机监控系统。
4.1 触摸屏监控程序
触摸屏监控程序由主菜单、调试菜单、参数调整、取药界面等界面组成,每幅界面可将相应的命令、数据输送给PLC,也从PLC 读出相应参数或状态信息,以此实现人机交互。整体程序主要实现机械手位置和速度设定、药品选择、整机调试和工作状态显示等功能。该系统监控画面简单、实时、直观显示装置状态参数和重要的系统信息,便于调试人员直接操控PLC 控制器,也利于医院药房和药店的药师直接选择药剂进行发药。监控主要界面如图7所示。
图7 主要监控界面
4.2 组态软件药品管理程序
药品管理界面如图8 所示,该界面在组态王6.55 版编程环境下编制,主要通过接口程序与医院管理信息系统(HIS)连接,并进行药品的管理(分析药品的名称、数量、路径等信息)和发药机动作过程监控。
图8 药品管理界面
系统的工作过程是:首先通过医院内部局域网将在终端电脑上开出的处方传至药品管理系统计算机;然后由主控计算机在查询药品数据库的基础上形成配药清单并下达指令给抓药机,在患者完成付款的前提下开始自动抓药;同时发药系统显示患者信息,并驱动打印机输出处方的综合信息,由医务人员将处方综合信息连同抓药机配好的药品一起交付给患者使用。
5 结束语
本文针对各大医院普遍使用的中药配方颗粒袋,依托PLC、触摸屏和组态软件等通用平台,开发了中药机全自动发药控制系统。通过对抓药路径和抓药机械手的作业流程优化,实现了发药机稳定、高效地工作,该设计方案具有较强的可行性,研究结果有助于提高中药配方颗粒袋的发药效率,也可为中药房自动化改造提供参考。