便携式人体脉搏检测系统(2)

本文介绍使用LabVIEW进行串口通信的基本步骤,包括配置、读写和关闭串口。详细解释了如何通过VISA接口实现串口数据读取,并展示了数据处理流程,如波形构建、频率测量、三点法和多周期计数法的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LabView串口通信

LabView通过VISA能与GPIB、USB、串口等大多数仪器总线连接。

4
一般的串口控制步骤是:

  • 配置串口;
  • 读写串口;
  • 关闭串口。

配置串口

1
具体实例如下所示:
2
图下方的while循环表明,如果没有选择端口,则不可读取数据。

数据读取处理

3

  • 首先读取数据;
  • 显示出数据所描述的波形,得出单频测量模块的频率测量值;
  • 用三点法得出测量频率值;
  • 多周期计数法计测量脉搏信号;
  • 对测量所得数据处理及显示。
1. bytes at port确定字节数

5

这个组合的功能是,读取VISA串口已有的全部数据。组合的前面,是 VISA 串口字节数,函数路径见上图。bytes at port 利用一个读取缓冲区字节数,读取到字节数,确定了 VISA要 读取的字节数,然后再通过读取 VISA 读出来。简而言之,前面的先侦测下串口缓冲区有多少数据,侦测完后告诉 VISA 读,VISA就全读出来。

2.Build Waveform

6

读取数据后波形出来是个簇,包含三个分量:Y是波形数据,dt是时间间隔。
构建波形后,通过后面的测量模块可得到脉搏测量频率。

3.延时模块

8

此部分是为了释放电脑核心,一个循环会占用CPU的一个核心,如果不加掩饰,配置低的电脑容易卡死。

4.交流电路参数测量——三点法

7

这里采用时域方法——三点法处理。
三点法:建立在三角函数变换基础上的数据拟合方法。

  • 假设被测函数是正弦函数,在等间隔采样的前提下(包括非整周期采样)可以利用相邻3个数据样本,导出求解信号频率的线性方程,进而拟合出方程系数,最后求出频率。
  • N个样本,最小二乘法拟合可以得到一个较准确的cosθ。
  • 函数:Linear Fit Coefficients。

9

一言以蔽之,取数组里面的3个数,将数1和数3相加,其作为曲线拟合的X,再把数2乘2作为曲线拟合的Y,得出斜率后,再做反余弦,反余弦后乘缩小100(采样频率)的两倍π,最后得出结果。

5.交流电路参数测量——多周期计数法产生方波信号

11

采用多周期计数法,可以采用阈值法,将脉搏信号转化成方波信号,再进行后续处理。
数组的数量为for循环的次数,而后均值与数组中的数做比较,均值若大于数组中数则输出布尔值T,否则为F,从而后构建成方波信号。

6.交流电路参数测量——多周期计数法判断信号开始结束

10

多周期计数法还需要判断一个周期的开始和结束,可采用过零法和阈值法,此例采用阈值法。若数组相邻索引值正好构成一个周期内的方波信号,则给选择结构的条件为真,输出索引数据,反之输出0。

7.交流电路参数测量(4)

13

  • 数组索引的数相即为最终采样数据,相邻两个样本的差值即为当前周期的样本数,乘以采样周期,再取倒数,即为一个周期内的样本数。
  • 然后取多个周期,再取均值,即作为最后的频率测量值。
    m个周期的均值:

17

  • 每分钟脉搏次数 = 脉搏频率 × 60s。
8.结束程序

12
因为整个程序有两个循环,但只有一个结束按钮,如果直接挂局部变量,会报布尔动作的错误,所以采用此种形式。

关闭串口

14
关闭串口,即通信结束。

整体展示

  • 前面板

19

  • 后面板

16

此程序整体采用顺序结构,把演示放在帧里还有一个好处是,循环开始时,先延时在开始后面循环里的程序。


END!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值