lsm303d.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:pimaa 作者: outboxafrica 项目源码 文件源码
def getTiltHeading(self):
        magValue=self.getMag()
        accelValue=self.getRealAccel()

        X=self.X
        Y=self.Y
        Z=self.Z

        pitch = math.asin(-accelValue[X])

        print(accelValue[Y],pitch,math.cos(pitch),accelValue[Y]/math.cos(pitch),math.asin(accelValue[Y]/math.cos(pitch)))
        roll = math.asin(accelValue[Y]/math.cos(pitch))

        xh = magValue[X] * math.cos(pitch) + magValue[Z] * math.sin(pitch)
        yh = magValue[X] * math.sin(roll) * math.sin(pitch) + magValue[Y] * math.cos(roll) - magValue[Z] * math.sin(roll) * math.cos(pitch)
        zh = -magValue[X] * (roll) * math.sin(pitch) + magValue[Y] * math.sin(roll) + magValue[Z] * math.cos(roll) * math.cos(pitch)
        heading = 180 * math.atan2(yh, xh)/math.pi

        if (yh >= 0):
            return heading
        else:
            return (360 + heading)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号