微软公司宣布不再支持你正在使用的 IE浏览器,这会严重影响浏览网页,请使用微软最新的Edge浏览器
您好, 登录| 注册|

(PSIM仿真)教你如何使用C-block

  • 2021-09-06 15:22
  • Richie_Li

    LV.0
  • 2820

    浏览

  • 5

    回复

  • 8

    获赞

  • PSIM作为一款非常便捷的电力电子仿真软件,主要是得益于其丰富的功能模块,下面我主要讲解一下C-block模块的使用;

    1、首先打开软件,新建文件,然后找到C-block模块;

    2、C-Block模块功能介绍如下:

    3、为什么要学习C-Block模块,我们举个列子,比如我们有三相正弦信号a\b\c,我们需要求取a\b\c三个信号的最大值与最小值之和的一半;o={min(a,b,c)+max(a,b,c)}/2;如果我们用硬件电路去搭建的话仿真图会比较复杂,这时候C-Block模块就体现出它的优势出来了;

    运算结果如下:

    从上面的应用你可能也开始意识到了C-Block的功能了,是的在我们做数字电源控制的时候,C-Block模块就可以进行编程,实现我们模块的数字控制;

    下面我们通过一个简单的Buck电路,引入C-Block数字控制:

    1、简单BUCK电路,电压环控制,输入50V,输出10V;

    2、先搭接好电路,控制环路;

    3、调用PID模块调试合适的PID参数(只用了P和I);

    4、将调试好的参数转换成C语言;

    //********************PID参数*********************//    

       double PWM_PID=0;

    const double PID_K1=0.0525;    //k1=kp*(1+Ts/ki)

    const double PID_K2=0.05;       //k2=kp    (Kp=0.05  Ki=1/1000  Ts=1/20000)  Ts控制采样频率

    double PID_Error_0=0;double PID_Error_1 =0;

    //*************************************************//

    /***************输入量获取**************/

    Vref=in[0];V1=in[1];

    /*************比例积分运算**************/

    PID_Error_1 = PID_Error_0;                     //存储当前偏差 

    PID_Error_0 = Vref-V1;                                  //偏差计算(积分)            

     PWM_PID+=( PID_K1 *  PID_Error_0-  PID_K2 *  PID_Error_1 );

    /***************PID输出限幅**************/

    if(PWM_PID<0) PWM_PID=0;

    if(PWM_PID>1)   PWM_PID=1;

    out[0]= PWM_PID;

    5、硬件模块和C语言控制效果对比;

    BUCK 电路仿真.zip

    同是电子工程师,请一定不要吝啬你的赞!

    8人已赞

    编辑 举报

    LV.1

    4258899

    2504852

    23

    781520

    说说你的看法

  • LV.

    @

    编辑

    删除

    举报

    #该内容仅管理员可见#

    #回复内容已被删除#

    #该内容正在审核#

    回复:

    取消
    发送
  • 现在还没有回复呢,说说你的想法

    现在还没有回复呢,说说你的想法

    全部回复(5)

  • yujunice

    LV.1

    2021-09-20 16:38

    @

    多谢分享,值得收藏学习下!

    0

    设为最佳答案

    置顶

    编辑

    删除

    举报

    #该内容仅管理员可见#

    #回复内容已被删除#

    #该内容正在审核#

    回复:

    4259103

    2504852

    23

    786567

    取消
    发送
    2
  • iszjt

    LV.1

    2021-09-27 11:05

    @

    请教一个问题,设置的步长是否可以理解出CPU的最小周期,对应CPU的频率?

    0

    设为最佳答案

    置顶

    编辑

    删除

    举报

    #该内容仅管理员可见#

    #回复内容已被删除#

    #该内容正在审核#

    回复:

    4259141

    2504852

    23

    736255

    取消
    发送
    3
  • Richie_Li

    LV.1

    2021-09-29 09:02

    @iszjt

    请教一个问题,设置的步长是否可以理解出CPU的最小周期,对应CPU的频率?

    是的,可以这么理解

    0

    设为最佳答案

    置顶

    编辑

    删除

    举报

    #该内容仅管理员可见#

    #回复内容已被删除#

    #该内容正在审核#

    回复:

    4259155

    2504852

    23

    781520

    取消
    发送
    4
  • 电源技能成长记

    LV.1

    2022-01-31 17:02

    @iszjt

    请教一个问题,设置的步长是否可以理解出CPU的最小周期,对应CPU的频率?

    步长应该是进行了离散化处理,仿真的步长越短越接近实际波形。CPU时钟是控制一个系统工作时序的。两个有本质上的区别吧?不知道说的对不。

    0

    设为最佳答案

    置顶

    编辑

    删除

    举报

    #该内容仅管理员可见#

    #回复内容已被删除#

    #该内容正在审核#

    回复:

    4260848

    2504852

    23

    777939

    取消
    发送
    5
  • Jinkz

    LV.1

    03-29 10:10

    @

    感谢分享

    0

    设为最佳答案

    置顶

    编辑

    删除

    举报

    #该内容仅管理员可见#

    #回复内容已被删除#

    #该内容正在审核#

    回复:

    4284015

    2504852

    23

    860454

    取消
    发送
    6
  • 现在还没有回复呢,说说你的想法

  • 回复

  • 收藏

  • 点赞

  • 举报有害信息

  • 已超出发布时间24小时,无法编辑与删除
    关于我们 联系方法 广告服务 会议服务 电子星球APP 网站地图 不良信息举报 热线:400-003-2006
    © 2002-2023 Netbroad(网博互动)公司版权所有 津ICP备 11006234号-2 联网备案号:12010402000747 增值电信业务经营许可证:津B2-20120058