世纪电源网社区logo
社区
Datasheet
标题
返回顶部
讨论

从零开始学习数字环路设计

[复制链接]
查看: 2118 |回复: 35
1
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-16 14:54:41
在开始之前首选应了解硬件电路的基本工作原理,这样就可以顺便延升到数字控制中。
2022-01-15_20-18-50.jpg
这是一个积分控制环路,有些场合就用这样的还路就可以了。
通常在隔离开关电源中Vc接到光藕端,在非隔离电源中可以直接送到控制占空比的引脚。
那么在数字电源中如何将这个功能转为数字控制环路呢?
看以下代码:
Type1.jpg
输入为采样到的实际信号,输出为控制占空比量。

程序中Ccomp也可以当成一个积分参数,与实际电路一样容量越大积分时间越长。

BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-16 14:58:24
 
Type2控制环路是一个比较常用的电路
2022-01-15_20-19-15.jpg
也可以用同样的方法把这个输入与输出写出一个子函数
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-16 14:59:42
 
Type2 数字环路
Type2.jpg


更正Type2算法,上面算法中把Rcomp相关数值送到了累加器,这样是不正确的,在输出值的结构中由Vc+Vr组成,Vc上的电压实际就是累加器中的值。
Type2_N.jpg
wszdxp2004
  • 积分:10068
  • |
  • 主题:81
  • |
  • 帖子:1235
积分:10068
LV10
总工程师
  • 2022-1-17 08:17:41
 
Mark!!
路过关注下。
nc965
  • 积分:92945
  • |
  • 主题:115
  • |
  • 帖子:27162
积分:92945
版主
  • 2022-1-16 16:25:42
 
建议:讲数字PID,一定要出现 P、I、D 这三个变量才便于理解
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-16 19:14:58
 
谢谢版主

改变积分电容数值也就是改了积分时间。
改变Rcomp值也就是改变了比例值。

在type2环路中,R与C也就同等于P与I。
peterchen0721
  • 积分:4366
  • |
  • 主题:3
  • |
  • 帖子:270
积分:4366
LV8
副总工程师
  • 2022-1-17 08:54:40
 
讚一個  佔位學習
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-17 11:33:50
 
一个标准的PID算法也就是一个type3控制环路
2022-01-15_20-20-03.jpg
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-21 20:19:21
 
有些电路是不需要环路算法的,这点与模拟不一样
如在BUCK电路中,Uout = Uin * D, 这种情况下读取输入电压,然后算出占空比就可以了。
joezzhang
  • 积分:6628
  • |
  • 主题:5
  • |
  • 帖子:1791
积分:6628
LV8
副总工程师
  • 2022-1-17 22:59:42
 
离散控制没有这么简单
1. 每次取样得到的值不是一段时间内的平均值
2. MCU计算需要时间,如果这个时间大于两次取样的时间就玩不动了
3. 两次取样之间的输出电压如何变化,系统无法得知,不能实时响应

欧拉和 阿诺德.塔斯汀 搞过一些连续信号转离散信号的数学近似算法,可以了解一下
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-18 00:44:01
 
1、MCU每次采样为当前值并没什么问题,并不能因为数字由于信号不是连续的而认定有问题。
2、MCU计算时间问题是一个选择题,如果一些简单项目只需4M8位机就可以了,但要求高的可以用主频为72M的32位机,也有更高主频的。
若还是不能满路就老老实实用硬件环路设计。
joezzhang
  • 积分:6628
  • |
  • 主题:5
  • |
  • 帖子:1791
积分:6628
LV8
副总工程师
  • 2022-1-18 16:32:28
 
1. 做EFT的时候,采样时遇到噪声怎么办?有没有问题去测一测就知道了
2. 穿越频率至少要低于1/10采样频率,否则相移太大、稳不住。4M主频时钟周期就0.25us了,做个加法都要1us,加减乘除一套下来还带ADC延时和条件判断需要多少时间?穿越频率搞到几十Hz还有机会,稍微快一点就顶不住了。稳定是可能的,动态负载测一测就知道性能到底怎么样了。

Presentation_-_Mr._Ali_Shirsavar.pdf (1.89 MB, 下载次数: 31)
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-18 23:24:30
 
不讲应用,只讲速度也就失去了意义。
westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-18 19:28:43
 
一般单片机或者32bit ARM很难做数字控制的电源,需要用到专用的MCU才可以。比如TI C2000系列/Microchip dsPIC33系列/ST G4系列等。
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-18 23:59:28
 
1、做什么样的数字控制电源?
比如现在很火的可编程三合一调光电源,控制MCU只需要负责通信,三合一信号检测(0-10V,PWM调光,R调光)并给出调节电压与电流的PWM占空比。
这种情况下MCU只是进行了参数控制但没有进行电源PWM及环路控制,所以速度就没什么要求了。
2、普通单片机最大的问题就是PWM精度太低,能否用?取决于是否可以接受这样最低限度。
//如一个简单可控硅调光控制程序
i = read_adc(uin); //导通时间调控制。
if(i < 110)i = 110; //AC120V调光,输入110V时可以满电流输出,输入小于110V时输出电流减小。
pwm_d = k / i;     //k为一个常数,与电路参数有关,输入电压与导通时间是线性关第,输入电压越高,导通时间越小,这样就保证了输入电压变化时输出电流是恒定的。

i = read_adc(uout);
pwm_t = x / i;     //x为常数,与电路参数有关,输了电压与频率是线性关系。输出电压越高PWM频率也就越高,这样就保证了输出电压变化时输出电流是恒定的。

load_pwm(); //更新数据。

以上是一个完整的可控硅调光应用程序,PWM_D在电压低于110V时不再增加(if(i < 110)i = 110),调光导通角决定了输入电压,也就决定了输出电流。
下面分析MCU性能需要求:
通常这类电源精度做到3%就行,差点5%客户也接受。
1、ADC 10位(1/1024)输入AC120V,就算输出电压高达100V,10位ADC能满足要求。
2、PWM精度,开关频率设计33Khz则周期30uS, (110V时)最大占空比D为0.39,132V时最大占空比为:0.347 //具体与详细参数有关。
以16M 单片机PWM输出占空比数分别为:0.39 * 30 * 16 = 187 ,0.347 * 30 * 16 = 166,这个数值最然非常低,但能用。

BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-19 00:04:12
 
如果大家知道有一棵PIC单片机SOP8封装用于单极PFC可控硅调光电源,那个控制参数更绝。
1、8M主频,4T周期
2、根本不采样输入电压,就固定一个占空比输出。
3、就一个算法 PWM_T = K / U_out 。
4、控制精度5%
westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-22 10:39:10
 
PIC16F17xx系列可以了解一下
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-22 10:51:29
 
很多年前就有用了,手上有TSSOP与QFN封装的片子。

1、价格贵了些。

2、PIC的破解太容易了。




westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-22 14:18:01
 
Microchip本身就不走便宜路线,基本都比较贵,但有时候不能只看价格,其他因素也是考量对象。
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-22 14:35:01
 
是的,但目前我发现很多国产的也不错。
westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-22 10:38:07
 
当然了,如果知用MCU进行控制就算数字电源的话,那么只要有ADC和PWM的MCU基本都可以走,只是性能高低而已,满足客户需求就可以。
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-22 14:44:09
 
关键是牙膏什么挤?

昨天在算一个48V输出精度问题,以32M的PWM时钟,100K频率,D = 50时,控制精度可以达到48 / 160 = 0.3V每步。
换个思路,把周期作为调整量测可以提高一倍精度,即:48 / 320 = 0.15V每步。
还有把几个PWM周期合成一个来计算也可以提高精度。
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-22 16:54:16
 
重新看了下PIC16F1786,果然有新发现
PIC16F1786.jpg

通过硬件提升16倍精度,就是把16个PWM作为一个调整的数据。

PIC16F1786 由64MPWM时钟,提升16倍后等效PWM时钟为1024M,那么上一楼32M PWM时钟也加入16个周期调整的话,那么等效PWM时钟也是可达512M。
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-22 17:05:30
 
直接上个// dsPIC30F2020 /33F,,,STM32F334/G474,,TI_C2K, //技术上做电源没有任何问题,但是:
1、价格太高。

2,引脚太多,通常做个反激或PFC来说6-10脚就够了。


westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-22 17:12:50
 
做简单的拓扑结构比如反激之类的,没必要用这些MCU,模拟芯片一大把,除非有特殊要求。
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-23 14:45:53
 
上个三合一可编程数字电源控制芯片JC583
002.jpg
可编程三合一调光芯片JC583.pdf (1010.3 KB, 下载次数: 5)
BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-23 14:46:45
  • 倒数10
 
不过这个作用于信号控制端,只是给电源一个信号,并不参加电源PWM环的工作。
westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-24 10:59:36
  • 倒数8
 
很多模拟控制的电源都需要MCU做housekeeping的功能,比如温度检测,显示,通信,启动。。。。
ICD3
  • ICD3
  • 离线
  • LV6
  • 高级工程师
  • 积分:1438
  • |
  • 主题:13
  • |
  • 帖子:103
积分:1438
LV6
高级工程师
  • 2022-1-24 11:15:03
  • 倒数7
 
https://www.21dianyuan.com/home/download.php?action=download&id=68679
同意,按照这篇文档,其实模拟电源用的也有数字技术,只不过不能编程,而且性能不比数字电源差,单纯只电源功能除非学习,还是模拟的适合。
So is digital control unnecessary? Well, that depends on your application. If you have a straightforward dc-dc converter, you probably have no need for a software interface in the middle of your power supply. It will offer little or nothing to speed up your design or improve performance, and it will certainly be more expensive.

westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-24 11:37:10
  • 倒数6
 
我们可以把电源的控制分为4个Level
Level1:   纯模拟芯片控制(比如L6599)
Level2:  模拟控制+MCU(只做简单的housekeeping功能,比如L6599+8bit MCU)
Level3:半数字半模拟控制MCU(比如Microchip的PIC16F17XX系列)
Level4:纯数字控制MCU(比如TI C2000/Microchip dsPIC33/ST STM32G4)
Furious
  • 积分:1230
  • |
  • 主题:23
  • |
  • 帖子:117
积分:1230
LV6
高级工程师
  • 2022-1-24 11:44:48
  • 倒数5
 
居然在这里碰到大神,我在B站追您的视频,讲得灰常好
westbrook
  • 积分:8186
  • |
  • 主题:13
  • |
  • 帖子:1304
积分:8186
LV8
副总工程师
  • 2022-1-24 17:12:56
  • 倒数3
 
谢谢支持!
uuu9687
  • 积分:107
  • |
  • 主题:0
  • |
  • 帖子:1
积分:107
LV2
本网技师
最新回复
  • 2023-6-24 10:53:15
  • 倒数1
 
求大神的B站号
ICD3
  • ICD3
  • 离线
  • LV6
  • 高级工程师
  • 积分:1438
  • |
  • 主题:13
  • |
  • 帖子:103
积分:1438
LV6
高级工程师
  • 2022-1-24 13:41:25
  • 倒数4
 
这篇资料我也看过,是PIC的一个讲座吧11088 PS3 Intelligent Power Supply Design–An Introduction
theodore
  • 积分:602
  • |
  • 主题:0
  • |
  • 帖子:90
积分:602
LV6
高级工程师
  • 2022-4-12 17:07:38
  • 倒数2
 
大神出没,哈哈

BingSun
  • 积分:10963
  • |
  • 主题:58
  • |
  • 帖子:1997
积分:10963
LV10
总工程师
  • 2022-1-23 14:49:22
  • 倒数9
 
在控制端,目前一些常规芯片没法做到深度调光,接下来研究下深度调光也是有必要的。
特别是以后用于DALI调光时更加重要。
热门技术、经典电源设计资源推荐

世纪电源网总部

地 址:天津市南开区黄河道大通大厦8层

电 话:400-022-5587

传 真:(022)27690960

邮 编:300110

E-mail:21dy#21dianyuan.com(#换成@)

世纪电源网分部

广 东:(0755)82437996 /(138 2356 2357)

北 京:(010)69525295 /(15901552591)

上 海:(021)24200688 /(13585599008)

香 港:HK(852)92121212

China(86)15220029145

网站简介 | 网站帮助 | 意见反馈 | 联系我们 | 广告服务 | 法律声明 | 友情链接 | 清除Cookie | 小黑屋 | 不良信息举报 | 网站举报

Copyright 2008-2024 21dianyuan.com All Rights Reserved    备案许可证号为:津ICP备10002348号-2   津公网安备 12010402000296号