如何编制Parrot AR.Drone直飞

时间:2015-04-26 20:34:08

标签: javascript node.js ar.drone

我正在使用node.js& node-ar-drone编程我的AR.Drone 2.0在室内进行一些基本的飞行机动。从我所知,无人机似乎永远不会飞。无论我在何处设置起飞点,它都将始终向左和向右摇摆,悬停几秒钟,或撞到墙上。换句话说,如果我运行相同的程序在走廊上飞行10次,每次它会做一些不同的事情。

如果它确实沿着走廊走下去,它每次都会落到不同的地方。我会内置计数器移动以调整随机摇摆,例如如果它向右摇摆,我会告诉它向左移动,但它似乎永远不够。没有任何反击动作似乎让它直接飞行。我正在使用无人机上的最新固件。

有人告诉我,无人机上没有任何东西可以纠正飞行过程中的错误,例如反馈回路。除此之外,我还被告知这些无人机主要是在户外或非常宽敞的空间使用,以免它崩溃。

我想看看这是否适用于其他任何人,或者是否有人有任何建议让它直接飞行。任何输入或评论都会有所帮助

1 个答案:

答案 0 :(得分:2)

AR.Drone确实使用其传感器组合的反馈来改善其飞行,如此图所示(来自" The Navigation and Control technology inside the AR.Drone micro UAV"):

enter image description here

对于您的情况,最重要的可能是姿态和速度估算的效果如何,它使用加速度计,陀螺仪和相机。您可以采取一些措施来帮助这些系统发挥作用:

  1. 确保从完全水平的表面起飞。
  2. 在起飞前调用ftrim设置平面修剪水平。
  3. 视觉算法旨在尽量做得很好,即使朝下的相机下的表面没有很多纹理,但如果地板/地面太没有特征,它们仍然可能会混淆。尝试飞越具有更多纹理和对比度的东西。
  4. 对于#3,飞过像均匀彩色的地毯或混凝土地板这样的东西会让无人机更难看到它在做什么 - 非常类似于在光滑上使用光学鼠标的问题,无特色的表面。当你看到Parrot炫耀AR.Drone的能力时,你会注意到它们经常飞过一个明显被选中以使导航更容易的表面。例如,

    来自https://www.youtube.com/watch?v=IcxBf-kegKoenter image description here

    来自https://www.youtube.com/watch?v=pEMD6P_j5uQ#t=8m25senter image description here

    那就是说,有了我的无人机我有时会遇到即将起飞的情况,无人机转向一边直到它崩溃,即使我打电话ftrim并认为我从一个平坦的表面起飞。您可能需要使用反复试验才能找到一个好的起飞点。

    无人机的设计能够在室内飞行(例如,推荐使用带有螺旋桨保护器的发泡胶船体用于室内飞行但不建议用于室外飞行,FreeFlight应用程序具有室内和室外飞行模式),但在我的体验无人机仍然有点徘徊,所以你会在更大的房间里取得最好的成绩。

    这是一个演示,我的无人机在室内,在一个大房间内以非常稳定的方式飞行,地毯质地良好,位置非常平坦:https://www.youtube.com/watch?v=uhBa11gdbeU

    enter image description here

    即使这样,您也可以看到无人机在0:23进行小而快速的修正。