基于单片机与CAN总线的输液控制系统

2014-06-28 22:37王发智
科技视界 2014年11期
关键词:蠕动泵步进电机红外线

王发智

【摘 要】本文介绍了一种由AT89C52单片机控制的输液装置系统;提出了单片机控制步进电机的实例,可以通过键盘输入相关数据,并根据需要,实时对步进电机工作方式进行设置,具有实时性和交互性的特点。该系统可以自动控制输液速度和输液量,具有报警功能,成本低而功能多,可以广泛应用于临床输液以及药品分析等场所。

【关键词】控制器局域网线;蠕动泵;步进电机;红外线

The Control System of Infusion Based on MCU and CAN Bus

WANG Fa-zhi

(Qiqihar University, Qiqihar Heilongjiang 161006,China)

【Abstract】The paper introduced a kind of infusion devices controlled by AT89C52 single-chip microcomputer. A stepping motor control system based on AT89C52 chip microcomputer was described. The data can be input with keyboard, and stepping motor was controlled by these data. According to the demand, users can set the working model of stepping motor in real-time. In the system, speed of infusion and volume of medicinal liquid were controlled automatically. It can give an alarm, its cost is less and function is good. It can be used widely for fusion and analyzing composition of medicines.

【Key words】Controller Area Bus; Peristaltic pump; Stepping motor; Infrared ray

0 引言

静脉输液是一种最常用的临床治疗方法,临床上应根据药物和患者情况不同配以不同的输液速度;有些药输液速度过快,可能会导致中毒,更严重时会导致水肿和心力衰竭;输液速度过慢则可能发生药量不够或者无谓地延长输液时间,使治疗受影响,并给患者和护理工作增加不必要的负担[1]。常规临床输液,普遍采用挂瓶输液,用眼睛观察,依靠手动夹子来控制液滴速度,不易精确控制输液速度,而且护士工作量大。

智能型医用输液泵可满足多种功能的需求。归纳起来,它能实现以下功能:

(1)可精确测量和控制输液速度;

(2)可精确测定和控制输液量;

(3)液流线性度好,不产生脉动;

(4)能对气泡、空液、漏液和输液管阻塞等异常情况进行报警,并自动切断输液通路;

(5)实现智能控制输液[2]。

1 系统设计方案

1.1 系统硬件设计

红外振荡装置产生红外脉冲,红外信号通过液滴池后形成不同的脉冲峰值,经过放大装置放大,使高、低峰值之间的反差加大,脉冲经过施密特整形后,低峰值脉冲被削减,高峰值脉冲通过,对于可重复触发单稳电路,当有脉冲来时其处于暂稳态,没有脉冲时处于稳态。因为有液滴通过时,红外信号被吸收,产生一次低电平,在单片机中设置下降沿触发,计算下降沿数目可以得到液滴数目(20滴=1ml)。单片机与CAN总线控制器连接,彼此通讯,从单片机送来的数据,进而控制步进电机,步进电机带动蠕动泵转动。根据上述设计思想设计的系统总体原理框图如图1所示。

图1 系统原理框图

系统的硬件和系统要实现的功能紧密相关,因此先要从系统要达到的功能入手,然后再用硬件实现这些功能。系统需要显示“滴速”和“瓶量”两种[3],平时主要是显示“滴速”,并可以用“ml/min”和“滴/min”两种方法显示,当然这两种方法可以通过键盘输入切换功能来实现。红外调制发射电路可由555电路实现,红外接收放大采用红外接收放大一体的管子,后级只需要把信号整形并变成液滴频率的信号即可,这里用555, 74LS122或74HC123实现。具体原理如下:红外脉冲接收管接收并放大红外信号,在经过施密特触发器滤除干扰后送给液滴变换电路。接下来是如何去测量滴速。本文利用8253的定时器产生一个固定定时,同时利用8253对液滴计数,当定时器溢出的时候,用单片机把定时器8253计的滴数读出,再把这个数据转化为每分钟的滴速,这样就完成液滴测量。液滴速度测量的原理实际上是测量在规定时间单稳产生的脉冲数,在GATE0脚加上控制电平来控制规定时间,OUT0输出产生速度上限控制报警,速度下限则由软件完成。

系统接口电路设计中包括键盘显示单元设计及报警单元设计,在键盘显示部分采用目前最常用的8279器件,报警电路利用单片机的P1.1和P1.2口控制两个LED,进行报警显示。

在键盘中设定了如下功能键:数字输入+、数字输入-、左移、右移、瓶量/速度选择、清零确认、显示选择(ml/min和滴/min)、报警消除、暂停、确认。

键盘显示部分采用 8279专用键盘显示接口电路。按照需要的功能,规划并设计硬件电路,P2.0为片选地址线,/INT0作为中断。复位端和单片机的复位端相连。设置10个按键,驱动6个LED。单片机系统的晶振为12MHz。考虑到8279直接驱动数码管的能力不够,设置了驱动缓冲器74LS244/241。

使用L297+L298做成的两相双极性步进电机马达驱动,采用定电流截波方式驱动,每相电流可达2A,L297是步进马达控制器,用来产生两相双极性驱动信号与马达截波电流设定,L298是用来驱动步进电机电力输出,是双全桥接方式驱动,由于采用双极性驱动,因此马达线圈完全利用,使步进电机可以达到最佳的驱动[4]。

由ALE、/WR、/RD组合产生稳定的2MHz脉冲,供给8253。8253三个计数器把它分频供给L297,L297产生脉冲分配给L298,L298驱动两相步进电机。步进电机驱动部分电路原理图如图2所示。

本设计用硬件产生脉冲分配码驱动,程序中控制8253的脉冲频率就可以控制步进电机的转速,设定好工作速度后,根据这一数值查表对应某一值,利用这一数值在这基础上系统进行加速或减速,当测量数值和设定小于规定的数时记录这个脉冲率并停止调速,这就是软件流程的主要思想。采用AT89C52单片机产生控制信号。单片机内部的RAM和ROM即可满足要求。在以后的实际运用中,如需扩展较多的外部RAM和ROM时,可加上数据缓冲器。

步进电机控制信号通过AT89C52单片机P1口的P1.0、P1.1、P1.2、P1.3四个口输出的具有时序的方波经74HC04芯片(为方便输出,起非门的作用)作为步进电机的控制信号。为了增加步进电机工作的灵活性,在起动步进电机工作之后,当有键按下,设置产生外部中断,达到灵活控制步进电机的目的[5]。

单片机对CAN总线控制芯片SJA1000进行正确初始化后,将要发送的数据通过PC82C250输出至CAN总线。在硬件电路的设计过程中,为了增强抗干扰能力,SJA1000的TX0和RX0引脚并没有直接和PCA82C250(CAN总线收发器)的TXD,RXD相连接,而是通过高速光耦6N137后与PCA82C250相连,这样可以实现总线上各CAN节点之间的电气隔离。在光耦的使用过程中,一定要注意光耦6N137的两侧必须使用完全独立的两组电源Vcc和+5V,否则光耦将起不到任何作用。图3给出了基于SJA1000的CAN总线接口模块电路。在PCA82C250与CAN总线的连接部分,可以将CANH和CANL两个引脚各自通过1个5Ω的电阻与CAN总线相连,这样可以起到限流的作用,以保护PC82C250免受过流的冲击。

图3 基于SJA1000的CAN总线接口电路

驱动器PCA82C250是控制器与物理总线之间的接口,从CAN控制器SJA1000出来的数据流需经过驱动器PCA82C250才可由总线相连,驱动器PCA82C250除加强总线的差动发送和接收功能外,还有如下特点:具有抗瞬间干扰,保护总线传输能力,采用斜率控制,降低射频干扰,过热保护及总线与电源之间的短路保护,低电流待机模式,未上电节点不会干扰总线,总线可连接110个节点。

1.2 系统软件设计

软件采用功能模块的设计思想方法进行编写,可增加系统整体可移植性。系统软件需要的功能模块主要有:键盘模块、显示模块、测量信号模块、步进电机驱动控制模块、通讯模块、报警模块。这样分类也和硬件的设置相对应。软件各模块的相互连接需要主控模块对它们进行控制。按照主控模块的执行顺序来工作。这就是整个系统的软件构建方案。

在系统中要考虑抗干扰设计问题,在硬件方案上已有体现,例如施密特触发器就是滤除干扰。软件抗干扰主要是在没有利用的程序段中加入长跳转到0000H,使程序出错后能自动重新归位。设置自定义的标志寄存器,用来连接各程序模块相互之间传送信息。

软件模块的相互关系如图4所示。

图4 软件模块分配图

2 结论

现代医疗技术的飞速发展和人民重视身体健康程度,要求相应配套的医疗设施和服务提高,输液作为最为常用的医学手段,对输液控制和治疗关系也变得越来越密切。

本文的创新点是探讨和实现了一种智能型的支持网络运行的医用输液泵系统,采用红外线间接测量液滴速度,同时利用液滴速度快慢与空瓶、阻塞、漏液、速度失控之间的关系,省去了目前同类输液设备中采用压力传感器测量阻塞和漏液的方法,降低了成本,但是这一功能仍然还存在。

【参考文献】

[1]陆仲达,何鹏,徐凤霞.基于电力线载波技术的输液远程监测系统[J].微计算机信息,2008,6-2:112-113.

[2]王国辉,等.智能型医用输液泵及其应用.物理治疗与手术治疗[J].2002,3:56-58.

[3]Intel.Interfacing.a MCS-51 Microcontroller to an 82527 CAN Controller[J].2007:103-108.

[4]田建君.单片机控制输液泵系统设计[J].中小型机电,2004,1(31):53-55.

[5]孟武胜,李亮.基于AT89C52单片机的步进控制系统设计[J].微电机,2007:64-66.

[责任编辑:汤静]

使用L297+L298做成的两相双极性步进电机马达驱动,采用定电流截波方式驱动,每相电流可达2A,L297是步进马达控制器,用来产生两相双极性驱动信号与马达截波电流设定,L298是用来驱动步进电机电力输出,是双全桥接方式驱动,由于采用双极性驱动,因此马达线圈完全利用,使步进电机可以达到最佳的驱动[4]。

由ALE、/WR、/RD组合产生稳定的2MHz脉冲,供给8253。8253三个计数器把它分频供给L297,L297产生脉冲分配给L298,L298驱动两相步进电机。步进电机驱动部分电路原理图如图2所示。

本设计用硬件产生脉冲分配码驱动,程序中控制8253的脉冲频率就可以控制步进电机的转速,设定好工作速度后,根据这一数值查表对应某一值,利用这一数值在这基础上系统进行加速或减速,当测量数值和设定小于规定的数时记录这个脉冲率并停止调速,这就是软件流程的主要思想。采用AT89C52单片机产生控制信号。单片机内部的RAM和ROM即可满足要求。在以后的实际运用中,如需扩展较多的外部RAM和ROM时,可加上数据缓冲器。

步进电机控制信号通过AT89C52单片机P1口的P1.0、P1.1、P1.2、P1.3四个口输出的具有时序的方波经74HC04芯片(为方便输出,起非门的作用)作为步进电机的控制信号。为了增加步进电机工作的灵活性,在起动步进电机工作之后,当有键按下,设置产生外部中断,达到灵活控制步进电机的目的[5]。

单片机对CAN总线控制芯片SJA1000进行正确初始化后,将要发送的数据通过PC82C250输出至CAN总线。在硬件电路的设计过程中,为了增强抗干扰能力,SJA1000的TX0和RX0引脚并没有直接和PCA82C250(CAN总线收发器)的TXD,RXD相连接,而是通过高速光耦6N137后与PCA82C250相连,这样可以实现总线上各CAN节点之间的电气隔离。在光耦的使用过程中,一定要注意光耦6N137的两侧必须使用完全独立的两组电源Vcc和+5V,否则光耦将起不到任何作用。图3给出了基于SJA1000的CAN总线接口模块电路。在PCA82C250与CAN总线的连接部分,可以将CANH和CANL两个引脚各自通过1个5Ω的电阻与CAN总线相连,这样可以起到限流的作用,以保护PC82C250免受过流的冲击。

图3 基于SJA1000的CAN总线接口电路

驱动器PCA82C250是控制器与物理总线之间的接口,从CAN控制器SJA1000出来的数据流需经过驱动器PCA82C250才可由总线相连,驱动器PCA82C250除加强总线的差动发送和接收功能外,还有如下特点:具有抗瞬间干扰,保护总线传输能力,采用斜率控制,降低射频干扰,过热保护及总线与电源之间的短路保护,低电流待机模式,未上电节点不会干扰总线,总线可连接110个节点。

1.2 系统软件设计

软件采用功能模块的设计思想方法进行编写,可增加系统整体可移植性。系统软件需要的功能模块主要有:键盘模块、显示模块、测量信号模块、步进电机驱动控制模块、通讯模块、报警模块。这样分类也和硬件的设置相对应。软件各模块的相互连接需要主控模块对它们进行控制。按照主控模块的执行顺序来工作。这就是整个系统的软件构建方案。

在系统中要考虑抗干扰设计问题,在硬件方案上已有体现,例如施密特触发器就是滤除干扰。软件抗干扰主要是在没有利用的程序段中加入长跳转到0000H,使程序出错后能自动重新归位。设置自定义的标志寄存器,用来连接各程序模块相互之间传送信息。

软件模块的相互关系如图4所示。

图4 软件模块分配图

2 结论

现代医疗技术的飞速发展和人民重视身体健康程度,要求相应配套的医疗设施和服务提高,输液作为最为常用的医学手段,对输液控制和治疗关系也变得越来越密切。

本文的创新点是探讨和实现了一种智能型的支持网络运行的医用输液泵系统,采用红外线间接测量液滴速度,同时利用液滴速度快慢与空瓶、阻塞、漏液、速度失控之间的关系,省去了目前同类输液设备中采用压力传感器测量阻塞和漏液的方法,降低了成本,但是这一功能仍然还存在。

【参考文献】

[1]陆仲达,何鹏,徐凤霞.基于电力线载波技术的输液远程监测系统[J].微计算机信息,2008,6-2:112-113.

[2]王国辉,等.智能型医用输液泵及其应用.物理治疗与手术治疗[J].2002,3:56-58.

[3]Intel.Interfacing.a MCS-51 Microcontroller to an 82527 CAN Controller[J].2007:103-108.

[4]田建君.单片机控制输液泵系统设计[J].中小型机电,2004,1(31):53-55.

[5]孟武胜,李亮.基于AT89C52单片机的步进控制系统设计[J].微电机,2007:64-66.

[责任编辑:汤静]

使用L297+L298做成的两相双极性步进电机马达驱动,采用定电流截波方式驱动,每相电流可达2A,L297是步进马达控制器,用来产生两相双极性驱动信号与马达截波电流设定,L298是用来驱动步进电机电力输出,是双全桥接方式驱动,由于采用双极性驱动,因此马达线圈完全利用,使步进电机可以达到最佳的驱动[4]。

由ALE、/WR、/RD组合产生稳定的2MHz脉冲,供给8253。8253三个计数器把它分频供给L297,L297产生脉冲分配给L298,L298驱动两相步进电机。步进电机驱动部分电路原理图如图2所示。

本设计用硬件产生脉冲分配码驱动,程序中控制8253的脉冲频率就可以控制步进电机的转速,设定好工作速度后,根据这一数值查表对应某一值,利用这一数值在这基础上系统进行加速或减速,当测量数值和设定小于规定的数时记录这个脉冲率并停止调速,这就是软件流程的主要思想。采用AT89C52单片机产生控制信号。单片机内部的RAM和ROM即可满足要求。在以后的实际运用中,如需扩展较多的外部RAM和ROM时,可加上数据缓冲器。

步进电机控制信号通过AT89C52单片机P1口的P1.0、P1.1、P1.2、P1.3四个口输出的具有时序的方波经74HC04芯片(为方便输出,起非门的作用)作为步进电机的控制信号。为了增加步进电机工作的灵活性,在起动步进电机工作之后,当有键按下,设置产生外部中断,达到灵活控制步进电机的目的[5]。

单片机对CAN总线控制芯片SJA1000进行正确初始化后,将要发送的数据通过PC82C250输出至CAN总线。在硬件电路的设计过程中,为了增强抗干扰能力,SJA1000的TX0和RX0引脚并没有直接和PCA82C250(CAN总线收发器)的TXD,RXD相连接,而是通过高速光耦6N137后与PCA82C250相连,这样可以实现总线上各CAN节点之间的电气隔离。在光耦的使用过程中,一定要注意光耦6N137的两侧必须使用完全独立的两组电源Vcc和+5V,否则光耦将起不到任何作用。图3给出了基于SJA1000的CAN总线接口模块电路。在PCA82C250与CAN总线的连接部分,可以将CANH和CANL两个引脚各自通过1个5Ω的电阻与CAN总线相连,这样可以起到限流的作用,以保护PC82C250免受过流的冲击。

图3 基于SJA1000的CAN总线接口电路

驱动器PCA82C250是控制器与物理总线之间的接口,从CAN控制器SJA1000出来的数据流需经过驱动器PCA82C250才可由总线相连,驱动器PCA82C250除加强总线的差动发送和接收功能外,还有如下特点:具有抗瞬间干扰,保护总线传输能力,采用斜率控制,降低射频干扰,过热保护及总线与电源之间的短路保护,低电流待机模式,未上电节点不会干扰总线,总线可连接110个节点。

1.2 系统软件设计

软件采用功能模块的设计思想方法进行编写,可增加系统整体可移植性。系统软件需要的功能模块主要有:键盘模块、显示模块、测量信号模块、步进电机驱动控制模块、通讯模块、报警模块。这样分类也和硬件的设置相对应。软件各模块的相互连接需要主控模块对它们进行控制。按照主控模块的执行顺序来工作。这就是整个系统的软件构建方案。

在系统中要考虑抗干扰设计问题,在硬件方案上已有体现,例如施密特触发器就是滤除干扰。软件抗干扰主要是在没有利用的程序段中加入长跳转到0000H,使程序出错后能自动重新归位。设置自定义的标志寄存器,用来连接各程序模块相互之间传送信息。

软件模块的相互关系如图4所示。

图4 软件模块分配图

2 结论

现代医疗技术的飞速发展和人民重视身体健康程度,要求相应配套的医疗设施和服务提高,输液作为最为常用的医学手段,对输液控制和治疗关系也变得越来越密切。

本文的创新点是探讨和实现了一种智能型的支持网络运行的医用输液泵系统,采用红外线间接测量液滴速度,同时利用液滴速度快慢与空瓶、阻塞、漏液、速度失控之间的关系,省去了目前同类输液设备中采用压力传感器测量阻塞和漏液的方法,降低了成本,但是这一功能仍然还存在。

【参考文献】

[1]陆仲达,何鹏,徐凤霞.基于电力线载波技术的输液远程监测系统[J].微计算机信息,2008,6-2:112-113.

[2]王国辉,等.智能型医用输液泵及其应用.物理治疗与手术治疗[J].2002,3:56-58.

[3]Intel.Interfacing.a MCS-51 Microcontroller to an 82527 CAN Controller[J].2007:103-108.

[4]田建君.单片机控制输液泵系统设计[J].中小型机电,2004,1(31):53-55.

[5]孟武胜,李亮.基于AT89C52单片机的步进控制系统设计[J].微电机,2007:64-66.

[责任编辑:汤静]

猜你喜欢
蠕动泵步进电机红外线
水肥一体化灌溉装置蠕动泵结构优化
红外线触摸屏的专利技术综述
一种便携式野外在线固相膜萃取装置获国家发明专利
红外线遥控电风扇
蠕动泵流量的理论计算与试验验证
一种新型蠕动泵在颗粒制剂生产中的应用
红外线防近视仪