陈鑫浩毕业设计(论文) 《基于单片机的医用点滴速度监控系统》_第1页
陈鑫浩毕业设计(论文) 《基于单片机的医用点滴速度监控系统》_第2页
陈鑫浩毕业设计(论文) 《基于单片机的医用点滴速度监控系统》_第3页
陈鑫浩毕业设计(论文) 《基于单片机的医用点滴速度监控系统》_第4页
陈鑫浩毕业设计(论文) 《基于单片机的医用点滴速度监控系统》_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、武昌理工学院本科毕业设计(论文)题目:基于单片机的医用点滴速度监控系统学院: 信息工程学院专业: 自动化学号: 20084224080学生姓名: 陈鑫浩 指导教师: 唐穗欣二一 一 年 十一 月 一日武昌理工学院2012届毕业设计(论文)基于单片机的医用点滴速度监控系统陈鑫浩摘要本系统是以at89c51单片机为核心,对医疗注射进行有效监控的一种智能型设备。采用红外线传感器对液滴速度和液面进行检测;利用单片机之间的通信功能,采用rs-485通信方式进行多点对多点的通信,设计一个主站控制多个从站的有线监控系统。主站主要用来控制各个从站并且能对从站的反馈信息进行报警显示;从站主要是检测点滴速度和控制

2、点滴速度,同时检测液面是否到达警戒线,并且能对异常现象进行报警,这里还采用了8279键盘显示电路用来设定和显示滴速,采用步进电机来调节点滴速度。利用单片机设计一个智能化的液体点滴速度监测与控制系统。 该系统由水滴速度测试系统、 水速控制系统、显示装置、单片机系统、键盘和报警等系统组成。应用水的压强随着高度差的变化而变化的原理,利用控制步进电动机的升降来控制点滴速度。点滴速度可用键盘来设定,同时在水到达警戒线 (2cm 一 3cm ) 以下时能发出报警信号。关键词:单片机液体点滴;-485通信;红外传感器equipment of liquid droplet monitor controlled

3、 by microcontrollerchen xin haoabstractthe system is automatic equipment basing on microcontroller at89c51 to control the medical injecting efficiently. adopting infrared sensor to check and measure the speed of liquid droplet and the high of the liquids surface in the droplet bottle. using communic

4、ation among microcontroller, i adopt rs-485 as the way of communication to march the communication of sites to sites to design an automatic system of a major site controlling sixteen subordinate sites. the major site mainly controls the sixteen subordinate ones and gives alarm and shows the informat

5、ion that subordinate sites feedback. the subordinate sites mainly check the speed of liquid droplet and control the speed and also control whether the liquid surface achieves the cordon, moreover, can give alarm if there abnormal phenomenon. i adopt the keyboard indicators circuit of 8279 chip to se

6、t and show the speed of droplet. i also use pm electrical machinery to regulate the speed of droplet.the system uses the mcu to design a monitoring and controlling apparatus of liquid drop speed. the apparatus consists of liquid drop speed testing system, liquid drop speed controlling system, led di

7、splay system, mcu system, the keyboard and alarming system. and it uses the principle of the waters press transforms when the height of the water transforms, and then to control the working status of the stepping engine. the liquid dropping speed can be set by the keyboard. when the height of water

8、level is decreased to the al arming value (23 cm), it gives the alarm signal at the same time.key words: microcontroller of liquid droplet; rs-485 communication system;nfrared sensor目 录前言1第1章 绪论21.1 单片机应用系统概述21.2 群控系统概述2第2章 总体方案的设计52.1 技术要求52.2 系统总体模块图52.3 从机各模块图的设计52.3.1 单片机的选择52.3.2 点滴速度测量52.3.3 液

9、面检测和报警62.3.4 液体点滴速度的控制62.3.5 控制电机及其驱动72.3.6 设定滴速与键盘显示72.4 主从机通信模块图设计8第3章 硬件设计93.1 从站各模块的硬件设计93.1.1 滴速检测93.1.2 液面检测和报警103.1.3 点滴速度控制103.1.4 键盘显示113.1.5 声光报警电路143.2 主从站通信电路的实现14第4章 软件设计164.1从站程序设计164.1.1 从机模块图164.1.2 从机主程序流程图164.1.3 滴速测量程序194.1.4 滴速控制程序214.1.5 键盘控制程序214.2通信程序设计23第5章 实际测试305.1 测试设备305.

10、2 测试结果30结论32致谢33参考文献34附录35附录a 从站电路图 35附录b 主站电路图 36附录c 程序清单 37iii第1页共57页武昌理工学院2012届毕业设计(论文)前 言目前医院使用的点滴输液装置是将液体容器挂在一定的高度上,利用势差将液体输入到病人体内,通过软管夹对胶管口径的压紧和放松来控制滴速。这就需要根据所输药剂的特性对滴速进行严格控制,但这对于一般病人来说难以自助,所以就需要一种自动的可以定时检测的智能型液体点滴速度监控装置。单片机液体点滴速度监控装置就是单片机在液体点滴速度控制上应用的一个实例,此系统是以单片机为核心,设计出一个液体点滴速度监测与控制装置,能检测点滴速

11、度,控制点滴速度,并能发出报警信号。系统采用主站控制从站的有线监控系统方式实现医疗输液过程的群控。设计的主要内容是完成群控系统控制装置的软、硬件设计及调试。包括:1、单片机的选择;2、总体方案的确定;3、各模块电路的设计;4、软件设计;5、各模块调试;6、编写设计说明书等。在液体点滴速度监控装置中,广泛应用8051兼容单片机系统控制,以期实现价格低廉、应用灵活的特点。检测液体点滴速度可用光电耦合传感器或者红外线传感器。液面检测可用红外线传感器或电容式传感器均可达到课题的要求。键盘显示部分采用普通的按键键盘和七段led数码显示管,也有采用简单液晶显示器。驱动部分大多数进行步进电机驱动,也有少数采

12、用交流异步电机驱动,如果采用步进电机在控制部分加一控制电路部分或程序,使其能够在停止运行时自动闭锁或者在机械部分采用涡轮蜗杆机构,防止电机因点滴瓶的重力拽下来。通讯方式可以采用rs232或rs485的方式。报警器一般采用蜂鸣器或者报警灯或者两者兼有之。本文共分五章。第一章为单片机应用系统及群控系统的有关内容;第二章是对总体方案的确定;第三章是对具体的每个模块的硬件设计;第四章是对每个硬件模块的软件设计;第五章是实际测量部分。最后附有结束语、致谢、参考文献及附录。 第1章 绪论1.1单片机应用系统概述一块单片机芯片就是一台计算机。由于单片机的这种特殊结构形式,在某些应用领域中,它承担了大中型计算

13、机和通用的微型计算机无法完成的一些工作。使起具有很多显著的优点和特点,因此在各个领域中都得到的迅猛的发展。单片机的特点可归纳为以下几个方面:(1)性能价格比高;(2)控制功能强;(3)低电压、低功耗;(4)集成度及可靠性高。单片机通常由cpu、存储器(包括ram和rom)、i/o接口、定时/计数器、中断控制功能等均集成在一块芯片上,片内各功能部件通过内部总线相互连接起来。ramrom时钟osccpu定时/计数器中断各种i/o图1.1 单片机典型结构框图1.2 群控系统概述随着多微机系统的应用和微机网络的发展,通信功能越来越显得重要。这里所说的通信是指计算机与外界的信息交换。因此,通信既包括计算

14、机与外部设备之间,也包括计算机与计算机的信息交换。串行通信是在一根传输线上一位一位的传送信息,这根线既作数据线又作为联络线。串行接口所直接面向的并不是某个具体的通信设备,而是一种串行通信的接口标准。串行通信接口标准经过使用和发展,目前以有几种,如:rs-232,rs-485,rs-422a等。rs-232接口标准适合于数据传输速率在02000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电气特性都作了明确的规定。由于通信设备厂商都生产与rs-232制式兼容的通信设备,因此,它作为一种标准,目前已在微机串行通信接口中广泛采用。远距离与近距离通信时,所使用的信号线是不同的。所

15、谓近距离是指传输距离小于15米的通信。在15米以上的远距离通信时,一般要加调制解调器modem。故所使用的信号线较多。此时,若在通信双方的modem之间采用专用电话线进行通信,则只要使用28号信号线进行联络与控制,如图1.1所示。若在双方modem之间采用普通电话交换线进行通信,则还要增加ri(22号线)和dtr(20号线)两个信号线进行联络。调制解调器2 接8 口ctsrtsrxdtxd调制解调器ctsrtsrxdtxd接 2口 8计算机dsrdsr专用电话线sgdcdsgsg dcdsgdcd 图1.1 采用modem时rs-232信号线的使用近距离通信时,不采用调制解调器modem,通信

16、方式可以直接连接,这种情况下,只需使用少数几根信号线。最简单的情况,在通信中根本不要rs-232的控制联络信号,只需使用3根线(发送线txd、接受线rxd、信号地线sg)便可实现全双工异步串行通信。rs-422a接口标准是一种平衡方式传输。所谓平衡方式,是指双端发送和双端接收,所以传送信号要用两条线aa和bb,发送端和接收端分别采用平衡发送器和差动接收器,如下图1.2所示。平衡发送器 差动接收器 a rs-422电平 a mc3487 mc3486 b b 图1.2 rs-422标准传输线连接这个标准的电气特性对逻辑电平的定义是根据两条传输线之间的电位差值来决定,当aa线的电平比bb线的电平高

17、于200mv时表示逻辑“1”;当aa线的电平比bb线的电平低于200mv时表示逻辑“0”。很明显,这种方式和rs-232采用单端接收器和单端发送器,只用一条信号线传送信息,并且根据该信号线上电平相对于公共的信号地电平的大小来决定逻辑“1”和“0”是不相同的。rs-232接口标准的电路由发送器、平衡连接电缆、电缆终端负载和接收器组成。它通过平衡发送器把逻辑电平变换成电位差,完成始端的信息传送;通过差动接收器,把电位差变成逻辑电平,实现终端的信息接受。rs-422标准由于用了双线传输,大大增强了抗共模干扰的能力。因此最大传输速率可达10mb/s(传送15米时)。若传输速率降到90kb/s时,最大距

18、离可达1200米。该标准规定电路中只许有1个发送器,可有多个接收器该标准允许驱动器输出为2-6v,接收器输入电平可以低到200mv。rs-485和rs-422标准一样,也是一种平衡传输方式的串行接口标准,它和rs-422兼容,并且扩展了rs-422的功能。两者主要差别是,rs-422标准只许电路中有一个发送器而rs-485标准允许在电路中可有多个发送器,因此,它是一种多发送器的标准。所以它可以实现多点对多点的通信。本课题属于一种群控系统,群控系统的概念出现在很多领域中,如电梯群控、温度控制的群控等,群控顾名思义就是一种群体控制,这个群体就是要通过一定的总线连接,选取一定的总线通讯芯片,再加上一

19、定的软件算法来达到有计划有规律的群体控制。题目要求设计并制作一个由主站控制16个从站的有线监控系统,这就要求主站与16个从站之间要采用某种方式,从而实现主站对16个从站的群控,而群控的具体做法就是对通讯方式的选择以及具体的软件编程,这里我们通讯方式采用抗干扰能力较强的rs-485通信协议。它在很多领域得到了广泛的应用,它可以多点之间或者使用公用线通信,它传输距离远、速度快。由于可以多点对多点通信,故能实现题目要求的主站对多个从站的群控,从而满足题目的要求。第2章 总体方案的设计2.1 技术要求对本课题设计中,利用单片机设计一个智能化的医用点滴速度监控和控制系统。该系统由液滴速度测试系统、液滴控

20、制系统、显示装置、单片机系统、键盘和报警等系统组成。另外可实现多机通信,即一个主机站控制多个从机站和主、从机之间的数据传输。应用水的压强随着高度差的变化而变化的原理,利用步进电机的升降来改变高度差来控制液滴的速度。点滴的速度可以由键盘来设定,同时当瓶内的水位低于警戒线(2cm3cm)以下时系统能自动报警。2.2系统总体模块图 根据题目的要求,我们可将液体点滴速度监控装置的主要功能归纳为以下几个方面:滴速检测与控制,液面检测与报警以及主从机的通信等,具体模块如图2.1所示:主 机从机1 键盘显示控制滴速滴速检测与报警从机16液面检测与报警图2.1 总体模2.3 从机各模块图的设计2.3.1 单片

21、机的选择本系统主从两站均采用at89c51单片机进行控制,此单片机特点是性价比高。2.3.2 点滴速度测量对点滴速度的检测大致原理是记录在一段时间内滴下的野地数量,用单片机定时器计时,这样关键是要对落下的野地准确计数。采用红外发射-接收管作为传感器来检测点滴。采用断续式工作方式,在点滴落下时阻挡了接收管接收红外线,产生高电平的脉冲信号。由于红外对管的发射口直径较小,单光束发射,液体相对红外装置正交落下时,产生的信号很强,很容易检测处理。考虑到环境光干扰主要是直流分量,如果采用带有交流分量的调制信号,则可以大幅度减少外界干扰。同时,红外传感器有很多优点:尺寸小,质量轻,安装在滴斗上较简单,对辅助

22、电路要求少,在近距离可以直接用直流发射,电路简单,性能稳定。这个方案有效简单,容易实现。采用脉冲调制的红外对管发射接收来检测滴速。2.3.3 液面检测和报警题目要求当瓶内液面降到23cm时,能发出报警信号。这里关键是如何检测到液面高度,而发出报警信号则较容易实现。采用全反射式红外线传感器检测。红外线从液体射到空气的界面时,如果入射角大于临界角会发生全反射现象,利用这一原理,通过一组在同一直线上的红外发射接收管,在保持红外发射管发射光光强不变和红外发射接收管相对角度大于100度并保持相对位置不变的情况下,检测红外接收管接收红外线强度,如图2.4示: 图1 图2图2.4 全反射式红外传感器检测示意

23、图当液面高度高于设定高度时,大部分全反射光线不能到达红外接收管,接收管接收到的红外线强度较小如(图1);当液面高度到达设定高度时,大部分全反射光线可到达红外接收管,接收管接收到的红外线强度较大,如(图2)所示。通过转换电路将红外线接收光强转换为电压信号,用比较器与门限电平比较,则可实现液面控制报警。2.3.4 液体点滴速度的控制通过电机驱动控制储液瓶升高或降低(改变h2),来调节点滴的滴速,通过改变出口与储液瓶处的压强。这种方法简单易实现。2.3.5 控制电机及其驱动用步进电机牵引储液瓶,保证储液瓶和滴斗之间的相对距离不变,设定最初的高度,检测当前滴速,根据经验公式,即高度与滴速之间的关系控制

24、电机的转数,达到合适的高度。由于步进电机的转数很容易控制,测出转轴直径就可以知道瓶子经过的距离,多次调节即可达到设定的滴速。2.3.6 设定滴速与键盘显示在这里,键盘显示用8279可编程的接口芯片。设定点滴速度用44键盘,用于主站设定要查询的从站数量、从站号和滴速;用于从站设定点滴速度和从站号。显示部分用led数码管,用于主站显示从站号和该从站的点滴速度;用于从站显示该从站的从站号和点滴速度。主站键盘布局如下图: 图2.5 主站键盘布局数码管显示: 8_led_dpy1234567abcdefg8dp1234567l0l1l2l3l4l5l68l7图2.6 数码管显示说明:4*4键盘中,数字键

25、用于设定从站号、点滴速度、从站数量,设定时采用分频显示。按下设定键,便可以开始设置,用最左边的两个数码管显示16个从站号(显示范围:015),中间的三个数码管显示设定点滴速度,右边的三个数码管显示测量点滴速度(显示范围:20150,十进制),设置完成后按确认键;按定点检测开始对设定的从站进行定点检测;按巡回检测键,将循环检测设定的各个从站的点滴速度,同时显示从站号;取消键用于取消输入及解除报警;统计键用于检测所设定的从站数。从站键盘布局如下图: 7 8 9 set 4 5 6 speed set 1 2 3 enter 0 修改键 cancel 图2.7 从站键盘布局按键功能说明:1) 09为

26、数字键,该数字键表示从站号或者速度;2) speed set键的功能:设置点滴速度的功能键;3) enter键功能:确认键。4) cancel键功能:删除当前所设置的数值。2.4主从机通信采用rs-485进行通讯。rs-485串行通信协议采用平衡信号差电路传输高速信号,噪声低,又可以多点之间或使用公用线通信,它比rs-232传输距离长、速度快,在传输距离为120 m时传输速率可达到1mbps;如果采用较低的传输速率,如9600bps,最大传输距离可达1200米,效果较好。至此,我们可设计出该系统的整体框图如下图:电动机储液瓶红外传感器报警从站报警滴斗键盘显示红外传感器其他从站主站 rs-485

27、3.1 从站各模块的硬件设计3.1.1 滴速检测利用红外线在液体和空气中对红外线折射的不同,通过一组在同一直线上的红外发射接收管,在保持红外发射管发射光光强不变的情况下,检测红外接收管接收红外线的强度。当液滴通过时,红外接收管接收到红外线光强应大于当无液滴通过时红外接收管接收到的红外线光强。通过脉冲整形电路得到具体液滴滴速检测,电路图如下:321u1alm324r4r1r2r3vccoutout图3.2 脉冲整形电路 当发射管和接收管之间有液滴通过时,接收管导通,vin输出的脉冲信号加在运算放大器lm324的反相输入端,lm324的正相输入端输入门限电压vg,将脉冲信号整形后,产生vout,为

28、一串规则的方波脉冲,脉冲数与液滴滴速一一对应,vin、vg和vout工作波形如下图3.3所示。发射管限流电阻r4去200欧,电流约为20ma,调节电位器w2可调整门限电压,以抑制干扰。vinvoutvg图3.3 整形后的脉冲波形3.1.2 液面检测及报警红外线从液体射到空气的截面时如果入射角大于临界角会发生全反射现象,利用这一原理,通过一组在同一直线上的红外发射接收管,在保持红外发射管发射光光强不变和红外发射接收管相对角度大于100度并保持相对位置不变的情况下,检测红外接收管接收红外线的强度。如图1所示,当液面高度高于设定高度时,大部分全反射光线不能到达红外接收管,接收管接收到的红外线强度较小

29、;如图2所示,当液面高度到达设定高度时,大部分全反射光线可到达红外接收管,接收管接收到的红外线强度较大。在此装置中,红外接收管输出的是电平信号而不是脉冲信号,可通过一运算放大器lm324送单片机中断处理,电路图与滴速检测的转换电路类似。321u1alm324r4r1r2r3vccoutout图3.4 电平放大电路这样可以准确检测到液面下降到警戒线时的情况,由单片机志向中断程序,发出报警信号。3.1.3 点滴滴速控制电机控制采用四相五线永磁步进电机,以四相八拍方式工作。单片机的p2口分别接电机的a、b、c和d相,步进电机的驱动电路如下图所示:123u1a75451456u1b75451r1d1b

30、f1+12vp2.08910u1c75451111213u1d75451r2d2bf2+12vp2.1123u2a75451456u2b75451r3d3bf3+12vp2.28910u2c75451111213u2d75451r4d4bf4+12vp2.3图3.5 步进电机工作方式按a ab b bc c cd d da次序通电为正转,带动储液瓶升高;按d dc c cb b baaad次序通电为反转,带动储液瓶下降。75451为oc门,单个oc门的吸收电流为500ma,每相采用一对oc门驱动,吸收电流可达1a。当控制a相的p2。0输入低电平时,a相导通,步进电机转到a相,依此类推,其他相工

31、作原理与此相同;当电路中两相同时输入低电平时,步进电机转到两相之间。此方式工作需要换相8次,转子才转动一个齿距角,所以步进电机的精度比较高,通过调整脉冲周期可控制步进电机转速。图中二极管和电阻构成泄放电路,以保护oc门不会因步进电机突然停止时在电路中产生过高电压而损坏。在电机调速的过程中,如果设定的点滴速度过快,可能会使输液瓶上升到支架顶部,则可能拉倒支架,造成危险,因此,在支架的顶部也安装一个红外传感器,当输液瓶上升到极限时,就发出报警信号,通知单片机控制电机停转。3.1.4 键盘显示按照题目要求,主从两站需分别设置键盘及显示器,这里均采用4*4键盘和八位led显示器。主站的键盘显示主要用于

32、定点检测和巡回检测,定点检测就是在巡回检测的过程中可随意在主站的键盘上设定所要检测的从站号和该从站的点滴速度以及所要检测的从站数量;显示器主要显示从站号和该从站的点滴速度。从站主要是通过键盘来设置本从站的点滴速度和从站号,显示器主要用于显示从站号和所测量的点滴速度。主要通过可编程键盘显示器接口8259来驱动。在键盘显示工作方式中,sl0sl3输出键盘列扫描和动态显示的位扫描信号。当选择内部译码方式时,sl0sl3直接作键盘列(行)扫描线和显示四位扫描线,sl0sl7输入键盘行(列)线信号,显示器字行码有outa03、outb03输出,此时,8279可接4位8段显示器和4*8的键盘。 当选择外部

33、译码方式时,键盘列(行)扫描线由sl0sl2通过3-8译码器译码提供(因输入数据格式中只安排了3位表示列 (行)号,故只取sl0sl2三位译码 ),rl0rl7输入键盘行(列)线信号,故此时8279可接一个8*8的键盘。显示位扫描线可由sl0sl3通过4-16译码器译码提供,显示器字形码由oouta03、outb03输出。此时,8279可接16位显示器,这是8279显示器的最大配置。 cnntl、shift可接两个单独的开关键。shift作为上下档控制键。当shift线对地接一个按键时,可与8*8的键盘配合,使各键具有上下档功能。这样,键盘可扩充到128键。cntl与其他键连用,作为特殊命令键

34、。cntl线对地接一键作为控制键时,可将键盘扩充到256键。cntl、shift线也可不用,不用时可直接接地(因片内集成有上拉电阻)。bd信号线可用来控制译码器,实现显示器的消隐。8279的数据线、wr、rd信号线与8031单片机直接连接。cs、a0接8031地址线,时钟信号clk可与ale直接连接,由8279设置适当的分频系数,将其分频至100khz。本设计用到4*4键盘和八位显示器,具体电路图如下:outa027outb031outa126outb130outa225outb229outa324outb328db012bd23db113db214sl032db315sl133db416sl

35、234db517sl335db618db719rl038rl139irq4rl21rl32cs22rl45rd10rl56wr11rl67a021rl78clk3shift36reset9cntl/s37u582798279rdwra00123456789101112131415a1b2c3g2a4g2b5g16y77y69y510y411y312y213y114y015u?1388708bic8708bic+5vled0led1led2led3led4led5led6led7abcdefgdpgndc?20ufr?2kgnd+5v8_led_dpy1234567abcdefg8dp12345

36、67l0l1l2l3l4l5l68l7图3.6 8279键盘显示器电路8279是一种可编程键盘显示器接口芯片,它主要由键盘输入和显示输出以及相应的寄存器和i/o口控制电路及数据缓冲器等组成。8279采用40引脚封装,其中:(1)与cpu的引脚有:d0-d7双向、三态数据总线;reset复位信号,输入线,当reset=1时,8279复位;rd/、wr/ 读、写选通信号,输入线,低电平有效;cs/片选;ao:输入线,区分信息特性,为1表示写入命令或读出8279状态;为0时表示传送的是数据;irq中断请求输出线,高电平有效;clk系统时钟输入线;(2)与键盘接口的引脚有:rl0-rl7回复输入线;s

37、l0-sl7用于键盘的行扫描输出线;shift移位信号输入线,高电平有效;cntl/stb控制/选通输入线,高电平有效;(3)与显示器接口的引脚:outa0-outa3 a组显示数据的段码输出线;outb0-outb3 b组显示数据的段码输出线;bd/ 显示器熄灭输出线,低电平有效。图中8708为驱动器。3.1.5 声光报警电路本设计采用声报警与光报警相结合的报警电路,其中光报警电路接单片机p1.7口,声报警电路接单片机的p1.6口,当滴速反常或者液面下降到设定警戒线时,将由红外传感器收集的信号经放大器送单片机申请中断,从而单片机将发出命令送报警电路。具体电路如图3.9所示: r光报警vccp

38、1.7led 图3.9声光报警电路图3.2 主从站的通信电路的实现本系统采用主站控制多个从站的有线控制方式,这里主要采用rs-485通信方式。rs-485标准是一种多发送器的标准,他允许在电路中可有多个发送器。rs-485允许一个发送器驱动多个负载设备,负载设备可以是驱动发送器、接收器或收发器组合单元。rs-485的共线电路结构是在一对平衡传输线的两端都配置终端电阻,其发送器、接收器、组合收发器可挂在平衡传输线上的任何位置,实现在数据传输中多个驱动器和接收器共用一传输线的多点应用,配置如下图:图3.7 通信电路结构图rs-485标准的特点有:a、由于rs-485标准采用差动发送/接收,所以共模

39、抑制比高,抗干扰能力强;b、传输速率高,他允许的最大传输速率可达10mb/s(传送15m)。传输信号的摆幅小(200mv);c、传送距离远(指无modem的直接传输),采用双绞线,在不用modem的情况下,当100kb/s的传输速率时,可传送的距离为1.2km,若传输速率下降,则传送距离又更远;d、能实现多点对多点通信,rs-485允许平衡电缆上连接32个发送器/接收器对。rs-485标准目前已在许多方面得到应用,尤其是在多点通信系统中,如工业集散分布系统、商业pos收款机和考勤机的联网中用的较多,是一个很有发展前途的串行通信接口标准。主从机之间的接口结构图为:rs-485主站从站16从站1

40、图3.8 主从机接口结构图第4章 软件设计4.1 从站程序设计 我们知道,每个完整的系统都是由硬件和软件想结合而产生的。有了硬件而无软件,那么这个硬件只是一个躯壳,如果没有硬件的支撑,更谈不上什么软件。所以说,软硬件是相辅相成的,在硬件的基础上来设计软件可以完成系统的要求,从而构成一个完整的系统。4.1.1 从站模块图 在硬件设计中,我们把从站分成了几个小模块,在软件的设计中,同样也应如此。从站的软件设计由几个模块组成,首先是从站的主程序的设计,这个程序是从机用来调用各个小模块,从而达到控制各模块的作用;所调用的小模块中,主要有滴速测量程序、滴速控制程序、键盘控制程序和液面检测与报警程序等,这

41、些小的模块可以在执行主程序时被调用。从站模块图如图4.1所示:从机主程序 液面检测与报警键盘显示程序滴速控制程序滴速测量程序 图4.1 从站模块图4.1.2 从站流程图(1)资源分配表如下:89c51的中断和定时器资源配置如下表所示:资源名称功能外部中断int0(下降沿触发)水滴检测定时器t0测脉宽定时器t1电动机转向控制定时器t2通信波特率存储单元分配表:作用定义名称分配单元给定滴数rrr30h检测滴数fff31h从站号no32h显示缓冲区(8个)dsi70h77h位单元分配表:作用位瓶内液体用完报警p1.6滴速异常报警p1.7步进电机驱动p2.0p2.3(2)从机主程序: 在系统刚开始启动

42、时,首先是准备状态,包括一些清零程序等;然后就将设定点滴速度和从站号,那么此时需要按下一个设定键向单片机申请中断用来来说明将开始设定数据,如果没有键按下,则继续等待按键,设置完毕后将按确认键说明设置完毕;液面报警是最优先级的报警,因此在设置完成后,一方面看液面是否报警,另一方面看实际点滴速度是否符合设定点滴速度,如果反常,将进行点滴速度报警;然后将实际滴速和设定滴速,通过比较两滴速的大小来调节步进电机的转向,如果滴速小于给定值则电机正转,拉动点滴瓶上升,加快滴速;如果滴速大于给定值,则电机反转,带动点滴瓶下降,减慢滴速;如果滴速正好等于给定滴速,则电机保持不动;若需修改点滴速度,则按下修改键重

43、新设定。具体流程图如图4.2所示:图4.2 从机主程序流程图y nyy开 始显示ready有键按下设定键?n是否有报警 ?y 确认键?显示当前滴速和给定的点滴速判断工作方式滴速小于给定值滴速大于给定值滴速等于给定值电机正转电机反转电机不动作nn判断有无修改键按下ny4.1.3 滴速测量程序 滴速的测量是通过红外线传感器所接收到的点滴信号,通过脉冲转换电路把脉冲送单片机的int0口进行中断。用定时器t0来定时,用状态字寄存器标志位psw.5来控制t0的关开,这里我们设置psw.5=0时开t0,psw.5=1时关to。当有一滴点滴滴下时,设置psw.5=1,则开t0,此时to开始定时,同时把psw

44、.5设置成0;当第二滴点滴滴下时,此时psw.5=0,所以关to,此时,可以测出定时器所定出的时间,即为两点滴之间的间隔时间,这里需要查看t0溢出次数,如果to溢出次数在06h和2dh之间,则进行滴速处理程序,从而计算出点滴的速度;如果大于2dh则滴速作20滴/分钟,如果小于06h,则滴速做150滴/分钟,这些都是异常现象。其中2dh和06h可以这样计算,以2dh为例:我们知道,定时器的溢出次数是指当定时器从所设定的数值开始每一微秒就会减1,直到减到0为止,此时,我们说定时器响应一次中断,即溢出一次,并在每次响应中断时,将分配单片机里面的一个单元将自动加1来计数,从而计出溢出的次数。这里我们设

45、定t0初值为ffffh,那么减到0000h时所用的时间为ffffus,化成十进制是0.065535s,即溢出一次需要0.065535s,那么当点滴速度为20滴/分钟时,每滴将是3s的时间,则会溢出2dh次,同理,做150滴/分钟时也如此。具体流程图如图4.3所示:中断程序y判断psw.5 = 1?n开t0关t0psw.5 = 0返 回查看t0溢出次数小于06h大于2dh作20滴处理作150滴处理滴速处理程序置th0=00,tl0=00h置psw.5=1图4.3 滴速测量程序流程图4.1.4 滴速控制程序(步进电机的转向控制) 滴速的控制是通过控制步进电机的正反转来实现的,通过改变步进电机的转向

46、从而改变点滴瓶的高度,即可改变点滴速度步进电机的转向如果按给定的工作方式正序通电换相,步进电机就正转;如果按反序通电换相,步进电机就反转。按照给定的通电换相顺序,通过单片机的i/o口向驱动电路发出控制脉冲。这里的步进电机工作在四相八拍方式,p2.0p2.3这四条i/o线,向四相步进电动机传送控制信号。按a ab b bc c cd d da次序通电为正转,按d dc c cb b baaad次序通电为反转,p2口输出的信号中,0代表使绕组通电,1代表使绕组断电,则可用8个控制字来对应这8个通电状态。如下表所示: 四相八拍工作方式的控制字通电状态 p2.3 p2.2 p2.1 p2.0 控制字

47、a 1 1 1 0 fehab 1 1 0 0 fchb 1 1 0 1 fdhbc 1 0 0 1 f9hc 1 0 1 1 fbhcd 0 0 1 1 f3hd 0 1 1 1 f7hda 0 1 1 0 f6h在程序中只要依次将这8个控制字送到p2口,步进电机就会转动一个齿距角。每送一个控制字,就完成一拍,步进电机就转过一个齿距角。程序如附录c的程序清单。4.1.5 键盘控制程序由于有现成的键盘显示接口芯片,所以这里采用8279键盘显示电路。(1)确定键值输入方式。键盘的扫描由8279中硬件电路自动完成,不需要用软件实现扫描。键值输入可采用查询方式,亦可采用中断方式。采用查询方式时,在每

48、次读键值前,先读入8279状态字,查看状态字中d3d0位(这4位反映fifo ram中是否有数)是否全为0,若有一位非0,说明fifo ram中输入有数据,可读出;否则,继续查询。采用中断方式时,8279的中断请求线irq需经反相器接单片机的int0或int1,fifo ram中一输有数据,8279便向cpu申请中断。cpu响应中断(若中断开放)后,在中断服务程序中读取键值。这里采用查询方式。(2)确定键值。如果规定扫描线(sl0sl2)位列线,回复线(rl0rl7)为行线,则在数据输入格式中,d5d4d3表示sl0sl2的8个译码状态,d2d1d0表示rl0rl7的8个状态。因此8*8键盘的

49、键值如图4.4所示。由于64个键盘的键值均依次排列,所以键值也可作为键号使用。这里我们只用左下角的4*4键盘。07h ofh17h1fh27h2fh37h3fh06h0eh16h1eh26h2eh36h3eh05h0dh15h1dh25h2dh35h3dh04hoch14h1ch24h2ch34h3ch03h0bh13h1bh23h2bh33h3bh02h0ah12h1ah22h2ah32h3ah01h09h11h19h21h29h31h39h00h08h10h18h20h28h30h38h图4.4 8*8键盘的键值与键号(3)8279中有一个定时与控制电路,它自动完成数据的动态显示。要显示某

50、个字符(数据)时,只要将其字形码送入显示ram中,在显示器上便可显示出相应的字符。(4)8279的控制端口和数据端口口地址由cs和a0确定,a0=0,选择数据端口。a0=1,选择控制端口。所有命令字写入控制端口,从控制端口读入的为状态字。键盘显示是一个完整的系统,首先对8279进行清零,然后按下设定键用来设定从站号和滴速,同时送led显示,等设置完成则按下确定键,从而设置结束。具体流程图4.5所示: 开 始清除命令dch82798279清除结束否?按下设定键键入数值按下确认键否?完 成 ny n y 图4.5 键盘控制程序流程图4.2 通讯程序通信协议at89c51串行口的方式2和方式3有一个

51、专门的应用领域,即多机通信。这一功能使它可以方便地应用于集散式分布系统中。多机通信的连接方法如上图所示。 接口方式rs485接口:异步,半双工1位起始位,8位数据位,1位/偶校验位,1位停止位,2400bps通信方式1、主机对双机点对点通信2、从机地址由从机自己设置(116),各从机地址不能重复3、从机在最近一次对主机轮询的应答帧中上报当前状态协议格式主机命令帧格式帧头从机地址帧尾1个字节(q)1个字节1个字节(h)从机响应帧格式帧头从机地址从机状态运行数据校验和帧尾1个字节(q)1个字节1个字节2个字节2个字节1个字节(h)协议中有效字符集为:q、0、1、2、3、4、5、6、7、8、9、a、

52、b、c、d、e、f、h;数据结构qtmodeequ30h;检测方式,为0则是定点方式,非零为检测方式,为从站数目qnum1equ0h;1#站状态位查址区 0:不查询,1:要查询qnum2equ1h;2#站状态qnum3equ2h;3#站状态qnum4equ3h;4#站状态qnum5equ4h;5#站状态qnum6equ5h;6#站状态qnum7equ6h;7#站状态qnum8equ7h;8#站状态qnum9equ8h;9#站状态qnum10equ9h;10#站状态qnum11equah;11#站状态qnum12equbh;12#站状态qnum13equch;13#站状态qnum14equdh;

53、14#站状态qnum15equeh;15#站状态qnum16equfh;16#站状态qrateequ31h;当前从站点滴速度qnumequ32h;当前从站号qaddr1equ33h;qaddr2equ34h;qdata1equ35h;qdata2equ36h;qsum1equ37h;发送计数qsad0equ38h;当前查询的从站号常量qhqequ81qh0equ48qh1equ49qh2equ50qh3equ51qh4equ52qh5equ53qh6equ54qh7equ55qh8equ56qh9equ57qhaequ65qhbequ66qhcequ67qhdequ68qheequ69qhfe

54、qu70qhhequ72串口中断服务程序流程图如图4.6所示清ri读sbuf 34h串口中断(0023h)保存现场(34h)右移一位34h计数值加1 36h、37h(考虑低位向高位进位)置接收标志 位(00h)恢复现场、中断返回ri = 1 ?yn(34h)= 3ah ?yn位(00h)= 1 ?发送子程序yn计数值=2 ?(34h) (计数值+10h)(考虑低位向高位进位)位(01h)= 1 ?nyny位(02h)= 1 ?地址比较地址比较地址相符?置正接收标志位(01h)= 1清相关标志位恢复现场、中断返回ny发送子程序清ti发送计数值加1(38h,39h)发送计数值 发送字节数 ?(发送

55、计数值+0400h) sbuf恢复现场、中断返回清相关标志位清p3.5,使发送无效ny位(02h)= 1 ?位(02h)= 1 ?(34h)= 0dh ?(34h)= 0ah ?ny置收到0dh标志(02h)= 1恢复现场、中断返回yn清收到0dh标志(02h)= 0数据校验运算yn接收完成清相关标志位lrc值比较,相等?yn向主机发“已接收”信息要求主机重发p3.3发一个脉冲恢复现场、中断返回 图4.5 串口中断服务流程图第5章 实际测试5.1测试设备医用点滴药瓶,铁架,秒表5.2 测试结果(1) 最高滴速测试 调节输液管阀门,目测滴速为150滴/分钟时,测量其最高滴速。通过软件将最大速度保

56、存并显示。次数123实测速度(滴/分钟)145149147(2) 最低滴速测试 调节输液管阀门,目测滴速为20滴/分钟时,测量其最低滴速。通过软件将最大速度保存并显示。次数123实测速度(滴/分钟)222023(3) 滴速控制 调节输液管阀门,在适合高度范围内,目测滴速为56滴/分钟至95滴/分钟时,控制滴速。通过软件设定滴数为70滴/分钟。次数123稳定滴速767468调整时间1分25秒1分40秒1分37秒(4) 报警功能测试报警种类功能实现瓶内液面高度报警成功滴速过快报警成功滴速过慢报警成功停止滴水成功 (5) 主站功能测试次数123显示从站传输过来的从站号成功成功成功显示从站传输过来的点

57、滴速度成功成功成功根据从站传输过来的报警信号报警,并手动解除成功成功成功设定从站点滴速度成功成功成功定点方式成功成功成功巡回显示16个从站点滴速度成功成功成功(6) 从站通信功能测试次数123设定从站号成功成功成功输出从站号,点滴速度,报警信号成功成功成功接收主站设定点滴速度并显示成功成功成功结论 经过艰难的奋战,本次设计终于完成.毕业设计是大学课程中的规模最大的系统设计,它可以提高学生多方面的能力. 首先对本次设计做一个总结.本次设计基本上完成了课题要求,实现了单片机对医用的点滴速度的测量与控制 液面检测与报警和主从机间的通讯.本设计是以单片机为核心,通过红外线传感器对点滴及液面进行采样,经

58、过一定的电路转换送入单片机,通过一定的软件编程实现对其达到测量与控制的目的.同时有一套报警装置,一旦有反常现象发生,单片机将会发出报警指令.主从机通信部分是本次设计的重点和难点,这方面的设计牵涉到群控的概念,这里采用rs-485通信方式,可以多点对多点进行通信,因而能满足题目的要求,实现一个主站控制16个从站的有线监控.其次,谈谈个人体会.这次设计我受益非浅,在课题刚布置下来之际,我就开始查阅了各种有关单片机和群控系统的资料,在不知不觉中已经培养了查阅资料的兴趣,这是今后做每一个项目的最基本的一步.然后就针对本课题进行了一番考究,在网上和杂志上查阅到了一些相关资料,加以分析和总结得出了一套自己

59、的方案.同时虚心向老师和同学请教,这更加深了对本课题的理解.在设计的过程中,我遇到过很多问题,后来通过自己的努力和老师同学的帮助,大部分都解决了,比如硬件部分的有关内容.但是软件部分是花了好大脑筋的,至今有的地方仍然不是很完美,像通信部分,对这部分的软件设计仍然有点模糊,所以在今后的工作中,我将继续加深对这方面的理解.最后,这次设计让我懂得了一些道理,那就是戒骄戒躁,持之以恒,勇攀科学的高峰. 致 谢 本文是在唐穗欣老师的悉心指导下完成的。在毕业设计期间,唐老师给了我谆谆教诲和悉心关怀,值此论文完成之际,谨向我的导师唐穗欣老师致以最诚挚的感谢。唐穗欣严谨求实的治学作风、扎实勤勉的工作态度和诲人不倦的高尚品德,时刻激励着我刻苦学习、认真完成毕业设计;唐穗欣对科学事业孜孜以求、废寝忘食的崇高献身精神,将时刻鞭策着我在未来的人生旅途中奋发努力、锐意进取。 老师教诲之恩,当永记今生。衷心感谢在学习、设计中给予我帮助的同学们,一日同窗苦读,友谊地久天长。 陈鑫浩 2011年11月1日参考文献1曹琳琳 曹巧媛 主编 单片机原理及接口技术 国防科技大学出版社2胡汗才 主编 单片机原理及接口技术 清华大学出版社3唐勇奇,赵葵银pc-plc组成的电梯群控系统 应用科技 2001/1 4张胜昌,钟廷

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论