30基于labivew的生理参数采集系统大学毕业论文.docx
- 文档编号:9487616
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:34
- 大小:461.51KB
30基于labivew的生理参数采集系统大学毕业论文.docx
《30基于labivew的生理参数采集系统大学毕业论文.docx》由会员分享,可在线阅读,更多相关《30基于labivew的生理参数采集系统大学毕业论文.docx(34页珍藏版)》请在冰豆网上搜索。
30基于labivew的生理参数采集系统大学毕业论文
基于Labivew的生理参数采集系统
摘 要:
虚拟仪器的技术基础是计算机技术,核心是计算机软件技术。
其中最有代表性的图形化编程软件是美国NI公司推出的Labview(laboratoryvirtualinstrumentengineeringworkbench即实验室虚拟仪器工作平台)。
它是世界上第一个采用图形化编程技术的面向仪器的32位编译型程序开发系统,它的目标就是简化程序的开发工作,提高编程效率,让科学家和工程技术人员充分利用计算机的资源和强大功能,快速简捷地完成自己的工作任务,它被称为科学家与工程师的语言。
本文利用具有直观图形化编程和强大数字信号处理功能的虚拟仪器编程语言LabVIEW为开发平台,研制了一套虚拟心电信号和脉搏信号采集、记录系统。
并且能利用互联网将采集的数据上传到服务器进行显示储存和信号处理。
关键词:
心电信号,LabVIEW, 虚拟仪器, 数据采集
TheAcquisitionSystemofPhysiologicalParametersBasedonLabivew
Abstract:
Thetechnologyofvirtualinstrumentbasedoncomputertechnology,computersoftwaretechnologyisthecore.OneofthemostrepresentativeofthegraphicalprogrammingsoftwareisNIIntroducestheUnitedStatesofLabview(laboratoryvirtualinstrumentengineeringworkbenchorworkingplatformVirtualInstrumentLaboratory).Itistheworld'sfirstuseofgraphicalprogrammingtechnologyequipmentforthe32-bitcompiler-baseddevelopmentsystem,itsgoalistosimplifythedevelopmentprocesstoimprovetheprogrammingefficiency,letscientistsandengineersmakefulluseofcomputerresourcesandpower,fastsimpletocompletetheirtasks,itisknownasthelanguageofscientistsandengineers.
Inthispaper,withanintuitivegraphicalprogrammingandapowerfuldigitalsignalprocessingfunctionoftheprogramminglanguageLabVIEWvirtualinstrumentdevelopmentplatformforthedevelopmentofasetofvirtualECGsignalacquisitionandpulserecordingsystem..AnduseoftheInternetwillbeabletocollectthedatauploadedtotheserverforstorageanddisplaysignalprocessing.
Keyword:
ECG,Labivew,virtualinstrument,datacollect
目录
一.系统总体方案设计1
(一)系统框图及其模块组成结构1
(二)系统工作原理1
二.硬件电路设计2
(一)单片机系统硬件电路2
(二)串口转USB3
(三)A/D采样硬件电路4
三.程序设计8
(一)labview介绍8
(二)串口通信人机交互前面板设计9
(三)串口通信程序设计10
(1)仪器驱动程序10
(2)VISA驱动11
(四)远程控制前面板设计15
(五)远程控制程序设计17
(1)远程控制程序框图17
(2)通信模块介绍17
(3)程序框图18
四.实验测试20
(一)单片机信号采集系统调试20
(二)labview信号采集与显示系统调试20
五.结论与展望22
致谢23
英文译文26
附录A单片机程序1
附录B总程序框图3
前言
随着信息技术的不段发展,现代计算机技术和电子仪器的完美结合,产生了一种新的仪器模式:
虚拟仪器(VirtualInstrument)。
虚拟仪器的概念是美国NI公司(NationalInstrument)在20世纪80年代中期提出来的。
所谓虚拟仪器就是以计算机作为仪器统一的硬件平台,充分利用计算机的运算、存储、回放、调用、显示及文件管理等智能化功能,同时把传统仪器的专业化功能和面板控件软件化,使之与计算机结合构成一台从外观到功能都完全与传统硬件仪器相同,同时又充分享用了计算机智能资源的全新仪器系统。
Labview使用了所见即所得的可视化技术建立人机界面,提供了许多仪器面板中的控制对象,如表头、旋钮、开关及坐标平面图等。
用户可以通过使用编辑器将控制对象改变为适合自己工作领域的控制对象。
Labview提供了多种强有力的工具箱和函数库,并集成了很多仪器硬件库。
Labview支持多种操作系统平台,在任何一个平台上开发的Labview应用程序可直接移植到其它平台上。
医学电子仪器的结构主要由信号采集,信号预处理系统,辅助系统(如数据存储,反馈/控制和刺激/激励)等构成。
其中信号处理和结果记录显示可以用PC机的软件系统来完成,因此,只要提供一定的数据采集硬件,就可用PC机组建用于生理信号检测的医学电子仪器。
传统的心电记录方法主要靠心电图机来完成,其信号采集、处理和显示主要由硬件电路完成,电路生产技术要求较高,设备价格较贵,且维护和更新不便。
虚拟仪器技术的发展为改造传统的心电记录设备提供了很好的技术支持。
LabVIEW运用内嵌的TCP/IP网络通讯协议组实现远程测控系统通讯把数据从一个网络或者Internet计算机传输到另外一台计算机,实现了单个网络内部以及多个互联网络之间的通讯。
这样,科研人员和工程技术人员即使不在控制现场,也可以通过网络随时了解现场的控制系统运行情况和系统参数的实时变化,并可根据具体情况通过网络在客户计算机上对在控制现场运行于服务器计算机的控制系统发出命令,及时调整现场控制系统运行状况,从而达到远程控制的目的。
基于计算机的网络测量系统平台将会不断发展,应用也将更加广泛。
通过把复杂的TCP/IP协议封装而提供的各种网络测量技术,使得网络测量的开发变得不再复杂,同时网络测量带来的巨大效益,使得网络测量在测量自动化领域得到了广泛的应用。
利用LabVIEW强大函数功能和USB接口即插即用的方便性,结合以单片机为核心组成的小系统,可以很方便地完成数据采集及处理等功能,具有很强的工程实用性,可广泛应于测试控制领域。
本文由五章组成。
第一章为系统总方案设计,第二章为硬件电路设计,第三章为程序设计,第四章为实验测试及结果,第五章结论与展望。
一.系统总体方案设计
(一)系统框图及其模块组成结构
图1.1系统框图
(二)系统工作原理
利用STC89LE58AD内部集成AD采集数据,通过串口转USB电路将数据经USB口上传至PC机。
利用Labivew软件编写数据采集与TCP/IP传输界面实现数据波形显示与网络传输功能。
二.硬件电路设计
(一)单片机系统硬件电路
STC89LE58AD系列单片机是宏晶科技推出的新一代具有A/D转换的超强抗干扰、高速、低功耗的单片机,指令代码与传统8051单片机完全兼容,12时钟/机器周期和6时钟/机器周期可任意选择。
特点:
1.工作频率范围:
0-80MHZ;
2.用户应用程序空间8K;
3.片上集成1280字节RAM;
4.ISP(在系统编程)/IAP(在应用编程),无需专用编程器、仿真器,可直接通过串口直接下载用户程序;
5.还有片上FLASH32K,可直接用程序进行读写;
6.带有内部看门狗定时器,可有效防止程序死锁;
7.共有3个16位的定时/计数器,其中定时器0还可以当成2个8位的定时器使用;
8.外部中断4路,可选择下降沿触发中断或者低电平触发中断;
9.通用异步串口(UART),还可以通过定时器软件实现多个串口;
图2.1单片机系统硬件电路
(二)串口转USB
选用XT8811芯片,该芯片的功能是USB转RS232串行接口,是单片机和PC机通信的一种非常简便的通讯方法,只用一条USB线就可以进行ISP在线编程和传输数据了。
XT8811芯片符合USBl.1,兼容USB2.0规范;基于高速USBUARTIC,支持RS232标准串行接口,速度75bps~6Mbps;支持信号自动交换输入输出模式。
1.XT8811特性:
(1)符合USB1.1,兼容USB2.0规范
(2)基于高速USBUARTIC,支持RS232标准串行接口,速度75bps—6Mbps;
(3)支持信号自动交换输入输出模式;
(4)支持远程唤醒和电源管理;
(5)256字节的上下流缓冲;
(6)支持默认ROM和扩展EEPROM设备配置;
(7)系统支持Windows98/SEME2000XP;
(8)USB5V供电,另有+3.3V稳压输出,供外部电路使用;
(9)上位机直接对虚拟的COM口操作,实现USB与下位机的通讯,原有的232方式软件不用改动即可使用;
10)可直接对单片机通过USB接口编程,不需要额外的仿真器、编程器。
2.XT8811应用领域
(1)USB转RS232接口电路;
(2)改造已有的RS232接口的设备和仪器;
(3)基于单片机系统的USB接口设计与开发应用,可以支持5v和3.3v电路;
(4)嵌入式系统USB接口开发;
(5)低频宽音频和视频数据传输;
(6)条形码识别系统;
(7)PAD-USB数据传输;
(8)USB调制解调器;
(9)设计仪器仪表测试系统的USB接口。
图2.2XT8811电路
(三)A/D采样硬件电路
STC89LE58AD/X2在P1口,有8位精度的高速A/D转换器,P1.7—P1.0共8路电压输入型,可做键盘扫描,电池电压检测,频谱检测等。
17个机器周期可完成一次转换,时钟在40MHZ以下时。
Mnemonic
Add
Name
7
6
5
4
3
2
1
0
PL_ADC_EN
97h
允许P1.X成为A/D口
ADC_P17
ADC_P16
ADC_P15
ADC_P14
ADC_P13
ADC_P12
ADC_P11
ADC_P10
ADC_CONTR
C5h
A/D转换控制寄存器
_
_
_
ADC_FLAG
ADC_START
CHS2
CHS1
CHS0
ADC_DATA
C6H
A/D转换结果寄存器
_
_
_
_
_
_
_
_
P1_ADC_EN特殊功能寄存器:
P1.x口作为A/D转换输入通道来用允许特殊功能寄存器
A/D转换控制寄存器
ADC_P16
ADC_P15
ADC_P14
ADC_13
ADC_12
ADC_11
ADC_10
相应位为“1”时,对应的:
P1.x作为A/D转换使用,内部上拉电阻自动断开
ADD_CONTR特殊功能寄存器:
A/D转换控制特殊功能寄存器
A/D转换控制寄存器
ADC_FLAG
ADC_START
CHS2
CHS1
CHS0
CHS2/CHS1/CHS0:
模拟输入通道选择,CHS2/CHS1/CHS0
CHS2
CHS1
CHS0
AnalogInputChannelSelect
模拟输入通道选择
0
0
0
选择P1.0作为A/D输入来用
0
0
1
选择P1.1作为A/D输入来用
0
1
0
选择P1.2作为A/D输入来用
0
1
1
选择P1.3作为A/D输入来用
1
0
0
选择P1.4作为A/D输入来用
1
0
1
选择P1.5作为A/D输入来用
1
1
0
选择P1.6作为A/D输入来用
1
1
1
选择P1.7作为A/D输入来用
ADC_START:
模拟/数字转换(ADC)启动控制位,设置为1时,开始转换.
ADC_FLAG:
模拟/数字转换结束标志位,当A/D转换完成后,ADC_FLAG=1.
ADC_DATA:
特殊功能寄存器:
A/D转换结果特殊功能寄存器
A/D转换结果寄存器
-
-
-
-
-
-
-
-
0000,0000
模拟/数字转换结果计算公式如下:
结果=256*Vin/Vcc
Vin为模拟输入通道输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。
AD采样程序如下所示:
INT8Uget_AD_result(INT8Uchannel)
{
INT8UAD_finished=0;//存储A/D转换标志
ADC_DATA=0;
ADC_CONTR=channel;//选择A/D当前通道
delay
(1);//使输入电压达到稳定
ADC_CONTR|=0x08;//0000,1000令ADC_START=1,启动A/D转换
AD_finished=0;
while(AD_finished==0)//等待A/D转换结束
{
AD_finished=(ADC_CONTR&0x10);//0001,0000,ADC_FLAG==1测试A/D转换结束否
}
ADC_CONTR&=0xF7;//1111,0111令ADC_START=0,关闭A/D转换,
return(ADC_DATA);//返回A/D转换结果
}
串口通信程序:
voidinitiate_RS232(void)//串口初始化
{
ES=0;//禁止串口中断
SCON=0x50;//8位数据位,无奇偶校验
T2CON=0x34;//由T2作为波特率发生器
RCAP2H=0xFF;//时钟11.0592MHz,9600波特率
RCAP2L=0xDB;
ES=1;//允许串口中断
}
voidSend_Byte(INT8Uone_byte)//发送一个字节
{
TI=0;//清零串口发送中断标志
SBUF=one_byte;
while(TI==0);
TI=0;//清零串口发送中断标志
}
三.程序设计
(一)labview介绍
虚拟仪器的技术基础是计算机技术,核心是计算机软件技术。
其中最有代表性的图形化编程软件是美国NI公司推出的Labview(laboratoryvirtualinstrumentengineeringworkbench即实验室虚拟仪器工作平台)。
它是世界上第一个采用图形化编程技术的面向仪器的32位编译型程序开发系统,它的目标就是简化程序的开发工作,提高编程效率,让科学家和工程技术人员充分利用计算机的资源和强大功能,快速简捷地完成自己的工作任务,它被称为科学家与工程师的语言。
虚拟仪器(virtualinstrumention)是基于计算机的仪器。
计算机和仪器的密切结合是目前仪器发展的一个重要方向。
粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。
随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。
另一种方式是将仪器装入计算机。
以通用的计算机硬件及操作系统为依托,实现各种仪器功能。
虚拟仪器主要是指这种方式。
虚拟仪器的主要特点有:
1.尽可能采用了通用的硬件,各种仪器的差异主要是软件。
2.可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。
3.用户可以根据自己的需要定义和制造各种仪器。
虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。
虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。
目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。
虚拟仪器的起源可以追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。
PC机出现以后,仪器级的计算机化成为可能,甚至在Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。
对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。
目前LabVIEW的最新版本为LabVIEW8.6,LabVIEW8.6为多线程功能添加了更多特性,这种特性在1998年的版本5中被初次引入。
使用LabVIEW软件,用户可以借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEWReal-Time工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。
虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。
目前使用较多的是IEEE488或GPIB协议。
未来的仪器也应当是网络化的。
LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:
其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。
LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。
LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。
LabVIEW(LaboratoryVirtualinstrumentEngineeringWorkbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。
LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。
它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。
这是一个功能强大且灵活的软件。
利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。
图形化的程序语言,又称为“G”语言。
使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。
它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。
它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。
使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。
利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位编译器。
像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。
虚拟仪器的技术基础是计算机技术,核心是计算机软件技术.
(二)串口通信人机交互前面板设计
LabVIEW开发平台下编制的程序称为虚拟仪器程序,简称为VI。
VI包括三个部分:
前面板程序、框图程序和图标/连接器。
前面板程序的功能是实现信号采集的控制、处理和直观表达;框图程序程序乃系统程序的图形化源代码,主要包括函数、结构和代表前面板上各控制对象和显示对象的端子以及连线等,用于实现对信号的采集处理和分析等操作。
本文界面如下图3.1所示。
图3.1信号采集显示界面
如图所示,界面分为两个部分,左面部分可以设置波特率,数据位,停止位,采样方式等。
右边可以显示采样到的波形。
(三)串口通信程序设计
(1)仪器驱动程序
VISA配置串口计算机与仪器进行通信的方式有两种:
一种是基于寄存器的通信方式,另一种是基于消息的通信方式。
具体采用哪种方式由仪器本身决定。
PXI和VXI仪器都采用寄存器的通信的方式,使用这种方式可以在一个较低层次直接对仪器的控制寄存器读写二进制信息。
GPIB,串口,USB和一些VXI仪器使用基于消息的通信格式,对这些仪器发送的命令和读回的数据都是高层次ASCII的字符串,仪器本身具有处理负责解析字符串命令和发送字符串数据的功能。
若直接通过底层的通信方式与仪器通信,用户必须知道寄存器的配置或消息的具体格式。
这就加大了用户开发系统的工作量,仪器驱动的目的就是解决这个问题。
仪器驱动程序是一个包括高层函数的库,这些高层次函数支持控制某个仪器或某个仪器族。
一个仪器驱动程序是一个软件历程集合,该集合对应于一个计划的操作,例如配置仪器,从仪器读取,向仪器写入和出发仪器等。
他将底层的通信命令或寄存器配置等封装起来,用户只需要调用封装好的函数库就能轻松实现对应于该仪器的任何功能。
通过提供方便编程的高层次模块化库,用户不在需要学习复杂的可能某个一起专用的底层编程协议。
而且,对于同类的仪器,仪器驱动程序具有通用的结构和API,所以一旦选择了一个仪器,使用另一个仪器驱动程序将非常容易。
(2)VISA驱动
为了满足仪器控制和测试应用的不同需求,存在两种不同类型的仪器驱动程序,即插即用驱动程序和IVI驱动程序。
通过一个标准的,适用所用驱动程序的简单编程模型,即插即用仪器驱动程序简化了仪器的控制和与仪器的通信。
可互换虚拟仪器(IVI)驱动程序是为了解决复杂的仪器驱动程序。
虚拟仪器软件架构(VirtualInstrumentsSoftwareArchitecture,VISA)是VX&play系统联盟最重要的成果之一。
它的目的是通过减少系统的建立时间来提高效率。
通过调用相同的VISA库函数并配置不同的设备参数,就可以编写控制各种I/O接口仪器的通用程序。
解决了每一种硬件接口都要编写不同的程序的问题。
通过VISA用户能与大多数一起总线连接,包括GPIB,USB,串口,PXI,VXI和以太网。
本设计是与USB连接。
VISA的另一个显著优点是其平台可移植性。
任何调用VISA函数的程序可以很容易地移植到其他平台上。
VISA定义了自己的数据类型,就避免了譬如当移植程序是由于整数类型大小不一致导致的问题。
LabVIEW提供了功能强大的VISA库。
VISA(VirtualInstrumentSoftwareArchitecture)——虚拟仪器软件规范,是用于仪器编程的标准I/O函数库及其相关规范的总称。
VISA库驻留于计算机系统中,完成计算机与
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 30 基于 labivew 生理 参数 采集 系统 大学毕业 论文