第一组宽带放大器.docx

上传人:b****3 文档编号:11148440 上传时间:2023-05-29 格式:DOCX 页数:22 大小:135.23KB
下载 相关 举报
第一组宽带放大器.docx_第1页
第1页 / 共22页
第一组宽带放大器.docx_第2页
第2页 / 共22页
第一组宽带放大器.docx_第3页
第3页 / 共22页
第一组宽带放大器.docx_第4页
第4页 / 共22页
第一组宽带放大器.docx_第5页
第5页 / 共22页
第一组宽带放大器.docx_第6页
第6页 / 共22页
第一组宽带放大器.docx_第7页
第7页 / 共22页
第一组宽带放大器.docx_第8页
第8页 / 共22页
第一组宽带放大器.docx_第9页
第9页 / 共22页
第一组宽带放大器.docx_第10页
第10页 / 共22页
第一组宽带放大器.docx_第11页
第11页 / 共22页
第一组宽带放大器.docx_第12页
第12页 / 共22页
第一组宽带放大器.docx_第13页
第13页 / 共22页
第一组宽带放大器.docx_第14页
第14页 / 共22页
第一组宽带放大器.docx_第15页
第15页 / 共22页
第一组宽带放大器.docx_第16页
第16页 / 共22页
第一组宽带放大器.docx_第17页
第17页 / 共22页
第一组宽带放大器.docx_第18页
第18页 / 共22页
第一组宽带放大器.docx_第19页
第19页 / 共22页
第一组宽带放大器.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

第一组宽带放大器.docx

《第一组宽带放大器.docx》由会员分享,可在线阅读,更多相关《第一组宽带放大器.docx(22页珍藏版)》请在冰点文库上搜索。

第一组宽带放大器.docx

第一组宽带放大器

 

黄冈师院

 

詹益、赵振军、袁慧

 

宽带放大器

摘要:

本系统由运算放大电路、输出电压有效值检测电路、开关电源电路、单片机控制显示电路等四部分组成。

运算放大电路包括由OPA6560构成的前级放大电路,OPA810构成的中间级放大电路以及两片THS3091级联构成功率放大电路。

开关电源电路将提供的+5V电源转换为±15V电压驱动功率放大电路。

整个系统的通频带为20Hz~5MHz,最小增益为0dB,增益可以达到40dB。

电路输出电压峰峰值不小于10V,输出波形无明显失真。

控制显示电路选用TI公司生产的MSP430F149单片机为控制芯片,根据检测到的输出电压峰值计算输出电压的有效值,并由液晶显示,人机界面友好,有较强的实用性。

关键词:

有效值检测;开关电源;功率放大电路;MSP430F149

1、系统方案比较与选择

1.1中间级放大电路

方案一、采用分离元件进行中间级放大调理,由于信号带宽高,采用分离元件电路复杂、调试繁琐,而且分立元件的噪声和分布电容不容易解决。

考虑到在短时间内不容易做出来,所以不采用此方案。

方案二、采用集成芯片电路,例如采用宽带、低噪声、电压反馈芯片OPA842构成中间级放大电路。

反馈电阻用电位器,使得电路的放大倍数连续可调。

电路的应用更加灵活,方便。

1.2功率放大电路

方案一、用分离元件,此方案元器件成本低,易于购置,但是设计、调试难度太大。

在短时间内手工制作的电路板难以达到实验设计的要求,因此不采用此方案。

方案二、采用功率放大芯片。

这种方法简单,调节方便。

但是集成功放一般用于音频放大,无法满足带宽的需要。

方案三、采用驱动负载能力较大的放大器实现。

可以利用两片THS3091级联,构成功率放大电路。

THS3091是一款高压、低失真、电流反馈运算放大器,它的带宽高达210MHz(G=2,RL=100)。

其最大输出电流为250mA,若用一片THS3091,驱动不了题目要求的最大不失真电压峰峰值10V的输出。

比较方案一、方案二和方案三,方案二虽然简单,但是带宽达不到题目要求。

方案三比较常用,实现较简单,调节方便,经测试各项性能指标均达到设计要求。

所以选择方案三。

1.3单片机控制电路

方案一、采用通俗的51单片机,51单片机运用广泛,有良好的知识做基础,上手快,但是单片机内部不含ADC,电路需要外接A/D转换电路实现其功能。

方案二、系统采用MSP430F149作为控制芯片,MSP430F149内部有丰富的资源,6个8位并行口其中有两个有中断功能,12位的ADC,强大的定时器,大容量的RAM和ROM。

MSP430单片机最大的特色就是超低功耗,适合低功耗的应用场合。

比较两种方案,方案二外围电路更加简单,所以选择方案二。

1.4有效值检测

方案一、直接使用有效值检测芯片AD637,电路结构简单,可以直观的显示电路的有效值。

方案二、采用峰值检测电路。

电路主要由两片宽带运放OPA820和高频二极管构成,辅助于电阻和电容,输出端的滤波电容储存能量。

再通过单片机来进行有效值的计算显示。

方案一电路能够很好实现有效值值检测,方案二电路,测量误差太大不予考虑.

2.方案描述及系统框图

系统由运算放大部分、有效值检测部分、单片机控制显示部分以及开关电源部分组成。

放大电路由三级放大组成。

实验只提供+5V电源,但实验中不同的集成芯片要求的供电电压不同,因此需要电源转换电路,利用开关电源将+5V电源转换为-5V和±15V电压。

单片机经过A/D采样计算后,由LCD显示电路输出的电压有效值和峰峰值。

键盘可以实现单片机复位和显示转换。

系统框图如图1-2所示

 

A/D

A/D

 

二、理论分析与计算

1.增益带宽积的计算

根据题目要求放大器的最大增益Av≥40dB,即100倍,3dB的通频带20Hz~5MHz,则系统总的增益带宽积要求为2000Hz~500MHz。

实验要求输入信号放大100倍,单个的放大器很难达到题目要求,因此采用多级放大电路。

为了达到较好的实验效果,电路采用三级放大。

设定前级放大电路由OPA820构建,最大放大倍数为5,带宽为96MHz;中间级由OPA842构成,最大放大倍数10,带宽为40M。

末级对于电压反馈型放大电路,增益带宽积是一个常数。

增益带宽积=增益×-3dB带宽。

对于电流反馈型放大电路,带宽只与反馈电阻有关,加大反馈电阻时,放大器的带宽减小。

级联运放的-3dB带宽可由如下方法计算:

设二级运放的增益表达式分别为:

其中f1,f2,分别为第一级、第二级的-3dB带宽,那么级联放大器的总的增益表达式为:

.

所以

注意:

系统-3dB带宽将变为(0.707)2=0.49。

对于本系统,必须满足f≥10MHz

2.放大器的稳定

放大器在工作时会出现自激,外部干扰等,影响放大器稳定的工作。

当放大器深度负反馈时输出信号带有一定的纹波。

此时需要在输出口加一个小电容,消除高频的纹波干扰。

为抑制干扰,在放大器电源两端并接电容可以消除输出信号的干扰。

在印制PCB板时,走线敷铜,可以大大降低信号的干扰。

尽量选用贴片元件减少走线长度减少寄生电容的影响。

同时设计系统各个单元电路间的阻抗匹配,这样提高了系统的稳定性。

将单片机的数字电源和模拟电路的电源隔开,同时数字地和模拟地电源地一点相连,防止数字系统的干扰进入模拟系统。

3.电路设计

1.功率放大电路

采用两片集成运算放大器并联组成末级功率放大电路,两片放大器并联可以提供较大的输出电流,两片集成放大器并联结构简单,易于实现,且输出波形无明显失真。

该电路选用高压低失真电流反馈型放大器THS3091,最大输出电流可达250mA,两片级联最大输出电流可达500mA,满足实验设计需要。

设定电压放大2倍。

电路原理图如图3-1所示

 

2.有效值检测电路

有效值检测电路用来检测输出电压的有效值(Vrms),采用高精度宽带有效值/直流转换芯片AD637。

该电路包含一个偏置调零电路,1M电阻用来限流,以保证单片机不会因偏置电流过大而损伤芯片。

电路原理图如图3-2所示

图3-2有效值检测

3.开关电源

该放大电路的关键之处在于如何将单电源变成双电源给运放芯片供电,此处用到了开关电源电路,此电路是单端反激式开关电源电路,该电源主要是为功率板保护电路和功率开关的驱动电路以及系统控制板提供稳定可靠的电压。

采用PWM控制实现DC/DC变换,通过调节占空比来保证输出电压的稳定。

电路选用了可调式并联稳压器TL431与线性光耦(PC817)组成精密的光耦反馈电路自动调节输出电压,使电压达到稳定。

电源的核心部件是反激式变换器,变换器的特点是当主功率开关管导通时变压器原边电感储存能量,负载的能量从输出电路的滤波电容处得到;而当开关管断开时变压器原边电感的能量将会传送到副边负载和它的滤波电容处,以补偿滤波电容在开关管导通时消耗的能量。

TI芯片UC3844产生的PWM信号控制开关管的导通与截止。

UC3844的驱动电压高达+16V,因此用集成芯片TPS61087将+5V电源升压后驱动UC3844.开关电源中通过脉冲变压器的初级绕组和多个次级绕组可以输出不同的直流电压值,为不同的电路单元提供直流电量。

该电源的性能优良、稳压效果好、纹波小,对放大电路的影响小。

电路的系统框图如图所示。

电路原理图见附录

 

四、软件设计

本系统软件设计部分基于MSP430F149单片机平台,主要完成峰峰值计算、有效值和峰峰值的显示控制。

430单片机本身自带A/D电路可直接对输出电压峰值进行采样。

系统软件流程如图4-1所示

 

初始化

时钟初始化

LCD初始化

A/D初始化

端口初始化

A/D采样

采样中断一次加1

NO

YES

存入flash

LCD显示采样20次的平均值

 

五.实验测试

1.测试条件及仪器

·测试条件:

在普通实验室条件下,+5V电源供电,负载RL=50Ω。

利用信号发生器提供输入信号,用数字示波器对电路的输入和输出信号进行测量。

·测试仪器:

直流稳压电源EM1719型

函数信号发生/计数器EE16141B1型

高频信号发生器EE1051型

数字示波器DS5042MAE型

2.测试数据

电路的频率特性测量结果见表5-1

表5-1电路的频率特性

频率f(Hz)

输入(mV)

输出(V)

放大倍数

20

\

\

\

500

78

7.91

101.4

1K

78

7.94

101.7

500K

78

7.94

101.7

1M

78

7.9

101.2

3M

78

7.7

98.7

5M

78

7.1

91

7M

78

6.1

78.2

10M

78

4.4

56

在波形最大不失真的条件下,极限条件下测量结果见表5-2

频率(Hz)

输入(mV)

输出(V)

放大倍数

20

\

\

\

5M

101

10.6

104

10M

83

4.6

55

表5-2极限条件

在波形不失真的条件下,电路最大输出电压测量结果如表5-3

表5-3最大输出电压

频率f(MHz)

输入(mV)

输出(V)

8

120

12

表5-4峰值检波测试表

峰值检波测量数据表表5-4

交流输入P-P/mV

直流输出/mV

误差%

100

37

3.2

500

160

10.5

1000

330

7.1

1500

500

6.1

2000

650

8.8

2500

900

-0.1

 

3.测试结果分析

由以上数据可知,该系统具有比较好的放大能力。

经试验测试,由表一可知在频率在20Hz~10MHz左右范围内,电路的放大倍数可以接近达到100倍,与理论上的误差不超过10%。

由表三可知在波形不失真的情况下,电路的最大输出电压为12V。

峰值检测电路的检波效果比较好,在通频带内误差不超过8%

六、总结

本文所设计的宽带放大器具有较强的小信号放大能力和很宽的频带范围。

电路最大的特点是设计了开关电源为集成芯片提供工作电压。

该放大电路集成度高,稳定性好,题目所要求的基本要求已经达到,而且完成了部分发挥部分。

 

附录一

元器件清单

元件名称

规格

元件名称

规格

R1、R5、R17、R21、R22、R29

500Ω

R26

105

R2、R3、R6、R7、R9、R15、R12

50Ω

R28

501

电位器R4、R8

10K

R32

4.7K

C1、C2、C5、C8、C15

C10、C11

100nF

R33

202

C3、C4、C6、C7

10uF

R34

2K+102

U1

OPA820

R37、R43

102

U2、U5、U6

OPA842

R38

103

U3U4

THS3091

R39

360

R10、R11、R13、R14

1.2K

R40

472

C9、C12

6.8uF

R41

103

R16、R18、R19、R20、R27、R36

1K

R42

512

二极管

D1、D2、D3、D4

C16、C17

1uF

C13、C14、C18

0.1uF

C19

1.8PF

R24

100K

C20

100PF

R25

200K

C21

68uF

C23

4.7uF

C24

20PF

U7

TPS61087

U8

UC3844

Q1

IRF9540

Q2

光耦

Q3

TL431

Q4

NPN

J1

变压器

附录二

图1前级放大电路

前级放大电路

 

附录三

中间级放大电路

图2中间级放大电路

附录四

开关电源原理图

图三开关电源原理图

附录五

软件程序

Administrator19:

29:

50

//*A1,A2,A3,A4,A5输入*//

#include"msp430x14x.h"

#defineuintunsignedint

#defineucharunsignedchar

#defineulongunsignedlong

#defineRS_HIGHP4OUT|=BIT0//指令数据选择信号

#defineRS_LOWP4OUT&=~BIT0

#defineRW_HIGHP4OUT|=BIT1//读写信号

#defineRW_LOWP4OUT&=~BIT1

#defineE_HIGHP4OUT|=BIT2//使能信号

#defineE_LOWP4OUT&=~BIT2

#defineBUSY_OUTP2DIR|=BIT7

#defineBUSY_INP2DIR&=~BIT7

#defineBUSY_DATAP2IN&BIT7

#definePWMBIT2

uinta=0;

ucharcode[16]={"0123456789."};

ucharBit1[9]={0,10,0,0,0,0,0,0,0};//数码管各位显示的数字

ucharBit2[9]={0,10,0,0,0,0,0,0,0};

ucharBit3[9]={0,10,0,0,0,0,0,0,0};

ucharBit4[9]={0,10,0,0,0,0,0,0,0};

ucharBit5[9]={0,10,0,0,0,0,0,0,0};

uintADCBuf1[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//保存采集到的数据

uintADCBuf2[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

uintADCBuf3[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

uintADCBuf4[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

uintADCBuf5[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

ulongSum1=0;//20个数据的和

ulongSum2=0;

ulongSum3=0;

ulongSum4=0;

ulongSum5=0;

ulongVBuf1=0;//电压扩大10000000的值

ulongVBuf2=0;

ulongVBuf3=0;

ulongVBuf4=0;

ulongVBuf5=0;

ucharCount=0;

//时钟初始化函数

voidInitClock(void){

uchari;

BCSCTL1&=~XT2OFF;

BCSCTL2|=SELM1+SELS;

do{

IFG1&=~OFIFG;

for(i=0;i<100;i++);

_NOP();

}while((IFG1&OFIFG)!

=0);

IFG1=~OFIFG;

}

 

voidInitPort(void){

P2SEL=0x00;//P2口所有引脚设置为一般的IO口

P4SEL=0x00;//P4口所有引脚设置为一般的IO口

P2DIR=0xFF;//P2口所有引脚设置为输出方向

P4DIR=0xFF;//P4口所有引脚设置为输出方向

}

//ms级延时子程序

voidDelayMs(uintms){

while(ms--){

for(uinti=0;i<800;i++);

}

}

//ADC12初始化

voidInitADC12(void)

{

P6SEL=0x1f;//P6.0为模拟输入

ADC12CTL0&=~ENC;//ENC设置为0从而修改ADC12寄存器

ADC12CTL0=MSC+ADC12ON;//采样信号由SHI仅首次触发,打开ADC12模块

ADC12MCTL0=INCH_0+SREF_2;//参考电压为VeREF+和AVss输入通道A0

ADC12MCTL1=INCH_1+SREF_2;//A1

ADC12MCTL2=INCH_2+SREF_2;//A2

ADC12MCTL3=INCH_3+SREF_2;//A3

ADC12MCTL4=INCH_4+SREF_2+EOS;//A4

ADC12CTL1=CSTARTADD_0+SHP+CONSEQ_3+ADC12SSEL_0+ADC12DIV_0;//起始地址ADCMEM0,采样脉冲由采样定时器产生,单通道多次转换,内部时钟源不分频

ADC12IE=0x10;

ADC12CTL0|=ENC+ADC12SC;//开始新一轮转换

}

 

//计算电压值

voidGetV(void){

for(uchari=0;i<20;i++){Sum1+=ADCBuf1[i];Sum2+=ADCBuf2[i];Sum3+=ADCBuf3[i];Sum4+=ADCBuf4[i];Sum5+=ADCBuf5[i];}

VBuf1=Sum1/20.0*((2.5*10000000)/4095);//计算电压并扩大10000000倍2.5为外部参考电压可用R4调节

Sum1=0;

//计算数码管各位要显示的数值

Bit1[0]=VBuf1/10000000;

Bit1[2]=VBuf1%10000000/1000000;

Bit1[3]=VBuf1%1000000/100000;

Bit1[4]=VBuf1%100000/10000;

Bit1[5]=VBuf1%10000/1000;

Bit1[6]=VBuf1%1000/100;

Bit1[7]=VBuf1%100/10;

Bit1[8]=VBuf1%10;

VBuf2=Sum2/20.0*((2.47*10000000)/4095.0);//计算电压并扩大10000000倍2.5为外部参考电压可用R4调节

//计算数码管各位要显示的数值

VBuf2=VBuf1*2.848;

Sum2=0;

Bit2[0]=VBuf2/10000000;

Bit2[2]=VBuf2%10000000/1000000;

Bit2[3]=VBuf2%1000000/100000;

Bit2[4]=VBuf2%100000/10000;

Bit2[5]=VBuf2%10000/1000;

Bit2[6]=VBuf2%1000/100;

Bit2[7]=VBuf2%100/10;

Bit2[8]=VBuf2%10;

VBuf3=Sum3/20.0*((2.5*10000000)/4095.0);//计算电压并扩大10000000倍2.5为外部参考电压可用R4调节

//计算数码管各位要显示的数值

Sum3=0;

Bit3[0]=VBuf3/10000000;

Bit3[2]=VBuf3%10000000/1000000;

Bit3[3]=VBuf3%1000000/100000;

Bit3[4]=VBuf3%100000/10000;

Bit3[5]=VBuf3%10000/1000;

Bit3[6]=VBuf3%1000/100;

Bit3[7]=VBuf3%100/10;

Bit3[8]=VBuf3%10;

VBuf4=Sum4/20.0*((2.5*10000000)/4095.0);//计算电压并扩大10000000倍2.5为外部参考电压可用R4调节

//计算数码管各位要显示的数值

Sum4=0;

Bit4[0]=VBuf4/10000000;

Bit4[2]=VBuf4%10000000/1000000;

Bit4[3]=VBuf4%1000000/100000;

Bit4[4]=VBuf4%100000/10000;

Bit4[5]=VBuf4%10000/1000;

Bit4[6]=VBuf4%1000/100;

Bit4[7]=VBuf4%100/10;

Bit4[8]=VBuf4%10;

VBuf5=Sum5/20.0*((2.5*10000000)/4095.0);//计算电压并扩大10000000倍2.5为外部参考电压可用R4调节

//计算数码管各位要显示的数值

Sum5=0;

Bit5[0]=VBuf5/10000000;

Bit5[2]=VBuf5%10000000/1000000;

Bit5[3]=VBuf5%1000000/100000;

Bit5[4]=VBuf5%100000/10000;

Bit5[5]=VBuf5%10000/1000;

Bit5[6]=VBuf5%1000/100;

Bit5[7]=VBuf5%100/10;

Bit5[8]=VBuf5%10;

}

//中断

#pragmavector=ADC_VECTOR

__interruptvoidADC12ISR(void)

{

ADCBuf1[Count]=ADC12MEM0;

ADCBuf2[Count]=ADC12MEM1;

ADCBuf3[Count]=ADC12MEM2;

ADCBuf4[Count]=ADC12MEM3;

ADCBuf5[Count]=ADC12MEM4;

Count++;

if(Count==20)

{

GetV();

Count=0;

}

}

 

//测试LCD忙碌状态

voidLcdBusy(){

RS_LOW;

RW_HIGH;

E_HIGH;

_NOP();_NOP();

BUSY_IN;

while(BUSY_DATA);

BUSY_OUT;

E_LOW;

}

//写入指令到LCD

WriteCommand(ucharCommand){

LcdBusy();

RS_LOW;

RW_LOW;

E_HIGH;

_NOP();_NOP();

P2OUT=Command;

_NOP();_NOP();

E_LOW;

}

//写入字符数据到LCD

WriteData(ucharData){

LcdBusy();

RS_HIGH;

RW_LOW;

E_HIGH;

_NOP();_NOP();

P2OUT=Data;

_NOP();_NOP();

E_LOW;

}

//LCD初始化设定

LcdInit(){

WriteCommand(0x38);//8位数据端口,2行显示,5*7点阵

DelayMs(5);

WriteCommand(0x0c);//开启显示,无光标

DelayMs(5);

WriteCommand(0x06);//AC递增,画面不动

DelayMs(5);

WriteCommand(0x01);//清屏

DelayMs(5);

}

 

voidmain(

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

当前位置:首页 > PPT模板 > 自然景观

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

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