参考实际工程应用软件开发工具中对于软件模块功能的分类,本课题所开发的直流控制保护系统仿真平台设置了五类自定义模型库,每类模型库中根据功能定位,分别具有若干独立的功能模块。分别是基本功能模块(MainCPU Basic)、预编译集成功能模块(Precomplied Functions)、通信功能模块(Communicaitons Elements)、触发功能模块(FPGA Functions)、调度及中断功能模块(Timing and Interrupt Function)。
图3-19 实际工程应用程序示例
图3-20 实际工程应用程序在仿真平台中的实现方式示例
图321 不同任务链执行周期验证逻辑
图322 不同任务链执行周期验证逻辑结果
3.4.2.1 基本功能模块
基本功能模块(MainCPU Basic)库主要包括布尔、计时、比较、模拟量处理和滤波函数等基本的函数功能。
3.4.2.2 预编译集成功能模块
预编译集成功能模块(Precomplied Functions)包括原MACH2系统及DCC800系统中的所有预处理模块,主要应用于电压调节器、低压限流控制、AMAX控制、换流器投退控制等。
(www.xing528.com)
3.4.2.3 通信功能模块
通信功能模块(Communicaitons Elements)组主要用于在EMTDC中搭建直流控制系统模型时,不同功能程序间进行数据通信,如MainCPU中如CFC、VARC、PPC间通信,BCP、PCP、CCP间通信,MainCPU程序与各DSP程序间通信等功能。
用于模拟站间或极间通信的通信模块如图323所示,该模块具有4个输入输出端子和2个参数,输入输出端子分别表示站间通信数据输入(SData_S)、极间通信数据输入(PData_S)、站间通信数据输出(SData_R)、极间通信数据输出(PData_R),数据支持数组格式。两个设置参数分别为站间通信延时和极间通信延时。
图323 站间和极间通信用户自定义EMTDC模块及参数
通信模块在设计与开发时需要根据PSCAD数据存储及寻址方式,实现对数据的处理。PSCAD/EMTDC中数据采用静态存储方式,每个数据均具有数据存放地址(NEXC),存放在该地址的数据为STOR(NEXC)。在实际工程的应用程序中,通信系统的软件部分也具有执行周期或中断时间的设置(用Tic表示),每个Tic根据实际需要可设置为50微秒至数十毫秒,通常需要一个独立的执行周期或中断时间调度机制来协调仿真软件自身的仿真步长与实际工程应用程序中的任务或功能模块的执行周期之间的对应关系,在仿真软件按仿真计算步长(一般按50μs)计算过程中,程序执行时间等于中断时间的整数倍时,就要执行用户自定义功能模块的代码,进行相应的数据处理和存储,使用户自定义模块按照设定的中断时间运行。通信模块的数据处理方式如图324所示。
图324 站间通信模块数据处理过程
以单个数据的处理过程为例,站间通信延时设为n个Tic,数据输入存储序列后(地址为NEXC),程序执行时间等于一个Tic的时长时,自定义模块使能位(Enable)赋值为1,该模块内程序监测到使能位有效后,将存储数值移动存储一个位置(地址为NEXC+1),在第2个Tic时,移动至下一个位置(地址为NEXC+2),依次类推,经过设定的通信延时后,该数据移动至输出位置(地址为NEXC+n)并经输出程序输出该数值,在上述过程中,新数值依次填补进相应的地址空间。对于站间或极间的多个数据而言,仅需预置一段存储空间,来满足通信延时的要求。
3.4.2.4 触发功能模块
触发功能模块(FPGA Functions)组主要用于模拟硬件FPGA的功能,完成预编译集成功能模块组中涉及FPGA功能处理及生成触发脉冲及触发时刻,执行解闭锁及投旁通对功能等。
3.4.2.5 调度及中断功能模块
调度及中断功能模块(Timing and Interrupt Function)主要用于控制在EMTDC中的控制系统模块的内部时间中断处理或外部中断。包括:
在每个程序页面中都需要放置Cycle Timing Set模块用于给每个功能模块的内部中断时间进行定义。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。