放大器非线性失真研究装置(E题)
摘 要
该设计是一种晶体管放大器,可产生非线性失真,**由两级共射放大电路和一级推拉电路组成。通过调整放大器内各电阻的电阻值,可以改变静态工作点,短路推拉电路中的二极管,使电路输出无明显失真、底部失真、顶部失真、双向失真、交叉失真。本设计采用单片机控制模拟开关的两个地址端,改变共射放大电路中的电阻。此外,还可以使用单片机A/D采集波形并使用FFT算法分析计算,得到输出波形的总谐波失真和各级谐波分量,最后将计算结果和显示波形放在单片机控制下TFT屏幕显示,数据也可以通过蓝牙无线传输。
关键词:晶体管放大器;非线性失真;傅里叶快速变换;STM32
1.设计方案的工作原理
1.1总体设计思路
1.1.1基本要求
主题要求设计和制造放大器非线性失真研究装置,可输出五种波形:无明显失真、底部失真、顶部失真、双向失真和交叉失真,并测量和显示其总谐波失真。我们首先设计一级基本放大电路放大信号,然后使用二级失真电路使电路达到不同的失真效果,最后与一级推拉电路,也可以通过模拟开关控制输出交叉失真波形,从唯一的端口输出,以达到主题要求的效果。如图1所示,系统框图。
图1 系统框图
1.1.2发挥部分
在原题目要求上增加了许多功能,使系统更加完善,具体改进如下:
(1)可以显示波形TFT在彩屏上,波形自动对齐到屏幕的固定位置,显示区域不会随波形直流的变化而变化;
(2)单片机采用蓝牙模块无线传输数据;
(3)按键可手动切换波形并自动扫描波形;
(4)本系统的算法可采集七阶谐波。
1.2.方案论证和比较
1.2.初级放大电路的方案论证和选择
方案1:采用共基放大电路对输入信号进行放大。共基极放大电路具有足够的电压放大能力,可实现功率放大,共基极放大电路具有输出电压和输入电压相同的特点,输入电阻小于共射电路,输出电阻相当于共射电路,其最大优点是频带宽,高频特性好。但共基极放大电路的输入阻抗很小,会严重衰减输入信号,不适合作为电压放大器。
方案2:使用共集放大电路放大输入信号。共集放大电路输入电阻大,输出电阻小,可减少电路直接连接的影响。但共集放大电路没有电压放大,只有电流放大,不太合适。
方案3:使用共射放大电路放大输入信号。共射放大电路可放大电流和电压,输出电阻大,频带窄。常用作低频电压放大电路的单元电路。
综上所述,本设计技术要求放大低频小值信号,因此采用方案三,采用共射放大电路。
1.2.2失真电路的方案论证与选择
方案1:切换电源,改变静态工作点。使用不同的电源可以有效而简单地改变静态工作点的位置,但改变电源必然会增加电源的数量,给电路带来不稳定性,对设备要求较高。
方案2:通过改变一、二、二级共射放大电路Rb和Rc输出波形的值可以达到失真效果CD4052同时改变这两个电阻值,控制逻辑相对简单。
综上所述,考虑到电路的简洁性和稳定性,本设计采用方案二来完成波形失真。
1.2.3总谐波失真测量的方案论证与选择
方案1:采用LTC1068和AD637由单片机控制LTC1068年测量和计算失真电压的总谐波失真。但该方案硬件电路结构复杂,成本高,由单片机控制LTC当1068得到不同的谐波量时,会有很大的延迟。
方案2:采用FPGA实现FFT算法采集和测量波形。FPGA在上面的设计模块中,操作算法具有速度快、效率高的特点。然而,通过这种方案,加减电路的设计将存在符号问题和数据大小问题,这是繁琐的FPGA成本较高。
方案3:采用STM32调用FFT算法库函数采集波形的谐波量。通过编写C语言算法,可以得出多阶谐波幅值具有实现方法简单、速度快、成本低的特点。STM浮点数运算快捷方便,精度高。
综上所述,考虑到性能和成本,本设计采用方案三,即采用STM32实现FFT算法测量谐波量,计算总谐波失真。
1.2.44采集电路的方案论证和选择
方案1:使用简单的电阻式电压抬升电路,此方案优点是电路设计非常简单、不易出错,但是缺点非常明显,他会对前级电路产生较大的影响,干扰前级电路的正常工作。
方案2:使用运输作为跟随器作为缓冲级,然后使用加法电路将电压提升到正电压。该方案非常稳定,不会影响前级。
综上所述,考虑到电路对输出波形的要求较高,需要增加隔离缓冲,所以我们采用了方案2。
2.核心部件电路设计设计
2.共射放大电路模块
电路的基本结构由共射放大电路组成,如图2所示。
图2 共射放大电路
2.2 CD模拟开关模块4052
CD4052外围电路如下图所示。CD4052相当于双路四选一模拟开关,地址端连接单片机IO口控选通,INH端接地可以选择,3脚和13脚是公共输出端,模拟开关可以通过地址段的变化来选择。该模块电路如图3所示。
图3 外围电路模拟开关
2.推挽电路部分
使用模拟开关短路推拉电路中的二极管,实现自由切换交叉失真和正常波形,达到只有一个输出端口的效果。推拉电路部分如图4所示。
图4 推挽电路部分
3.系统软件设计与分析
3.1 系统流程分析
4×4矩阵键盘用作功能键。按下此按钮,可切换输出波形的形状和自动手动模式。按下矩阵键盘第一行第一列按钮可以切换输出波,按下矩阵键盘第一行第二列按钮可以进入自动切换输出波模式和退出自动切换波模式,按下矩阵键盘第一行第三列按钮可以控制蓝牙模块发送数据,手机可以接收数据并显示在手机上。同时手机可以发送指令控制波形的变换和命令控制器通过蓝牙模块发送数据。
同时STM32的外设ADC利用波形电压变化数据实时采集FFT算法将实时电压数据的变量转换为振幅频率,在频谱上找到相应谐波分量的赋值STM计算波形总谐波失真,将数据传输到TFT显示在上面。其中FFT使用算法STM官方库中的4蝶形算法将1024个采样点转换为傅里叶序列。在频域中,信号的分布可以通过傅里叶序列得出。从而得到计算总谐波失真的公式:
在系统设计过程中也使用STM32上另一个ADC实时收集输出波形电压变化的数据,将数据转化为屏幕上的点,连接成线,实时显示输出波形。**如下图所示,程序流程图。
图5 **程序流程图
4.竞赛工作环境条件
4.软件环境的设计分析
(1)单片机开发环境:Windows 10 ,Keil5;
(2)模拟电路设计:Altium Designer15,Mutisim14。
4.2.仪器设备硬件平台
(1)SIGLENT SDG 1032X 30MHz 150MSa/s 信号发生器;
(2)SIGLENT SDS 1102A 100MHz 1GSa/s 示波器;
(3)SIGLENT SPD3303X-E 直流稳压电源;
(4)万用表、焊台。
5.总结分析作品效果
5.1系统测试性能指标
测试输出波形,将信号源设置为1kHz,幅度为20mVpp正弦波,接入晶体管受控放大电路,记录五种输出波的振幅值,如表1所示。
表1 输出波形失真和振幅值
波形 无明显失真 底部失真 顶部失真 双向失真 交越失真
幅值(Vpp) 2.74 2.72 2.14 2.48 2.32
总谐波失真 1.5% 3.9% 8.0% 15.0% 7.6%
然后进行工作测试,我们改变端口,进行基本测试,将输出范围改为2Vpp,输出不同的波形测量THD。如表2所示。
表2 测试端口的测量数据
波形 三角波 方波 正弦波
总谐波失真 12.4% 39.4% 0.91%
根据信号源输出不同波形测量的总谐波失真,然后比较理论值,可以看出误差小,计算准确。然后通过示波器和单片机上的屏幕显示五种波均非常明显,满足要求。
5.2创新特色总结展望
5.2.1系统实现的功能及其创新性
实验数据表明,总谐波失真测量非常准确,本系统的算法可以测量到七阶谐波,与理论值相近,展现出了算法实现的优越性。本设计将THD和待测波形同时显示在TFT彩屏上,可以更直观的看到总谐波失真与波形失真程度的相关性,便于研究分析。还采用了蓝牙无线传输模块,可以将本系统的数据无线传输给移动端,同时移动端也可以传输指令给单片机来控制模拟开关的选通,提高了系统的实用性。
5.2.2未来展望
本设计后续可以优化STM32上快速傅里叶变换的算法,提高算法的精度和稳定性,提高系统的工作效率,可以在TFT彩屏上增加一个界面,用来显示静态工作点Q点的变化,从而更容易对电路进行分析。
6.参考资料及文献
[1]堵国樑,吴建辉,樊兆雯. 模拟电子电路基础[M]. 北京:机械工业出版社,2014.
[2]刘火亮,杨森. STM32库开发实战指南:基于STM32F4[M]. 北京:机械工业出版社,2017.
[3]黄志伟. 全国大学生电子设计竞赛训练教程(修订版)[M] . 北京:机械工业出版社,2010.
[4]张永瑞. 电子测量技术基础[M] .西安:西安电子科技大学出版社,2009.