基于SOPC技术的医用呼吸机主控系统
时间:01-14
来源:互联网
点击:
3) 与PC机通讯的接口
系统与PC通讯有两个接口,JTAG接口和UART接口。JTAG接口用来对FPGA进行配置及程序下载;UART接口则作为命令控制接口,对完成的程序进行系统的调试。这两个组件在SOPC Builder内均有提供,可直接使用。JTAG接口无需过多配置,外部硬件连接完成后,在内部添加组件即可使用,对JTAG端口的操作由Quartus软件内部完成。
UART接口与PC机通过RS-232协议进行通讯,可以改变其波特率、奇偶校验位、停止位、传输的数据位以及其他可选的RTS-CTS流控制信号等。实际应用中波特率使用115200,8位数据位,1位停止位,带奇偶校验位,流控制则设为none。外部硬件连接使用MAX3232作为电平转换芯片。
4) 存储及配置单元
FPGA使用AS配置模式,配置芯片为EPCS4。EPCS4芯片中的存储区可分为两个区:FPGA配置存储区用来保存FPGA配置的数据,通用存储区用来存放系统启动代码以及程序数据。除了SOPC Builder提供的EPCS组件外,Nios II IDE中的Flash Programmer实用程序可把数据固化到EPCS芯片中。
FPGA芯片内部开出一块4K大小的RAM,作为程序运行时的缓存区。
5) 定时器
SOPC Builder提供的定时器是一个32位的间隔定时器,与我们常见到的单片机内部的定时器模块类似,有递增计数模式和递减计数模式,在计数器为0时可生成中断,也可令周期脉冲发生器输出一个脉冲。对periodl和periodh寄存器进行写操作可设定定时器的周期。系统中使用定时器模块计时,用来判断命令执行时间的长短,按键时长等功能,开中断后可实现长按键开关机或Shift键功能。
6) A/D采样
A/D采样主要是为了检测面罩压力并反馈,根据反馈值对压力进行再调节。压力检测后压力信号通过Maxim公司的A/D芯片MAX197进行采样。
与PWM组件类似,SOPC Builder也没有提供相应的A/D组件IP核,需自行定制,定制过程与PWM组件相同。
3 系统软件设计
系统的工作流程如图3所示。
1)工作状态
设置状态:只能在系统断电后,重新上电时进入。除此之外,系统在任何情况下都无法进入设置状态。并且从设置状态只能返回到关机状态。“Up”,“Down”键改变选项,“Set”键进入设置或确认设置,“On/Off”取消设置或退出当前这层设置界面,当已退到最初设置界面时,再按“On/Off”为关机;
关机状态:液晶显示“Off”,且只响应开机键和命令;
待机状态:液晶显示治疗压力的延时;
治疗状态:响应“On/Off”键, “Up”键和“Down”键。其中,“On/Off”键用于“启动/停止”治疗;“Up”和“Down”用于以0.5厘米水柱的压力为步长调整当前工作压力。
对这四种状态的切换都基于不同时段不同按键的组合,设计时考虑到治疗操作的简便性,把大多数操作都放到设置状态内进行,治疗时只需要根据实际情况略作调节即可。
2)压力反馈
对于呼吸机这种直接面对病患的医疗器械,安全性是非常重要的,另外,对所加压力的精度要求也比较高,就算是5%的压力变化对于一个病人的呼吸系统来说也是不小的压力。在电机有输出有波动的时候,加一级反馈来对压力进行补偿输出,可以防止突然间的误动作以及供电电压波动带来的压力精度偏移。
将A/D采样的结果与预先设定的值进行比较,如果低于设定值,则对输出值进行相应的提升;如果高于设定值,则减少输出值。对压力输出的调节要逐步进行,根据实验结果设定步长PWM_T_STEP,每次变化只增减PWM_T_STEP的值,这样不会使得气流忽大忽小,让患者的呼吸系统感到不适。
3)按键及显示
系统中对按键的要求比较多,除了正常的单次按键外,还有开关机时的长按键、进入设置状态的组合键等。这些特殊功能的按键也是基于单次按键的基础上进行的。
长按键需要对按键的触发的上升沿和下降沿都进行判断,单次按键的下降沿中断来到后,计数器开始计数,到上升沿中断到来为止,如果计数大于某一阈值则认为该次按键为长按键。阈值的确定要根据系统的时钟频率以及所需要的延时长度。
系统的显示主要依靠LCD,16×2的液晶上只能显示两行菜单,但菜单的总条数远大于两条,为此,菜单数组的显示和执行就需要两套指针来实现,显示时单行滚动显示,以便于观察。
4 结语
本文所述的医用呼吸机主控系统,样机已制出,现正进行性能测试,目前运行正常。整个系统的设计重点在定制基于SOPC技术的嵌入式Nios II软核处理器设计和电机驱动的实现上,与传统的基于单片机的方案相比,Nios II只占用了FPGA芯片内的一小部分资源,却完成了包括单片机及相当数量外设的功能,这样既简化了电路板设计,减少外围器件的配置,又有效地控制了系统软硬件的复杂度,降低了成本,缩短开发周期,更便于对未来产品的升级换代。
系统与PC通讯有两个接口,JTAG接口和UART接口。JTAG接口用来对FPGA进行配置及程序下载;UART接口则作为命令控制接口,对完成的程序进行系统的调试。这两个组件在SOPC Builder内均有提供,可直接使用。JTAG接口无需过多配置,外部硬件连接完成后,在内部添加组件即可使用,对JTAG端口的操作由Quartus软件内部完成。
UART接口与PC机通过RS-232协议进行通讯,可以改变其波特率、奇偶校验位、停止位、传输的数据位以及其他可选的RTS-CTS流控制信号等。实际应用中波特率使用115200,8位数据位,1位停止位,带奇偶校验位,流控制则设为none。外部硬件连接使用MAX3232作为电平转换芯片。
4) 存储及配置单元
FPGA使用AS配置模式,配置芯片为EPCS4。EPCS4芯片中的存储区可分为两个区:FPGA配置存储区用来保存FPGA配置的数据,通用存储区用来存放系统启动代码以及程序数据。除了SOPC Builder提供的EPCS组件外,Nios II IDE中的Flash Programmer实用程序可把数据固化到EPCS芯片中。
FPGA芯片内部开出一块4K大小的RAM,作为程序运行时的缓存区。
5) 定时器
SOPC Builder提供的定时器是一个32位的间隔定时器,与我们常见到的单片机内部的定时器模块类似,有递增计数模式和递减计数模式,在计数器为0时可生成中断,也可令周期脉冲发生器输出一个脉冲。对periodl和periodh寄存器进行写操作可设定定时器的周期。系统中使用定时器模块计时,用来判断命令执行时间的长短,按键时长等功能,开中断后可实现长按键开关机或Shift键功能。
6) A/D采样
A/D采样主要是为了检测面罩压力并反馈,根据反馈值对压力进行再调节。压力检测后压力信号通过Maxim公司的A/D芯片MAX197进行采样。
与PWM组件类似,SOPC Builder也没有提供相应的A/D组件IP核,需自行定制,定制过程与PWM组件相同。
3 系统软件设计
系统的工作流程如图3所示。
图3 呼吸机工作流程
1)工作状态
设置状态:只能在系统断电后,重新上电时进入。除此之外,系统在任何情况下都无法进入设置状态。并且从设置状态只能返回到关机状态。“Up”,“Down”键改变选项,“Set”键进入设置或确认设置,“On/Off”取消设置或退出当前这层设置界面,当已退到最初设置界面时,再按“On/Off”为关机;
关机状态:液晶显示“Off”,且只响应开机键和命令;
待机状态:液晶显示治疗压力的延时;
治疗状态:响应“On/Off”键, “Up”键和“Down”键。其中,“On/Off”键用于“启动/停止”治疗;“Up”和“Down”用于以0.5厘米水柱的压力为步长调整当前工作压力。
对这四种状态的切换都基于不同时段不同按键的组合,设计时考虑到治疗操作的简便性,把大多数操作都放到设置状态内进行,治疗时只需要根据实际情况略作调节即可。
2)压力反馈
对于呼吸机这种直接面对病患的医疗器械,安全性是非常重要的,另外,对所加压力的精度要求也比较高,就算是5%的压力变化对于一个病人的呼吸系统来说也是不小的压力。在电机有输出有波动的时候,加一级反馈来对压力进行补偿输出,可以防止突然间的误动作以及供电电压波动带来的压力精度偏移。
将A/D采样的结果与预先设定的值进行比较,如果低于设定值,则对输出值进行相应的提升;如果高于设定值,则减少输出值。对压力输出的调节要逐步进行,根据实验结果设定步长PWM_T_STEP,每次变化只增减PWM_T_STEP的值,这样不会使得气流忽大忽小,让患者的呼吸系统感到不适。
3)按键及显示
系统中对按键的要求比较多,除了正常的单次按键外,还有开关机时的长按键、进入设置状态的组合键等。这些特殊功能的按键也是基于单次按键的基础上进行的。
长按键需要对按键的触发的上升沿和下降沿都进行判断,单次按键的下降沿中断来到后,计数器开始计数,到上升沿中断到来为止,如果计数大于某一阈值则认为该次按键为长按键。阈值的确定要根据系统的时钟频率以及所需要的延时长度。
系统的显示主要依靠LCD,16×2的液晶上只能显示两行菜单,但菜单的总条数远大于两条,为此,菜单数组的显示和执行就需要两套指针来实现,显示时单行滚动显示,以便于观察。
4 结语
本文所述的医用呼吸机主控系统,样机已制出,现正进行性能测试,目前运行正常。整个系统的设计重点在定制基于SOPC技术的嵌入式Nios II软核处理器设计和电机驱动的实现上,与传统的基于单片机的方案相比,Nios II只占用了FPGA芯片内的一小部分资源,却完成了包括单片机及相当数量外设的功能,这样既简化了电路板设计,减少外围器件的配置,又有效地控制了系统软硬件的复杂度,降低了成本,缩短开发周期,更便于对未来产品的升级换代。
单片机 Altera 总线 FPGA PWM LCD 比较器 LED 电流 Quartus Maxim 电压 嵌入式 电路 相关文章:
- 基于中颖SH79F164单片机的电子血压计应用(07-01)
- 医学成像的未来(08-25)
- 最新血氧仪低功耗设计方案(09-17)
- 人体成分测量装置的设计(09-18)
- 基于LabVIEW的食管动力检测系统设计(02-26)
- 基于MSP430的便携式医疗监护系统的设计(06-12)