数字电压表
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 x 16 Liquid Crystal Display
U? +5 51 50 49 48 47 46 45 44 35 36 37 38 39 40 41 42 54 55 56 57 58 59 60 61 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 (AD0) (AD1) (AD2) (AD3) (AD4) (AD5) (AD6) (AD7) PB0 (SS) PB1 (SCK) PB2 (MOSI) PB3 (MISO) PB4 (OC0) PB5 (OC1A) PB6 (OC1B) PB7 (OC2/OC1C) TOSC2/PG3 TOSC1/1PG4 PD0 (SCL/INT0) PD1 (SDA/INT1) PD2 (RXD1/INT2) PD3 (TXD1/INT3) PD4 (IC1) PD5 (XCK1) PD6 (T1) PD7 (T2) PE0 (RXD0/PDI) PE1 (TXD0/PDO) PE2 (XCK0/AIN0) PE3 (OC3A/AIN1) PE4 (OC3B/INT4) PE5 (OC3C/INT5) PE6 (T3/INT6) PE7 (IC3/INT7) PG0 (WR) PG1 (RD) PG2 (ALE) RESET PEN XTAL2 XTAL1 10 11 12 13 14 15 16 17 18 19 25 26 27 28 29 30 31 32 2 3 4 5 6 7 8 9 33 34 43 20 1 23 24 LCD_DB0 LCD_DB1 LCD_DB2 LCD_DB3 LCD_DB4 LCD_DB5 LCD_DB6 LCD_DB7 LCD_RS LCD_RW LCD_E LCD_CS1 LCD_CS2 LCD_RSET RELAY
几个要测量量的程序介绍:
最大值: 最大值: 采样100次后通过比较得到最大值,源码如下: 采样100次后通过比较得到最大值,源码如下: if(Ad_Max <= adbuffer[i-1]) // adbuffer adbuffer[i数组为AD采样后数值存放的数组 数组为AD采样后数值存放的数组 { Ad_Max = adbuffer[i-1]; adbuffer[i}
最小值: 最小值:
采样100次后通过比较得到最小值,源码如 采样100次后通过比较得到最小值,源码如 下: if(Ad_Min >= adbuffer[i-1]) //同上 adbuffer[i//同上 { Ad_Min = adbuffer[i-1]; adbuffer[i}
平均值: 平均值:
2:量程判断可以采用硬件实现 对于交流电压信号的大小在某一个范围的 判断可以用一个窗口比较器, 判断可以用一个窗口比较器,比较其限定的 最小值及最大值,利用硬件自动实现量程 切换.由于比赛时间相对紧张,这个留着 后面的时间来完善.
单片机最小系统:
+5 LCD_LIGHT LCD_Vo LCD_E LCD_RS LCD_RW LCD_DB[7..0]
U1A 1
后前前前
10K
交流地迁移电路
:
+5 D3
前前前前前前
C2 200uF R4 5.1K R5 5.1K +5 18 10K OP07A 3 -5V 4K7 D1 104
Port
PF0 Port
+5
8 6 4 R6 10K -5
1K
220uF
TL431
1.280V 10K
4K7Βιβλιοθήκη 件主程序简要流程图:其C程的实现可叙述如下:
先对经ADC量化编码后的每一点数据平方, 先对经ADC量化编码后的每一点数据平方, 平方后的数作累加,全部累加完成后,除 以采样的点数,再将这个数进行开方运算, 所得的结果就是所要求的RMS值。这个值 所得的结果就是所要求的RMS值。这个值 的求法是从基本的定义出发,因此不光是 对于正弦波信号有用,对于其它的周期性 的信号也同样适用.可以求出任意一个波 形的有效值.
基本概念简述:
电压信号的量通常用该信号中的最大值,最小 值,平均值与真有效值等来描述 .
,
上图一段电路所示的是一个具有代表性的正弦 电压信号数学表达式如下: U = U m cos( ω t + φ ) 称为正弦量的三要素。U m 称 为正弦量的振幅. 为正弦量的振幅. ω 称为正弦量的角频率, φ 称为正弦量的初始相位。这几个量是一个信号 中比较重要的量。
有效值,也称均方根值, RMS.在时 有效值,也称均方根值,即RMS.在时 域中, 域中, 有效值数学表达式如下:
U
RMS
=
1 T
T
∫
0
U
2
dt
经过ADC转换变成离散的量后,其表达 经过ADC转换变成离散的量后,其表达 修正如下:
Vrms是被测量信号的真有效值,N Vrms是被测量信号的真有效值,N是每周期采样点 数,v(i)是被测信号瞬时采样的数字量。 数,v(i)是被测信号瞬时采样的数字量。
数字电压表
物电学院0604班 物电学院0604班 李恒,高熙,陈永刚
数字电压表(Digital Voltmeter): 数字电压表(Digital Voltmeter):
简称DVM,它是采用数字化测量技术,把连续的 简称DVM,它是采用数字化测量技术,把连续的 模拟量转换成不连续、离散的数字形式并加以显 示的仪表。传统的指针式电压表功能单一、精度 低,读数不方面.不能满足数字化时代的需求, 采用单片机的数字电压表,其精度高、抗干扰能 力强,可扩展性强、集成方便,还可与PC进行实 力强,可扩展性强、集成方便,还可与PC进行实 时通信等优点。目前,由各种单片A/D 时通信等优点。目前,由各种单片A/D 转换器构 成的数字电压表,已被广泛用于电子及电工测量、 工业自动化仪表、自动测试系统等智能化测量领 域,显示出强大的生命力。
系统方框图:
单片机选型简介:
AVR单片机是高速单片机,硬件采用哈佛(Harward)结构, AVR单片机是高速单片机,硬件采用哈佛(Harward)结构, 达到一个时钟周期可以执行一条指令,绝大部分指令都为 单周期指令,而MSC-51要12个时钟周期执行一条指令, 单周期指令,而MSC-51要12个时钟周期执行一条指令, 且其硬件资源远没有AVR丰富;同时它支持程序的在系统 且其硬件资源远没有AVR丰富;同时它支持程序的在系统 编程(ISP),开发门槛较低,有多个编译器可供选择。 编程(ISP),开发门槛较低,有多个编译器可供选择。 性价比高;有丰富的外设,如 AD 转换器、PWM、 转换器、PWM、 UART接口等,部分型号还可以使用片内振荡器提供系统 UART接口等,部分型号还可以使用片内振荡器提供系统 1~8 MHz的系统时钟,使该类单片机无外加晶振器件即可 MHz的系统时钟, 工作;I/O口功能强、驱动能力强。工业级产品。加之 工作;I/O口功能强、驱动能力强。工业级产品。加之 AVR单片机高速,并且片内含有硬件乘法器,这对于仪表 AVR单片机高速,并且片内含有硬件乘法器,这对于仪表 中的大量数值运算是非常有利的。我们选用电工中心田老 师的ATmega128开发板为硬件平台,编译器采用开源的 师的ATmega128开发板为硬件平台,编译器采用开源的 winavr编译器。 winavr编译器。
源码简介:
if(adbuffer[iif(adbuffer[i-1]>Ad_adjust) {// AdMidRms是求rms时要用到的中间变量 AdMidRms是求rms时要用到的中间变量 AdMidRms = (double) (adbuffer[i-1](adbuffer[i-1]Ad_adjust) ;//Ad_adjust是将最最前端输入为0伏时,信号经电平 ;//Ad_adjust是将最最前端输入为0 迁移电路抬升后的电压经ADC转换后的数字值。 迁移电路抬升后的电压经ADC转换后的数字值。 } else { AdMidRms = (double) (Ad_adjust-adbuffer[i-1]) ; (Ad_adjust-adbuffer[i}//if …else …的作用就是让AdMidRms的值为采集到电压的绝对值 的作用就是让AdMidRms的值为采集到电压的绝对值 AdMidRms=AdMidRms*AdMidRms; //每个采样的后数平方 //每个采样的后数平方 AdRms += AdMidRms; //作累加 //作累加 AdRms /= 100.0 ; //100个采样点,浮点数作除法运算 //100个采样点,浮点数作除法运算 AdRms = sqrt(AdRms); //开方,在<math.h> //开方,在<math.h>
平均值即是电压信号中直流分量,实现源 码如下: AdAverage += adbuffer[i-1];//作累加 adbuffer[i-1];//作累加 采样累加完成后: AdAverage /= ADHITS;// ADHITS为 ADHITS为 一宏定义,采样的点数
有效值(root-meau-square)计算: 有效值(root-meau-square)计算:
设计结果:
本次设计中,我们很好的完成了题目所有要求, 除了精度与量程切换方面有点欠缺外,其余部分, 包括发挥部分中的计算输入电压信号的有效值及 将电压信号的变化曲线描绘在点阵型液晶上我们 都做到了。 而且显示的效果很好。在硬件上有两 点还可以改进的地方就是: 1:采用一个高精度的ADC,使测量的精度更 1:采用一个高精度的ADC,使测量的精度更 高.也可以换用其它型号的MCU,例如msp430 高.也可以换用其它型号的MCU,例如msp430 中有自带的12精度的AD转换器, 中有自带的12精度的AD转换器,是个不错的选 择.
硬件
电源电路:
7805 Port Vin Vout GND 0.1uF 0.1uF 220uF +5
Port
0.1uF Port Vin GND Vout 7905
0.1uF
-5
衰减及量程切换电路 :
+5
PB6(继继继继继) input 10k 0.01uF 470k
Q1 9011
K1 +5 1 1 inputwave P? 3 BNC 190k 4 Relay-SPDT 2 1 -5
U
m
ω φ
要测的物理量如下:
最大值:正弦信号幅度的极大值 最小值:正弦信号幅度的极小值 平均值:正弦信号中的直流分量 有效值:正弦信号电压在一个周期产生的 平均效应换算为等效的直流量有值,用来衡量和 比较周期电压的效应.
根据题目要求,系统设计需要基于自动控制原理,实现电 压量程的自动切换、数据采样、电压显示等功能。主要来 说,系统由模拟信号调理电路、A/D转换电路、按键输入 说,系统由模拟信号调理电路、A/D转换电路、按键输入 电路、单片机控制系统、LCD显示系统等几个模块组成。 电路、单片机控制系统、LCD显示系统等几个模块组成。 对于发挥部分中的求输入电压的有效值, 对于发挥部分中的求输入电压的有效值,目前常用的方法 是采用RMSDC的方法,即用集成电路直接把交流信号变 是采用RMSDC的方法,即用集成电路直接把交流信号变 成直流输出,然后对直流输出信号进行处理,比如采用 A/D公司的AD536A真有效值转换芯片。这种方法测量范 A/D公司的AD536A真有效值转换芯片。这种方法测量范 围窄、精度低、转换芯片价格高、功能单一。还有采用直 接对交流信号进行整流的方法来实现直流变换,价格便宜, 但是精度更低,很难满足实际应用中的要求。而且题目中 要求要将输入电压的信号变化曲线描绘在点阵型液晶中, 这很明显的告诉我们必须建立一个数据采集系统。因此, 我们决定用数据采集的思想来完成这个题目。
我们所设计的数字电压表是基于AVR单片机的一 我们所设计的数字电压表是基于AVR单片机的一 种电压信号采样测量系统,该设计采用AVR单片 种电压信号采样测量系统,该设计采用AVR单片 机内部自带的AD转换器对输入的低频电压信号 机内部自带的AD转换器对输入的低频电压信号 进行采样,采样的数据存放单片机中, 进行采样,采样的数据存放单片机中,利用相应的 算法求出输入电压信号的最大值,最小值, 算法求出输入电压信号的最大值,最小值,平均值 及有效值。测量范围0 及有效值。测量范围0 ~ ± 20V(直流,交流均可 20V(直流, 测) ,使用1602LCD液晶模块显示各种要测的参 ,使用1602LCD液晶模块显示各种要测的参 数,可以显示一任意周期性的电压信号中的最大 值,最小值,平均值及有效值, 并用点阵型液晶 最小值, 12864显示输入的电压信号的波形变化曲线。 12864显示输入的电压信号的波形变化曲线。
U? +5 51 50 49 48 47 46 45 44 35 36 37 38 39 40 41 42 54 55 56 57 58 59 60 61 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 (AD0) (AD1) (AD2) (AD3) (AD4) (AD5) (AD6) (AD7) PB0 (SS) PB1 (SCK) PB2 (MOSI) PB3 (MISO) PB4 (OC0) PB5 (OC1A) PB6 (OC1B) PB7 (OC2/OC1C) TOSC2/PG3 TOSC1/1PG4 PD0 (SCL/INT0) PD1 (SDA/INT1) PD2 (RXD1/INT2) PD3 (TXD1/INT3) PD4 (IC1) PD5 (XCK1) PD6 (T1) PD7 (T2) PE0 (RXD0/PDI) PE1 (TXD0/PDO) PE2 (XCK0/AIN0) PE3 (OC3A/AIN1) PE4 (OC3B/INT4) PE5 (OC3C/INT5) PE6 (T3/INT6) PE7 (IC3/INT7) PG0 (WR) PG1 (RD) PG2 (ALE) RESET PEN XTAL2 XTAL1 10 11 12 13 14 15 16 17 18 19 25 26 27 28 29 30 31 32 2 3 4 5 6 7 8 9 33 34 43 20 1 23 24 LCD_DB0 LCD_DB1 LCD_DB2 LCD_DB3 LCD_DB4 LCD_DB5 LCD_DB6 LCD_DB7 LCD_RS LCD_RW LCD_E LCD_CS1 LCD_CS2 LCD_RSET RELAY
几个要测量量的程序介绍:
最大值: 最大值: 采样100次后通过比较得到最大值,源码如下: 采样100次后通过比较得到最大值,源码如下: if(Ad_Max <= adbuffer[i-1]) // adbuffer adbuffer[i数组为AD采样后数值存放的数组 数组为AD采样后数值存放的数组 { Ad_Max = adbuffer[i-1]; adbuffer[i}
最小值: 最小值:
采样100次后通过比较得到最小值,源码如 采样100次后通过比较得到最小值,源码如 下: if(Ad_Min >= adbuffer[i-1]) //同上 adbuffer[i//同上 { Ad_Min = adbuffer[i-1]; adbuffer[i}
平均值: 平均值:
2:量程判断可以采用硬件实现 对于交流电压信号的大小在某一个范围的 判断可以用一个窗口比较器, 判断可以用一个窗口比较器,比较其限定的 最小值及最大值,利用硬件自动实现量程 切换.由于比赛时间相对紧张,这个留着 后面的时间来完善.
单片机最小系统:
+5 LCD_LIGHT LCD_Vo LCD_E LCD_RS LCD_RW LCD_DB[7..0]
U1A 1
后前前前
10K
交流地迁移电路
:
+5 D3
前前前前前前
C2 200uF R4 5.1K R5 5.1K +5 18 10K OP07A 3 -5V 4K7 D1 104
Port
PF0 Port
+5
8 6 4 R6 10K -5
1K
220uF
TL431
1.280V 10K
4K7Βιβλιοθήκη 件主程序简要流程图:其C程的实现可叙述如下:
先对经ADC量化编码后的每一点数据平方, 先对经ADC量化编码后的每一点数据平方, 平方后的数作累加,全部累加完成后,除 以采样的点数,再将这个数进行开方运算, 所得的结果就是所要求的RMS值。这个值 所得的结果就是所要求的RMS值。这个值 的求法是从基本的定义出发,因此不光是 对于正弦波信号有用,对于其它的周期性 的信号也同样适用.可以求出任意一个波 形的有效值.
基本概念简述:
电压信号的量通常用该信号中的最大值,最小 值,平均值与真有效值等来描述 .
,
上图一段电路所示的是一个具有代表性的正弦 电压信号数学表达式如下: U = U m cos( ω t + φ ) 称为正弦量的三要素。U m 称 为正弦量的振幅. 为正弦量的振幅. ω 称为正弦量的角频率, φ 称为正弦量的初始相位。这几个量是一个信号 中比较重要的量。
有效值,也称均方根值, RMS.在时 有效值,也称均方根值,即RMS.在时 域中, 域中, 有效值数学表达式如下:
U
RMS
=
1 T
T
∫
0
U
2
dt
经过ADC转换变成离散的量后,其表达 经过ADC转换变成离散的量后,其表达 修正如下:
Vrms是被测量信号的真有效值,N Vrms是被测量信号的真有效值,N是每周期采样点 数,v(i)是被测信号瞬时采样的数字量。 数,v(i)是被测信号瞬时采样的数字量。
数字电压表
物电学院0604班 物电学院0604班 李恒,高熙,陈永刚
数字电压表(Digital Voltmeter): 数字电压表(Digital Voltmeter):
简称DVM,它是采用数字化测量技术,把连续的 简称DVM,它是采用数字化测量技术,把连续的 模拟量转换成不连续、离散的数字形式并加以显 示的仪表。传统的指针式电压表功能单一、精度 低,读数不方面.不能满足数字化时代的需求, 采用单片机的数字电压表,其精度高、抗干扰能 力强,可扩展性强、集成方便,还可与PC进行实 力强,可扩展性强、集成方便,还可与PC进行实 时通信等优点。目前,由各种单片A/D 时通信等优点。目前,由各种单片A/D 转换器构 成的数字电压表,已被广泛用于电子及电工测量、 工业自动化仪表、自动测试系统等智能化测量领 域,显示出强大的生命力。
系统方框图:
单片机选型简介:
AVR单片机是高速单片机,硬件采用哈佛(Harward)结构, AVR单片机是高速单片机,硬件采用哈佛(Harward)结构, 达到一个时钟周期可以执行一条指令,绝大部分指令都为 单周期指令,而MSC-51要12个时钟周期执行一条指令, 单周期指令,而MSC-51要12个时钟周期执行一条指令, 且其硬件资源远没有AVR丰富;同时它支持程序的在系统 且其硬件资源远没有AVR丰富;同时它支持程序的在系统 编程(ISP),开发门槛较低,有多个编译器可供选择。 编程(ISP),开发门槛较低,有多个编译器可供选择。 性价比高;有丰富的外设,如 AD 转换器、PWM、 转换器、PWM、 UART接口等,部分型号还可以使用片内振荡器提供系统 UART接口等,部分型号还可以使用片内振荡器提供系统 1~8 MHz的系统时钟,使该类单片机无外加晶振器件即可 MHz的系统时钟, 工作;I/O口功能强、驱动能力强。工业级产品。加之 工作;I/O口功能强、驱动能力强。工业级产品。加之 AVR单片机高速,并且片内含有硬件乘法器,这对于仪表 AVR单片机高速,并且片内含有硬件乘法器,这对于仪表 中的大量数值运算是非常有利的。我们选用电工中心田老 师的ATmega128开发板为硬件平台,编译器采用开源的 师的ATmega128开发板为硬件平台,编译器采用开源的 winavr编译器。 winavr编译器。
源码简介:
if(adbuffer[iif(adbuffer[i-1]>Ad_adjust) {// AdMidRms是求rms时要用到的中间变量 AdMidRms是求rms时要用到的中间变量 AdMidRms = (double) (adbuffer[i-1](adbuffer[i-1]Ad_adjust) ;//Ad_adjust是将最最前端输入为0伏时,信号经电平 ;//Ad_adjust是将最最前端输入为0 迁移电路抬升后的电压经ADC转换后的数字值。 迁移电路抬升后的电压经ADC转换后的数字值。 } else { AdMidRms = (double) (Ad_adjust-adbuffer[i-1]) ; (Ad_adjust-adbuffer[i}//if …else …的作用就是让AdMidRms的值为采集到电压的绝对值 的作用就是让AdMidRms的值为采集到电压的绝对值 AdMidRms=AdMidRms*AdMidRms; //每个采样的后数平方 //每个采样的后数平方 AdRms += AdMidRms; //作累加 //作累加 AdRms /= 100.0 ; //100个采样点,浮点数作除法运算 //100个采样点,浮点数作除法运算 AdRms = sqrt(AdRms); //开方,在<math.h> //开方,在<math.h>
平均值即是电压信号中直流分量,实现源 码如下: AdAverage += adbuffer[i-1];//作累加 adbuffer[i-1];//作累加 采样累加完成后: AdAverage /= ADHITS;// ADHITS为 ADHITS为 一宏定义,采样的点数
有效值(root-meau-square)计算: 有效值(root-meau-square)计算:
设计结果:
本次设计中,我们很好的完成了题目所有要求, 除了精度与量程切换方面有点欠缺外,其余部分, 包括发挥部分中的计算输入电压信号的有效值及 将电压信号的变化曲线描绘在点阵型液晶上我们 都做到了。 而且显示的效果很好。在硬件上有两 点还可以改进的地方就是: 1:采用一个高精度的ADC,使测量的精度更 1:采用一个高精度的ADC,使测量的精度更 高.也可以换用其它型号的MCU,例如msp430 高.也可以换用其它型号的MCU,例如msp430 中有自带的12精度的AD转换器, 中有自带的12精度的AD转换器,是个不错的选 择.
硬件
电源电路:
7805 Port Vin Vout GND 0.1uF 0.1uF 220uF +5
Port
0.1uF Port Vin GND Vout 7905
0.1uF
-5
衰减及量程切换电路 :
+5
PB6(继继继继继) input 10k 0.01uF 470k
Q1 9011
K1 +5 1 1 inputwave P? 3 BNC 190k 4 Relay-SPDT 2 1 -5
U
m
ω φ
要测的物理量如下:
最大值:正弦信号幅度的极大值 最小值:正弦信号幅度的极小值 平均值:正弦信号中的直流分量 有效值:正弦信号电压在一个周期产生的 平均效应换算为等效的直流量有值,用来衡量和 比较周期电压的效应.
根据题目要求,系统设计需要基于自动控制原理,实现电 压量程的自动切换、数据采样、电压显示等功能。主要来 说,系统由模拟信号调理电路、A/D转换电路、按键输入 说,系统由模拟信号调理电路、A/D转换电路、按键输入 电路、单片机控制系统、LCD显示系统等几个模块组成。 电路、单片机控制系统、LCD显示系统等几个模块组成。 对于发挥部分中的求输入电压的有效值, 对于发挥部分中的求输入电压的有效值,目前常用的方法 是采用RMSDC的方法,即用集成电路直接把交流信号变 是采用RMSDC的方法,即用集成电路直接把交流信号变 成直流输出,然后对直流输出信号进行处理,比如采用 A/D公司的AD536A真有效值转换芯片。这种方法测量范 A/D公司的AD536A真有效值转换芯片。这种方法测量范 围窄、精度低、转换芯片价格高、功能单一。还有采用直 接对交流信号进行整流的方法来实现直流变换,价格便宜, 但是精度更低,很难满足实际应用中的要求。而且题目中 要求要将输入电压的信号变化曲线描绘在点阵型液晶中, 这很明显的告诉我们必须建立一个数据采集系统。因此, 我们决定用数据采集的思想来完成这个题目。
我们所设计的数字电压表是基于AVR单片机的一 我们所设计的数字电压表是基于AVR单片机的一 种电压信号采样测量系统,该设计采用AVR单片 种电压信号采样测量系统,该设计采用AVR单片 机内部自带的AD转换器对输入的低频电压信号 机内部自带的AD转换器对输入的低频电压信号 进行采样,采样的数据存放单片机中, 进行采样,采样的数据存放单片机中,利用相应的 算法求出输入电压信号的最大值,最小值, 算法求出输入电压信号的最大值,最小值,平均值 及有效值。测量范围0 及有效值。测量范围0 ~ ± 20V(直流,交流均可 20V(直流, 测) ,使用1602LCD液晶模块显示各种要测的参 ,使用1602LCD液晶模块显示各种要测的参 数,可以显示一任意周期性的电压信号中的最大 值,最小值,平均值及有效值, 并用点阵型液晶 最小值, 12864显示输入的电压信号的波形变化曲线。 12864显示输入的电压信号的波形变化曲线。