主要内容

获取和情节角速度和姿态数据从您的移动设备

这个例子展示了如何情节来自多个传感器的数据在一个Android™或iOS移动设备在一个时间轴。测量角速度和姿态将收集到的设备和绘制了绝对时间。这将允许数据从两个传感器之间的相关性是可视化的基础上测量的实际时间。

设置您的移动设备

为了从一个移动设备接收数据MATLAB®,您将需要安装和设置MATLAB移动™应用程序在您的移动设备。

登录到MathWorks从MATLAB®云手机设置。

创建一个连接到您的移动设备

命令屏幕MATLAB移动,使用mobiledev命令来创建一个对象,代表你的移动设备。

m = mobiledev;

显示输出应该显示联系:1,这表明mobiledev对象已成功建立了一个连接到应用程序。

准备来自多个传感器的数据采集

使用适当的mobiledev属性,使设备上的传感器。

m。AngularVelocitySensorEnabled = 1;m。OrientationSensorEnabled = 1;

开始获取数据

使传感器后,传感器MATLAB移动屏幕将显示当前的传感器测量的数据。的日志记录属性允许您将传感器数据开始mobiledev

m。日志= 1;

设备现在发射传感器数据。

的日志,设备躺平放在一个表与屏幕朝上。积极的轴的角速度传感器的定义扩展从装置的顶部。积极的方向传感器是定义为一个顺时针绕y轴旋转时面临着轴的正方向。

在测井过程中,设备是平躺着,脸朝下几次对其轴。这生成轴角速度和卷的变化方向的变化。

停止获取数据

日志记录属性是再次使用设备停止发送传感器数据mobiledev

m。日志= 0;

检索记录数据

每个传感器的数据可以从访问mobiledev对象。创建两个不同的时间戳变量因为角速度和姿态数据可能不是记录的设备在同一时间。

(av, tav) = angvellog (m);[o] = orientlog (m);

绘制原始传感器数据

感兴趣的数据从传感器分离成单独的变量和策划。

yAngVel = av (:, 2);滚= o (: 3);情节(yAngVel,抗议者,卷);传奇(“Y”角速度,“滚”);包含(“相对时间(s)”);

相对于数据绘制在秒mobiledevInitialTimestamp财产。这个属性提供了绝对时间记录的第一个数据点通过一个传感器和MATLAB。它作为参考点的时间戳的传感器数据访问使用等功能angvellogorientlog相对于给定在秒InitialTimestamp

转换为绝对时间戳

将所有传感器时间戳转换成绝对的时间戳,InitialTimestamp值转换为datetime对象。单个传感器的时间戳,以秒为单位,转化成。这个简化了的日期计算相对时间戳变成了绝对的时间戳。

tInit = datetime (m.InitialTimestamp,“InputFormat”,“dd-MM-yyyy HH: mm: ss.SSS”);tAngVel = tInit +秒(tav);tOrient = tInit +秒();

情节多个传感器绝对时间

如今,两传感器的绝对时间戳代表使用datetime。这使得它很容易想象的实际时间重大事件发生在传感器读数。

方向传感器使用单位的学位,而角速度传感器使用单位的弧度每秒。再次之前策划,yAngVel是每秒转换为度。

yAngVelDeg = yAngVel * 180 /π;情节(tAngVel yAngVelDeg、tOrient卷);传奇(“Y”角速度,“滚”);包含(“绝对时间(s)”);

清理

关掉启用传感器和清晰mobiledev

m。AngularVelocitySensorEnabled = 0;m。OrientationSensorEnabled = 0;清晰的;