DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 518|回复: 0
打印 上一主题 下一主题

[工仪] ARM在脉象仪系统中的应用

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-16 18:44:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                    ?
  1 引言
  指脉搏应指的强弱、流畅等趋势。脉势包含着多种因素,如脉动的轴向和径向力度;主要有由心脏和阻力影响所产生的流利度;由血管弹性和张力影响而产生的紧张度等。每次诊脉均应诊察脉动势力的强弱及流畅程度。正常脉象,应指和缓,力度适中。应指有力为实脉;应指无力为虚脉;通畅状态较好,脉来流利圆滑者为滑脉;通畅状态较差,脉来艰涩不畅者为涩脉等。为了促进脉诊的应用和发展,必须与现代科技相结合,实现更科学、客观的诊断。随着嵌入式技术的飞速发展,我们研制出一种基于ARM920T处理器的新型脉象仪。它采用一款ARM920T核的高速处理器S3C2410.该新型脉象仪具有成本低,体积小,可靠性高和操作简单等优点,适用于个人和中小医院的脉象诊断用途。
  2 系统总体设计思想
  按照中医脉诊的理论,从左右手腕的寸、关、尺三部按不同的轻重可获知人体五脏六腑的病理变化,模拟中医脉诊过程,设计中医脉象仪。脉象仪原理图如图1所示。



图1 脉象仪原理图
  应变式传感器是基于测量物体受力变形所产生的应变的一种传感器。电阻应变片则是其最常采用的传感元件。它是一种能将机械构件上应变的变化转换为电阻变化的传感元件。在测试时,将应变片用粘合剂牢固地粘贴在被测试件的表面上,随着试件受力变形,应变片的敏感栅也获得同样的变形,从而使其电阻随之发生变化,而此电阻变化是与试件应变成比例的,因此如果通过一定测量线路将这种电阻变化转换为电压或电流变化,然后再用显示记录仪表将其显示记录下来,就能知道被测试件应变量的大小
  应变式传感器是脉象仪普遍采用的一类传感器。某些固体材料受到外力的作用后,其电阻率要发生变化,这种由于应力的作用而使材料电阻率发生变化的现象称为压阻效应。半导体应变片测量应变的原理是以半导体晶体的压阻效应为基础的。用此应变片制成的传感器称为半导体应变式传感器。传感器结构图如图2所示,上下各一片半导体应变片。



图2 传感器结构图
  应变式传感器的基本组成部件包括:应变片、弹性元件、测量电桥。本文中选用悬壁梁式压力传感器,应变片采用半导体应变片。
  3 系统硬件模块设计
  3.1 嵌入式处理器的选择
  嵌入式微处理器是由通用计算机中的CPU演变而来的。它的特征是具有32位以上的处理器,具有较高的性能,当然其价格也相应较高。但与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。
  系统采用了ARM920T作为系统与上位机沟通的桥梁。该实验箱如图3所示。




图3 ARM920T实验箱图
  ARM920T有如下几个主要特点:处理器有高性能的RISC构架;大量的内部寄存器让它的执行效率非常高,使它成为实时控制设备的理想选择。片上的Flash可在线编程。
  片上资源包括2个32位定时器;1个A/D输入接口;18个多功能I/O接口;1个CPLD;1个64M的SDRAM;1个4M的Flash;1个64M 的Nand Flash控制器;还有中断控制器和系统管理器。
  处理器采用芯片S3C2410.S3C2410有出色的内核性能,丰富的外部接口和低功耗。在系统中我们用到2种内存,一种SDRAM,一种Flash.
  SDRAM具有运行速度快的优点,但是掉电后不能保存数据。所以在系统主要是用来运行操作系统、应用程序和各类数据的缓存。
  Flash内存较SDRAM运行速度慢。但掉电后能保存数据。在该系统设计中选用一种通用的Flash (SST39VF1601),容量为2MB,主要用于固化启动代码和控制应用程序,并保存一些系统数据。
  3.2? A/D转换
  A/D转换电路采用MAXIM公司的MAX197,MAX197采用逐次逼近技术以达到快速变换和低功耗。如图4所示。



图4 MAX197
  预处理电路包括了电流电压互感器、隔离电路和同步采样电路,可以将信号转换成MAX197相匹配的量值。图4所示的电路采用了内部时钟。 和 逻辑输入端用于启动变换和从器件读出数据。
  4 系统软件设计
  为了满足系统对实时性和安全性的要求,系统采用了嵌入式操作系统uClinux.一方面它继承了linux的稳定性优点,另一方面其内核相当精简。因此在嵌入式领域得到广泛应用。
  该脉象仪系统的软件主要由三个部分组成,系统软件结构如图5所示,包括嵌入式linux操作系统,A/D驱动程序和应用程序。



图5 系统软件结构
  4.1 嵌入式uClinux的构建
  uCLinux是一种优秀的嵌入式Linux版本,是micro-CONrol-Linux的缩写。它秉承了标准Linux的优良特性,经过各方面的小型化改造,形成了一个高度优化的、代码紧凑的嵌入式Linux.虽然它的体积很小,却仍然保留了Linux的大多数的优点:稳定、良好的移植性、优秀的网络功能、对各种文件系统完备的支持和标准丰富的API.它专为嵌入式系统做了许多小型化的工作,目前已支持多款CPU.其编译后目标文件可控制在几百KB数量级,并已经被成功地移植到很多平台上。
  将嵌入式uClinux系统移植到特定的硬件平台上,大致需要完成建立叉编译环境,配置编译uClinux内核,制作根文件系统,下载和调试内核四部分的工作。
  4.2? A/D驱动程序的设计
  在uClinux系统下,驱动程序可以看成uClinux内核与外部设备之间的接口。驱动程序向应用程序屏蔽了硬件实现上的细节。可以使用和操作文件中相同的系统调用接口函数来完成对硬件设备的打开,关闭,读,写以及I/O控制操作。
  本系统中的A/D驱动程序主要结构包括:
  (1)数据类型定义文件
  #define U32? unsigned int
  #define U16? unsigned short
  #define S32? int
  #define S16? short int
  #define U8?? unsigned char
  #define S8?? char
  #define TRUE?????? 1
  #define FALSE????? 0
  #define ERROR????? 0
  (2)启动A/D转换文件
  void INT_ADC_Enable(int flag)
  {
  int temp;//定义临时变量
  if(flag == FALSE)
  {
  temp = rINTSUBMSK;
  temp |=(1《10);
  rINTSUBMSK = temp;
  temp = rINTMSK;
  temp |=0x80000000;
  rINTMSK = temp;
  }
  else
  {
  temp = rINTSUBMSK;
  temp = 0x5ff;
  rINTSUBMSK = temp;
  temp = rINTMSK;
  temp &= "(0x80000000) ;
  rINTMSK = temp;
  }
  }
  (3)主程序文件
  #include "2410addr.h"//调用S3C2410地址头文件
  #include "def.h"//调用数据类型头文件
  main()
  {
  clrsrc();//刷新操作
  INT_ADC_Enable(int flag);//启动A/D转换
  … …
  }
  4.3 应用程序的设计
  应用程序是实现系统所需功能的核心部分,主要是A/D采样分析。该部分主要负责对采集到的脉象模拟信号进行数模转换,并根据脉象的时域和频域特征进行分析脉象图的结构。
  5 结束语
  本文作者创新点是,与传统的中医脉象仪相比,基于ARM的脉象仪具有高性能,低成本,电路简洁可靠和扩展性好等优点。嵌入式uClinux的引入保证了系统稳定和运行的可靠。ARM技术将计算机硬件和软件有机的融为一体,它使测试设备简单化,软件设计变得更加灵活,具有无比的优越性。ARM技术应用于脉象仪具有很高的应用价值和良好的市场前景,值得我们深入研究。


            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-5-20 19:41 , 耗时 0.088225 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表