量程自动切换简易数字电压表的设计与制作

一、目的和意义

人类赖以生存和发展的三种基本资源是物质、能量和信息。现代信息科学技术的三大支柱是测量技术、通信技术、计算机技术。在这三大技术中,信息获取(测量)是最主要的,是信息的源头。

对电信号来说,电压量是表征信号幅度大小的一个重要参数。电压测量广泛存在于科学研究与生产生活中,电压测量是许多电测量与非电测量的基础,是电子测量的重要内容。

二、材料和要求

主要元器件:单片机STC89C52,AD/DA模块PCF8591P,运放LM324,4位数码管。

设计要求:设计一个能够测量直流电压的数字电压表。该电压表上电或按键复位后能自动显示系统提示符P.”,进入测量准备状态,按测量开始键则开始测量,并将测量值显示在显示器上,按测量结束键则自动返回“P.”状态。

指标要求:测量电压范围0~2V,显示精度:0.01V。利用继电器进行量程的自动切换。0-200mV为一个量程,200mV-2V为一个量程。

三、制作过程

按照单片机开发板物料元件顺序和文档资料,焊接开发板。对焊接完成的开发板进行测试,主要测试电源、数码管、串口通信和程序下载电路。

使用洞洞板和滑动变阻器搭建一个可调直流电压源。将PCF8591模块的模拟输入端与可调直流电压源相连,把AD/DA模块PCF8591与单片机相连,使用单片机通过I2C协议读取AD采样结果,结合万用表测得的电压数值,可以得到AD读数与电压数值的转换关系。

根据AD读数与电压数值的转换关系,编写单片机程序将AD转换结果换算成电压通过四位数码管显示,可以实现0~2V量程数字电压表。

使用LM324集成运算放大器芯片在洞洞板上搭建放大倍数为11倍的同相放大电路,可将0~200mV的电压输入放大为0~2V的电压输出,进而构成0~200mV量程数字电压表。

把继电器COM端连接至AD模块的模拟输入端口AIN0,NC端连接待测电压,NO端连接运算放大器输出。运算放大器同相输入端连接待测电压。继电器设置为低电平触发状态。

借助万用表进行标定。当COM端与NC端相连,调节滑动变阻器使万用表显示2V时,记下AD读数为102,标定2V量程。当COM端与NO端相连,调节滑动变阻器使万用表显示200mV时,记下AD读数为116,标定200mV量程。

编写程序控制继电器,当使用200mV量程测得电压大于201mV时切换到2V量程,当使用2V量程测得电压小于196mV时切换到200mV量程,实现量程的自动切换。

实现通过按键改变工作状态的功能。

四、基本原理

2V量程测量原理:当待测电压为2V时,A/D读数为102,则可以计算得到A/D每变化一个字对应电压改变19.6mV,由此实现2V量程的电压测量。

200mV量程测量原理:使用同相放大电路将待测电压放大11倍,将放大后的电压进行A/D转换,当待测电压为200mV时,A/D读数为116,则可以计算得到A/D每变化一个字对应电压改变1.72mV,由此实现200mV量程的电压测量。

量程自动切换原理:为了避免在200mV附近“振铃”持续切换量程,设定只有当电压大于201mV时才会从200mV切换到2V量程,只有当电压小于0.19V时才会从2V切换到200mV量程。

四位LED数码管显示原理:所用的共阳数码管有4个位选端和7个段选端,以及一个小数点dp端,用循环扫描的方法显示。位选端低电平选中要显示的位,其余位高电平不显示;段选端低电平点亮,高电平不亮。

PCF8591模块使用原理:使用I2C协议通信。根据PCF8591芯片手册其地址前四位为固定地址1001,之后的三位为可编程地址,最后一位选择读/写。模块已经将芯片的三个可编程地址端接地,即可编程地址为000。使用I2C发送1001 0000对PCF8591进行写寻址,然后发送控制字节00 00 00 00设置PCF8591工作在单端输入状态并选择通道0。此时PCF8591已处于期望的A/D工作状态。发送1001 000 1对PCF8591进行读寻址,接收的字节即为A/D转换结果。

I2C通信基本原理:使用SDA数据线和SCL时钟线完成通信。空闲时SDA和SCL均为高电平。数据传输时SCL为高电平期间SDA应保持稳定。启动时,SCL为高电平期间SDA从高电平转换为低电平发送开始信号。停止时,SCL为高电平期间SDA从低电平转换为高电平发送结束信号。

五、结果及分析

硬件实物图和实验现象如下:

图1 测量准备状态

图2~图5 数字电压表200mV量程测量结果

图6~图13 数字电压表2V量程测量结果

表1 数字电压表200mV量程测量误差(电压单位:mV)

测量值

100

150

176

198

实际值

111

153

178

197

绝对误差

-11

-3

-2

1

引用误差

-5.5%

-1.5%

-1.0%

0.5%

表2 数字电压表2V量程测量误差(电压单位:V)

测量值

0.21

0.50

0.76

1.01

1.25

1.49

1.74

1.94

实际值

0.21

0.50

0.76

1.01

1.24

1.49

1.74

1.93

绝对误差

0

0

0

0

0.01

0

0

0.01

引用误差

0%

0%

0%

0%

0.5%

0%

0%

0.5%

分析表1数据可知,在200mV量程下数字电压表的测量误差随着被测电压值的降低而增大,推测这种误差是LM324运算放大器的失调、偏置和漂移造成的。

分析表2数据可知,在2V量程下数字电压表的测量误差较小,测量数据中的最大引用误差不超过0.5%,最大绝对误差不超过0.01V,符合设计指标要求。

200mV量程有运算放大器参与且误差与被测电压值负相关,2V量程没有运算放大器的参与,误差与被测电压值没有明显的相关关系。这种对比支持了上述LM324运算放大器的失调、偏置和漂移会造成200mV量程产生此种误差的推测。

六、结论

本次使用STC89C52单片机、PCF8591模数转换模块、LM324集成运算放大器芯片和其他元器件设计并制作了一个能够测量直流电压的数字电压表。

此数字电压表上电或按键复位后能自动显示系统提示符“P.”,进入测量准备状态,按键开始测量后能将测量值显示在四位数码管上,按键结束测量后能自动返回“P.”状态。

经测试,此数字电压表能够准确测量0~2V的直流电压并以0.01V的精度显示,此数字电压表能利用继电器切换量程,根据被测电压大小自动从200mV和2V量程中选择一个合适的量程完成测量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值