基于凌阳单片机的数控直流电流源的设计与实现

最新更新时间:2010-08-03来源: 嵌入式公社关键字:SPCE061A  电压-电流转换  D/A转换 手机看文章 扫描二维码
随时随地手机看文章

  在电子设备中经常用到稳定性好、精度高、输出可预置的直流电流源。本文设计的数控直流电流源能够很好地降低因元器件老化、温漂等原因造成的输出误差,输出电流在20mA~2000mA可调,输出电流可预置、具有“+”、“-”步进调整、输出电流信号可直接显示和语音提示等功能。硬件电路采用凌阳单片机SPCE061A为控制核心,利用闭环控制原理,加上反馈电路,使整个电路构成一个闭环,在软件方面主要利用PID算法来实现对输出电流的精确控制。该系统可靠性高、体积小、操作简单方便、人机界面友好。 

  系统硬件实现方案

  本设计采用单片机作为主要控制部件,通过键盘预置输出电流值并采用液晶模块实时显示。整个系统硬件部分由微控制器、电压-电流转换、键盘、显示、直流稳压电源和语音提示等模块组成。系统组成框图如图1所示。

数控直流电流源的基本模块方框图

图1 数控直流电流源的基本模块方框图

  微控制器是整个系统的核心,负责整个系统的运作。为了实现简化硬件电路、系统性能稳定可靠,便于实现语音播报、键盘设置和信息的实时显示等功能的协调,通过多种方案论证后,微控制器选用凌阳公司的SPCE061A,该单片机内部集成有ADC、DAC、PLL、AGC、DTMF、LCD-Driver等电路(与IC型号有关)。它采用精简指令集(RISC),指令周期均以CPU时钟数为单位。另外,它还兼有DSP功能,内置16位硬件乘法器和加法器,并配备有DSP拥有的特殊指令,大大加速了各种算法的运行速度。同时可以在Windows环境下使用凌阳单片机应用开发工具,该工具支持标准C语言和凌阳单片机汇编语言,集汇编、编程、仿真等功能于一体,大大加快了软件开发过程。用该单片机作为控制器比较合适,在硬件电路简单的前提下,容易实现A/D和D/A转换、语音提示、PID运算等功能。 

  显示模块主要实现的功能是显示设置的电流输出值和其它人机交互信息。本部分可以采用七段数码LED显示器,显示数字、简单字母和小数点等信息,但由于其显示信息单一,人机交互不友好,本文采用字符型液晶显示屏LCDSMC1602A模块。该模块具有轻薄短小、低压微功耗、体积小、无辐射、平面直角显示及影像稳定不闪烁等优点,且可视面积大、面效果好、分辨率高、抗干扰能力强,适合用于显示字母、数字、符号等信息,而且不需要扩展过多外围电路,可由单片机直接进行控制输出显示。

  电压-电流转换模块由精密运放与三个晶体管组成的达林顿管电路构成。转换电路利用晶体管平坦的输出特性和深度负反馈电路使输出电流稳定,如图2所示,此V/I转换电路的带负载能力强,电流输出范围达0"3A。输出电流Io经反馈电阻RF得到一个反馈电压Vf,Vf= V11-V12,通过R5、R6加到运算放大器的两输入端,设运放两端的电为V1、V2,Vi由单片机DAC输出。因为理想运放的输入电流约等于零,且V1=V2,则:

  V12[1-R6/(R2+R6)]+ViR6/(R2+R6)=V11R1(R1+R6)

  由于V12 =V11-Vf,则:

  V11R2/(R2+R6)+(ViR6-VfR2)/(R2+R6)=V11R1/(R1+R5)

  令R1=R2=10kW,R5 =R6 =1kW,则有Vf=ViR6/R2=Vi/10

  若暂不考虑反馈时,Io=Vi/(10Rf)由此可见,输出电流的标定由D/A转换所得输出电压Vi和Rf的阻值决定,成线性变换。Rf由大线径铜丝制作,其温度系数很小(5ppm/℃),大线径可以使其温度影响减至最小。3个三极管应选用大功率管TIP122,且使用散热片,以保证管子工作在线性区。 

V/I转换电路图

图2 V/I转换电路图 

  电压-电流转换模块还有另外一种方案,即采用三个运放构成输出电流可变的电流源,如图3所示。输出电流I=Vi/R1,为使R1两端的电压保持恒定,由差分放大器IC1b通过射随器IC1c监测R1两端的电位,此电位经IC1b的7脚加到比较器 ICa的反相输入端与Vref比较,根据比较结果使比较器的输出端变化,直到平衡为止,即Vr1=Vi。电路中的电容用于补偿ICa的频率,减少控制环路的延时。只要R1=R2=R3=R4=R5,此电路的性能较好,但带负载能力不强,环路延时补偿对电路的稳定有较大影响。 

三运放V/I转换电路

图3 三运放V/I转换电路 

  系统键盘模块可以采用独立式或行列式(矩阵式)连接方式,该模块主要完成对输出电流和其它信息的设定。直流稳压电源模块为整个系统供电,语音模块实现语音提示,使系统设计更具人性化,系统具有友好的工作界面。凌阳单片机内部集成有ADC、DAC、PLL、AGC、DTMF等模块,语音功能可由软件编程实现,不需要外接任何电路,有效利用了系统资源。

  系统工作及软件流程

  通过以上对各模块的分析,系统在工作过程中由SPCE061A单片机将被预置的电流通过换算进行D/A转换,以输出电压驱动V/I转换电路,并将该电流对应的电压通过闭环回路,经信号处理电路作A/D转换后输入单片机系统,通过PID算法调整电流输出。整个系统工作流程如图4所示。 

系统工作流程图

图4 系统工作流程图 

  系统软件设计在凌阳十六单片机应用开发工具unSPIDE1.16.1中进行,采用凌阳单片机汇编语言和标准C语言对单片机进行编程,以实现各种功能。主要包括: (1)系统的初始化,包括各外围接口设备的初始化;(2)键盘输入;(3)D/A、A/D转换; (4)PID算法进行电流调整;(5)语音提示和电流显示。其主程序流程如图5所示。  

主程序流程图图   

图5 主程序流程图图  

  A/D转换部分程序主要用于将采样电阻采集的模拟电压信号转换为数字信号。采样信号由IoA6输入并直接送入缓冲器P_ADC_MUX_Data,在ADC自动方式被启用后,会产生一个启动信号,此时RDY=0,DAC0的电压模拟量与外部的采样模拟量相比较,以尽快找出外部信号模拟量的数字量,A/D转换的结果保存在SAR内。当10位A/D转换完成时,RDY=1,此时,通过读P_ADC_MUX_Data单元,可以获得10位A/D转换的数据。其IRQ1 中断服务程序的流程如图6所示。

IRQ1 中断服务程序的流程图

图6 IRQ1 中断服务程序的流程图 

  PID算法主要用于修正实际输出的电流值和设定值的偏差,调节下一次的输出值,使输出更接近于设定值,提高精度。具体控制过程为:单片机经A/D转换芯片读出实际电流Ik,然后和设定的电流Is比较,得出偏差值Ek=Is-Ik,单片机根据Ek的大小,调用PID公式,计算出本次电流调节的增量ΔIk,然后根据前一次的D/A转换输出电流Iq-1,计算出本次的输出电流Iq。

  离散增量PID的计算公式为

  ΔIk=Kp[(Ek-Ek-1)+K1Ek+KD(Ek-2Ek-1+Ek-2)]

  =Kp(Ek-Ek-1)+K1’Ek+KD’(Ek-2Ek-1+Ek-2)

  式中: K1’= Kp*K1, KD’=Kp * KD,Ek为本次采样的电流误差, Ek-1为上次采样电流误差, Ek-2为再次采样电流误差值。

  结语

  为了测试系统运行的准确性和可靠性,可以对设定量与反馈量进行测试,误差在0.01%之内,并且运行稳定,达到了预期目的,还增添了特色的音频播放设计。凌阳SPCE061A单片机在该系统中使用,使系统功能齐全、外围电路简单、输出精确,软件编程采用C和汇编混合编程来实现,集两种优点于一身,丰富了编程思想,体现了很大的优越性。

关键字:SPCE061A  电压-电流转换  D/A转换 编辑:金海 引用地址:基于凌阳单片机的数控直流电流源的设计与实现

上一篇:开关电源电磁干扰抑制技术的分析研究
下一篇:基于常用直流开关电源的保护电路设计

推荐阅读最新更新时间:2023-10-18 14:58

基于单片机的双积分AD转换设计
0 引言 A/D转换电路是数据采集系统中的重要部分,也是计算机应用系统中一种重要的功能接口。目前市场上有两种常用的A/D转换芯片,一类是逐次逼近式的,如AD1674,其特点是转换速度较高,功率较低。另一类是双积分式的,如 ICL7135 ,其特点是转换精度高、抗干扰能力强。但高位数的A/D转换器价格相对较高。本文介绍的一种基于单片机的高精度、双积分型A/D转换电路,具有电路体积小、成本低、性价比高、结构简单、调试容易和工作可靠等特点,有很好的实际应用价值。 1 双积分式ADC基本原理 双积分式ADC的基本电路如图1所示,运放A 1、R、C用来组成积分器,运放A2作为比较器。电路先对未知的模拟输入电压U1进行固定时间T
[单片机]
基于单片机的双积分<font color='red'>A</font>/<font color='red'>D</font><font color='red'>转换</font>设计
51单片机实验16:A/D模数转换(XPT2046)
关于A/D模数转换以及XPT2046芯片的内容请参考:https://blog.csdn.net/cax1165/article/details/87024388 #include reg52.h #include XPT2046.h sbit LSA=P2^2; sbit LSB=P2^3; sbit LSC=P2^4; uc code x ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uc dig ; void delay(uc x) { uc i,j; for(i=1;i =x;i++) for(j=1;j =110;j++); } v
[单片机]
基于SPCE061A的高精度多通道温度测量系统设计
   0 引 言   温度的测量与控制在工农业生产、日常生活及科学研究中有着广泛的应用。由于常用温度传感器的非线性输出及一致性较差,使温度的测量方法和手段相对较复杂,也给电路的调试增加了难度。为此,设计了以台湾凌阳公司生产的SPCE061A 16位高性能单片机为系统控制核心。采用DALLAS公司的DS18820作为温度传感器的三通道高精度温度测控仪,该测控仪实现了温度数据和日期、时间的显示与保存;可输出显示三组温度和三路控制信号,具有故障和报警状态提示等功能,保证了测试的精度以及系统的可靠性和控制要求。    1 系统硬件设计   多通道智能温度测控仪的硬件电路原理框图如图1所示,测控仪主要由SPCE061A单片
[模拟电子]
A/D转换器原理
A/D转换器原理 A/D转换器是用来通过一定的电路将模拟量转变为数字量。 模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。 A/D转换后,输出的数字信号可以有8位、10位、12位和16位等。 A/D转换器的工作原理 主要介绍以下三种方法: 逐次逼近法 双积分法 电压频率转换法 (1). 逐次逼近法 逐次逼近式A/D是比较常见的一种A/D转换电路,转换的时间为微秒级。 采用逐次逼近法的A/D转换器是由一个比较器、D/A转换器、缓冲寄存器及控制逻
[电源管理]
<font color='red'>A</font>/<font color='red'>D</font><font color='red'>转换</font>器原理
A/D转换器的基本知识
  1.概述   A/D 转换器用以实现模拟量向数字量的转换。 按转换原理可分为 4 种 : 计数式、 双积分式、逐次逼近式以及并行式 A/D 转换器。   逐次逼近式 A/D 转换器是一种速度较快 , 精度较高的转换器 , 其转换时间大约在几微秒到几百微秒之间。   逐次逼近式 A/D 转换器基本原理    2.A/D 转换器的主要技术指标   (1)分辨率   使输出数字量变化一个相邻数码所需输入模拟电压的变化量。常用二进制的位数表示。   例如 :12 位 ADC 的分辨率就是 12 位,一个 10V 满刻度的 12 位 ADC 能分辨   输入电压变化最小是 : 10V 1/21
[单片机]
<font color='red'>A</font>/<font color='red'>D</font><font color='red'>转换</font>器的基本知识
单片机与单总线A/D转换器DS2450的接口设计
DS2450是DALLAS公司生产的单总线四通道逐次逼近式A/D转换器芯片,它的输入电压范围、转换精度位数和报警门限电压均可编程;每个通道均可用各自的存储器来存储电压范围设置、转换结果和门限电压等参数。在普通方式下其串行通信速率为16.3kbps,而超速工作模式时的速率可达 142kbps,片内16位循环冗余校验码生成器可用于检测通信的正确性。DS2450采用8脚SOIC小体积封装。它既可用单5V电源供电,也可采用寄生电源方式供电,芯片正常工作时的功耗仅2.5mW,空闲时的功耗为25μW。多个DS2450或其它功能的具有MicroLAN接口的单总线芯片可以并联,CPU只需一根端口线就能与诸多单总线芯片通信,而且占用微处理器的端口较
[电源管理]
单片机与单总线<font color='red'>A</font>/<font color='red'>D</font><font color='red'>转换</font>器DS2450的接口设计
基于A/D转换最小二乘法的数据采集应用
引言   在工业污水处理过程当中,往往需要监测污水的COD 值,而现场的监测仪器所监测到 的数据是通过各种模拟信号输出,这些模拟信号必须通过A/D 转换器变换为数字信号后才 能送入上位机或外接数据采集器。基于此,本文给出了基于A/D 转换器TLC2543 的软硬件 设计,并结合最小二乘法将输出数据进行修正,达到了环保部分对有机污染物监测数据精度 的要求。    1 系统硬件设计介绍   如图1所示,是系统电路图, A/D转换器采用TLC2543,它是12位串行模数转换器,使用 开关电容逐次逼近技术完成A/D转换过程,由于是串行输入结构,能够节省51系列单片机I/O 资源;且价格适中,分辨率较高,因此在仪器仪
[模拟电子]
基于80C196的高精度、低成本A/D转换器实现
0 引言 在智能化仪表中,A/D转换器直接影响仪表的性能,A/D转换器的性能主要在两个方面,转换精度和转换时间。目前常用的有逐次逼近型转换器、并行转换器、双积分转换器等。其中,双积分A/D转换器因为转换精度高、抗干扰性能强,并且价格相对较低,在数字测温仪表以及工业现场的慢变信号数据采集中得到非常广泛的应用。但是双积分A/D转换器在实际应用中仍有不足之处。由于其工作过程中零点漂移误差、以及电容充放电造成的非线性,使得其如要获得较高的精度,对电路中运放、电阻、电压基准等元件的精确度和温漂系数等指标的要求就非常高,特别是它不适合快变信号的数据采集。而适合快变信号的高精度并行转换器的价格太高,如12位精度的AD7874价格就十分
[单片机]
小广播
最新电源管理文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved