历史上的今天
今天是:2026年03月14日(星期六)
2023年03月14日 | 以89C51单片机为核心控制器件的液体点滴速度监控系统设计
2023-03-14 来源:elecfans
1. 引言
液体点滴速度控制系统对于大型医院来说是一套能够提高效率和服务质量的控制设备,特别是远程监控功能能使护士站对于病人的点滴状况进行实时监视,并可根据病人状态调节点滴速度。目前市场上点滴控制系统不少,本文的设计点在于低成本,仅使用最廉价89C51单片机以及普通的元件实现整套系统。
2. 系统设计要求
2.1. 从站设计要求
A.在滴斗处检测点滴速度,并使用数显装置动态显示点滴速度(滴/分)。
B.通过改变点滴瓶高度控制点滴速度,点滴速度可用键盘设定并显示,设定范围为20—150(滴/分),控制误差范围为设定值+/-10%+/-1 滴。
C.系统调整时间《=3 分钟。
D.当点滴瓶里的液面低于警戒值时,能发出报警信号
2.2. 系统通讯设计要求
设计并制作一个由主站控制16 个从站的有线监控系统
A.主站功能:具有定点和巡回检测两种方式;可显示从站传输过来的从站号和点滴速度;在巡回检测时,住站能任意设定要查询的从站数量,从站号和各从站的点滴速度;受到从站发来的报警信号后,能声光报警并显示相应的从站号;可用手动方式解除报警状态。
B.从站功能:能输出从站号,点滴速度和报警信号;从站号和点滴速度可以任意设定;接收主站设定的点滴速度信息并显示;对异常情况进行报警。
C.主站和从站间的通信方式不限,通信协议自定,但尽量减少信号传输的数量。
3. 系统设计框图

图1 系统设计图
4. 硬件设计方案与论证
4.1. 点滴速度检测方案
本文使用槽型光电耦合器。由KODENSHI 公司的photointerrupterLG-207 的内置的放大器和施密特集成电路和LITEON 公司的加指示灯。在槽型光耦输出信号口接发光管。因为该耦合 器输出的是经过整形的脉冲信号,单片机很容易就能读到,该脉冲同时驱动的指示发光管,能很直观清晰的了解水滴下落的检测情况,所以此装置十分适合用于水滴滴速的检测。
4.2. 液面检测报警方案
由发光二级管和光电三级管组成的光电传感器。发光二级管和光电三级管分别固定在警戒位置的两侧,保证发光二极管发出的红外光和接收的三级管水平,光电三级管可以接收到发光二极管发出的红外光。当液面的高度正常时(高于警戒位),输出一个4.2V 的高电平。若液面的高度低于警戒位,此时光点三级管输出的是一个0. 2V 的低电平。在两种情况下的输出电压有明显的跳变,可以直接将低于警戒位三级管发出的低电平作为报警信号送给单片机。
4.3. 电动机驱动方案
方案一: 直流电动机驱动。直流电机的优势在于:可以自锁,且带负载能力强,在12V的电压下电动机运行平稳。当电动机停止运行时,能很容易的拖住的输液瓶,使其停稳在相应的位置上。这种优点对于调节滴液瓶的高度比有利。但是直流电机不可避免地使电动机的起停产生延时。这样的拖动对提高输液瓶定位的精度和点滴速度控制来说有些不利。控制电路采用慢速继电器对电动机的开或关进行控制,只要有12V 的电压就能通过开关的切换对电机进行的正反转进行调整。电路简单容易实现。
方案二: 4 相8 拍步进电机。向步进电机每发一个脉冲,电机转动0.9 度(步进度为0.9 度/Step)。这样的性能对于精确控制十分有利。但是步进电机也存在明显的不足:不能自锁,负载能力不如直流电机,驱动电流较大,运行时容易失步。电机停止运行时,由于拖动的是象输液瓶这样较重的负载而不能停稳,导致滴液瓶高度上的变化。
综合各方面指标,特别是考虑到电机的带负载能力,本文决定采用了直流电动机的拖动方案来实现。
4.4. 数字显示方案
采用字符式LCD(Liquid Crystal Display)显示[3]。可以用数字、部分符号和英文显示较为清晰的提示,实现相对简单,且对于本系统的点滴速度的动态显示,足以满足要求。
4.5. 滴速调节按钮设定方案
每个按钮开关都接10K 的下接电阻,使其处于关断状态输出位低电平,而非浮空状态[4]。要进行设定之前首先要按下“Ctrl”按钮,输出高电平给单片机的P0.5,说明设定开始。之后若按下按钮“++”,输出高电平给单片机的P0.6;若按下按钮“--”,输出高电平给单片机的P0.7。退出设定,要求同时给P0.6 和P0.7 以高电平,即需要同时按下按钮“++”“--”对单片机进行说明。
4.6. 系统报警
声光报警。一旦接收到报警信号,立即启动鸟叫门铃报警电路
5. 软件设计
5.1. 单片机部分
单片机最小系统采用89C51 处理器,是整个硬件系统的核心。主要负责实现设定速度并显示;现场点滴的脉冲读入和现场点滴速度的检测和显示;接收液面检测的报警信号,实现报警。
5.2. 点滴速度的测量显示
方案一:以15 秒钟为单位(滴/15 秒)进行点滴速度的测量,得到的速度值转换成 以1 分钟为单位的要求的速度(滴/分)。考虑此方案是由于设计要求在3 分钟之内调整到设定速度,若直接采用(滴/分)作为单位,就没有足够的调整时间,而且以15 秒为单位的速度不会变化太大,对于电机的控制来说,更为平稳。
方案二:测连续两滴液滴的下落时间间隔t,再转化成每分钟的点滴数。由于每两滴液滴的下落时间间隔会有所偏差,导致最终转换的结果会有所误差,故不采用。
5.3. 软件流程图
A. 转速控制流程图

图3 直流电机控制流程图
B. PC 主站与多个从机通讯程序流程图

图4 主从站通讯监控流程
5.4. 通讯协议
主从站的通讯需要一定的通讯协议,本问所使用的通讯协议如表1。

例如,主站要向某从站查询该从站的当前状态:主站每隔0.2s 向从站发送一个查询命令:“机号(30H~3FH)+ 查询字(0A0H)”;从站送回状态:“机号+当前滴液速度+是否有报警”。
6. 系统测试
通过实际测试,自带整形电路的光电耦合器在透过滴液管的透明管壁后仍可以精确地测试到每滴液滴。通过置与滴液 架顶的滑轮,直流电机完全可以控制滴液瓶的升降。虽然理论上直流电机的控制精度不如步进电机精确,但是通过PI 算法,并使每次直流电机都只行走超调值的1/2 行程,系统仍然能够在3 分钟能达到所需要的液滴稳定值。
7. 结论
采用电机控制液面高度,利用压强的变化来改变点滴管内的点滴速度的系统,再加上主站远程监控,能够有效低降低医护工作者的压力。本系统可以以级少的成本与设备占用空间实现,另外,如果增加以太网接口,则可使本系统完全满足大型医院的需要。
史海拾趣
|
这段时间在xp上安装了虚拟机,虚拟机的使用的是vm5.52的,呵呵,安装的还是老掉牙的redhat9,但是手册里面说的是fc4的安装方式,我个人安装的经历证实基本上都是差不多的。… 查看全部问答> |
|
MSP430FG439上实现IO模拟UART以及移植要点解析 最近要做MSP430上的开发,一上手就要做IO模拟UART这种难度的玩意,幸好网上已经有很多现成的MSP430的软串口实现例子,本文代码大部分参考 >http://www.microcontrol.cn/430base.htm上的《MSP430的Timer_A实现模拟串口功能例程》,并且成功移植到MSP ...… 查看全部问答> |
|
高分请教:MPC82xx系列的ppc中的CPM是如何工作的? powerpc的CPM模块,集成了很多通信协议。 有点我不太清楚。举个例子: 有个10M的udp包从fcc网口进来,肯定不能一次传完,那么CPM模块能不能先把这10M数据完全接受完再送给core处理呢? 如果能够这样处理,那么这个功能怎么实现?是在网口的驱动 ...… 查看全部问答> |
|
这样子是可以的,没有用到中断口,如果程序外的理事多点就会出问题的,那么需要用到外部中断 #include #include #include #include #define uint unsigned int #define uchar unsigned char //#def ...… 查看全部问答> |
|
原帖地址http://topic.eeworld.net/u/20080521/16/8dd26e1c-2e9b-4277-877b-5f888125bc35.html?seed=2142211368 我们目前的系统是使用的三星44b0的平台,一块8M的sram,一块8M的nor flash,无操作系统 我现在要做的是为原本的这套系统添加一个\"程 ...… 查看全部问答> |
|
replyreload += \',\' + 1256626;很详细的哟,我就不多说了。Timson,如果您要查看本帖隐藏内容请回复《深入浅出玩转FPGA》光盘资料.rarTimson,如果您要查看本帖隐藏内容请回复深入浅出玩转fpga.pdf资料又点大,转网盘了。 [ 本帖最后由 8fu8 于 ...… 查看全部问答> |
|
请问用IAR打开ZigBee程序,在 Workspace 里选择不同配置,代码文件显示样式问题 请问用IAR打开ZigBee程序,在 Workspace 里,选择不同配置,代码文件显示样式不一样,如下图,这是怎么做到的? 好像选择不同配置就屏蔽了其他代码,怎么回事啊? 求知道的大侠们给讲讲,谢谢! … 查看全部问答> |




