将 Iphone 加速度计数据集从 G 单位转换为字节以用于 Arduino 101

Convert Iphone accelerometer dataset from G unit to bytes to be used with Arduino 101

我正在尝试转换以下数据集提供的加速度计值,以训练 Arduino 101 的英特尔居里 KNN 芯片识别步行和 运行 动作:

https://github.com/mmalekzadeh/motion-sense

此数据集是使用 Iphone 6s 加速度计收集的。因为我希望 arduino 能够通过使用自己的加速度计(而不是 iphone 来识别步行和 运行,所以我需要将数据集转换为 arduino 101(字节)使用的相同数据表示).如何做到这一点?

这是我做的:

1) 找到 Iphone 6s 加速度计数据表。 Iphone 6s (just like the Iphone 6) has two different chips, but probably this 是数据集中使用的那个。

2) 找到居里芯片加速度计数据表。 Available here

3) Iphone 数据以每个轴的重力和 userAcceleration 表示,而 Curie 芯片仅 return 每个轴 4 个字节的值。 Here写着Iphone总加速度是gravity和userAcceleration的总和...但是用来表示这个值的单位是什么?我认为是 G 单位...但我不确定...

更新:数据集用sensitivity range of ±8g表示为G单位。要从 Gs 转换数据,可以使用 L. Putvin 发布的以下公式。

如果您想识别步行并且 运行 如果您想要安全,则需要使用 8g 或 16g 范围(所需的最大值还取决于传感器佩戴的位置,因为加速度body 的某些部分比其他部分更大)。您必须先决定是哪一个,然后将 phone 的 G 等级乘以 LSB 数。

灵敏度(校准)

— (A): ±2g: 16384 LSB/g

— ±4g: 8192 LSB/g

— ±8g: 4096 LSB/g

— ±16g: 2048 LSB/g

当您设置 arduino 时,当您切换到内部传感器时,您需要更改默认值的灵敏度。