Mit DKPy-SITL und unserem APM2 Bord, die wait_ready Methode verursacht unser Programm zum Herunterladen einer API Ausnahme aufgrund der Befehlsliste (Waypoints) zu lange dauern beide erhöhen zum Download bereit. In der Vergangenheit (mit Droneapi) war das kein Problem für mich. Einige Wegpunkte werden heruntergeladen, aber der Prozess dauert ungefähr 10 Sekunden für jeden einzelnen, was mich glauben lässt, dass etwas Seltsames vor sich geht.CommandSequence zu lange
Gibt es Möglichkeiten, den Download-Prozess zu beschleunigen? Ich habe den entsprechenden Code unten veröffentlicht.
self.vehicle = connect(connection_string, baud=baud_rate,
status_printer=dronekit_printer, wait_ready=True)
und später in einem anderen asynchronen Verfahren
def commands(self):
commands = self.vehicle.commands
commands.download()
commands.wait_ready()
return commands
Der Fehler tritt auf commands.wait_ready(). Es hat ein schnellerer Weg, um Befehle zum Download als es auf einem i7 4790k Prozessor für mehr als 30 Sekunden sitzen, vor allem, da ich den gleichen Code aus einem langsameren Computer in der Vergangenheit mit droneapi habe laufen. Wenn es sein muss, kann ich auch ein Problem mit dem Drohnenkit GitHub ansprechen.
3DR Dronekit auf der Strecke lassen hat und nicht geben ihm die Vollzeit-Programmierer es braucht. Aus diesem Grund haben wir uns von unseren eigenen Mavproxy-Modulen getrennt, mit denen wir ohne unnötigen Overhead von Dronekit arbeiten können. – Indeed
stimme ich zu. Bitte markieren Sie die Antwort als Lösung, wenn Sie Ihr Problem gelöst haben. Danke – epinal
Das Problem ist, dass der erste Download in der Regel nicht Null-Befehle ist, so dass es nicht einmal eine Lösung ist. Ich hatte dies in der Hoffnung geschrieben, dass sie die Aufmerksamkeit des Entwicklers anziehen würden, aber 3DR hätte sie nicht einmal Vollzeitabrechnungs hat auf mehr so wer weiß, ob sie selbst es sah. – Indeed