切换到宽版
爱科技/爱创意/爱折腾/爱极致;技术知识分享平台,点击进入新版数码之家网站
  • 1614阅读
  • 4回复

[电源]0.7V-19.8V步进开关电源 [复制链接]

上一主题 下一主题
离线1600830417
 

发帖
1
M币
-480
专家
1
粉丝
3
只看楼主 倒序阅读 我要置顶 楼主  发表于: 2017-10-26

前阵子学习了开关电源所以即兴做了一个。。。。
老司机坐稳新手开车
前阵子学习了开关电源所以即兴做了一个。。。。
老司机坐稳新手开车
1.思路
      首先做开关电源离不开的,也是最重要的当然就是选英雄(芯片)了。在这里我选择的是常见的TPS5420,其实TPS系列都挺好的,个人认为根据要求选用,在这里就不多说了。选完英雄后就到了配置符文和天赋(电路)问题了,这个很重要。在这里我个人配了一个,下面会有介绍不要急。同时必须要根据实际的电路需求配置相应的电容电感(装备),这也很重要关乎到你的输出,电流,电压。这对团战,呀不是,是指标也有很大影响。
      再者就到了软件设计,这里我就用到了STM32,主要用到里面的双AD和双DA。就是用32的4个端口,两个做电压检测,两个做电压模拟。听起来什么嘛,操。
      没事这上面都是废话,接下来才是重点。听懂没听懂,看下面就行。我是说帖子下面,不是你下面,你看什么呢!
      总的我用TPS5420搭建了一个简单的电路可以输出5V到20V,我这次是让他输出20V稳定。输入可以10V到35V,具体看等会给你的芯片手册。再者用AD\DA控制芯片的各种端口,干各种肮脏的交易,是改变电压输出,保护,步进等功能。


2.功能实现(作品展示)
     以上说的都是废话,接下才是更废的。


       这就是今天要说的正主了。。。。。。。。                                              
        



       这个是测试版.......各种电阻,飞线。。。。                                                       这是测试时被屌插的样子(接线)
                                     



测试中用到常用电源,用来输出稳定24v。再者就是电压表显示用



这两张图是带载10欧情况下,按键步进一下的情况大约是0.3左右,这方面程序可控.


下面是带载时的...


5V时,恒流0.5A其实不然,芯片最大带载2A,尽管往上都行,小编只是展示一下。
  


3.硬件分析
       到了今天重点的时候了!在这里小编说一下,以下都是个人见解,没有科学根据。
       首先当然是芯片手册了,tps5420,小编不懂上传成不成功,但是网上资料大把(建议看英文版),不要说看不懂英文用谷歌翻译,主要的就是看引脚分析。
       当初小编做的时候,先是把芯片手册看了一遍,懂不懂都看。里面有参考电路,参考方案,功能等等。还有就是教你怎么去布线,这里说的是PCB布线。多的小编就不说了,在实践过程中用的就是下面的电路
      
在小编的研究过后发现,改变图中R1和R2的比例就可以改变输出电压的大小,当然这不是乱来,是有公式的。。这是我截图下来的。
       上面要说明一下这R1和R2的比例不是怎样都行,具体要看你需要的量程,比如现在小编做的,0.7V到19.8V步进可调,这时你就需要R1用230K欧,R2用15K欧,总的就是增大R2,这样量程就可以扩大,当然量程也和你一开始设计的输出电压有直接关系,因为思路是一开始就稳压到20V,输入是24V。所以当你设计一开始峰值更大,那么量程也会增大。
        当然了具体要测试过才懂,用公式计算就行。不要问小编原理是什么,这个芯片手册比我说的好,建议大家多看看!!
        其他就不多说了因为小编是初学者。
在布线方面用的是开尔文检测接法用于输出位置。
开尔文四线接法

PCB方面除了单片机接线其他都用贴片即可。




4.软件设计
      还是那句话,上面都是废话,接下来说的才是重点。
       关于软件我这里是渣渣,因为使用的是正点原子的开发板,所以先帮他打一下广告,学习32的同学可以去买一块战舰开发板。小编用的程序就是开发板里面的例程,因为我们只需用到两路AD与两路DA,不需要过于费神写太多代码,有的用就用。当然你还要熟悉工程的改编,与组合。这里不多说,我们说重点。
       首先我们用一路的DA用作核心控制,控制反馈端,两个末端电阻的电压比,继而控制输出电压。这里主播,啊不是小编列了个表,
这个和重要,根据得出的实际数据,你就可以用它得到的输出电压与输入反馈电压的比例进行代码的编写。


这里主播将DA最大输出3.22V分成了4000份,然后用的到的数据进行步进输出,按键控制这我就不说了吧,例程有。
         然后第2个DA我用来是做保护作用的,在芯片手册里面写着4号引脚,输入一个比基准电压少0.5V的电压,芯片自动停止工作,基准电压是芯片内部的电压,用作比较作用,不用了解太多,我们说重点。
         继续说这第2个DA,是结合第2个AD使用。说到这里很多人就问了,你DA\AD的说什么鸟,这不重要,我们说重点,你只需要知道AD是用来检测电压的,DA是用来输出电压的。既然他们可以这样用,那么,我用AD检测我放在电路中的R9电阻,它只有0.5欧。我把它接到了底线上,因为我喜欢这样,这样就可以了解到当通过R9电流有2A时,它的电压就有1V,而我就用了一个AD来接收他的电压,知道了这是它的电流很大。这时要干嘛,要干嘛,当然是断电啦,你想看到你的芯片猫眼,然后一股风油精味吗。
        说笑的,这时我AD知道了有2A电流,就用DA输出0.5V给4号引脚,低于基准电压0.5V嘛,这下芯片就会停止工作,你会看到你的电压会慢慢的降下来,这是电感再放电。这样保护工作就做好了。
        剩下一个AD就比较废了,我通过两个电阻将输出电压降压后,输入给AD检测,然后你会发现电压这么小,用来干嘛,傻吊,用代码按比例让它显示成实际电压那么大不就行了。降压只是怕烧坏芯片,按比例放大显示就行了。
源代码:代码1
              代码2
             5.心得
        主播只是初学者,做完想分享给大家,希望能帮助大家。
        有好资源请留言主播,谢谢。





0.7V-19.8V步进开关电源




      

      

0.7V-19.8V步进开关电源




      

本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共2条打赏M币+5专家+1
离线lzptt

发帖
9216
M币
3686
专家
0
粉丝
13
只看该作者 1楼 发表于: 2017-10-26
请登录后查看
离线慢慢生活

发帖
9070
M币
12053
专家
9
粉丝
62
只看该作者 2楼 发表于: 2017-10-26
请登录后查看
离线mionetomax

发帖
540
M币
416
专家
0
粉丝
7
只看该作者 3楼 发表于: 2017-10-26
请登录后查看
离线温力口

发帖
60313
M币
51283
专家
569
粉丝
908
只看该作者 4楼 发表于: 2017-10-26
请登录后查看
快速回复
限80 字节
温馨提示:欢迎交流讨论,请勿发布纯表情、纯引用等灌水帖子;以免被删除
 
上一个 下一个