【电力电子】1 Cuk仿真电路

news2024/10/6 3:25:54

【仅供参考

【2022.11西南交大电力电子仿真】

参考博客

[1] Cuk电路的参数计算及仿真_cuk电路参数计算-CSDN博客

目录

1 仿真电路搭建及波形记录

1.1 DCM工作模式

1.2 CCM工作模式

 2 PI控制器的设计


1 仿真电路搭建及波形记录

        仿真要求:建立输入24V输出5V额定功率100WCuk变换器仿真电路,分析开关器件、电感和二极管在连续和不连续工作模式下的电压、电流波形。

1.1 DCM工作模式

        根据输出电流电压一般情况下的纹波要求,通过计算,确定元器件选型;根据输出电压和输入电压关系,确定开关管门极电压PWM波的占空比。

        根据代码[1]

clear;clc;
 
Vin = 24; %输入电压单位V
Vout = 5; %输出电压单位V
Fs = 100000; %开关频率单位Hz
Iout = 20; %输出电流单位A
DeltaIin = 0.2; %输入电流纹波单位A
DeltaIout = 0.2; %输出电流纹波单位A
DeltaVc = 0.01; %输出电压纹波单位V
 
Ts = 1/Fs; %开关周期
duty = Vout / (Vout+Vin);
L1 = (Vin * duty * Ts) / DeltaIin;
L2 = (Vin * duty * Ts) / DeltaIout;
C1 = (Iout * duty * Ts) / DeltaVc;
C2 = (DeltaIout * Ts) / ( 8 * DeltaVc);
 
duty = duty * 100; %单位%
Ts = Ts * 10^6; %单位us
L1 = L1 * 10^6; %单位uH
L2 = L2 * 10^6; %单位uH
C1 = C1 * 10^6; %单位uF
C2 = C2 * 10^6; %单位uF
 
fprintf('duty  = %.1f%%\n',duty);
fprintf('Ts	  = %.1fus\n',Ts);
fprintf('L1	  = %.1fuH\n',L1);
fprintf('L2	  = %.1fuH\n',L2);
fprintf('C1	  = %.1fuF\n',C1);
fprintf('C2	  = %.1fuF\n',C2);

        可得(注意!!!因用代码得到的数值跑出的仿真不甚理想,故对数值进行了调整):占空比duty = 17.24%,开关管导通关断频率 = 10000Hz,电感L1 = 133uH,电感L2 = 133uH,C1 = 4700uF,C2 = 3300uF。通过8通道Scope示波器模块,可观测到开关器件、电感和二极管在连续工作模式下的电压、电流波形如图:

        根据仿真结果,输出电压稳定在-5.025V附近,输出功率稳定在101W附近。与理论值相差均不超过5%。

1.2 CCM工作模式

        基于CCM工作模式下元器件选型,仅改变将电感L1改变为1uH、电感L2改变为1H。可观测到开关器件、电感和二极管在连续工作模式下的电压、电流波形如图:

 2 PI控制器的设计

        设计要求:对输出电压进行闭环稳压反馈控制,实现负载从空载-半载-满载-空载的动态仿真。
        用四个方波(赋值分别为:0、-5*sqrt(2)/2 -5+5*sqrt(2)/2、5,step time分别为:0.25 、0.5 、0.75)生成输出电压的参考值方波。 PI 控制器中的KP = 0、KI = 3。
        搭建仿真电路如图:

        可观测到输出功率与输出电压波形变化如图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1390852.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

通过OpenIddict设计一个授权服务器02-创建asp.net项目

在这一部分中,我们将创建一个ASPNET核心项目,作为我们授权服务器的最低设置。我们将使用MVC来提供页面,并将身份验证添加到项目中,包括一个基本的登录表单。 创建一个空的asp.net core项目 正如前一篇文章中所说,授权…

从零开始:Golang中JSON解析与生成的完全指南

从零开始:Golang中JSON解析与生成的完全指南 引言Golang与JSON:基础概念JSON简介为何在Golang中使用JSON Golang中JSON数据的解析使用encoding/json解析JSON解析成基本数据类型解析成自定义结构体错误处理和常见问题 Golang中生成JSON数据将Golang对象转…

ZABBIX根据IP列表,主机描述,或IP子网批量创建主机的维护任务

有时候被ZABBIX监控的主机可能需要关机重启等维护操作,为了在此期间不触发告警,需要创建主机的维护任务,以免出现误告警 ZABBIX本身有这个API可供调用(不同版本细节略有不同,本次用的ZABBIX6.*),实现批量化建立主机的维护任务 无论哪种方式(IP列表,主机描述,或IP子网)创建维护…

服务器里面很卡,打开文件卡住了一般是什么问题,怎么解决

随着互联网业务的快速发展,各项业务都绕不开服务器。在日常使用中,服务器有着非常重要的作用。而我们日常使用中,也会遇到各种各样的问题。最近就有遇到用户联系咨询德迅云安全,询问自己服务器突然很卡,打开文件都卡住…

预备知识02-自动微分

线性代数、微积分 这两个不作介绍,可以点击下方链接阅读原文 2.3. 线性代数 — 动手学深度学习 2.0.0 documentation (d2l.ai) 2.4. 微积分 — 动手学深度学习 2.0.0 documentation (d2l.ai) 梯度 在微积分中,对多元函数的参数求偏导,把…

【RabbitMQ】RabbitMQ高级:死信队列和延迟队列

目录 设置TTL(过期时间)概述RabbitMQ使用TTL原生API案例springboot案例 死信队列概述原生API案例springboot案例 延迟队列概述插件实现延迟队列安装插件代码 TTL实现延迟队列实现延迟队列优化 设置TTL(过期时间) 概述 在电商平台…

《数据结构》实验报告-实验二 栈与队列的应用

《数据结构》实验报告-实验二 栈与队列的应用 一、问题分析 (1)实验1中,火车进站和出站的过程,与后进先出的数据结构栈很相似。因为火车只能单方向进出站,前面进来的火车反而要等后面的火车先出站,这也导…

MongoDB面试系列-01

1. MongoDB 是什么? MongoDB是由C语言编写的,是一个基于分布式文件存储的开源数据库系统。再高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB旨在给Web应用提供可扩展的高性能数据存储解决方案。 MongoDB将数据存储…

php网站上传文件失败File upload failed(文件大小超过限制)

php项目中,用户上传文件报错:“File upload failed”,按如下代码输出文件名: $temp_name $_FILES[file][tmp_name]; $file_name basename($_FILES[file][name]);echo "Temporary File Name: " . $temp_name . "…

软件设计师3--CPU组成(运算器与控制器)

软件设计师3--CPU组成(运算器与控制器) 考点1:计算机结构考点2:CPU结构CPU包括运算器和控制器例题: 考点1:计算机结构 考点2:CPU结构 CPU包括运算器和控制器 运算器: 算数逻辑运算…

Git 使用与问题记录 二(公司快速上手版)

写在前面 记录自己学习的内容,方便后面忘记的时候查看。给像我一样的新手提供一点参考 正文 上一章已经安装好了Git,如何使用呢。我这里会分享两种办法,第一种是在VS2022中克隆代码,修改和提交;第二种是用命令提交。…

决战排序之巅(二)

决战排序之巅(二) 排序测试函数 void verify(int* arr, int n) 归并排序递归方案代码可行性测试 非递归方案代码可行性测试 特点分析 计数排序代码实现代码可行性测试 特点分析 归并排序 VS 计数排序(Release版本)说明1w rand( ) …

Ubuntu20.4 Mono C# gtk 编程习练笔记(一)

简言 Mono是Linux环境下C#的开发、编译及运行环境。gtk是gnome独具特色的图形库,Mono对它进行了C#封装。Linux环境下,许多的编程语言使用gtk界面库,有比较好的编程群众基础。另外,Mono相对于DOTNET来说要轻量许多,它们…

uniapp 使用canvas制作柱状图

效果图: 实现思路: 1、通过展示数据计算需要画几根柱子; 2、通过组件宽度、高度计算出每根柱子的宽度及高度; 3、for循环依次绘制每根柱子; 4、绘制柱子时,先绘制顶部百分比、value值,再绘制柱…

Grafana(二)Grafana 两种数据源图表展示(json-api与数据库)

一. 背景介绍 在先前的博客文章中,我们搭建了Grafana ,它是一个开源的度量分析和可视化工具,可以通过将采集的数据分析、查询,然后进行可视化的展示,接下来我们重点介绍如何使用它来进行数据渲染图表展示 Docker安装G…

跟着pink老师前端入门教程-day03

6. 表格标签 6.1 表格的主要作用 主要用于显示、展示数据&#xff0c;可以让数据显示的规整&#xff0c;可读性非常好&#xff0c;特别是后台展示数据时&#xff0c;能够熟练运用表格就显得很重要。 6.2 基本语法 <!--1. <table> </table> 是用于定义表格的标…

MySQL的内部XA的二阶段提交

内部XA 可能大家一听感觉很陌生&#xff0c;什么是XA&#xff1f;XA是一种分布式事务管理规范&#xff0c;MySQL内部有一个XA事务管理器来支持分布式事务&#xff0c;可能这么一听更懵了&#xff0c;那么我这么解释一下&#xff0c;MySQL是支持主从的&#xff0c;主从分布在不…

导入失败,报错:“too many filtered rows xxx, “ErrorURL“:“

一、问题&#xff1a; 注&#xff1a;前面能正常写入&#xff0c;突然就报错&#xff0c;导入失败&#xff0c;报错&#xff1a;“too many filtered rows xxx, "ErrorURL":" {"TxnId":769494,"Label":"datax_doris_writer_bf176078-…

预处理/预编译详解(C/C++)

在上一篇的bolg中的编译与链接中提到过预处理&#xff0c;但只是较为简单的讲解&#xff0c;本篇将会对预处理进行详细的讲解。 其中在预处理中很重要的一个一个知识点是#define定义常量与宏&#xff0c;还区分了宏与函数的区别&#xff0c;以及#和##符号&#xff0c;还涉及条件…

【Java SE】类和对象详解

文章目录 1.什么是面向对象2. 类的定义和使用2.1 简单认识类2.2 类的定义格式 3. 类的实例化3.1 什么是实例化3.1.1 练习&#xff08;定义一学生类&#xff09; 3.2 类和对象的说明 4. this 引用5. 构造方法6. 对象的初始化6.1 默认初始化6.2 就地初始化 7. 封装7.1 封装的概念…