精密程控电流源的设计及应用

最新更新时间:2006-11-21来源: 国外电子元器件关键字:温度  非线性  FT232AM 手机看文章 扫描二维码
随时随地手机看文章

1 系统概述

程控电流源具有输出电流范围宽、准确度高、功率大等特点,是组成自动测试系统和校验系统的必需仪器,广泛用于工矿企业、科研国防等军工单位的计量仪表、自动化标定等设备中。本文介绍的精密程控电流源除上述特点外,还具备USB总线通信、温度测量和输出电流非线性温度补偿功能。

  系统总体结构如图1所示,精密程控电流源由微控制器(MCU)单元,USB接口单元,温度测量单元,输出电流校准单元,信号输出单元及电源单元组成。MCU单元通过USB接口单元实现与上位机的通信,从上位机获得控制命令并返回相应的数据,同时解析上位机命令来控制信号输出信号,完成最终电流输出。温度测量单元和输出电流校准单元共同完成输出电流的非线性温度补偿。电源单元向其他单元提供所需电源。精密程控电流源还包括过流检测、系统自检、继电器隔离输出等单元,进一步提高了系统的智能性和可靠性。

2 系统电路设计

2.1 USB接口单元

精密程控电流源通过USB总线与上位机接口,USB接口的热插拔、高速和即插即用特性大大简化了系统设计,方便了电流源与上位机的通信,USB接口单元电路如图2所示。

图中,FT232AM完成USB总线到MCU串口信号线的转换,以便上位机将USB虚拟成传统的串行口,从而简化了驱动程序,便于实现USB总线与MCU的通信。为了避免USB信号与信号源间的干扰,选用光耦器件(图中的U29)实现其与MCU的隔离,提高系统的抗干扰能力。

2.2 MCU及其外接单元

微控制器MCU是精密程控电流源的核心控制单元,其与温度测量单元及输出电流校准单元的接口电路如图3所示。

MCU单元选用AT89C51型单片机构建运行环境,完成对电流源系统的控制,包括外部扩展ROM、外部扩展RAM、硬件看门狗、硬件地址译码器等。

图2

  考虑到器件输出特性随温度的变化,MCU外接温度测量单元和输出电流校准单元来完成输出电流的非线性温度补偿,其原理是输出电流校准单元保存各温度范围内不同设定电流值和实际输出值之间的误差,此误差通过实际测量得到,称为修正系数。系统工作时,通过温度测量单元可得到当前工作温度,用此工作温度对应的设定电流值乘以修正系数,即可完成输出电流的非线性温度补偿,大大提高电流的输出精度。

温度测量单元的核心器件是高精度数字温度测量电路AD7416(图中的U19),它采用IC总线与AT89C51接口,测量的环境温度范围为-10℃~+50℃,设计的MCU以十六进制形式输出所测温度。

输出电流校准单元由M24C64型64k Bit EEPROM构成,用来存贮电流源修正系统数值。MCU通过I2C总线可方便地对其进行读写操作,并按照可变电流源的通信协议以8位十进制数形式写入和读出修正系数,从而保证了对输出电流的精确非线性温度补偿。

2.3 信号输出单元

信号输出单元完成精密程控电流源的电流产生与输出,包括以12位高精度DAC-HK12BGC型DAC为核心的DAC转换电路和由TI公司的精密电压/电流转换器组成的后级转换电路。MCU先译码上位机指令,然后向DAC转换电路写入特定数据以控制其输出的模拟电压值。后级转换电路接收DAC转换电路输出的模拟电压值完成电压到电流的转换,随后输出上位机设定的电流。信号输出单元电路如图4所示。

图3

  图中,AT89C51的数据线D0-B7通过二片74HC573与DAC-HK12BGC接口来控制其模拟输出,控制过程如下:AT89C51通过CS_DA与51_WR信号来启动DAC,当DAC低字节选择信号线CS_DAL与单片机写使能线51_WR构成的组合逻辑有效时,向DAC写入低8位数据,然后以相同方式写入高4位数据。为进一步提高精度,DAC输出端连有电位器W1、W2,分别用来微调满偏和零偏。

DAC输出的模拟电压信号DA_OUT接入后级转化电路XTR110,先通过其片内的金属薄膜电阻网络提供输入的缩放比例及电流偏移,完成电压到电流的转换,再通过IRF7104型场效应管输出电流。XTR110具有14位转换精度,0.005%的非线性度,确保了转换精度。电位器W3、W4分别用来微调输出电流零偏和满偏,进一步提高精度。

3 单片机控制程序设计

在电流源系统软件中设计了完整的通信协议,规定了电流源从上位机获得的控制命令字和相应的返回数据值。系统控制程序以AT89C51型单片机作为控制核心,采用汇编语言编写,分为主程序和串口中断处理程序2部分。

3.1 主程序设计

主程序主要完成系统参数初始化、系统自检、串口中断配置等,流程如图5所示。

图4

  系统上电后,MCU从地址0000H开始执行,主程序的入口地址为0050H。系统初始化包括初始化堆栈、初始化DAC、初始化串口、初始化寄存器、初始化看门狗等。部分主程序如下。

MOV SP,#58H ;初始化堆栈指针

MOV A,#00H

MOVX @DPTR,A ;初始化DAC

NOP

MOV A,#20H ;初始化定时器1,模式2

MOV A,PCON

ORL A,#80H

MOV PCON,A ;设定串口波行率19200

SETB MODE ;设定系统自检

SETB R_EN ;初始化自检继电器

MOV TX_PNT,#40H ;初始化串口发送缓冲区指针

MOV RX_PNT,#30H ;初始化串口接收缓冲区指针

CPL WDI ;初始化看门狗

SETB TR1 ;开定时器1

SETB REN

SETB ES ;开串口中断

SETA EA ;开单片机中断

MOV STATUS,#01H ;进入运行状态

3.2 串口中断处理程序

串口中断处理程序是单片机控制程序的核心部分,串口接收上位机命令字,同时解析命令来控制硬件电路工作,流程如图6所示。

以设定电流输出这个最重要的命令为例,串口中断处理程序先接收设定的电流值(以3位16进制数表示),然后由单片机通过I2C总线读取当前温度值和修正系数,再由系统软件控制设定电流值乘以修正系数得到实际值,从而完成非线性温度补偿,单片机可根据实际值设定DAC输出电压,控制最终电流输出,单片机串口中断处理程序中的主要代码如下:

;*********************;

SET_V:MOV A,37H ;得到设定电流值的最高位

ANL A,#0F0H

CJNE A,#30H,PACK1……

PACK1:MOV A,37H

CLR C

SUBB A,#37H

PACK2:MOV R2,A ;最高位存放R2

MOV A,38H

ANL A,#0F0H

CJNE A,#30H,PACK3……

PACK3:MOV A,38H

CLR C

SUBB A,#37H

PACK4:MOV R1,A ;中间位存入R1

MOV A,39H

ANL A,#0F0H

CJNE A,#30H,PACK5……

PACK5:MOV A,39H

CLR C

SUBB A,#37H

MOV R0,A ;最低位存入R0

MOV A,R1

SWAP A

ORL A,R0

MOV R0,A ;最低位与中间位合并

MOV DPTR,#CS_DAH

MOV A,R2

MOVX @DPTR,A

MOV DPTR,#CS_DAL

MOV A,R0

MOVX @DPTR,A

MOV DPTR,#CS_DA ;设定DAC输出

MOV A,#00H

MOVX @DPTR,A ;更新DAC

RET

;************************************************;

单片机通过I2C总线读取当前温度值和修正系数的程序与之相,这里只给出读取温度值程序:

;Read A Byte From AD7416 E2RPOM

ACALL RDBYTE ;读取温度值高位

MOV R1,A ;存入R1

CLR TMSDA ;ACK

NOP…… ;NOP指令

SETB TMSCL

NOP……

CLR TMSCL

NOP……

SETB TMSDA

ACALL RDBYTE ;读取温度值低位

MOV R0,A ;存入R0

SETB TMSDA ;N0 ACK

NOP……

SETB TMSCL

NOP……

CLR TMSCL

NOP……

CLR TMSDA

NOP……

SETB TMSCL

SETB TMSDA ;停止

;Read A Byte From AD7416 E2PROM

RDBYTE:MOV R0,#08H

RDBIT:SETB TMSCL ;SCL保持高电平

MOV C,TMSDA

RLC A

CLR TMSCL ;SCL保持低电平,SDA电平改变

NOP……

DJNZ R0,RDBIT ;读完结束

RET

4 结束语

以上介绍的精密程控电流源输出电流为0~20mA,编程步进电流为100μA,电流误差小于50μA,已在某机载信号调节器自动化标定系统得到很好的应用。该自动化标定系统可模拟信号调节器所需的各种输入信号,并使用采集设备信号调节器输出的调理信号,然后进行分析并完成机载信号调节器的自动检测和标定,可大大提高检测精度,检测效率和降低人员工作量。

关键字:温度  非线性  FT232AM 编辑: 引用地址:精密程控电流源的设计及应用

上一篇:高频下保持高输出阻抗的双极电流源
下一篇:DS1922/DS1923电池电量计

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

基于DSP的人体皮肤测量仪的设计
  1 引言   皮肤是人体最重要的器官之一。它有许多功能,首先,皮肤把外界和内部器官分离开,起着人体第一道屏障的作用。皮肤通过厚厚的角质层阻挡住外部细菌、灰尘等的侵入,保证人体内有一个安全的环境。其次,皮肤还是一个重要的分泌、排泄组织。皮肤内有很多的汗腺,通过汗腺进行汗液分泌和皮脂排泄。皮肤还有体温调节作用,可以说皮肤与人体的健康有着密不可分的联系。医学界发现通过对皮肤的一些生理指标的检测可了解人体的健康状况。通过对皮肤生理参数的检测从而准确地掌握人体机能的变化是当今医学界面临的一个重大难题。   本文介绍了一种基于DSP的人体皮肤测量仪的设计方案。   2 总体设计方案   整个测量系统是由温度采集、湿度采
[嵌入式]
分布式测温中传感器时序与温度读取研究
1.引言   在分布式测温系统中应用了大量的新型传感器DS18B20,DS18B20是单总线数字温度传感器其硬件接线简单,但时序非常复杂。要实现温度的正确读取,既要有对DS18B20的ROM操作命令,又有一些功能命令。这些命令的执行,既有一定顺序,又有特定含义。都需要基于数字温度传感器初始化时序、写时序和读时序,按照严格的时序配合才能完成温度正确采集与读取。因此要想正确使用单总线数字温度传感器,必须分析其时序关系,并且基于时序编制正确程序。单总线数字温度传感器时序分析与应用研究具有及其重要意义。 2.数字温度传感器时序   DS18B20与单片机只通过一条数据线连接,所以其数据的传输方式为串行方式。为了正确读取温
[工业控制]
基于ATMEGA16的电热锅炉温度控制器的设计
引言 电热锅炉是可将电能直接转化成热能,具有热效率高、体积小、无污染、噪声小、运行安全可靠、供热稳定、自动化程度高等优点,是理想的节能环保型的供暖设备。 本控制器主要针对过程控制实验室的控制装置而设计的,对浙大中控的AE2000B过程控制实验装置中电热锅炉的温度进行控制、显示,具有手动、自动功能,带有漏电、超温、超压及缺水保护和报警系统。 智能仪表的研制开发 智能仪表是以单片机为核心的仪表,其设计要点大致有两点,即模块化设计和模块的连接。 ● 模块化设计 依据仪表的功能、精度要求等,自上而下按仪表功能层次把硬件和软件分成若干个模块,分别进行设计与调试,然后把它们连接起来,进行总调,这是设计仪表最基
[应用]
基于AT89C52单片机的温度检测及显示设计
由于高新技术的不断发展,仪器仪表的微型化,数字化已得到实现。90年代高精确度、高性能、多功能仪器仪表都已经采用微处理器件。而作为工业控制和自动化领域的各种新技术、新方法、新产品的发展趋势和显著标志智能化是自动化技术当前和今后发展的动向之一。本文采用AT89C52单片机开发了键盘、液晶显示器、多路温度检测来实现温度的采集、温度的文字显示和图形显示三个系统。实验证明,采用AT89C52开发的系统性能可靠、成本较低、软件设计灵活简单、硬件接口功能丰富,具有扩展性好、通用性强等优点。 1 元器件的选择 1.1 核心芯片的选择 AT89C52单片机价格低廉,输入输出口丰富,无需再另外扩展,简化了外围电路。256
[单片机]
基于AT89C52单片机的<font color='red'>温度</font>检测及显示设计
51单片机OLED+dht11显示温度
入门51单片机一个多月,参加一个比赛熬夜写出了OLED+DHT11程序。 单片机源程序如下: #include REG51.h #include oled.h #include intrins.h typedef unsigned char BYTE; typedef unsigned int WORD; #define uint unsigned int #define uchar unsigned char sbit io=P1^2;//dht11data端接单片机的P1^0口// sbit IN1 = P1^0; sbit IN2 = P1^1; //输入电机接口 sbit K1 = P
[单片机]
低成本的微处理器系统温度监控器
    摘要: ADM1021是美国ADI公司出品的一种数字温度计IC。它具有精度高,价格低,体积小等特点,是便携式设备中不可缺少的器件。文章详细介绍了ADM1021的工作原理、技术性能、设计参数、应用范围以及注意事项。     关键词: 串行接口 信号调理 温度监控 ADM1021 1 引言 ADM1021是双通道的数字温度计集成电路,同时可兼做低温/高温报警器,非常适用于需要温度监控的个人计算机及其系统。该器件通过连接的PNP晶体管可以测量微处理器的温度,而PNP晶体管可由奔腾II或类似的处理器芯片,或者由分立的PNP/NPN器件来提供,比如2N3904/2N3906等。ADM1021采用了新颖的测
[测试测量]
对 X 参数非线性测量的意义的理解和认识
在早期的年代人们曾经一度使用各种仪表以及由这些仪表测量得到的各种测量结果拼合的信息来设计线性元器件和线性系统。这种设计方法很快就被使用分布参数 — S 参数的设计方法所取代。S 参数把使用多种仪表以及多种测量结果统一起来,使得人们能够只用一种仪表 — 矢量网络分析仪,就可以通过仪表与被测器件的一次连接测量出诸如增益、隔离度和匹配等参数的值。在过去的 40 多年里,S 参数一直占据着微波理论和技术全部基础中最重要的位置,它们涉及的是一些我们非常熟悉的测量的量,例如输入匹配 — S11,输出匹配 — S22,增益或损耗 — S21,以及隔离度 — S12,这些测量的量还可以很容易地植入设计电子产品所用的软件仿真工具中。在今天,S 参数
[测试测量]
对 X 参数<font color='red'>非线性</font>测量的意义的理解和认识
IR连接传感器使温度监控变简单
本文描述低功率、内部 传感器 、温度—周期转换器(MAX6576)的特点。它耗电只有140_A(电源2.7V~5.5V),封装为6引脚SOT,测量温度范围-40℃~125℃。它的输出是一个方波,其周期正比于IC裸片温度的绝对温度(°K)。 测量对地有几十伏电位的电路元件的温度是困难的。而且,随着电压的增加,此工作变得更困难。在高EMI环境中的测量温度也是困难的。解决这些困难的一个良好方案是靠红外(IR)信号实现温度探头到读出测定位的连接。用最小功耗和锂电池或其他具有长搁置寿命和高能量密度的电池可简化传感器的电源装置。 本文描述低功率、内部传感器、温度—周期转换器(MAX6576)的特点。它耗电只有140_A(电源2.7V~
[传感器]
小广播
最新电源管理文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved