关于mwc传感器的问题,玩多轴飞行器的朋友来看看
mwc基于arduino 328p 或 1280 的多轴飞控。http://code.google.com/p/multiwii/
看了它的传感器数据,很是郁闷。就说最基本的 加速度 和 陀螺仪。
不动的时候 陀螺仪 无值变化,每个轴都是0,但加速度 居然有,且停在不同位置的值也不一样;
动的时候 陀螺仪 值都变了,加速度 也变;
所以现在感觉这个 加速度 和 陀螺仪 好像是反了,怎么会有这么奇怪的事?
这个是对的,陀螺仪是动态时才有输出,加速度传感器感受重力加速度。重力加速度根据万有引力定律,大质量物体远近,包括月亮移动等等都会引起漂移。早晚同一地点的重力加速度都有差别的~
所以,加速度传感器的数值要经过算法滤波,输出才能稳定。 本帖最后由 wnq 于 2012-2-24 10:35 编辑
谢谢ls的解答,加速度的勉强能理解啦。
但陀螺仪还是不太懂,既然是动态的,那怎么知道自己转了多少度,难道说每次通电都要初始化一次,寻找原点(每次还必须放平地上,否则原点就错了),然后 累加 陀螺仪 度数 才能知道自己转到哪呢?
:L这样好麻烦啊。。。 wnq 发表于 2012-2-24 10:29 static/image/common/back.gif
谢谢ls的解答,加速度的勉强能理解啦。
但陀螺仪还是不太懂,既然是动态的,那怎么知道自己转了多少度,难 ...
这个帖子顶部有陀螺仪的介绍,也有一个动态图,你可以看一下。
http://www.geek-workshop.com/forum.php?mod=viewthread&tid=84 wnq 发表于 2012-2-24 10:29 static/image/common/back.gif
谢谢ls的解答,加速度的勉强能理解啦。
但陀螺仪还是不太懂,既然是动态的,那怎么知道自己转了多少度,难 ...
我的理解:陀螺仪实际上应该叫“角速度加速度仪”,所以它检测的是角速度的瞬间加速度量,而不是角度量,要想获得角度,必须对陀螺仪的数据进行积分才可以获得。每次在起飞前,需要进行初始化工作。但凡是积分量,原则上都会有累计误差,所以需要用三轴地磁传感器做定期的修正,或者是GPS。我有一个这个MWC版的飞控,参数很多,很不好调。现在还是哆哆嗦嗦的,唉。 应该是角速度传感器,正因为这样姿态控制才必须要配合加速度计。
不过说实话我也没搞清这两个传感器之间的算法…… 本帖最后由 darkorigin 于 2012-5-26 23:56 编辑
你的代码错了吧。 mwc的代码对应的传感器不同,端口不同,虽然都是IIC通讯,但是。。。端口号呢?
端口号定义在
Sensors.pde里面,自己对照看下。和你的模块实际地址是都相对应
还有就是图形化调试工具可以打开用下 wnq 发表于 2012-2-24 10:29 static/image/common/back.gif
谢谢ls的解答,加速度的勉强能理解啦。
但陀螺仪还是不太懂,既然是动态的,那怎么知道自己转了多少度,难 ...
MWC 可以用它带的校正软件来调试的。。。。。。。。
最近一直在学习它的代码,不过还是很多东西不懂。 加速度传感器:测量加速度。静止的时候也有重力加速度。
角速度传感器(陀螺传感器):测量角速度。静止就没输出了。
角度传感器:没有。用算法融合加速度和角速度信息,估计角度。 用加速度传感器也能计算出大概的角度
页:
[1]