以相对于Io可以忽略不计,由此可见其恒流效果较好。
3.由PQ30RV31组成的恒流电路如图3所示,I=Vref/R(Vref=1.25>,他的恒流会更好,另外他是低压差稳
压IC。
摘要:
本文论述了以凌阳16位单片机为控制核心,实现数控直流电流源功能的方案。
设计采用MOSFET和精密运算放大器构成恒流源的主体,配以高精度采样电阻及12位D/A、A/D转换器,完成了单片机对输出电流的实时检测和实时控制,实现了10mA~2000mA范围内步进小于2mA恒定电流输出的功能,保证了纹波电流小于0.2mA,具有较高的精度与稳定性。
人机接口采用4×4键盘及LCD液晶显示器,控制界面直观、简洁,具有良好的人机交互性能。
关键字:
数控电流源 SPCE061A 模数转换 数模转换 采样电阻
一、方案论证
根据题目要求,下面对整个系统的方案进行论证。
方案一:
采用开关电源的恒流源
采用开关电源的恒流源电路如图1.1所示。
当电源电压降低或负载电阻Rl降低时,采样电阻RS上的电压也将减少,则SG3524的12、13管脚输出方波的占空比增大,从而BG1导通时间变长,使电压U0回升到原来的稳定值。
BG1关断后,储能元件L1、E2、E3、E4保证负载上的电压不变。
当输入电源电压增大或负载电阻值增大引起U0增大时,原理与前类似,电路通过反馈系统使U0下降到原来的稳定值,从而达到稳定负载电流Il的目的。
图1.1 采用开关电源的恒流源
优点:
开关电源的功率器件工作在开关状态,功率损耗小,效率高。
与之相配套的散热器体积大大减小,同时脉冲变压器体积比工频变压器小了很多。
因此采用开关电源的恒流源具有效率高、体积小、重量轻等优点。
缺点:
开关电源的控制电路结构复杂,输出纹波较大,在有限的时间内实现比较困难。
方案二:
采用集成稳压器构成的开关恒流源
系统电路构成如图1.2所示。
MC7805为三端固定式集成稳压器,调节
,可以改变电流的大小,其输出电流为:
,式中
为MC7805的静态电流,小于10mA。
当
较小即输出电流较大时,可以忽略
,当负载电阻
变化时,MC7805改变自身压差来维持通过负载的电流不变。
图1.2 采用集成稳压器件的恒流源电路
优点:
该方案结构简单,可靠性高
缺点:
无法实现数控。
方案三:
单片机控制电流源
该方案恒流源电路由N沟道的MOSFET、高精度运算放大器、采样电阻等组成,其电路原理图如图1.3所示。
利用功率MOSFET的恒流特性,再加上电流反馈电路,使得该电路的精度很高。
图1.3 恒流源电路
该电流源电路可以结合单片机构成数控电流源。
通过键盘预置电流值,单片机输出相应的数字信号给D/A转换器,D/A转换器输出的模拟信号送到运算放大器,控制主电路电流大小。
实际输出的电流再通过采样电阻采样变成电压信号,A/D转换后将信号反馈到单片机中。
单片机将反馈信号与预置值比较,根据两者间的差值调整输出信号大小。
这样就形成了反馈调节,提高输出电流的精度。
本方案可实现题目要求,当负载在一定范围内变化时具有良好的稳定性,而且精度较高。
基于上述方案比较和题目的要求,采用了方案三。
二、详细软硬件设计
根据题目要求和上述论证,确定的系统框图如图2.1。
图2.1 系统框图
硬件连接图如图2.2,本系统中SPCE061A的IOA8~15,IOB12~15为复用端口。
图2.2 系统硬件连接图
1、硬件设计
<1)单片机控制电路
本系统采用SPCE061A单片机作为控制核心。
SPCE061A是16位单片机,指令周期短,工作速率快,功耗低,具有丰富的片上资源,集成了可编程音频处理电路,可以在线下载,易于调试。
尤其是其语音播放功能对增加语音报警功能提供了很大的方便。
<2)A/D,D/A接口设计
根据题目要求,数控直流恒流源的精度为1mA,所以至少需要11位的A/D转换器和D/A转换器。
A/D转换采用BB公司的ADS7816构成的转换电路,如图2.3。
ADS7816是12位串行模/数转换器,采样频率高达200kHz,转换所需时间短,转换精度高。
ADS7816转换器将采样电阻上的电压转换成数字信号反馈给单片机,单片机将此反馈信号与预置值比较,根据两者间的差值调整输出信号大小。
这样就形成了反馈调节,提高输出电流的精度。
同时,A/D采样回来的电流经过单片机处理传送到LCD,可以显示当前的实际电流值。
图2.3 A/D接口电路
D/A转换采用12位DAC7625P构成的转换电路,如图2.4。
DAC7625P具有较高的精度。
D/A转换电路主要负责把单片机输出的控制信号送给高精度运算放大器,控制电流源输出电流大小。
图2.4 D/A接口电路
设D/A转换器的参考电压为
,键盘输入数字量为D,D/A转换输出的模拟电压
=
。
选择参考电压
=2.5V,采样电阻
1.2207
。
当输入数字量加1,模拟增加量
△V=
V=0.61mV
则输出电流变化
=0.5mA
即D/A转换器数字输入量每增加数值1,恒流源输出电流增加0.5mA。
因此为实现步进功能,每按一次步进"+"键,单片机送给D/A转换器的输入数字量D加2,从而输出电流加1mA,实现了电流步进1mA的要求。
步进减1mA同理。
当键盘设置输出电流大小为I时,单片机送给D/A转换器的数字量为2×I,使得电流源电路输出电流为I。
然而这只是理想情况,实际电路因为种种原因,实际输出电流不会完全等于理论计算值,此时电流反馈控制起了关键作用。
单片机通过分析A/D转换的数值,得到电路实际输出的电流大小,对D/A转换器的给定数字量进行调整,使得输出电流大小更精确。
<3)恒流源电路
恒流源电路是系统的重要组成部分,其电路原理图如图2.5所示。
主要由高精度运算放大器,MOSFET,采样电阻等组成。
图2.5 恒流源电路
根据运放特性可得:
MOSFET的电流
D/A转换器输出的控制电压加在运算放大器正输入端,控制负载中流过的电流。
采样电阻选用康铜丝,以减少因温度变化而引起的采样电阻阻值的变化。
采样电阻将输出电流转换为电压信号,供A/D转换用。
设计中A/D、D/A转换器的参考电压都为2.5V,电路中流过的电流最大值为2000mA,因此正常情况下电阻阻值应为2500mV/2000mA=1.25
。
考虑到系统的步进功能,当D/A转换的数字输入加1时,其模拟输出增加量
△V=
,与此同时采样电阻上的电压也相应增加相同的数值,令其输出电流增加0.5mA,则计算得采样电阻阻值为:
运算放大器的输出控制着MOSFET的VGS,因此运算放大器输出的稳定性将直接决定系统输出电流的稳定性;同时,运算放大器还决定着系统输出电流的精度。
为了满足系统的精度及纹波要求,选用精密运算放大器OP07C。
<4)键盘及LCD显示电路
系统中采用普通的4×4键盘实现电流的设计和调节。
4×4键盘原理图如图2.6所示。
键盘包括下列功能:
S1:
程序复位;S2:
液晶复位;Set:
设定;0~9预置输入;"+":
电流上调;"-":
电流下调;Enter:
确认。
从0~9预置键中输入预置电流值,确认后便可通过液晶显示出预置电流值。
上调键"+"和下调键"-"分别用来控制电流以步进1mA增减,电流变化通过液晶显示出来。
图2.6 4×4键盘原理图
液晶显示器选用凌阳公司的SPLC501液晶模组,SPLC501是128×64的点阵LCD,其内部自带驱动电路,外围电路非常简单,因为凌阳公司提供了驱动程序,使得编程也相当简单。
在本设计中用它来显示电流的给定值、实际测量值以及系统工作状态。
LCD的接口电路如图2.7所示。
图2.7 液晶接口电路
<5)系统电源
因为系统对电流的精度及纹波要求较高,而系统电源的精度及稳定度在很大程度上决定了系统的性能,因此系统电源的设计是整个系统中的重要部分。
为了防止恒流源电路中的较大电流对控制部分产生干扰,将控制部分的电源和恒流源电路电源分成独立的两部分,分别由两组变压器供电,电路如图2.8所示。
图2.8 自制电源原理图
控制部分:
220V电压经变压器输出两组独立的交流10V电源和一个交流15V电源。
其中一路交流10V电源经整流、滤波、7805稳压后输出+5V电压,给CPU和LCD供电;第二路交流10V电源经整流、滤波、7805稳压后输出-5V<正端接地)电压为运算放大器提供负工作电源。
交流15V输出电压经整流、滤波、7812稳压输出+12V电压,为运算放大器提供正工作电源,同时此+12V电源经过参考电源芯片MC1403,输出+2.5V电压做为A/D,D/A的参考电压。
恒流源电路电源:
220V电源经变压器降压输出交流19V电压,再经过整流、滤波、78H15稳压后输出+15V电压,直接作为恒流源电路电源。
2.软件设计
软件系统的任务主要有A/D转换、D/A转换、步进加减、键盘扫描、液晶显示、语音报警等功能。
为了将所有任务有序的组织起来,软件系统采用前后台结构。
SPCE061A单片机拥有独立的时基发生器,无需占用定时器。
系统设置了一个1024Hz的时基中断,为整个系统提供一个统一的运行节拍,保证了各个任务能有条不紊的工作。
对时间没有实时要求的任务如键盘扫描、液晶显示,放在主循环中。
A/D,D/A转换任务需要定周期运行,放在时基中断服务子程序中运行。
有效的保证了重要任务能及时被执行。
<1)主程序
系统加电后,主程序首先完成系统初始化,其中包括I/O口,中断系统,定时器/计数器等工作状态的设置,系统变量赋初值等工作;完成系统初始化后打开中断;随之进入键盘扫描程序。
键盘扫描获取键值后根据键值,完成设定预置电流值,步进加减,并通过LCD显示输出电流值及系统是否正常工作信号。
主程序流程图如图2.9所示。
图2.9 主程序流程图
<2)时基中断服务子程序
时基中断服务子程序流程图如图2.10所示。
在此中断服务程序中控制进行A/D和D/A转换
图2.10 时基中断服务子程序
<3)A/D转换程序
A/D转换器ADS7816的接口形式为位串行接口,因此在对ADS7816进行操作时需要考虑到时序问题,ADS7816的控制流程图如图2.11所示。
图2.11 A/D转换程序
3、系统的保护及其抗干扰设计
<1)系统的保护
当系统工作不正常导致输出电流过大时,若无保护功能,将造成严重后果。
因此,在硬件方面,选取带有过流、过热、短路保护功能的集成线性稳压电路LM78H15K;在软件方面,当键盘设定电流超过2018mA或者A/D转换器采样得到的电流值超过2000mA时,控制系统输出的控制信号会切换为0,则主电路输出的电流也相应为0,同时液晶显示"系统工作不正常"。
这样系统得到双重保护,能确保其工作安全可靠。
<2)系统抗干扰设计
系统工作于较强的电磁辐射环境中,容易受到各种干扰的影响。
轻则使电流输出不稳定,纹波电流增加,严重时会导致整个系统工作不正常。
因此,本系统从硬件和软件两方面采取抗干扰的措施,以保证系统的可靠运行。
a、硬件抗干扰设计
主电路和控制电路的电源由两个独立的变压器供电,消除了主电路对控制电路的电源干扰。
在220V电源进线端设置电源滤波器,消除电网上的各类高频干扰,防止电网电压突变对系统造成冲击。
在运算放大器的输入端加设滤波电容,对抑制纹波电流起到至关重要的作用。
合理布置接地系统中的数字地与模拟地,避免了数字信号对模拟信号的干扰。
b、软件抗干扰设计
系统中采用看门狗技术,若程序出现死循环或者跑飞现象,凌阳单片机内部的看门狗将使单片机复位,将单片机重新拉回有序的工作状态。
对A/D的转换结果采用数字滤波技术,保证控制系统的稳定。
三、测试说明
1、测试仪器
本系统的测试仪器见表3.1。
表3.1 测试仪器
序号
名称
型号
数量
1
4
位数字万用表
DT9203A
1
2
低频毫伏表
XSD-1
1
3
滑线变阻器
BX7-24
1
2、测试电路与测试方法
测试电路如图3.1。
图3.1 测试电路示意图
测试方法:
采用4位数字万用表的电流档测试输出电流IL,用低频毫伏表测负载RL两端的电压值VL。
负载采用滑线变阻器。
3、测试数据及结果分析
<1)输出电流范围:
10mA~2000mA,达到发挥部分要求。
<2)输出电流与给定值偏差
测试数据如表3.2。
表3.2 输出电流与给定值偏差测试数据
序号
1
2
3
4
5
6
7
8
9
给定电流Id(mA>
10
20
200
600
800
1300
1500
1700
2000
显示电流(mA>
10
20
199
598
797
1303
1502
1704
2004
输出电流IL(mA>
11
21
199
597
797
1303
1502
1704
2005
|Id-IL|(mA>
1
1
1
2
3
3
2
4
5
Id×0.1%+3(mA>
3.01
3.02
3.2
3.6
3.8
4.3
4.5
4.7
5
Id×1%+10(mA>
10.01
10.02
12
16
18
23
25
27
30
图3.2 绝对误差比较图
测试结果分析:
如图3.2,实测绝对误差曲线在发挥要求的曲线下方。
输出电流满足发挥部分的误差精度要求。
同时,电流值小时,输出电流更接近给定电流。
电流值较大时,因为系统散热性能不够优良导致恒流源电源性能下降,引起误差增大。
误差存在的原因主要是采样电阻制作误差,同时系统工作时采样电阻发热,阻值变化引起误差。
但总的看来,该电流源有较好的精度特性。
<3)步进电流
设定电流500mA,测得步进电流数据如表3.3和表3.4。
表3.3 步进电流数据一
第n次按“+”
1
2
3
4
5
6
7
8
输出电流IL(mA>
502
504
506
508
510
512
514
516
In+1-In(mA>
\
2
2
2
2
2
2
2
表3.4 步进电流数据二
第n次按“-”
1
2
3
4
5
6
7
8
输出电流IL(mA>
498
496
494
492
490
488
486
484
In+1-In(mA>
\
-2
-2
-2
-2
-2
-2
-2
测试结果分析:
可实现步进2mA,满足≤10mA的基本要求。
<4)改变负载电阻,输出电压在10V以内变化时,输出电流值的情况。
a、给定电流Id=200mA时,
Id×0.1%+1mA=1.2(mA>
Id×1%+10mA=12(mA>
表3.5 给定电流200mA时输出电流数据
负载电压VL1.31
2.47
3.56
5.1
6.33
7.78
9.57
输出电流IL(mA>
200
201
200
200
199
200
200
|IL-Id|(mA>
0
1
0
0
1
1
0
图3.3 200mA恒流特性图
b、给定电流Id=1000mA时,
Id×0.1%+1mA=2(mA>
Id×1%+10mA=20(mA>
表3.6 给定电流1000mA时输出电流数据
负载电压VL1.33
2.74
4.1
5.65
6.67
8.11
9.63
输出电流IL(mA>
995
1006
992
990
990
988
985
|IL-Id|(mA>
5
6
8
10
10
12
15
图3.4 1000mA恒流特性图
c、 给定电流Id=1800mA时,
Id×0.1%+1mA=2.8(mA>
Id×1%+10mA=28(mA>
表3.7 给定电流1800mA时输出电流数据
负载电压VL0.94
2.13
3.85
5.11
6.51
7.65
9.1
输出电流IL(mA>
1808
1795
1790
1785
1785
1780
1780
|IL-Id|(mA>
8
5
10
15
15
20
20
图3.5 1800mA恒流特性图
测试结果分析:
如图3.5,负载电压变化,给定电流在200mA时,满足发挥部分要求,恒流特性较理想。
给定电流在1000mA及1800mA时,输出电流变化绝对值较大,恒流特性变差,主要因为采样电阻不够精确引起,但仍可满足基本部分要求。
<5)纹波电流
取负载电阻RL=9.82Ω,纹波电流=纹波电压/负载电阻。
测试数据如表3.8。
表3.8 纹波电流测试数据
给定电流Id(mA>
100
200
300
500
1000
1500
1800
2000
纹波电压(mV>
1.0
1.2
1.3
1.5
1.6
1.8
1.8
1.9
纹波电流(mA>
0.1
0.12
0.13
0.15
0.16
0.18
0.18
0.19
图3.6 纹波特性图
测试结果分析:
如图3.6,系统设计过程中,主电路和控制电路独立供电,自制电源进行了稳压处理,同时进行了高频滤波,因此系统的纹波特性较理想。
四、结论
本系统以16位SPCE061A单片机控制与调整主电路的输出电流,并通过液晶显示电流值,完成了数控恒流源的制作。
实现了输出电流可调,步进加,减功能。
除很好地满足了基本要求和较好地完成了发挥部分的要求外,电源滤波器的加入,有效地滤去了电网的高次谐波,保证了恒流源输出较小的纹波。
难点分析:
在恒流源的设计与制作过程中,本方案遇到的主要难点在于如何减少纹波,通过仔细研究与分析,确定要使纹波尽可能小,需要运算放大器的电源和输入端信号要稳定,因此对运算放大器我们采用独立电源供电,保证了放大器有稳定电源电压,进而使输出较小的纹波电流成为可能。
然而,当将控制电路与主电路结合在一起时,输出纹波电流的增大又成为一大问题。
这是因为控制电路的输出有纹波,加到运算放大器的输入端将纹波放大,导致输出电流纹波加剧,为解决这一问题,我们在运放输入端并联电容,以达到滤波的目的,从而较好的解决纹波问题。
除了上述功能外,我们还考虑了其他功能,如语音报警,过载保护,开路保护,以及散热性能的加强,因为时间与资源的限制没有实现,另外,有些功能的实现方式还有待于进一步优化。
相关源代码下载:
见下载那