信号峰值检测研究及设计Word格式文档下载.docx
- 文档编号:22766987
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:29
- 大小:616.15KB
信号峰值检测研究及设计Word格式文档下载.docx
《信号峰值检测研究及设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《信号峰值检测研究及设计Word格式文档下载.docx(29页珍藏版)》请在冰豆网上搜索。
摘要
本设计介绍了峰值检测系统的设计原理、软硬件设计方法及系统性能指标调试方法。
被测信号经传感器转化为电信号,再经运放AD620和OP07放大、LF398采样/保持后进行A/D转化和信号处理后数字显示输出。
研究的主要内容有:
方案论证、硬件设计、软件设计、系统实物调试。
硬件设计主要有小信号放大电路、峰值采样/保持电路、AD转换电路、LCD显示电路、电源电路及单片机最小系统。
系统以ATMEGA16单片机作为控制核心,以LF398芯片为峰值采样/保持电路核心,实现了输入信号的峰值提取和数字输出,并给出了具体方案和实验样本。
【关键词】峰值采样/保持电路ATMEGA16单片机LF398
Abstract
Thisdesignintroducedthedesignprincipleofthepeakdetectionsystem、thedesignmethodandsystemperformancetestingmethod.Thesensorsignalistransformedintoelectricalsignals,thentheamplifierAD620andOP07amplifier、LF398sampling/keepontheA/Dtransformationafterandsignalprocessingafterdigitaldisplayoutput.Themaincontentsinclude:
projectargumetntation,hardwaredesign,softwaredesignanddebug.Physicalsystem,Thehardwaredesignmainlysmallsignalamplifiercircuit,peaksampling/keepcircuit,ADtransformcircuit,LCDdisplaycircuit,thepowercircuitchipandminimumsystem.AsthecontrolsystemwithATMEGA16microcontrollercore,withLF398chipforpeaksampling/keepcircuit,realizethecoreoftheinputsignalpeakextractionanddigitaloutputs,andpresentsaschemeandtestsample.
【Keywords】peaksampling/keepcircuitATMEGA16LF398
绪论
峰值检测是电子测量、自动化仪表以及其它相关技术领域常会遇到的问题。
峰值反映了信号极为重要的方面,尤其是小信号[1]。
设计完善的峰值检测系统,不仅可以用于对微弱信号进行检测,还可以通过传感器对其它非电信号如微弱的机械振动实现自动检测和控制,从而构成完整的测控系统,因此峰值检测具有广泛的实用价值。
峰值检测技术是数字存储示波器及数据采集卡中的重要技术之一,用来实现波形的峰值捕捉[2]。
在科研、生产的许多领域都需要用到峰值检测设备,比如检测某建筑物中梁的最大承受力,检测一根钢丝绳的最大允许拉力等,这就需要用到相应的检测设备。
目前常用的方法是先求得检测信号的平均值,但使用平均值掩盖了被检测信号的突然脉冲,从而可能引起系统的失灵及不稳定[3]。
若用由二极管和电阻电容构成的普通峰值检波电路来检波,效果会很差,主要表现在两个方面:
第一,若选择RC电路时间常数大一些,则输出信号的波形会好一些,但检波输出之后的信号幅值和检波之前的信号幅值有明显的差距,输出信号幅值明显降低,峰值检波效率变差,同时,信号快变部分的丢失变得严重。
第二,若选择RC电路时间常数小一些,则会发现检波前后的信号幅值的差异变小,信号之中的快变分量明显变好,但输出信号的波形明显变差,不利于对信号的A/D变换。
为了得到良好的输出波形,同时峰值检波前后的信号幅值差异小,信号快变部分丢失小,检波效率高,以利于A/D变换的需要,一种较好的方法就是采用基于单片机(MCU)和LF398的峰值检波电路,本文分析设计了一台基于AVR单片机(MCU)和LF398的信号峰值检测仪,测量精度为0.005V,采用LCD1602液晶显示峰值。
一峰值检测基本原理
峰值检测电路(PKD,PeakDetector)的作用就是对输入信号的峰值进行提取,产生输出Vo=Vpeak,为了实现这样的目标,电路输出值需一直保持,直到一个新的更大的峰值出现或电路复位。
其效果原理如图1所示:
图1峰值检测基本原理
二系统方案设计
2.1系统总体框图设计
本系统的关键任务是检测出峰值并使之保持稳定和数字显示,其总体结构框图如图2所示。
它由传感器、放大器、采样/保持电路、采样/保持控制电路、A/D转换电路、峰值显示电路组成。
由传感器测量得到一定的输入信号,该输入信号一般较小,需经放大器放大,放大后的信号送入峰值采样/保持电路,单片机将得到的峰值模拟信号进行A/D转换后数字输出并显示。
图2峰值检测系统设计总体结构框图
2.2峰值检测方案设计和论证
方案1:
如图3所示即为一般正峰值检测电路,其工作原理为:
初始状态电容电压Uc等于零时,当输入电压Ui≥0的时候,由于运放U3充当跟随器,故Ui=Uo,二极管D2导通,电压Ui对电容C2充电,直至电容C2上的电压Uc等于输入电压Ui的峰值,只要输入电压Ui≤Uc,二极管D2就截止,电容电压Uc保持不变,即电容电压Uc保持先前检测到的输入电压Ui的峰值,只有输入电压Ui≥Uc时,二极管VD才导通,电容C进行充电。
总之,电容电压Uc始终保持输入电压Ui的峰值。
但此电路存在缺陷,当输入小信号波形的正向峰值小于二极管D2的正向导通电压时,二极管将截止,此峰值检测电路便不能工作。
可见,此电路不能用于检测小信号波形的峰值。
图3一般峰值信号检测原理图
方案2:
如图4所示为小信号峰值检测电路,此电路是由一级运放构成,二极管VD置于反馈回路之中。
运放U1与电容C1一道构成峰值检测电路;
运放U2构成跟随器,使峰值检测电路与后面的电路隔离。
当小信号输入时,即使输入信号的正半周很小,由于运放U1的Av(Av为运放环路电压增益)很大,而U1的输出电压等于Uin·
Av,所以U1的输出电压也足以使二极管导通,迫使运放U1处于跟随状态,从而能实现对输入小信号的峰值进行检测。
虽避免了方案1的不足之处,但是该方案对各个元件的参数要求较高,而且容易受干扰。
图4小信号峰值检测原理图
方案3:
如图5所示,采用LF398作为峰值采样/保持电路的核心,LF398是一种反馈型采样/保持放大器,它的第8个引脚为采样保持器的控制脚,输人高电平时,芯片工作在采样状态,输入低电平时,芯片工作在保持状态。
由于回路阻抗很大,所以保持功能很强,电路的保持功能是依靠C1对Vi的充电实现的,因而对C1的要求较高,一般选用有机薄膜介质电容。
UA741构成比较器电路,将被测信号与保持信号Vo进行比较,若Vi>
Vo,比较器输出高电平,开启LF398进人采样状态,若Vi<
Vo,比较器输出低电平,使LF398保持原有信号峰值。
图5LF398采样电路
通过实验发现,方案3不仅避免了前两种方案的缺陷,而且相比于前两个方案,其峰值保持效果有极大的提升,简化了硬件电路,在一定程度上减少了元件参数的影响,因此本系统采用了方案3。
三硬件设计
3.1单片机A/D转换电路和LCD接口电路
3.1.1ATMEGA16简介
ATMEGA16单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC(ReducedInstructionSetCPU)精简指令集高速8位单片机。
与其它单片机相比,AVR单片机具有如下优点:
●哈佛结构,具备1MIPS/MHz的高速运行处理能力;
●超功能精简指令集(RISC),具有32个通用工作寄存器,克服了如8051MCU采用单一ACC进行处理造成的瓶颈现象;
●快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号FLASH非常大,特别适用于使用高级语言进行开发;
●大部分AVR片上资源丰富:
带E2PROM,PWM,SPI,UART,TWI,ISP,AD,AnalogComparator,WDT等;
●
片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠;
3.1.2ATMEGA16的管脚分布及功能
如图6所示为ATMEGA16的管脚图。
VCC(10):
数字电路的电源。
GND(11、31):
地。
XTAL1(13):
反向振荡放大器与片内时钟电路输入端。
XTAL2(12):
反向振荡放大器输出端。
AVCC(30):
端口A与A/D转换器电源。
AREF(32):
A/D模拟基准电压输入引脚。
图6ATMEGA16L管脚图
RESET(9):
复位输入脚,持续时间超过最小门限时间的低电平将引起系统复位。
端口A(PA0-PA7):
端口A为8位双向I/O口,具有可编程的内部上拉电阻。
端口B(PB0-PB7):
端口B为8位双向I/O口,具有可编程的内部上拉电阻。
端口C(PC0-PC7):
端口C为8位双向I/O口,具有可编程的内部上拉电阻。
端口D(PD0-PD7):
端口D为8位双向I/O口,具有可编程的内部上拉电阻。
3.1.3LCD1602的接口电路
LCD1602引脚分布及功能与ATMEGA16L单片机的接口电路如图7所示。
图7A/D转换电路和LCD显示电路
第1脚:
VSS为地电源。
第2脚:
VDD接5V正电源。
第3脚:
V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平选择数据寄存器、低电平时选择指令寄存器。
第5脚:
RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
第6脚:
E为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:
D0~D7为8位双向数据线。
第15~16脚:
背光电源。
3.2小信号放大电路
在一般的信号放大应用中通常只要经过差动放大电路即可满足要求,然而基本的差动放大电路精密度较差,而且差动放大电路上改变放大增益时,必须调整两个电阻,影响整个放大精确度的因素就更加复杂。
而仪表放大器AD620增益范围宽(增益为1-1000),电源供电范围宽(+2.3V-+18V),功耗低,精确度高,电路简单,只需外接一个电阻就可改变放大倍数[4],图8为AD620的管脚图,其中1、8脚需跨接一电阻来调整放大倍率,4、7脚需提供正负相等的工作电压,2、3脚接入输入信号即可从6脚得到放大后的信号,5脚为参考基准电压输入,如果接地则6脚的输出即为与地之间的相对电压,AD620的放大增益关系式如式
(1)和式
(2)所示,由此2式我们即可推出各种增益所需要的电阻Rg.
G=
+1
(1)
Rg=
(2)
图8AD620管脚图
基于上述有利条件,我们以AD620为核心,OP07(扩大增益范围)为辅构成系统的放大电路,电路如图9所示:
信号经过前级电压跟随器器后送入AD620进行第一级放大,AD620输出信号送至OP07进行第二级放大后输出。
图9信号放大电路
3.3电源电路
电源是整个系统的能量来源,它直接关系到系统能否运行。
在本系统中单片机、液晶显示电路需要5V的电源,因此电路中选用稳压芯片7805;
峰值采样/保持芯片LF398,AD620,OP07等芯片需要+12V和-12V的双电源,因此电路中采用了稳压芯片7812和7912,其最大输出电流为1.5A,能够满足系统的要求,其电路如图10所示。
图10电源电路
四软件设计
4.1ATmega16单片机的模数转换器ADC介绍
AVR的模数转换器ADC具有下列特点:
●10位精度;
●0.5LSB积分非线形误差
●±
2LSB的绝对精度;
●13µ
s~260µ
s的转换时间;
●在最大精度下可达到每秒15kSPS的采样速率;
●8路可选的单端输入通道;
●7路差分输入通道;
●2路差分输入通道带有可选的10×
和200×
增益;
●ADC转换结果的读取可设置为左端对齐(LEFTADJUSTMENT);
●ADC的电压输入范围0~Vcc;
●可选择的内部2.56V的ADC参考电压源;
●自由连续转换模式和单次转换模式;
●ADC自动转换触发模式选择;
●ADC转换完成中断;
●休眠模式下的噪声抑制器(NOISECANCELER);
由于单片机只能处理数字信号,所以外部的模拟信号量需要转变成数字量才能进一步的由单片机进行处理。
ATmega16内部集成有一个10位逐次比较(successiveapproximation)ADC电路。
因此使用AVR可以非常方便的处理输入的模拟信号量。
ATmega16的ADC与一个8通道的模拟多路选择器连接,能够对以PORTA作为ADC输入引脚的8路单端模拟输入电压进行采样,单端电压输入以0V(GND)为参考。
另外还支持16种差分电压输入组合,其中2种差分输入方式(ADC1,ADC0和ACD3,ADC2)带有可编程增益放大器,能在A/D转换前对差分输入电压进行0dB(1×
),20dB(10×
)或46dB(200×
)的放大。
还有七种差分输入方式的模拟输入通道共用一个负极(ADC1),此时其它任意一个ADC引脚都可作为相应的正极。
若增益为1×
或10×
,则可获得8位的精度,如果增益为200×
,那么转换精度为7位。
AVR的ADC功能单元由独立的专用模拟电源引脚AVcc供电。
AVcc和Vcc的电压差别不能大于±
0.3V。
ADC转换的参考电源可采用芯片内部的2.56V参考电源,或采用AVcc,也可使用外部参考电源。
使用外部参考电源时,外部参考电源由引脚ARFE接入。
使用内部电压参考源时,可以通过在AREF引脚外部并接一个电容来提高ADC的抗噪性能。
ADC功能单元包括采样保持电路,以确保输入电压在ADC转换过程中保持恒定。
ADC通过逐次比较(successiveapproximation)方式,将输入端的模拟电压转换成10位的数字量。
最小值代表地,最大值为AREF引脚上的电压值减1个LSB。
可以通过ADMUX寄存器中REFSn位的设置,选择将芯片内部参考电源(2.56V)或AVcc连接到AREF,作为A/D转换的参考电压。
这时,内部电压参考源可以通过外接于AREF引脚的电容来稳定,以改进抗噪特性。
模拟输入通道和差分增益的选择是通过ADMUX寄存器中的MUX位设定的。
任何一个ADC的输入引脚,包括地(GND)以及内部的恒定能隙(fixedbandgap)电压参考源,都可以被选择用来作为ADC的单端输入信号。
而ADC的某些输入引脚则可选择作为差分增益放大器的正、负极输入端。
当选定了差分输入通道后,差分增益放大器将两输入通道上的电压差按选定增益系数放大,然后输入到ADC中。
若选定使用单端输入通道,则增益放大器无效。
通过设置ADCSRA寄存器中的ADC使能位ADEN来使能ADC。
在ADEN没有置“1”前,参考电压源和输入通道的选定将不起作用。
当ADEN位清“0”后,ADC将不消耗能量,因此建议在进入节电休眠模式前将ADC关掉。
ADC将10位的转换结果放在ADC数据寄存器中(ADCH和ADCL)。
默认情况下,转换结果为右端对齐(RIGHTADJUSTED)的。
但可以通过设置ADMUX寄存器中ADLAR位,调整为左端对齐(LEFTADJUSTED)。
如果转换结果是左端对齐,并且只需要8位的精度,那么只需读取ADCH寄存器的数据作为转换结果就达到要求了。
否则,必须先读取ADCL寄存器,然后再读取ADCH寄存器,以保证数据寄存器中的内容是同一次转换的结果。
因为一旦ADCL寄存器被读取,就阻断了ADC对ADC数据寄存器的操作。
这就意味着,一旦指令读取了ADCL,那么必须紧接着读取一次ADCH;
如果在读取ADCL和读取ADCH的过程中正好有一次ADC转换完成,ADC的2个数据寄存器的内容是不会被更新的,该次转换的结果将丢失。
只有当ADCH寄存器被读取后,ADC才可以继续对ADCL和ADCH寄存器操作更新。
ADC有自己的中断,当转换完成时中断将被触发。
尽管在顺序读取ADCL和ADCH寄存器过程中,ADC对ADC数据寄存器的更新被禁止,转换的结果丢失,但仍会触发ADC中断。
4.2ATmega16单片机的模数转换器ADC相关的I/O寄存器
4.2.1ADC多路复用器选择寄存器—ADMUX:
如图11所示
1、位7,6—REFS[1:
0]:
ADC参考电源选择:
REFS1、REFS2用于选择ADC的参考电压源,见表1。
如果这些位在ADC转换过程中被改变,新的选择将在该次ADC转换完成后(ADCSRA中的ADIF被置位)才生效。
一旦选择内部参考源(AVcc、2.56V)为ADC的参考电压后,AREF引脚上不得施加外部的参考电源,只能与GND之间并接抗干扰电容。
2、位5—ADLAR:
ADC结果左对齐选择:
ADLAR位决定转换结果在ADC数据寄存器中的存放形式。
写“1”到ADLAR位,将使转换结果左对齐(LEFTADJUST);
否则,转换结果为右对齐(RIGHTADJUST)。
无论ADC是否正在进行转换,改变ADLAR位都将会立即影响ADC数据寄存器。
图11寄存器ADMUX
3、位4.0—MUX4:
0:
模拟通道和增益选择:
这5个位用于对连接到ADC的输入通道和差分通道的增益进行选择设置,只有转换结束后(ADCSRA的ADIF是“1”),改变这些位才会有效。
表1ADC参考电源选择
REFS1
REFS0
ADC参考电源
外部引脚AREF,断开内部参考源连接
1
AVcc,AREF外部并接电容
保留
内部2.56V,AREF外部并接电容
4.2.2ADC控制和状态寄存器A—ADCSRA:
如图12所示。
图12状态寄存器ADCSRA
1、位7—ADEN:
ADC使能:
该位写入“1”时使能ADC,写入“0”关闭ADC。
如在ADC转换过程中将ADC关闭,该次转换随即停止。
2、位6—ADSC:
ADC转换开始:
在单次转换模式下,置该位为“1”,将启动一次转换。
在自由连续转换模式下,该位写入“1”将启动第一次转换。
先置位ADEN位使能ADC,再置位ADSC;
或置位ADSC的同时使能ADC,都会使能ADC开始进行第一次转换。
3、位5—ADATE:
ADC自动转换触发允许:
当该位被置为“1”时,允许ADC工作在自动转换触发工作模式下。
在该模式下,在触发信号的上升沿时ADC将自动开始一次ADC转换过程。
ADC的自动转换触发信号源由SFIOR寄存器中的ADTS位选择确定。
4、位4—ADIF:
ADC中断标志位:
当ADC转换完成并且ADC数据寄存器被更新后该位被置位。
如果ADIE位(ADC转换结束中断允许)和SREG寄存器中的I位被置“1”,ADC中断服务程序将被执行。
ADIF在执行相应的中断处理向量时被硬件自动清零。
此外,ADIF位可以通过写入逻辑“1”来清零。
5、位3—ADIE:
ADC中断允许:
当该位和SREG寄存器中的I位同时被置位时,允许ADC转换完成中断。
6、位2,0—ADPS[2:
ADC预分频选择:
这些位决定了XTAL时钟与输入到ADC的ADC时钟之间的分频数,见表2。
表2ADC预分频选择
DPS[2:
0]
分频系数
000/001
2
010
4
011
8
100
16
101
32
110
64
111
128
4.2.3ADC数据寄存器—ADCL和ADCH:
如图13所示
1、当ADLAR=0时,ADC转换结果右对齐,ADC结果的保存方式如图(a)。
2、当ADLAR=1时,ADC转换结果左对齐,ADC结果的保存方式如图(b)。
当ADC转换完成后,可以读取ADC寄存器的ADC0-ADC9得到ADC的转换的结果。
如果是差分输入,转换值为二进制的补码形式。
一旦开始读取ADCL后,ADC数据寄存器就不能被ADC更新,直到ADCH寄存器被读取为止。
因此,如果结果是左对齐(ADLAR=1),且不需要大于8位的精度的话,仅仅读取ADCH寄存器就足够了。
否则,必须先读取ADCL寄存器,再读取ADCH寄存器。
ADMUX寄存器中的ADLAR位决定了从ADC数据寄存器中读取结果的格式。
如果ADLAR位为“1”,结果将是左对齐;
如果ADLAR位为“0”(默认情况),结果将是右对齐。
(a)
(b)
图13数据寄存器ADCL和ADCH
4.3系统软件框图设计
软件设计是整个系统的灵魂,也是系统一个重要的调试部分。
如图14所示为整个系统的软件框图,主程序先对系统资源进行初始化,然后完成峰值的采样/保持控制、A/D转换控制和峰值LCD显示控制。
系统中的比较器电路,将被测信号与保持信号Vo进行比较,若Vi>
Vo,比较器输出高电平,系统开启LF398进人采样状态,若Vi<
Vo,比较器输出低电平,MCU使LF398保持原有信号峰值。
当MCU检测到峰值采样完成时,系统将LF398的第8个管脚拉低,使LF398处于峰值保持状态,同时进行A/D转换和峰值显示,一段时间后系统重新进入到峰值的采样状态,实现信号的实时峰值数据采集。
图14系统软件框图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信号 峰值 检测 研究 设计