电路仿真软件PSIM简介
在从事开关电源相关产品开发的工程师或者正在学习开关电源的学习者,常常会用到各种仿真软件进行电路的仿真,不仅可以快速验证电路参数,还能清楚知道各器件的工作状态。
现在的电路仿真软件很多,例如matlab、Multisim、Simplis,其中matlab最为知名。然而,matlab并不是专为电路仿真而生的,其功能强大,涉及的领域众多。
所以对于只想进行开关电源电路仿真的使用者来说,matlab显得很“臃肿”。初学者刚使用matlab时会觉得摸不着头脑,甚至连自己想要的器件模型都找不到,或者搭建模型后一运行就各种报错。
现在介绍另一款常用的电路仿真软件:PSIM。这款软件安装包小,使用简单、运行速度快、功能完善,还可以跟matlab、LTspice兼容。非常适合开关电源的电路仿真。

PSIM是Altail平台的专用于电力电子领域以及电机控制领域的仿真应用包软件。PSIM全称Power Simulation。PSIM是由SIMCAD 和SIMVIEM两个软件来组成的。SIMCAD用于电路模型搭建,SIMVIEM用于仿真数据解析。
PSIM并不经常更新版本,不像matlab一年就有两个版本。目前的最新版本是2024版。软件本身就支持中英文、日文。
PSIM的元器件库很丰富,使用起来也很简单。

对于一些不会使用的器件,直接打开帮助就有详细的介绍。如下是一个二阶低通滤波器的介绍。

如果库里没有你想要的元器件,还可以从spice导入器件参数。
现在用PSIM来搭建一个简单的buck电路模型,来简单讲解PSIM的使用。

在“文件”中选择“新建”即可创建一个空白工作区。然后在元件库选择器件并放置,搭建电路模型如下。

*关于MOSFET模型的说明:

打开MOSFET的参数,里面可以设置导通电阻、二极管压降等基本的参数。但是并没有Ciss、Coss等寄生参数的。如果想实现更现实的仿真,可以在“模型级别”里选择其他类型,更高级的模型能设置更详细的参数。

对于二极管、IGBT这类功率型半导体,都是可以选择模型级别的。
*关于PWM发波器的说明:
PSIM里可选择的PWM发波器有很多,例如上述模型使用的是一个最简单的方波发生器,可设置占空比、延时、频率、死区时间。

我们还可以使用SimCoder里的PWM发生器来实现更复杂的PWM。这种PWM就很类似DSP中的ePWM。对他进行配置就能实现PWM的灵活控制。

如果觉得上面的器件还是不够灵活,还可以使用C模块自己手写PWM发生器,以实现更复杂的逻辑。
*关于仿真控制器的说明:
仿真控制器用于设置求解器类型、时间步长、仿真时间、打印时间等参数。仿真控制器需要在“仿真”里选择“仿真控制”,然后将仿真控制器放置在工作窗口,它是形似时钟的一个图标。

--“求解器类型”即设置仿真的步长是否可变。如果不可变,则按固定的时间间隔来进行仿真运算。如果可变、则仿真器会自动调整运算步长,来节省时间且不失真。不过,如果在模型中使用了C模块,则不可以使用可变步长。
--“时间步长”即多长时间进行一次仿真计算。一般需要根据电路中的最高频率来确定。设置的太小,仿真速度会很慢;设置的太大,则仿真出来的数据会失真。
--“总时间”即电路的仿真时间。这并不是软件仿真完成所花费的时间。
--“打印时间”即仿真数据开始保存的时间点。比如我们希望在0.1s时开始保存数据,那么0.1s之前的仿真结果将被舍弃,无法查看。这个功能有利于我们直接查看稳态的仿真数据。
最后需要注意,如果需要测量电路某个位置的电压电流波形,则需要在该位置放置电压或者电流探头。只有放置了电压电流探头的位置,才能在simview中查看到波形。

模型搭建完成后,点击主界面的按钮,运行仿真。窗口右下角可查看仿真进度。

在运行过程中,双击打开电压或者电流探头,勾选“实时图像”,即可查看实时的波形图。不过并不能对其进行测量。

运行完成后,点击simview,可打开仿真数据显示。
初次打开的simview是空白的,需要手动将想查看的变量添加到窗口。这需要我们先添加一个视屏窗口,然后将需要的变量添加到显示。

simview可以同时添加多个视屏窗口,一个视屏窗口也可以添加多个变量。

我们还可以选择各窗口的排列方式。如果想删除某个窗口,在对应的窗口右击选择“删除视屏”即可。

如果我们想对窗口的波形进行测量,在下方的工具栏打开测量标尺即可。

如果想更改波形的颜色、粗细等,在“选项”里选择“默认显示设置”即可操作。

波形的缩放、平移在图示位置。

当我们修改了电路模型的参数后再进行仿真,仿真完成后,无需重新打开SIMview,只需点击“重载数据”按钮,即可加载最新的仿真结果。

以上就是PSIM的基本使用。
如有错误,欢迎指正。
相关文章:
电路仿真软件PSIM简介
在从事开关电源相关产品开发的工程师或者正在学习开关电源的学习者,常常会用到各种仿真软件进行电路的仿真,不仅可以快速验证电路参数,还能清楚知道各器件的工作状态。 现在的电路仿真软件很多,例如matlab、Multisim、Simplis&…...
C语言:调试的概念和调试器的选择
所谓调试(Dubug),就是跟踪程序的运行过程,从而发现程序的逻辑错误(思路错误),或者隐藏的缺陷(Bug)。 在调试的过程中,我们可以监控程序的每一个细节ÿ…...
25. C++继承 1 (继承的概念与基础使用, 继承的复制兼容规则,继承的作用域)
⭐上篇模板文章:24. C模板 2 (非类型模板参数,模板的特化与模板的分离编译)-CSDN博客 ⭐本篇代码:c学习 橘子真甜/c-learning-of-yzc - 码云 - 开源中国 (gitee.com) ⭐标⭐是比较重要的部分 目录 一. 继承的基础使用 1.1 继承的格式 1.2 …...
git 退出编辑模式
在使用 Git 时,有时需要进入编辑器来输入提交信息或进行其他编辑操作。不同的系统和配置可能会导致使用不同的编辑器。以下是几种常见 Git 编辑器的退出方法: Vim 编辑器: 保存并退出: 按下 Esc 键退出编辑模式。输入 :w…...
内容营销与传统营销方式有哪些差别?
在互联网高度发达的当下,碎片化的信息接收方式,让用户对于营销信息拥有较高的敏感度。这一现状,也使得众多传统营销方式正在逐渐失效。想要稳定推广效率,内容营销是当下不少品牌的共同选择。接下来,就让我们来了解下内…...
EasyExcel(读取操作和填充操作)
文章目录 1.准备Read.xlsx(具有两个sheet)2.读取第一个sheet中的数据1.模板2.方法3.结果 3.读取所有sheet中的数据1.模板2.方法3.结果 EasyExcel填充1.简单填充1.准备 Fill01.xlsx2.无模版3.方法4.结果 2.列表填充1.准备 Fill02.xlsx2.模板3.方法4.结果 …...
【华为OD-E卷 - 机房布局 100分(python、java、c++、js、c)】
【华为OD-E卷 - 机房布局 100分(python、java、c、js、c)】 题目 小明正在规划一个大型数据中心机房,为了使得机柜上的机器都能正常满负荷工作,需要确保在每个机柜边上至少要有一个电箱。 为了简化题目,假设这个机房…...
【竞技宝】LOL:IG新赛季分组被质疑
北京时间2024年12月31日,今天已经2024年的最后一天,在进入一月之后,英雄联盟将迎来全新的2025赛季。而目前新赛季第一阶段的抽签结果已经全部出炉,其中人气最高的IG战队在本次抽签中抽到了“绝世好签”引来了网友们的质疑。 首先介…...
ChatBI来啦!NBAI 正式上线 NL2SQL 功能
NebulaAI 现已正式上线 NL2SQL 功能,免费开放使用! 什么是 NL2SQL?NL2SQL 即通过自然语言交互,用户可以轻松查询、分析和管理数据库中的数据(ChatBI),从此摆脱传统复杂的数据库操作。 欢迎免费…...
8. Web应用程序(Web)
8. Web应用程序(Web) Spring Boot 非常适用于Web应用程序开发。你可以使用嵌入式 Tomcat、Jetty、Undertow或Netty创建一个独立的HTTP服务器。大多是Web应用程序都会使用 spring-boot-starter-web 依赖模块来快速启动和运行项目。你也可以选择使用 spri…...
Linux内核修改内存分配策略
今天遇到了如下的内核报错 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f0e1e06c000, 65536, 1) failed; errorCannot allocate memory (errno12)这个报错是因为,linux会对大部分的内存资源申请都回复允许,以便于运行更…...
六大亮点解析:AI视频监控助力部队训练安全管理
一、用户痛点: 在部队的日常训练和任务执行中,官兵的安全始终是最为重要的保障。然而,传统的监控方式存在显著的局限性,尤其是在高强度、长时间的训练过程中,人工值守监控容易产生疲劳,误判的风险大&#…...
【从零开始入门unity游戏开发之——C#篇33】C#委托(`Delegate`)和事件(`event` )、事件与委托的区别、Invoke()的解释
文章目录 一、委托(Delegate)1、什么是委托?2、委托的基本语法3、定义自定义委托4、如何使用自定义委托5、多播委托6、C# 中的系统委托7、GetInvocationList 获取多个函数返回值8、总结 二、事件(event )1、事件是什么…...
大数据与机器学习(它们有何关系?)
想了解大数据和机器学习吗?我们将为你解释它们是什么、彼此之间有何关联,以及它们为何在数据密集型应用中如此重要。 大数据和机器学习是如何相互关联的? 大数据指的是传统存储方法无法处理的海量数据。机器学习则是计算机系统从观察结果和…...
深入浅出 Spring(一) | Spring简介、IOC理论推导、快速上手 Spring
1. spring 1.1 简介 Spring : 春天 —>给软件行业带来了春天 2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。 2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。 很难想象…...
IDEA 社区版 SpringBoot不能启动
报错原因,Failed to load class [javax.servlet.Filter] <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope> </dependency>…...
职场常用Excel基础01-数据验证
大家好,excel在职场中使用非常频繁,今天和大家一起分享一下excel中数据验证相关的内容~ 在Excel中,数据验证(Data Validation)是一项非常有用的功能,它可以帮助用户限制输入到单元格中的数据类型和范围&am…...
活动预告 |【Part1】Microsoft Azure 在线技术公开课:数据基础知识
课程介绍 参加“Azure 在线技术公开课:数据基础知识”活动,了解有关云环境和数据服务中核心数据库概念的基础知识。通过本次免费的介绍性活动,你将提升在关系数据、非关系数据、大数据和分析方面的技能。 活动时间:01 月 07 日…...
RabbitMQ - 1 ( 7000 字 RabbitMQ 入门级教程 )
一: 在互联网行业,许多公司喜欢用动物命名产品或作为公司的 Logo 和吉祥物,比如腾讯的企鹅、京东的狗、美团的袋鼠、携程的海豚,而阿里更是凭借蚂蚁、飞猪、天猫、菜鸟、闲鱼、盒马等,打造了一座“动物园”。Rabbit&a…...
Docker Compose 构建 EMQX 集群 实现mqqt 和websocket
EMQX 集群化管理mqqt真香 目录 #目录 /usr/emqx 容器构建 vim docker-compose.yml version: 3services:emqx1:image: emqx:5.8.3container_name: emqx1environment:- "EMQX_NODE_NAMEemqxnode1.emqx.io"- "EMQX_CLUSTER__DISCOVERY_STRATEGYstatic"- …...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
