顾新锋,倪晨刚,徐 荣,刘童岭
(中国卫星海上测控部,江苏 江阴 214431)
一种跑步机3D视频同步播放系统的设计与实现
顾新锋,倪晨刚,徐 荣,刘童岭
(中国卫星海上测控部,江苏 江阴 214431)
针对目前跑步机锻炼模式单调、乏味的问题,结合视频播放设备设计了一套跑步机3D视频同步播放控制系统。采用磁场传感器采集跑步机转轴状态,通过单片机实时计算跑步机速度,并进行滤波以后送给上位机。编写上位机控制软件,利用Windows键盘相关的API函数控制播放器速度,使视频播放速度随着跑步者速度变化而同步改变,实现了体验者与视频播放的互动,增强了跑步运动的趣味性。实验结果表明,设计方案有效可行,且实用性强,可广泛地应用到其他健身器械中。
跑步机;主动快门式;单片机;磁场传感器
随着时代的发展,人们的物质生活水平不断提高,健康意识也随之不断增强。走、跑作为一种健康的有氧代谢健身活动,受到国内外体育界与医学界的高度重视[1]。这种运动在提高心肺功能、增加肌肉与骨骼强度方面都有显著效果,如今已广泛应用于运动锻炼、医疗复健等领域。进行跑步运动,通常有多种场地可选,如运动场、道路、跑步机等,室外运动场、道路等视野开阔,能够更好地放松心情,但容易受环境、天气、场地等自然因素的限制;而使用室内跑步机随时都可以进行运动,比较方便,不受天气、气候的影响,但在跑步机上跑步时视野窄,比较单调,不利于缓解心情、调解压力。跑步者在跑步机上跑步时,有的戴上耳机,通过音乐来放松心情;有的在跑步机前用平板电脑播放视频,来缓解跑步健身时的单调,但平板电脑屏幕较小,在跑步过程中眼睛容易累。
在3D技术日益发达的今天,如果能在跑步时把跑道或道路等室外的场景用大屏幕的3D电视机呈现在眼前,体验者通过配戴3D眼睛观看视频,并且在体验的过程中与视频互动,即视频播放的速度会随着体验者速度的快慢而同步改变,让体验者有一种如同穿越时空,到室外跑步的感受,跑步者跑步时既不受天气、气候变化的影响,随时都可以进行,而且在锻炼身体的同时起到放松心情,缓解压力的作用。
跑步机视频同步播放系统以现有跑步机为基础,加装速度测量传感器,通过单片机[2]采集传感器数据,经过处理后发送给上位机计算机,在计算机上编写软件接收单片机传送过来的测量数据,并根据跑步机参数计算跑步的速度,再根据速度的变化控制视频播放器的播放速度,从而实现跑步机速度与视频播放速度的同步。系统原理框图如图1所示。
图1 跑步机3D视频同步播放系统原理框图
要使得视频播放速度与体验者速度同步,需要获取跑步机的速度信息,现有的跑步机具有速度显示和控制功能,可以在跑步的过程中通过调节按钮控制跑步机速度,也可以通过自适应的方式调节跑步机的速度[3-5],并实时显示,但它没有对外速度输出接口,需要自己研制跑步机速度采集设备。
实现跑步机速度采集有以下三种方案:
方案1:跑步机采用七段数码管显示速度,可以通过采集数码管各管脚的电平状态并进行解码得到。
方案2:跑步的速度通过按键控制,可以通过采集速度控制按键的状态间接得到跑步机的速度。
方案3:利用独立的传感器来采集跑步机的速度。
方案1和方案2需要对跑步机的线路进行改造,可能会影响跑步机的性能,方案3需要增加传感器,但采用独立的传感器,不会影响跑步机的性能,综合考虑,选用方案3。
跑步机具有速度控制功能,自身存在速度采集模块,拆开跑步机,在跑步机内部带动履带前进的滚轴上有一圆形磁铁,在支架上有一个磁场传感器。因此,可以在跑步机磁场传感器附近加装一套磁场传感器,采集跑步机的速度。当转轴每转动一圈,会带动磁铁在磁场传感器附近穿过一次,磁场传感器就会输出一个脉冲信号,只需要测量转轴旋转一圈对应履带前进的距离及相邻两次脉冲输出的时间间隔,就可以计算得到履带前进的速度,即跑步机的速度可表示为:
v=vn·S
(1)
式中,S为跑步机转轴旋转一圈对应履带前进的距离,vn为跑步机转轴的转速,vn=1/Δt,Δt为相邻两次脉冲输出时间间隔。
考虑到不同跑步机转轴旋转一周对应履带前进的距离不同,速度的计算在计算机端实现。由于在跑步过程中,每一步给履带带来一定的冲击,造成时间间隔的波动,影响视频控制的稳定性,因此,需要对时间间隔进行滤波后再发送给计算机,进行速度的计算。单片机得到的数据以串口形式发送给计算机。
(1)速度值平滑滤波
为了减小跑步时的冲击带来的影响,对测量得到的跑步机转速vn进行平滑滤波处理。这里采用一种被称为“leaky integration”的方法,用X(n)(n=1,2,…)表示当前时刻速度值,Y(n)表示当前时刻滤波结果,则Y(n)可表示为[6-7]:
Y(n)=α×Y(n-1)+(1-α)×X(n)
(2)
式中,α(0≤α≤1)为平滑系数,α=0表示不进行平滑,α越大平滑性越好,但系统响应速度会变慢,一般根据经验值设定,这里设置为0.9。
(2)速度信息的传输
单片机和上位机之间采用串口方式进行通信,为了保证数据的正确接收和解调,在数据中增加开始标志和校验码。
数据格式为$xx,ddcc,HH;其中$为开始标志,xx从00到99表示传感器编号,ddcc为速度,dd表示速度的整数部分,cc表示速度的小数部分,如ddcc为1232表示转速为vn=12.32圈/s,HH为校验码,用两位十六进制数表示,采用字符形式传输,校验码为从开始标志到第二个逗号共9个字符的ASCII码的校验和的十六进制形式。
单片机每收到一个脉冲信号,利用内部的定时器计算得到与上个冲的时间间隔Δt,再计算跑步机的转速vn,滤波后组帧发送给计算机,考虑到一般跑步机设定的最低速度大于1 km/h,若单片机在10 s内未收到脉冲信号,表明跑步机已停止运转,直接置vn=0进行数据发送。当计算机收到$表示一帧数据开始,对包括$在内的连续9个字符计算校验和,将结果与HH代表的十六进制发送校验和进行比较,若比较结果一致,表明数据传输正确,否则认为数据传输错误,做丢弃处理。
视频的同步播放可以通过两种方法来实现,一种是自己设计制作播放速度可控的3D播放器;另一种是利用软件控制播放器的播放速度。由于自己设计制作播放器难度相对较大,选用后一种方案,根据单片机送到计算机的跑步机转速,根据跑步机转轴旋转一圈对应的距离参数计算跑步的速度,再转换成播放器的控制信号,控制视频播放的速度。
用软件控制播放器速度,需要播放器有相应的控制接口。通常,播放器的播放控制可以用鼠标来控制,也可以利用快捷键通过键盘实现快速控制,因此,需要选择一款可以通过键盘按键控制播放速度的3D播放软件,利用软件模拟键盘按键来实现播放器速度的控制。
以PotPlayer播放器为例,它可以实现不同格式3D视频的播放,并且播放速度可以通过快捷键控制。打开视频后其播放的初始速度为1,通过x和c两个键实现播放速度的控制,通过空格键实现暂停与播放控制。按下c键为加速,每按一次,速度增加0.1,按下x为减速,每按一次,速度降低0.1,播放器最高速度为2倍速,最低为0.2倍速。在软件设计中,通过Windows的API函数来模拟键盘按键控制播放器的播放速度。播放器控制软件界面如图2所示。
图2 播放器速度控制软件
软件通过串口设置,选择合适的端口和波特率与单片机通信,获取转轴的转速vn。其中周长为跑步机转轴的周长,等价为转轴旋转一圈,履带前进的距离,当前数值为单片机实时发送的转轴速度,速度为转换后跑步机履带前进的速度,单位为km/h。周长可以在软件中通过“+”或“-”按钮调节,也可以直接输入对应的数字,以适应不同的跑步机。
实验用跑步机能够设置的最低速度为2 km/h,最高速度为20 km/h,步进变化为0.1 km/h。在拍摄视频时,以10 km/h的速度前进,所以当跑步机速度为10 km/h时,控制播放器速度为1,即以正常速度播放视频;当跑步机速度为20 km/h时,控制播放器以2倍速播放视频。由于跑步机速度是一个连续变化量,而播放器的速度控制是0.1倍速变化的离散控制量,需要在软件中将连续变化的速度转换为离散的控制量,软件设计流程如图3所示,具体对应关系如表1所示。
图3 播放器控制流程图
跑步机速度v/(km/h)播放器速度000 软件启动时,首先对其进行初始化,根据数据连接端口进行接收端口设置,并初始化播放器速度都为0.2,使播放器暂停播放。当跑步机开始运行,速度从零开始增加,当软件接收到速度信息时,模拟空格键,使播放器开始播放,当速度v>2.5时,模拟键盘c键,控制播放器速度增加0.1,变为0.3倍速;当v>3.5时,模拟键盘c键,控制播放器速度再增加0.1,变为0.4倍速,依次类推。跑步机减速时,模拟键盘x键,控制播放器播放速度减慢,当跑步机速度为零时,模拟空格键,控制播放器暂停。至此,就实现了跑步机速度与播放器速度的同步控制。 通过市场调查,为达到较好的显示效果,选定一款三星的65英寸的电视机作为3D视频的播放显示器,并配合主动快门式3D眼镜,以达到观看效果。 3D视频获取方式有两种,一是直接下载,二是自己拍摄。为了能够有一种在真实场景中漫步的效果,选择后者,利用3D摄像机在道路上拍摄视频。在拍摄过程中,把3D摄像机通过三脚架安放在小型汽车中,从天窗伸出拍摄车前的景色,让汽车启动后保持10 km/h的速度匀速前进,选定马路、运动场跑道等路线进行拍摄。 Δt采用单片机采集磁场传感器输出脉冲信号,利用定时计数器测量相邻脉冲之间的时间差得到。对于距离S,首先在跑步机履带上做好标记,然后让转轴旋转一圈,测量履带前进的距离,利用多次测量值求平均后得到。表2是5次测量得到的结果。 表2 跑步机转周旋转一圈对应履带前进的距离 对5次测量结果求平均,得到跑步机转轴旋转1圈履带前进的平均距离S=243 mm,在软件界面的周长对应的文本框中填入距离值243。这一数值也可以通过如下的调试方式得到。 在调试时先不打开播放器,只开启播放器同步控制软件,当跑步机速度稳定以后,查看软件界面显示的速度与跑步机设置的速度是否一致,若不一致可以通过软件界面的“+”按钮或“-”按钮调节周长,使得播放器控制软件界面显示的速度值与跑步机的实际速度一致。这里假设跑步机显示的速度是准确的。 暂停跑步机,打开播放器,加载待播放的视频文件,将播放器速度调到最低0.2倍速,并暂停播放,开启跑步机,设置跑步机的速度,随着跑步机履带开始前进行,视频开始播放,当跑步机速度加快时,播放器的速度也随之加快;当跑步机速度减慢时,播放器的速度也随之降低;当跑步机暂停时,视频也随即暂停播放。经测试,跑步机的速度与播放器的播放速度的关系与表1给出的值一致。 本文针对目前跑步机与视频播放相对独立的情况,利用磁场传感器结合单片机制作了跑步机的速度测量模块,利用Windows的与键盘相关的API函数设计播放器速度控制软件,实现了播放器速度与跑步机速度的同步控制,并且可以通过软件界面对跑步机参数进行调节,以适应不同的跑步机,也可以实现速度的比例变化。采用主动快门式3D电视与相应的眼镜结合,用3D数码相机匀速拍摄道路和跑道视频,让体验者在跑步机上跑步时获得如同在道路上跑步一样的感受,具有沉浸式的效果[8],且有助于缓解压力,放松心情。 [1] 程龙乐. 基于视频图像处理的跑步机速度自适应控制技术的研究[D]. 合肥:安徽大学,2015. [2] MONK S. 基于Anduino的趣味电子制作[M]. 吴兰臻,郑海昕,王天祥,译.北京:科学出版社,2011. [3] 刘洋,周旭,孙怡宁,等. 基于步法的跑步机速度跟踪控制方法[J]. 传感技术学报, 2015, 28(2):121-124. [4] 崔文琪, 李峰. 下肢康复机器人系统中的跑步机速度跟随自适应控制方法[J]. 现代制造工程,2013(9): 30-34. [5] 王鹏, 韩颖. 电动跑步机上步态特征获取系统的设计[J]. 电子测试,2013(22): 238-239. [6] 刘利生.外弹道测量数据处理[M].北京:国防工业出版社,2002. [7] 陈以恩.遥测数据处理[M].北京:国防工业出版社,2002. [8] 李婷婷, 刘石, 陈发禄. 沉浸式虚拟校园仿真系统开发及关键技术研究[J]. 微型机与应用,2017,36(1):79-82. Design and implementation of 3D video synchronous broadcasting system for the treadmill Gu Xinfeng, Ni Chengang, Xu Rong, Liu Tongling (China Satellite Maritime Tracking & Control Department, Jiangyin 214431, China) A 3D Video synchronous broadcasting system for the treadmill is designed in view of the monotonicity and insipidity of the traditional treadmill. The speed of treadmill is measured by the magnetic sensor and the single chip machine and then it is transmitted to the PC software after filtering. PC software, controlling the speed of 3 dimension (3D) player, is compiled by using the Windows Application Programming Interface(API) function related to the keyboard. The speed of 3D video player is synchronized with the speed of the treadmill. It realizes the interaction between experiencer and the 3D player, and it increases the enjoyment. The results show the efficiency, feasibility and practicability of the design. The technique also can be widely applied in other fitness equipments. treadmill; active shutter type; single chip machine; magnetic sensors TP273 A 10.19358/j.issn.1674- 7720.2017.20.028 顾新锋,倪晨刚,徐荣,等.一种跑步机3D视频同步播放系统的设计与实现[J].微型机与应用,2017,36(20):101-103,107. 2017-03-23) 顾新锋(1983-),通信作者,男,博士,工程师,主要研究方向:航天测控、信号处理、嵌入式系统开发与应用。E-mail:y6ckgxf@126.com。 倪晨刚(1989-),男,本科,助理工程师,主要研究方向:3D建模与仿真。 徐荣(1979-),男,硕士,工程师,主要研究方向:航天测控。2 3D电视的选购与3D视频的获取
3 软硬件平台搭建及测试
4 结论