重力矢量(法向矢量到 X Y 平面)的三角加速度计 Z 角
Trigonometry accelerometer Z angle from gravity vector (normal vector to X Y plane)
这个让我摸不着头脑了一段时间。我有一个加速度计,并使用这个很棒的脚本成功测量了 X 和 Y 角度:https://github.com/ozzmaker/BerryIMU/blob/master/python-BerryIMU-gryo-accel-compass/berryIMU.py
我想计算的是重力向量和 Z 轴之间的角度差(其中 Z 是由 X 和 Y 角创建的平面的法向量)。
我在 google 上找到了一些图片并对其进行了编辑以尝试解释问题。见下文。
Angle of Z to gravity vector
如果上面githut的脚本计算X和Y如下:
import math
RAD_TO_DEG = 57.295
ACCy = (see github script for details)
ACCz = (see github script for details)
ACCx = (see github script for details)
Xangle = (math.atan2(ACCy,ACCz)*RAD_TO_DEG)
Yangle = (math.atan2(ACCz,ACCx)*RAD_TO_DEG)
我如何计算图中所示的重力矢量的 Z 角增量?会不会是:
Zangle = (math.atan2(ACCx,ACCy)*RAD_TO_DEG)
math.asin(ACCz / math.sqrt(ACCx ** 2 + ACCy **2 + ACCz ** 2)) * RAD_TO_DEG
可能就是您要找的。
这个让我摸不着头脑了一段时间。我有一个加速度计,并使用这个很棒的脚本成功测量了 X 和 Y 角度:https://github.com/ozzmaker/BerryIMU/blob/master/python-BerryIMU-gryo-accel-compass/berryIMU.py
我想计算的是重力向量和 Z 轴之间的角度差(其中 Z 是由 X 和 Y 角创建的平面的法向量)。
我在 google 上找到了一些图片并对其进行了编辑以尝试解释问题。见下文。
Angle of Z to gravity vector
如果上面githut的脚本计算X和Y如下:
import math
RAD_TO_DEG = 57.295
ACCy = (see github script for details)
ACCz = (see github script for details)
ACCx = (see github script for details)
Xangle = (math.atan2(ACCy,ACCz)*RAD_TO_DEG)
Yangle = (math.atan2(ACCz,ACCx)*RAD_TO_DEG)
我如何计算图中所示的重力矢量的 Z 角增量?会不会是:
Zangle = (math.atan2(ACCx,ACCy)*RAD_TO_DEG)
math.asin(ACCz / math.sqrt(ACCx ** 2 + ACCy **2 + ACCz ** 2)) * RAD_TO_DEG
可能就是您要找的。