Я пытаюсь управлять дроном DJI (Mavic 2 / Spark) автономно, используя DJI Mobile SDK. Я могу выдавать виртуальные команды джойстика, и дрон следует за ним. Я отключил предотвращение препятствий / столкновений через API. Проблема в том, что если робот окружен препятствием, он тормозит и не будет следовать выданным командам виртуального джойстика. Я отключил уклонение от препятствий, но беспилотник тормозит и не будет двигаться (он не приблизится ближе чем на 2,5 м к препятствию).
Выводы:
- Расстояние по умолчанию для торможения составляет ~ 2,5 м от препятствия (Mavic 2).
- Отключение обхода препятствий работает в обычном P-режиме, то есть при использовании RC.
- Отключение обхода препятствий через SDK и переключение в приложение DJI-Go подтверждает, что оно действительно отключено.
- То же поведение с DJI Spark
Может кто-нибудь посоветовать, пожалуйста, как отключить обход препятствий для режима Virtual Joystick? Я уже пробовал следующие и другие варианты:
self.myFC.isVirtualStickAdvancedModeEnabled = NO;
[self.myFC.flightAssistant setCollisionAvoidanceEnabled:NO withCompletion:nil];
[self.myFC.flightAssistant setAdvancedPilotAssistanceSystemEnabled:NO withCompletion:nil];
[self.myFC.flightAssistant setActiveObstacleAvoidanceEnabled:NO withCompletion:nil];
[self.myFC.flightAssistant setUpwardsAvoidanceEnabled:NO withCompletion:nil];
[self.myFC sendVirtualStickFlightControlData:cmd withCompletion:nil];
Я ожидал, что отключение обхода препятствий должно позволить беспилотнику двигаться независимо от наличия препятствий.
Спасибо
Использование следующей версии SDK
pod 'DJI-SDK-iOS', '~> 4.9.1'
pod 'DJI-UXSDK-iOS', '~> 4.9'
pod 'DJIWidget', '~> 1.2'