如何通过dronekit python用Pixhawk和树莓武装和起飞无人机

时间:2018-08-30 17:39:36

标签: python automation dronekit

我们已经购买了Pixhawk 2.1飞行控制器,并且正在从事一个大学项目;该项目是我们必须用无人机(包含树莓pi 3)解决难题,并将正确的坐标发送到小型汽车上。 我们的问题是我们不应该在无人机上使用任何遥控器。所以无人机应该飞到一个特定的高度,然后应该开始寻找难题并解决它。

我们尝试使用dronekit python。我们可以通过代码连接到无人机,但无法将其武装起来然后起飞。

Pixhawk 2.1是否支持布防并使用任何地面站或遥控器进行起飞? 。如果可以,我们希望您向我们发送代码和方法。因为我们进行了大量搜索,所以项目的截止日期非常接近。

谢谢您的时间...

2 个答案:

答案 0 :(得分:0)

由于没有50条声誉可以发表评论,因此我对在此留言表示歉意。

您的配置:
飞行控制器:PixHawk 2.1
伴侣计算机:Raspberry Pi
配套计算机操作系统:Ubuntu?
随附计算机Drone API:dronekit

需要进行更好分析的内容: 自动驾驶仪由飞行控制器和代码组成。 您是Ardupilot还是PX4?

在Ardupilot的情况下,我也许能够回答您可能绊脚的地方。 (PX4与之类似,但是如果您使用的是dronekit,我强烈建议您使用Ardupilot / copter而不是PX4;这是基于经验的看法)

依次尝试以下内容

  1. 在连接字符串中,如果wait_ready = false,则它永远不会放在第一位,因此您陷入了循环。
    这主要是因为为检查准备就绪而进行的检查类似于在布防中进行的检查。

仅当使用布防检查掩码来避免进行检查时,才会出现wait_ready = false的武器。
 2. http://ardupilot.org/copter/docs/parameters.html#arming-check-arm-checks-to-peform-bitmask
显示了自动驾驶仪完成的检查清单,同时长时间戴着面具关闭了某些检查。
这应该使您能够通过系统列表进行常规检查,以防出现故障。
这在PX4中应该类似,但术语和顺序会有所不同,但基本逻辑将非常相似。

另一种可能不清楚的是操作顺序。

您的源代码(或通用代码)->在计算机上使用Dronekit通过Ardupilot / PX4与自动驾驶仪对话->然后,自动驾驶仪按照说明驾驶无人机

这是关于对无人机进行编程的警告。

几乎在所有情况下,您都对自动驾驶仪(使用Adrupilot / PX4进行交互的飞行控制器)进行编程说明,然后执行操作。如果自动驾驶仪检查失败,他们可能会拒绝执行任何动作。
自动驾驶仪部分拒绝执行操作不会显示为错误,因为它不是错误。您给了它一个有效的动作,但由于没有通过检查,所以感觉它并不想执行。

这就是您可能遇到的情况。

答案 1 :(得分:0)

要使用覆盆子控制无人机,pixhawk应该与GPS相结合。如果您试图将其武装在封闭区域中,则可能不会武装。因为,您的代码应包含“引导”模式,因此需要GPS。如果这没有帮助。再次测试rpi和pixhawk之间的一致性