0

ヘリコプターが特定の高度で打ち上げに戻るようにしたいのですが、今のところ ArduPilot SITL ですべてを実行しています。最初に simple_goto() を使用しようとしました

vehicle.commands.download()
vehicle.commands.wait_ready()
finish_location = deepcopy(vehicle.home_location)
finish_location.alt = flight_altitude
vehicle.simple_goto(finish_location)

simple_goto() は他の場所では正常に機能しますが、 vehicle.home_location を使用すると、ヘリコプターが高度 -7.5m まで降下します。しかもコプターは下降のみで、finish_locationまでは飛ばない。

だから私はRTLモードを使用しようとしました

self.vehicle.mode = VehicleMode("RTL")

うまく機能しますが、RTL 高度を目的のflight_altitudeパラメーターに設定する方法が見つかりません。デフォルトの 15m で実行されます。

4

2 に答える 2

0

以下のコードは正常に動作します。

vehicle.commands.download()
vehicle.commands.wait_ready()
target_location = LocationGlobalRelative(0, 0, 0)
target_location.lat = vehicle.home_location.lat
target_location.lon = vehicle.home_location.lon
target_location.alt = target_altitude

それでも私は理由を理解していません

vehicle.commands.download()
vehicle.commands.wait_ready()
finish_location = deepcopy(vehicle.home_location)
finish_location.alt = flight_altitude
vehicle.simple_goto(finish_location)

動作しません。

于 2016-06-30T14:53:25.227 に答える