在现代科学研究和工业生产中,精度高、稳定性好的数控直流电流源得到了十分广泛的应用。以往所采用的电流源多数是利用电位器进行调节,输出电流值无法实现精准步进。有些电流源虽能够实现数控但是往往输出的电流值过小,且所设定的输出电流值是否准确不经测试无法确定,不够直观。为此,结合单片机技术及V/I变换电路,利用闭环反馈调整控制原理设计制作了一种新型的基于单片机控制的高精度数控直流电流源。
本系统以AT89S52单片机为控制器,通过人机接口(按键和LCD显示屏)来设置输出电流,设置步进等级1 mA,并可同时显示预设电流值和实际输出电流值。本系统由按键设置输出电流值,经单片机计算后通过D/A转换器(TLV5618)输出模拟信号,再经过V/I转换电路转化成电流。单片机通过A/D转换器(MAX187)对采样电阻两端电压进行采样,经单片机处理,换算成电流值后显示在LCD屏幕上,供用户参考。实际测试结果表明,本系统输出电流可在20 mA~1 000 mA范围内任意设定,精度±10 mA,输出电流稳定,可应用于需要高稳定度、小功率恒流源的领域。
1 系统硬件结构
1.1 系统原理
本设计采用模拟闭环控制。采用AT89S52单片机作为主控制器,用D/A转换器输出模拟电压信号,再经V/I转换电路获得电流。V/I转换电路依据电流串联负反馈原理,由运算放大器和大功率三极管组成模拟闭环,使输出电流稳定。
本系统可分为3个部分:电源部分、控制部分和V/I转换部分。电源不仅要提供±5 V和±12 V供控制部分和V/I转换部分中的模拟器件使用,而且要提供大电压供V/I转换部分使用,且要有大功率输出的能力;控制部分的作用是根据用户设置值输出相应的电压信号;V/I转换部分的作用是把电压信号转化成相应的电流。各部分之间的关系如图1所示。
图1 系统原理图
1.2 工作电源
使用两个变压器。大功率变压器输出经整流滤波后直接供给V/I转换部分使用。小功率变压器输出经整流滤波后通过78和79系列芯片获得±12 V和±5 V电压。大功率变压器输出经整流滤波后稳压,然后提供给V/I转换电路使用。此方案输出功率可以满足要求,且V/I转换部分电源稳定度可以保证。本电流源输出电压设置在40 V以内,因此最大输出功率为80 W,为留有裕量,大变压器选择双18 V、100 W.使用三端稳压芯片LM338K获得40 V的电压,这样LM338K输入输出压差为6V左右,输出电流2A时耗散功率为12W左右,LM338K最大输出电流达5 A,耗散功率50 W.
电源部分的电路如图2所示。
图2 电源部分电路图
1.3 D/A转换
使用12位D/A转换器。采用12位串行D/A转换器MAX531.D/A转换器输出的电压信号加到放大器F5的同相端,F5的输出接到中功率三极管D1266A的基极,D1266A与大功率三极管2N3055组成达林顿形式。RL为负载,它接在+40 V电源和达林顿之间,与之并联的二极管是考虑到负载有可能是电感而加上的,作用是断电时消耗电感负载的能量,保护系统。R为取样电阻,阻值0.33 Ω,功率10 W,取样电阻把电流线性转化成电压信号,经同相放大器后加到放大器F5的反向端。设负载上的电流为I,反馈回路中同相放大器增益为K,输入信号电压值为U,则U= 0.33xIxK,调节同相放大器的增益,使0.33xK=1,可使U=I,这样实现了电压转换电流功能,且消除了三极管β值随温度变化带来的影响。
D/A转换的电路如图3所示。
图3 控制部分电路图
1.4 V/I转换部分
V/I转换电路采用高精度集成运放OP07作为比较放大器,DA的输出电压经跟随器与比较器的同向端相连,比较器的反向端与采样电阻的相连,使电流预设值与测量值直接进行比较,±12 V电源为OP07提供电源电压,运放的输出电压信号控制达林顿复合三极管的导通,经模拟闭环反馈调整使电流达到设定值,TIP41(10 A)是大功率PNP三极管,在本设计中的主要功能是实现功率放大。
采样电阻将电流信号以电压的形式加到运放的输入端,由此构成的电流并联负反馈电路,可以减轻后级电路对D/A的干扰,从而得到恒流输出,大大提高了电流源的稳定性。
根据运算放大器的结构可知,负载电流仅与输入电压和采样电阻的阻值有关,而与负载电阻的大小无关。当输入电压保持不变时,负载电阻在一定范围内变化,而输出电流将保持不变,由此构成恒流源电路。本设计方案的一个主要特点是,采用康铜丝做采样电阻,康铜丝的温度系数约为5 ppm/℃,当有电流流过电阻是引起的温度升高对其阻值影响不会太大,其温度特性较好。电路中各电阻均应选用精密电阻,以达到能高的V/I转换精度。V/I转换部分电路图如图4所示。
图4 V/I转换部分电路图
1.5 人机接口
为了能够更好地显示更多信息,且能直接输入电流值。使用4x4键盘和LCD显示屏构成人机接口。使用AT89S52、薄膜键盘和LCD显示屏YM12864R构成人机接口。
2 系统软件设计
系统的主程序流程图如图5所示,由主程序实现整体控制,系统的功能子程序主要包括A/D转换子程序,A/D转换处理子程序,延时子程序,键盘处理子程序,液晶显示子程序等。
图5 系统的主程序流程图
程序开始运行后,首先进行系统初始化,显示初始设定的电流值和实际采样得到的电流值,然后检测是否有键按下,若有则进入按键处理子程序。由于采样电阻随温度变化,因此软件设计中需根据实际测得的变差数据,根据实际电流与电流理论值直接的函数关系进行温度补偿,使实际输出电流值与预设电流值之间的变差保持在误差允许范围内。
2.1 D/A转换部分
D/A转换器选用TLV5618,TLV5618是串行输入的12位高精度快速D/A转换器,能够输出二倍于基准电压的电压信号。其基准电压是由MC1403提供的2.5 V电压,因此经D/A转换后得到的输出为0~5 V.12位D/A转换器,分辨率为1/4 096,选采样电阻为0.1Ω,D/A输出分辨率为1 mA的电流,实现步进10 mA,能够满足本设计的要求。
TLV5618的时序转换图如图6所示。
图6 TLV5618的时序转换图
根据上述时序图,编写DA转换子程序,其流程图如图7所示。
2.2 A/D转换部分
A/D转换选用12位串行转换器MAX187,其内部内置4.096 V电源,转换精度高,速度快,满足本题目设计要求。根据其芯片参考资料给出的时序转换图编写A/D转换子程序,A/D转换子程序流程图如图8所示。
图8 A/D转换子程序流程图
3 系统测试
3.1 硬件测试
为了保证系统安全,上电前先用万用表检测各个部件是否连接正常,是否存在短路现象。空载后通电,用万用表检查各个关键部位电压是否正常。加大负载后通电,检查整体运行是否正常,有无过热情况。
3.2 软件测试
检测各部分软件程序是否正常工作,AT89S52控制系统、AD转换、DA转换、按键控制及LCD显示等部分是否稳定运行。
3.3 测试结果
经测试,系统能够达到以下指标,系统总体测试结果如表1所示。
表1 测试结果
1)系统能够实现20~1 000mA的任意电流值的设定,具有步进电流调整功能,能够实现步进+1、-1、+10、-10mA;
2)为保证系统安全运行,设定最大输出电流为1 200 mA,当输出电流值大于1 200 mA时,发出报警提示。
3)系统的输出范围测试,通过按键设定预设电流范围20 mA,1 000 mA,实测采样电压值为2.067mA,100.34mA.
4)测试方法:将万用表调至电流档,两表笔串联接入+12 V电源与负载电阻之间,其显示电流值,即为输出的实际电流值。
4 结论
本设计提供的高稳定性、高精度数控直流电流源,在科研、教学及设备生产中都能够得到广泛的应用,能够大大提高科学仪器的性能,若经过进一步的完善,结构再次优化,选用更加理想的采样电阻和纹波较小的电源供电,减小系统的误差,将会实现更大的价值。