Skip to main content

电源管理

PSDK 电源管理相关功能的头文件为uav_power_management.h,本文档描述了uav_power_management.h 文件中结构体和函数原型的关键信息和使用方法。

目录

  • 宏定义、枚举与结构体
    E_UAVPowerManagementPinState
    UAVWriteHighPowerApplyPinCallback
    UAVPowerOffNotificationCallback
  • 函数原型
    UAV_PowerManagement_Init
    UAV_PowerManagement_Deinit
    UAV_PowerManagement_ApplyHighPowerSync
    UAV_PowerManagement_RegWriteHighPowerApplyPinCallback
    UAV_PowerManagement_RegPowerOffNotificationCallback

宏定义、枚举与结构体

typedef enum E_UAVPowerManagementPinState

高功率引脚的状态。

typedef enum {
UAV_POWER_MANAGEMENT_PIN_STATE_DISABLE= 0, /*!< Specifies pin is in low level state. */
UAV_POWER_MANAGEMENT_PIN_STATE_ENABLE = 1 /*!< Specifies pin is in high level state. */
}E_UAVPowerManagementPinState;

typedef function UAVWriteHighPowerApplyPinCallback

  • 功能: 设置高功率引脚状态,当前版本网络通信时无法使用软件设置,可将硬件引脚拉高达到相同效果。操作参见无人机硬件接口
  • product: all。

设置高功率引脚状态的回调函数。

typedef T_UAVReturnCode (*UAVWriteHighPowerApplyPinCallback)(E_UAVPowerManagementPinState pinState);
  • 参数pinState:高功率引脚的状态。
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码

typedef function UAVPowerOffNotificationCallback

  • 功能: 关机通知。
  • product: all。

通知负载设备无人机将要关机并获取负载设备关机准备状态的回调函数。

说明:

  • 为防止该函数阻塞 PSDK 的主线程,导致出现程序响应缓慢、相机类负载设备断连及死循环等问题,请勿以阻塞的方式在回调函数中执行该函数。
typedef T_UAVReturnCode (*UAVPowerOffNotificationCallback)(bool *powerOffPreparationFlag);
  • 参数powerOffPreparationFlag:指向用于存储关机准备状态的内存空间。
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码

函数原型

function UAV_PowerManagement_Init

  • 功能: 初始化电源管理模块。
  • product: all。

初始化电源管理模块,用户在使用电源管理功能前应调用该函数。

T_UAVReturnCode UAV_PowerManagement_Init(void);
  • 参数none
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码

function UAV_PowerManagement_Deinit

  • 功能: 去初始化电源管理模块。
  • product: all。
T_UAVReturnCode UAV_PowerManagement_Deinit(void);
  • 参数none
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码

function UAV_PowerManagement_ApplyHighPowerSync

  • 功能: 在阻塞模式下从无人机施加高功率。
  • product: all。

在应用之前,用户应该使用 UAV_PowerManagement_RegWriteHighPowerApplyPinCallback() 函数注册回调函数,用于设置高功率应用引脚的电平状态。 施加大功率后,Uav 适配器的电源引脚将根据预定规格输出大功率。 该函数的最大执行时间略大于 600ms。

T_UAVReturnCode UAV_PowerManagement_ApplyHighPowerSync(void);
  • 参数none
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码

function UAV_PowerManagement_RegWriteHighPowerApplyPinCallback

  • 功能: 用于设置高功率应用引脚的电平状态的注册回调函数。
  • product: all。

注册回调函数,用于设置高功率应用引脚的电平状态。 必须在应用高功率之前调用。

T_UAVReturnCode UAV_PowerManagement_RegWriteHighPowerApplyPinCallback(UAVWriteHighPowerApplyPinCallback callback);
  • 参数callback:指向回调函数的指针。
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码

function UAV_PowerManagement_RegPowerOffNotificationCallback

  • 功能: 用于通知 Payload 无人机即将关机并获取 Payload 是否准备好关机状态的注册回调函数。
  • product: all。

注册完成后,会在无人机关机时以固定频率调用回调函数。 用户填写关机准备标志,一旦 Payload 准备关机,回调函数将不会被调用。 在指定时间后,如果负载未准备好关机,无人机将立即关机。 指定时间为 10s。

T_UAVReturnCode UAV_PowerManagement_RegPowerOffNotificationCallback(UAVPowerOffNotificationCallback callback);
  • 参数callback:指向回调函数的指针,用于通知无人机关机消息并获取有效载荷关机准备标志。
  • 返回值 根据程序执行的情况输出对应的返回值,详情请参见:UAV 错误码