2020电赛E题复盘

     2020电赛早已落下帷幕,过去也已经很久了,而最近在准备夏令营的时候,想着把之前的一些经历总结总结,就想着那干脆写一篇博客记录记录吧,也算是开启我的CSDN之旅。

     虽然2020只是取得了省二的成绩,但其实对于大二的我来说也还好啦,也可以为2021的国赛备战起着指导作用了。第一次接触电赛还是在大一下的暑假,当时的电赛在我们学校举办,而我的学长们也在电赛中获得了十分好的成绩,拿到了当年省里的TI杯,而当时的我也默默的想之后我也要去参加电赛,去把实际所学的电子知识运用起来,四天三夜完成一个小的电子产品,这是一个极大的挑战,这所依靠的是平时的大量积累。

     2020由于疫情的影响,本来8月举办的电赛一直推迟到了10月份,学校本有的电赛培训也因此都取消了,电赛的准备也只能靠自己,大二下在家的那段时间,我自己买了许多的零件和51单片机,用这些东西慢慢的搭建出了循迹避障遥控等基础功能于一体的小车,也算是对于小车控制有了一定的了解吧;本来想的是参加A题的,但之后因为指导老师的原因,我们改选了E题,而实际情况也是2020年的E题相对而言简单一点;几乎从8月22号开学开始,我们小组三个人就找到了我们的老师,按老师的任务规划,分别学习STM32,串口屏,Spartan6,还有基础电路的搭建,在国庆的7天假中我们也几乎是在实验室度过的,但实际来说我们发现还是有很多不会,32单片机和FPGA之前都是没有接触过的,从零开始的学习花了许多的时间,所幸的是正点原子的资料还是挺多的,对着视频一个一个的学习过去,也算是可以初步掌握了吧。

 一,题目

2020电赛E题复盘_第1张图片

2020电赛E题复盘_第2张图片

二、综述

        本研究装置以 stm32F103 单片机为主控芯片,利用串口屏构建人机交互界面,并通过继电器开关来控制放大电路波形的失真状态,之后再以 FPGA 芯片作为硬件平台运用快速傅里叶变换对放大电路的输出信号进行频域分析,并将数据通过串口传到主控 MCU 上利用 THD 计算公式对频域信号进行处理,再对一组 THD 值进行平滑处理得到 THD 的近似值,最后传到人机交互界面进行显示。

        为了更好地控制输出波形的失真状态,放大电路应采用多级放大电路,第一级放大电路放大 60 倍,第二级放大电路放大 5 倍,并且在之间加入射极输出器,以实现阻抗匹配,隔离电路之用;电路的输出级采用 OTL 电路,并且通过偏置电阻使两管皆处于临界导通状态;之后从电路中引出四点至四个继电器上,改变 MCU 输出以得到不同类型的波形。

2020电赛E题复盘_第3张图片

三,硬件电路

        20mv 输入,2V 以上输出,总的电压增益在 100 以上,同时经过仿真与实际测试可知:最后一级功放电路的电压增益小于 1;示波器要显示出明显的失真波形,功放电路的输入电压应在 5V 以上;此时电压增益已超 250,单极放大电路想要有如此大的增益,实现起来不仅很难,而且会牺牲其他性能,故而我们采用两级放大电路,而同时为了使各级放大电路的静态工作点互相不受影响,我们采用阻容耦合的连接方式。

1.分压偏置共射放大电路

       第一级作为电路的主放大级,其电压增益应在 50 以上,故而三极管选择具有低噪声、大动态、高电压增益和理想电流特性的通用型三极管 9018;采取可以稳定静态工作点的分压偏置接法,本级电压增益设计为 60;第二极为电路的辅助放大级,其电压增益应在 5 以上,故而选择通用型三极管 8050 即可;电路结构与之前一样,本级电压增益设计为 6,具体电路原理图如下:

2020电赛E题复盘_第4张图片

2.射级输出器

    若将两级放大电路直接相连,那么其电路参数会互相影响电压增益,测试调节困难;  而且由电压增益和输入电阻公式可知第一级共射放大电路高电压增益的前提是其等效负载阻抗较大,故而我们在其之间加入具有电压跟随,高输入电阻的射极输出器,以达到匹配阻抗,隔离电路的作用,原理图如下:

2020电赛E题复盘_第5张图片

3.四种失真原理解释

(1)交越失真

         我们最后一级的电路是甲乙类功率放大电路,我们在两个三极管基极之间接了两个阻值为4K的电阻,从而使得其基极获得偏置电压,当电路无交流信号输入时,其基极与发射结之间的电压就已经大于开启电压,即两边都处于微导通状态,故而无交越失真,而想要其产生交越失真,就可用一个1k的小电阻(如图所示),直接将三极管的基极连在一起,这样基极与发射结之间的电压就无法大于开启电压,这样当输入信号作用时,在信号的过零区,两个管子都会处于截止状态,无法放大信号,故而其就会出现交越失真。

2020电赛E题复盘_第6张图片

(2)双向失真

双向失真产生的原因是其输入信号的幅度过大,从而使得其同时进入了饱和区和截止区,而信号幅度大在本电路中主要是因为电压增益大的原因,在本电路中,我们实现了第一级电压增益可调,如图所示,这是一个小电阻,初始情况下,该电阻和集电极电阻并联,当我们运用单片机发送指令来控制继电器断开开关时,该电阻就不会接入电路,而集电极电阻就会变大,而该级电路放大倍数为β 倍的RC 并RL除以rbe ,故而集电极电阻增加会导致电压增益增加,则最后一级输入信号的幅度增加,故而电路会产生双向失真。

2020电赛E题复盘_第7张图片

(3)顶部失真

         顶部失真与底部失真其产生的原因都是因为静态工作点的不合适导致的,如图所示,这是一个5k的电阻,其一端接在电源,一端接在功放电路的输入上,当我们运用单片机发送指令来控制继电器关闭开关时,上部分的电路的等效电阻减小,则输入点的电压大于Vcc/2,故而T1,即静态工作点上升,进入了饱和区,此时,放大器可以对输入的负半周信号正常的放大,而当输入信号为正半周时,因为输入信号太大,IcIb 的关系将不成立,输出电流将不随输入电流而变化,输出电压也不随输入信号而变化,故而此时电路会产生饱和失真,其为顶部失真。

2020电赛E题复盘_第8张图片

(4)底部失真

         顶部失真与底部失真其产生的原因都是因为静态工作点的不合适导致的,如图所示,这是一个5k的电阻,其一端接在地,一端接在功放电路的输入上,当我们运用单片机发送指令来控制继电器关闭开关时,下部分的电路的等效电阻增大,则输入点的电压小于Vcc/2,故而T2,其静态工作点下降,进入了饱和区,此时,放大器可以对输入的正半周信号可以正常放大,而当输入信号为负半周时,因为输入信号太大, IcIb的关系将不成立,输出电流将不随输入电流而变化,输出电压也不随输入信号而变化,故而此时电路会产生饱和失真,其为底部失真。

2020电赛E题复盘_第9张图片

四,软件部分

1.信号的分析于处理模块的设计

(1)THD的含义

         THD指的是总谐波失真。所谓谐波失真,是指输出信号比输入信号多出的谐波成分。这些多余出来的谐波成分与实际输入信号的对比,用百分比来表示就称为总谐波失真。对于THD的计算,不同的标准会有所不同。

         根据标准《GB/T 17626.7-2008电磁兼容 试验和测量技术 供电系统及所连设备谐波、谐间波的测量和测量仪器导则》,THD的定义为:不大于某特定阶数H的所有谐波分量有效值Gn与基波分量有效值G1比值的方和根: 

我们知道,一个信号可以表示成它的基波和谐波的叠加。利用傅里叶变换可以分析信号的频域特性,从而提取出信号的基波分量和谐波分量的有效值。

假设信号的电压值以f(x)表示,且f(x)的周期为2l,那么可以将f(x)表示成:

2020电赛E题复盘_第10张图片

(2)方波THD的计算

2020电赛E题复盘_第11张图片

(3)FPGA的AD采样模块,FFT计算模块

         由于主控芯片STM32F103的AD采样精度不够,而且其进行FFT的运算速度也不够快,故而此处我们选择的是AN108和Spartan6两者结合,采样速率为256KHz,转换速率为4.096MHz,同时运用FIFO进行AD采集模块(4.096MHz)和FPGA(5MHz)系统时钟域的匹配,而后对于时域的数据进行FFT变换得到频域数据,然后将相应数据通过串口传送到单片机上进行THD的计算。

         THD的计算我们为了防止数据跳变带来的测算偶然误差,我们又对THD值做了多次储存,达到计算次数阈值后去掉最高值,最低值之后取平均,使得测算的THD数据保持较为稳定的数值。

2 .人机交互模块的设计

    GUI部分采用了常见的串口屏,波形显示采用了该串口屏现成的波形显示控件,串口发送数据到串口屏上就能显示对应的波形和THD值,开发简便,节省了不少时间。

2020电赛E题复盘_第12张图片

 五,一些问题

1. 模拟开关CD4053控制选择电阻或者继电器控制选择电阻两种方案? 模拟开关体积较小,功耗较低,但是导通后仍然存在一定的阻值,而且关断后存在几百k欧的电阻,容易影响电路的正常工作;而继电器虽然体积较大,但是相比于模拟开关更加稳定,对放大电路引入的干扰较小;在实际的电赛中,我们组本来选用了模拟开关CD4053的方案,但是当PCB板打好焊接成功之后发现其无法正确的调控波形的失真情况,而后我们换用继电器方案,用四路继电器控制相应电阻的导通,从而改变静态工作点。而之后又出现当所有工作都完成进行最后的封箱测试的时候又不行了,底部失真一直没有反应,而后结果排查发现是其中的一个继电器坏了,之后又开始紧急的修理。

2.最终测评的时候准备阶段将信号源接到电路上,出不来任何波形,只有具有很大噪声的杂波输出,调了30分钟没有任何反应,我们一度以为是模拟电路的不稳定,在运输过程中给搞环了,最后无奈的我们甚至拿出了最初焊接调试的洞洞板进行测试,可是仍然是没有任何正确信号输出,而最终戏剧性的是,我的一个队友神来之手的用力插了一下信号线,才发现波形情况有着较大的好转,而后才发现原来问题出在信号线上,是信号线本身引入了太多的噪声,而后我们换了一条信号线才得以正常的完成后面的测试。

2020电赛E题复盘_第13张图片

你可能感兴趣的:(比赛经历,单片机,编程语言,嵌入式,经验分享)