• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

我的第一个纯数控电源今天成功了

buck, 24V input, 12V output. PIC18F458, 40KHz, 采样周期50us,即每两个PWM周期采样并更新duty cycle.PID控制,基于查表法,用了各种办法,最短的PID计算时间为30us左右,没能小于25us.有比较小的cycle limit(2003 jan IEEE power electronic 有一篇文章专门提到了这个问题).变负载和输入电压改变,输出均能稳定在12V,下一步看看能不能改进算法.
看了很多关于关于数控电源的paper,收获很大.看看这次能不能搞出点名堂.
5月份参加了TI的一个seminar, 专门有一个section就是数控电源.但我听了之后,发现其实这个数控电源并不是真正意义上的纯数控电源.单片机仅仅monitor 和通讯而已,控制部分还是模拟的type II.这是TI最新的seminar,由此可看出工业界的数控电源的现状.
个人感觉,纯数控电源完全取决于硬件.用DSP虽然快,但成本显然不能接受.AUBURN UNIVERSITY 的paper用TIF240DSP控制buck,显然实际应用是步可能的.18F458很简单好用,但10位A/D最快要19us,显然又限制了电源的频率.
microchip的dsPIC, 2010系列,普通的28pinDIP封装,16位PWM, 10位A/D只用2us,可能会是很好的选择,下一步准备用,看看能把频率提高到多少.
全部回复(52)
正序查看
倒序查看
2004-08-12 09:12
wang 兄,恭喜,恭喜!!!能不能传一张图上来,先谢了,代表大家先谢了,谢谢
0
回复
maychang
LV.6
3
2004-08-15 11:16
恭喜恭喜!
前几天我的modem被雷击坏,一个星期不能上网,来迟了.
TI也还是用模拟的type II做控制,看来纯数控电源确实不容易.
microchip的dsPIC,PWM的频率是多少?一般PWM不可能超过单片机时钟,那么该芯片的时钟最大是多少?请Wang兄介绍介绍.
0
回复
gunking
LV.4
4
2004-08-15 23:49
@一个好人
wang兄,恭喜,恭喜!!!能不能传一张图上来,先谢了,代表大家先谢了,谢谢
惭愧惭愧,跟各位DX相比,我只是刚刚入门不久.硬件本身很简单,buck加上反馈和控制输出.简单得不好意思把电路贴出来.这几天希望能改进改进算法,提高暂态性能.比如,提高到50khz, 这样每40us更新一次.改进PID的参数.更正一下,需要30us计算新的duty cycle, include 19us A/D,18us PID table lookup for 3 parameters. one of parameter is obtained during A/D convertion. so totally, it takes about 30-34us to get a new duty cycle.if the direct multiplication is used to get new duty cycle, like u(k)=Kp*error(K)+Ki*sum(error)+Kd*(error(k)-error(k-1)),it takes 8*25us to get a new duty.Obviously, it is bad, too long delay to update the duty cycle.this is why I employ look up table, and the price is relatively bad transient reponse.
In UC power electronic center, they made a digital controller to buck converter at 1MHz, but they made their specific hardware, include high frequency DPWM chip, high speed A/D chip and DSP.
  as for my case, I use very popular PIC18F458, running at 50KHz.
In my opinion, the improvement of algorithm doesn't make any sense to improve the transient reponse.The small difference disappears then the floating numbers are changed to interger DPWM. if a higher swtiching frequency, higher sampling frequency and shorter PWM gerneration, can be achieved, it improves the transient reponse greatly.
0
回复
gunking
LV.4
5
2004-08-16 00:04
@maychang
恭喜恭喜!前几天我的modem被雷击坏,一个星期不能上网,来迟了.TI也还是用模拟的typeII做控制,看来纯数控电源确实不容易.microchip的dsPIC,PWM的频率是多少?一般PWM不可能超过单片机时钟,那么该芯片的时钟最大是多少?请Wang兄介绍介绍.
thanks, man.
I jusr ordered some dsPIC samples and learning how to program with C.I think it should be fine for high frequency switch , above 100khz.
it seems 8 bit PWM for 150kHz for PIC18F458 at 4MHz, look, the impossible for PIC18F458 to finish the A/D and calculation at that short time even it can provide 150Khz, 8bit PWM.
but I think dsPIC can do it. we will see..
0
回复
maychang
LV.6
6
2004-08-16 18:53
@gunking
thanks,man.IjusrorderedsomedsPICsamplesandlearninghowtoprogramwithC.Ithinkitshouldbefineforhighfrequencyswitch,above100khz.itseems8bitPWMfor150kHzforPIC18F458at4MHz,look,theimpossibleforPIC18F458tofinishtheA/Dandcalculationatthatshorttimeevenitcanprovide150Khz,8bitPWM.butIthinkdsPICcandoit.wewillsee..
Thanks.
We are waiting for you...
0
回复
analogman
LV.2
7
2004-08-16 20:30
请教一下各位搞数控开关电源的老兄,如果程序中途跑飞了怎么办?等看门狗给它拉回来会不会太晚?
0
回复
2004-08-17 10:53
@analogman
请教一下各位搞数控开关电源的老兄,如果程序中途跑飞了怎么办?等看门狗给它拉回来会不会太晚?
analogman兄的这个问题,我也一直在考虑,不过现硬件保护措施都很重要,不能管靠软件来控制,有时炸机那就好恐怖啊!!!
0
回复
analogman
LV.2
9
2004-08-17 13:33
@一个好人
analogman兄的这个问题,我也一直在考虑,不过现硬件保护措施都很重要,不能管靠软件来控制,有时炸机那就好恐怖啊!!!
硬件保护又会带来另外的问题.

假定为了防止因程序跑飞而使开关导通时间过长,用一个硬件电路限制每个开关周期的最大占空比.当负载发生跳变时,比如从轻载跳到满载,由于最大占空比受到限制,电源的动态性能会很差,需要很长时间输出才会稳定,那么,数字控制的优势又体现在哪呢?还不如用个几毛钱的模拟控制器呢.
0
回复
cmg
LV.9
10
2004-08-18 06:34
从你的描述中可看出单片机控制是有很多问题存在的,响应速度和保护问题就很难解决,我也很关注数字电源,拒我了解现在情况是这样:用单片机实现智能保护和通信功能的比较多,但不能算真正的数字电源,TI有一款DSP是做纯数字电源的,全部数字化,型号忘记了,IWATT有一款数字控制IC,它把类似CPU的东东集成到IC里面去了,反映速度超快,这是目前唯一的一款真正的实际可用的数字电源.
0
回复
maychang
LV.6
11
2004-08-18 23:27
@cmg
从你的描述中可看出单片机控制是有很多问题存在的,响应速度和保护问题就很难解决,我也很关注数字电源,拒我了解现在情况是这样:用单片机实现智能保护和通信功能的比较多,但不能算真正的数字电源,TI有一款DSP是做纯数字电源的,全部数字化,型号忘记了,IWATT有一款数字控制IC,它把类似CPU的东东集成到IC里面去了,反映速度超快,这是目前唯一的一款真正的实际可用的数字电源.
cmg兄也来了!
我也感觉纯数字电源很难,原因之一就是上面这位说的程序跑飞.如果跑飞,必定烧功率管.用单片机作显示、通讯等等都没有问题,唯独单片机PWM直接控制不好解决.
希望cmg兄以后多多介绍芯片和电路动态.
0
回复
cmg
LV.9
12
2004-08-23 09:23
@maychang
cmg兄也来了!我也感觉纯数字电源很难,原因之一就是上面这位说的程序跑飞.如果跑飞,必定烧功率管.用单片机作显示、通讯等等都没有问题,唯独单片机PWM直接控制不好解决.希望cmg兄以后多多介绍芯片和电路动态.
Iwatt是目前唯一有成功的产品的数字电源IC供应商.它使用一种所谓的pulse-train的技术.算得上是单周期反应.
0
回复
happy1001zw
LV.2
13
2004-09-23 16:05
@cmg
Iwatt是目前唯一有成功的产品的数字电源IC供应商.它使用一种所谓的pulse-train的技术.算得上是单周期反应.
IWATT是一个小功率的,不知道有没有大功率的,有没有IWATT的资料啊!!!!1
0
回复
elicyliu
LV.1
14
2004-09-24 21:16
gunking:你好,先拜你为师了,我也准备做智能电源,采用的是半桥结构,PWM脉冲有单片机实现,不知道您的控制算法是哪种类型的,您选用的单片机和A/D芯片是什么型号的?谢谢回复和指教
0
回复
yjyj
LV.2
15
2004-11-25 14:29
@maychang
cmg兄也来了!我也感觉纯数字电源很难,原因之一就是上面这位说的程序跑飞.如果跑飞,必定烧功率管.用单片机作显示、通讯等等都没有问题,唯独单片机PWM直接控制不好解决.希望cmg兄以后多多介绍芯片和电路动态.
知道变频器吗?它就是用196直截控制IGBT的,
0
回复
飞狐
LV.2
16
2004-12-01 11:34
gunking ,能不能发个图给我呀:wwwflyfox@163.com
我做一个PIC控制PWM输出6档直流电压,但电压不稳定.
0
回复
ericli80
LV.1
17
2004-12-03 11:41
gunking .你好.看到你的帖子.我真是高興.因為我也想搞個數控電源.可是我看不明白.我沒有搞過這些東西.也就不明白了.對於單片機也只是用過了了c51系列的.請指教一下.我該怎麼實現我的數字控制電壓輸出.範圍要在1.00v~~12.00v就可以了.需要用到什麼芯片,麻煩告知,非常感謝.
0
回复
mlzjde9
LV.2
18
2004-12-05 21:20
@analogman
请教一下各位搞数控开关电源的老兄,如果程序中途跑飞了怎么办?等看门狗给它拉回来会不会太晚?
数控电源程序跑飞实在是个大问题,等看门狗拉基本是炸机的!好像没什么好办法来解决呢!
0
回复
2004-12-08 19:48
什么叫数控电源呀?指的是开关管的驱动脉冲由单片机、dsp等mcu来发出的电源吗?
请讲解以一下!
0
回复
l_c_s123
LV.3
20
2004-12-20 16:10
@maychang
cmg兄也来了!我也感觉纯数字电源很难,原因之一就是上面这位说的程序跑飞.如果跑飞,必定烧功率管.用单片机作显示、通讯等等都没有问题,唯独单片机PWM直接控制不好解决.希望cmg兄以后多多介绍芯片和电路动态.
那maychang兄,
做电机控制的,如果程序跑飞了会怎么办呢
0
回复
l_c_s123
LV.3
21
2004-12-21 16:38
@analogman
硬件保护又会带来另外的问题.假定为了防止因程序跑飞而使开关导通时间过长,用一个硬件电路限制每个开关周期的最大占空比.当负载发生跳变时,比如从轻载跳到满载,由于最大占空比受到限制,电源的动态性能会很差,需要很长时间输出才会稳定,那么,数字控制的优势又体现在哪呢?还不如用个几毛钱的模拟控制器呢.
其实,我觉得真正的问题是,你设计出来的电源的可生产性如何.用模拟电路做出来的Power supply,生产上存在这样那样的问题.而用数控的电源用比较少的器件,这样可生产性非常好,这也是成本要考虑的.谢谢
0
回复
liuy_sohu
LV.3
22
2004-12-29 11:30
@l_c_s123
其实,我觉得真正的问题是,你设计出来的电源的可生产性如何.用模拟电路做出来的Powersupply,生产上存在这样那样的问题.而用数控的电源用比较少的器件,这样可生产性非常好,这也是成本要考虑的.谢谢
有道理
0
回复
lito
LV.1
23
2005-06-01 02:02
您好啊:
能不能传图给我,
lito-1@yahoo.com.tw
0
回复
剑心
LV.8
24
2005-06-05 17:24
@l_c_s123
那maychang兄,做电机控制的,如果程序跑飞了会怎么办呢
电机驱动的H桥本身是采用硬件生成死区的,无论输入什么逻辑信号都不会炸.跑飞之后顶多输出电压不对,短时间之内电机能受得了.

拿单片机做buck可以,做boost就有些危险了.
0
回复
qiuyy
LV.6
25
2005-06-06 16:27
我正在研究数控电源应用在我的测试仪器中,以前也作过类似的产品,它有一个缺点就是:BUCK电路低压输出的时候,电压调节就比较准确,可以达到0.1v/STEP,可是在高电压输出的时候,比如10V以上,就比较困难了,有时候达到了0.5V/STEP.不知楼主兄弟可找到了对策?
0
回复
ryanlee
LV.1
26
2005-06-09 17:17
@qiuyy
我正在研究数控电源应用在我的测试仪器中,以前也作过类似的产品,它有一个缺点就是:BUCK电路低压输出的时候,电压调节就比较准确,可以达到0.1v/STEP,可是在高电压输出的时候,比如10V以上,就比较困难了,有时候达到了0.5V/STEP.不知楼主兄弟可找到了对策?
路过...
0
回复
hjxu
LV.4
27
2005-08-08 20:56
能不能传张接线原理图给我, 谢谢
xuhuijun2002@sohu.com
0
回复
whatcall
LV.5
28
2005-08-12 23:36
@maychang
cmg兄也来了!我也感觉纯数字电源很难,原因之一就是上面这位说的程序跑飞.如果跑飞,必定烧功率管.用单片机作显示、通讯等等都没有问题,唯独单片机PWM直接控制不好解决.希望cmg兄以后多多介绍芯片和电路动态.
驱动电路一定要加硬件检测开关管过流进行保护吧?
LZ是学院派吗?
工业界的大功率电源纯数控的早就很普遍了.我觉得稳定与成本是工业应用首先应该考虑的问题.
0
回复
alex_china
LV.3
29
2005-08-15 01:26
恭喜!恭喜!!!
0
回复
逍遥子
LV.5
30
2005-08-16 20:39
@alex_china
恭喜!恭喜!!!
你应该用AVR 的TINY13来作,速度够快,又只有8pin.
0
回复
rrrrr1234
LV.3
31
2005-12-10 09:43
楼主的做的是一个DC-DC的电源?好像有点浪费.
有没有做一个DC-AC的想法呢?
0
回复