基于FPGA为的多功能输液系统的设计

时间:2012-05-22

  今朝医护人员一般不能全程陪护,会给病人和医务人员带来良多平安隐患和未便。本文设计了一种集输液节制、显示、报警、语音通信等多种功能的输液节制系统。

  1 系统总体设计

  输液监控系统原理如图1所示,包括FPGA控制器、点滴速度检测、余液体积检测、执行机构、键盘控制、LCD显示、语音通信(发送与接收)以及RS232总线转换等部分。

  输液控制与语音通信是本文的主要研究内容,也是本系统稳定性和可靠性的根本保证。根据系统要求,设计中以FPGA为控制器,以光纤传感器和容栅传感器为检测机构,以步进电机为执行机构。为了安全和方便,利用RS232总线增设了语音通信和输液完成自动报警等功能。

  2 硬件部分

  2.1 控制器硬件设计

  控制器主芯片采用Altera公司的型号为APEX系列的FPGA芯片,芯片型号为 Cyclone II EP2C35F672C6.FPGA芯片采用90 nm的低功耗设计、672-Pin FineLine BGA封装,内置35个内嵌18×18乘法器、475个用户管脚、4PLLs、205个差分通道(比c8高出一倍的主频,可以达到400 MHz)典型值100万门,值约160万门。主处理器采用Altera公司的32位Nios软核处理器,与传统的嵌入式处理器相比,NiosⅡ处理器更加灵活。该芯片具有定制特性,可以根据自身的系统要求、性能要求和成本要求进行定制。系统总线采用AVALON总线标准。另外系统具有RS232串行通信口、键盘PIO、LCD显示等外围扩展功能,便于系统的进一步开发,缩短系统的开发周期,降低系统的开发成本[6].

  Altera 公司简介

  Altera 的可编程解决方案帮助系统和半导体公司快速高效的实现创新,突出产品优势,赢得市场竞争。自二十年前发明世界上个可编程逻辑器件开始,Altera 公司 秉承了创新的传统,是世界上"可编程芯片系统" (SOPC) 解决方案倡导者。Altera 公司总部位于美国加州的圣何塞,并在的14个国家中拥有近2000名员工,其2005年度的年收入高达11.23亿美元。Altera 将其早在1983年发明的可编程逻辑技术与软件工具、IP 和设计服务相结合,向全世界近14,000家客户提供超值的可编程解决方案。

  Altera 一直在可编程系统级芯片,领域中处于前沿和的地位,结合带有软件工具的可编程逻辑技术、知识产权 (IP)和技术服务,在世界范围内为14,000多个客户提供高质量的可编程解决方案。我们新产品系列将可编程逻辑的内在优势 -- 灵活性、产品及时面市 -- 和更性能以及集成化结合在一起,专为满足当今大范围的系统需求而开发设计。Altera 可编程解决方案包括:业内的 FPGA、CPLD 和结构化 ASIC 技术 全面内嵌的软件开发工具 的 IP 内核可定制嵌入式处理器 现成的开发包 设计服务

  2.2 键盘控制

  为了操作方便,系统采用键盘操作。设备履行一种双向同步串行协议,接口中重要的4根线是数据线、地线、电源线和时钟线。在键盘内部,有一个专门负责扫描按键的处理器,它能检测出某个键被按下或者按下后被释放,并根据按键的类型产生相应的扫描码。键盘发送的扫描码有通码(Make)和断码(Break)两种类型。当键盘上的一个键被按下时,键盘会根据按键类型产生一段通码;当键盘上的一个键按下后被释放时,键盘会根据按键类型再产生一段断码。此处理器为每个按键分配了的通码和断码,这样主机通过查找的扫描码就可以测定是哪个键被按下或释放。具体方法是启动QuartusⅡ,建立一个名为ps2_keyboard.qpf的工程,选择器件,创建文本文件并编写代码,以接收来自键盘的扫描码,要求对不同的按键做出响应,为器件进行输入输出管脚分配,完成后对工程进行编译。

  键盘总是产生时钟信号,从键盘发送到主机的数据在时钟信号的下降沿被读取。键盘的扫描码发送给FPGA,这些扫描码包含在键盘发送给主机的数据帧中。每个数据帧包括1位起始位(总是低电平)、8位数据位(即扫描码,从低位开始发送)、1位奇偶校验位(奇校验)和1位结束位(总是高电平)。

  2.3 传感器

  点滴速度检测采用在茂菲氏滴管的中部外侧安装一个光纤传感器。因为光电传感器的红外接收管很容易受到外界光线的干扰,并且它的直径一般在2 mm以上,体积较大,安装不方便。光纤传感器测量端口面积小,可以做到直径1 mm以内,药液点滴时分辨率高。液滴经过时利用液滴对光线的"遮挡"使光纤接收管的接收的光束发生变化,再经过电路处理得到点滴的速度脉冲,再将这种速度脉冲采集信息发送给控制器。为了防止输液速度过快而产生点滴连续流,设计了上下分别安装两个检测光纤,从而避免了少计脉冲数而产生错误的处理结果。电路X为光纤输出电压波形,Y为光纤输出电压波形。一般情况下,点滴离散时只有X计数,点滴连续时XY同时计数,这种方法既安全又稳定可靠。点滴离散时,XY只有一个高电平,或门C1产生的信号作为D锁存器Q1的控制端只允许X产生的正脉冲通过,而D锁存器Q2因为C1作用时Y信号尚在低电平,信号被屏蔽,Q2输出低电平,门电路在计数器中作加法运算。点滴连续时XY同时输出高电平,D锁存器Q2也在计数。OUT0是输出,OUT1是进位,Z是控制端输入。

  余液体积检测采用直线式容栅传感器,固定容栅安装在输液系统底座上,滑动容栅安装在输液系统步进电机带动的丝杠的螺丝母上,丝杠转动使螺母产生水平移动,测量原理如同游标卡尺,这种传感器响应速度快、量程可以达到1 m,误差小于0.01 mm[7].余液体积检测通过滑动容栅移动的距离乘以容器室的截面积而得出。

  2.4 执行机构

  输液速度控制采用的控制机构由步进电机、丝杠、螺丝母、压缩支架、容器室组成。步进电机在FPGA的控制下进行正反转动,丝杠转动使螺母产生水平移动,压缩支架安装在螺丝上,压缩架压缩容器室,药液包因容器室体积变小而收缩,药液从输液管输出,通过调整步进电机的步进速度,达到控制输液速度的目的。

  2.5 语音通信

  立体声CODEC芯片WM8731是一个高性能、低功耗的24位音频立体声接口,被广泛应用于各种便携式音乐播放器中。该芯片可以分别设置音频ADC和DAC的采样率,包含microphone-in、line-in和line-out接口,WM8731用I2C接口与FPGA连接。

  语音发送接收要有一个合适的波段,本文选定为15.6 MHz.让软件生成一个锁相环变频模块,AUDIO_DAC_ADC.v需要一个15.6 MHz的时钟,调用FPGA上的锁相环(PLL)资源,让软件生成这个模块的。v文件,然后在de2_top.v中添加这个模块。

  添加AUDIO_DAC_ADC模块过程为:

  reg signed [15:0] audio_outR;

  wire signed [15:0] audio_outL;

  wire signed [15:0] audio_inL, audio_inR;

  AUDIO_DAC_ADC u2 (//Audio Side

  .oAUD_BCK(AUD_BCLK),

  .oAUD_DATA(AUD_DACDAT),

  .oAUD_LRCK(AUD_DACLRCK),

  .oAUD_inL(audio_inL),/audio left data from ADC

  .oAUD_inR(audio_inR),//audio right data from ADC

  .iAUD_ADCDAT(AUD_ADCDAT),

  .iAUD_extL(audio_outL),//audio left data to DAC

  iAUD_extR(audio_outR),//audio right data to DAC

  //Control Signals

  .iCLK_15_6(AUD_CTRL_CLK),

  .iRST_N(1′b1));

  显示器选用唯信诺公司提供的OLED有机发光显示器,分辨率160×128,6.5K色,用16位并行数据总线与FPGA相连。OLED的控制芯片为LGDP4216,OLED供电电压10 V~21 V,接口供电电压2.2 V~3.3 V.显示区域大小可变,160(RGB)×128行,刷新率有7种,默认90 Hz.

  2.6 RS232数据传送与报警

  使用MAX3232电平转换芯片和9针D型连接器进行串口通信。由于系统是3.3 V供电,因此需要使用MAX3232进行电平转换。MAX3232是3.3 V工作电源的RS232转换芯片。护士室MAX3232适配器端口装有三个LED灯分别用来显示执行状态、数据传送、报警。串口直接连接到CyclII FPGA上。MAX3232芯片包含两组收发器,数据传输率250 kb/s.报警功能主要是在护士室显示,绑定在传输模块上,当余液控制达到下发生报警。

  3 软件设计

  输液控制主程序主要由初始化模块和各功能模块组成。初始化模块主要完成对通信、中断、定时的初始状态设置。初态时,RS232通信端口设置为接收状态,波特率设置为19 200 b/s;各功能模块包含键盘控制、点滴速度检测、步进电机控制、数据显示、语音通信及报警等。

  本系统采用Cycl-one II的FPGA进行开发,其键盘操作方便快捷,LCD显示一目了然,语音通信及报警功能提高了医患人员的安全感。本系统充分利用了键盘PIO、LCD显示、ADC和DAC音频接口、RS232串行通信口等,缩短了系统的开发周期,降低了系统的开发成本。通过实验测试,系统各检测传感器、控制执行机构、显示、报警等功能正常,性能达到了设计要求。

参考文献:

[1]. RS232 datasheet https://www.dzsc.com/datasheet/RS232_585128.html.
[2]. CPLD  datasheet https://www.dzsc.com/datasheet/CPLD+_1136600.html.
[3]. WM8731 datasheet https://www.dzsc.com/datasheet/WM8731_711424.html.
[4]. MAX3232 datasheet https://www.dzsc.com/datasheet/MAX3232_1107769.html.

上一篇:基于CPLD技术的看门狗电路设计
下一篇:基于DSP+FPGA的高程控交流电源设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料