系统框图
图1为系统的总体框图。本系统通过小键盘和LCD实现人机交流,小键盘负责接收要实现的电流值,LCD 12864负责显示。AVR单片机根据输入的电流值产生对应的PWM波,经过滤波和功放电路后对压控恒流元件进行控制,产生电流,电流再经过采样电阻到达负载。同时,对采样电阻两端信号进行差分和放大,送入ADC。单片机根据采集到的值调整PWM输出,从而调整了输出电流。如此反复,直到电流达到设定要求。
图1 数控恒流源系统框图
1 人机接口模块
本模块包括小键盘电路和液晶显示电路。键盘设计为3×4键盘,由数字键0~9,功能键“删除”及“确认”组成,采用反转法实现键值识别。显示电路由带中文字库的LCD 12864构成,该液晶可以每行8个汉字显示4行。由于这部分电路比较简单,在此不详述。
2 核心控制模块
系统的核心控制模块为AVR单片机(ATMEGA 16L)。主要使用了AVR的PWM功能和A/D功能。
AVR单片机片内有一个具有16位PWM功能的定时/计数器。在普通模式下,计数器不停地累加,计到最大值(TOP=0xffff)后溢出,返回到最小值0x0000重新开始。当启用PWM功能即在单片机的快速PWM模式下,通过调整OCR1A的值可实现输出PWM波的占空比变化。产生PWM波形的机理是:PWM引脚电平在发生匹配时(匹配值为0~0xffff之间的值,如图2中的C),以及在计数器清零(从MAX变为BOTTOM)的那一个定时器时钟周期内发生跳变,具体实现过程如图2所示。
图2 PWM波产生过程
(1)
单片机内部有1个10位的逐次逼近型ADC,当使用片内VCC作为参考电压Vref,其分辨率为:
(2)
当系统需要更高的分辨率时,可以通过软件补偿的方法来实现。具体实现方法可参考相关资料。
3 滤波和功放模块
图3 二阶RC低通滤波电路
二阶RC低通无源滤波器的系统函数为:
(3)
由于无源滤波器的负载能力差,信号经过二阶无源滤波网络后衰减比较厉害,需要增加一级功率放大电路。功放电路比较简单,也有经典电路,限于篇幅不再赘述。
4 恒流源模块
恒流源采用的是压控恒流元件IRF540,它的VGS为20V,ID为33A。截止时,最大漏电流为1μA,导通电阻仅有0.04Ω,图4为IRF540的特性曲线。
图4 IRF540特性曲线
图5 横流电路
软件设计
由图6可知,整个系统是一个动态的闭环系统。由于PWM初始匹配值设置的大小不同,电流值在开始时可能会跟设定值有较大偏差。随着闭环系统的自我调整,逐渐使输出稳定在设定值上下。系统达到稳定状态的时间以及稳定后电流值波动的幅度,可根据设计要求由软件来调整。