专利分类
专利分类

Android平台的跑步健身系统及其数据处理方法专利

专利号:201610985224.1

销售价
1500
Android平台的跑步健身系统及其数据处理方法专利二维码
  • 累计销量0
  • 浏览次数48
  • 累计评论0
首页

专利名称:基于Android平台的跑步健身系统及其数据处理方法

技术领域:Android,跑步,健身

IPC主分类号:A63B24/00

申请号:CN201610985224.1

公开日:2019-05-14

说明书

一种基于Android平台的跑步健身系统及其数据处理方法

技术领域

[0001] 本发明属于电子技术领域,尤其涉及一种基于Android平台的跑步健身系统及其数据处理方法。

背景技术

[0002] 随着技术的发展,各种各样的可穿戴设备逐渐开始普及,其中智能手环一直是一种最常见的可穿戴设备。现有的可穿戴设备(例如智能手环)大多设有计步电路、蓝牙通讯电路,以通过蓝牙连接移动终端(可以为智能手机、平板电脑、PDA等基于Android操作系统的设备),并通过移动终端对计步电路的输出信号进行统计以获取跑步健身数据。其中,跑步建设数据是指一切的运动相关的数据,例如步行、跑步、健身等。
[0003] 现有的智能终端在通过可穿戴设备的计步电路获取信号后,通常需要对信号进行相应处理以实现计步。但是消费者普遍会觉得计步数据并不准确,这主要是由于可穿戴设备为了确保低成本、小型化、长时间待机,需要牺牲各种硬件的性能。但是现有技术中又无法通过有效的方法在智能终端侧进行精细化计步计算,因此导致最终的跑步健身数据不准确。
[0004] 现有技术中最常见的一种计步算法就是如图1所示的,简单的利用事先确定好的阈值来确定。该算法利用事先划定的阀值空间(图中标为A),将采集到的加速度波形分为运动区和非运动区两部分:对处于非运动区的数据将不做处理;对于处于运动区域的数据则进行波谷检测,并将检测到的波谷数(图中的黑色圆点)记作跑步累计步数。这种已有算法实现起来非常简单、计算量低;但是存在着识别率低、统计数据不准确、极易受外界不稳定因素影响等缺点。

发明内容

[0005] 针对现有技术中存在的跑步健身数据不准确的问题,本发明要解决的技术问题是提供一种基于Android平台的跑步健身系统及其数据处理方法,无需对可穿戴设备进行改造就可以通过移动终端侧的软件来提高计步精度。
[0006] 为了解决上述问题,本发明实施例提出了一种基于Android平台的跑步健身系统及其数据处理方法,所述方法包括准备流程、计步流程、运动相关数据计算流程、状态识别流程、生理参数监测流程。所述系统包括可穿戴设备和智能终端,其中所述智能终端通过内置的应用程序实现所述准备流程、计步流程、运动相关数据计算流程、状态识别流程、生理参数监测流程;其中所述可穿戴设备包括:蓝牙数据通讯电路、计步电路、心电信号采集电路、体温检测电路、通知电路、供电电路。
[0007] 本发明的上述技术方案的有益效果如下:本发明实施例提出了一种基于Android平台的跑步健身系统及其数据处理方法,能够内置在移动终端内,配合可穿戴设备实现各种功能,且无需更改可穿戴设备就可以确保数据的准确性。

附图说明

[0008] 图1为本发明实施例中计步的原理图;
[0009] 图2为本发明实施例中准备流程和计步流程的流程图;
[0010] 图3为计步流程中判断流程图;
[0011] 图4为记录计步数据的示意图;
[0012] 图5为本发明实施例中运动轨迹绘制流程的流程图;
[0013] 图6a和图6b为利用本发明实施例的运动能耗计算步骤计算得到的步行、跑步的结果与实际值的对比图;
[0014] 图7为静止状态下可穿戴设备的输出数据;
[0015] 图8为行走状态下可穿戴设备的输出数据;
[0016] 图9为跑步状态下可穿戴设备的输出数据;
[0017] 图10为滤波步骤的流程图;
[0018] 图11为QRS波检测步骤的流程图;
[0019] 图12为QRS波群位置确定的示意图;
[0020] 图13为R波波峰所在位置确定的示意图;
[0021] 图14为Q波波峰、S波波峰所在位置确定的示意图;
[0022] 图15为QRS波群的波峰位置确定的示意图;
[0023] 图16为心律失常诊断的流程图;
[0024] 图17为本发明实施例的蓝牙数据通讯电路的电路图;
[0025] 图18为本发明实施例的计步电路的电路连接结构图;
[0026] 图19为本发明实施例的心电信号采集电路的电路连接结构图;
[0027] 图20为图19中的模拟地AGND与数字地GND之间采用了缓冲电感以实现一点接地的电路结构图;
[0028] 图21为本发明实施例的智能手环的体温检测电路的电路连接结构图;
[0029] 图22为本发明实施例的通知电路的蜂鸣器电路的电路连接结构图;
[0030] 图23为本发明实施例的通知电路的震动马达电路的电路连接结构图;
[0031] 图24为本发明实施例的通知电路的LED闪烁电路的电路连接结构图;
[0032] 图25为本发明实施例的供电电路的充电模块的电路图;
[0033] 图26为本发明实施例的供电电路的供电模块的电路图;
[0034] 图27为温度值读取流程。

具体实施方式

[0035] 为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0036] 本发明实施例提出了一种配合智能手环使用以提高计步精度的基于Android平台的跑步健身数据系统及方法。
[0037] 其中,所述方法可以包括准备流程、计步流程、运动相关数据计算流程、状态识别流程、生理参数监测流程。
[0038] (一)准备流程如图2所示的包括:
[0039] 步骤11、与可穿戴设备建立蓝牙连接;步骤1主要是用来为智能手环与智能终端之间的数据传输建立通道;其中,智能手环与智能终端这两个设备的连接需要首先开启一个BluetoothServerSocket server,其中基于Android的智能终端中使用listenUsingRfcommWithServiceRecord(String,UUID)方法获取一个BluetoothServerSocket,而参数String为主机名称,UUID为通用唯一标识符,这两个设备就是通过该通用唯一标识符UUID来进行匹配)。其中主机名String和通用唯一标识符UUID这两个参数均由SDP(Service Discovery Protocol,蓝牙服务发现协议)记录。获取的BluetoothServerSocket用于监听其他蓝牙设备的接连请求,若是有其他设备接受了主机发送的连接请求,则建立一个可进行双向数据传输的BluetoothSocket,通讯方式为Notification。
[0040] 步骤12、数据接收步骤,该步骤用于实时接收从可穿戴设备发送过来的计步电路输出信号,在本发明的一个实施例中该计步电路输出信号数据为通过三轴加速度传感器测量得到的加速度值。在接收到该计步电路输出信号后,智能终端需要开启一个新的线程。可穿戴设备的蓝牙数据通讯电路使用函数attmdb_att_set_value()更新attribute database中的值,使用prf_server_send_event()方法发送携带有特征值的Notification;而智能终端的计步程序则使用socket的getInputStream()方法获取持续的计步电路输出信号,最后通过计步算法来解析该持续的计步电路输出信号。
[0041] 步骤13、数据来源判断步骤,该步骤用于判断接收到的持续的计步电路输出信号是否为来自可穿戴设备的三轴加速度传感器输出的加速度值;本发明实施例中,可穿戴设备与智能终端之间传输数据所使用的数据帧的长度为18个字节:中前三个字节为数据来源表示码,若解析的数据中前三位为“acc”,则表示此段特征值是来自可穿戴设备的三轴加速度传感器输出的加速度值。在确定了数据来自可穿戴设备的三轴加速度传感器后,便可对持续的计步电路输出信号进行处理从而进行计步。
[0042] (二)计步流程如图2所示的包括:
[0043] 步骤21、根据当前的海拔、地磁场强度,对接收到的三轴加速度传感器发送来的持续的计步电路输出信号进行数据修正。由于使用者的跑步海拔、所处地方地磁强度的不同,会对加速度的测量造成一定的影响。为消除以上因素引起的误差,本发明实施例需要通过以下步骤进行数据修正:
[0044] 通过公式(1)对三轴加速度传感器发送来的持续的计步电路输出信号中X、Y、Z三个轴上的加速度值做了修正补偿,修正公式如下:
[0045] Aacc=Ccompsation+Vvalues×K  (1)
[0046] 其中,Aacc为修正值,Ccompsation为加速度补偿量,Vvalues为某一方向上的加速度值,K为比例系数;
[0047] 其中Ccompsation由海拔高度决定,当海拔在2000米以下时设定补偿量为245;当海拔在2000米到4000米范围时设定补偿量为255;当海拔在4000米以上时设定补偿量为265;
[0048] 其中比例系数K为控制信号缩放比的关键量,可以通过以下的公式(2)计算:
[0049]
[0050] 其中Mmax为地球表面最大磁场强度;由公式(2)可以看出比例系数K与加速度补偿量Ccompsation成正比。
[0051] 步骤22、通过以下的公式(3)计算加速度平均值mAvr
[0052] mAvr=(Aaccx+Aaccy+Aaccz)/3  (3)
[0053] 其中Aaccx为X轴上的加速度分量,Aaccy为Y轴上的加速度分量,Aaccz为Z轴上的加速度分量。
[0054] 步骤23、将加速度平均值mAvr绘制的波形图记为函数F(t),并将被测点记作F(t0),将被测点的前两个值分别定义为F(t1)、F(t2)。然后计算F(t1)与F(t2)差值,记作Δ1。计算F(t1)与F(t0)差值,记作Δ2;
[0055] 如果Δ1、Δ2异号则认为F(t1)为拐点,否则认为F(t1)不为拐点;若为极值点则将极值点存入数组mExtremums[]中,并进入步骤24。其中,F(t1)也称为F(t前)。
[0056] 其中步骤23中Δ1、Δ2异号则认为F(t1)为拐点是指,如果Δ1、Δ2一个为正、一个为负,则可以说明其中F(t1)为一个极值点。采用该步骤可以找到波形图中的所有极值点。
[0057] 步骤24、获取当前的极值点Ek以及前一极值点Ek-1,并计算相邻波峰波谷之间的差值绝对值|Δ|
[0058] |Δ|=|Ek-Ek-1|  (4)
[0059] 其中,|Δ|为相邻的两个极值点之间的差值的绝对值,也是识别运动步伐的判断依据,Ek为本次测量出的拐点(可以用数组mExtremums[k]表示),Ek-1为记录的上一个极值点(可以用数组mExtremums[k-1]表示)。
[0060] 步骤25、根据步骤24获取的极值点之间的差值绝对值|Δ|,判断相邻的两个极值点之间的差值的绝对值|Δ|是否满足计步条件;|Δ|需要满足五个条件才能使计步程序记录一步,且记上次计算值为|Δ|1;如图3所示的,五个条件具体包括:
[0061] 1、识别区间的确定条件;当前值|Δ|大于阀值的部分为运动识别区,小于阀值的部分为非识别区;阀值即为可穿戴设备的计步电路的灵敏度,灵敏度过高或高低均会给计步造成较大误差。
[0062] 2、上次计算值|Δ|1是否合理的判断条件;若上次计算值|Δ|1相比当前值|Δ|小于预设值|Δ|1<|Δ|/4,则认为上一次波动为高频干扰,上一步不记为一步;否则认为|Δ|1合理数据;
[0063] 3、当前值|Δ|是否合理的判断条件;在通过第2个条件判定上次计算值|Δ|1有效的情况下,可以进一步判断当前值|Δ|是否合理;若当前|Δ|大于三分之二倍的|Δ|1时,则认为当前值|Δ|为合理数据,可以进入下一步判断;若当前值|Δ|过小,则认为本次波动为抖动干扰,不计为一步;
[0064] 4、波谷判断;由人体的运动规律可知,完成迈步的动作不可能出现在波峰阶段;所以如果的满足条件的拐点为波峰数据,则舍弃;如果为波谷数据则进入下一个判断条件;
[0065] 5、时间间隔判断条件;由于人体的最快运动频率为50Hz,即两步之间的时间间隔最小为0.2s,因此当前值|Δ|与上次计算值|Δ|1之间的时间间隔小于0.2s,则该当前值|Δ|为高频噪声干扰,不计为一步。
[0066] 步骤26、如果当前值|Δ|满足步骤24的五个条件时,当前值|Δ|可以记为一步,如图4所示的。
[0067] 进一步的,还包括如图5所示的运动轨迹绘制流程。由于运动轨迹是由多个连贯点的集合线段组成,而集合线段中的每一子线段可由相邻的两个经纬度绘制出,绘制小线段的代码如下:
[0068] mAMap.addPolyline(mPolylineOptions)
[0069] .add(mLatLngList.get(k-1),mLatLngList.get(k)).color(Color.GREEN));
[0070] 其中,mAMap为地图MapView对象,用来显示地图界面(在本发明的一个实施例中可以使用高德地图来完成);color()方法用来设置线段颜色;add()方法用来在地图上绘制两点之间的线段,接收参数为LatLng对象,代码中mLatLngList为存储LatLng型数据的集合,mLatLngList.get(k-1)表示起始点,mLatLngList.get(k)表示结束点;addPolyline()方法用来将Polyline对象添加到地图上,接收参数为PolylineOptions对象,PolylineOptions对象可设置线段的宽度、颜色等信息。每次绘制线段之后需要调用postInvalidate()方法刷新地图,只有刷新地图之后才能显示绘制的线段。
[0071] 当使用者点击“结束跑步”按钮时,系统调用stopLocation()方法结束定位,系统完成运动运动轨迹的绘制。本次运动获取的所有经纬度将会通过接口上传到后台服务器;Requestbody携带的json数据格式如下:
[0072] {
[0073] "trajectory":[
[0074] {"latitude":"32.98763",
[0075] "longitude":"88.23423",},
[0076] ……
[0077] ]}
[0078] 作为示例性的,该接口可以为以下格式:
[0079] “http:www.freerunning.com:8080/api/user/data/{user_id}/up/{flag}”。
[0080] (三)运动相关数据计算流程包括:
[0081] 建立SportsDataUtils工具类管理相关运动数据的计算方法,该类中设立的计算方法和功能说明如表1。
[0082] 表1运动数据的计算方法及功能说明表
[0083]
[0084] (3.1)运动能耗计算步骤包括:
[0085] 以75公斤、175cm男子在不同速度下行走、跑步为例对本发明实施例的运动能耗计算步骤进行试验。如图6a和图6b所示的为利用本发明实施例的运动能耗计算步骤计算得到的结果,与实际能耗值的差距很小。由此可以看出本发明实施例的运动能耗计算步骤准确性很高。
[0086] 本发明实施例的运动能耗计算步骤采用以下公式(5)计算运动能耗
[0087]
[0088] 其中,KEaee为人体运动能耗,k为修正参数,其值经测算为0.016,m为使用者身体质量,a为三轴加速度的几何平均值,t为运动持续时间,d为运动距离;
[0089] 其中三轴加速度的几何平均值a通过以下的公式(6)计算:
[0090]
[0091] 其中,TAx为x轴方向上的加速度分量,TAy为轴方向上的加速度分量,TAz为Z轴方向上的加速度分量。
[0092] (3.2)运动距离计算步骤包括:
[0093] 步骤31、计算两次定位之间的距离,具体包括:
[0094] 设本次定位的点为M(结束点)的坐标为(Mlng,Mlat),上一次定位的点为N(起始点)的坐标为(Nlng,Nlat);
[0095] Mlng为结束点M的经度,由mLatLngList.get(k).getLongitude()方法获取;
[0096] Mlat为结束点M的纬度,由mLatLngList.get(k).getLatitude()方法获取;
[0097] Nlng为起始点N的经度,由mLatLngList.get(k-1).getLongitude()方法获取;
[0098] Nlat为起始点N的纬度,由mLatLngList.get(k-1).getLatitude()方法获取。
[0099] 获取的经纬度需要进一步转换为弧度进行计算,转换之后M点坐标表示为(RMlng,RMlng),N点坐标表示为(RNlng,RNlat)。
[0100] 本发明实施例中,采用公式(7)计算起始点N与结束点M之间的距离,:
[0101]
[0102] 其中,L为两点之间的距离,单位为千米;ER为地球半径,本发明实施例中处取地球平均半径值(6371.004千米)。
[0103] 具体实现代码如下:
[0104]
[0105] 步骤32、在获取了每两次邻近的定位之间的距离之后,就可以获取整个运动轨迹中的运动距离;即如公式(8)所示的:
[0106]
[0107] (3.3)实时速度计算步骤包括:
[0108] 由两次定位之间的时间就可以得到该时间段的实时速度;即通过公式(9)计算实时速度:
[0109] Vrt=L/t  (9)
[0110] 具体实现代码:
[0111] public static double realTimeSpeed(double l,double t){double rts=l/t;return s;}。
[0112] (3.4)平均速度计算步骤包括:
[0113] 平均速度是指使用者在整个运动过程中的平均速度,可以通过以下的公式(10)计算:
[0114] V=Ltot/T  (10)
[0115] 其中,V为平均速度,Ltot为跑步距离,T为跑步持续时间。
[0116] 具体实现代码如下:
[0117] public static double averageSpeed(double l,double t){double rts=l/t;return s;}
[0118] (四)状态识别流程包括:
[0119] 在本发明的一个实施例中,使用者的状态可以分为:静止、行走、跑步。其中状态识别流程利用相邻拐点差值的绝对值|Δavr|来进行区分;如果|Δavr|>4.571则认为波形有效;即本发明实施例中的有效波形阈值为4.5714。否则,将此波动看作噪声干扰,不予计算。
[0120] (4.1)静止状态
[0121] 如图7所示的为静止状态下可穿戴设备的输出数据,可以看出其包括5条波形,包括:三轴加速度传感器在三轴上的加速度波形、加速度平均值mAvr波形、步伐判断量|Δstep|波形。
[0122] 由图7的前三个波形(三轴加速度传感器在三轴上的加速度波形)可以看出,人体在静止状态下三轴加速传感器在三轴上的加速度基本保持不变。其中,除垂直方向的加速度受重力影响为非零值外,其余方向上加速度均在零值附近波动。其中波动主要是由于噪声和谐波干扰造成的,且采集数据时被测者身体晃动也会造成非垂直方向上加速度的波动。
[0123] 由图7的第四个波形可以看出,加速度平均值mAvr的最大值为224.2693,最小值为222.84,其相邻拐点差值的绝对值最大值只有1.4293,小于有效波形阈值4.5714。因此本发明实施例中需要对差值做特殊处理,方法如下:
[0124] 步骤41、取连续十个相邻拐点差值的绝对值|Δavr|,如果该连续十个相邻拐点差值的绝对值|Δavr|均小于4.5714,则预判断当前状态为静止状态;否则步骤结束;
[0125] 步骤42、如果连续十个相邻拐点差值的绝对值|Δavr|之间的时间间隔为0.6s以内(人体行走频率最快为50Hz,0.6s为极限情况下迈出三步所需时间),则判断当前状态为静止状态;如果连续十个相邻拐点差值的绝对值|Δavr|之间的时间间隔大于0.6s,则需要判断0.6s内所有|Δavr|是否均小于4.5714;如果是则判断当前状态为静止状态,否则判断当前状态为运动状态;
[0126] 步骤43、获取步伐判断量|Δstep|,其最大值为1.2253,若此时计步阀值小于1.2253,则会将抖动误认为迈出动作;因此本发明实施例中,静止状态下应将计步阀值设置为大于1.2253的值,即静止状态下计步阀值的下限为1.2253。在本发明实施例中,计步阀值的上限应当有由行走状态下步伐判断量|Δstep|的最小值决定。本发明实施例中,将此处计步阀值确定为阀值上下限的平均值,计算为25.6117。这样既能保证不将身体抖动误认为跑步动作,也可以保证不将个别较大干扰波动误认为跑步动作。
[0127] (4.2)行走状态
[0128] 如图8所示的为行走状态下可穿戴设备的输出数据。忽略人体上体动作,人体迈出一步的动作可分解为一脚触地、另一脚迈出、双脚触地三个阶段,并不断重复。此过程中垂直方向上加速度值变化最大,但会在某一固定值附近上下波动;水平方向受惯性及摩擦力的影响,也会在某个固定值附近波动;此外人体行走时不可避免的会发生左右晃动,此时也会在第三个坐标轴方向产生周期性波动。所以产生的加速度平均值mAvr波形也会周期性的在某个固定值附近发生小范围波动。
[0129] 由图8可知,行走状态下三轴加速度传感器的三轴加速度值Aaccx、Aaccy、Aaccz均为非零值,且具有很强的规律性。其中,其中X轴加速度值Aaccx在大小为236.0604的值附近上下波动,其中Y轴加速度值Aaccx在大小为220.197的数值附近上下波动,其中Z轴加速度值Aaccz在大小为239.6163的值附近上下波动;且加速度平均值mAvr同样在大小为229.0932的值附近上下波动。这与上文分析的人体行走状态下加速度的变化规律相符。
[0130] 如图8所示的,加速度平均值mAvr的最大值为261.044,最小值为204.77,差值绝对值为56.274。如果连续m个相邻拐点差值的绝对值|Δavr|都大于56.274,且小于130.7574(跑步状态下的相邻拐点差值的绝对值),则认为当前状态为行走状态。
[0131] 最后的数值为|Δ|,考虑到mAvr的波谷处代表一次有效计步。在行走状态下计步阀值的上限为加速度平均值mAvr处对应的最小|Δ|(该最小值为49.9981),下限为静止状态下的计步阀值,取平均值可得最终的计步阀值,其值为37.8049。
[0132] (4.3)跑步状态
[0133] 如图9所示的为跑步状态下可穿戴设备的输出数据。跑步状态下的加速度变化状况与行走时基本相同,不同的地方在于其幅值波动更为剧烈,完成一个动作的周期更长,且有腾空期。如图9所示的,加速度平均值mAvr波形的最大值为316.0027,最小为210.2453,其差值为130.7574。如果连续m个相邻拐点差值的绝对值|Δavr|均大于130.7574,则认为当前状态为跑步状态。计步阀值的上限为加速度平均值mAvr波谷处对应的最小|Δ|(最小值89.9981),下限为行走状态下的计步阀值,取平均值可得最终的计步阀值,其值为63.9015。
[0134] (五)生理参数监测流程
[0135] 生理参数监测流程用于实现以下四个功能:心电信号数字滤波、QRS波检测、心率失常诊断、体温实时监测。
[0136] (5.1)心电信号数字滤波:
[0137] 可穿戴设备的心电信号采集电路一般都设有心电采集芯片(本发明实施例中采用BMD101心电采集芯片);对于心电采集芯片采集到的数据需要进行滤波才能够得到理想的心电图信号。人类的心电信号频率为0.05-100Hz,因此需要设计一个高通滤波器以滤除0.05Hz以下的低频干扰,并设计一个低通滤波器以滤除100Hz以上的高频干扰。另外,心电信号中最大的干扰项为50Hz电磁及其谐波干扰;因此还需设计一个50Hz带阻滤波器滤以滤除这一干扰信号。
[0138] 本发明实施例中采用BMD101心电采集芯片的采样频率为512Hz(记作Bfs)。本发明实施例的滤波流程中,对于心电信号数字滤波采用了matlab工具对数据进行分析,得到滤波结果后;然后将相应的滤波程序移植到Android操作系统的智能终端内(即将matlab中的滤波程序转换成java语言编写的滤波程序)。
[0139] 其中matlab的滤波步骤如图10所示的包括:
[0140] 步骤51、滤除50Hz工频干扰;滤波器选择Butterworth filter进行设计,代码如下:
[0141] [M,K]=buttord([0.01 100]/256,[49 51]/256,0.5,50)
[0142] [b,a]=butter(K,M);
[0143] Bs=filter(b,a,x);
[0144] 从上述代码中可以看出,步骤51中滤除了49-51Hz频段的干扰。buttord()函数(该函数用来计算Butterworth filter的截止频率K及阶数M,Bandstop的截止频率为二元矢量)返回的截止频率K为[0.19142,0.0.19922],阶数M为8,Bs为滤波后数据。
[0145] 步骤52、高通滤波步骤,采用Butterworth filter设计的高通滤波器滤除基线漂移(0.01-0.05Hz干扰),代码如下:
[0146] [M,K]=buttord(0.05/256,0,0.5,50)
[0147] [b,a]=butter(M,K);
[0148] Bh=filter(b,a,Bs);
[0149] 其中,M为1,K为0.0028,Bh为滤波后数据;
[0150] 步骤53、低通滤波步骤,采用Butterworth filter设计的低通滤波器滤除高频干扰(100Hz以上干扰),代码如下:
[0151] [M,K]=buttord(90/256,10,100/256,0.5,50)
[0152] [b,a]=butter(M,K);
[0153] Bl=filter(b,a,Bh);
[0154] 其中,M为28,K为0.4892,Bl滤波后数据。
[0155] (5.2)QRS波检测
[0156] QRS波是指正常心电图中幅度最大的波群,反映心室除极的全过程。经发明人实测,QRS波群处在9~18Hz的频率范围内。要确定QRS波群的位置首先要实现对低频波形的抑止。一般除了基线漂移的低频干扰,对QRS波群判断会产生干扰的就是低频段的P波(实测0~9Hz)和T波(实测4~11Hz)。本发明实施例的滤除低频波形算法如图11所示的具体包括:
[0157] 步骤61、采用以下的迭代法计算预定的连续数据段内的一阶差分f1(n)和二阶差分f2(n);其中采用的数据集data可以为2753个采样点;其迭代公式为:
[0158] f1(n)=x(n+1)-x(n-1)  (11)
[0159] f2(n)=x(n+2)+x(n-2)-2x(n)  (12)
[0160] 步骤62、遍历一阶差分f1(n)和二阶差分f2(n),找出其中的最大值f1max、f2max和最小值f1min和f2min;并以此计算自适应阈值Mf1和Mf2;
[0161] Mf1=f1max-fmin  (13)
[0162] Mf2=f2max-f2min  (14)
[0163] 步骤63、利用一阶差分f1(n)和二阶差分f2(n)分别乘以自适应阀值Mf1、Mf2,通过以下公式(15)以叠加的方式对数据进行通高频抑低频的操作:
[0164] fM(n)=Mf1f1(n)+Mf2f2(n)  (15)
[0165] 步骤64、取fM(n)中最大值与最小值之差记作fMmax,取 倍fMmax记作自适应阀值MfM,将大于自适应阀值MfM的值置为Dmax;其中Dmax为数据集data中最大的值,选取此值是为了更加直观的显示出QRS波群位置;如果没有大于自适应阀值MfM的值则置为0,从而初步确定QRS波的范围;如图12所示的;
[0166] 其中,波群范围函数记作fQRS,对得到的位置数据首先进行去毛刺处理,以去除除突变消除误差;然后将波群范围内所有的一阶差分置为Dmax以标出波群范围;
[0167] 步骤65、确定波群的R波波峰位置;
[0168] 如图13所示的,首先要确定波群的R波起点和终点;其中fQRS由0突变到Dmax的点即起始位置,而fQRS由Dmax突变到0的下降沿为终点;
[0169] 步骤66、根据R波波峰的起点和终点,确定波群的Q波波峰、S波波峰;如图14所示的,具体的包括:
[0170] 通过以下公式16确定自适应阀值域Ms
[0171]
[0172] 其中C为经验系数,由实验测试为29;S为一阶差分的标准差;
[0173] 由上述公式(16)可以看出,区别于传统标准差方程,本发明实施例中的一阶差分的标准S并没有减去其平均数后再平方,而是直接将一阶差分数取平方。这样的好处是偏移量仍然保持在原始数据的基线之上,这样就保证了阀值随着数据的变化而自适应。
[0174] 在确定Ms=C×S
[0175] Ms选定之后,对一阶差分取绝对值记作abs(f1(n)),则
[0176] R波波峰左侧第一个满足abs(f1(n-1))
[0177] R波波峰右侧第一个满足abs(f1(n-1))>Ms且abs(f1(n))
[0178] 从Rs向左0.04s范围内数据集data绝对值最大的点即为Q波波峰,从Rs向右0.06s范围内数据集data绝对值最大的点为S波波峰,具体如图15所示。
[0179] 步骤67、根据R波波峰的起点和终点,确定波群的P波波峰、T波波峰;如图16所示的的。
[0180] (5.3)心率失常诊断
[0181] 其中心律失常诊断算法的流程如图16所示的为心律失常诊断的流程,具体包括:
[0182] 根据QRS波参数计算RRi;其中RRi为心电图ECG的第i个RR区间;
[0183] 计算其中的QRS周期,判断RRi>2.4s是否成立,如果是为心脏停搏;如果否,则计算7个连续QRS波参数内的RRi的平均值avrRR,判断2R2avrRR是否成立,如果否则为房性早搏,如果是则为室性早搏。
[0184] 如果RRid<0.75avrRR不成立,则计算|3rdRR|>R/5是否成立,如果是则为心律不齐;如果否则计算平均心率HR<60是否成立,如果是则为心动过缓;如果否则判断HR>100是否成立,如果是则为心动过快;否则为心率正常。
[0185] 其中各个参数如下表所示的:
[0186]
[0187] (5.4)体温实时监测
[0188] 在可穿戴设备开启时,其体温检测电路的DS1624数字温度传感器芯片设定为连续模式(即1HSOT置0),这样便可实现对温度的连续测量。智能终端会每隔500ms发送一次数据请求(读取数据命令为[AAH]);其温度值读取流程如图27所示的。
[0189] 本发明实施例提出了一种可穿戴设备(具体的可以为智能手环),包括蓝牙数据通讯电路、计步电路、心电信号采集电路、体温检测电路、通知电路、供电电路。其中蓝牙数据通讯电路包括DA14580蓝牙控制芯片,计步电路包括MPU-6050运动处理传感器芯片,心电信号采集电路包括BMD101心电采集芯片和ECG心电采集电路,体温检测电路包括DS1624数字温度传感器芯片,通知电路包括蜂鸣器电路、震动马达电路、LED闪烁电路,供电电路包括可充电电池、供电模块和充电模块。
[0190] 具体的:
[0191] 其中蓝牙数据通讯电路如图17所示的,包括DA14580蓝牙控制芯片,其中所述DA14580蓝牙控制芯片设有用于分别连接可穿戴设备的传感器芯片的I/O管脚P0_0~P0_7、管脚P1_0~P1_3、管脚P2_0~P2_9;其中第P0_0管脚连接计步电路的MPU-6050运动处理传感器芯片的的中断控制接口,第P0_1管脚连接计步电路的MPU-6050运动处理传感器芯片的的中断控制接口,第P0_2管脚连接计步电路的MPU-6050运动处理传感器芯片的I2C总线串行数据接口SDA,第P0_1管脚连接计步电路的MPU-6050运动处理传感器芯片的I2C总线串行时钟接口SCL;第P0_3管脚连接气压传感器的第八管脚DCLR;第P0_4管脚连接蜂鸣器;第P0_5管脚连接通知电路的马达;第P0_6管脚连接通知电路的LED红灯;第P0_7管脚连接通知电路的LED绿灯;第P1_0管脚连接通知电路的LED黄灯;第P1_1管脚连接体温检测电路的DS1624数字温度传感器芯片的第一管脚的I2C总线串行数据通讯接口SDA;第P1_2管脚连接体温检测电路的DS1624数字温度传感器芯片的第二管脚的I2C总线串行输入时钟接口SCL;
第P1_3管脚连接心电信号采集电路的BMD101心电采集芯片的第四管脚的信号输出端TX;所述DA14580蓝牙控制芯片的第十七管脚的复位电路连接接口RST连接复位电路,所述复位电路包括提供复位高电平的输入电压以及可控的开关SW-PB,且所述第十七管脚的复位电路连接接口RST还通过复位电阻R17接地;所述DA14580蓝牙控制芯片的第二十九管脚XTAL16Mm和第三十管脚XTAL16Mp管脚连接数字控制振荡器外接晶振Y2;所述DA14580蓝牙控制芯片的第十一管脚XTAL32Km和第十二管脚XTAL32Kp连接RC震荡器外接晶振Y1;所述DA14580蓝牙控制芯片的第三十五管脚RFIOp连接天线ANT。如图17所示的,所述DA14580蓝牙控制芯片的第十四管脚VBAT_RF通过电容C15接地;第十五管脚VBAT3V通过电容C11接地;
第十九管脚VDCDV通过电容C10接地;第二十一管脚SWITCH通过电感L2和电容C16接地;第二十三管脚VBAT1V通过并联的电容C14和电容C16接地;第二十五管脚SWDIO和第二十六管脚SW_CLK连接外部SWD接口;第三十一管脚VDCDC_RF通过电容C13接地。如图17所示的,第十六管脚GND、第五管脚NC、第三十四管脚RFIOm、第零管脚GND都接地。其中,DA14580最小系统设计采用的是降压模式,由镍锰充电锂电池供电。如图17所示的,该复位电阻R17的阻值为
3.3KΩ。其中数字控制振荡器外接晶振Y1为16.000MHz;RC震荡器外接晶振Y2为32.768kHz。
[0192] 其中,该I/O管脚的连接可以如下表:
[0193]引脚名称 连接
P0_0 MPU-6050 INT(12)
P0_1 MPU-6050 SDA(24)
P0_2 MPU-6050 SCL(23)
P0_3 BMP085 XCLR(8)
P0_4 Buzzer NPN(B)
P0_5 Motor NPN(B)
P0_6 LED_RED正极
P0_7 LED_GREREN正极
P1_0 LED_YELLOW正极
P1_1 DS1624 SDA(1)
P1_2 DS1624 SCL(2)
P1_3 BMD101 TX(4)
[0194] 如图18所示的,计步电路包括MPU-6050运动处理传感器芯片;第十三管脚供电接口VDD连接供电电路BAT_3.3V,所述供电电路的电压为3.3V±0.5%;且所述MPU-6050运动处理传感器芯片的第十三管脚供电接口VDD通过第二电容C2接地GND。第一管脚Pin 1(CLKIN)作为可选外部时钟输入;在本发明实施例中该第一管脚不使用,直接接地GND。第六管脚Pin 6为外接气压传感器的串行数据接口AUX_DA,连接外接气压传感器。第七管脚Pin 7为外接气压传感器的串行时钟接口AUX_CL,连接外接气压传感器的时钟。第八管脚Pin 8为逻辑供电电压VLOGIC,连接逻辑供电电路BAT_3.3V的电压值,且其触发方式为单调边沿触发,连接一个10nF电容C4。第九管脚Pin 9为信号组电源接口AC0,连接I2C总线以作为地址最低有效位Slave Address LSB(Least Significant Bit),本发明实施例中的信号组电源接口AC0置为信号组电源接口Signal Group power port。第十管脚Pin 10为校准滤波电容接口,连接一个0.1μF电容C1。第十一管脚Pin 11为帧同步数据输入FSYNC,接地GND。第十二管脚Pin 12中断控制接口INT连接蓝牙通信芯片SoC的P0_0接口。第二十管脚Pin 20为电荷泵连接接口CPOUT连接电容值为10nF的电荷泵C3。第二十三管脚I2C总线的串行数据接口SDA连接蓝牙通信芯片SoC的P0_2接口;第二十四管脚的I2C总线串行时钟接口SCL连接蓝牙通信芯片SoC的P0_1接口。
[0195] 心电信号采集电路,其电路结构如图19和图20所示的,心电信号采集模块采用神念科技BMD101传感器作为设计核心。其中,Pin 0(CS)为片选引脚;Pin 1(SEP)及Pin 2(SEN)为电极模拟信号输入端,用来采集心电模拟信号;Pin 3(RX)是BMD101与串口进行通讯时接收数据的接口,即数据写入端;Pin 4(TX)为BMD101信号输出端,与DA14580芯片的Pin 6(P1_3)口相连;Pin 5为高平RC复位电路,设置了一个10K上拉电阻R3(R3需并联一个稳压二极管D1,起稳压作用)和一个0.1μF滤波电容C4;Pin 6为GND;Pin 7为VDD,VDD与GND之间串联一个10μF滤波电容C5(即去耦,消除高频噪声);AGND是电路的模拟地,模拟地和数字地不可以直接短路连接,否则会导致互相干扰。由于设备测量的都是低频模拟信号,信号端可以看做为一个电压源。如图18所示的,设计采用一点接地的接入方式,对模拟地AGND做了加粗处理,并缩短了其长度,同时在模拟地AGND和数字地GND之间加入10μH电感作为缓冲,以减少两者之间的相互干扰。
[0196] 体温检测电路的电路结构如图21所示的,采用DS1624数字温度传感器芯片作,其Pin 1(SDA)为I2C串行数据通讯接口,Pin 2(SCL)为I2C串行输入时钟,分别于DA14580的P1_1、P1_2进行连接,两个接口上拉电阻为4.7KΩ;Pin 3为NC;Pin 4为GND;Pin 5、6、7(A0、A1、A2)为地址输入端,其地址编码的数量决定了SDA总线上可挂载DS1624的数量,本体温模块中只需一个测温芯片,所以此处A0、A1、A2直接与GND相连即可;Pin8(VCC)为DS1624工作电压输入接口,由DC-DC输出电压(BAT_3.3V)提供。
[0197] 如图22、图23、图24所示的,通知电路包括蜂鸣器电路、震动马达电路、LED闪烁电路;
[0198] 其中所述蜂鸣器电路包括蜂鸣器Buzzer和三极管3904,其中所述蜂鸣器并联有第三电阻R3,并连接供电电路BAT 3.3V和三极管的集电极,所述三极管的发射极接地GND,所述三极管3904的基极通过限流电阻R4连接蓝牙通信芯片的P0_4管脚,并通过滤波电容C6接地GND;
[0199] 其中所述震动马达电路包括马达M1和NPN型三极管Q1;其中所述震动马达M1并联稳压二极管D1,并连接供电电路BAT 3.3V和三极管Q1的集电极;且三极管Q1的基极通过限流电阻R6连接蓝牙通信芯片的P0_5管脚,且三极管Q1的发射极接地GND;并通过滤波电容C6接地GND;
[0200] 其中所述LED闪烁电路包括至少一个LED灯,且所述LED灯通过限流电阻连接蓝牙通信芯片。
[0201] 蜂鸣器电路主要用来发出蜂鸣提示,电路设计原理如图22;蜂鸣器的接入电压为3.3V,此处蜂鸣器Buzzer为容性,需要并联一个2KΩ电阻R3。为增大蜂鸣器的音量,蜂鸣器另一端需接入一个三极管进行驱动,三极管B极(基极)由蓝牙通信芯片DA14580Soc P0_5引脚控制开关,B极限流电阻R4为4.7K,滤波电容C6为1nF。
[0202] 震动马达电路是利用偏心轮产生惯性震动的直流电机,主要用来发出震动提示,其电路设计如图23。引脚P0_5是NPN型三极管Q1基极控制端口,其限流电阻R6为100欧姆,计算公式如下:
[0203] RCLR=(Vin-VVF)/ICOC
[0204] 其中,RCLR为所求限流电阻,Vin为输入电压,VVF为三极管正向导通压降,ICOC为设定的限流电流。
[0205] 当基极置高电平时NPN导通,置为低电平时则关闭。BAT_3.3V(3.3V)为震动马达正常工作电压,由其正极端输入。二极管D1为微型震动马达M1的稳压二极管,用来保持震动马达M1电压的稳定。
[0206] LED闪烁电路设计的LED灯有红蓝黄三色,分别由蓝牙通信芯片DA14580Soc的三个引脚P0_6、P0_7、P0_8进行编程控制;电路设计原理如图24。
[0207] 供电电路包括如图25所示的充电模块和如图26所示的供电模块,还包括可充电电池BT1。
[0208] 在本发明的一个实施例中,可充电电池BT1选用SUN 452535充电锂电池;其充电电压为4.2V,正常输入电压为3.7V,采用USB接口对其充电。
[0209] 如图25所示的,所述充电模块USB的VBUS输入电压为5V,USB充电管理芯片为Linear公司的充电管理芯片LTC4053-4.2,其输入电压从第二管脚Pin 2(VCC)接入,输出充电电压从第九管脚Pin 9(BAT)输出;其输出电压一般为4.2V~5V;输出电流IBAT由第七管脚Pin 7(PROG)连接的外接电阻R16决定,其中第七管脚PROG为充电电流和充电电流监测程序引脚。作为示例解释的,其中外接电阻R16(也称为RPROG)的阻值可以通过以下公式计算:
[0210] ICHG=(IPROG)×1000=(1.5V/RPROG)×1000
[0211] RPROG=1500V/ICHG
[0212] 其中,RPROG即为连接第七管脚PROG的电阻R16,如果充电模块设定的充电电流为100mA,可得RPROG为15KΩ。
[0213] 其中第六管脚Pin 6(NTC)为负温度系数,本发明实施例中置零。第五管脚Pin 5(GND)为芯片接地引脚,接地GND。第四管脚Pin 4(TIMER)为充电时间设定引脚,充电时间由第四管脚TIMER引脚外接的第一电容C8的大小决定。作为示例解释的,该第一电容C8的计算公式如下:
[0214] Timer(Hours)=(3Hours)×(CTIMER/0.1μF)
[0215] 由此可计算出第四管脚TIMER的第一电容C8(也称为CTIMER)可以通过以下公式计算:
[0216] CTIMER=0.1μF×Time(Hours)/3(Hours)
[0217] 假设预定充电时间为3小时,由公式可得第一电容C8(也称为CTIMER)为0.1μF。
[0218] 如图26所示的,供电模块的输出电压为3.3V±0.5%,输出电流为1200mA。供电模块包括升降压转换芯片TPS63001,所述升降压转换芯片TPS63001的第一管脚VIN通过滤波电容C1连接输入电压VBAT(1.8-5V);第二管脚VINA连接电源电压控制信号输入电路;第三管脚SYNCPS连接省电模式控制信号输入电路;第四管脚EN连接设备使能信号输入电路;第九管脚FB为芯片内部电压误差放大器,连接反馈信号输入电路;第十管脚yOUT连接电压输出电路;第零管脚L1和第十一管脚L11之间设有用于消除电感电流的隔离电感L1。
[0219] 作为示例解释的,第零管脚L1和第十一管脚L11的引脚输出值可以通过以下公式计算:
[0220] LL1=(Vo(V1-Vo))/(0.3V1f)
[0221] LL2=(V2(Vo-V2))/(0.3V2f)
[0222] 其中,LL1、LL2分别为降压模式输出最小电感值与升压模式输出最小电感值,V1、V2分别为降压模式输入最小电压值和升压模式输入最小电压值;Vo为电压输出值,f为最小开关频率。
[0223] 如图26所示的,其中第零管脚L1和第十一管脚L2之间连接的隔离电感L1取值在LL1、LL2之间。
[0224] 在本发明的一个实施方式中,供电模块设计的输出电压为3.3V;为得到最好的控制效果,本实施方式选择隔离电感L1的电感值为2.2μH,以作为第零管脚Pin 0和第十一管脚Pin 11之间的隔离电感。
[0225] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Android平台的跑步健身系统及其数据处理方法委托购买说明

填写需求表单支付预付款

平台根据需求优化购买方案

确认购买方案支付尾款

平台办理变更等待成功通知

Android平台的跑步健身系统及其数据处理方法购买流程说明

发起委托,需要先支付100元预付款,委托不成功,全额退返预付款;

平台收到需求后,会在第一时间联系您,给到您最佳购买方案;

您在确认购买方案后,需支付全额专利购买费,预付款可抵扣购买费,专利购买费具体参见下方表格;

平台确认收款后,将帮您办理专利购买、专利过户等全流程手续;

平台代购专利失败,将全额退返专利购买费,包括预付款;

Android平台的跑步健身系统及其数据处理方法专利购买费用

授权未缴费=专利裸价+著录项变更(200元)+登办费(当年年费+5元印花税)+恢复权利请求费1000元(按实收)+委托服务费(200元)+税金(专利裸价+委托服务费)x6%

已下证=专利裸价+著录项变更(200元)+滞纳金(按实收)+恢复权利请求费1000元(按实收)+委托服务费(200元)+税金(专利裸价+委托服务费)x6%

Android平台的跑步健身系统及其数据处理方法购买费用说明

专利转让费用

专利买卖交易资料

Q:办理专利转让的流程及所需资料

A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。

1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。

2:按规定缴纳著录项目变更手续费。

3:同时提交相关证明文件原件。

4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。更多

Q:专利著录项目变更费用如何缴交

A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式

Q:专利转让变更,最快多久能出结果

A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。

更多专利转让常见问题

动态评分

0.0

没有评分数据
没有评论数据
 
X 顶部大图