zoukankan      html  css  js  c++  java
  • PSCAD4.2----自定义元件的过程

    推荐一个学习视频,讲的很详细:https://www.bilibili.com/video/BV1yV411d7GP?p=11

    先熟悉三个概念:

    定义的复制方法=》1,右键copy。2,export+import。

    元件实例化=》1,定义到实例,选中定义,create instance,目标位置去paste。2,实例到实例,ctrl c+ctrl v。

    信号传递方式=》1,定义连接端口。2,无线连接(radio)。3,输入参数连接。4,电气连接。

    下面正式开始===============================================

    一:创建元件,参数设置,图形调整

    1,在当前case 的circuit 界面空白处右键,create new component,到达wizard,然后根据提示完成即可。

     注意,page module勾选是创建组件。

    2,选中元件,右键 edit definition,graphic是编辑元件外观的,parameters是设置元件参数的,script是元件的代码描述。return to circuit view可以返回电路。

     3,参数的设置,这里举了一个例子,主要看symbol,是参数的符号,我们就是用这个符号来调用参数值,其他的都比较简单,看界面内容就知道了。preview dialog 可以预览我们的参数窗口。

     4,图像编辑,这里就讲一下改变参数改变图像界面的设置方法和显示参数的方法。

     上图所示在visibility condition 添加一个某图层显示的条件即可,view就是我们刚才设置的一个输入参数,这里调用,判断一下就可以,为ture时就显示。要注意的是这里调用参数需要参数设置好之后才可以,可以设置完参数后,回到电路,然后在进来编辑。

     上图就是在图形添加tex,然后这个%表示值替换前缀,它替换之后是带单位的,$也可以用,只替换的值,不会显示参数的单位。

    二:代码编写,这就是元件的核心呐

     segment manager,段管理器,可以添加d代码段,pscad 的fortran语言是分段的,每个代码功能都插入到对应的段里,估计是便于仿真代码运行的操作,代码有的好像需要空6格编写。注释用感叹号,首列。

    1,computations 段说明

     2,branch 段说明

     

     

    3,fortran 段说明

     

     4,checks 段说明

     5,help 段 comments段

     6,flyby说明段

     7,pscad fortran相关语法说明

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     8,fortran段代码举例如下,书写时,注意空格,不然会报错

    #LOCAL INTEGER caiyat
    #LOCAL REAL caiya_out
    #LOCAL REAL caiya_e1
    #LOCAL REAL caiya_e2
    
          IF ( TIMEZERO ) THEN
             caiyat=5000
             caiya_out=0
             caiya_e2=0
             caiya_e1=0
          ENDIF
    
          caiyat=caiyat+1
    
          IF ( caiyat==10000 ) THEN
             caiya_out=caiya_out+$P*($in-caiya_e1)+$I*$in+$D*($in-2*caiya_e1+caiya_e2)
             caiya_e2=caiya_e1
             caiya_e1=$in
             $out=caiya_out
                    caiyat=0
          ENDIF
  • 相关阅读:
    Android Studio git 使用
    LInux tty 非阻塞配置以及安全读取数据方法
    Android JNI LOG 打印
    Android APP JNI 编写
    插件地址
    Linux 设置默认路由
    Linux Shell 判断语句
    ORACLE存储过程创建失败,如何查看其原因
    ORACLE时间函数(SYSDATE)深入理解
    JS中,如何判断一个数是不是小数?如果是小数,如何判断它是几位小数 保留n位小数
  • 原文地址:https://www.cnblogs.com/caiya/p/12841511.html
Copyright © 2011-2022 走看看