DJI Mobile SDK Documentation

      class IPerceptionManager

      interface IPerceptionManager extends IVisualManager, IPerceptionCommon
      包:dji.v5.manager.interfaces
      继承自:IVisualManager, IPerceptionCommon
      描述:

      此类是感知避障管理类,用于开启、关闭感知避障开关,设置避障类型, 设置避障告警距离和刹停距离以及获取障碍物测距数据等功能。同时可以调用getRadarManager获取毫米波雷达配件(如有安装)的信息和数据。

      MSDK 5.0.0开始支持

      类成员:
      method setObstacleAvoidanceType
      void setObstacleAvoidanceType(ObstacleAvoidanceType type, CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      设置感知避障类型。

      MSDK 5.0.0开始支持

      输入参数:
      ObstacleAvoidanceType type感知避障类型。
      CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getObstacleAvoidanceType
      void getObstacleAvoidanceType( CommonCallbacks.CompletionCallbackWithParam<ObstacleAvoidanceType> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      获取设置的感知避障类型。

      MSDK 5.0.0开始支持

      输入参数:
      CommonCallbacks.CompletionCallbackWithParam<ObstacleAvoidanceType> callback返回执行结果的回调。
      method setOverallObstacleAvoidanceEnabled
      void setOverallObstacleAvoidanceEnabled(boolean isEnabled,
      CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      开启或者关闭感知避障总开关。MSDK同时会自动开启或者关闭所有的感知避障子开关。如果安装了毫米波雷达配件,同时也会自动开启或者关闭所有的毫米波雷达的避障子开关。
      注意:
      该接口从MSDK 5.1.0版本开始废弃。请调用setObstacleAvoidanceType把避障类型设置为BRAKECLOSE来开启或者关闭避障开关。对于毫米波雷达配件,需要调用setObstacleAvoidanceEnabled来开启或者关闭避障开关。


      MSDK 5.0.0开始支持

      输入参数:
      boolean isEnabledtrue表示开启感知避障总开关。
      CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getOverallObstacleAvoidanceEnabled
      void getOverallObstacleAvoidanceEnabled( CommonCallbacks.CompletionCallbackWithParam<Boolean> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      返回是否开启感知避障总开关。
      注意:
      该接口从MSDK 5.1.0版本开始废弃。请调用getObstacleAvoidanceType来获取是否开启避障开关。对于毫米波雷达配件,需要调用getObstacleAvoidanceEnabled来获取是否开启避障开关。


      MSDK 5.0.0开始支持

      输入参数:
      CommonCallbacks.CompletionCallbackWithParam<Boolean> callback返回执行结果的回调。
      method setObstacleAvoidanceEnabled
      void setObstacleAvoidanceEnabled(boolean isEnabled, @NonNull
      PerceptionDirection direction, CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      开启或者关闭感知避障子开关。只有当总开关setOverallObstacleAvoidanceEnabled开启后,子开关才能被开启。

      MSDK 5.0.0开始支持

      输入参数:
      boolean isEnabledtrue表示开启感知避障子开关。
      @NonNull PerceptionDirection direction感知避障子开关的方向。
      CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getObstacleAvoidanceEnabled
      void getObstacleAvoidanceEnabled(@NonNull PerceptionDirection direction, @NonNull CommonCallbacks.CompletionCallbackWithParam<Boolean> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      返回是否开启感知避障子开关。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull PerceptionDirection direction感知避障子开关的方向。
      @NonNull CommonCallbacks.CompletionCallbackWithParam<Boolean> callback返回执行结果的回调。
      method setObstacleAvoidanceWarningDistance
      void setObstacleAvoidanceWarningDistance(double distance, @NonNull PerceptionDirection direction,
      CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      设置避障告警距离,单位:米。

    • 以M30系列机型为例:(其他机型请参考DJI Pilot 2的范围)
    • 水平告警距离范围:[1.1, 33.0]。
    • 上方告警距离范围:[1.1, 33.0]。
    • 下方告警距离范围:[0.6, 33.0]。


    • MSDK 5.0.0开始支持

      输入参数:
      double distance感知避障告警距离。
      @NonNull PerceptionDirection direction感知避障方向。
      CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getObstacleAvoidanceWarningDistance
      void getObstacleAvoidanceWarningDistance(@NonNull PerceptionDirection direction,
      CommonCallbacks.CompletionCallbackWithParam<Double> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      获取避障告警距离。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull PerceptionDirection direction感知避障方向。
      CommonCallbacks.CompletionCallbackWithParam<Double> callback返回执行结果的回调。
      method setObstacleAvoidanceBrakingDistance
      void setObstacleAvoidanceBrakingDistance(double distance, @NonNull PerceptionDirection direction,
      CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      设置避障刹停距离,单位:米。

    • 以M30系列机型为例:(其他机型请参考DJI Pilot 2的范围)
    • 水平刹停距离范围:[1.0, 10.0]。
    • 上方刹停距离范围:[1.0, 10.0]。
    • 下方刹停距离范围:[0.5, 3.0]。


    • MSDK 5.0.0开始支持

      输入参数:
      double distance感知避障刹停距离。
      @NonNull PerceptionDirection direction感知避障方向。
      CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getObstacleAvoidanceBrakingDistance
      void getObstacleAvoidanceBrakingDistance(@NonNull PerceptionDirection direction,
      CommonCallbacks.CompletionCallbackWithParam<Double> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      获取避障刹停距离。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull PerceptionDirection direction感知避障方向。
      CommonCallbacks.CompletionCallbackWithParam<Double> callback返回执行结果的回调。
      method setVisionPositioningEnabled
      void setVisionPositioningEnabled(boolean isEnabled, @NonNull CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      开启或者关闭视觉定位。视觉定位系统帮助你在GPS信号不佳的地方稳定悬停,并对降落保护等功能提供支持。关闭下视避障将关闭降落保护功能。

      MSDK 5.0.0开始支持

      输入参数:
      boolean isEnabledtrue表示开启视觉定位。
      @NonNull CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getVisionPositioningEnabled
      void getVisionPositioningEnabled(@NonNull CommonCallbacks.CompletionCallbackWithParam<Boolean> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      返回是否开启视觉定位。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull CommonCallbacks.CompletionCallbackWithParam<Boolean> callback返回执行结果的回调。
      method setPrecisionLandingEnabled
      void setPrecisionLandingEnabled(boolean isEnabled, @NonNull CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      开启或者关闭精准降落。飞行器垂直起飞7米以上,将自动搜集起飞点附近信息,如果信息搜集充分,一键返航时会精准降落到起飞点。

      MSDK 5.0.0开始支持

      输入参数:
      boolean isEnabledtrue表示开启精准降落。
      @NonNull CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getPrecisionLandingEnabled
      void getPrecisionLandingEnabled(@NonNull CommonCallbacks.CompletionCallbackWithParam<Boolean> callback)
      包:dji.v5.manager.aircraft.perception
      描述:

      返回是否开启精准降落。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull CommonCallbacks.CompletionCallbackWithParam<Boolean> callback返回执行结果的回调。
      method addPerceptionInformationListener
      void addPerceptionInformationListener(@NonNull PerceptionInformationListener listener)
      包:dji.v5.manager.aircraft.perception
      描述:

      设置感知信息的监听器。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull PerceptionInformationListener listener感知信息的监听器
      method removePerceptionInformationListener
      void removePerceptionInformationListener(@NonNull PerceptionInformationListener listener)
      包:dji.v5.manager.aircraft.perception
      描述:

      移除感知信息的监听器。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull PerceptionInformationListener listener感知信息的监听器
      method clearAllPerceptionInformationListener
      void clearAllPerceptionInformationListener()
      包:dji.v5.manager.aircraft.perception
      描述:

      移除所有感知信息的监听器。

      MSDK 5.0.0开始支持

      method addObstacleDataListener
      void addObstacleDataListener(ObstacleDataListener listener)
      包:dji.v5.manager.aircraft.perception
      描述:

      设置感知数据的监听器,用于获取障碍物测距数据。

      MSDK 5.1.0开始支持

      输入参数:
      ObstacleDataListener listener感知数据的监听器
      method removeObstacleDataListener
      void removeObstacleDataListener(ObstacleDataListener listener)
      包:dji.v5.manager.aircraft.perception
      描述:

      移除感知数据的监听器。

      MSDK 5.1.0开始支持

      输入参数:
      ObstacleDataListener listener感知数据的监听器
      method clearAllObstacleDataListener
      void clearAllObstacleDataListener()
      包:dji.v5.manager.aircraft.perception
      描述:

      移除所有感知数据的监听器。

      MSDK 5.1.0开始支持

      method getRadarManager
      IRadarManager getRadarManager()
      包:dji.v5.manager.interfaces
      描述:

      获取RadarManager实例。只有安装了毫米波雷达配件才能获取到该实例。

      MSDK 5.1.0开始支持

      返回值:
      IRadarManager返回RadarKManager实例。
      enum PerceptionDirection
      enum PerceptionDirection
      包:dji.v5.manager.aircraft.perception.data
      描述:

      感知避障方向。

      MSDK 5.0.0开始支持

      Enum Members:
      UPWARD上方。
      DOWNWARD下方。
      HORIZONTAL水平,前后左右四个方向。
      Class Members:
      enum ObstacleAvoidanceType
      enum ObstacleAvoidanceType
      包:dji.v5.manager.aircraft.perception.data
      描述:

      感知避障类型。

      MSDK 5.0.0开始支持

      Enum Members:
      BRAKE刹停。飞行器遇到障碍物将自动悬停。
      BYPASS绕行。飞行器遇到障碍物将自动选择绕过障碍物或者悬停。
      CLOSE关闭。飞行器全向避障系统将不可用,飞行器全向有障碍物时将不会自动刹停和绕行。
      Class Members: