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.
你好。 我将使用 launchxl2-tms570lc + BoosterXL DRV8301来驱动 PMSM
电机使用 AS5048A 作为位置编码器
该 PWM 连接到 LaunchPad 上的 N2HET1_10引脚、我使用了一个非常简单的 N2HET 程序来监控其 PWM 输出
INPUT_PIN .equ 10 INPUT_PIN2 .equ 11 ; measure PWM Duty MEA_PWM_DUTY PCNT { irq=OFF,type=RISE2FALL,pin=INPUT_PIN}; ; measure PWM Width MEA_PWM_WIDTH PCNT { irq=ON,type=RISE2RISE,pin=INPUT_PIN2}; LOOP BR { next=MEA_PWM_DUTY,cond_addr=MEA_PWM_DUTY,event=NOCOND};
在测量过程中,如果我没有给 PMSM 上供电(外部电源), n2het 读出正确的结果;但当我上电以驱动电机时,读出错误的结果。
我使用 SVPWM 来驱动电机。 我的直流电压为12V。当我将参数更改为 Vd = 0.0、Vq = 4.0 (V)时、读取的结果偶尔为0x02或0x04、其他时间也是正确的;当我将 Vq = 6 (V)时、读取的结果始终为0x02。 PWM 宽度的测量也不正确
下面是示波器测量的传感器输出 PWM
下面是我未给 PMSM 上电时的输出图
您好!
TMS570器件上的每个 N2HET 引脚都配备了一个抑制滤波器。 如果此引脚被配置为一个输入、它将启用滤 除短于一个可编程持续时间的脉冲。
请参阅 TMS570LC43x TRM 中的23.2.6抑制滤波器