数字万用表的设计.docx

上传人:b****7 文档编号:15996316 上传时间:2023-07-09 格式:DOCX 页数:24 大小:559.79KB
下载 相关 举报
数字万用表的设计.docx_第1页
第1页 / 共24页
数字万用表的设计.docx_第2页
第2页 / 共24页
数字万用表的设计.docx_第3页
第3页 / 共24页
数字万用表的设计.docx_第4页
第4页 / 共24页
数字万用表的设计.docx_第5页
第5页 / 共24页
数字万用表的设计.docx_第6页
第6页 / 共24页
数字万用表的设计.docx_第7页
第7页 / 共24页
数字万用表的设计.docx_第8页
第8页 / 共24页
数字万用表的设计.docx_第9页
第9页 / 共24页
数字万用表的设计.docx_第10页
第10页 / 共24页
数字万用表的设计.docx_第11页
第11页 / 共24页
数字万用表的设计.docx_第12页
第12页 / 共24页
数字万用表的设计.docx_第13页
第13页 / 共24页
数字万用表的设计.docx_第14页
第14页 / 共24页
数字万用表的设计.docx_第15页
第15页 / 共24页
数字万用表的设计.docx_第16页
第16页 / 共24页
数字万用表的设计.docx_第17页
第17页 / 共24页
数字万用表的设计.docx_第18页
第18页 / 共24页
数字万用表的设计.docx_第19页
第19页 / 共24页
数字万用表的设计.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数字万用表的设计.docx

《数字万用表的设计.docx》由会员分享,可在线阅读,更多相关《数字万用表的设计.docx(24页珍藏版)》请在冰点文库上搜索。

数字万用表的设计.docx

数字万用表的设计

数字万用表的设计

单片机数字万用表的设计

一、引言

数字万用表是一种多用途电子测量仪器。

它采用数字化测量技术,把实际测量的模拟量,转化为离散的数字量进行输出显示,主要用于物理、电气、电子等测量领域,一般包含电流表(安培计)、电压表(伏特计)、电阻表(欧姆计)等功能,也称为万用计、多用计、多用电表或万用电表。

万用表是电子和电气技术领域必备的测量仪器,用于测量电子电路中的各种物理量(电压、电流、电阻等),常作为基本故障诊断的便携式装置,也有放置在工厂或实验室工作台上作为桌上型装置。

有的万用电表分辨率能达到七、八位数,常用在实验室,作为电压或电阻的基准,或用来调校多功能标准器的性能。

相比传统的指针式万用表,数字万用表具有以下的主要优点:

(1)数字显示直观准确,无视觉误差,读数准确;

(2)测量精度和分辨率都很高;

(3)输入阻抗高,减少对被测电路的工作影响;

(4)电路集成度高,便于组装和维修;

(5)测量功能齐全,测量速率快;

(6)保护功能齐全,有过压、过流保护电路;

(7)功耗低,抗干扰能力强;

(8)便于携带,使用方便。

本次设计的任务是制作一个数字万用表,可实现如下的功能及要求:

(1)可以测量直流电压、直流电流和电阻;

(2)能将测量得到的数值直观、准确地显示出来,并标明相应的单位;

(3)具有超量程时的报警提示。

二、系统硬件分析与设计

数字万用表的基本功能是,能够测量直流电压、电流以及电阻的阻值,数字万用表的基本组成由图1所示,其中,模数转换是数字万用表的核心:

图1.数字万用表的基本原理图

如图2所示,本设计将由以下几大部分组成。

包括:

复位电路、震荡电路、A/D转换和控制、测量值输出、超量程报警和档位选择。

其中,复位电路用于单片机上电复位使系统清零;震荡电路为单片机提供精确的时钟频率,使电路工作更加稳定;A/D转换和控制部分负责模数转换及输入输出信号的控制;测量值输出则负责显示待测物理量大小的数值;超量程报警用于超出量程范围时的报警提示,提醒使用者更换量程。

图2.硬件系统总体设计框图

1、STC的89C52单片机的特点及功能介绍

(1)89C52单片机的主要特点及功能特性

89C52是一款低电压,高性能的8位CMOS型单片机,片内有8k字节以Flash闪存为介质的,能擦写的只读程序存储器及256字节的随机存取数据存储器。

89C52型单片机仍属于51单片机家族群,都支持一个共同的指令集(MSC-51),但各自拥有不同的存储器容量及端口设置等内置资源,使其更符合成本效益的需要,满足特定的场合的生产需求。

该单片机在嵌入式控制应用系统中有着广泛的应用。

89C52具有以下几个主要特点:

a.体积小但集成度高、可靠性较高:

该单片机把各个功模块集成在一块芯片上,内部采用总线结构,将各种信号的通道封装在同一个芯片中,减少了与其他芯片之间的连线,大大提高了可靠性与线路的抗干扰能力。

b.控制能力较强:

一般单片机的指令系统中均有极为丰富的转移指令、存储器读写指令、I/O口的逻辑操作以及位处理功能,满足工业控制的各种要求。

c.易于扩展:

单片机片内已经具有计算机正常运行时所必需的部件,但仍然预留了很多片外扩展用的引脚(各种总线,并行/串行的输入/输出),易于组成更庞大计算机系统完成更复杂的任务。

d.内部功能较强:

单片机有着各种的内部资源,功能强大。

e.低功耗、低电压,便于生产便携式产品。

下面介绍89C52单片机的主要功能特性:

a.兼容标准的MCS-51的指令系统;

b.内置8k字节可擦写的闪存ROM(Read-OnlyMemory);

c.4组共32个双向I/O口;

d.256×8位大小的内部RAM;

e.3个16位可编程定时/计数器中断;

f.支持3.5-12/24/33MHz多种时钟频率;

g.1个全双工可编程的UART(UniversalAsynchronousReceiver/Transmitte)串行口;

h.6个中断源,4级优先级中断结构;

i.2个W/R(Write/Read)读写中断口,3级加密位;

j.低功耗空闲和掉电节省模式,带有软件设置睡眠及相应的唤醒功能;

k.有PDIP及PLCC两种封装形式。

(2)89C52单片机的引脚功能

图3.89C52单片机微架构图

图4.89C52单片机引脚图

下面介绍89C52单片机引脚主要功能:

4组I/O口

P0口:

一组8位漏极开路的准双向并行I/O口,扩展片外存储时的地址/数据总线复用口。

作为输出口用时,每位能驱动8个LS型TTL负载,对端口P0写“1”时,可作为高阻抗输入端用。

P0口与其他几组I/O口的最大区别是其内部不带有上拉电阻。

P1口:

是一组带内置上拉电阻的8位双向并行I/O口,P1的输出缓冲级可驱动4个TTL负载。

对端口写“1”,通过内部的上拉电阻把端口拉至高电平后,可作输入口。

作输入口使用时,因为内部存在上拉电阻,引脚被外部信号拉低时会输出电流。

另外,P1的P1.0和P1.1口存在第二功能,见下表。

表1.P1口的第二功能

引脚号

功能特性

P1.0

T2(定时/计数器2的外部计数输入),时钟输出

P1.1

T2EX(定时/计数器2的捕捉/重载触发信号和方向控制)

P2口:

是一组带有内部上拉电阻的8位双向I/O并行口,P2的输出缓冲级可驱动4个TTL负载。

作输入及输出口时,情况与P1口相似。

扩展片外存储时,作为低8位地址总线口。

P3口:

是一组带有内部上拉电阻的8位双向并行I/O口。

P3口输出缓冲级可驱动4个TTL负载。

作为输入及输出口时,情况与P1口相似。

P3口还能接收一些用于Flash存储器编程和程序校验的控制信号。

P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,见表2。

其他引脚

RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

EA/VPP:

外部访问允许。

要让CPU只访问外部程序存储器(地址为0000H—FFFFH),EA端必需保持低电平(或接地)。

当EA端为高电平(接Vcc端)时,CPU会执行内部程序存储器中的指令。

XTAL1:

振荡器反相放大器的及内部时钟发生器的输入端。

XTAL2:

振荡器反相放大器的输出端。

VCC:

接电源+5V。

GND:

接地端。

表2.P3口的第二功能

引脚号

功能特性

P3.0

RXD(串行输入)

P3.1

TXD(串行输出)

P3.2

INT0(外部中断0)

P3.3

INT1(外部中断1)

P3.4

T0(定时器0外部输入)

P3.5

T1(定时器1外部输入)

P3.6

WR(外部数据存储器写有效)

P3.7

RD(外部数据存储器读有效)

2、模数转化电路

实际的物理量都是幅值大小连续变化的模拟量,或称为模拟信号。

旧式的指针万用表可以直接对模拟电压、电流进行测量并显示。

对于数字万用表,则需要把模拟量(多是电压量)转换为数字信号的形式,通过相关的处理(包括存储、传输、计算等)再进行显示。

数字信号是量化的模拟信号,若将最小的量化单位记为Δ,那么数字信号的大小一定为Δ的整数倍。

该倍数可以用二进制数码表示,但为了便于直观地读数,通常把数码进行译码后,由数码管或液晶屏幕显示。

当模拟信号经过量化之后,还需要进行编码处理,是用二进制码组表示固定电平的量化值。

目前普遍使用的是非线性的8位二进制编码,可以将输入的幅度范围分成256个量化级。

由此可知,数字万用表测量的核心步骤是模数转换以及译码显示,其中模数转换又可以分为量化及编码两大步骤。

(1)PCF8591芯片的主要功能特征

PCF8591是一个单片集成、单独供电、低功耗及8位CMOS工艺制造的AD-DA器件。

PCF8591具有4个模拟输入、1个模拟输出和1个串行I2C总线接口。

PCF8591的3个地址引脚A0、A1和A2可用于硬件地址编程。

在PCF8591器件上输入输出的地址、控制和数据信号都是通过双线双向I2C总线以串行的方式进行传输。

图5.PCF8591的内部原理图

PCF8591芯片的引脚功能

图6.PCF8591的引脚图

图6所示为PCF8591的引脚图。

AIN0~AIN3:

模拟信号输入端;

A0~A2:

引脚地址端;

VDD、VSS:

电源端(2.5-6V);

SDA、SCL:

I2C总线的数据线、时钟线;

OSC:

外部时钟输入端,内部时钟输出端;

EXT:

内部、外部时钟选择线,采用内部时钟时EXT接地;

AGND:

模拟信号地;

AOUT:

数模转换输出端;

VREF:

基准电源端。

图7.模数转换部分原理图

图7所示为模数转换部分。

PCF8591芯片作为ADC芯片,使用I2C总线与单片机通讯,SCL是串行时钟,SDA是串行数据线,输出转换后的数字量。

待测模拟量从AIN0进入,其余模拟输入口因本设计不需使用而接地。

AGND端是模拟地,接上0Ω电阻,而VDD接上接地电容,有效分割模拟地和数字地,减少高频数字信号的干扰。

(2)多量程数字电压表设计

图8.分压电路的原理

如图8所示,在基准数字电压表头前加上一级电压信号衰减电路(分压电路),可以扩展直流电压测量的量程。

图中,Vo为输出电压,基准电压表的量程为2V,四个分压电阻串联值为10MΩ,则第4个开关接入时输入电压Vi可以达到2000V,同理可得其他档位量程分别为2V、20V、200V、200V。

但基于测试安全性,第4档测试电压不应高于500V。

图9.电压衰减电路原理图

如图9所示,R1和R2是分压电阻,其阻值均为按档位需要计算后所得,可以将20V的直流电压衰减为2V输出,配合20V的直流电压挡。

(3)多量程数字电流表设计

图10.分流电路的原理

如图10电路所示,万用表测量电流的原理是,用合适的取样电阻,将待测的电流量根据欧姆定律转换为电压量,才能进行测量。

若取样电阻阻值为R,根据欧姆定律,可以获得被测电流Ii的值。

在基准数字电流表头前在加上电流信号衰减电路(分流电路),即可实现直流电流测量量程的扩展。

如上图所示,四个电阻串联值是1kΩ,若选取第1挡,并使输出电压不超过2V,即可计算出Ii必须小于等于2mA。

同理可计算出其他档位的满量程电流分别为20mA、200mA、2A。

图11.电流衰减电路原理图

如图11所示,R15和R16是分流电阻,其阻值均为按档位需要计算后所得,可以将2A的直流电流衰减为200mA,并将电流变换成电压以供模数转换器测量,配合2A的直流电流档使用。

(4)电阻测量设计

图12.电阻-电压变换电路的原理

数字万用表通常采用电阻-电压变换电路来测量电阻(欧姆档)。

如图7所示电路,VDZ1是2.7V稳压管,是一种用特殊工艺制造的硅半导体二极管(康华光,2006)。

VT1、VT2、VDZ1组成恒流源,保持V3的值恒定不变。

V3的值等于V1电压减去VDZ1上的电压,约为2.3V。

VT3的基极电压亦保持不变,若VT3基极和发射极之间的电压为0.5V,则可知V2的值恒为2.8V左右,并可得出VT3集电极电流的IC3也是恒定的。

其中,接在VT3的发射极上的一组电阻是基准电阻,按档位不同分别是:

2.2kΩ、22kΩ、220kΩ、2MΩ。

通过选择不同的档位开关,可以得到恒定的、不同倍率的电流IC3,它的电流分别是1mA、0.1mA、0.01mA、0.001mA。

RX是待测电阻,接在VT3的集电极上,当恒定电流IC3流经时,产生电压VX,测量VX则可推算出待测电阻的阻值。

RW用于调整恒流源IC3的大小,VD3作为保护管,当电阻档所加的电压过高时,VD3对VT3有保护作用。

图13.电阻-电压变换电路原理图

图13所示电路为电阻测量电路。

其中,电阻R13和R14构成一组基准电阻。

电路工作时,PNP管Q3的集电极电流IC3是恒定的,R18和R19负责调节IC3的大小。

通过接入不同的电阻(R20或R21),可获得不同的倍率的集电极电流IC3,电流通过待测电阻Rx形成电压Vx。

通过测量Vx即可获得待测电阻的阻值。

经过计算,可知R20分支可测量的最大电阻值为2kΩ,R21分支为20kΩ。

而P4端则是作为待测电阻的接口。

3、电源模块

图14.电源部分原理图

如图14所示,POWER端接外部直流电源,另外可以利用USB(UniversalSerialBus)端口直接提供5V电压。

7805是三端稳压集成芯片,起稳压输出的作用,通过外围电路的组合,可以稳定输出5V直流电压。

图中的LED灯可以作为电源电路开始工作的提示器。

4、报警模块

图15.报警提示部分原理图

图15所示为蜂鸣器驱动电路。

当出现测量值超出预定量程时,蜂鸣器会发出“嘀”声报警。

其实质是通过编程使单片机的引脚输出低电平,使Q1导通,蜂鸣器发声。

5、单片机最小系统

图16.单片机最小系统

如图16所示,本次设计采用STC公司的89C52型单片机作为控制芯片,并采用RC上电复位电路用于单片机复位,配合频率为11.0592MHz的外部震荡电路,作为外部时钟信号,提供单片机片内各种操作的时间基准(张景璐等,2010)。

P1.0-P1.3作为按键的输入线,P1.4及P1.5分别作为ADC芯片I2C总线的时钟线和数据线。

P0口作为1602液晶的数据总线,P2.0和P2.1作为1602液晶的控制线,另外P3.7用作控制蜂鸣器。

6、显示输出模块

图17.显示输出部分原理图

如图17所示,采用1602液晶作为输出显示器,读数更加准确和直观,能显示比数码管更丰富的信息。

其中RS和RE为液晶的控制线,DB0-DB7为液晶的数据线,均与单片机的相应I/O口相连。

Vo端接上一个10k的电位器再接地,通过调节电位器,可以调节液晶字符显示的明暗度,防止“鬼影”现象的出现。

7、开关及量程选择模块

图18.开关及量程选择部分原理图

如图18所示,拨码开关S1的左侧三个端口分别接上分压器、分流器、电阻测量电路,使用时拨动不同开关,连通对应的电路,测量不同的物理量。

而下面的4个按键,负责通知单片机当前所选的待测物理量及档位,改变液晶显示器数值的输出方式。

8、电路工作描述

将相应的控制程序写入单片机是使电路各部分能协调工作,完成既定任务的前提。

通过按钮选取要测量的物理值(电压、电流或电阻),然后通过选取合适的量程进行测量,以获得更准确的测量数据。

单片机通过I2C总线控制PCF8591芯片,完成A/D转换,并通过该总线读取其输出的数据。

单片机根据所选档位和量程对数据进行处理后,送至1602液晶处进行输出。

若发生待测信号超出量程的情况,蜂鸣器会立即报警,提示使用者切换更高的量程进行测量。

另外,通过单片机的复位按钮,可以对系统进行清零。

三、系统软件设计

本系统软件设计的思路是:

使用C语言,将各部分的驱动程序(1602液晶、模数转换器、按键、蜂鸣器等)分别编写在不同子文件中,减少主文件的复杂度,增加可读性。

然后,在主函数中,先初始化液晶显示器,然后进入大循环。

在大循环中,读取模数转换芯片转换后数据,并根据按键的输入情况,确定物理量和量程,如果发生超出量程的情况,调用蜂鸣器进行报警,否则对获取的数据进行一定处理,最后发送至液晶显示器进行输出。

主要程序模块流程图如下所示

图19.软件总流程图

Y

图20.电压测量流程图

图21.电流测量流程图

开始

电阻量程选择

选择2kΩ档位

选择20kΩ档位

结束

是否超过2k?

N

Y

图22.电阻测量流程图

四、仿真测试

1、功能仿真

(1)电压表仿真

如图23所示,当输入的模拟直流电压为1.6V时(2V电压档),系统测量后,液晶显示输出电压值为1.6V。

图23.2V电压表仿真图

如图24所示,当输入的模拟直流电压为16V时(20V电压档),系统测量后,液晶显示输出电压值为16V。

图24.20V电压表仿真图

(2)电流表仿真

如图25所示,当输入的模拟直流电压为180mA时(200mA电流档),系统测量后,液晶显示输出为180mA。

图25.200mA电流表仿真图

如图26所示,当输入的模拟直流电压为1.8A时(2A电流档),系统测量后,液晶显示输出为1.8A。

图26.2A电流表仿真图

(3)欧姆表仿真

如图27所示,当接入的电阻阻值为1.5kΩ时(2kΩ欧姆档),系统测量后,液晶显示输出阻值为1.39kΩ。

图27.2kΩ电阻表仿真图

如图28所示,当接入的电阻阻值为15kΩ时(20kΩ欧姆档),系统测量后,液晶显示输出阻值为13.9kΩ。

图28.20kΩ电阻表仿真图

2、实际电路

本次设计电路走线较多且比较复杂,双面板比单片面板更适合用在复杂的电路上。

如图29所示,上层为红色走线,底层为蓝色走线。

图29.PCB布线图

图30.PCB制版成品

图31.成品外观

3、测试结果

表3.电压测量数据

稳压源输出值(V)

测量值(V)

误差(%)

0.15

0.15

0

0.55

0.51

-7.3

1.00

0.97

-3

1.50

1.50

0.0

1.70

1.70

0.0

1.90

1.86

-2.1

3.30

3.52

+6.7

5.00

4.98

-0.4

7.55

7.60

+0.7

9.50

9.68

+1.9

12.50

12.37

-1.0

15.0

14.75

-1.7

表4.电流测量数据

稳压源输出值(mA)

测量值(mA)

误差(%)

55

56

+1.8

70

72

+2.9

80

81

+1.3

120

119

-0.8

180

193

+3.9

表5.电阻测量数据

标称值(kΩ)

测量值(kΩ)

误差(%)

1

0.92

-8.0

2

1.95

-2.5

2.7

2.54

-5.9

3.3

3.1

-6.1

4.7

4.56

-3.0

10

9.18

-8.2

13.3

12.9

-3.0

五、总结

经过了一个多月的尝试和努力,终于完成了本次数字万用表的设计。

数字万用表一直是电子设计领域最重要且最基本的测量仪器之一,在电子设计的排错和调试等方面起着非常重要的作用。

本次的设计的数字万用表,能体现数字万用表的基本原理,实现了万用表最基本的几个功能,能测量20V以下的直流电压,200mA以下的直流电流及20kΩ以下的电阻值。

经过初步测试,直流电压测量值的误差均在8%以下,在个别的区段,如1.5V到2V之间,误差较小,甚至可以完全准确地测出稳压源的输出电压。

直流电流测量值的误差在0到200mA区段总体上较低,均不超过4%。

但是,一小部分电路设计在方面出现了问题,仿真的理论结果与实际电路工作时的效果相差较大,测量200mA以上的电流时,会出现电源短路的问题,无法安全地进行测量。

在电阻值的测量方面,误差稍大,最大的有8.2%的误差,但仍在可接受范围之内。

经过分析,导致测量值存在误差的原因是多样的,可能是电路中的衰减电阻阻值不够准确,也有可能是没有屏蔽好高频数字信号的干扰,造成了一定的误差。

另外,在电阻-电压变换电路中,使用了定值的电阻而非电位器,不能调整三极管的集电极电流,未能使电路工作在最佳的状态,是造成电阻测量误差稍大的重要原因之一。

六、附录

图32.整体电路原理图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2