要想用单片机控制升降压模块的输出电压,首先想到的就是使用电信号控制FB电阻大小。原理上数字电位器可以满足这个需求,那么问题就在于,如何评估数字电位器大小,如何知道FB电阻和输出电压的关系。如果是集成DCDC变换器模块比较简单,一块板上没几个电阻,稍微打下表就拿捏了。某宝上有个二十多块钱的,号称600W升压模块,姑且不考虑这个模块几分虚标,来探究一下如何用单片机控制这种自行搭建的升降压模块。

号称600W的升压模块
首先我承认我对升降压电路的理解只停留在会用集成变换器,对于这种可能是用单片机加运放加MOS管搭建的大功率变换电路我是一窍不通,起初我猜测他的FB也许和集成变换器是一样的,但电位器和周边的电阻测了一下不太好猜测他们的关系,原理上去推测就不太可行了。
于是就想到了一个简单粗暴但又通用的方法:电位器和输出电压取几个点,然后拟合出曲线,只要曲线类型选对效果应该甚至好于利用理论反推。于是我在20V到48V每隔4V取一个点,测量出对应电压档位的电位器电阻,在测量电阻的时候需要断电,最好把输入输出都短路,确保电路中不会残余电荷影响测量结果。

测量得到8点数据
获得了数据之后打开matlab,把电压和电阻分别放入变量vol和res,然后打开cftool,猜测应该是反比例关系,所以类型选择到rational,拟合效果100%,这说明找到的就是符合理论的曲线。

拟合结果
通过测量然后拟合函数在DIY时可以简单有效地修正设计产生的误差,很多时候甚至比理论计算更加准确,毕竟DIY首要注重功能性很多时候精度就无法顾及了。