以下是我2012年比赛获奖的作品,时间仓促,做得不太好,还是发出来让大家参考。
作品名称:简易电子直流负载
摘要
本设计作品主要由恒流电路模块、电压电流检测模块、控制器和人机交互模块组成。通过MSP430单片机实现电流预设,实时显示电子负载的实际电流值、电压值以及负载调整率,另外可以实现步进控制输出恒流值以及两档位步进值切换功能。
本设计通过TLV5616的D/A转换将用户的预设电流值作为恒流电路的给定,从而控制恒流输出。单片机通过采用ADS1115数模芯片完成对精密电阻上电压、被测电压源输出电压、电子负载输出电压的实时监控,进行闭环控制,从而实现了对实际电流与电压值实时显示以及负载调整率的计算并显示。通过测试,本设计出色地完成了基本要求与发挥部分。并且还加入了恒流电子负载的步进增减以及两档位的粗调与细调。
基于手动调节的直流电子负载的原理图如图1所示:
图1
本方案实现对电子负载恒流源的控制是依靠对电阻的手动调节来实现的。优点是不需要用单片机,因为单片机实现对电阻的调节较为复杂。但为了要实现足够高的精度,本方案必将采取很多的精密仪器件,而精密仪器价格昂贵、数量稀少、不易采购。开环的控制方式不利于精度的调节和操作的简化。而且系统的拓展性也较差。
基于单片机的恒流电路分离的电子负载原理图如图2所示:
图2
本方案采用单片机控制整个系统,操作简单,但是电路中的恒流部分相对 独立,技术含量较低,电路元器件的利用率低下。
基于单片机的数控直流电子负载的原理图如图3所示:
图3
此方案采用MSP430单片机。操作时只需要通过程序就能实现恒流值的调节、端口电压的采集及显示、恒流模式下电子负载的接入与断开等核心功能。较好的解决了方案一因手动操作所引出的一系列弊端。方案中所采用的元器件型号比较常见且价格适中,在元件运用方面远远优于上述方案。此方案采用16位A/D、D/A芯片,精度的理论值已经优于了题目要求。该方案的操作方法以及整体构架简易明了。电路中含有的运算放大器具有很大的电源电压抑制化,可以大大减小输出端的纹波电压。A/D对实际电压电流的反馈有利于单片机智能的对输出值进行修正,这是方案一所不具备的。总之,智能化的可编程器件的充分利用式的整个系统可编程、可扩展,系统的灵活性大大增加。
经过以上方案论证,选择方案三。本设计作品主要由恒流电路模块、电压电流检测模块、、控制器和人机交互模块组成。通过MSP430单片机实现电流预设,实时显示电子负载的实际电流值、电压值以及负载调整率,另外可以实现步进控制输出恒流值以及两档位步进值切换功能。
方案一:采用开关电源构成恒流源电路。
当给定电压发生改变时,PWM控制器也同时改变开关器件的占空比,从而调整输出电压,最终获得输出电流的恒定。但开关电源电压纹波和干扰比较大,控制电路复杂,很难制作出低纹波,高精度,线性度很好的恒流源。
例如采用TI公司的PWM产生芯片SG3525,配以MOS管驱动芯片IR2104,以及低导通电阻NMOS管IRF3205构成恒流源。TL494内部集成两个误差放大器,通过反馈对PWM信号的占空比进行调节,从而精确地调整输出电流,便于控制。但是此方案的直流纹波和干扰较大,很难完成题目的发挥部分。
采用TI公司的电源管理芯片TPS5430。该芯片固定为500KHz开关频率,效率优于方案一,可以高达95%。由于内部集成110mΩ的MOS开关管,因而外围只需要较少的元件即可搭建。通过改变TPS5430的电压可以实现数控。但是在数控时,该芯片产生纹波较大,不能很好地完成题目的发挥部分。
方案二:采用集成运放构成的线性恒流源。
电路工作在电流负反馈状态,输出电流直接由功率MOS管流出,在保证功率MOS管在线性导通的状态下,能够输出比较大的电流。而且此电路线性度比较好,电路结构简单,容易控制,输出电流纹波比较小,电流输出范围比较大。
综上所述,本模块采用方案二,选择集成运放构成的线性恒流源电路,此电路能通过的电流比较大,完全可以满足题目的指标,而且线性度比较好,容易控制。
该模块我们需要通过采样来获得电压电流。我们有以下几种方案用来采样。
方案一:采用ADS1115模数转换芯片完成采样。ADS1115是超小型、低功耗、16位模数转换芯片,它有四个单端或两个差分输入,可编程满量程输出电压,I2C总线通信。本方案精度可以达到题目要求,但控制较为复杂。
方案二:采用MSP430F169单片机内部提供的ADC10模块完成。它是一个逐次逼进型高性能的10位模数转换器,可以选择内部基准,或者外部参考电压。本方案不会占用过多IO口资源,并且在ADC内核转换时,可以关闭CPU进入低功耗模式,因而比较节省能源。然后10位的AD不能完成题目的发挥部分,
综上所述:由于要实现发挥部分的功能,决定采用方案一。
方案一:采用51单片机
51单片机具有完成许多复杂的控制盒数据处理等强大的功能,但是速度慢,内部资源少。
方案二:采用CPLD或FPGA作为主控制器控制
CPLD或者FPGA作为主控制器在本设计中不合适,因为他的逻辑电路非常复杂,灵活度低,时序控制困难。而我们要求得到的是实现电流信号的精确输出,而不是逻辑控制,因此本方案不适合。
方案三:采用MSP430F169单片机
由TI公司生产的MSP430F169具有低价、超低功耗的功能。内含看门狗、定时器A、比较器A、10位ADC以及串行通信模块。资源丰富而且价格低廉且能够很好的实现本设计的要求。
综上所述:本设计选用方案三。
电子负载模块是本设计的重要环节,通过该环节将实现恒流模式下的数据指标。因此,设计了具有特色的电子负载模块。
恒流源电路主要由各种高精度仪表和低噪声运算放大器,MOSFET,采样电阻等组成。D/A转换器输出的控制电压加在运算放大器正输入端,控制负载中流过的电流。采样电阻选用康铜丝,以减少因温度变化而引起的采样电阻阻值的变化。采样电阻将输出电流转换为电压信号,供A/D转换用。
恒流模式下要求可设定电流范围0.1~1A,步进0.01A,电流误差≤±0.01A。D/A的模拟输出电压要由电流范围、采样电阻共同确定。本电路的采样电阻阻值为0.05欧,因此采样电阻的电压范围为0.050.1~0.051,即0.005~0.05V,过小的电流是无法由D/A直接提供的,因此需要仪表运放的帮助。现在仪表运放中放大25倍,然后在运放作用下放大2倍。分析这个放大倍数为50倍的运放后,可得提供给U2的电压为0.25—2.5V。要求以0.01A电流步进,即0.1A后下一个恒流值为0.11A,采样电阻的电压为0.110.05=0.0055V,则运放U2的接入电压为0.275V,所以最小精度为0.001V。由于12位D/A的精度为0.001V,达到了题目的要求。
由于回路中会有大电流通过,因此功率问题也要考虑。针对这个问题,本设计选用了耗散功率较大的场效应管IRF3205,它能能承受大电流的康铜丝,保证了器件的安全。
反馈放大网络运放选择仪表运算放大器INA128和双运放OPA2227。考虑到题目要求的最大电流为1A,最大功耗为18W,因此选取最大可过电流110A,耗散功率可高达200W的IRF3205。为了实现反馈电压和给定电压的匹配,采用高精度、低偏移芯片INA282实现一级运放,为实现无静差,再加一级PI调节,使整个电路更加稳定,电流更加精确。
运算放大器的输出控制着MOSFET的VGS,因此运算放大器输出的稳定性将直接决定系统输出电流的稳定性;同时,运算放大器还决定着系统输出电流的精度。为了满足系统的精度及纹波要求,选用精密运算放大器OP37。
根据分析,选取了串联精密电阻之间(设为A点)作为输出端电压的采样点,选取了采样电阻反馈放大到OP37负输入端(设为B点)作为输出端电流的采样点。本设计选用了 AD1115 作为A/D。采样之后的数据需要进行软件处理之后才会得到所求得的数据。对于A点来讲,采样电压需要经过串联分压的运算才会得到实际端电压,而对于B点来讲,采样电压需要除以50得到采样电阻实际的端电压,再除以采样电阻值才能得到实际端电流。电压首先通过仪表放大器,放大25倍,然后用高精度、低噪声的双运放OPA2227一级设计成两级同相放大,总共可以放大50倍。第二级设计出电压跟随器,然后用16位AD转换器采集电压跟随器输出的电压来实现电流到电压的转换。
AD的分辨率公式,其中U代满量程:
u = U/(2^16-1) ( 公式一)
题目要求电压测量精度为±(0.02%+0.02%FS ),分辨力为1mV,要求电流测量精度为±(0.1%+0.1%FS),分辨力为1mA。由题意分析知道,电压的满量程为18V,电流的满量程为1000mA。因而得知电压测量精度要求为
±0.02%*18V=+-3.6mV,电流测量精度要求为±0.1%*1000mA=+-1mA。通过编程设定ADS1115满量程输出为+-6.144V.因此AD的分辨率为:
6.144/(65536-1)=0.0937mV
由硬件电路设计知电压采样值是输出电压的1/5,因而输出电压的1mV所对应的采样电压约为0.2mV>0.0.0937mV,对采集的输出电压信号来说,采用16位AD转换器是足以满足要求的。
由硬件电路设计知康铜丝电阻为50mΩ,电流检测模块将康铜丝上的电压放大了50倍。对于1mA的电流,对应的采样电压为
0.05*1mA*25*2>0.0937mV
对采集的电流信号来说,采用16为AD转换器也可以满足要求。
直流稳压电源负载调整率是指电源输出电流从零至额定值变化时引起的输出电压变化率。这里设定额定电流值为1A。对实际直流稳压负载调整率进行调测使恒流(CC)工作为开路状态,即基本要求中输出电流为零的状态。然后经过A/D采样,得到电子负载的输出电压V0,然后调整电流输出为额定值1A,通过ADS1115采样,得到电子负载的输出电压值V1。再由调整率的公式得到电源负载调整率:
u=(V0-V1)/V0 ( 公式二)
恒流负载电路采用集成运算放大器和功率MOS管构成的线性恒流电路,该电路工作在电流负反馈状态,功率MOS管工作在线性区,当电流过大,反馈电压大于给定电压时,运放输出电压减小,使得MOS管截止,从而使得电流逐渐减小,当减小到反馈电压小于给定电压时,运放输出电压增大,又使得MOS管导通,最终反馈电压和给定电压相等时,实现电流的恒定。电路原理图如图4所示。
为实现电流的精度,运放采用低噪声和低温漂分别为80nVp-p和20nV/℃的精密运放op37,采样电阻选用温漂很小的规格为0.9欧/米的康铜丝,选取阻值为0.05欧。考虑到题目要求的最大电流为1A,最大功耗为18W,因此选取最大可过电流110A,耗散功率可高达200W的IRF3205。反馈放大网络由高精度仪表放大器INA128和高精度低噪声运算放大器实现。为达到无静差,再加一级PI调节,使整个电路更加稳定,电流更加精确。
图4 采用集成运算放大器构成的线性恒流源
AD检测电子负载的输出电压。当大于阈值时,由单片机控制DA输出,从而实现过压保护功能。
电压电流检测电路由2个集成运算放大器构成。低功耗、高精度仪表放大器INA128构成仪表放大电路,实现25倍放大;为实现进一步放大,后面电路采用高精度、低噪声的双运放OPA2227,前一级设计成同相放大电路,第二级设计成电压跟随器,实现电流电压转化。电路原理图如图5所示
图5 采用集成运算放大器构成的电压电流检测电路
单片机是数控电子负载的核心部件,它既协调整机工作,又是数据处理器。本系统采用MSP430F169单片机为核心,配以矩阵键盘,12864液晶显示屏构成友好界面。单片机通过A/D,D/A等器件对模拟信号进行信号的采集、处理和输出,从而对输出电流值进行控制校正,达到较高精度。同时,单片机的接口全部进行扩展,使系统应用更加灵活。
本次软件设计总体流程是先初始化各个单元,然后通过键盘扫描检测到各个子模块,然后得到各个子模块下测量的数据,输入到D/A,然后再从D/A中取数据,再由A/D采集,然后在判断数据是否安全,如果安全相应的输出检测数据同时兼顾等待键盘输入,若状态不安全则相应的进行保护处理。
本设计采用模块化的编程思想,将整个程序分成了若干子程序,可以方便程序的编写和调试,也容易找出程序中的问题。
子程序如下:
(1)液晶显示子程序:设定输出值及实际端电流。
(2)键盘处理子程序:输出值的设定及步进。
(3)数据处理子程序:根据设定值换算出调整值,写入D/A的值,根据A/D采样的数据换算出实际端电压电流值。
实现的功能是:
(1)采样输出电流、电压并在LCD上显示。单片机通过16位A/D对等效负载的电压和电流进行采样,经采**的数值在单片机内部进行处理后送到液晶显示屏进行电压、电流的显示。
(2)任意设定电流的参数和改变电流步进值。通过矩阵键盘设定预设值送给单片机,单片机通过内部自带D/A将数字量转成相应的模拟量输出,当电压大于3.6V的时候,单片机会启动过压提示,这时候过压保护电路将发生作用。
在电路各个模块完整的制作完成后,首先要做的是再次检查硬件电路是否有错误,如虚焊,连线错误等。如果并无此方面的问题,则在不加测试电源的情况下,对各个模块的主要部件进行测试,如单片机对D/A的控制是否正常,运算放大器是否按照制定的放大倍数或要求进行工作,康铜丝的采样点电压接入运放后是否能够按照要求进行放大,采样模块的A/D是否能够正常的进行工作,显示模块是否能够正常显示等。当通过上面的测试后,则可以接入电源。但是在接入之前,切记要先用单片机设定好工作模式。当电源在初次接入时,其电压值应该设为0V开始进行调节,与此同时,还要考虑到串联限流电阻,为了确保电路的安全,初次接入时应先选取8欧进行测试。在测试过程中,尽量保证电源电压与D/A输出模拟电压向接近,避免两者偏差过大。当测试过程中出现异常情况时,切记先关闭电源开关。
对电流电压采样模块的检测:首先应该控制单片机使得恒定值为要求最低值,即0.1A。要对数据进行记录。记录的规则是:从恒流要求的最低电流0.1A开始,每隔100mA取一个测试点,直到1A。之后在每个测试点进行扩展,如0.01A的扩展,0.11A、0.12A、0.13A,以此类推。电压检测时,当由单片机设置一个电流时,设置不同电源电压,可以实时采样负载电压;每个取样值中,记录端口实际输出值和A/D采样返回并显示在液晶上面的显示值。
电源,4位半数字万用表
由实际测试结果分析,本系统较好的完成了基本部分和发挥部分。
恒流(CC)工作模式的电流设置范围为100mA~1000mA ,设置分辨率为10mA,设置精度为±1%。还要求CC工作模式具有开路设置,相当于设置的电流值为零。
在恒流(CC)工作模式下,当电子负载两端电压变化10V时,要求输出电流变化的绝对值小于变化前电流值的1%。
因此本方案较好完成了题目的基本要求以及发挥部分。
测试仪器:数字万用表
数据记录(室温)
序号 |
1 |
2 |
3 |
4 |
5 |
6 |
给定电流(mA) |
100 |
200 |
300 |
400 |
500 |
600 |
实测电压 (V) |
1.872 |
2.130 |
3.511 |
4.067 |
5.232 |
6.434 |
显示电压 (V) |
1,871 |
2.132 |
3.510 |
4.067 |
5.233 |
6.434 |
电压误差 (V) |
0.001 |
0.002 |
0.001 |
0 |
0.001 |
0 |
显示误差 |
0.2% |
0.17% |
0.15% |
0 |
0.12% |
0 |
达标情况分析:由上面六组数据可知,电压测量误差在0.001mV到0.002mV之间,显示电压在10V以下,显示误差最大不超过0.2%。
测试仪器:数字万用表
数据记录(室温)
序号 |
1 |
2 |
3 |
4 |
5 |
6 |
给定电流(mA) |
100 |
110 |
120 |
400 |
500 |
0 |
实测电流(mA) |
99.92 |
110.6 |
120.4 |
399.8 |
499.2 |
0.001 |
显示电流(mA) |
99.89 |
110.5 |
120.2 |
399.8 |
499.4 |
0.001 |
电流误差(mA) |
0.07 |
0.6 |
0.4 |
0.2 |
0.8 |
0.001 |
显示误差 |
0.03% |
0.05% |
0.07% |
0 |
0.04% |
0 |
达标情况分析:由上面测量数据可知,电流误差最高时0.8%,达到发挥部分指标要求的0.1%以内;然后设置精度也在1%以内,同时,当系统开路时,即设置输出电流为0mA时,输出电流接近0mA,具备开路设置功能。
这一部分功能由软件方面实现 ,当输入电压超过18V时,利用DA输出电压使MOS管截止,输出电流为0。
6 总 结
本次设计,我们实现了相应的恒流模式,且在这个模式下,可以设置的量程范围满足题目所需要的要求,而且通过分析设定和实际输出,进一步进行数据处理和误差分析,可以得到相应的输出误差已经达到试题要求,相应的数控显示也满足了显示分辨率和显示精度的要求。因而全部实现了试题的基本要求。而在发挥部分上,我们进一步实现了提高了测量精度。在此基础上,我们还实现了输出设置和参数测定的数字化,即数字设定相应输出值和液晶显示相应参数值。但是由于时间的限制,本设计的输出还有待进一步的提高,人机交互部分有待进一步优化,而这些,可以通过相应的程序优化得以实现。硬件方面,可以相应的更改更好的器件达到更为精确的目的。
作品本来还有照片的,可惜字数限制,也不是特别好看就不放上来了。欢迎大家批评,这个东西一定还有许多值得改进的地方的。
用户1757919 2014-5-12 11:51
用户420773 2013-6-7 21:19
345002072_353389109 2013-2-21 10:29
用户419593 2013-1-30 12:30
用户987943 2013-1-26 14:03
用户1626813 2013-1-24 12:28