1 引言
生物阻抗技术是一种无损伤的技术,测量时对人体没有任何伤害和副作用,是人体医学发展的一个方向之一。生物阻抗分析仪的机理在于:生物组织对外加电流场具有不同导电作用,当在人体表面加一固定频率的低电平电流时,含水 70 %以上的肌肉组织是良好导体,而含水较少的脂肪组织近似为绝缘体,因此通过测出阻抗值可用于计算出身体成份以及电阻抗的医学成像。
目前市场上已经有多种生物阻抗分析仪器,但成本昂贵,使用烦琐,设计复杂,难以在家庭保健方面得到普及。因此,本设计提出了新的思路并研制出一种高性能的小型生物阻抗分析仪,可以多频点测量人体各区间段的阻抗模值和相位信息。该仪器具有集成度高,成本较低,使用方便,安全可靠的优点。
2.系统硬件结构和原理
2.1系统原理
高集成度阻抗分析芯片AD5933是一个高精度的阻抗变换系统,含有一个片上频率发生器和一个12位、1MHz采样率的ADC(模数转换器)。片上频率发生器可在任意指定频率上发出激励信号,通过前置放大器的增益控制到达目标阻抗,返回的信号经ADC采样后送到片上的DSP引擎,此DSP引擎执行FFT操作,计算出每一输出频率上阻抗的实部和虚部。
本系统采用了上下位机的设计方法,整个系统全部由上位机PC通过USB发送相应命令来控制,通过PC应用程序将扫查频率起点、终点和步长设置好,通过USB接口发送到下位机,下位机解析相应的协议后,转换成对AD5933的控制指令,配置AD5933完成相应的操作,下位机则使用了ARM7内核的LPC2148芯片作为主控制器,经I2C总线控制AD5933芯片,该芯片通过四电极法的模拟前端并使用片内DSP计算出人体的特性阻抗,主控制器通过I2C接口将其取回,数据经USB接口传送至上位机PC作显示和分析,最终完成对人体阻抗模值和相位的扫频测量。同时系统在人体和PC之间采用了安全隔离措施,保证了测试人体的安全。本设计中为了方便校准测量,使用了I2C总线接口的E2PROM存储校准所获得的参数,另外本设计利用PCA9535芯片将I2C信号转为I/O信号作为控制位控制选取测量所需要的前端电极,这样就可以同时测量人体多个区间段的阻抗信息。
2.2 系统硬件结构
整个系统硬件框架如图1所示:
图1 硬件框架图
2.2.1 USB通信:
本设计采用LPC2148片上集成的USB2.0控制器来完成USB通信,该控制器支持16个逻辑端点,在设计中使用控制端点0和批量端点2,并采用全速模式进行USB通信。
2.2.2 隔离:
为保证被测生物体与PC机电压隔开,采用隔离技术,包括电源隔离和I2C信号的隔离两个部分。I2C信号的隔离采用ADUM2251,该芯片提供了一个双向通道和一个单向通道来实现I2C接口的隔离。该芯片具有很强的隔离和保护性能,额定的隔离电压为5000V,并可以持续1分钟时间。电源隔离采用DC/DC电源隔离模块,该模块内置EMI滤波单元,输入过压、过流及输出短路、过载保护电路。
2.2.3 测量前端电极:
采用了四电极法,即采用一对激励电极提供激励电流,以及一对电极测量人体上的电压降。激励电极采用了压流转换设计,将AD5933所发出的激励电压信号转换为交流恒流信号,经过电平抬升至2.5V的多频率恒流经过人体,测量电极所测得的在人体上产生的电压通过高输入阻抗和高共模抑制比的差分放大器,送至后端作AD转换处理和阻抗特性计算,保证测量的准确性。与比较简单的两电极法相比具有更好的精确程度,整个测量电极模拟前端如图2所示。
图2 四电极法模拟前端
3.软件设计
3.1 软件系统流程
软件系统流程如图3所示:
图3 软件系统流程图
3.2 下位机固件程序设计
下位机固件程序主要实现主控制器经I2C控制AD5933,E2PROM的存储,以及PCA9535的控制,通过USB与上位机通信,以及总的协调控制。
3.2.1 AD5933控制
该部分软件的主要是控制AD5933进行频率扫描并获取阻抗,测量温度等。AD5933的初始化设置参数由PC主机应用程序通过USB接口传递至下位机,下位机解析指令再通过I2C接口写入AD5933片内寄存器。
程序流程如图4所示:
图4 AD5933控制部分工作流程
3.2.2 USB数据通信
USB数据通信部分需要完成的任务包括:
(1)由主机向下位机发送各种控制命令,用于传输配置参数、启动各种操作等,并获取下位机当前的工作状态;
(2)当下位机完成扫频或温度测量时,由PC机通过USB读取测量结果。
3.3 主机设备驱动程序设计
主机端的设备驱动程序为WDM类型。USB设备的总线驱动程序主要由操作系统提供,本设计中编写的是功能驱动程序,基本组成包括:驱动程序入口例程(DriverEntry)、 即插即用例程、分发例程、 电源管理例程、卸载例程。其中分发例程主要用于处理用户软件发出的各种I/O请求,并为用户提供操纵设备的接口。用户的Win32应用程序将通过分发例程来与特定的设备进行通信。
3.4 主机端应用程序设计
主机端应用程序提供了一个人机交互的界面,用于客户控制系统硬件设备,读取下位机的各种测量结果并进行分析计算,然后以图形化的方式予以表现。主要包括USB设备接口、界面控制、校准处理、数据分析、数据存储几个功能模块。
3.4.1 AD5933的校准处理
根据AD5933原理特性,在阻抗测量时首先必须确定阻抗的范围和测试频率范围,并进行校准,通常的校准方法是选择待测阻抗范围的中点值为校准电阻值,将校准频率设定为测试频率范围的中点,在该频点计算相应的幅度因子。但是实验中发现随着频率的变化,幅度因子的值会逐渐产生偏差。
由于考虑到每次扫频的最大点数不是很多(511个),在应用程序中,本设计采用了逐点校准的方法,即对于确定的扫频范围和间隔,使用校准电阻经过扫频,测量计算每个频率点的幅度因子,并存放在一个校准数组中,从而很好的减小了该频率范围内幅度因子的偏差,在实验中取得了较好的效果。
4.实验结果
4.1 对人体左上肢+躯干+右下肢的阻抗进行测量
测量结果如图。
图5 人体阻抗测量结果
上述测量结果包含了两个测量结果,上面的曲线代表了人体阻抗模值随频率变化的情况,下面的曲线代表了人体阻抗相位随频率变化的情况,实验中频率变化的范围取为5KHz-100KHz,步进频率设为在1KHz。由图中可以发现出人体左上肢+躯干+右下肢的总阻抗在850Ω(5KHz处)到400Ω(100KHz)之间,且总阻抗值随着激励信号频率的升高而下降,与人体阻抗信息的常识是吻合的,实验结果也验证了本设计的有效性,图形化的界面也使得本设计使用操作方便,结果一目了然。测量的阻抗信息经过算法的计算,则可以测定人体的成分组成,比如脂类成分的含量多少等等。
4.2 可靠性测试
由于人体阻抗在频率50KHz的阻值在200-800欧之间,因此选取如下表所示的电阻,利用本设计测量电阻值与使用惠普4284A型LCR分析仪测量结果做一个对比:
表1 测量电阻结果
从表1可以看出本设计测量仪器在测量过程中精度误差控制在1%以内。
5.结论
本文分析了基于USB2.0的小型生物阻抗分析仪硬件原理结构,同时分析了上位机显示控制软件、USB驱动程序以及嵌入式下位机固件软件的构建和实现。该阻抗分析仪采用四电极法的激励前端,并使用了高集成度的阻抗分析芯片,不仅在成本得到了有效控制,而且在测试结果的精度上有不错的表现。USB2。0接口的采用使得该仪器具有即插即用,测量迅速准确等优点,另外使用了隔离技术也保证测试人体的安全。总之,本文在小型化生物阻抗分析仪器的设计上提供了一个新的思路和较好的构建框架。
上一篇:基于HMS30C7202处理器和CAN总线实现客车液晶显示系统的设计
下一篇:基于ARM7内核LPC2119芯片实现双向变换器的设计
推荐阅读最新更新时间:2024-11-11 11:24
推荐帖子
- 求教:MSP430F149 ADC12测量误差大
- 本帖最后由dontium于2015-1-2312:55编辑各位高手、版主,请问我用MSP430F149进行AD采样,可以测出来的数字差很多,是什么原因造成的。比如一次测得数据是1450,下一次有可能就1490了,再下一次也许是1350。大概就这范围内跑来跑去。可是手册上好像说误差是+/-1,这是怎么回事?求教:MSP430F149ADC12测量误差大本帖最后由dontium于2015-1-2312:55编辑可能是由于输入的采样信号波动太大,不是不变的。
- rgqy 模拟与混合信号
- 做了个Logic外壳,再秀
- 啥也不说了,纯秀做了个Logic外壳,再秀好稀饭不错,准备做成产品出售不?没打算,麻烦也不赚钱。如果坛友有兴趣可组织一次DIY,这个确实实用回复板凳shihuntaotie的帖子这是什么材质的,淘宝上有卖的吗自己做的,全球限量一份回复5楼36wj的帖子成本多少?合适的话,我参加DIY。人多的话,五六十块的样子。回复7楼shihuntaotie的帖子可以接受回复8楼shower.xu的帖子说了,要人多才行。人少打板都不够回复9楼
- shower.xu DIY/开源硬件专区
- 远程FPGA版本更新和重启
- 远程FPGA版本更新和重启如今,大多数通讯系统均将FPGA作为其产品解决方案,且已有大量FPGA应用到通讯系统之中。为了达到降低系统维护的成本的目的,我们就需要实现FPGA远程更新重启系统的功能。本文将以XilinxVIRTEX-6FPGA开发板为例,给大家介绍FPGA远程更新重启系统的整个配置过程。FPGA加载主要分为2大类,一类是主动模式(master)另一类是从模式(slave)。在主动模式时FPGA会外挂存储器存储FPGAbit映像,FPGA会主动提供时钟
- zx_lx Altera SoC
- 【电机传动系统控制】张永昌的pdf资料
- 求pdf资料【电机传动系统控制】张永昌的pdf资料我也想要一份!!!!
- 张锋 下载中心专版
- [分享下载]C语言编程900例及C语言视频教学BT种子(谭浩强)
- 对于C语言的初学者,这些是很有用的东东,要用的下载吧,免费分享哦C程序设计谭浩强清华大学出版社第一讲第一章C语言概述第二讲第二章程序的灵魂算法第三讲第三章数据类型、运算符与表达式第四讲第三章数据类型、运算符与表达式第五讲第三章数据类型、运算符与表达式第六讲第三章数据类型、运算符与表达式第四章最简单的C程序设计顺序程序设计第七讲第四章最简单的C程序设计顺序程序设计第八讲第四章最简单的C程序设计顺序程序设计第九讲第五章选择结
- SuperStar515 单片机
- PWM驱动电磁铁啸叫声如何解决
- 如图单片机PWM输出驱动电磁铁,但是电磁铁在50%占空比时候有啸叫声,这个要如何解决好PWM驱动电磁铁啸叫声如何解决【电磁铁在50%占空比时候有啸叫声】你的PWM频率多少?占空比不是50%就没有声音么?总体方案错误,不应该用PWM控制电磁铁,而是应该用可调电压控制。 确实,PWM控制有时候需要启动状态,实际上有时候到反应不过来 可能是频率太高了,可以降低频率试试 串联一个高频滤波电感
- stm32f103vct6 电路观察室