完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,用贵公司的LAUNCHXL-28069M开发板加上BOOSTXL-DRV8305做永磁同步电机的控制,在D轴和Q轴电压检测方面遇到了一些问题,描述如下: 1 BOOSTXL-DRV8305带有三相电压检测电路,我在每个控制周期内采集三相电压,通过坐标变换得到D轴和Q轴电压,代码如下 AD_VA = AdcResult.ADCRESULT3; AD_VB = AdcResult.ADCRESULT4; AD_VC = AdcResult.ADCRESULT5; VA = (AD_VA -AD_VA_BIAS)* ADC_VOL_RAtiO; VB = (AD_VB -AD_VB_BIAS)* ADC_VOL_RATIO; VC = (AD_VC -AD_VC_BIAS)* ADC_VOL_RATIO; VN = (VA+VB+VC)/3.0; VAN = VA -VN; VBN = VB -VN; VCN = VC -VN; V_Alpha = VAN ; V_Beta = (VAN + 2 * VBN) * 0.57735; // 1 / sqrt(3) = 0.57735 SinElec = sin(eTheta); // eTheta为转子电角度 CosElec = cos(eTheta); VdReal = V_Alpha *CosElec + V_Beta * SinElec; VqReal = V_Beta *CosElec - V_Alpha * SinElec ; (上电后给电机A相绕组通电,将转子吸引到一个角度,通过EQEP单元读取该角度值作为偏移值,每次电流环控制周期读取转子位置,减去偏移值得到转子机械角度,再乘以极对数得到eTheta) 通过上位机检测发现D轴电压似乎不太正确。 图1 转速响应和D轴电压给定 采用ID=0的控制方式,电流环使用PI控制器,实际检测D轴电流确实为0。图1蓝色曲线是电机2000rpm转速响应曲线,绿色曲线是电流PI控制器计算出来的D轴电压给定,可以看出,D轴电压给定跟模型是能对上的,在稳态Ud = Rs*Id -w*Lq*Iq,转速越高理应Ud负越多。可是按照上述代码检测到的实际D轴电压不是这样,见图2。 图2 转速响应和D轴电压检测 图2中蓝色曲线是电机转速响应,绿色曲线是变换得到的D轴实际电压反馈(忽略纵坐标具体值,看变化趋势),跟给定对不上,跟公式也对不上。 图3 电机转速和Q轴电压给定 图4 电机转速和Q轴电压反馈 从图3和图4中可以看出Q轴电压检测好像没问题,至少大体趋势是对的,转速越高,反电动势越高,Q轴电压理应越高。 PWM采用的SPWM法,代码如下: V_AlphaCtrl = VdCtrl * CosElec - VqCtrl * SinElec; V_BetaCtrl = VqCtrl * CosElec + VdCtrl * SinElec; Va = V_AlphaCtrl ; Vb = -0.5 * V_AlphaCtrl + 0.866 * V_BetaCtrl ; // 0.8660254 = sqrt(3)/2 Vc = -0.5 * V_AlphaCtrl - 0.866 * V_BetaCtrl ; // 0.8660254 = sqrt(3)/2 if ( Va>1 ) [ Va = 1; ] else if( Va<-1) [ Va = -1; ] if ( Vb>1 ) [ Vb = 1; ] else if( Vb<-1) [ Vb = -1; ] if ( Vc>1 ) [ Vc = 1; ] else if( Vc<-1) [ Vc = -1; ] Ta = -0.5*Va + 0.5; Tb = -0.5*Vb + 0.5; Tc = -0.5*Vc + 0.5; PWM_CMP_A= PWM_TBPRD * Ta ; PWM_CMP_B= PWM_TBPRD * Tb ; PWM_CMP_C= PWM_TBPRD * Tc ; EPwm1Regs.CMPA.half.CMPA = PWM_CMP_A; EPwm2Regs.CMPA.half.CMPA = PWM_CMP_B; EPwm3Regs.CMPA.half.CMPA = PWM_CMP_C; 可能是什么问题造成上述原因呢?或者是我方法有问题,在这套实验平台上如何检测D轴和Q轴电压呢?有无例程可以参考?已经困扰很久了,望不吝指点,非常感谢!! |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
354 浏览 1 评论
547 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
793 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
664 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1141 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
91浏览 29评论
348浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
267浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
216浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
70浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 23:53 , Processed in 1.335625 second(s), Total 69, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号