基于这种情况,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);
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
电流检测模块MAX4080S被打赏10分 | |
【我踩过的那些坑】calloc和malloc错误使用导致跑飞问题排查被打赏50分 | |
多组DCTODC电源方案被打赏50分 | |
【我踩过的那些坑】STM32cubeMX软件的使用过程中的“坑”被打赏50分 | |
新手必看!C语言精华知识:表驱动法被打赏50分 | |
【我踩过的那些坑】杜绑线问题被打赏50分 | |
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 |