电动跑步机控制系统及计步方法

申请号 CN201510815286.3 申请日 2015-11-24 公开(公告)号 CN106730646A 公开(公告)日 2017-05-31
申请人 北京上方之道科技有限公司; 发明人 李祥武; 张亚军; 李芃;
摘要 本 发明 提供一种电动 跑步机 控制系统及计步方法,其中,该系统包括跑步机端模 块 和 云 端模块两部分;跑步机端模块具有上传数据、接收数据、状态判断以及计步等功能;云端 服务器 模块具有接收数据、 机器学习 、下发数据以及存储数据功能;云端服务器模块包括至少一个 数据库 以及机器学习的模块。两者配合可以实现更精确、更经济、更智能的计步方案。
权利要求

1.一种电动跑步机的计步方法,其特征在于,该方法包括如下步骤:
A、预先设定一组根据跑步机在空载、负载时候训练得到的特征参数,所述负载至少包括站立、走、跑;如果跑步机工作时无法与服务器进行数据传递,那么将使用这些预设值进行跑步机的状态判断以及计步;如果跑步机可以和云端服务器进行数据传递,那么将使用云端服务器下载的特征参数进行状态判断以及计步;
B、跑步机工作时,电机控制板按照固定的频率采集电机工作电流,并实时传送给跑步机显示仪表板上的运算单元;
C、运算单元首先利用电流以及预设值或者特征参数判断这段电流对应负载状态还是空载状态;如果是空载状态,过一定时间跑步机将会自动停止;如果是负载状态,将进入下面的计步阶段;
D、运算单元对负载状态对应的电流信号进行处理,获得电流的波形,并与预设波形参数值进行对比,根据对比结果,实现计步。
2.根据权利要求1所述的计步方法,其特征在于,所述运算单元在上述步骤D中,进一步包括:
运算单元对负载状态对应的电流进行整型、低通滤波和中值滤波,去除干扰数据,然后确定电流波形起始点和终止点,求解出一个完整电流波形后,与预设波形参数值对比,若满足预设要求,则当前步数加一。
3.根据权利要求1或2所述的计步方法,其特征在于,
所述步骤A中,通过机器学习获取跑步机在空载、负载的不同状态时,直流驱动电机的输出电流的特征参数值;优选的,所述特征参数值包括以下任一参数或其组合:电流的大小值、均值、方差、峰度、熵。
4.根据权利要求3所述的计步方法,其特征在于,所述方法包括通过支持向量机算法判断跑步机状态,然后进行计步,其步骤如下:
a1、采集电流数据:事先采集跑步机在空载、负载状态下跑步机输出的电流数据,然后对不同状态的电流数据进行标记;
b1、提取特征:对采集的不同状态的电流数据求得的平均值和方差作为识别的特征,并对所述特征进行归一化处理;
c1、训练数据:将步骤b1得到的特征使用支持向量机算法进行训练,得到训练结果参数;
d1、进行识别:用训练好的支持向量机对跑步机实时输出的电流数据进行识别,如果识别为空载,并且空载状态持续一预设时间,跑步机停止;如果识别为负载,则进入步骤e1;
e1、计步数据预处理:对跑步机电流数据先后进行均值滤波和整型低通滤波,以去掉高频噪声;
f1、计步:对滤波后的电流数据计算波峰出现的次数,所述波峰出现的次数作为跑步机使用者的步数。
5.根据权利要求4所述的计步方法,其特征在于,对滤波后电流数据计算波峰出现次数的具体方法为:
判断目前的电流状态是变大还是变小,也就是处于波形的上升沿还是下降沿,如果当前是上升沿,则标记为波形的开始,并继续判断波形状态,直到遇见下一个上升沿,标记为波形的结束;如果当前是下降沿,则继续判断波形状态,直到遇见新的上升沿,才标记为波形的开始。
6.根据权利要求4所述的计步方法,其特征在于:所述步骤b1中的归一化处理包括:
对采集的数据使用一滑动窗,依次滑过采集到的数据,对滑动窗内的数据求取平均值和方差;然后对均值和方差做归一化;
所述归一化的方法为:
其中out,in分别是归一化后和归一化前的特征值,min,max分别是特征值的最大值和最小值;a表示归一化前后之间的调整系数,b表示归一化前后之间的截距。
7.根据权利要求4所述的方法,其特征在于:所述步骤c1中的支持向量机算法如下:
建立支持向量机的数学模型:
maxγ,ω,b γ
i T i
s.t. y(wx+b)≥γ,i=1,...,m
||w||+1.
其中x,w,b分别表示特征值以及该特征值对应的权重和截距,该特征值为根据跑步机电流提取出来的特征值;y表示对应的类别;γ表示最值;m表示特征值个数,即x的个数;
将上述模型转换为其对偶问题,如下所示:
0≤ai≤C,i=1,2,...,m
其中x,y,m分别表示跑步机电流的特征值、跑步机不同工作状态下对应的类别标签以及特征值个数;K()表示使用的核函数;αi、αj表示转换时候对应的拉格朗日系数;C表示αi的最大值,N表示α的个数;
求出所有满足ai<C的正数解,然后计算:
其中b表示截距,ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数;
* *
得到了最优的a,b,以及所有的支持向量,组成一组训练好的支持向量机参数。
8.根据权利要求4所述的方法,其特征在于:所述步骤d1中的识别方法采用如下公式:
其中,sign()表示符号函数,当自变量小于零时候,结果为负,当自变量大于等于零的时候,结果为正;ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数,b表示对应的截距。
9.一种电动跑步机控制系统,该系统包括跑步机端模和云端服务器模块两部分;跑步机端模块具有上传数据、接收数据、状态判断以及计步功能;云端服务器模块具有接收数据、机器学习、下发数据以及存储数据功能;云端服务器模块包括至少一个数据库模块以及机器学习模块。
10.根据权利要求9所述的系统,其特征在于:所述跑步机端模块包含一电流数据采集模块,在跑步机端的电机控制器中直接采集跑步机电机的工作电流数据,并上传至所述数据库模块中。
11.根据权利要求9所述的系统,其特征在于:所述机器学习模块依据所述数据库模块中的电流数据,计算跑步机不同状态下的特征参数;所述跑步机不同状态包括空载、负载,所述负载至少包括站立、走、跑。
12.根据权利要求11所述的系统,其特征在于:所述机器学习模块进一步包含计步模块,所述计步模块进一步包含:
电流数据标记模块:由所述数据库模块获取采集的电流数据;事先采集跑步机在空载、负载状态下跑步机输出的电流数据,然后对不同状态的电流数据进行标记;
特征提取模块:对采集的不同状态的电流数据求得的平均值和方差作为识别的特征,并对所述特征进行归一化处理;
数据训练模块:将归一化处理的特征使用支持向量机算法进行训练,得到训练结果参数;
识别模块:用训练好的支持向量机对跑步机实时输出的电流数据进行识别,如果识别为空载,并且空载状态持续一预设时间,跑步机停止;如果识别为负载,则开始计步;
计步数据预处理模块:对跑步机电流数据先后进行均值滤波和整型低通滤波,以去掉高频噪声;
计数模块:对滤波后的电流数据计算波峰出现的次数,作为步数。
13.根据权利要求12所述的系统,其特征在于,所述计数模块计算波峰出现的次数的具体过程包括:
判断目前的电流状态是变大还是变小,也就是处于波形的上升沿还是下降沿,如果当前是上升沿,则标记为波形的开始,并继续判断波形状态,直到遇见下一个上升沿,标记为波形的结束;如果当前是下降沿,则继续判断波形状态,直到遇见新的上升沿,才标记为波形的开始。
14.根据权利要求13所述的系统,其特征在于,所述特征提取模块采用如下方式进行归一化处理:
对采集的数据使用一滑动窗,依次滑过采集到的数据,对滑动窗内的数据求取平均值和方差;然后对均值和方差做归一化;
所述归一化的方法为:
其中out,in分别是归一化后和归一化前的特征值,min,max分别是特征值的最大值和最小值;a表示归一化前后之间的调整系数,b表示归一化前后之间的截距。
15.根据权利要求12所述的系统,其特征在于:所述数据训练模块采用以下方式进行数据训练:
建立支持向量机的数学模型:
maxγ,ω,b γ
i T i
s.t. y(wx+b)≥γ,i=1,...,m
||w||+1.
其中x,w,b分别表示特征值以及该特征值对应的权重和截距,该特征值为根据跑步机电流提取出来的特征值;y表示对应的类别;γ表示最值;m表示特征值个数,即x的个数;
将上述模型转换为其对偶问题,如下所示:
0≤ai≤C,i=1,2,...,m
其中x,y,m分别表示跑步机电流的特征值、跑步机不同工作状态下对应的类别标签以及特征值个数;K()表示使用的核函数;αi、αj表示转换时候对应的拉格朗日系数;C表示αi的最大值,N表示α的个数;
求出所有满足ai<C的正数解,然后计算:
其中b表示截距,ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数;
* *
得到了最优的a,b,以及所有的支持向量,组成一组训练好的支持向量机参数。
16.根据权利要求12所述的系统,其特征在于:所述识别模块采用如下识别算法进行识别:
其中,sign()表示符号函数,当自变量小于零时候,结果为负,当自变量大于等于零的时候,结果为正;ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数,b表示对应的截距。

说明书全文

电动跑步机控制系统及计步方法

技术领域

[0001] 本发明涉及一种电动跑步机控制系统及计步方法,属于健身器材技术领域,尤其涉及一种具有智能计步功能的电动跑步机。

背景技术

[0002] 对于电动跑步机的计步技术,传统方式主要有以下几种:(1)在跑步通道两侧以正对方式安装一对红外线收发装置,以信号被阻断次数来计步;(2)在跑台上增加压传感器,根据人在跑步机上跑步时,脚对跑台的压力变化,求解走跑步数。这些方法虽然计步准确率较高,但是因为需要安装专的传感器,势必造成跑步机结构设计的复杂程度增加,同时造成生产成本升高。
[0003] 例如,专利号为CN201420085472.7“用于电动跑步机的智能计步系统”,通过闭环霍尔电流传感器采集跑步机工作时电机电流,对比电流与设定值进行比较,如果采集数值大于等于设定值,步数加1;小于设定值,步数不变。此方案从原理上似乎能够实现电动跑步机计步,但是由于人在电动跑步机上运动时,速度不同、体重差别,对电流的峰值影响很大,另外在完整的走、跑步中,电流的变化也不是一个标准的正弦波,可能出现两个不同的峰值,所以单纯通过一个固定的电流值去计算步数,误差较大;另外闭环霍尔电流传感器价格较高,增加了跑步机的生产成本。
[0004] 因此现有的电动跑步机计步方案还有待于改进和提高。

发明内容

[0005] 鉴于上述现有电动跑步机方案的不足,本发明采用在电机控制器中采集其工作电流,通过数字信号处理,利用机器学习和智能识别的方法实现了跑步机工作状态和步数识别,提供一种更精确、更经济、更智能、更可靠的电动跑步机及其计步方案,以避免复杂的冗长运算对资源的过度消耗和延迟,同时保证计步的精确性。具体而言,本发明提供了如下的技术方案:
[0006] 一种电动跑步机的计步方法,其特征在于,该方法包括如下步骤:
[0007] A、预先设定一组根据跑步机在空载、负载的时候训练得到的特征参数,所述负载至少包括站立、走、跑等状态。如果跑步机工作时无法与服务器进行数据传递,那么将使用这些预设值进行跑步机的状态判断以及计步;如果跑步机可以和云端服务器进行数据传递,那么将使用云端服务器下载的特征参数进行状态判断以及计步;
[0008] B、跑步机工作时,电机控制板按照固定的频率采集电机工作电流,并实时传送给跑步机显示仪表板上的运算单元;
[0009] C、运算单元首先利用电流以及特征参数判断这段电流对应负载状态还是空载状态。如果是空载状态,过一定时间跑步机将会自动停止;如果是负载状态,将进入下面的计步阶段;
[0010] D、运算单元对负载状态对应的电流进行整型、低通滤波和中值滤波,去除干扰数据,然后确定电流波形起始点和终止点,求解出一个完整电流波形后,与预设波形参数值对比,若满足要求,则步数加一。
[0011] 优选地,所述步骤A中,获取所述跑步机电流值包含如下步骤:
[0012] a、采集在不同速度下跑步机空载、负载时电流值。所述负载至少包括站立、走、跑等状态。
[0013] 优选地,所述直流驱动电机的输出电流的波形参数包括以下任一参数或其组合:电流大小值、均值、方差、峰度、熵等。本领域技术人员也可以在这一教导下将电流值变化转换为电压值变化,测定对应的电压值大小、均值、方差、峰度、熵等特征,作为特征依据。
[0014] 优选地,通过支持向量机算法,进行计步,其步骤如下:
[0015] a1、采集电流数据;事先采集跑步机在空载、负载状态下跑步机输出的电流数据,然后对不同状态的电流数据进行标记;所述负载状态至少包括站立、走、跑等状态,所述空载状态至少包括无人状态。
[0016] b1、提取特征;对采集的不同状态的电流数据求得的平均值和方差作为识别的特征,并对所述特征进行归一化处理;
[0017] c1、训练数据;将步骤b1得到的特征使用支持向量机算法进行训练,得到训练结果参数;
[0018] d1、进行识别;用训练好的支持向量机对跑步机实时输出的电流数据进行识别,如果识别为空载,并且空载状态持续一预设时间,跑步机停止;如果识别为负载,则进入步骤e1,开始计步;
[0019] e1、计步数据预处理;对跑步机电流数据先后进行均值滤波和整型低通滤波,以去掉高频噪声;
[0020] f1、计步;对滤波后的电流数据计算波峰出现的次数,作为步数;具体为,判断目前的电流状态是变大还是变小,也就是处于波形的上升沿还是下降沿,如果当前是上升沿,则标记为波形的开始,并继续判断波形状态,直到遇见下一个上升沿,标记为波形的结束;如果当前是下降沿,则继续判断波形状态,直到遇见新的上升沿,才标记为波形的开始。这一标记方法,可以有效地区分在负载状态下,有人站立与走、跑时的状态,从而进行精确计步。
[0021] 优选地,所述步骤b1中的归一化处理包括:
[0022] 对采集的数据使用一滑动窗,依次滑过采集到的数据,对滑动窗内的数据求取平均值和方差;然后对均值和方差做归一化;
[0023] 所述归一化的方法为:
[0024]
[0025] 其中out,in分别是归一化后和归一化前的特征值,min,max分别是特征值的最大值和最小值;a表示归一化前后之间的的系数(备注:归一化之前的值*a=归一化之后的值),b表示归一化前后之间的截距。
[0026] 优选地,所述步骤c1中的支持向量机算法如下:
[0027] 建立支持向量机的数学模型:
[0028] maxγ,ω,b γ
[0029] s.t. yi(wTxi+b)≥γ,i=1,...,m
[0030] ||w||+1.
[0031] 其中x,w,b分别表示特征值以及该特征值对应的权重和截距,该特征值为根据跑步机电流提取出来的特征值,包括均值、方差、峰度等特征;y表示对应的类别,例如空载时,负载走动时、负载跑动时;γ表示最值,是一个数学概念;m表示特征值个数,即x的个数;
[0032] 将上述模型转换为其对偶问题,如下所示:
[0033]
[0034]
[0035] 0≤ai≤C,i=1,2,...,m
[0036] 其中x,y,m分别表示跑步机电流的特征值、跑步机不同工作状态下(空载、负载站立、负载走动、负载跑动等)对应的类别标签以及特征值个数;K()表示使用的核函数,例如径向基函数;αi、αj表示转换时候对应的拉格朗日系数,属于纯数学意义符号;C表示αi的最大值,N表示α的个数;
[0037] 求出所有满足ai<C的正数解,然后计算:
[0038]
[0039] 其中b表示截距,ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数;
[0040] 得到了最优的a*,b*,以及所有的支持向量,组成一组训练好的支持向量机参数。
[0041] 优选地,所述步骤d1中的识别方法采用如下公式:
[0042]
[0043] 其中,sign()表示符号函数,当自变量小于零时候,结果为负,当自变量大于等于零的时候,结果为正;ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数,b表示对应的截距。
[0044] 此外,本发明还提供了一种电动跑步机控制系统,该系统包括跑步机端模和云端服务器模块两部分;跑步机端模块具有上传数据、接收数据、状态判断以及计步等功能;云端服务器模块具有接收数据、机器学习、下发数据以及存储数据功能;云端服务器模块包括至少一个数据库以及一机器学习模块。
[0045] 优选地,所述跑步机端模块包含一电流数据采集模块,在跑步机端的电机控制器中直接采集跑步机电机的工作电流数据,并上传至所述数据库模块中。
[0046] 优选地,所述机器学习模块依据所述数据库模块中的电流数据。采集在不同速度下,跑步机空载、负载时电流值;所述负载至少包括站立、走、跑状态;然后根据这些电流值计算参数。
[0047] 优选地,所述机器学习模块进一步包含计步模块,所述计步模块进一步包含:
[0048] 电流数据标记模块:由所述数据库模块获取采集的电流数据;事先采集跑步机在空载、负载状态下跑步机输出的电流数据,然后对不同状态的电流数据进行标记;所述不同状态至少包括空载、负载时站立、负载走、负载跑动等状态。
[0049] 特征提取模块:对采集的不同状态的电流数据求得的平均值和方差作为识别的特征,并对所述特征进行归一化处理;
[0050] 数据训练模块:将步骤b1得到的特征使用支持向量机算法进行训练,得到训练结果参数;
[0051] 识别模块:用训练好的支持向量机对跑步机实时输出的电流数据进行识别,如果识别为空载,并且空载状态持续一预设时间,跑步机停止;如果识别为负载,则进入步骤e1,开始计步;
[0052] 计步数据预处理模块:对跑步机电流数据先后进行均值滤波和整型低通滤波,以去掉高频噪声;
[0053] 计数模块:对滤波后的电流数据计算波峰出现的次数,作为步数;具体为,判断目前的电流状态是变大还是变小,也就是处于波形的上升沿还是下降沿,如果当前是上升沿,则标记为波形的开始,并继续判断波形状态,直到遇见下一个上升沿,标记为波形的结束;如果当前是下降沿,则继续判断波形状态,直到遇见新的上升沿,才标记为波形的开始。
[0054] 优选地,所述特征提取模块采用如下方式进行归一化处理:
[0055] 对采集的数据使用一滑动窗,依次滑过采集到的数据,对滑动窗内的数据求取平均值和方差;然后对均值和方差做归一化;
[0056] 所述归一化的方法为:
[0057]
[0058] 其中out,in分别是归一化后和归一化前的特征值,min,max分别是特征值的最大值和最小值;a表示归一化前后之间的调整系数,b表示归一化前后之间的截距。
[0059] 优选地,所述数据训练模块采用以下方式进行数据训练:
[0060] 建立支持向量机的数学模型:
[0061] maxγ,ω,b γ
[0062] s.t.yi(wTxi+b)≥γ,i=1,...,m
[0063] ||w||+1.
[0064] 其中x,w,b分别表示特征值以及该特征值对应的权重和截距,该特征值为根据跑步机电流提取出来的特征值,包括均值、方差、峰度等特征;y表示对应的类别,例如空载时,负载站立、负载走动时、负载跑动时;γ表示最值,是一个数学概念;m表示特征值个数,即x的个数;
[0065] 将上述模型转换为其对偶问题,如下所示:
[0066]
[0067]
[0068] 0≤ai≤C,i=1,2,...,m
[0069] 其中x,y,m分别表示跑步机电流的特征值、跑步机不同工作状态下(空载、负载站立、负载走动、负载跑动)对应的类别标签以及特征值个数;K()表示使用的核函数,例如径向基函数;αi、αj表示转换时候对应的拉格朗日系数,属于纯数学意义符号;C表示αi的最大值,N表示α的个数;
[0070] 求出所有满足ai<C的正数解,然后计算:
[0071]
[0072] 其中b表示截距,ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数;
[0073] 得到了最优的a*,b*,以及所有的支持向量,组成一组训练好的支持向量机参数。
[0074] 优选地,所述识别模块采用如下识别算法进行识别:
[0075]
[0076] 其中,sign()表示符号函数,当自变量小于零时候,结果为负,当自变量大于等于零的时候,结果为正;ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数,b表示对应的截距。
[0077] 与现有的技术相比,本发明的有益效果是:
[0078] 1、经济性。本发明方案通过电机控制板采集并上传电机工作电流,利用跑步机显示仪表板上的运算单元进行计算,无需增加任何传感器和电子元器件、结构零件,不会增加任何成本。
[0079] 2、准确性。本发明方案采用多重电流滤波后,进行波形参数对比方案,同时采用自我学习的计步方法,主动适应不同的使用者,计步精度更高。
[0080] 3、功能强。本发明方案不但能够计步,而且根据走、跑电流波形的不同,识别走、跑动作,为能耗的计算提供了更多的参量。附图说明
[0081] 图1为本发明电动跑步机系统结构示意图;
[0082] 图2为本发明电动跑步机计步方法的流程示意图;
[0083] 图3为本发明电动跑步机系统的一具体实施例结构示意图。

具体实施方式

[0084] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本领域技术人员应当知晓,下述具体实施例或具体实施方式,是本发明为进一步解释具体的发明内容而列举的一系列优化的设置方式,而该些设置方式之间均是可以相互结合或者相互关联使用的,除非在本发明明确提出了其中某些或某一具体实施例或实施方式无法与其他的实施例或实施方式进行关联设置或共同使用。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0085] 实施例1
[0086] 如图2所示,为本发明一具体实施例的电动跑步机的计步方法,该方法包括如下步骤:
[0087] A、预先根据经验数据,设置跑步机空载、负载时,直流驱动电机的输出电流值;所述负载至少包括站立、走、跑状态;
[0088] 这一初始值的设置,可以是根据特定信号的跑步机电动机性能指标而直接获取,也可以通过采集电动机在不同的状态下工作时的电流数据值进行计算获取,例如分别采集跑步机在不同速度(例如2km/h,4km/h,6km/h,8km/h,10km/h)下空载和负载时的电流数据等。
[0089] B、跑步机工作时,电机控制板按照固定的频率采集电机工作电流,并实时传送给跑步机显示仪表板上的运算单元;
[0090] C、运算单元首先对电流进行整型、低通滤波和中值滤波,去除干扰数据,然后确定电流波形起始点和终止点;
[0091] D、运算单元求解出一个完整电流波形后,与预设波形参数值对比,若满足要求,则步数加一。
[0092] 在一具体的实施例中,所述直流驱动电机的输出电流的波形参数包括以下任一参数或其组合:电流大小值、均值、方差、峰度、熵等。本领域技术人员也可以在这一教导下将电流值变化转换为电压值变化,测定对应的电压值大小、均值、方差、峰度、熵等特征,作为特征依据。该类在本发明基础上的常规改动均应视为落入本申请的保护范围之内。
[0093] 在一具体的实施例中,通过支持向量机算法,进行计步,其步骤如下:
[0094] a1、采集电流数据;事先采集跑步机在空载、负载状态下跑步机输出的电流数据,然后对不同状态的电流数据进行标记;
[0095] b1、提取特征;对采集的不同状态的电流数据求得的平均值和方差作为识别的特征,并对所述特征进行归一化处理;
[0096] c1、训练数据;将步骤b1得到的特征使用支持向量机算法进行训练,得到训练结果参数;
[0097] d1、进行识别;用训练好的支持向量机对跑步机实时输出的电流数据进行识别,如果识别为空载,并且空载状态持续一预设时间,跑步机停止,这一预设时间可以是例如3-5秒,或其他,也可以在跑步机段设置一时间预设装置,从而可以通过该装置人为调整上述预设时间的值;如果识别为负载,则进入步骤e1,开始计步;
[0098] e1、计步数据预处理;对跑步机电流数据先后进行均值滤波和整型低通滤波,以去掉高频噪声;
[0099] f1、计步;对滤波后的电流数据计算波峰出现的次数,作为步数;为了避免简单的阈值带来的误判,计步算法采用了波形分割的技术,具体为,判断目前的电流状态是变大还是变小,也就是处于波形的上升沿还是下降沿,如果当前是上升沿,则标记为波形的开始,并继续判断波形状态,直到遇见下一个上升沿,标记为波形的结束;如果当前是下降沿,则继续判断波形状态,直到遇见新的上升沿,才标记为波形的开始。利用该方法的方法,计算出该段时间内的电流值波形个数,其中一个完整波形对应一步,进而达到计步的功能。
[0100] 在一具体的实施例中,所述步骤b1中的归一化处理包括:
[0101] 对采集的数据使用一滑动窗,依次滑过采集到的数据,对滑动窗内的数据求取平均值和方差;然后对均值和方差做归一化;
[0102] 所述归一化的方法为:
[0103]
[0104] 其中out,in分别是归一化后和归一化前的特征值,min,max分别是特征值的最大值和最小值;a表示归一化前后之间的调整系数,b表示归一化前后之间的截距。此处应当说明的是,上述归一化方法仅作为本发明的优化算法,而在本领域中,同样可以采用其他的常规归一化方法进行处理。
[0105] 在一具体的实施例中,所述步骤c1中的支持向量机算法如下:
[0106] 建立支持向量机的数学模型:
[0107] maxγ,ω,b γi T i
[0108] s.t. y(wx+b)≥γ,i=1,...,m
[0109] ||w||+1.
[0110] 其中x,w,b分别表示特征值以及该特征值对应的权重和截距,该特征值为根据跑步机电流提取出来的特征值,包括均值、方差、峰度等特征;y表示对应的类别,例如空载时,负载站立、负载走动时、负载跑动时;γ表示最值,是一个数学概念;m表示特征值个数,即x的个数。
[0111] 将上述模型转换为其对偶问题,如下所示:
[0112]
[0113]
[0114] 0≤ai≤C,i=1,2,...,m
[0115] 其中x,y,m分别表示跑步机电流的特征值、跑步机不同工作状态下(空载、负载站立、负载走动、负载跑动)对应的类别标签以及特征值个数;K()表示使用的核函数,例如径向基函数;αi、αj表示转换时候对应的拉格朗日系数,属于纯数学意义符号;C表示αi的最大值,N表示α的个数。
[0116] 求出所有满足ai<C的正数解,然后计算:
[0117]
[0118] 其中b表示截距,ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数;
[0119] 得到了最优的a*,b*,以及所有的支持向量,组成一组训练好的支持向量机参数。
[0120] 在一具体的实施例中,所述步骤d1中的识别方法采用如下公式:
[0121]
[0122] 其中,sign()表示符号函数,当自变量小于零时候,结果为负,当自变量大于等于零的时候,结果为正;ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数,b表示对应的截距。
[0123] 此外,如图1及图3所示,为本发明一具体实施例的电动跑步机系统,该系统包括跑步机端模块和云端服务器模块两部分;所述跑步机端模块设置有选择开关,用于关闭或打开机器学习功能;所述云端服务器模块包含一机器学习模块、数据库模块,并响应所述选择开关发送的开启信号,执行机器学习。
[0124] 在一具体的实施例中,所述跑步机端模块包含一电流数据采集模块,在跑步机端的电机控制器中直接采集跑步机电机的工作电流数据,并上传至所述数据库模块中。这种采集方法精度高,并且,几乎不会增加物料成本由于跑步机通电以后,线圈会一直通过电流,因此,也不存在跑步机传感器发生故障就会影响数据采集功能的情况。
[0125] 在一具体的实施例中,所述机器学习模块依据所述数据库模块中的电流数据,获取预设波形参数值;所述获取预设波形参数值采用如下方式:采集在不同速度下跑步机空载、负载时电流值;该负载至少包括站立、走、跑动等状态。
[0126] 在一具体的实施例中,所述机器学习模块进一步包含计步模块,所述计步模块进一步包含:
[0127] 电流数据标记模块:由所述数据库模块获取采集的电流数据;事先采集跑步机在空载、负载状态下跑步机输出的电流数据,然后对不同状态的电流数据进行标记;
[0128] 特征提取模块:对采集的不同状态的电流数据求得的平均值和方差作为识别的特征,并对所述特征进行归一化处理;
[0129] 数据训练模块:将步骤b1得到的特征使用支持向量机算法进行训练,得到训练结果参数;
[0130] 识别模块:用训练好的支持向量机对跑步机实时输出的电流数据进行识别,如果识别为空载,并且空载状态持续一预设时间,跑步机停止,这一预设时间可以是例如3-5秒,或其他,也可以在跑步机段设置一时间预设装置,从而可以通过该装置人为调整上述预设时间的值;如果识别为负载,则进入步骤e1,开始计步;
[0131] 计步数据预处理模块:对跑步机电流数据先后进行均值滤波和整型低通滤波,以去掉高频噪声;
[0132] 计数模块:对滤波后的电流数据计算波峰出现的次数,作为步数。为了避免简单的阈值带来的误判,计步算法采用了波形分割的技术,具体为,判断目前的电流状态是变大还是变小,也就是处于波形的上升沿还是下降沿,如果当前是上升沿,则标记为波形的开始,并继续判断波形状态,直到遇见下一个上升沿,标记为波形的结束;如果当前是下降沿,则继续判断波形状态,直到遇见新的上升沿,才标记为波形的开始。利用该方法的方法,计算出该段时间内的电流值波形个数,其中一个完整波形对应一步,计数值加1,进而达到计步的功能。
[0133] 在一具体的实施例中,所述特征提取模块采用如下方式进行归一化处理:
[0134] 对采集的数据使用一滑动窗,依次滑过采集到的数据,对滑动窗内的数据求取平均值和方差;然后对均值和方差做归一化;
[0135] 所述归一化的方法为:
[0136]
[0137] 其中out,in分别是归一化后和归一化前的特征值,min,max分别是特征值的最大值和最小值;a表示归一化前后之间的调整系数,b表示归一化前后之间的截距。此处应当说明的是,上述归一化方法仅作为本发明的优化算法,而在本领域中,同样可以采用其他的常规归一化方法进行处理。
[0138] 在一具体的实施例中,所述数据训练模块采用以下方式进行数据训练:
[0139] 建立支持向量机的数学模型:
[0140] maxγ,ω,b γi T i
[0141] s.t. y(wx+b)≥γ,i=1,...,m
[0142] ||w||+1.
[0143] 其中x,w,b分别表示特征值以及该特征值对应的权重和截距,该特征值为根据跑步机电流提取出来的特征值,包括均值、方差、峰度等特征;y表示对应的类别,例如空载时,负载站立、负载走动时、负载跑动时;γ表示最值,是一个数学概念;m表示特征值个数,即x的个数。
[0144] 将上述模型转换为其对偶问题,如下所示:
[0145]
[0146]
[0147] 0≤ai≤C,i=1,2,...,m
[0148] 其中x,y,m分别表示跑步机电流的特征值、跑步机不同工作状态下(空载、负载站立、负载走动、负载跑动)对应的类别标签以及特征值个数;K()表示使用的核函数,例如径向基函数;αi、αj表示转换时候对应的拉格朗日系数,属于纯数学意义符号;C表示αi的最大值,N表示α的个数。
[0149] 求出所有满足ai<C的正数解,然后计算:
[0150]
[0151] 其中b表示截距,ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数;
[0152] 得到了最优的a*,b*,以及所有的支持向量,组成一组训练好的支持向量机参数。
[0153] 优选地,所述识别模块采用如下识别算法进行识别:
[0154]
[0155] 其中,sign()表示符号函数,当自变量小于零时候,结果为负,当自变量大于等于零的时候,结果为正;ai,yi分别拉格朗日系数以及相应的类别,k()表示核函数,b表示对应的截距。
[0156] 实施例2
[0157] 在一具体的实施例中,在图1及图3中,提供了一种电动跑步机控制系统,其可以实现如上述所述的计步方法,其中,该电动跑步机控制系统包括跑步机端模块和云端服务器模块两部分;跑步机端模块具有上传数据、接收数据、状态判断以及计步等功能,并可以设置与该些功能相对应的模块;云端服务器模块具有接收数据、机器学习、下发数据以及存储数据功能,并可以设置与该些功能相对应的模块;云端服务器模块包括至少一个数据库以及机器学习模块。
[0158] 在工作时,跑步机端与云端服务器建立通信连接,以完成数据的共享/传输,跑步机端开始工作后,实时检测电动机的电流参数值,并将接收到的该些电流参数值通过上传数据模块上传给云端服务器模块,云端服务器模块接收数据后,通过已经建立好的机器学习模型,进行机器学习,以判断跑步机所处的工作装填,即跑步机处于空载、负载站立、负载走路、负载跑步等状态中的何种状态,并将状态判断结果数据下发给跑步机,以判断当前跑步机所处的工作状态;在确定状态后,云端服务器同时将相应的状态计步需要对比的特征参数值下发给跑步机,该些特征参数值是经过机器学习后建立的用以判断是否计步的阈值;跑步机根据实时采集的电动机电流参数,经过整形、去噪滤波,将提取的参数与云端下发的特征参数进行比较,并在满足阈值条件时步数加1,循环完成计步。此外,云端也可以存储除机器学习中的数据外的计步等数据,以为用户提供一长期的可对比的运动量参数,供用户参考使用,例如,记录一段时间之内走路的运动量、相应的持续时间、日期、跑步的运动量、运动节奏、持续时间等等,并可以通过云端模块实现对用户选取的一段日期内的运动量绘制曲线或者其他示意图,以方便用户掌握自己的运动量和运动习惯等,提高用户体验。
[0159] 此外,需要进一步说明的是,本发明虽然提供了在云端服务器设置机器学习等模块的具体实施例,该设置有利于降低跑步机端的硬件设置复杂度,更便于使用,但是,本领域技术人员应当明了,也可以通过常规的技术手段,将该些云端以及跑步机端的模块进行调整或调换等,设置在不同的终端或者设备上,以完成类似的计步功能,例如,将机器学习模块也设置在跑步机端,或者将电流整形、去噪相应的模块设置在云端等,而该些常规的变换均应视为落入本发明的保护范围之内。
[0160] 预设直流驱动电机输出电流,优选地特征参数存储在跑步机显示仪表板的运算单元中;电机控制板按照固定的频率采集电机工作电流并发送到跑步机显示仪表板运算单元,优选地电机工作电流的采集频率为32赫兹;首先判断跑步机目前的状态是空载还是负载,如果是空载,那么空载持续一段时间之后跑步机将会停止;如果是负载,那么将进行计步。计步的详细过程为:首先对电机电流进行低通滤波,消除毛刺,然后再进行中值滤波,识别电流波形的起始点,然后开始求解完整的波形;随着时间推移,每一个完整的波形都与预设存储的标准波形进行对比;首先判断是否走步,如果波形与符合初始设定走步波形,则走步步数加一;如果不符合原来设定的走步波形,则判断是否跑步,如果符合初始设定的跑步波形,则跑步步数加一;走步步数与跑步步数实时显示到跑步机面板上。
[0161] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
QQ群二维码
意见反馈