打印

【转】心电脉搏血氧血压多参数便携式监护仪

[复制链接]
3212|41
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zb0830|  楼主 | 2015-5-24 23:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本设计以可编程片上系统PSOC4微控制器为核心,以简单外围电路为辅助的创意设计,主要完成心电、脉搏血氧和血压模拟信号采集及处理系统的方案设计、并实现了硬件和软件设计。前端采集电路是关键部分,主要完成信号的正确提取。PSOC4完成模拟信号的 A/D 转换、SD卡存储、Bluetooth通信、系统菜单选择Capsense控制及LCD显示等功能。实现了以PSOC4为核心系统的心电波形信号、心率测量显示,血氧脉搏信号测量显示和人体血压测量显示,通过Bluetooth与PC机、Bluetooth与Mobile Telephone通信的多参数便携式监护仪产品设计。
沙发
zb0830|  楼主 | 2015-5-24 23:28 | 只看该作者
PSOC4具有丰富的片上资源,可视化图形编程模式,可灵活配置,易扩展,功能强大,高可靠性为本产品设计提供了快速开发应用和极大地缩短了本项目研发周期。
本设计能比较好地完成了预期的设想,并初步实现了硬件系统和软件系统的设计,完成了系统调试。经测试结果证明,基本达到了产品设计要求。

使用特权

评论回复
板凳
zb0830|  楼主 | 2015-5-25 22:40 | 只看该作者
111

193202zi2i4bxi23y3qq8i.png (214.03 KB )

193202zi2i4bxi23y3qq8i.png

使用特权

评论回复
地板
zb0830|  楼主 | 2015-5-25 22:41 | 只看该作者
2222

193420j622dhf47fqsshe6.png (355.71 KB )

193420j622dhf47fqsshe6.png

使用特权

评论回复
5
zb0830|  楼主 | 2015-5-25 22:41 | 只看该作者
本设计使用了PSoC4上的硬件资源有:
<1>RGB LED中的P1.6-Red Led,应用于系统工作指示灯;
<2>Capsense中的P1.1,P1.3,P1.5,分别应用于选择触摸按键和确定触摸按键;
<3>I/O P4.0蓝牙串口RXD,P4.1蓝牙串口TXD;
<4>I/O P0.3 LCD液晶显示背光灯PWM控制;
<5>I/O P1.4 蜂鸣器控制引脚;
<6>I/O SPI LCD引脚分配, P0.6-LCD_CLK, P0.7-LCD_CS,P3.0-LCD_MOSI, P3.1-LCD_MISO, P3.4-LCD_DC, P3.6-LCD_RST;<7>I/O 打印机控制引脚,P0.0-Pr_STB,P0.1-Pr_ACK,P0.2-Pr_BUSY,P2.7-Pr_Bit7,P2.6-Pr_Bit6,P2.5-Pr_Bit5,P2.4-     Pr_Bit4,P0.5-Pr_Bit3,P2.2-Pr_Bit2,P0.4-Pr_Bit1,P2.0-Pr_Bit0;
<8>I/O 脉搏血氧红光和红外光控制引脚,P3.5,P3.7;
<9>I/O 心电信号采集ADC模拟输入引脚P2.3;
<10>I/O 脉搏血氧信号采集ADC模拟输入引脚P2.1;
<11>I/O 血压传感器信号采集ADC模拟差分输入引脚P1.0和P1.7;

使用特权

评论回复
6
zb0830|  楼主 | 2015-5-25 22:41 | 只看该作者
1、多参数便携式监护仪硬件说明,如图(2):
<1> LCD显示屏,Driver IC ILI9341,Size 2.2 inch,Color Depth 262K/65K,Resolution 240(RGB) x 320,Interface 4-Wire SPI, Viewing Direction 6 o’clock,LCM (W x H x D) (mm) 40.10x55.20x2.35,Active Area(mm) 33.84x45.12,LED Numbers 4 LEDs。<2> 蓝牙通信接口,连接蓝牙无线模块,与PC机,手机实时数据传输,波形显示存储等。
<3> 血压气泵和气阀控制接口,输出两路电压分别控制气泵打气和气阀放气。
<4> 气压传感器,主要采集充气气压和人体脉搏跳动压力变化信号。
<5>脉搏血氧传感器探头接口,连接光电传感器。
<6>心电信号采集接口,连接心电导联线。
<7>打印机接口,用于控制打印机实时打印心电波形和脉搏血氧波形。
2、气泵和气阀模块,如图(3):

使用特权

评论回复
7
zb0830|  楼主 | 2015-5-25 22:42 | 只看该作者
气泵和气阀模块组成和控制方式都比较简单,直接控制电机正转就可以充气,气阀则是根据血压传感器采集到的压力信号大小来逐级放气过程。

193905dj3tdez5ns4vjdd5.png (364.78 KB )

193905dj3tdez5ns4vjdd5.png

使用特权

评论回复
8
zb0830|  楼主 | 2015-5-25 22:42 | 只看该作者
3333

193905dj3tdez5ns4vjdd5.png (90.42 KB )

193905dj3tdez5ns4vjdd5.png

使用特权

评论回复
9
zb0830|  楼主 | 2015-5-25 22:43 | 只看该作者
44444

194026v3gr8gzv99gb5nes.png (56.13 KB )

194026v3gr8gzv99gb5nes.png

使用特权

评论回复
10
zb0830|  楼主 | 2015-5-25 22:43 | 只看该作者
原理图和PCB设计也相对比较简单,因为PSOC4已经集成了好多片上模拟和数字资源,使得外部电路设计变得更加简洁,扩展也非常灵活,效率得到了提高。
2、数字信号处理和算法设计平台:Matlab,如图(5)。外围电路设计得相对简单,但要想产品功能和性能得到更大提高,软件设计是关键,特别是一些算法的设计处理,跟产品设计的成功有密切关系。本设计所用到算法有:心电信号低通滤波,高通滤波,带通滤波,带阻滤波,平衡滤波,抗基线漂移滤波算法,抗肌电干扰滤波算法,心率计算处理算法等。借助Matlab数学软件来进行数字信号处理和算法设计是一种高效率的方法。

使用特权

评论回复
11
zb0830|  楼主 | 2015-5-25 22:43 | 只看该作者
55555

194348g0krzbvgeglebben.png (62.96 KB )

194348g0krzbvgeglebben.png

使用特权

评论回复
12
zb0830|  楼主 | 2015-5-25 22:44 | 只看该作者
从刚开始使用PSoC Creator2.0到2.1,2.2到3.0,这一路试用过来,特别是PSoC Creator3.0,颇有感触。PSoC Creator 3.0显著改善了集成固件编辑器,并允许导出到主要的ARM IDE。这样就可以在IAR和KeilMDK中进行二次开发,PSoC Creator 3.0拓充了PSoC解决方案的功能,简化了软硬件协同设计的流程,如采用新引入的通用数字模块(UDB)编辑器,还具有定制PSoC Components的能力。总的来说,PSoC Creator 3.0在各个功能进行了全面升级,使得设计者在开发过程中应用得更加灵活!
    现在来分析一下软件设计,找到项目工作空间,双击并打开,打开“TopDesign.cysch”顶层设计原理图,即可看到如图(6)的界面,软件的文件结构如图(7),图(8)是PSoC4 Pioneer Kit的引脚分布情况,结合硬件来设计原理图和软件感觉比较直观。

使用特权

评论回复
13
zb0830|  楼主 | 2015-5-25 22:45 | 只看该作者
fff

194458h4mz9a3gzuhqujzq.png (46.32 KB )

194458h4mz9a3gzuhqujzq.png

使用特权

评论回复
14
zb0830|  楼主 | 2015-5-25 22:46 | 只看该作者
xxxx

194458h4mz9a3gzuhqujzq.png (70.37 KB )

194458h4mz9a3gzuhqujzq.png

使用特权

评论回复
15
zb0830|  楼主 | 2015-5-25 22:46 | 只看该作者
PSoC Creator顶层原理图设计是其它IDE无法媲美的,可视化编程和灵活的引脚分配让每一个设计者都可以轻松完成每一个项目设计。设计好原理图即可调用相应API函数实现功能应用,而本项目正是在这基础上让项目设计的更加完美。顶层设计由7大模块组成,如图(9)分别是:
<1>串口蓝牙模块,应用了“UART (SCB mode)”组件,实现跟蓝牙模块连接通信。
<2>Capsense是Creater组件中最强大的模块之一,不但好用而且很容易入手,通过右击即可打开其Datasheet,说明也很详细,应用起来非常方便,可以实现很多自己想要的功能。

使用特权

评论回复
16
zb0830|  楼主 | 2015-5-25 22:46 | 只看该作者
<3>3通道ADC模块,PSOC4集成的序列逐次逼近SAR ADC功能更是强大,双击SAR ADC组件即可配置自己想要的功能,无论是采样时间,ADC参考电压,多通道采样还是单端输入或是差分输入都可以灵活配置。最好用的就是ADC差分输入,在项目设计中可以替代了一个差分放大电路,好多应用都可以进行界面设置。这一次采样了两个单端ADC输入和一个差分输入,差分输入主要是连接气压传感器,再加上PSOC4内部的两个运放跟随,气压传感器直接挂在IO口上面了。这模块里面应用到了一个PWM组件,主要是用来触发ADC采样的。
<4>WM主要完成了LCD背光灯控制,让液晶显示效果更加人性化,利用PWM控制背光灯也可以降低产品功耗带来的问题。

使用特权

评论回复
17
zb0830|  楼主 | 2015-5-25 22:47 | 只看该作者
<5>LCD显示模块,采用6线SPI模式的LCD控制节省了PSOC4的IO口开销,这也得益于PSOC集成有高速的SPI组件,液晶界面显示也比较令人满意。
<6>打印模块使用了PSOC上的ControlReg数字组件,这一组件比较简单,有数字电路基础的都可以直接应用了。
<7>系统工作指示灯和蜂鸣器没什么难度,指示灯工作直接调用SystemTick相关函数配置一下即可,蜂鸣器则是让IO口直接输出高低电平驱动。

使用特权

评论回复
18
zb0830|  楼主 | 2015-5-25 22:47 | 只看该作者
dsafdsfds

1945534bham4bq4x4ncg4x.png (96.69 KB )

1945534bham4bq4x4ncg4x.png

使用特权

评论回复
19
zb0830|  楼主 | 2015-5-25 22:47 | 只看该作者
4、软件文件结构说明:由于源文件代码比较多,现贴出部分函数,其它代码可在工程项目中看到。
<1>main函数模块,程序执行的开始。程序如下:
#include <project.h>
#include "LCD\LCD.h"
#include "Micro_SDCard\Micro_SD.h"
#include "rinter\Printer.h"
#include "ECGWavePro\ECGWavePro.h"
#include "UartMaster\UartMaster.h"
#include "SPo2WavePro\SPo2WavePro.h"
#include "SystemFlash\PSystemFlash.h"
#include "ButtonMenu\ButtonMenu.h"

使用特权

评论回复
20
zb0830|  楼主 | 2015-5-25 22:48 | 只看该作者
nt main(void)
{        
CyGlobalIntEnable; //打开全局中断        
SPI_Start();        //启动SPI组件   
UART_Start();       //启动串口组件   
CapSense_Start();   //启动电容触摸组件   
PWM_LCD_Start();    //启动PWM组件   
MyPWM_Init();         //初始化,配置TCPWM和启动TCPWM520bytes   
//SD_Init();          //SD卡初始化   
LCD_Initialize();       //LCD初始化,并清屏为黑色 568bytes   
LCD_MainDisplayInit();  //开机界面        898bytes   
UartMaster_Init();      //串口初始化,发送命令跟上位机建立连接 6bytes   
PSystemFlash_Init();    //系统闪烁LED,systick初始化 176bytes   
ButtonMenu_Init();      //显示菜单界面 6bytes    //通过扫描所有的传感器,加载含初始值的CapSense_SensorBaseline[]数组。   
CapSense_InitializeAllBaselines();     
for(;;)
{      
       ButtonMenu_MainLoop();    //进入菜单界面   
}
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

879

帖子

2

粉丝