基于STM32的自动取药系统设计

2020-04-20 11:49汪世波李莉苗志浩俞陈建刘煜许文丹
计算机与网络 2020年4期
关键词:步进电机嵌入式

汪世波 李莉 苗志浩 俞陈建 刘煜 许文丹

摘要:针对目前大部分医院采用人工取药的方式造成取药效率低的问题,设计并完成了一种基于STM32F103ZET6微处理器的自动取药系统。自动取药系统为自助式操作,由人机接口(Human Machine Interface,HMI)和人机交互界面完成药品的获取,集成电路卡的(Integrated Circuit,IC)磁卡模块进行最后的确认和购买。系统可以提高患者取药的速度、降低取药的错误率、保证用药安全,并且减少医务人员的工作强度、节约劳动成本、增加医院账目透明度、提高患者的满意度。

關键词:差错率;自动取药;步进电机;HMI串口屏;嵌入式

中图分类号:TP311文献标志码:A文章编号:1008-1739(2020)04-68-4

0引言

在当前医疗环境下,患者候药时间是评价药学服务质量的重要指标之一,缩短患者取药时间是当务之急。对于中国这样一个人口大国,取药问题一直都是一个难题,自1958年北京市医院药房提出要“千方百计取消取药排队现象”以来[1-4],很多医院采用各种方法降低排队取药时间,诸多学者提出了多种加快取药速度的方法,设计了各种医疗器械[5-7]。例如对于麻醉科特殊药品,提出了药箱式管理,一定程度上增加了取药速度,而药房取药机器人的提出[8-9],为取药增加了一种途径。自动化药房的探索优化了传统药房的取药过程,缩减了时间。就目前来说,这些医疗器械对于取药速度及步骤的帮助较为片面。而自动化取药不但能加快取药速度,而且步骤少、流程少,具有广阔的发展前景[10-12]。针对患者取药困难的问题,提出了基于STM32F103ZET6微处理器的自动取药系统。对比药房人工取药时间,此取药系统可大大提升取药效率,并且采用ASTART HMI进行调试,验证了系统的正确性和有效性。

1系统设计分析

1.1功能需求分析

自动取药系统需要先在人工选择状态下进行全自动取药,所以人机交互是本系统很重要的一部分,对于用户寻卡成功并通过人机交互模块进行人工选择药品后,需要对数据进行采集、处理、传输,并对步进电机进行控制,所以终端处理单元以及电源模块、步进电机驱动模块的搭建是本系统的核心。

1.2主控微处理器的选择

为了保证整个电路的实现,必须选择一款适合电路的控制芯片。

STM芯片上集成32-512 KB的Flash和6-64 KB的SRAM两种存储器,调试模式分为串行调试(SWD)和JTAG接口,最多高达112个的快速I/O端口、11个定时器和13个通信接口。STM32采用ARM Cortex-M内核的32位微控制器,具有高性能、实时性强、低功耗和便于低电压操作等优点,同时还易于开发。

STM32单片机处理数据的能力较强,本次设计需要处理的模拟量很多,且从芯片安全度考虑,STM32系列单片机数据存储安全性较高。综合考虑,决定选用STM32单片机作为核心处理MCU,具体型号为STM32F103ZET6。

1.3系统总体设计

综合系统的功能需求配合现有技术,系统主要由MCU电路、电源供电模块、人机交互模块、步进电机驱动模块和RC522射频模块5个模块构成,该系统的框图如图1所示。RC522射频模块主要用于读卡,并通过SPI接口与MCU连接通信。人机交互模块主要用于人与机器的可视化交互、药品的选择,步进电机模块主要用于药品的投放。

2硬件设计

2.1 MCU电路

MCU电路选用STM32F103ZET6作为主控芯片,因为所有的数据处理与发送都集中在终端模块中,同时集成化整个下层硬件,为了功能的实现以及高效性,系统选用了STM32F103来构建整个下层电路。STM32F103是一款应用32位微控制器以及72 MHz功耗的以Cortex-M3为内核,拥有各个模块功能的高度集成化的开发板。电机的驱动、串口功能的实现以及数据包的推送都是Cortex-M3引脚操作实现的。

2.2供电模块的设计

供电模块整体设计如图2所示,步进电机的驱动使用的是5 V电压。

2.3人机交互模块的设计

工业串口屏、工业组态屏等是专门用来做工业智能显示仪表的屏幕,一般都有软件以拖控件的形式对GUI界面进行设计。本次设计使用的是USART HMI智能串口屏,显示屏自带GUI,供电就可以使用,可通过串口通信对控件上的参数进行修改,还有一些特定的指令可实现一些功能操作,任何有串口通信功能的单片机都可以带动,串口屏界面如图3所示。

2.4 MFRC522射频模块

MFRC522利用了先进的调制和解调概念,完全集成了在13.56 MHz下所有类型的被动非接触式通信方式和协议[13],支持14443A兼容应答器信号。数字部分处理ISO14443A帧和错误检测。此外,还支持快速CRYPTO1加密算法,用于验证MIFARE系列产品。MFRC522支持MIFARE系列更高速的非接触式通信,双向数据传输速率高达424 kbit/s。采用Philips MFRC522原装芯片设计读卡电路,使用方便。通过SPI接口简单的几条线就可以直接与用户任何CPU主板相连接通信,保证模块稳定可靠地工作。

2.5步进电机驱动模块

驱动步进电机的驱动器选用ULN2003A,是一种新型的7路高耐压、大电流达林顿晶体管驱动IC,ULN2003A常见的封装有DIP-16,SOP-16,TSSOP-16三种,而ULN2003A常用的是DIP-16或者SOP-16,它有16个引脚,1~7是输入引脚,10~16是输出引脚,8号引脚是接地端,9号引脚是钳位二极管公共端。

ULN2003A内部包含7个独立的达林顿管驱动单路,单个达林顿管集电极可输出500 mA电流。电路内部有续流二极管,可用于驱动继电器、步进电机等电感性负载。每一路达林顿管串联一个2.7 kΩ的基极电阻,在5 V的工作电压下可直接与TTL/CMOS电路连接,输入兼容TTL/CMOS逻辑信号。使用的步进电机为四相步进电机,采用直流电源供电,只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A。

3软件设计

在系统供电后,MCU首先对整体电路进行初始化,包括对数据的初始化,对各GPIO口的初始化,初始化需要延时一段时间,防止之前数据对之后数据的影响[14-15]。系统设计了中断触发的模式来检测是否有高低电平的变化,外部中断是由于外部干扰而发生的计算机系统中断,无论是来自用户、外围设备,其他硬件设备还是通过网络。这些与机器通过程序指令读取时自动发生的内部中断不同,整个系统在正常情况下只进行主要功能的实现或者休眠模式,同时一直检测外部设备引脚是否有中断触发的信号,一旦有外部中断触发后,整个硬件进入中断功能的实现,然后在中断结束后,设备自动恢复到之前的状态。

初始化完成后,人机交互界面启动,等待用户操作,RC522射频模块检测读卡数据并在HMI串口屏上显示,用户通过串口品进行相应操作,MCU实时采集相关用户操作数据并进行处理,控制步进电机转动送药,系统流程如图4所示。

4系统功能测试

在传统取药方式中,取药错误是不可忽略的一大缺陷,误差主要来自药师、电脑系统和管理三方面,其中,药师因素是造成误差最重要的部分,对比传统取药方式,自动取药系统采用自动化控制,能够提高取药的精准度、弥补人工操作带来的误差。

传统取药步骤繁琐,在固定窗口刷卡收费后,需要到其他窗口进行排队等手续。自动取药系统的最大优势在于节约病人的取药时间和医院的人力资源,因此实验内容主要是对取药时间的测试。实验过程中先在HMI串口屏上进行相关的选择后,再用IC磁卡最后确认信息。取药时间的计算是刷卡结束后电机开始运转并将药品送出的时间间隔。测量结果显示,自动取药系统的平均取药速度为8.68 s,相对于传统的取药时间,取药系统的取药速度得到极大提升,可以极大地缓解医院信息系统(HIS)的压力。并且,相比于当前矩阵键盘式系统的购买,更为便捷,可以增加患者的满意度。

5结束语

随着嵌入式、自动控制等技术的进步和发展,医疗系统和设备已经进入了智能化、自动化时代,本文设计的自动取药系统,通过RC522读卡的方式确定目标用户,运用HMI串口屏进行可视化的人机交互操作,终端处理器STM32F104ZET6进行数据的处理和分析,控制步进电机送药,完成整个选、送药流程,大大提升了取送药效率。经过测试,自动取药系统识别与处理的时间在8.68 s,可大大提高医院、药房的工作效率。

参考文献

[1]吴恋,田江松,宋刚,等.智能药柜存取机AMM的设计与实现[J].物联网技术,2017,7(11):87-88.

[2]张渝,王放,李初民.门诊药房取药系统的设计与实现[J].中国医疗设备,2014,29(1):50-52.

[3]张洋,刘军,严汉宇,等.精通STM32F4(库函数版)[M].北京:北京航空航天大学出版社,2019.

[4]康华光.电子技术基础[M].北京:高等教育出版社,2006.

[5]李红.探析完善药品管理與发放制度对门诊药房工作效率的影响[J].世界最新医学信息文摘,2019,19(53):218,223.

[6]罗晓莉,夏炳春.对医院门诊药房进行精细化管理的效果探讨[J].当代医药论丛,2019,17(12):9-10.

[7]汪步升.医院中医药信息化建设[J].电脑编程技巧与维护, 2019,407(5):73-74.

[8]邱广萍,林峻光,符展培.医院自动取药机器人与样机制作[J].赤峰学院学报(自然科学版),2016,32(3):36-37.

[9]程堂灿,张凤生,王敬.药房取药机器人结构设计与力学分析[J].机电技术,2019(2):2-6.

[10]阎大亮,王永亮,陆登城,等.基于互联网+自助取药系统设计与研究[J].科技创新与应用,2019(14):44-45.

[11]杨军.门诊药房引进自动发药机的优缺点评价[J].中国卫生产业,2018,15(21):173-174.

[12]胡敏达.药房自助终端系统设计与实现[D].南京:东南大学,2018.

[13]索向军.无线射频识别技术(RFID)在军事领域中的应用[J].电脑知识与技术,2013,9(5):1154-1155.

[14]张海藩.软件工程[M].北京:清华大学出版社,2010.

[15] PATTON R.软件测试:第2版[M].张小松,王钰,曹跃,等,译.北京:机械工业出版社,2006.

猜你喜欢
步进电机嵌入式
一种可自动伸缩的嵌入式LED灯具设计
步进电机智能控制的设计与实现
工矿机车GK1F、GK1C柴油机调速控制
基于单片机的自动化立体车库控制系统设计
基于单片机的雷达伺服控制系统
嵌入式LINUX操作系统的研究
嵌入式的特点及发展机遇
嵌入式组件技术的研究及应用
基于嵌入式系统的游戏程序设计
“嵌入式系统概论”课程设计