2019年电赛之路——2015年电子设计竞赛A题任务设计

2023-11-19

参加19年电赛,我们奔着电源题来的,所以我们一开始要练习的题目就选定了15年的A题,因为我们找到了几个国一方案,但是只有一个方案,代码和PCB图都没有,这也是我们失误的地方。本来的路线应该是找一个成品方案,模仿着做下来,先做下来一个题目后,我们也能迅速的进入状态,相对来说会节省很多时间。做比赛,经验很重要,有了成熟的经验会少走很多弯路节省很多时间。做电源题其核心就是电力电子的四大变换技术,也就是整流(AC-DC)、逆变(DC-AC)、斩波(DC-DC)和变频(AC-AC),其中15年的题目是做个双向DC-DC变换器。

我们选择的是江苏省分电赛优秀作品选集,之后我会把PDF文档放到结尾。15年的A题——双向DC-DC变换器,主电路的设计基本上都是双向BUCK-BOOST拓扑电路,仅用一个电路就能实现升压和降压,而有的方案中通过继电器或者模拟开关座位桥梁连接两个单独的BUCK电路和BOOST电路,相对于这种方案,还是第一种电路拓扑比较方便和简洁,但是驱动电路的部分会相对麻烦一点。整个电路主要分为4部分:主电路、驱动电路、测量电路和辅助电源。

  1. 主电路部分
    说明:主电路的拓扑结构如下图所示,需要注意的是滤波电容、电感、MOS管的选取,我们用的是耐压值50V容值是4700uF的电解电容,其实50V的耐压值是可以的,保险起见,建议选择63V的耐压值。电感的话我们用的是100uH的,耐流值是3A的。MOS管我们一开始练题的过程中并没有太过注意MOS管的参数,所以我们没有把MOS管内阻考虑进去,MOS管我们选的是IRF640。所以MOS管的损耗会大一点,电路的变换效率会低一点。我们的驱动电路的开关频率设置在23K左右,一开始将占空比调到50%,一开始加的输入是30V,而在电池组两端测得的电压大致就是15V左右。
    工作原理:从右侧将输入电压加进去,经过驱动电路后到达电池组后就会降压,具体怎么达到升压和降压的目的,这个就要好好看看电力电子技术这门课了,最主要的就是通过电感的储能。降压:在上管导通的时候将下管关闭,这样输入进来的电能就会被储存到电感中,而当上管关闭下管导通的时候,电感又通过下管对电容放电,只要调节占空比,就会实现按比例降压。升压:外接上电池组供电后,当上管导通下管关断,这时通过电感储存的能量对后面的电路放电,而当上管关断下管导通的时候,电路对电感充电,经过下个开关周期来到,就对后面电路放电,所以就形成了升压电路。
    在这里插入图片描述
    电路注意事项:一开始我们设计主电路的问题主要出现在封装问题上,这里要注意一下,因为是要用覆铜板来做成单层板,所以在转印之前,将画好的PCB图先打印到一张A4纸上,先比对下元件摆放的位置和大小。最应该注意的是MOS管,因为MOS管要加散热片,所以MOS管之间不要靠的太近。而且电感也尽量不要靠近其他的元件,电感能选大点的就选大点的,一是大电感会降低纹波,二是发热不会太严重。还有点解电容的选取,一定一定要注意耐压值,一般是选择电路中电压有效值的2-3倍耐压值,不然在测量电路的时候真的很吓人。我们刚开始选择的电感是100uH,但是电路上电之后电感会很烫,然后我们又经过计算发现电感的选取有点小了,索性直接换成了470uH的,换过之后电感就没有怎么发烫。电容尽量也要选大点的,一开始我们没有买4700uF的电容,实验室翻箱倒柜也就找出来两个50V 4700uF的电容,我们没敢舍得用,想着第一版的主电路先凑活凑活就过去了,然后我们就用3300uF的代替了,实验证明3300uF的电容也是完全可以的。还有就是这个电路中的Rs1是用的25毫欧的康铜丝,做测量电阻。
    其次主电路中需要注意的地方还有接口问题,一开始我们将两个电压测量和一个电流测量的接口打算用排针和杜邦线连就行了,但是后来在淘宝上发现了直针插座后,我们的所有接口都没用过排针了,说实话直针插座真的很方便,而且很牢固,唯一需要注意的地方就是方向问题,我们从始至终这个方向都有问题,一直在调换方向,所以说在确定好电路之后,在焊接的时候要将留有接口的地方仔细比对,以实物为主。

  2. 驱动电路
    说明:驱动电路方案选的是用IR2104所构成的半桥驱动电路,刚开始我们的电路原理图里是将芯片的的供电和对Vb的供电分开的,但是我们又觉得这样太麻烦,而且不一定可行,就把芯片供电和驱动侧电压都换成了12V。IR2104是自带死区保护的,所以程序上应该好实现点,而且2104的低端和高端的输出电压可以达到11V左右,驱动能力是绝对够用的。2104的低端LO输出电压是直接相对于COM端的电位的,因为COM端接地,所以说就算低端输出没有接MOS管,而低端的输出也是正常的。但是高端HO的输出就不一样了,高端HO的输出电压是相对于Vs的,如果Vs没有接入MOS管构成的半桥电路的话,也就是Vs不接地构成回路,是测不出HO端的波形的,但是不接半桥电路的HO和Vs输出也是有的,大概在8V左右。而在接上MOS管构成的半桥电路后我们测得的HO波形和LO波形是完全互补的,并且死区效果也很好。至于电路中的二极管我们用的是肖特基二极管,只要耐压值够就行,基本上不过电流,实验证明换成普通的二极管也完全可以。自举电容C1用的是CBB电容,但是用点解电容也完全可以。
    电路原理:通过输入电压为低压侧和高压侧提供基准电压,对于低端输出,芯片内部通过对COM端的参考,直接对LO输出电压,而HO是要参考Vs,也就是高侧浮动电压,这样才能对HO有个较准确的输出。
    在这里插入图片描述
    电路注意事项:在一开始的电路设计中,我们买的2104是直插的封装,本来想着做成单层板直插的方便,可谁曾想,我们第一版的驱动电路中就出现在2104这个芯片上,具体那个直插的芯片问题出在哪里我们还没找到原因就扔完了。最后我们又买的贴片的,然后用转接板,驱动电路就好了。但是我们在调试的时候,刚开始驱动电路空载的时候,2104的低端输出是有波形的,而且高端的输出是没有波形的,这很正常。但是有天晚上我们在测量输出波形的时候,低端的输出波形出现了电容效应,我们就不知道该怎么办了,一直在考虑问题出在了哪里,刚开始觉得是电路板转印的效果不好,因为坑坑洼洼的,怕是电路板上的走线出现了电容效应,导致输出的波形也不对了。然后我们又把自举电容换了换,从10uF换成了22uF的,结果还是不太行。最终我们没有办法了,我们就没再管了,但是到了第二天我们再测驱动电路的时候,低端输出的电容效应的波形就完全消失了。我们也一脸懵,至今也不知道是为什么就正常了,可能是自举电容需要放电吧。从这之后我们又做了几板驱动电路,都是没有问题的。

  3. 测量电路
    说明:我们的测量电路的方案选择的是用ADS1118芯片来作为AD采集的处理芯片,然后用INA282作为电流采集的芯片,通过INA282转换为电压值测量,再通过ADS1118来进行电压处理。
    电路原理:就是普通AD采集电路,只不过处理精度高,程序操作困难而已。
    在这里插入图片描述
    电路注意事项:我们的这个测量电路倒是没有出现什么问题,也可以说我也不知道什么地方会出现问题,因为测量电路我没参与调试,通过后面的检测中,我们的测量电路并没有什么问题。我们把测量电路和我们的最小系统板做到了一块板子上,一是连线方便点,二是节省空间。我们把测量电路的板子做成了双层板,发给厂家打样了,第一版的测量电路因为ADS1118的封装问题,就耽误了一段时间,因为我们当初买的ADS1118还没到,所以就没有个实物比对,又想着赶紧做出来实际电路,所以第一版就直接淘汰了。第二版我们把ADS1118做成了转接板的形式,这里注意一下在把ADS1118焊到转接板上的时候要小心,因为1118的引脚很近,而且转接板上的焊盘裹锡也不多,所以尽量别用热风枪吹,直接拿焊锡往上焊,把焊盘两边都先上多点锡,最后用吸锡枪吸出来多余的锡就好了,一般都不会连焊,连焊的话就放点松香在引脚上,用烙铁一加热就行了。
    这个测量电路中还有一个问题就是ADS1118的程序问题,因为1118是一个可编程器件,而且使用SPI协议,相对来说这个芯片比较麻烦点。

  4. 辅助电源
    说明:我们的辅助电路所用的处理芯片是TPS5430,外加上LM1117稳压芯片,总共三个电压输出端,12V、5V、3.3V。
    电路原理:从学生电源引出来的36V电压接到TPS5430的输入引脚,从8引脚输出,经过滤波电容到达分压网络,通过调节电阻大小,就能得到想要的电压,具体从5430的得到的最小电压值是多少,这个我们还没测过。然后通过12V输出到7805进一步降压得到5V,经过1117-3.3得到3.3V电压。
    在这里插入图片描述
    电路注意事项:辅助电源倒也没出什么问题,一开始我们打算用覆铜板将这个辅助电源模块给做出来,但是在第一版覆铜板做出来的时候,我们的元器件不够。当我们买的第一批元器件到了之后我们做的打样板也回来了,所以就直接焊接进行调试了。在第一次调试的时候我们的12V输出就没有值,我们把那个二极管给焊反了,导致输入电压直接导地。第二次调试12V输出还不到1V,原因是从R1和R2之间的分压点反馈回给TPS5430的4引脚的电压不对,一般来说这点的反馈电压应该在1.2V左右,但是我们的反馈就直接没有,因为是打样的板子,我觉得不应该是板子内部的线连接出现问题,但是我们又引出一条飞线到4引脚之后,问题就解决了,我觉得应该是芯片的引脚虚焊了,后面的我们的5V和3.3V的电压是很正常的。实验证明这款辅助电源模块效果很好,带载能力也完全可以,同时给驱动电路、测量电路和单片机供电是没问题的。

上述的就是我们做15年电源题的过程了,我们林林总总准备的时间不到一个半月,尽管我们把13年的、15年的、17年的电源题都做了下,但是就15年的题做的彻底。虽然写的很烂,但是能凑活着看吧。

如果想要关于这个15年题的PCB和原理图及代码的同学可以留言,不对的地方也请劳烦大家能给小弟指出不足。

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

2019年电赛之路——2015年电子设计竞赛A题任务设计 的相关文章

  • JAVA代码实现ElasticSearch搜索(入门-进阶)(一):搜索方法、多字段查询、高亮展示

    一 搜索方法对比 首先存入一条数据count i like eating and kuing 默认分词器应该将内容分为 i like eating and kuing 1 QueryBuilders matchQuery count cou
  • 报错TranscationalController3#addUser(String, String)to { [/trans/addUser]}: There is already ‘transcat

    TranscationalController3 addUser String String to trans addUser There is already transcationalController bean method con
  • js 处理树形结构数据

    js 处理树形结构数据 数据 let data id 1 address 安徽 parent id 0 id 2 address 江苏 parent id 0 id 3 address 合肥 parent id 1 id 4 address
  • Educoder - Java面向对象 - 文件类

    掌握知识点 第一关 IO包了解 File类了解 FileFileter类了解 IOException类了解 linux操作系统了解 通关源码 第1关 创建文件 package step1 import java io File import
  • JSON字符串不规范命名(java的规范)的解决办法

    为什么80 的码农都做不了架构师 gt gt gt 在建立json对应的java实体的时候 正常我们是实体的属性名和json的key名字保持一致的 这样在转换的过程中就能保存上对应key的value值 但是遇到不规范命名的json的时候咋办
  • flatten-maven-plugin 的使用

    引入 flatten maven plugin flatten maven plugin 插件的功能就不赘述了 网上也有很多文章描述这一块的内容 以一个 maven 多模块的项目为例 使用的时候直接在项目的父 pom 里加入如下的配置
  • matlab 分类学习工具箱 Classification Learner的使用及导出其生成的图,混淆矩阵confusion matrix的画法

    声明 转自https blog csdn net qq 27914913 article details 71436838 https blog csdn net evil xue article details 89765890 在mat
  • Golang语言记录

    编译成Linux可执行文件 先设置环境 SET GOARCH amd64 SET GOOS linux SET CGO ENABLED 0 然后运行 go build o 编译成的文件名 Golang的格式化输出 定义示例类型和变量 typ
  • GD32F310 (二) 按键轮询输入

    目录 首言 一 按键输入初始化 二 按键main 应用 首言 作者 小飞虫科技 淘宝 首页 小虫飞科技 淘宝网 taobao com 开发板 GD32F3X0系列 一 按键输入初始化 void KEY Init void enable th
  • 【华为OD机试真题2023B卷 JAVA&JS】勾股数元组

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 勾股数元组 知识点编程基础 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 如果3个正整数 a b c 满足a2 b2 c2的关系 则称 a b c 为勾股数 著名的勾
  • C#中Validating和Validated事件

    您可能经常需要检查用户输入到 Windows 窗体中的信息是否有效 例如 如果您有一个电话号码的 TextBox 控件 则可以检查该控件是否只包含适当的字符 数字 括号和连字符等等 通常 可使用正则表达式验证用户输入的数据 了解Valida
  • powerdesigner汉化包

    PowerDesigner是一款专业的建模工具 如果你希望使用中文界面 你可以尝试使用汉化包 汉化包是一种用于翻译软件界面的工具 它可以将英文界面翻译成中文 你可以在网上搜索 PowerDesigner汉化包 并下载适合你当前版本的汉化包
  • 字符串函数的使用及模拟实现:strtok&strstr&strerror:

    字符串函数strstr的使用 char strstr const char str1 const char str2 Returns a pointer to the first occurrence of str2 in str1 or
  • LeetCode338. 比特位计数

    题目连接 https leetcode cn com problems counting bits 解题思路 这道题需要计算从 0 到 num 的每个数的二进制表示中的 1 的数目 最直观的方法是对每个数直接计算二进制表示中的 1 的数目
  • 使用c++超详细解释数据结构中的顺序栈和链栈

    在C 中 栈 Stack 是一种数据结构 它可以用来存储数据 并支持两种基本操作 压入 Push 和弹出 Pop 栈的特点是后进先出 Last In First Out LIFO 也就是最后压入的元素最先弹出 栈可以用数组或链表等数据结构来
  • hdu2030 汉字统计

    hdu2030 汉字统计 Time Limit 2000 1000 MS Java Others Memory Limit 65536 32768 K Java Others Total Submission s 4080 Accepted
  • 树莓派的杂七杂八

    一 交叉编译jpeg 9a 生成的库为libjpeg so 先从官网下载交叉编译器 直接解压到本地 将bin目录加入到系统变量中后 进入目录执行 configure CC arm none linux gnueabi gcc enable
  • 如何在 Flink 1.9 中使用 Hive?

    Flink on Hive 介绍 SQL 是大数据领域中的重要应用场景 为了完善 Flink 的生态 发掘 Flink 在批处理方面的潜力 我们决定增强 FlinkSQL 的功能 从而让用户能够通过 Flink 完成更多的任务 Hive 是
  • 字符串 有效的字母异位词

    LC 有效的字母异位词 给定两个字符串 s 和 t 编写一个函数来判断 t 是否是 s 的字母异位词 注意 若 s 和 t 中每个字符出现的次数都相同 则称 s 和 t 互为字母异位词 func isAnagram s String t S

随机推荐

  • 华为云云耀云服务器L实例评测|使用Docker部署Leanote笔记工具

    华为云云耀云服务器L实例评测 使用Docker部署Leanote笔记工具 一 前言 1 1 云耀云服务器L实例介绍 1 2 Leanote简介 二 本次实践介绍 2 1 本次实践简介 2 2 本次环境规划 三 购买云耀云服务器L实例 3 1
  • Vue2基本知识

    记录Vue2基本知识 从引入vue js文件开始 然后提出问题 1 我们使用vue后怎样将外部数据传递给我们的DOM对象 2 DOM对象中的数据如果改变 如何通知外部数据改变 最后对问题分析得出答案 完整记录vue2中基础指令知识 提供完整
  • 一文教你在 centos7 下安装 Oracle19 C(完整版)

    前言 安装 Oracle 一直是本人工作以来想要做的事情 但是一直都没有安装成功 本人有一个习惯 所有的软件基本上都安装在centos系统下 这样 一方面是 在日常工作中 都是linux环境 另一方面 装在linux虚拟中 万一哪天你想退出
  • 04-7_Qt 5.9 C++开发指南_QTreeWidget和QDockWidget

    文章目录 1 实例功能简述 2 源码 2 1 可视化UI设计 2 2 mainwindow h 2 3 mainwindow cpp 1 实例功能简述 本节介绍 QTreeWidget QDockWidget 的使用 以及用 QLabel
  • osg漫游器

    在三维中常见的就是漫游整个场景 所谓漫游就是 观察者的视线从一个位置移动到另外一个位置或者在希望的方向上移动 在OSG中漫游可以通过改变观察者 相机 的位置和姿态来实现 三维世界中的模型的相对位置和形态不会发生变化 只是观察者的角度和位置发
  • c++学习笔记-指定二维vector大小

    在对二维vector如 vector lt
  • 阅读笔记篇卷首语

    2023年8月31日 周四晚上 我决定开设这个专栏 因为我知道有些文章可以改变人生 值得去细读
  • 【unity3D】创建TextMeshPro(TMP)中文字体(解决输入中文乱码问题)

    未来的游戏开发程序媛 现在的努力学习菜鸡 本专栏是我关于游戏开发的学习笔记 本篇是unity的TMP中文输入显示乱码的解决方式 创建 TextMeshPro 中文字体 遇到的问题描述 解决方式 Font Asset Creator 面板扩展
  • linux基本命令大全

    基本命令 关机 shutdown h halt init 0 poweroff 重启 shutdown r reboot init 6 pwd 查看工作目录 ls 查看指定目录的内容 l 列表显示 a 显示所有 包括隐藏文件 h 人性化的显
  • 【QT学习笔记】QAction和QToolButton的使用

    QAction可以在QT Creator中Action Editor中创建 QAction创建之后的两个使用方式 放到tool bar中 跟QToolButton绑定 ui gt tBtnListIni gt setDefaultActio
  • 虚拟服务器如何传东西,虚拟服务器如何传东西

    虚拟服务器如何传东西 内容精选 换一换 华为云帮助中心 为用户提供产品简介 价格说明 购买指南 用户指南 API参考 最佳实践 常见问题 视频帮助等技术文档 帮助您快速上手使用华为云服务 计费项包括存储费和流量费 存储费根据存储库的不同进行
  • Reinforcement Learning 强化学习(四)

    Task03 本次学习主要参照Datawhale开源学习及强化学习蘑菇书Easy RL 第4章 策略梯度 Policy Gradient 4 1 策略梯度算法 在强化学习中有 3 个组成部分 演员 actor 环境 environment
  • odoo tree form 视图禁止创建、修改、删除、复制

  • 用标准C语言初始化线性表,c语言实现线性表的初始化,创建,查找,删除

    1 第一步定义线性表结构 typedef struct ElementType data MaxSize int length Lineartable 2 第二步线性表初始化 初始化线性表 Lineartable INITAL Linear
  • Go 每日一库之 gjson

    快速使用 先安装 go get github com tidwall gjson 后使用 package main import fmt github com tidwall gjson func main json name first
  • Hackinglab(鹰眼)——解密关

    目录 1 以管理员身份登录系统 2 邂逅对门的妹纸 3 万恶的Cisco 4 万恶的加密 5 喜欢泡网吧的小明 6 异常数据 7 md5真的能碰撞嘛 8 小明爱上了一个搞硬件的小姑凉 9 有签名限制的读取任意文件 10 美丽的邂逅与密码器的
  • 什么是卷积

    什么是卷积 卷积 convolution 是一种运算 你可以类比于加 减 乘 除 矩阵的点乘与叉乘等等 它有自己的运算规则 卷积的符号是星号 表达式为 连续的为 f g
  • 小程序web-view打开PDF格式文件的安卓苹果兼容性问题

    小程序中打开pdf格式原本可以使用web view 承载网页的容器 会自动铺满整个小程序页面 个人类型的小程序暂不支持使用
  • 《小岛区块链》之区块链起源

    今天我们开始 小岛区块链 的第三章节 智能合约 本文衔接于 小岛区块链 第二章节 共识之后 为方便大家理解 请先阅读 小岛区块链 之起源 小岛区块链 之共识 一 选举记账还能再升级一下吗 上回说到 在小郑的提议下 鹿谷的村民们都开始按照投票
  • 2019年电赛之路——2015年电子设计竞赛A题任务设计

    参加19年电赛 我们奔着电源题来的 所以我们一开始要练习的题目就选定了15年的A题 因为我们找到了几个国一方案 但是只有一个方案 代码和PCB图都没有 这也是我们失误的地方 本来的路线应该是找一个成品方案 模仿着做下来 先做下来一个题目后