0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于AT89C51单片机实现自动量程切换电压测量系统的设计

电子设计 来源:郭婷 作者:电子设计 2019-07-18 08:12 次阅读

电子系统设计调试过程中,电压测量往往是一个测控或测量系统中不可缺的项目。对于电压测量,若其在一个小动态范围内变化,则无论电平高低,要做到精确测量并不困难。但当被测量在宽动态范围内变化时,例如从mV级甚至μV级到V级,做到测量误差均匀的控制在一定范围之内,常用的方式是切换量程,即指定测量范围,例如常用的数字电压表等仪器。然而在许多情况下为了保证测量的实时性,测量时不可能变换测量通道的量程,因此要在整个电压变化范围内做到精确测量就凸显出其重要性。本文基于MCU AT89C51控制,实现了一种自动量程切换的电压测试系统。

1 电压测量原理及系统组成

为了对不同量级的电压信号进行测量,对输入信号进行放大时就不能采用相同的增益倍数。系统要求能根据不同信号幅值,自动选择相适应的增益倍数。在本方案中采用单片机判断输入电平的量级,通过通道选择开关,控制前级放大器的增益系数,使其输出符合后级ADC的输入电平要求。再通过MCU对采样结果计算分析,将得到的结果显示在LED显示器上,可以通过按键控制测量的起始状态,默认状态下为一直处于测量状态。为消除信道在不同温度、湿度等状态下对测量的影响,增加了基准电压自校准功能,其测量系统框图如图1所示。

基于AT89C51单片机实现自动量程切换电压测量系统的设计

2 系统硬件电路

2.1 前级程控放大电路

由于输入信号最小为μV级,对于前级放大器的要求很高,需要有合适的温度系数、噪声系数等。目前一些方案中多数采用斩波放大器。本文采用ADI公司的具有超低失调、超低漂移和偏置电流特性的宽带自稳零放大器AD8628,可提供自稳零或斩波稳定放大器才具有的特性优势,将低成本与高精度、低噪声特性融于一体。AD8628的失调电压仅为1μV,失调电压漂移小于0.005μV/℃,噪声仅为0.5μV峰峰值,因而适合不容许存在误差源的应用。其在工作温度范围内的漂移接近零,对位置和压力传感器、医疗设备以及应变计放大器应用极为有利,可以利用AD8628提供的轨到轨输入和输出摆幅能力,以降低输入偏置复杂度,并使信噪比达到最大。具体电路如图2所示。

基于AT89C51单片机实现自动量程切换电压测量系统的设计

该部分中,实现增益控制主要依靠通道选择,本方案中采用四通道选择器ADG804,该器件导通电阻小于0.8 Ω,单电源供电,封装小,温度适应性强,通过地址线A0和A1选择导通路。单片机I/O口送数至ADG804的地址输入端,选择不同的反馈电阻值Rf,通过式(1)得到不同的放大增益系数G,进而确定事先定义的不同档位的切换。

G=Vo/Vi=Rf/Ri (1)

2.2 ADC变换电路

选择使用AD775作为本方案中的A/D变换器。AD775是一款CMOS、低功耗、8位、20 MSPS采样模数转换器(ADC),内置采样功能和片内基准电压偏置电阻,可提供完整8位ADC解决方案。它采用流水线式或乒乓两步式FLASH架构,可提供最高35 MHz的采样速率,同时保持极低的功耗(60 mW)。该器件融合了出色的微分非线性(DNL)、高采样速率、低差分增益与相位误差、极低功耗以及+5 V单电源工作等特性,其参考电阻可采用多种配置方式进行连接,以处理不同的输入范围。与传统的FLASH型转换器相比,低输入电容提供易于驱动的输入负载。图3给出ADC的外围电路以及和MCU数据传输的连接关系。

基于AT89C51单片机实现自动量程切换电压测量系统的设计

2.3 MCU系统电路

方案中采用Atmel公司的AT89S52,带8 KB闪速可编程可擦除制存储器(PEROM)及低电压,高性能CMOS微控制器。由于将多功能8位CPU和闪速存储器组合在单个芯片中,AT89S52是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。采用单片机P0口直接驱动红色LED,5 V供电,采用共阳数码管,上拉电阻取1 kΩ。共采用三个数码管,动态扫描式显示。单片机系统图省略。

3 系统软件设计

3.1 数据采集及量程切换

软件设计采用模块化设计思想,每个模块实现特定的功能。系统软件包括主程序、定时中断程序和一系列功能子程序。上电后程序初始化,进入监控状态,显示待机界面等待测量。测量时启动A/D后,首先选择最大量程对外部数据进行采样计算并判断,确定合适的量程。切换量程后再次采样,记录得到的数据,通过相应对相应量程的计算,得到测量的电压。如果需要,MCU可与微型打印机通过并口连接,将存储于RAM中的电压历史数据和当前数据打印出来,作为资料存档保留,系统流程图如图4所示。

基于AT89C51单片机实现自动量程切换电压测量系统的设计

3.2 通道自校准

为了消除信道给测量带来的误差,在电路和程序中增加了自校准部分。其主要原理是通过比对基准电压和待测电压在相同信道中的测量值,进一步消除系统信道带来的误差。基准电压通过稳压器件和一系列分压电阻得到一组不同量级且高精度的电压基准源,设置为1 mV,10 mV,50 mV,100 mV,500 mV,1 V等。设某通道的输入信号为VX,经过测量得到的结果为V'X;选择合适的量程范围,选择距离此范围最接近的基准电压VS1和VS2,经过同样的信道测量的结果为V'S1和V'S2,那么根据相似性原理可以得到:

基于AT89C51单片机实现自动量程切换电压测量系统的设计

通过在线基准电压校准从根本上消除了放大、滤波等环节由于器件参数分散性所引入的单向偏差问题,使测量系统的精度得到进一步的提升。

4 结 语

电压是电子系统中最基本的测量值之一,也是诸多非电子传感器转换为电子测量时最常用的物理量。其快速准确测量无论是对于电子系统设计,还是对各种物理信号的测量,都有极其重要的意义。本文实现了一种基于单片机的自动量程切换的电压测量系统,能在较宽电平范围内准确地测量其电压值。此外采用基准电压测量,最大限度地减小信道对测量结果带来的误差。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632696
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16977

    浏览量

    350215
  • 测试系统
    +关注

    关注

    6

    文章

    807

    浏览量

    62072
收藏 人收藏

    评论

    相关推荐

    基于MCU AT89C51自动量程切换电压测量系统设计

    时不可能变换测量通道的量程,因此要在整个电压变化范围内做到精确测量就凸显出其重要性。本文基于MCU AT89C51控制,
    发表于 07-26 06:07

    AT89C51单片机在数控车床切削力测量中的应用

       本文介绍了应用AT89C51 单片机测量数控车床切削力的新方法,重点阐述了单片机实现连续
    发表于 09-02 10:48 24次下载

    如何实现(电脑)PC单片机AT89C51的串行通信

    如何实现(电脑)PC单片机AT89C51的串行通信 在Windows95下使用串口API函数实现PC
    发表于 04-07 09:45 4653次阅读

    AT89C51单片机简介

    AT89C51单片机简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低
    发表于 11-12 08:39 1.9w次阅读
    <b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>简介

    自动量程切换电压测量系统设计

    自动量程切换电压测量系统设计 在电子系统设计调试过程中,
    发表于 12-19 10:40 3485次阅读
    <b class='flag-5'>自动量程</b><b class='flag-5'>切换</b><b class='flag-5'>电压</b><b class='flag-5'>测量</b><b class='flag-5'>系统</b>设计

    采用AT89C51单片机设计的变频调速控制系统

    采用AT89C51单片机设计的变频调速控制系统 摘 要:本文介绍了一种由AT89C51单片机为主控制器的变频调速
    发表于 04-27 09:33 3494次阅读
    采用<b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>设计的变频调速控制<b class='flag-5'>系统</b>

    单片机AT89C51设计的数字钟

    单片机AT89C51设计的数字钟,(1).开机时,显示12:00:00的时间开始计时
    发表于 04-13 16:07 9816次阅读
    用<b class='flag-5'>单片机</b><b class='flag-5'>AT89C51</b>设计的数字钟

    基于AT89C51单片机的万年历设计与实现

    本文提出了一种基于AT89C51单片机的万年历设计方案,本方案以AT89C51单片机为主核心,与时钟芯片DS1302、按键、LED显示等模块构成硬件
    发表于 05-28 10:46 844次下载
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>的万年历设计与<b class='flag-5'>实现</b>

    AT89C51单片机实现频率测量

    AT89C51单片机实现频率测量,参考资料。
    发表于 05-06 10:25 0次下载

    基于AT89C51单片机的大棚环境测控系统

    基于AT89C51单片机的大棚环境测控系统
    发表于 05-18 08:50 14次下载

    基于AT89C51单片机的电子表设计

    AT89C51 单片机的电子表设计
    发表于 06-21 09:13 57次下载

    AT89C51单片机

    AT89C51单片机学习一、AT89S51单片机的I/O端口二、AT89S51单片机的中断
    发表于 11-12 12:21 65次下载
    <b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>

    基于AT89C51单片机系统中自制硬件字库的应用Proteus仿真及程序

    基于AT89C51单片机系统中自制硬件字库的应用Proteus仿真及程序
    发表于 05-05 10:11 2次下载

    基于AT89C51单片机用8255实现接口扩展Proteus仿真及程序

    基于AT89C51单片机用8255实现接口扩展Proteus仿真及程序
    发表于 05-05 09:57 12次下载

    基于AT89C51单片机的点击转速测量

    电子发烧友网站提供《基于AT89C51单片机的点击转速测量.pdf》资料免费下载
    发表于 10-20 11:39 1次下载
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>的点击转速<b class='flag-5'>测量</b>