我正在构建一个无人机应用程序,它将发送用于室内飞行的飞行命令 . 我正在实施DJI Mobile SDK的虚拟棒,描述为here .
在尝试了DJI的模拟器教程here后,我为我的应用程序实现了一个精简的非模拟版本 . 当我在户外测试我的应用程序时,控件一致且正确地工作 .
然而,当我进入室内时,无论发出什么命令,无人机只执行1次动作:无人机沿其左后方螺旋桨的方向飞行 . 即使命令仅用于转动无人机,无人机也将始终朝这个方向飞行 .
有什么想法会发生什么?由于我的代码在室外工作,我不确定要发布什么代码 .
UPDATE #1
这是我的飞行控制器设置(在Swift中实现):
self.flightController = (DJISDKManager.product() as? DJIAircraft)?.flightController
self.flightController?.rollPitchControlMode = DJIVirtualStickRollPitchControlMode.velocity
self.flightController?.yawControlMode = DJIVirtualStickYawControlMode.angle
self.flightController?.rollPitchCoordinateSystem = DJIVirtualStickFlightCoordinateSystem.body
UPDATE #2
改变偏航的代码(带有一些硬编码的数字) . 基本上用于使无人机完全转向 .
private var turnTime = 0
private var turnTimer: Timer? = n