可编程硬件Arduino初探(2)-神奇的鸡腿multiwii

0.前言

本文以multiwii为引子,重点介绍使用multiwii来完成多轴飞行器飞控的工作.

1.介绍

multiwii是任天堂公司针对wii游戏机的一个体感项目,主要应用于任天堂的wii游戏机遥控器手柄.用于检测玩家的动作,从而完成游戏互动.后来开源.

multiwii作为一个最初用于检测遥控器姿态的项目,后被用于研究多轴飞行器\云台等.目前有大量的玩家和学着在对这个项目进行着贡献.

具体内容请自行科普:

http://www.multiwii.com/

http://multiwii.org/

http://wiibrew.org/wiki/Wiimote/Extension_Controllers

http://baike.baidu.com/view/126669.htm

2.理论

整个项目使用arduino\avr作为中央处理器模块.使用陀螺仪\加速度计\地磁感应计\气压传感器作为传感器模块.通常常用的一体化传感器芯片有GY-80\GY-86

arduino和传感器之间使用i2c协议进行通信.所有数据均写在串口上.连接十分简单.仅需4个端口.SCL\SDA\Vcc\Gnd

下面介绍各个芯片作用:

arduino\avr:中央处理器;负责数据处理;

陀螺仪:负责感知XYZ三轴上的角度变化.

加速度计:用于感知XYZ三轴上的速度变化.

地磁感应计:用于感知方向

气压计:用于感知高度变化

 

在多轴飞行器的实践使用中,使用陀螺仪来保持姿态,使用加速度计来保持头向上,使用地磁感应计来保持方向,使用气压计来完成定高飞行.

在云台的实践中,使用陀螺仪来保持镜头方向即可.

也有一些简单的多轴飞行器,没有使用地磁和气压计,同样也能完成飞行工作.

3.硬件

arduino

  arduino pro mini 基于avr mega328 的arduino开发板

  5V 16Mhz

  http://kb.open.eefocus.com/index.php?title=Arduino_Pro_Mini

  

 

GY-86是集合了陀螺仪\加速度\磁场\气压为一体的传感器模块,下面介绍具体使用的芯片.

GY-86图:

  

  陀螺仪+加速度:MPU6050

  6轴加运动感器,结合了陀螺仪和加速度

  http://baike.baidu.com/view/8879632.htm?fromtitle=mpu6050&type=syn

  芯片图:

    

 

  罗盘:HMC5883L

  精度在1°-2°之间.

  http://wenku.baidu.com/link?url=8h03FVfWSjVifGQD0kh4tiwVmK4zYsS-x3NvYpBanYLLGd3hr22if6PNP4Bnvt8jlFur_tyCfikzd_GRmzCXUNhjjv_OiS8We6zMneEvXDe

  芯片图:

  

 

  气压:MS5611

  精度可达10cm

  http://baike.baidu.com/link?url=x3KuycbKcVnhdN8E0W1LMiAWcQmuwnaZKcGax1qxsA5n6u18FwDwI3JYyII-LEYRyyVyhYe6BT8obna8S_QVRa

  芯片图:

  

 

4.调试

5.实践

6.参考

posted on 2015-06-12 18:42  beenoisy  阅读(2787)  评论(1编辑  收藏  举报

导航