基于单片机的数字电压表设计

2014-11-12 06:03
晋城职业技术学院学报 2014年1期
关键词:调试单片机精度

李 成

(江西农业大学 南昌商学院,南昌 330044)

一、方案论证与比较

(一)数字电压表设计常用的基本方法

方案一(如图1所示)

采用比较器、减法器、电子开关以及少量的分立元件,将电压输出到ADC0809再转换为数字信号后送单片机控制,然后通过显示器显示。但由于元件分散性太大,即使采用了单片机最小系统,由于电子开关IC4066的内阻较大,导致在其上的压降也较大,使小信号衰减严重,输入到ADC0809的电压值与待测电压相差较远,抗干扰能力较弱,不能达到本题目的基本要求。

图1 方案一示意图

方案二(如图2所示)

采用压频转换器,将输入电压转换成相应的频率信号,再用单片机对其频率进行采样测量,然后再通过软件查表的方式,查出与此频率相对应的电压值。本方案可靠性高,易于控制,精度也较高,但由于条件有限,短时间内无法买到V-F转换器,故此方案难以实现。

图2 方案二示意图

方案三(如图3所示)

通过单片机控制的DAC0832产生不同的输出电压值控制减法器,在足够的精度范围内使输入电压满足ADC0809输入有效范围,最后通过单片机读取、处理并显示数据,其精度可以达到5mV。

图3 方案三示意图

(二)方案论证

方案一中,虽然理论上达到要求,但实际操作中因为电子开关内阻的存在,导致在其上面的压降较大,故而产生的误差也较大,所以我们不采用此方案。

方案二中采用的V-F转换器能够达到设计要求,扩展和发挥也较方便,但由于条件的限制,V-F转换器暂时无法买到,故而也没有采取。

方案三中,通过单片机来控制DAC0832,使其输出电压分别为 0V、1.28V、2.56V、3.84V、5.12V、6.4V、7.68V、8.96V、10.24V,来控制输入到减法器电压值,从而调整输入到ADC0809的电压,同时将ADC0809的基准电压调到1.28V,这样精度就可达到5mV,从而在精度和输入电压范围等各方面达到了题目的要求,经过权衡比较,我们采取了此方案。

二、系统设计

(一)总体设计

系统框图如图4所示:

图4 系统框图

模块说明:

1.减法器的基准档位电压输入电路

用单片机控制DAC0832,使其输出分别为0V、1.28V、2.56V、3.84V、5.12V、6.4V、7.68V、8.96V、10.24V等各档位,然后经反相器反相后送入到减法器的反相端。

2.减法器电路

用运算放大器NE5532设计一个减法器(增益为1),将待测电压输入到同相端,根据D/A转换输入到反相端不同的电压值,可得到满足DAC0809输入有效范围的输入电压,从而保证了转换精度。

3.模数转换电路

采用集成芯片ADC0809将其基准电压调至1.28V,使其精度达到了5mV,其输入端是减法器的输出,然后与单片机接口。

4.单片机控制模块

采用AT89C52单片机,辅以8279、键盘、显示器等器件构成单片机最小系统,来控制其它各部件的正常工作。

(二)各模块设计与计算

1.ADC0809基准电压计算

因为ADC0809是8位的数模转换器,根据精度计算公式:

在此,当采用基准电压为5.12V时,n=8,VREF(+)=5.12V,VREF(-)=0V,所以其精度为 20mv,刚好达到题目要求,然而当有干扰时此精度达不到;故为了提高精度,满足题目要求,需降低ADC0809的基准电压,现将其调为1.28V,其精度为1.28V/256=0.005V即5mV,完全达到题目要求。

2.ADC0809的电压输入计算

因为ADC0809的量化误差为1LSB,要达到5mV的精度要求,其输入电压必须在0~1.28V之内,否则的数据将会是全1,即无效数据。在满足设计的输入电压范围的要求前提下,为了将ADC0809的输入电压范围限定在1.28V以内,需在前放置一个减法器,控制输入电压量。当待测电压处于下列各档次时,对应的DAC0832的输出电压如表1所示:

表1 DAC0832的输出电压表

3.减法器电路

其原理图如图5所示。

要使其达到减法器要求(增益为1,必须使Rf=R1,故可通过电位器来调节使反馈电阻Rf=R1=100K,所以 UO=Ui—UR,通过变化 UR使 UO控制在1.28V之内,从而达到题目要求。

图5 单片机最小系统

(三)软件系统

1.流程图(如图6所示)

图6 主程序和子程序流程图

图7 系统设计图

2.D/A转换和A/D转换部分程序

3.电压测量程序

本程序采取将A/D转换的数字信号送到单片机后,再通过单片机送显示器显示,达到用显示器显示各待测电压值的要求。

系统设计图(如图7所示)

三、系统调试

(一)硬件调试

1.ADC0809的调试

连接好ADC0809以及相关的电路后,开始调试,先将基准电压调至1.28V,然后输入不同的电压,再编程用单片机显示电压值,测量数据如表2所示。根据下表的数据可知,其误差在5mV之内。

基准电压由稳压和分压电路得到,因电位器存在误差,只能将参考电压调到1.27V。

基准电压电路图如图8所示:

表2 ADC0809的调试

2.DAC0832与减法器的调试

连接好DAC0832与减法器以及相关电路后,使DAC0832基准电压调为10.24V,然后用单片机来输入不同的数据,再用数字万用表测量其输出电压以及减法器的输出电压值,测量数据如表3所示。根据表3数据可知,该减法器完全能够达到要求。

表3 DAC0832与减法器的调试

(二)软件调试

编好各模块子程序后,分别进行调试,当各模块调试成功后,再系统调试一次。得知,该程序完全正常。

(三)软件、硬件一起调试

编好各模块程序后,连接好各模块的线路(特别要注意各芯片的电源端和地端的接法),再用仿真器运行仿真,最后通过观察结果可知,该程序能使系统运行,而且能达到设计要求。

四、指标测试及结果分析

(一)测试仪器

数字万用表:DY2102万用表一块

仿真器:TOPICE/52Y仿真仪一台

示波器:CA8020A示波器一台

电压源:EM1715A电压源一台

(二)指标测试

数据见表4所示:

表4 指标测试

从表4数据可知,待测电压范围可达到12.8V,而题目只要求到10V,完全满足题目的设计要求。

由理论计算可知,整个系统误差为5mv,根据表中的数据可知,实际误差为10mv左右,而题目只要求20mV,所以,本设计方案完全达到题目的精度要求。

(三)误差分析

对于任何系统,误差是不可避免的。本设计的输出信号误差主要来自于以下几个方面:

1.D/A,A/D转换器件的非理想性误差

虽然我们在设计中充分考虑到了精度要求,但转换器件本身存在的固有量化误差是不可能克服的,同时转换器件的转换速率、温度系数、输入输出电平的差异等因素都造成了转换器件的非理想特性。

2.运算放大器、电阻电容引起的误差

设计中采用的运放和电阻电容等一些常用元件,在实际应用中,都或多或少存在着误差,如:随着温度的变化,电阻阻值的变动以及运放的漂移,电容的非理想性造成了系统频率相应的改变。

3.电源噪声、数字信号跳变引起的噪波和布线中的分布电容和感生电感

在PCB布线中由于迹线和部分元件的非理想性,在高频工作时,这些器件产生分布电容感生电感。电网电压的变化引起的欠压、过压以及在线路传输中随机窜入的高频噪声等都有可能通过电源引入到系统中。设计中使用大量数字芯片高频工作时的电平跳变以及单片机晶振都是误差的产生源。我们在电路的实际设计中,采用了多种措施来减少这种误差的渗入,如:电源的滤波、线间的去耦、重干扰源的屏蔽、加宽电源线和地线以减少噪声的传输路径。

五、结束语

本系统采用单片机控制ADC0809和DAC0832实现了对电压信号的测量,并通过数码管显示,总体来看完成了题目的基本要求,达到了基本指标,而且还完成了发挥部分的要求。由于时间有限,我们认为还可以对本系统进行扩充。本方案设计的系统易于扩展,将其他信号通过相应的传感器件和相应的电路转换成电压信号,再通过本系统设计就可以对不同性质的信号进行高精度测量,如:交流电压、频率、电流、温度、压力、光强等。实用范围比较广泛。本系统最大的特点是高精度数字化,用低价格、低精度器件实现高价格、高精度器件的功能。

[1]江晓安.数字电子技术[M].西安:西安电子科技大学出版社,2008.

[2]江晓安.模拟电子技术[M].西安:西安电子科技大学出版社,2010.

[3]刘书明,刘斌.高性能模/数与数/模转换器件[M].西安:西安电子科技大学出版社,2009.

[4]张伟.单片机原理及应用[M].北京:机械工业出版社,2012.

[5]何立明.单片机中级教程[M].北京:北京航空航天大学出版社,2006.

猜你喜欢
调试单片机精度
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
基于DSPIC33F微处理器的采集精度的提高
基于航拍无人机的设计与调试
FOCAS功能在机床调试中的开发与应用
无线通信中频线路窄带临界调试法及其应用
GPS/GLONASS/BDS组合PPP精度分析
调压柜的调试与试运行探讨
Microchip推出两个全新PIC单片机系列