[RTL8195] Realtek Quadcopter

Ameba四轴飞行器简介

  • 马达编号与转向
    Ameba 四轴飞行器依照马达在四轴上的位置定义其编号分别为 0、1、2及3,马达在四轴飞行器不同位置所对应的编号及转向如下图。
    1
  • 飞行原理
    四轴飞行器运动姿态可分为横滚(Roll)、俯仰(Pitch)及偏航(Yaw)三种类型 ,定义如下图:
    2
    藉由控制三种姿态使飞行器前进后退、左右移动及旋转,控制方法如下:
    [横滚姿态]
    - 向右飞行: 马达编号 0、3 加速,马达编号 1、2 减速
    - 向左飞行: 马达编号 0、3 减速,马达编号 1、2 加速
    [俯仰姿态]
    - 向前飞行: 马达编号 2、3 加速,马达编号 0、1 减速
    - 向后飞行: 马达编号 2、3 减速,马达编号 0、1 加速
    [偏航姿态]
    - 顺时针旋转: 马达编号 0、2 加速,马达编号 1、3 减速
    - 逆时针旋转: 马达编号 0、2 减速,马达编号 1、3 加速

Ameba Quadcopter 硬体

  • 元件清单与规格
    19
  • 电路图
    Ameba Quadcopter 电路配置如下,不同位置的马达必须依照编号连接到相同编号的 PCA9685 PWM 通道,顺序不可改变。
    3
    请将 MPU9xxx 焊接在洞洞板上并以排针将洞洞板与 ameba 连接,确保飞行时的稳定性,如下图
    4
    MPU9XXX 应放置于机体中心位置,请注意摆放方向必须如下图,不可任意改变。
    5

Ameba Quadcopter 软体

  • Ameba 端
    请先下载sketch档: https://github.com/Ameba8195/Arduino/raw/master/sketch/RealtekQuadcopter.zip
    解压缩至Arduino的workspace里面,你可以在preference里面找到Arduino设定的workspace位置,
    它的位置可以在 “File” -> “Preferences”, 选项里有个 Sketchbook location, 这个位置就是Arduino IDE预设放置sketch与library的地方
    6
    接着重开Arduino IDE, 就可以在sketch里看到 “RealtekQuadcopter”
    7
    直接编译并下载至Ameba即可。
  • 手机控制端
    请至google play下载Realtek Pilot app,或是从网页开启: https://play.google.com/store/apps/details?id=com.quadcopter.quadpilot

    • 控制介面
      姿态控制介面控制四轴飞行器飞行时上升下降、前进后退、左右移动及旋转,有两种控制模式可选择,其控制方法如下
      8
      9
    • 姿态资讯介面
      此介面显示四轴飞行器定期回传至手机端的 仰俯 (Pitch),横滚 (Roll) 及航偏 Yaw) 角度资讯 ,可用来确认 MPU9XXX 状态是否正常。
      10
    • 参数设定介面
      此介面用于设定系统参数,设定方式请参考下一章节。
      11

参数设定

  • PID 控制器
    12
    Ameba 四轴飞行器使用两个 PID 控制器,分别为姿态 PID 控制器以及角速度 PID 控制器,一般情况下只需要修正以下参数:
    - Roll、Pitch 和 Yaw 的姿态(attitude)PID 控制器 P 项。
    - Roll、Pitch 和 Yaw 的姿态(attitude)PID 控制器 I 项及 I Limit 项。
    - Roll、Pitch 和 Yaw 的角速度(rate)PID 控制器 P 项。
    - Roll、Pitch 和 Yaw 的角速度(rate)PID 控制器 D 项。
    修正方式如下:
    1. 将 PID 控制器所有栏位的参数设定为 0。
    2. 将 Roll、Pitch 和 Yaw 的姿态 PID 控制器 P 项设置为 1。
    3. 将Roll、Pitch 和Yaw 的角速度PID 控制器P 项设定为0.1,尝试让四轴飞行器起飞并观察姿态修正的情况,若是修正力道过小,将值逐渐加大,若是修正过大导致飞机翻覆,将值减小,调整出一个值让四轴飞行时晃动幅度最小。
    4. 若是飞行时抖动仍然太大影响飞行,将Roll、 Pitch 和Yaw 的角速度PID 控制器D 项设定为0.0001,尝试让四轴飞行器起飞并观察姿态修正的情况,若是抖动无法消除,将此值逐渐加大直到抖动消除或变小。
    5. 若使用摇杆改变飞时方向时四轴飞行器反应过于灵敏,可调整Roll、 Pitch 和Yaw 的姿态PID 控制器I 项及I Limit 项降低灵敏度,将I 值设为1,I Limit 设定为5,尝试让四轴飞行器起飞并观察姿态修正的情况,若是操控摇杆时四轴飞行器反应仍过于灵敏则逐渐将Limit 加大,若反应过于迟钝则逐渐将Limit 减小。
    6. 视各姿态(Roll、Pitch 和 Yaw)飞行状况重复 1-5 步骤各自进行微调。
  • 角速度限制
    13
    限制角速度PID 控制器的最大输出值,一般情况可将此值设定为一个极大值(例如: 1000), 在干扰较大的环境(例如: 强风环境) 可尝试设定较小的值避免四轴飞行器过度修正造成震荡。
  • 横滚角补偿参数及俯仰角补偿参数
    14
    四轴重心偏移中心或是MPU9XXX 摆放倾斜会造成四轴惯性飞向某一飞行,此时需要设置角度补偿消除误差,横滚角补偿参数修正衡滚误差,俯仰角补偿参数修正俯仰误差,修正方式如下
    - 惯性向左飞行: 设置横滚角补偿参数大于 0,值越大修正幅度越大。
    - 惯性向右飞行: 设置横滚角补偿参数小于 0,值越小修正幅度越大。
    - 惯性向前飞行: 设置俯仰角补偿参数小于 0,值越小修正幅度越大。
    - 惯性向后飞行: 设置俯仰角补偿参数大于 0,值越大修正幅度越大。
  • 摇杆增益
    15
    改变摇杆前后及左右方向的控制增益,若将此参数增大,推动摇杆将获得较大的变量。
  • 油门限制
    16
    限制遥控器所能控制的油门最大值。
  • 控制模式
    17
    设定控制介面的模式。
  • 锁定、解除锁定以及同步按键
    18
    - 锁定按键: 点击后系统进入锁定状态,锁定状态将无法以手机控制四轴飞行器
    - 解除锁定按键: 解除系统锁定状态并同步设定参数
    - 同步按键: 点击后参数设定介面所设定参数将与四轴飞行器同步,每次修正系统参 数后须点击此键将手机与四轴飞行器同步

开始飞行

  • 飞行场地
    请确保飞行场地符合以下条件
    - 空旷
    - 低风速
    - 在草地上方飞行可降低摔机时四轴飞行器的损坏程度
  • 启动四轴飞行器并与手机连线
    - 将 ameba 上电后,使用手机搜寻 ameba WiFi AP (SSID: quadcopter) 并连线
    - 连线后姿态资讯介面会动态显示四轴飞行器俯仰、横滚及偏航角度,请检查数值是否正常
  • ESC 校正
    第一次飞行时请依照以下步骤校正 ESC
    - 移除飞行器上的桨
    - 将所有 PID 参数设定为 0
    - 将油门限制设定为 100%
    - 解除系统锁定状态
    - 依照 ESC 说明书指示进行校正
  • 解除控制系统锁定状态
    ameba 四轴飞行器上电后初始状态会将控制系统锁定,点击解除锁定按键解除锁定 状态,此时与 ameba 脚位 18 连接的 LED 灯会亮起。
  • 起飞
    - 缓慢推动油门,观察四轴飞行器起飞状态
    - 若是飞行容易翻覆或难以控制,尝试修正 PID 及横滚角、俯仰角补偿参数
  • 其他注意事项
    接近四轴飞行器前请先锁定系统避免发生危险
    - 受到讯号范围影响,飞行距离请勿超过 10 公尺
    - 锂聚电池过度放电将使电池寿命及品质降低,请避免电池内各cell的残电量低于3.8V

异常状态排除

  • 无法开机
    - 重新烧录 ameba 四轴飞行器程式
    - 检查电路元件各脚位是否连结到正确的位置,无短路及接点松动的情况发生
  • 无法稳定飞行
    - 检查马达旋转方向是否正确
    - 检查桨的配置是否正确
    - 检查各 ESC 与 PCA9685 所连接的通道编号是否正确
    - 重新校正 ESC
    - 调整 PID 参数
    - 检查电路是否发生短路
    - 避免环境有过多 2.4GHz 讯号干扰
  • 起飞后惯性朝特定方向飞行
    修正横滚角度补偿参数及俯仰角度补偿参数