医学仪器嵌入式应用课件_第1页
医学仪器嵌入式应用课件_第2页
医学仪器嵌入式应用课件_第3页
医学仪器嵌入式应用课件_第4页
医学仪器嵌入式应用课件_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

第八章医学仪器嵌入式应用8.1嵌入式医学仪器设计概述嵌入式医学仪器应视为一个数据采集与信息处理系统,其设计应遵循数据采集与信息处理系统的原则,它的技术路线与方案如下所示:第八章医学仪器嵌入式应用8.1嵌入式医学仪器设计概述11.安全可靠医学检测系统中的控制计算机不同于一般的用于科学计算或管理的计算机,它所担当控制重任不允许它发生异常现象。因此,在设计过程中,要把安全可靠放在首位。从上述观点出发首先要选用高性能的控制计算机,其次还常设计后备装置,对于特殊的控制对象还得设计成双机系统。1.安全可靠22.操作维护方便操作方便表现在操作简单、直观形象、便于掌握,并不强求操作人员要掌握计算机知识才能操作。因而本系统操作显示界面应遵循上述原则进行设计。3.实时性强医学检测仪器系统的实时性,表现在对内部和外部事件能及时地响应,并做出相应的处理,不丢失信息,不延误操作。2.操作维护方便34.通用性好医学仪器中的控制计算机的通用性体现在两方面,一是硬件模板设计采用标准总线结构,配置各种通用的功能模板,以便在扩充功能时,只需增加功能模板就能实现;二是软件模块或控制算法采用标准模块结构,用户使用时不需要二次开发,只需按要求选择各种功能模块,灵活地进行控制系统组态。4.通用性好45.经济效益高计算机控制应该带来高的经济效益,系统设计时要考虑性能价格比,要有市场竞争意识。经济效益表现在两个方面,一是系统设计的性能价格比要尽可能的高;二是投入产出比要尽可能的低。5.经济效益高58.2嵌入式数据采集系统组成数据采集系统(图8-1)由多路开关、采样/保持器、放大器、A/D转换器、计算机等组成。数据采集要经过采样和量化两个步骤。采样过程由多路开关、采样/保持器完成(如信号变化很慢,也可以不用采样/保持器)。多路开关将各路信号轮流切换到输入端。A/D转换器将采样信号量化,将转换成的数字量输入到计算机中。放大器、滤波器可根据被测信号的大小、频谱分布及干扰的强弱选用。8.2嵌入式数据采集系统组成6传感器传感器传感器多路开关放大器计算机A/D转换器采样/保持器图8.1数据采集系统组成传感器传感器传感器多放计A采图8.1数据采集系统组成78.3嵌入式医学仪器系统软件设计1系统软件定义与需求分析系统软件定义:

系统软件定义的目的是明确系统目标规模和基本要求,确定系统软件实现的基本功能和系统输入及输出。8.3嵌入式医学仪器系统软件设计8需求分析:

需求分析的基本任务是软件开发人员与用户一起完全弄清用户对系统的确切要求。目的是确定目标系统的运行环境与性能要求以及系统功能。2面向对象系统软件概要设计

通过以上系统基本功能的确定与需求分析后,我们就可以进一步进行程序设计,以确立系统的对象模型、动态模型、功能模型。需求分析:

需求分析的基本任务是软件开发人员与9对象模型是三个模型中最关键的一个模型,它表示静态的、结构化的系统的“数据”性质。描述了系统的静态结构。建立对象模型首先确定对象、类,然后分析对象的类及其相互关系对象:是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组属性和对这组属性进行操作的一组服务构成。类:是具有相同属性和服务的一组对象的集合。类为属于它的全部对象提供了统一的抽象描述(属性和服务)对象模型是三个模型中最关键的一个模型,它表示静态的、结构化的10动态模型

:描述对象和关系的状态、状态转换的触发事件以及对象的服务(行为)。即描述对象和关系的生成周期。状态:对象在其生成周期中的某个特定阶段所具有的行为模式。事件:事件是引起对象状态转换的控制信息。服务:也称为行为,对象在某种状态下所发生的一系列处理操作。建立动态模型过程:编写脚本(用例)提取事件顺序图状态转换图动态模型:描述对象和关系的状态、状态转换的触发事件以及对象11功能模型:用来说明如何处理数据,数据之间有何依赖关系,并表明系统的有关功能。建立功能模型过程:确定输入、输出值画数据(程序)流程图定义服务。功能模型:用来说明如何处理数据,数据之间有何依赖关系,并表12系统软件设计思路图8.2设计思路图系统软件设计思路图8.2设计思路图138.4嵌入式开发环境的建立

(以嵌入式linux操作系统为例)1.安装虚拟机和Linux操作系统

基于Linux操作系统的嵌入式系统开发环境可在宿主机上安装Linux操作系统。在开发过程中计算机可安装了虚拟机VMware,并在这基础上安装了Linux操作系统Ubuntu。

8.4嵌入式开发环境的建立14

在VMware上安装Linux操作系统Ubuntu有几个好处。安装完成并启动Ubuntu后,鼠标即可在windows系统和Ubuntu系统之间自由切换。windows系统和Ubuntu系统之间还可以使用复制、粘贴数据的功能可以通过建立共享文件夹的方式,方便两个操作系统间传送数据、文件。在VMware上安装Linux操作系统Ubuntu152.

建立交叉编译环境开发环境搭建:根据所选cpu及开发板确定使用交叉编译工具链。在编译好交叉编译工具链后,要在环境变量的PATH中添加编译工具的路径(也就是arm-*-linux-*-gcc所在的路径),这样在编译时系统才找得到编译器的命令。在Ubuntu下的修改方法如下:

vi~/.profile,

在最后加上:PATH="<交叉编译工具的路径>:$PATH"。2.建立交叉编译环境16建立nfs服务器:

安装nfs服务器程序、配置服务器端、测试服务器3.

QT图形界面开发环境的建立安装交叉编译环境

下载、解压交叉编译器,修改环境变量;把交叉编译器的路径加入到PATH;检查是否将路径加入到PATH

;测试是否安装成功。建立nfs服务器:17QT/Embedded安装移植

下载QT/Embedded源码包(如有触摸屏则还需下载tslib1.4.tar.gz)、配置ubuntu编译环境、编译及安装qt-x11-opensource-src-*(作用:产生Qt开发工具,如designer、qvfb,嵌入式的开发有了qvfb,就可以不需要实际的开发板,也可以调试Qt应用程序)、编译配置QtEmbedded-4.5.3-x86(或-xarm)版本、编译安装tslib1.4(如有触摸屏)在宿主机上建立NFS启动根文件系统,把编译好的库文件复制到相关目录下。QT/Embedded安装移植188.4实例:基于嵌入式技术的便携式心电监护仪软件系统设计1.系统硬件总体结构

图8.3硬件结构框图

8.4实例:基于嵌入式技术的便携式心电监护仪软件系统设计192.软件系统设计

使用面向对象的程序设计方法利用Qt进行编程。设计步骤如下:A)系统软件定义与需求分析系统软件定义:基于32位嵌入式系统的便携式心电监护系统,具有心电信号实时显示和简易自动分析功能,并能对心电异常作及时报警处理,可应用于家庭、社区医院及流动医疗站等场所。需求分析:

实时地采集心电和动态显示心电信号计算并显示心率计算并显示ST段幅值心率报警,当心率异常时,亮报警灯或鸣报警声2.软件系统设计20ST段幅值报警,当ST段幅值超出某个范围值时,亮报警灯或鸣报警声报警设置,可以分别设置心率和ST段的正常范围冻结,心电信号停止动态显示,能前后查看显示实时时间去除50Hz工频干扰可选择采样频率,可选择显示放大倍数B)系统软件概要设计设计对象模型画出用例图ST段幅值报警,当ST段幅值超出某个范围值时,亮报警灯或鸣报21图8.4心电监护用例图图8.4心电监护用例图22细化用例(说明用例)Usecase:采集心电信号ID:1Briefdescription:采集心电信号,保存至缓冲区Primaryactors:UserPreconditions:启动硬件设备,连接好心电导联Mainflows:用户点击“开始”按钮系统开始采集心电信号,保存至缓冲区,“开始”按钮变为“停止”扩展点:处理心电信号Postconditions:系统发送提示缓冲池已满的信号Alternativeflows:没有细化用例(说明用例)Usecase:采集心电信号ID:123Usecase:停止心电信号采集ID:2Briefdescription:停止采集心电信号Primaryactors:UserPreconditions:启动硬件设备,连接好心电导联Mainflows:用户点击“停止”按钮系统停止采集心电信号,“停止”按钮变为“开始”Postconditions:Alternativeflows:没有Usecase:停止心电信号采集ID:2Briefd24Usecase:显示心电信号ID:3Briefdescription:系统在屏幕上动态显示心电信号Actors:用户Preconditions:没有Mainflows:1.(o1.)用户选择“播放”心电信号2.系统接收缓冲池已满的信号,更新显示内容3.(o2.)系统在屏幕上显示心电信号4.系统将“播放”转换为“冻结”Postconditions:没有Alternativeflows:没有Usecase:显示心电信号ID:3Briefdesc25Usecase:冻结心电信号ID:4Briefdescription:系统在屏幕上静态显示心电信号Actors:用户Preconditions:没有Mainflows:1.(o1)用户选择“冻结”心电信号2、系统接收缓冲池已满的信号3.(o2)系统在屏幕上显示心电信号4.系统将“冻结”转换为“播放”Postconditions:没有Alternativeflows:没有Usecase:冻结心电信号ID:4Briefdesc26Usecase:设置参数ID:5Briefdescription:用户设置系统运行的参数Actors:用户Preconditions:没有Mainflows:1.1如果用户选择了“软增益”

系统显示软增益设置界面,用户设置软增益1.2如果用户选择了“扫描速度选择”

系统显示扫描速度选择设置界面,用户设置扫描速度1.3如果用户选择了“设置滤波参数”

系统显示设置滤波参数设置界面,用户设置滤波参数1.4如果用户选择了“设置报警参数”

系统显示设置报警参数设置界面,用户设置报警参数2.用户点击“确定”按钮3.系统保存参数Postconditions:没有Alternativeflows:没有Usecase:设置参数ID:5Briefdescr27Usecase:启动报警ID:6Briefdescription:系统停止声光报警Actors:用户Preconditions:系统已启动Mainflows:1、用户按下“启动报警”按钮2、系统启动报警检测3、“启动报警”按钮转换成“停止报警”Postconditions:没有Alternativeflows:没有Usecase:启动报警ID:6Briefdescri28Usecase:停止报警ID:7Briefdescription:系统停止声光报警Actors:用户Preconditions:系统已启动Mainflows:1、用户按下“停止报警”按钮2、系统停止声光报警3、“停止报警”按钮转换成“启动报警”Postconditions:没有Alternativeflows:没有Usecase:停止报警ID:7Briefdescri29Usecase:刷新显示ID:8Briefdescription:系统刷新显示界面Actors:系统定时器Preconditions:系统已启动Mainflows:1、系统刷新定时器定时时间到2、系统刷新显示界面Postconditions:没有Alternativeflows:没有Usecase:刷新显示ID:8Briefdescri30确定设计类ECGmonitor心电监护类DeviceRecorder采集设备类VolumeDialog软增益对话框类SpeedDialog扫描速度对话框类FilterDialog滤波设置对话框类AlarmDialog报警对话框类Alarm报警类确定设计类31确定类关系确定类关系32设计动态模型图8.5启动、停止心电信号采集顺序图设计动态模型图8.5启动、停止心电信号采集顺序图33第八章医学仪器嵌入式应用8.1嵌入式医学仪器设计概述嵌入式医学仪器应视为一个数据采集与信息处理系统,其设计应遵循数据采集与信息处理系统的原则,它的技术路线与方案如下所示:第八章医学仪器嵌入式应用8.1嵌入式医学仪器设计概述341.安全可靠医学检测系统中的控制计算机不同于一般的用于科学计算或管理的计算机,它所担当控制重任不允许它发生异常现象。因此,在设计过程中,要把安全可靠放在首位。从上述观点出发首先要选用高性能的控制计算机,其次还常设计后备装置,对于特殊的控制对象还得设计成双机系统。1.安全可靠352.操作维护方便操作方便表现在操作简单、直观形象、便于掌握,并不强求操作人员要掌握计算机知识才能操作。因而本系统操作显示界面应遵循上述原则进行设计。3.实时性强医学检测仪器系统的实时性,表现在对内部和外部事件能及时地响应,并做出相应的处理,不丢失信息,不延误操作。2.操作维护方便364.通用性好医学仪器中的控制计算机的通用性体现在两方面,一是硬件模板设计采用标准总线结构,配置各种通用的功能模板,以便在扩充功能时,只需增加功能模板就能实现;二是软件模块或控制算法采用标准模块结构,用户使用时不需要二次开发,只需按要求选择各种功能模块,灵活地进行控制系统组态。4.通用性好375.经济效益高计算机控制应该带来高的经济效益,系统设计时要考虑性能价格比,要有市场竞争意识。经济效益表现在两个方面,一是系统设计的性能价格比要尽可能的高;二是投入产出比要尽可能的低。5.经济效益高388.2嵌入式数据采集系统组成数据采集系统(图8-1)由多路开关、采样/保持器、放大器、A/D转换器、计算机等组成。数据采集要经过采样和量化两个步骤。采样过程由多路开关、采样/保持器完成(如信号变化很慢,也可以不用采样/保持器)。多路开关将各路信号轮流切换到输入端。A/D转换器将采样信号量化,将转换成的数字量输入到计算机中。放大器、滤波器可根据被测信号的大小、频谱分布及干扰的强弱选用。8.2嵌入式数据采集系统组成39传感器传感器传感器多路开关放大器计算机A/D转换器采样/保持器图8.1数据采集系统组成传感器传感器传感器多放计A采图8.1数据采集系统组成408.3嵌入式医学仪器系统软件设计1系统软件定义与需求分析系统软件定义:

系统软件定义的目的是明确系统目标规模和基本要求,确定系统软件实现的基本功能和系统输入及输出。8.3嵌入式医学仪器系统软件设计41需求分析:

需求分析的基本任务是软件开发人员与用户一起完全弄清用户对系统的确切要求。目的是确定目标系统的运行环境与性能要求以及系统功能。2面向对象系统软件概要设计

通过以上系统基本功能的确定与需求分析后,我们就可以进一步进行程序设计,以确立系统的对象模型、动态模型、功能模型。需求分析:

需求分析的基本任务是软件开发人员与42对象模型是三个模型中最关键的一个模型,它表示静态的、结构化的系统的“数据”性质。描述了系统的静态结构。建立对象模型首先确定对象、类,然后分析对象的类及其相互关系对象:是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组属性和对这组属性进行操作的一组服务构成。类:是具有相同属性和服务的一组对象的集合。类为属于它的全部对象提供了统一的抽象描述(属性和服务)对象模型是三个模型中最关键的一个模型,它表示静态的、结构化的43动态模型

:描述对象和关系的状态、状态转换的触发事件以及对象的服务(行为)。即描述对象和关系的生成周期。状态:对象在其生成周期中的某个特定阶段所具有的行为模式。事件:事件是引起对象状态转换的控制信息。服务:也称为行为,对象在某种状态下所发生的一系列处理操作。建立动态模型过程:编写脚本(用例)提取事件顺序图状态转换图动态模型:描述对象和关系的状态、状态转换的触发事件以及对象44功能模型:用来说明如何处理数据,数据之间有何依赖关系,并表明系统的有关功能。建立功能模型过程:确定输入、输出值画数据(程序)流程图定义服务。功能模型:用来说明如何处理数据,数据之间有何依赖关系,并表45系统软件设计思路图8.2设计思路图系统软件设计思路图8.2设计思路图468.4嵌入式开发环境的建立

(以嵌入式linux操作系统为例)1.安装虚拟机和Linux操作系统

基于Linux操作系统的嵌入式系统开发环境可在宿主机上安装Linux操作系统。在开发过程中计算机可安装了虚拟机VMware,并在这基础上安装了Linux操作系统Ubuntu。

8.4嵌入式开发环境的建立47

在VMware上安装Linux操作系统Ubuntu有几个好处。安装完成并启动Ubuntu后,鼠标即可在windows系统和Ubuntu系统之间自由切换。windows系统和Ubuntu系统之间还可以使用复制、粘贴数据的功能可以通过建立共享文件夹的方式,方便两个操作系统间传送数据、文件。在VMware上安装Linux操作系统Ubuntu482.

建立交叉编译环境开发环境搭建:根据所选cpu及开发板确定使用交叉编译工具链。在编译好交叉编译工具链后,要在环境变量的PATH中添加编译工具的路径(也就是arm-*-linux-*-gcc所在的路径),这样在编译时系统才找得到编译器的命令。在Ubuntu下的修改方法如下:

vi~/.profile,

在最后加上:PATH="<交叉编译工具的路径>:$PATH"。2.建立交叉编译环境49建立nfs服务器:

安装nfs服务器程序、配置服务器端、测试服务器3.

QT图形界面开发环境的建立安装交叉编译环境

下载、解压交叉编译器,修改环境变量;把交叉编译器的路径加入到PATH;检查是否将路径加入到PATH

;测试是否安装成功。建立nfs服务器:50QT/Embedded安装移植

下载QT/Embedded源码包(如有触摸屏则还需下载tslib1.4.tar.gz)、配置ubuntu编译环境、编译及安装qt-x11-opensource-src-*(作用:产生Qt开发工具,如designer、qvfb,嵌入式的开发有了qvfb,就可以不需要实际的开发板,也可以调试Qt应用程序)、编译配置QtEmbedded-4.5.3-x86(或-xarm)版本、编译安装tslib1.4(如有触摸屏)在宿主机上建立NFS启动根文件系统,把编译好的库文件复制到相关目录下。QT/Embedded安装移植518.4实例:基于嵌入式技术的便携式心电监护仪软件系统设计1.系统硬件总体结构

图8.3硬件结构框图

8.4实例:基于嵌入式技术的便携式心电监护仪软件系统设计522.软件系统设计

使用面向对象的程序设计方法利用Qt进行编程。设计步骤如下:A)系统软件定义与需求分析系统软件定义:基于32位嵌入式系统的便携式心电监护系统,具有心电信号实时显示和简易自动分析功能,并能对心电异常作及时报警处理,可应用于家庭、社区医院及流动医疗站等场所。需求分析:

实时地采集心电和动态显示心电信号计算并显示心率计算并显示ST段幅值心率报警,当心率异常时,亮报警灯或鸣报警声2.软件系统设计53ST段幅值报警,当ST段幅值超出某个范围值时,亮报警灯或鸣报警声报警设置,可以分别设置心率和ST段的正常范围冻结,心电信号停止动态显示,能前后查看显示实时时间去除50Hz工频干扰可选择采样频率,可选择显示放大倍数B)系统软件概要设计设计对象模型画出用例图ST段幅值报警,当ST段幅值超出某个范围值时,亮报警灯或鸣报54图8.4心电监护用例图图8.4心电监护用例图55细化用例(说明用例)Usecase:采集心电信号ID:1Briefdescription:采集心电信号,保存至缓冲区Primaryactors:UserPreconditions:启动硬件设备,连接好心电导联Mainflows:用户点击“开始”按钮系统开始采集心电信号,保存至缓冲区,“开始”按钮变为“停止”扩展点:处理心电信号Postconditions:系统发送提示缓冲池已满的信号Alternativeflows:没有细化用例(说明用例)Usecase:采集心电信号ID:156Usecase:停止心电信号采集ID:2Briefdescription:停止采集心电信号Primaryactors:UserPreconditions:启动硬件设备,连接好心电导联Mainflows:用户点击“停止”按钮系统停止采集心电信号,“停止”按钮变为“开始”Postconditions:Alternativeflows:没有Usecase:停止心电信号采集ID:2Briefd57Usecase:显示心电信号ID:3Briefdescription:系统在屏幕上动态显示心电信号Actors:用户Preconditions:没有Mainflows:1.(o1.)用户选择“播放”心电信号2.系统接收缓冲池已满的信号,更新显示内容3.(o2.)系统在屏幕上显示心电信号4.系统将“播放”转换为“冻结”Postconditions:没有Alternativeflows:没有Usecase:显示心电信号ID:3Briefdesc58Usecase:冻结心电信号ID:4Briefdescription:系统在屏幕上静态显示心电信号Actors:用户Preconditions:没有Mainflows:1.(o1)用户选择“冻结”心电信号2、系统接收缓冲池已满的信号3.(o2)系统在屏幕上显示心电信号4.系统将“冻结”转换为“播放”Postconditions:没有Alternativeflows:没有Usecase:冻结心电信号ID:4Briefdesc59Usecase:设置参数ID:5Briefdescription:用户设置系统运行的参数Actors:用户Preconditions:没有Mainflows:1.1如果用户选择了“软增益”

系统

温馨提示

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

评论

0/150

提交评论