基于这种情况,3P3Z的波特图的增益曲线关系是,-1,+1,+1,-1,-1.从这个关系上来看,我们可以用把BOOST的双极点位置用3P3Z的两个零点进行补偿,并且把这两个零点都设计在双极点的位置,这样,补偿过后的环路在通过双极点位置过后,会继续与-1的斜率往下走,直到穿过0dB线,并且把3P3Z的第二个极点补偿boost的ESR零点,这样整个补偿后的环路会以-1的斜率继续远离0dB线,并且在遇见3P3Z的第三个极点后,会以-2的斜率继续远离0dB线,使因为离散参数造成的二次穿越将不在发生。大大增加了环路的稳定性。
去microchip的官网上面扣了一个LOGO下来,哈哈,填进去了这个小显示屏。显示的功能可以通过按键进行切换,切换成四种工作状态,显示在显示屏幕上。
BUCK CC MODE.
BUCK CV MODE.
BOOST CC MODE.
BOOST CV MODE.
每个页面的内容还需要完善,但主要功能已经差不多完成了。
现在可以实现BUCK 恒流/恒压输出,BOOST恒流/恒压输出。电压为9V/12V。
但现在存在的问题就是双向的功能还得手工切换,软件自己判断切换的逻辑还没有加进去。
当然,在代码从开发板上移植到这个双向板子上的时候,还是出现了一些问题。最开始就是电流采样电阻的取值过小,造成恒流工作一直工作不正常。分析了很久,终于解决。
另外,在这个环路的应用过程中,我使用了辅助工作寄存器,但是dsPIC33EP64GS502只有2组辅助工作寄存器,而我的环路有4路。刚开始确实让我头痛了一阵子。后来仔细分析,其实这个电路在任何情况下,都只有2套环路在工作,那么我可以选择在切换的时候工作模式的时候,重新初始化辅助工作寄存器,结果发现,非常好用,完全没有问题,这样看来,辅助工作寄存器真是强大啊。
辅助工作寄存器初始化部分我定义四个,如下:
void InitAltRegContext1Setup(void);
void InitAltRegContext2Setup(void);
void InitAltRegContext1Setup_BOOST_Current(void);
void InitAltRegContext2Setup_BOOST_Voltage(void);
回复
我要赚赏金打赏帖 |
|
|---|---|
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
| TCS3472S传感器及其色彩检测被打赏¥19元 | |
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |

从上面可以看到,除了两个预留的脚以为,IO脚已经用的满打满算了,最后可能那两个引脚我也会用上,做为软件自动切换方向的逻辑判断。

BOOST恒流输出,BOOST输入电压9V,
我要赚赏金
