2020电赛经验总结+E题解题思路

2023-11-15

2020电赛经验总结+E题解题思路

取得的成果和经验

四川省2020年电子设计竞赛已经落下帷幕,第一次参加电赛,无论从知识还是经验上都有所获得。虽然只取得省三的成绩,但整个比赛过程为明年备战国赛具有指导作用,也算是一个不错的结果。
一个团队中每个人都会影响整个团队的发挥,今年是我一个人在支撑着整个队伍,又是负责焊板子,调电路,又要负责写程序,还好报告有队员分担,不然四天三夜不睡觉我也搞不完。如果想要走的更远,真的需要更强的队友,更好的分工,每个人真的能受任于自己负责的部分。
今年吃了一个大亏,第一天四种波形其实都已经调试出来并且焊接好,但是我并没有直接组装成成品,反而是去焊接调试ADC处理电路,结果到第四天才慌慌张张把调好的基础部分的电路组装起来,包括按键电路和继电器电路。这直接导致我没有时间去写fft算法,THD最终很遗憾,被我扼杀在摇篮中。在交作品的最后两个小时,我们的顶部失真居然出问题了,真把我急坏了,赶快检查,我知道这个时候慌张一点都没用,还是要沉住气,最后检查到一个虚焊点,重新焊接以后问题得以解决。
整个比赛过程真的好累,每天都过得很紧张,睡觉的时间也就两三个小时,还好我暑假有专门练习过信号题,才比较得心应手,真就还是那句话,功夫在平时。

解题思路

四川省总共有四个题,准备了一个月的小车,结果确没有学MSP430,只好选择E题。E题的解决方案在第一天就定下来了,考虑到9013三极管单极放大电路的放大倍数有限,而题目中要求将峰峰值为20mv的信号放大到至少2v的峰峰值,所以采用两级放大电路。由于时间紧迫,我们没有按照9013三极管技术手册去计算各个偏置电阻的阻值,而是借鉴了2019年电赛D题的题目配置。不过在调试的时候发现这个单极电路如果作为第一级放大电路,由于放大倍数太大,输出电压如果直接作为第二级放大电路的输入电压会造成第二级电路出现双向失真的情况。于是在第一级输出进行分压,通过一个射级跟随器对分压进行电压跟随,之后再作为输入电压输入到第二级放大电路进行放大。这样就能得到波形较好的正弦波。电路图如下:
在这里插入图片描述
对于一般失真波形的输出,需要通过改变Q点的位置来得到,我们以上图中第一级射级偏置电路为例,设用字母h表示三极管的放大倍数,根据射级偏置电路的特点,存在ICQ=(VBQ-VBEQ)/Re,又有IBQ=ICQ/h,VBQ=R4/(R3+R4)VCC,三个公式进行组合后得到:IBQ=(R4VCC-VBEQ(R3+R4))/(RE(R3+R4)*h);通过改变RE可以改变IBQ的大小,以此来改变Q点的位置。同时为了保证失真波形任然处在2V以上的峰峰值,那么就需要改变R14的分压电阻阻值来改变进入第二级的电压。三个失真波形的原因是:
1、顶部失真:Q点过低,造成截止失真;
2、底部失真:Q点过高,造成饱和失真;
3、双向失真:输入的电压峰峰值过高,或者第二级电路电源值过低。
顶部失真的波形如下,其余的失真大同小异:
在这里插入图片描述
对于交越失真,官方的解释是:在分析电路时把三极管的导通电压看作零,当输入电压较低时,因三极管截止而产生的失真称为交越失真。这种失真通常出现在通过零值处。由于晶体管的门限电压不为零,比如一般的硅三极管,NPN型在0.7V以上才导通,这样在0—0.7V就存在死区,同理对于PNP型三极管,在-0.7V—0V存在死区,这样就会造成失真。
具体电路如下图(借鉴网上的图):
在这里插入图片描述
对于最后THD的计算,采用STM32的DSP库中的fft算法进行谐波幅值的计算。但是需要增加一个ADC电压转换电路,使用OPA842运放作为电路核心,将各个输出波形进行衰减,抬高,以符合STM32ADC的0~3.3V的电压转换标准,电路图如下:
在这里插入图片描述
整个题目其实并不是很难,但是需要及其牢固的模拟电路基础以及极强的动手能力。
最后附上一个我自己还未完成的fft算法,能成功输出5次谐波的幅值,但是还没有做计算,仅供参考:
链接:https://pan.baidu.com/s/1bWG3scw8t_wUKITghKBSEQ
提取码:zw8p
电路链接:
链接:https://pan.baidu.com/s/1L8b9s3tbKKLerk0rlWsZFw
提取码:rox3

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2020电赛经验总结+E题解题思路 的相关文章

  • 【GRNN-RBFNN-ILC算法】【轨迹跟踪】基于神经网络的迭代学习控制用于未知SISO非线性系统的轨迹跟踪(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 2 1 第1部分 2 2 第2部分
  • STM32 Nucleo 上的上升沿中断多次触发

    我正在使用 STM32 NUCLEO F401RE 微控制器板 我有一个扬声器 经过编程 当向上 向下推操纵杆时 可以按设定的量改变频率 我的问题是 有时 通常 当向上 向下推动操纵杆时 频率会增加 减少多次 这意味着 ISR 正在执行多次
  • iOS FFT 绘制频谱

    我读过这些问题 使用 Apple FFT 和加速框架 https stackoverflow com questions 3398753 using the apple fft and accelerate framework 使用 Acc
  • fftw c2c:转换后的真实数据中缺少对称性

    最近我遇到了一些关于fftw的使用及其c2c转换的问题 参见 3d c2c fft 与 fftw 库 https stackoverflow com questions 10374656 3d c2c fft with fftw libra
  • Clojure STM 歧义因子

    在 Clojure 中 我们使用 STM 来实现并发 我的问题是STM使用数据的时间点值 这是否会带来歧义 我们如何知道访问了什么值 Clojure 中的 STM 提供 通过ref http clojure org refss and do
  • 如何在 R 中执行*快速* DCT(离散余弦变换)?

    使用 Rprof 发现 dtt 包中的 dct 是一段运行速度相当缓慢的 R 代码中的主要罪魁祸首 将其替换为 stats 包中的 fft 这不是相同的转换 但应该花费相同的时间来计算 我的运行时间显着提高 事实上 我的 Rprof 线路中
  • Python 中频谱图的 FFT

    我将如何使用 Python 从 WAV PCM 文件读取频率峰值 然后能够生成它的图像以进行频谱图分析 我正在尝试制作一个程序 允许您读取任何音频文件 将其转换为 WAV PCM 然后找到峰值和截止频率 Python 波库 http doc
  • 在 Android 上查找音调

    如何从我的语音记录中找到最小 最大 平均 标准偏差音调 我使用 AudioRecord 来录制我的声音 frequency 8000 channelConfiguration AudioFormat CHANNEL CONFIGURATIO
  • STM32内部时钟

    我对 STM32F7 设备 意法半导体的 Cortex M7 微控制器 上的时钟系统感到困惑 参考手册没有充分阐明这些时钟之间的差异 SYSCLK HCLK FCLK 参考手册中阅读章节 gt RCC 为 Cortex 系统定时器 SysT
  • 绘制图像的傅里叶变换时出现问题。 “ValueError:x 和 y 不能大于二维,但具有形状 (2592,) 和 (2592, 1, 3)”

    我正在尝试获取图像的 fft 然后使用 matplotlib 绘制该 fft 的 fraq 然而 这个错误信息 ValueError x 和 y 不能大于二维 但具有形状 2592 和 2592 1 3 我尝试像这样重塑我的 np arra
  • Python中基于FFT的2D卷积和相关

    scipy 或其他流行的库 中是否内置了基于 FFT 的 2D 互相关或卷积函数 有这样的函数 scipy signal correlate2d 直接方法由convolveND将 对于大数据来说很慢 scipy ndimage correl
  • iOS FFT Accerelate.framework 在播放期间绘制频谱

    更新2016 03 15 请看一下这个项目 https github com ooper shlab aurioTouch2 0 Swift https github com ooper shlab aurioTouch2 0 Swift
  • 最近用 Java 编写的 FFTW 包装器

    我正在寻找最新版本的最小 Java 包装器FFTW http www fftw org FFTW 网站上列出的包装器要么已过时 jfftw 1 2 zip ftp ftp fftw org pub fftw jfftw 1 2 zip 或包
  • Enthought Python 中的线程 FFT

    Numpy SciPy 中的快速傅立叶变换 FFT 不是线程化的 Enthought Python 附带 Intel MKL 数值库 该库能够进行线程 FFT 如何获得这些例程 以下代码适用于 Windows 7 Ultimate 64 位
  • 频域和空间域的汉明滤波器

    我想通过在 MATLAB 中应用汉明滤波器来消除一维信号中的吉布斯伪影 我所拥有的是k1这是频域中的信号 我可以通过应用 DFT 来获取时域信号k1 s1 ifft ifftshift k1 该信号具有吉布斯伪影 现在 我想通过 A 乘以汉
  • 帮助我理解FFT函数(Matlab)

    1 除了负频率之外 FFT 函数提供的最小频率是多少 是零吗 2 如果它为零 我们如何在对数刻度上绘制零 3 结果总是对称的 或者只是看起来是对称的 4 如果我使用abs fft y 来比较2个信号 我是否会失去一些准确性 1 除了负频率之
  • 在音频文件中查找音频样本(频谱图已存在)

    我正在努力实现以下目标 使用 Skype 拨打我的邮箱 有效 输入密码并告诉邮箱我要录制新的欢迎信息 有效 现在 我的邮箱告诉我在嘟嘟声后录制新的欢迎消息 我想等待蜂鸣声然后播放新消息 不起作用 我如何尝试实现最后一点 使用 FFT 和滑动
  • 你能通过傅里叶变换计算原始信号的幅度/功率吗?

    使用 scipy fftpack fft 对一些样本进行离散傅立叶变换并绘制这些样本的幅度后 我注意到它不等于原始信号的幅度 两者之间有关系吗 有没有一种方法可以根据傅立叶系数计算原始信号的幅度而不需要反转变换 这是振幅为 7 0 且 ff
  • matlab中简单正弦波的傅里叶变换

    我尝试显示简单正弦波的频谱 因为我们知道具有固定频率的单个正弦波必须在其频谱中出现峰值我编写了这段代码 但我无法得到这个峰值我的代码中有什么问题 clc nsteps 200 number of signal elements in tim
  • FFT 的功率谱密度

    我有一段代码可以获取部分信号的 FFT 现在我正在尝试获取 PSD Fs 44100 cj sqrt 1 T 6 dt 1 Fs left test 1 right test 2 time 45 interval 636 w range t

随机推荐

  • 【Spring] Spring boot 报错 Unable to start ServletWebServerApplicationContext due to missing ServletWe

    1 概述 spring 报错如下 Error starting ApplicationContext To display the conditions report re run your application with debug e
  • 基于zookeeper的MySQL主主负载均衡的简单实现

    基于zookeeper的MySQL主主负载均衡的简单实现 1 先上原理图 2 说明 两个mysql采用主主同步的方式进行部署 在安装mysql的服务器上安装客户端 目前是这么做 以后想在zookeeper扩展集成 客户端实时监控mysql应
  • hot编码 字符one_笔记1 one-hot、embedding

    one hot 在特征工程中需要对数据进行预处理 one hot在数据预处理中比较常见 1 什么是one hot One Hot编码 又称为一位有效编码 主要是采用N位状态寄存器来对N个状态进行编码 每个状态都由他独立的寄存器位 并且在任意
  • java 16进制字符串转16进制

    author j public class Test public static void main String args byte b HexString2Bytes AA020155 String s Bytes2HexString
  • IDA详细使用教程

    文章目录 软件介绍 目录结构 启动页面 IDA文件加载 界面介绍 常用快捷键 操作概述 函数操作 数据类型操作 导航操作 类型操作 关闭数据库 软件介绍 Ollydbg 仅仅是运行于 Windows 用户模式下的一种 32 位调试器 而 I
  • IDEA常用插件

    cajon plugin zip ChatGPT zip Generate All Getter And Setter zip github copilot intellij zip idea mybatis generator zip i
  • c++栈的用法(1)

    栈最大的特点是 先进后出 如同一筒羽毛球 先放进去的球是最后才能拿出来的 而后放进去的球却是最先拿出来的 同理 先储存进栈中的元素是最后才能展现 而后放进去的却是最先展现的 栈的头文件是 include
  • MySQL基础篇-第11章_数据处理之增删改

    第11章 数据处理之增删改 讲师 尚硅谷 宋红康 江湖人称 康师傅 官网 http www atguigu com 1 插入数据 1 1 实际问题 解决方式 使用 INSERT 语句向表中插入数据 1 2 方式1 VALUES的方式添加 使
  • 老司机教你如何跨进Python的大门

    1 Python介绍 python 动态语言 java 静态语言 python不用编译 直接解释执行 不用像java一样显式声明变量 要不要学看下图 2 安装Python 下载 解压缩 或者安装 配置环境变量 没错就是这么简单 查看pyth
  • 服务 zookeeper 不支持 chkconfig

    在给zk设置开机启动的时候 报错 服务 zookeeper 不支持 chkconfig 因为配置文件是从别人的博客了拷贝的 只是改了个性化的部分 然后就粘贴到服务器上了 服务器上使用service能正常执行start stop status
  • windows环境下springboot程序启停脚本

    1 启动应用脚本 echo off if 1 h goto begin mshta vbscript createobject wscript shell run nx0 h 0 window close exit begin start
  • css伪类where、is、has用法

    目录 一 where 1 作用 2 用法 3 优先级 二 is 1 作用 2 用法 3 优先级 三 has 1 作用 2 用法 3 优先级 css伪类where is has用法 一 where 1 作用 where CSS 伪类函数接受选
  • Windows查看和导入证书(.cer / .pfx)

    文章目录 证书介绍 问题汇总 导入导出细节注意 如何查看以上两种证书的到期日 Windows下导入证书 证书介绍 作为文件形式存在的证书一般有以下几种格式 带有私钥的证书 由Public Key Cryptography Standards
  • 深度学习-第T5周——运动鞋品牌识别

    深度学习 第T5周 运动鞋品牌识别 深度学习 第T5周 运动鞋品牌识别 一 前言 二 我的环境 三 前期工作 1 导入数据集 2 查看图片数目 3 查看数据 四 数据预处理 1 加载数据 1 设置图片格式 2 划分训练集 3 划分验证集 4
  • 如何选购阿里云服务器并快速入门(Windows版本)?

    本入门教程采用ecs g6 large实例规格 在Windows Server 2016系统上配置了IIS服务 结合ECS管理控制台展示如何快速使用云服务器ECS 准备工作 创建账号 以及完善账号信息 注册阿里云账号 并完成实名认证 具体操
  • Centos 7 Zabbix 6.0 TimescaleDB 安装配置

    Zabbix 6 0 TimescaleDB 安装配置 系统 Centos7 PHP PHP 7 4 30 apache httpd 2 4 6 PostgreSQL 13 TimescaleDB version 2 7 0 zabbix
  • C++学习(四三五)android获取so安装路径

    ClassLoader loader getClassLoader try Method library ClassLoader class getDeclaredMethod findLibrary String class String
  • 《深入理解计算机系统》实验八Proxy Lab 下载和官方文档机翻

    前言 深入理解计算机系统 官网 http csapp cs cmu edu 3e labs html 该篇文章是 实验八Proxy Lab的Writeup proxylab pdf 机翻 原文 http csapp cs cmu edu 3
  • python的面向对象和面向过程(意义和区别)

    面向过程 侧重于怎么做 1 把完成某一个需求的 所有步骤 从头到尾 逐步实现 2 根据开发要求 将某些功能独立的代码封装成一个又一个函数 3 最后完成的代码 就是顺序的调用不同的函数 特点 1 注重步骤和过程 不注重职责分工 2 如果需求复
  • 2020电赛经验总结+E题解题思路

    2020电赛经验总结 E题解题思路 取得的成果和经验 四川省2020年电子设计竞赛已经落下帷幕 第一次参加电赛 无论从知识还是经验上都有所获得 虽然只取得省三的成绩 但整个比赛过程为明年备战国赛具有指导作用 也算是一个不错的结果 一个团队中