我已经得到了UWP应用程序的样本,我的Mavic Air,我可以看到相机饲料等。现在,我试图改变这样的万向盘角度:
var connected = await DJISDKManager.Instance.ComponentManager.GetGimbalHandler(0, 0).GetConnectionAsync();
// true
var attitude = await DJISDKManager.Instance.ComponentManager.GetGimbalHandler(0, 0).GetGimbalAttitudeAsync();
// pitch: 0, roll: 0, yaw: -124
var range = await DJISDKManager.Instance.ComponentManager.GetGimbalHandler(0, 0).GetGimbalAttitudeRangeAsync();
// pitch: max 17 min -90; yaw: max 0 min 0; roll: max 0 min 0;
var angle = new GimbalAngleRotation() { mode = GimbalAngleRotationMode.ABSOLUTE_ANGLE, pitch = -20, yaw = 10, roll = 0 };
var resp = await DJISDKManager.Instance.ComponentManager.GetGimbalHandler(0, 0).RotateByAngleAsync(angle);
// PARAM_OUT_OF_RANGE如您所见,偏航和滚动的范围是0-0 (无)。然而,实际偏航值是-124;在我的理解中,Mavic Air有一个3轴的万向节,所以我应该对每个轴有更大的范围。
另外,当我试图改变偏航或滚动时,我会得到PARAM_OUT_OF_RANGE响应。改变螺距只会引起NO_ERROR的反应,但我看不出万向角度的不同。
发布于 2018-12-03 09:40:09
对于此问题,您可以尝试以下步骤来解决它:
发布于 2018-12-02 18:23:21
我也有同样的问题。我无法看到Gimbal使用RotateByAngleAsync方法做任何事情。我让Gimbal做任何事情的唯一方法就是使用RotateBySpeedAsync。这不会是一个问题,如果这将是完美的工作,但有时它也什么也不做。它的工作时间是10次中的1次。如果它有效--只要我不重新启动应用程序,它就能工作。还没弄清楚怎么“重置”它。
// Defined somewhere else
gimbalHandler = DJISDKManager.Instance.ComponentManager.GetGimbalHandler(0, 0);
// In my control method
var gimbalRotation = new GimbalSpeedRotation();
gimbalRotation.pitch = 4;
gimbalHandler.RotateBySpeedAsync(gimbalRotation);https://stackoverflow.com/questions/53582708
复制相似问题