学生休息室

分享技术和现实生活中的例子,学生如何在他们的日常项目中使用MATLAB和Simulink # studentsuccess金宝app

创建自己的健身与MATLAB在线和MATLAB移动跟踪

你在找一些有趣的尝试使用MATLAB ?你知道你可以用吗MATLAB移动MATLAB在线创建自己的健康跟踪?如果你想了解更多下载代码

智能手机的传感器套件上,包括全球定位系统(GPS)、加速度计、陀螺仪,等等。你可以使用这个传感器数据连同一种算法或者一个数学模型来提取指标卡路里烧毁,步骤,或航班爬,告诉别人他们的锻炼效果如何。不仅你的任务是找出指标你也想提取但算法或数学模型来帮助你将原始传感器数据转换成你想要的指标。

如何开始

1。使用你的MathWorks账户访问MATLAB在线

2。下载MATLAB移动iOS和Android

  • 打开应用程序,选择“连接到MathWorks云”
  • 使用MathWorks帐户登录

3所示。熟悉MATLAB移动的传感器

  • 加速度(m / s ^ 2)
  • GPS的位置
    • 纬度(度)
    • 经度(度)
  • 速度(米/秒)
  • 高度(米)
  • 课程/标题(度)
  • 水平精度(m)
  • 方向(度)
  • 角速度(rad / s)

找到更多关于这些传感器看看这个文档页面

4所示。研究健身模型

工作流程表

健身模型计算的部分你的追踪;该算法将接受您所选择的传感器的数据,然后计算并返回度量你的欲望。这里的挑战是理解数学运算需要变换原始传感器数据您选择跟踪成有意义的指标。如果你有从GitHub下载代码,ExampleModel.mlx包含一个示例健身追踪模型,希望能对你有所启发。

收集和记录数据

时记录数据构建模型识别正确的传感器数据以外,你还必须确保各种活动数据代表预期的活动,例如:如果你只测试时收集的数据模型,你的模型不会足够强劲,能够跟踪和奖励更艰苦的活动,比如跑步或者骑自行车。如果你想要一个健壮的模型时,您必须考虑尽可能多的活动并适当地收集数据。记录传感器数据,使用MATLAB的手机应用程序:

  1. 导航到“传感器”屏幕上,单击其图标左上角
  2. 设置字段日志——这将日志传感器数据MAT-file并将其保存到你的MATLAB开车在一个文件夹命名为“MobileSensorData”
  3. 选择您希望日志数据从传感器
  4. 单击“开始”开始记录数据和移动! !
  5. 单击停止保存日志MATLAB开车——使用“在后台获取数据在传感器设置”选项来记录数据在手机锁定

Android:

截图

iPhone:

截图

访问数据

使用MATLAB在线时,MATLAB驱动可以从左边飞机访问标记的当前文件夹,如下所示。

截图

任何记录传感器数据存储在MATLAB中的MobileSensorData文件夹驱动;加载数据,双击文件夹中的适当MAT-file或使用以下命令:

> >负载(“filename.mat”);%替代文件名。垫与适当的文件名

作为一个数据加载到工作空间时间表;MATLAB的时间表是一个类型的表,将每一行的时间戳。使用以下命令查看的属性位置时间表。

截图

> > Position.Properties

代码

有两个尺寸的位置时间表:变量- >传感器收集的数据时间戳- >相应的传感器样品的日期和时间。

使用如下所示的括号表示法来访问一个特定范围的传感器数据如下所示。

:> > first6 =位置(1:6);

代码

提取数据数组没有时间戳和变量名的字符串元素,使用花括号符号如下所示。

> > first6 ={1:6,:}位置;

代码

第二个时间表维度- >时间戳包括年、月、日、小时一直到毫秒的样本;使用下面的命令来访问时间戳信息。

> > positionTime = Position.Timestamp;

检查数据,最好的办法是阴谋。MATLAB为您提供各种各样的情节来帮助您了解您在使用的数据。一个有效的方法来探索这些数据是阴谋反对运行时间以秒为单位。positionTime是一个datetime数组;将其转换为一个数组的运行时间,同时仍然保持时间抽样数据使用的完整性timeElapsedGitHub库提供的函数。MATLAB路径或文件添加到当前文件夹。使用以下命令运行它。

> > positionTime = timeElapsed (positionTime);

开发模型

一个可能的模型,能够实现我们的目标是将GPS数据的步骤。记住这只是一个可能的模型,我鼓励你去尝试其他的模型可能更准确。除以这个模型计算的步骤总路程通过1步长路程1的步骤。

\ \大量\美元;;步骤= \压裂{\ \;距离;(英尺)}{跨步\;长度\(\压裂{英尺}{一步})}$

在上面的方程中,平均步幅或者说2.5英尺,mysound。需要使用这个计算模型。GPS传感器或纬度和经度传感器可以帮助;开始和结束点,计算它们之间的距离。这个作品当覆盖的距离是一条直线。当从头到尾的路线不是一条直线?考虑以下场景:

截图

使用这个方程的距离将这个场景300英尺,因为开始和结束的位置是3平方分开而进一步在现实中旅行的人。计数器,使用模型在每一个点的路径旅行或每一个采样GPS点并添加这些点之间的距离来计算总距离所以你必须计算沿路径使用每个数据点的距离。现在,我们得到一个1500英尺的距离明显不同。记住我的建议收集数据或不同的情况?

经度和纬度数据从GPS传感器是在度,所以计算纬度和经度点之间的距离从GPS传感器degreesTravelled;将其转换为distanceTravelled在脚,使用以下关系:

$ \大型\压裂{距离\ \旅行;(英尺)}{地球\;周长\(英尺)}= \压裂{度\ \旅行;(度)}{地球\ \;;度\(度)}$

这个模型的MATLAB实现如下所示。

% %初始化变量earthCirc = 24901 * 5280;% 24901英里,转换成英尺乘以5280 totaldis = 0;步= 2.5;%的脚lat ={1,}位置;朗={2,}位置;% %处理循环因为我= 1:(长度(lat) 1) %遍历每个数据样本lat1 =纬度(i);%样本lon1 = i的经度纬度(我);第i个样本lat2 = %的经度纬度(i + 1);%纬度(i + 1)的th样本lon2 =经度(i + 1);%纬度(i + 1)的th样本diff =距离(lon1, lat1 lat2, lon2);% MATLAB函数来计算两点之间的距离一个球体说= (diff / 360) * earthCirc;%度转换成英尺totaldis = totaldis +说;结束步骤= totaldis_ft /步伐;

分享你的发现

为什么还要发展健身追踪模型,如果你不做一个漂亮的阴谋?使用MATLAB的绘图功能目前数据你未来的可穿戴技术客户和我们!

情节(纬度、经度);情节(- r的纬度,经度,纬度(1),朗(1)* g, lat(结束),朗(结束),“* b”,“线宽”,3,MarkerSize, 10);抓住;传奇(“路线”,“起点”,“终点”);包含(纬度)ylabel(经度);标题(sprintf('锻炼总结:你把% 0.0步骤,% 0.3 f英里”,步骤,totaldis_ft / 5280));推迟

截图

总之,这是一个有趣的MATLAB项目工作,通过使用手机在你的口袋里和可穿戴技术的MATLAB探索世界。一群学生富兰克林高中在马萨诸塞州,设计了一个健身追踪充分利用手机传感器套件来计算距离,的楼梯爬,卡路里烧毁。在MATLAB中央发布你的文件的文件交换或GitHub和寄给我们您的存储库的链接!我们希望看到你能够实现!

|
  • 打印

댓글

댓글을남기려면링크를클릭하여MathWorks계정에로그인하거나계정을새로만드십시오。