- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
USB可变电源的制作
硬件规格
‧输出功率
USB Bus可以提供±5V与最大500mA的电流,大约是5V×0.5A=2.5W的电力。本USB测试用可变电源供应器无负载时,电路内部流动的电流大约是130mA,也就是说负载时电路会消费5V×0.13=0.65W的电力,如此一来USB Bus提供的电力只剩下2.5W-0.65=1.85W可以使用,相当于DC-DC变频器(Converter)或是PWM控制电路效率100%时的值。然而实际上PWM控制电路的效率只有55%左右,亦即只有1.85×0.55≒1W的电力可供应用,例如10V,100mA正负同时使用时相当于±10V,50mA最大值,如果超过最大电力的话,必需利用可復原保险丝(Resettable fuse)切断电源。
‧透过USB控制可变电压电路
图1是USB可变电源整体结构,由图可知USB并联转换(Parallel Switching)IC使用FT245BM,由于USB介面必需转换成与PC并联埠一样,因此将FT245BM的并联Bus连接至微处理器。USB的端子的+5V Bus电力(power)在升压电路为±13.5V,利用微处理器PIC16F873的PWM埠的Bus切换,再透过电容与电感进行平整处理,最后输出正、负电压。输出电压进入微处理器的A-D埠,控制PWM的duty成为来自host的指示值,接着利用电流检测电路,再依照正、负各负载电流取出电压,当作A-D转换将电路电流值传送到host。
图1 USB可程式电源整体结构
为了使DC-DC变频器获得1次电压,本可变电源供应器选用低单价、取得容易的切换比较IC(Switching Regulator)MC34063,该IC可以从USB Bus电力产生±13.5V的正、负电源。表1是切换比较器IC MC34063的主要规格。
表1 切换比较器IC MC34063的主要规格
‧步进(step-up)变频电路
图2是MC34063构成的步进型(step-up)升压型变频器动作原理,如图所示Tr开启(ON)期间电感会储存能量, 一旦关闭(OFF)该能量立刻成为逆起电力,并在Vin累加流至电容Cout与负载RL,因此输出电压一直都比输入电压高,Tr开启期间D成为OFF,负载电流会从Cout提供储存的电流。
图2 升压型变频器的动作原理
‧电压反相变步进型频器电路的设计
负端的1次电压利用图3电压反相切换比较制作,Tr开启(ON)期间ton电感L会储存能量,Tr一旦关闭(OFF)该能量立刻被传送到输出滤波电容器Cout与负载RL,由于输出只会撷取电感L的能量,因此不需作类似图2的Vin直列插入设计也可以作降压与升压动作。输出电压VOUT可用下式表示:
ton: Tr的开启(ON)时间
toff: Tr的关闭(OFF)时间
电压反相变步进型频器电路的动作原理,与图2升压型变频器完全相同,表2是DC-DC变频单元的主要设计规格。
图3 电压反相变频器的动作原理
表2 DC-DC变频单元的主要设计规格
‧PWM控制电路的动作特性
设计可以在0V附近进行控制的切换比较器相当困难,因此动作上先利用上述DC-DC变频产生最大电压,再用PWM切换取出预期的电压。事实上只有降压型切换比较器能够达成上述要求,图4是PWM控制电路的动作原理。
图中的Tr可以开、闭(ON/OFF)输入电压+Vin,提供duty可变矩形波给LC滤波器,该滤波器会将矩形波平均化,在负载RL产生DC输出电压。输出电压以下式表示:
ton: Tr的开启(ON)时间
toff: Tr的关闭(OFF)时间
如此一来以PWM切换时,即使低电压也不会像串联(serial)比较器消费无意义的电力。
图4 PWM控制电路的动作原理
‧PWM控制与回馈的整合
根据式(2)可知,理论上只需利用PWM的duty比就能够决定输出电压,然而实际上轻负载时,受到PWM平整用电容维持峰值(peak hold)的影响,输出电压对PWM的duty就无法呈线性(图5)。
如图5所示负载阻抗1kΩ时,0V附近的输出电压急遽站立,电压升高时则呈曲线状(curve),负载阻抗100Ω时几乎呈直线状,主要原因是高负载时储存在L的电流,在toff期间成为连续模式不会变成0所致,换言之负载造成输出电压改变,不可能形成定电压电源。
此处为获得线性特性,因此设置可以监控输出电压,同时变更PWM duty的回馈(feedback)电路。虽然负载连接100Ω的话可以获得线性特性,不过10V/100mA却会耗尽可使用的所有电力,笔者认为这种对策并非上策。
图5 PWM duty对输出电压的特性(无回馈)
电路设计
图6是本USB测试用可变电源供应器正电源端的电路;图7是负电源端的电路;图8是微处理器与USB介面周边电路。
微处理器的PWM输出是正电压,因此正电源的PWM控制相当容易,不过负电源端为微处理器的正脉冲,必需以0~16V的电压控制MOSFET的闸道(gate),同时设置利用Tr6控制的强度漂移(level shift)电路。
a.电流检测电路的设计
如图6所示电流检测电阻R21与输出电流i(A)呈比例,R21(1Ω)的两端产生V=ix1=i(V)的电压,该电压若直接连接至OP增幅器的差动输入时,外观上看似正常,不过Vin会在0~13V之间变化,其结果不是与OP增幅器的同相输入范围相同就是超越该范围,因此必需降低DC强度。
Ⓐ点的电压:
Vinx(10.5÷17.3)=0.6Vin
Ⓑ点的电压:
(Vin-i)x(10.5÷17.3)=0.6(Vin-i)
Ⓐ-Ⓑ点之间的电压:
0.6Vin-0.6(Vin-i)=0.6i(A)
此处基于程式制作上的考量,设定OP增幅器的gain,藉此使A-D变频器的整体特性(full scale)成为256mA。
本电路受到R24,R25,R30,R31特性分佈的影响,即使i=0A,Ⓐ-Ⓑ点之间仍旧会产生电位差,必需透过R33或是R34的调整消除该电位差。
此外输出电压超过0~+5V范围时,D3会进行电压限制同时保护连接的微处理器。R33,R34无调整时,某些情况IC5a的输出会变成很大的负电压,此时输出端子会因D3成为短路状态,其结果造成OP增幅器的电源端子有大电流流动。虽然负端的电流检测电路的电流流动方向变成逆向,不过动作原理与调整方法却完全相同。
图6 正电源端的电路
图7 负电源端的电路
图8 微处理器与USB介面周边电路
b.电压检测电路的设计
本电路可以将 的最大电压,转换成A-D变频器+5V的输入最大电压,因此理论上只要分割正端的阻抗即可,然而实际上负端必需以OP增幅器进行反相转换才可。图7的D8可以使输出电压限制在0~5V范围内。
c.USB串联转换IC FT245BM的使用方法
此处假设FT245BM使用COM埠,驱动器使用USB驱动器,因此要求两条假想的COM埠驱动器,接着介绍FT245BM的使用方法。
▶资料送到主机的方法
有关将资料从周边机器传送到PC主机(host) 的方法,它是在TXE信号变成L强度期间,将位元大小(bit size)资料写入模组内部,具体方法如图9(a)所示。
图9 FT245BM与host PC的资料转送
动作上首先监视TXE信号,一旦变成资料可以写入FIFO状态时,TXE信号变成L强度,亦即在①的状态资料无法写入FIFO,必需进入②的状态才能够进行资料写入。此处将WR信号变成H强度,进行D0~D7写入作业并输出资料,接着将WR信号变成L强度,使D0~D7的资料写入FIFO。
▶从主机取出资料的方法
监视RXF信号可以掌握是否从主机取出资料,如图9(b)所示RXF信号变成H强度时,①即使读取资料Bus也无任何意义。
RXF信号变成L强度时,表示1位元以上的资料进入FIFO,此时必需将RD变成L强度,如此一来FIFO的初始资料会输入到D0~D7,之后使RD回復到H强度,RXF则变成H强度开始进行FIFO的下一个资料的撷取作业。
当一切准备妥当时RXF再度变成L强度,利用与上述相同方式读取资料。
d.微处理器的选择与介面电路电路
为了使A-D转换维持4通道(channel),PWM维持2通道,串联埠维持8位元,因此有关FT245BM控制,根据泛用埠4条的条件进行选择,最后决定使用取得容易而且相关工具(tool)可以免费使用的PIC16F873微处理器。
PIC16F873具有DIP 28根脚架(pin),动作频率为20MHzmax,快闪IC具有8K文字容量,RAM容量为368位元,两系统时计(timer)等特征。
虽然A-D变频器与PWM拥有最大10位元的解析度,不过基于程式制作上的考量只使用8位元。微处理器的电源电压使用+5V,不过它还兼任A-D变频器的基准电压,因此USB的+5V电压精度明显不足,必需从+16V透过并联比较器(serial regulator)制作稳定化的+5V电压。
e.其它相关电路电路
图8的EEPROM(IC3)主要是收容产品ID、序号、产品说明(description)等文字列。IC1使用FT245AM的场合,只需变更图8右上方表格的定数即可。LED会随着从主机的各存取动作点灯。微处理器IC2採用具备可以支援firmware而且可以支援更新的IC固定基座(socket)。IC1~IC2的Bus Line应该具备支援高阻抗的pull-up特性,不过微处理器本身拥有pull-up功能,因此不需连接任何其它元件(device)。
虽然Polyswitch(F1)的保持电流为250mA,検索(trip)规格为500mA,不过实际上大约400mA就会切断。如果是RXE030的话,保持电流为300mA,検索(trip)规格为600mA,500mA才会切断,要求电流容量提高到极限时,不妨改用RXE030的Polyswitch。
f.调整方法
▶电流检测电路的归零调整
具体方法是在无负载状态下,将输出电压设定成±12V~±13V,并调整R33或是R34其中一个,使POS_CURR(IC5的第1脚架)变成0V±20mV,无法调整时请改调其它VR,接着调整R63或是R64使,NEG_CURR( 的第7脚架)变成0V±20mV。
▶电流检测电路的Gain调整
首先将1Ω分别连接到±负载并输出±10V,接着调整R22,R51使显示变成10mA,如果将OP增幅器的drift列入考虑,电流检测精度大约是±10%左右,因此该部位使用47~51kΩ固定电阻。
微处理机端的控制
‧PC主机与介面的规格
微处理机端的控制透过FIFO,从PC主机以串联资料形式取得指令,依佌使board动作。表3是USB可变电源基板的控制指令,所有指令全部都是从PC主机传送到目标侧(target side),所谓目标初始状态(reset)是指输出电压±0V,等待从PC主机传送指令的状态而言。
对REQA¥r(要求电流值)则以「ACKA1230067¥r」方式回应,由于是+123mA, -67mA,因此分别设定成4位数。
此外有关VXXXYYYY¥r(设定电压值),例如V120020¥r时设定成+12.0V, -2.0V,以XX.X形式分别设定成3位数。虽然PN与SN使用商品化版本,不过此处对PN的要求回覆「ACKPNUSBPWR01¥r」,对PN的要求则回覆「ACKSN000000000¥r」。
表3 USB可变电源基板的控制指令(¥r为Carriage Return)
‧与FT245BM的通信软件制作
与FT245BM之间的介面、电压值设定、电流值取得等等,是以主程序(main routine)的无限回路(loop)进行连续(Sequential)处理,图10是主程序的流程图。
图10 主程序的流程图
‧PWM控制软件的制作
PWM控制利用时计(timer)0的插入程序执行,图11是PWM控制程序的流程图。PWM周期TPWM依据下列公式决定:
TPWM=(PR2+1)x4TOSCxTMR2
=(255+1)x4x(1x10-7)x1
=102.4x10-6(秒)→102.4μs
PR2: 决定PWM周期的电阻值
TPR2: 时计2的电阻值
时计0的插入周期:
4TOSCx256x(pre-scaler分周比)
=4x(1/10MHz)x2x256
2.048x10-4(秒)→201μs
亦即时计0的插入周期与输出电压drift、波动(ripple)有互动关系,如果缩短时计0的插入周期,插入间隔会变短drift减少,周期变长时波动则减少。
图11 PWM控制程序的流程图
‧综合特性
图12是USB可变电源的输出特性,由图可知1~12V范围的消费电力微小误差几乎完全相同低于±2%,不过±13V时的消费电力误差却高达±5%。
至于输出电流随着输出电力改变,负载电流并非直接在线圈内部流动,而是储存在电容器的电荷流出产生负载电压,因此输出电流类似下列所示,电压越低可以取得越大的输出电流:
13V=140A,12V=152A,11=165A----
依此推算最大电流大约300A。
输出端子短路时(例如正电压与GND,负电压与GND,正电压与负电压等等)都是1次端电源,亦即±13.5V电源的电流限制电路动作,由于输出电压在0V 附近,所以还不致于造成电路烧毁或是引发Polyswitch (F1)动作。
图12 USB可变电源的输出特性
Windows的应用
Windows的应用使用UsbPowMon(USB power monitor)的EXE档与Visual C++project程式。由于USB介面使用FT245BM,因此首先进行元件驱动器的安装(Install),接着利用USB连接器将硬件与PC连接,再从EXE director点选UsbPowMon.exe,开始Windows的应用(图13)。
利用PC控制由FT245BM构成的USB机器时,必需进行假想COM埠驱动器的安装,驱动程式下载网路资料为「http://www.ftdichip.com/Drivers/VCP.htm」,最后再配合PC的OS下载驱动程式解开档案(Archive)直接复制即可。
图13 USB功率监视器启动时的画面
Windows的应用站立时电源呈OFF状态,必需依照图14的指示操作一览栏位(List Box)决定正、负端的电压值,再点选ON/OFF栏位(Box)开启电源,此时图15的「假想LED」变成红色,硬体的LED则开始点灭。
此外本应用软体每隔300ms会自动检测硬件的电流值,显示在编辑(edit)栏位,该值以10tap移动平均滤波器进行平整化。
图14 设定电压值点选ON/OFF
图15 假想LED点灯显示电流值
接着介绍Windows应用的UsbPowMon(USB power monitor)作业流程。
‧主程序的流程
图16是Windows应用的主程序的流程图。本USB可变电源使用假想COM埠,因此主机启动后必需打开COM埠。
元件驱动器安装后将硬件连接至USB,该硬件会自动分配到COM埠,不过此时COM埠的号码为任意号码,会分配到哪一个号码取决于PC与PC的设定,一般而言主机会依序从COM0一直COM99逐一查询。
如果COM1埠开启成功,立即进入下一个步骤,此时COM1会被连接到某个目标,并将REQPN指令传送到该目标要求产品名称,目标接受该指令会在 以内,回覆ACKPNUSBPWRV01(表示产品名称为USB电源版本1)形成约定,如果经过 没有获得回覆时,该目标成为「不是USB可变电源」,此时会回到流程的初始打开下一个COM埠;如果目标回覆ACKPNUSBPWRV01,表示它是USB可变电源,立即进入下一个步骤,传送RST(reset)指令进入永久回路(loop),接着等待使用者或是时序的插入,若收到RST指令目标立即成为初始状态,正、负电压则变成OFF(高阻抗)状态。
图16 主程序的流程图
‧使用者插入(变更电压)的流程
所谓使用者插入是指使用者操作应用功能引发的插入。接着介绍电源ON/OFF以及变更电压的插入操作。
图17是使用者插入的流程,当主程式进入永久loop时,假设使用者点选ON/OFF按钮,不执行时(default)电压值正端为+1V,负端为-1V,此时主机会将V010010的指令传送到目标,目标解读该指令使正电压成为+1V,负电压成为-1V。
如果使用者变更正电压一览栏位,使电压成为3.5V时,主机会将V035010的指令传送到目标,目标则正电压设成3.5V,负电压维持-1V。关闭电源时主机则将V000000或是RST的指令传送到目标。
‧使用者插入(结束应用作业)的流程
另外一个使用者插入是「结束应用作业」,具体方法使用者点选应用画面右上方X符号,依此结束应用作业。图17(b)是使用者插入的流程。
此时主机会传送RST指令,同时使目标变成初始状态(电源关闭),COM埠关闭后结束应用作业。
图17 使用者插入的流程
‧时序插入流程
图18是时计插入流程。基本上Windows应用接受目标的电流值会显示在编辑栏位,上述动作使用时序插入就能够自动定期执行。
Windows应用每隔300ms会将REQA(要求电流值)指令传送到目标,目标收到该指令30ms以内回覆电流值,例如ACKA01230067时Windows应用解读成显示正端电流值为123mA,负端电流值为67mA,不过此处请读者注意该电流值并不太正确,而且目标内的OP增幅器会撷取噪讯,将微细变动传送到主机,因此在Windows应用取10tap移动平均值藉此降低变动。
图18 时计插入流程
随着USB应用机器的陆续问世,一般认为低价、高性能USB测试用可变电源供应器,与图案产生器的需求势必大幅增加。
上一篇:第二代PCI Express测试技巧
下一篇:STB设计开发趋势