(1)如题,应用的是之前 Neil Li 给的闭环PSFB程序,外围采样电路参考EVM-027,芯片的输出电压电流采样引脚也就0.5V之内,只是开关噪声比较大(2V左右),然后在输出3~4V时就会保护,无DPWM波输出,查了voltage_loop.c和current_loop.c两个文件后,发现里面部分语句被屏蔽了,还有程序显示参考的是flash data中的CPU SAMPLE,和这些有原因吗?
(2)我需要的是移相全桥,而输出默认是普通全桥,怎么改比较规范(我现在是在Dpwm3Regs.DPWMEV1.all一类中加一恒值比如4000移相,总觉得无法实时修改移相角会有问题)
(3)还有是不是应该更改采样周期或增加采样数来提高采样精度,这个也会导致保护失误的对吗?在哪里更改
Neil Li:
(1)如题,应用的是之前 Neil Li 给的闭环PSFB程序,外围采样电路参考EVM-027,芯片的输出电压电流采样引脚也就0.5V之内,只是开关噪声比较大(2V左右),然后在输出3~4V时就会保护,无DPWM波输出,查了voltage_loop.c和current_loop.c两个文件后,发现里面部分语句被屏蔽了,还有程序显示参考的是flash data中的CPU SAMPLE,和这些有原因吗?
===========
如果是CPU SAMPLE肯定是不能正常输出的。
请通过FAE找BU要一下最新的PSFB代码。
SLoan Kong:
回复 Neil Li:
E2E上面的程序和Neil Li的差不多,都是2013年初版本。
目前是基本参考EVM027外围电路,输出也改为12V、30A做实验,输入是60V,我把uvp函数屏蔽并对UVIN FAULT等变量进行修改是可以在低压工作的。
可是在输入10V,输出2V,电流基本为0时,芯片会突然保护,没有DPWM波输出。
现在硬件电路只加了输出电压和电流采样,CBC输入电流未采样,而且将protection.c中的 FaultMuxRegs.ACOMPCTRL0.bit.ACOMP_EN = 1;改为 FaultMuxRegs.ACOMPCTRL0.bit.ACOMP_EN = 0;即是关模拟比较器后,输入电压可以进一步提高,而不会保护掉(我目前没有输入加压到额定60V左右,毕竟没有保护怕有问题)
还有输出采用的是二极管而非mos管整流,尝试改过闭环采样点和外围硬件电路还有屏蔽FaultMUX中的一些函数都不起作用。
用memory debuger监测FAULTMUXINTSTAT和FAULTMUXRAWSTAT,没有异常和报错。
问那是因为什么保护的呢,FAULTMUX没有检测出错误的情况下,还有之前有TI工程师认为可能因为PWM波占空比受到限制,这个在哪里看得到并可以进行修改的?
Neil Li:
回复 SLoan Kong:
可是在输入10V,输出2V,电流基本为0时,芯片会突然保护,没有DPWM波输出。
》》》》》》》》》》》需要保证UCD3138芯片供电是正常的哦。请测试下。
Neil Li:
回复 Neil Li:
输入是10V时,需要看下功率器件,如驱动器等是否可以正常工作。
SLoan Kong:
回复 Neil Li:
这个是必须的,因为是单独用可调开关电源对芯片供电的,前级输入10V是另一个开关电源或是老是可调交流电源经PFC转换进行供电,两者不会有很大影响,而且输出毕竟可以上到2V了,如果供电不稳应该一上来芯片就无DPWM波输出
SLoan Kong:
回复 Neil Li:
驱动器也是OK的,因为开环和不加保护用示波器监测mos管和驱动器输出波形是正常的,还是说有什么我忽略的地方?对了,输出二极管波形我没有检测
Neil Li:
回复 SLoan Kong:
你用memory debug 看下状态机是停在哪个状态了?
然后再查故障
SLoan Kong:
回复 Neil Li:
关键是用memory debuger监测不到异常, 可禁止ACOMP_EN模拟比较器的使能芯片就能正常输出DPWM,说明还是有错误就是检测不到
还有我没用的AD口都经10K电阻接地了,EAP0接输出电压,EAP1输出电流,EAP2原边电流检测暂时没焊器件,用到的AD口参考EVM027并对程序中的adc12.c中的AD口寄存器分配进行了对照,没问题
Neil Li:
回复 SLoan Kong:
用memory debuger看下supply_state对应的是哪个值,就知道是停在哪个状态机了。
还有Fault会触发保护
SLoan Kong:
回复 Neil Li:
那是不是这个原因啊?我的UCD3138芯片的4个Fault pin都是空置的,会有误触发对吗?
应该都进行接地处理的吧。