主题中讨论的其他器件:DRV8353

This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

您好、Yanming、
我们将按照您的建议运行实验练习二。 然而、电流感测看起来是正确的、当我们执行电压偏移计算时、与指定为1的实验示例相比、实验中每个相位电压的输出为~0.5。
我们使用15V 的直流总线运行、在50%电压下测量~7.5V、因此0.5V 失调电压是合理的、但不清楚为什么在实验室中、类似的50%占空比的失调电压接近~1。
下面是执行偏移量计算之前和之后的输出的一个小插曲 
Yanming、您好。除了以上内容、我们决定继续使用 Lab3和 LAB5、结果如下:
我们通过 Lab3进行了实验、但当我们转到实验05时、我们看到初始电流尖峰会使我们的电源掉电(>25A)。 我们尝试将 USER_MOTOR_RES_EST_CURRENT_A 和 USER_MOTOR_RES_IND_CURRENT_A 从-3和-3减少到0.3和-0.3、但这没有效果。 我们在实验3中看到了类似的问题、但我们通过分别将 USER_MOTOR_VOLT_MIN_V 和 USER_MOTOR_VOLT_MAX_V 从4和24降低到0.3和2来解决了这一问题。 这是否可以作为有关实验5的进展情况的线索?
谢谢、
这意味着电流感应信号不好。 您必须运行 lab03并使用 示波 器、通过使用数据记录或 PWMDAC 来检查由电流探头捕获的波形是否与 CCS 内的采样值相同。
然后您可能会尝试运行 lab04、如果 lab04出现过流故障、则在尝试运行其他后续实验之前、您必须检查电流感应电路是否在硬件板上工作。
根据硬件板、user.h 中标记为红色的以下三个参数。
//! \brief 定义 AD 转换器的最大电压
#define USER_ADC_FULL_SCALE_VOLTGE_V ((float32_t)(57.528f))
//! \brief 定义 AD 转换器上的最大电流
#define USER_ADC_FULL_SCALE_CURRENT_A ((float32_t)(42.843f))
//! \brief 定义模拟电压滤波器极点位置、Hz
#define USER_VOLTGE_FILTER_POLE_Hz ((float32_t)(338.357f))
根据硬件板、hal.h 中标记为红色的电流感应值的符号。
静态内联空
HAL_readADCDataWithOffsets (HAL_Handle handle、HAL_ADCData_t * pADCData)
{
HAL_Obj * obj =(HAL_Obj *)句柄;
float32_t 值;
float32_t CURRENT_SF = -HAL_getCurrentScaleFactor (handle);
float32_t VOLTAGE_SF = HAL_getVoltageScaleFactor (handle);
}