在博主的上一篇《PSCAD 与 Matlab 接口》中已经实现了两者的连接,自然而然需要往下做的事就是新建一个简单的例子,动手尝试一下。
这里主要参考了某位大侠的文档《从零开始学习PSCAD与MATLAB的交互》,在此表示感谢。本文用于记录个人学习调试过程,绝无班门弄斧的意思。
调试环境:
Windows 7 + PSCAD 4.2.1 + Matlab R2008a + CVF 6.6
前期准备:
前面已实现PSCAD与Matlab的连接。
正餐:
1. PSCAD新建Case,然后New Component(建立Matlab Interface的元件):




注意这边的ConnectionName最好就是用INPUT和OUTPUT(与后面Script的编写有关).

2)选择parameters Tab进行设置:(这里由于本人懒惰,就直接借用一下参考文档大侠的图片,请原谅)




3. 然后再对元件的Script进行编写(脚本的作用主要是实现PSCAD与Matlab之间的数据传递)
STORF(NSTORF+0) = $INPUT 【将输入变量送进接口中,注意这里的INPUT与前文提到的要一致】
CALL MLAB_INT("%:Dir$Path", "$Name", "R(1)" , "R(1)"
$OUTPUT = STORF(NSTORF+1) 【从接口取得输出变量,注意这里的OUTPUT与前文提到的要一致】
NSTORF = NSTORF + 2

2)选择parameters Tab进行设置:(这里由于本人懒惰,就直接借用一下参考文档大侠的图片,请原谅)




注意这边的ConnectionName最好就是用INPUT和OUTPUT(与后面Script的编写有关).
2. 设置所建元件的对话窗口:
1)双击左边窗口的元件项(这里就是INTERFACE

2)选择parameters Tab进行设置:(这里由于本人懒惰,就直接借用一下参考文档大侠的图片,请原谅)




3. 然后再对元件的Script进行编写(脚本的作用主要是实现PSCAD与Matlab之间的数据传递)
这里直接给出可用的脚本(看着好像罗里吧唧一大堆,其实!开头的都是注释,数数一共就五句话):
我直接在代码上给出注释说明,用【】括住,若直接复制该脚本请先将【】删除;
#STORAGE REAL:2 【表示输入与输出变量共2个,即一个输入,一个输出】
! --------------------------------------------------
! --------------------------------------------------
! PSCAD/EMTDC - MATLAB INTERFACE
! --------------------------------------------------
! Transfer EMTDC Input Variables to Matlab Interface
! --------------------------------------------------
!
! First Input Array (REAL(2))
!
! --------------------------------------------------
! Call PSCAD/EMTDC Matlab Interface:
! CALL MLAB_INT("MFILEPATH","MFILENAME","Input Format","Output Format")
! --------------------------------------------------
【调用matlab,注意这里与元件对话框要一致,即Path,Name与对话框所设置的要一致】
!
! --------------------------------------------------
! Transfer Matlab Output Variables from Matlab Interface
! --------------------------------------------------
!
! First Output Array (REAL(1))
!
! Update STORx Pointers
【指针移动,2表示两个变量,与前面的#STORAGE REAL:2相对应】
! --------------------------------------------------
! --------------------------------------------------
ok,到此interface元件的设置基本完成。
4. m文件的设置与编写:
1)添加一下对应的m文件。

2)编写m文件的函数(这个就是matlab编程的事情了,这里简单地意思意思)。
function [out] = test(in)
out = in;
函数说明:Out,in都不能随便改,这是固定的语句。Function是函数的意思,test是这个函数的名称随便起。
5. 最后一下下:
打开matlab,运行一下PSCAD的程序,结果如下:
一切就是这么简单。

本文若是对你有帮助,愿意的话就回来留个言吧。
若有其他问题可留言,本人尽量做出解答。