public class heiqidong {
int flag=1;//启动微电网黑启动策略
int numofload=3;//负荷数量
double load[]={10,20,30};//负荷大小
int loadbreaker0[]={1,1,1};//负荷出口断路器初始状态
int numofDG=3;//微电源数量
int DGbreaker0[]={1,1,1};//微电源出口断路器初始状态
int blackDG[]={1,1,0};//微电源的黑启动能力
int controlDG[]={0,0,0};//微电源的逆变器控制方式,1表示电压控制方式,0表示PQ控制方式
int startDG[]={0,0,0};//微电源的自启动信号
int startok[]={0,0,0};//微电源已启动标志
int numofstart=0;//已启动微电源数量
int refDG=0;//主参考源的编号
int syncDG[]={0,0,0};//微电源与主参考源同步并联信号
int syncok[]={0,0,0};//微电源已同步标志
int numofsync=0;//已同步微电源数量
double f[][]={{50,50,50,50,50},{49,51,50,50,50},{52,51,50,50,50}};//微电源出口频率
int i=0;
int t=0;
public static void main (String[] args) {
heiqidong hei=new heiqidong ();
hei.blackstart();
}
public void blackstart()
{
if(flag==1)//启动微电网黑启动策略
{
System.out.println("时刻"+t);
//MGCC检查网络,切断所有微电源及负荷
for(i=0;i<numofload;i++)
{
if(loadbreaker0[i]==1)
{
loadbreaker0[i]=0;
System.out.println("负荷"+i+"的出口断路器断开");
}
}
for(i=0;i<numofDG;i++)
{
if(DGbreaker0[i]==1)
{
DGbreaker0[i]=0;
System.out.println("微电源"+i+"的出口断路器断开");
}
}
//MACC选择具有黑启动能力的微电源以电压控制方式自启动
for(i=0;i<numofDG;i++)
{
if(blackDG[i]==1)
{
controlDG[i]=1;
startDG[i]=1;//向黑启动微电源发出自启动信号
startok[i]=1;//黑启动微电源已启动
System.out.println("黑启动微电源"+i+"以电压控制方式自启动");
++numofstart;
System.out.println("已启动微电源数量"+numofstart);
}
}
while(t<5)
{
//以主参考源的信息为参考,对已实现自启动的微电源进行同步,同步后与主参考源并联,并切换为PQ控制方式
if(numofsync!=(numofstart-1))
{
for(i=0;i<numofDG;i++)
{
if(i!=refDG)
{
if((startok[i]==1)&&(syncok[i]==0))
{
if(f[i][t]==f[refDG][t])
{
syncDG[i]=1;//向已启动的黑启动微电源发送同步信号
syncok[i]=1;//黑启动微电源已同步
DGbreaker0[i]=1;//黑启动微电源与主参考源并联
controlDG[i]=0;//微电源切换为PQ控制方式
System.out.println("黑启动微电源"+i+"已与主参考源"+refDG+"同步,出口断路器闭合,并切换为PQ控制方式");
++numofsync;
System.out.println("已同步微电源数量"+numofsync);
}
}
}
}
}
if(numofsync==(numofstart-1)) //所有黑启动微电源均同步并联
{
System.out.println("所有黑启动电源均同步");
//将非黑启动微电源以PQ方式启动并连接至微电网
if(numofstart!=numofDG)
{
for(i=0;i<numofDG;i++)
{
if(blackDG[i]==0)
{
startDG[i]=1;//向非黑启动微电源发送自启动信号
startok[i]=1;//非黑启动微电源已启动
DGbreaker0[i]=1;//非黑启动微电源并网
controlDG[i]=0;//微电源切换为PQ控制方式
syncok[i]=1;//非黑启动电源并网即自动同步
System.out.println("非黑启动微电源"+i+"以PQ控制方式启动,出口断路器闭合");
++numofstart;
System.out.println("已启动微电源数量"+numofstart);
++numofsync;
System.out.println("已同步微电源数量"+numofsync);
}
}
}
if(numofstart==numofDG)//所有微电源均启动并联
{
System.out.println("所有微电源均并网");
//将负荷出口断路器闭合
for(i=0;i<numofload;i++)
{
if(loadbreaker0[i]==0)
{
loadbreaker0[i]=1;
System.out.println("负荷"+i+"的出口断路器闭合");
}
}
System.out.println("所有负荷均并网");
System.out.println("黑启动成功");
return;
}
}
++t;
System.out.println("时刻"+t);
}
}
System.out.println("黑启动失败");
//getchar();
//return 0;
}
}
电力系统黑启动-黑启动.rar
需积分: 5 36 浏览量
2023-09-13
10:55:50
上传
评论
收藏 4KB RAR 举报
谁还不是为了毕业
- 粉丝: 1
- 资源: 4
最新资源
- 基于matlab实现 powell算法 用matlab实现,使用方法内附详细说明.rar
- 基于matlab的手写字体识别程序,并对结果进行保存.rar
- 基于c语言指纹识别demo代码 包括了指纹图像方向图计算、频率计算、gabor滤波器增强,细化,特征点提取,特征点匹配.rar
- 基于c++NSGA-2思想的多目标优化程序,采用进化算法处理多目标实值优化问题.rar
- Linux系统中常用权限管理命令
- Coello Coello等人提出了MOPSO 该程序基于matlab实现针对测试函数matlab程序
- Linux系统中常用权限管理命令
- AIR-AP1815-K9-ME-8-5-182-0.tar For Cisco AP1815
- 实验七.zip
- ESP8266刷固件软件flash-download-tools-v3.6.5,AT固件,机智云固件
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈