我正在向控制台打印由运动服务读取的各种组件(大小、加速度和陀螺仪)。
我有点困惑,因为我的假设/直觉似乎不正确。
例如,当设备以某种方式倾斜/倾斜时,我看到的是持续读数,那里的震级大于100。这是即使设备本身几乎没有移动(如果有的话)。我预计震级将接近于零(0),因为设备根本没有移动。
我正在做简单的向量数学,根据设备从didGetNotificaiton委托的方法输出的3D坐标得到震级。通过简单的数学计算,我的意思是从三维坐标上得到矢量长度。
这里是一个样本数据点。
Movement magnetic= 134.824387985183.
Movement acceleration = 8.46825231870429.
Movement gyro = 16.482123031426.任何人都可以向我指出任何解释这些移动组件的文档/参考文件/示例吗?
发布于 2017-02-23 08:42:19
要正确回答您的问题,我们需要知道您拥有的SensorTag的确切模型是什么。但我可以帮你解释一下这些数字代表什么。
每个传感器标签包含多个MEMS (微机电系统),其中只有传感器MEMS的数据表才能描述如何解码这些信息。每个传感器MEMS规范文件的重要细节将是“测量范围”和“测量灵敏度”,下面的示例应该对此有所帮助。请注意,下面的示例是基于使用SensorTag无线微控制器的多标准CC2650规范创建的。该传感器标签使用Invensense作为陀螺仪、加速度计和罗盘(参见https://www.invensense.com/products/motion-tracking/9-axis/mpu-9250/)。
本例只关注加速度计,文档显示加速度计“全量程”(红色方框)和“灵敏度刻度因子”(蓝色框)。
由于这个单片机提供16位的加速度计数据,这意味着我们有2^16 = 65,535个数据点,可以用来转换数据。如果将传感器MEMS编程为±2g范围,这意味着我们的灵敏度为16,384 LSB/g。在其他规格文件中,此值通常用mg/LSB表示,在这种情况下,该值为0.061 mg/LSB。这意味着,每次LSB的输出变化1,它将代表一个变化0.061毫克。
例如,一个放在桌子上的加速度计,经历指向地面的重力加速度(1g)(负Z轴),因此,为了保持平衡,由于它在桌子上是平的,加速度计会读到1g指向天空(Z轴)。
因此,当加速度计的z轴分量在桌子上平坦时,其值应该是16500。因为,
16500 LSB * 0.061 mg/LSB =1 006.5 mg≈1 g
一旦将其应用于加速度计(或自带数值的陀螺仪)的所有轴上,就会有一个以所需单位表示的矢量。
希望这能有所帮助!
发布于 2017-02-21 02:55:12
每个sensortag都有维基页面。找到你的,就会有详细的解释。
好的。您正在使用的设备模型是什么?
发布于 2017-02-24 18:32:38
这是最新的SensorTag型号http://processors.wiki.ti.com/index.php/SensorTag2015的正确链接。
对于旧的SensorTag模型,请转到SensorTag
https://stackoverflow.com/questions/42308540
复制相似问题