5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 11019|回复: 39
打印 上一主题 下一主题

MWC2.1飞控 arduino代码设置

  [复制链接]
跳转到指定楼层
楼主
发表于 2013-1-16 14:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 donaldshp 于 2013-1-16 23:23 编辑

MWC2.1飞控 arduino代码设置

    玩了半年四轴写个笔记,以备自己查用,同时分享给模友们,不当之处请各位指正。

    刚开始接触MWC时,容易混淆的几个数字型号:2560或328是单片机芯片型号(存储控制程序用),3200或6050是飞控主芯片型号(控制飞控用)是否正确?

    我的四轴是X模式,550轴距山寨大疆机架,朗宇X2212-KV980电机,ATG-1047桨,好盈20A四合一电调,2200mAH-3S电池,MTK M-89 GPS。目前四轴无风时很稳定,但GPS一直不好用,一开GPS四轴乱跑。

    代码中几个关键设置:

  /****************  The type of multicopter  ****************/
    #define QUADX  //启用四轴X模式
  
  /****************     Motor minthrottle     ****************/
    #define MINTHROTTLE 1150  //解锁后油门怠速 默认1020

  /****************         I2C speed         ****************/
    #define I2C_SPEED 100000L  //启用这个就够用了
   
  /****************    Combined IMU Boards    ****************/
    #define FREEIMUv035_BMP //我是3200芯片
      
  /****************     Cam Stabilisation     ****************/
    #define SERVO_MIX_TILT  //启用云台
    #define SERVO_TILT      //启用云台
    #define TILT_PITCH_MIN    1020  //仰俯舵机最小值,不能低于1020
    #define TILT_PITCH_MAX    2000  //仰俯舵机最大值,不能高于2000
    #define TILT_PITCH_MIDDLE 1500  //仰俯舵机中立点
    #define TILT_PITCH_PROP   10    //仰俯补偿角度,如果反向数字前加“-”号
    #define TILT_ROLL_MIN     1020    //副翼舵机同上
    #define TILT_ROLL_MAX     2000
    #define TILT_ROLL_MIDDLE  1500
    #define TILT_ROLL_PROP    10
   
    #define CAM_SERVO_HIGH 2000  //快门舵机行程最高
    #define CAM_SERVO_LOW 1020   //快门舵机行程最低
    #define CAM_TIME_HIGH 1000   // 按下快门时间
    #define CAM_TIME_LOW 1000    // 按下快门时间

   /****************    Hexa Motor 5 & 6 Pins    ****************/
       //#define A0_A1_PIN_HEX   //四轴不启用,六轴用

   /****************        Aux 2 Pin           ****************/
      #define RCAUXPIN8     //打开AUX2用于功能控制
      //#define RCAUXPIN12  //作用同上,但不能与上面这行同时启用

  /****************         Gyro filters       ****************/
      #define ITG3200_LPF_42HZ //我是3200芯片
      
/**************** SECTION  6 - OPTIONAL FEATURES ****************/
     #define LEVEL_PDF //稳定模式增强,可以启用,默认不启用

  /****************     TX-related     ****************/
    #define DEADBAND 6  //遥控信号误差,默认值就好
    #define ALT_HOLD_THROTTLE_NEUTRAL_ZONE 20  //气压定高时有用,忽略油门摇杆轻微动作
  
  /*****************          GPS      ******************/
    #define GPS_SERIAL 2    //启用端口
    #define GPS_BAUD   9600 //我的GPS波特率
   
    #define GPS_LED_INDICATOR  //指示灯
   
    /* Get your magnetic decliniation from here : http://magnetic-declination.com/
    #define MAG_DECLINIATION  6.34f //当地磁偏角,上面一行有网址
   
  /****************          Buzzer        ****************/
    #define BUZZER  启用蜂鸣器
   
  /****************   battery voltage monitoring  ****************/
    #define VBAT              // 启用电压报警,要接好电源检测线
    #define VBATSCALE     131
    #define VBATLEVEL1_3S 114 // 11.4V时响一声 4S电池设置请模友补充
    #define VBATLEVEL2_3S 111 // 11.1V时响两声
    #define VBATLEVEL3_3S 99  //  9.9V时响三声
    #define NO_VBAT       16 // Avoid beeping without any battery

  /****************    motor, servo and other presets     **************/
    #define MOTOR_STOP  //解锁后电机不转

  /****************  IMU complimentary filter tuning  ****************/
    #define ACC_LPF_FACTOR 100  //软件滤波器,优化传感器数据,减低震动等影响 以下全部启用
    #define MG_LPF_FACTOR 4
    #define GYR_CMPF_FACTOR 400.0f
    #define GYR_CMPFM_FACTOR 200.0f

欢迎继续阅读楼主其他信息

沙发
发表于 2013-1-16 14:58 | 只看该作者
3200或6050应该是传感器……
3
发表于 2013-1-16 15:58 | 只看该作者
貌似要发新版本了 这几天更新很快
4
发表于 2013-1-16 18:08 | 只看该作者
起飞重量多少
5
发表于 2013-1-16 19:25 | 只看该作者
6050
6
发表于 2013-1-16 20:17 | 只看该作者
楼主你基础概念都错了

2560和328是单片机型号,也是主控芯片型号

所有的姿态解算和控制都由这片主控芯片完成

MPU6050是一个6轴传感器,相当于继承了陀螺仪和加速度计

这只是个传感器,给主控芯片提供数据以进行姿态解算和控制的
7
发表于 2013-1-17 09:11 | 只看该作者
支持MWC
8
发表于 2013-1-20 00:05 | 只看该作者
请教下,打开液晶模块需要那几句语句?
9
发表于 2013-1-20 12:44 | 只看该作者
话说软件滤波启用和不启用效果一样
10
发表于 2013-1-20 13:59 | 只看该作者
本帖最后由 riviera 于 2013-1-20 14:13 编辑

那么,如果是用作单独的云台增稳,不需要解锁,只需要上电就保持云台平衡,会不会是以下设置额
/****************  The type of multicopter  ****************/
#define GIMBAL  //启用云台

/****************         I2C speed         ****************/
#define I2C_SPEED 400000L  //传输速率400KBPS

/****************    Combined IMU Boards    ****************/
#define FREEIMUv035_BMP //3200芯片

/****************     Cam Stabilisation     ****************/
    #define SERVO_MIX_TILT  //启用云台
    #define SERVO_TILT      //启用云台
    #define TILT_PITCH_MIN    1020  //仰俯舵机最小值,不能低于1020
    #define TILT_PITCH_MAX    2000  //仰俯舵机最大值,不能高于2000
    #define TILT_PITCH_MIDDLE 1500  //仰俯舵机中立点
    #define TILT_PITCH_PROP   10    //仰俯补偿角度,如果反向数字前加“-”号
    #define TILT_ROLL_MIN     1020    //副翼舵机同上
    #define TILT_ROLL_MAX     2000
    #define TILT_ROLL_MIDDLE  1500
    #define TILT_ROLL_PROP    10
   
    #define CAM_SERVO_HIGH 2000  //快门舵机行程最高
    #define CAM_SERVO_LOW 1020   //快门舵机行程最低
    #define CAM_TIME_HIGH 1000   // 按下快门时间
    #define CAM_TIME_LOW 1000    // 按下快门时间

/****************        Aux 2 Pin           ****************/
      //#define RCAUXPIN8     //不需要任何额外功能控制
      //#define RCAUXPIN12  //

/****************         Gyro filters       ****************/
      #define ITG3200_LPF_42HZ //3200芯片

/**************** SECTION  6 - OPTIONAL FEATURES ****************/
     #define LEVEL_PDF //稳定模式增强,云台启用

/****************     TX-related     ****************/
    #define DEADBAND 5  //遥控信号误差

  /****************  IMU complimentary filter tuning  ****************/
    #define ACC_LPF_FACTOR 100  //软件滤波器,优化传感器数据,减低震动等影响 以下全部启用
    #define MG_LPF_FACTOR 4
    #define GYR_CMPF_FACTOR 400.0f
    #define GYR_CMPFM_FACTOR 200.0f

但是请问输入怎么接?RCG帖子是这样写的
The MultiWii gimbal connection only uses the receiver roll & pitch input & 2 servo outputs for a PITCH and ROLL camera/gimbal stabilization.
No ESC's are controlled.
The servo outputs are driven for each axis by a superposition of the calculated angle + the position of the RC input channel.
multiwii作为单独云台的时候只需要连接到接收机的roll、pitch输出,飞控板需要连接两个稳定舵机(分别是roll/pitch舵机),不接电调
舵机输出的角度是飞控计算的和来自接收机的PPM信号叠加角度。

意思是,接收输出的pitch/roll(或者是别的通道)接到飞控的pitch/roll,飞控的A0/A1/A2接三个舵机(两个为两轴云台舵机,一个是快门按压)

不知道我这样接对不对
11
发表于 2013-2-5 23:32 | 只看该作者
好帖子= =为什么会沉了。。。都是DIJ了吗。。
12
发表于 2013-2-6 20:31 | 只看该作者
问一下 为什么从官网上下 载下的程序在烧写时会报错 就是下面弹出一个黄色的框子?
13
发表于 2013-2-7 14:19 | 只看该作者
xuzhong 发表于 2013-2-6 20:31
问一下 为什么从官网上下 载下的程序在烧写时会报错 就是下面弹出一个黄色的框子?

是不是选错芯片了?
TOOLS-》board-》选择合适的。
14
发表于 2013-2-7 14:23 | 只看该作者
2560板子还是不能开启云台增稳 求答 案
15
发表于 2013-3-3 16:22 | 只看该作者



//#define MPU6050_LPF_256HZ     // This is the default setting, no need to uncomment, just for reference
      //#define MPU6050_LPF_188HZ
      //#define MPU6050_LPF_98HZ
      //#define MPU6050_LPF_42HZ
      //#define MPU6050_LPF_20HZ
      //#define MPU6050_LPF_10HZ
      //#define MPU6050_LPF_5HZ       // Use this only in extreme cases, rather change motors and/or props
这些语句有用么?选择哪一个呀

16
发表于 2013-3-3 17:07 | 只看该作者
好贴,顶一下
17
发表于 2013-3-6 22:08 | 只看该作者
这个贴怎么能沉呀   我在学习   一起搞起来   不要依赖大疆、玉兔、KK、等什么的!
18
发表于 2013-3-8 10:05 | 只看该作者
mw不错的
19
发表于 2013-3-14 23:17 | 只看该作者
GPS一直不好用,一开GPS四轴乱跑...

怎么解决??
20
发表于 2013-3-18 11:05 | 只看该作者
受益匪浅,正在研究2.1版本。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表