学习Crazyflie 2.X平台(3)

Loco Positioning System

Loco Positioning System可以配置两种模式:

  1. Two Way Ranging(TWR)模式
  2. Time Difference of Arrival(TDoA)模式

TWR模式的设置过程更加直接简单,加上TDoA模式可以通过TWR轻松切换过去,因此建议即使你想使用TDoA模式,优先考虑通过先进入TWR模式再切换至TDoA。为了解释anchor placements,我们有2个参考系统(reference systems):

  • 6 anchors(主要为TWR模式)
  • 8 anchors(主要为TDoA模式)

更新最新版的loco positioning firmware

为了使用能Loco Positioning System,我们需要:

  1. 安装相应的expansion deck:Loco positioning deck
  2. 更新最新版本的Crazyflie client
  3. 在Crazyflie client上,更新最新版本的firmware

准备anchors

  • 确保已经在Crazyflie client上,更新最新版本的firmware
  • 确保配置好LPS(Loco Positioning System) nodes
    1. LPS配置工具,参见https://github.com/bitcraze/lps-tools
    2. 下载最新LPS node firmware——lps-node-firmware.dfu
    3. 更新LPS nodes
      • 打开LPS配置工具
      • 通过USB连接到电脑,并保持DFU按钮要一直按着,这样就可以启动LPS node的DFU mode
      • In DFU mode, the node will be displayed as “STM32 BOOTLOADER” in Zadig.
      • 点击Browse按钮,并选择刚下载的firmware: lps-node-firmware.dfu, 然后更新node
      • firmware更新结束,按reset按钮

如何使用LPS做飞行试验

当Crazyflie 2.X与LPS在一起用,我们可以利用LPS得到的定位信息来辅助飞行,控制四旋翼无人机。

  1. 启动四旋翼无人机:将无人机放在水平面上,并且无人机的前向指针(注意下图中的前向指针)指向x-axis的正方向
  2. Assisted flight:使用Position Hold mode in the Crazyflie Client for assisted flight.有关于手动控制(使用gamepad)的assisted flight, 具体如何使用详情参见https://www.bitcraze.io/documentation/tutorials/getting-started-with-flying-using-lps/#assisted-flight,不在这里详细说明,因为不是我们科研人员的兴趣所在
  3. 自动飞行:
    1. 在你的电脑上跑python script(前提是你电脑装了python),然后通过Crazyradio发送set points到无人机。set points上包含了where the Crazyflie should go以及 how fast to go there的信息。

Leave a Comment