bc_user0.c

来自「感应电动机的实例仿真例子」· C语言 代码 · 共 102 行

C
102
字号
#include <math.h>
__declspec(dllexport)


#define Pi  3.14159265359

void bc_user0 (t, delt, in, out)
double t, delt;
double *in, *out;
{
	
static double Ts=1./10000.,Tga=0.,Tgb=0.,Tgc=0.,seq=0.,Tmode=0.,count=0.,seq_pre=0.,count_start=0.;
static int Sa=0.,Sb=0.,Sc=0.;








	
Tga=in[0];
Tgb=in[1];
Tgc=in[2];
//count=in[3];
seq=in[3];
//Ia=in[5];
//Ib=in[6];

count=t;

if(seq_pre!=seq)
count_start=count;
seq_pre=seq;

//Tmode=in[4];

  
//---------------------------------------------------------------// gate drive


if(t<=(Tga+count_start))
	Sa=1.;
      
else
       Sa=0.;

if(t<=(Tgb+count_start))
	Sb=1.;
      
else
       Sb=0.;
	     
if(t<=(Tgc+count_start))
	Sc=1.;
      
else
       Sc=0.;
	     	     	     
	

if(seq>0.)

{
	
	if(t<=(Tga+count_start))
       	Sa=0.;
         else
         Sa=1.;


	if(t<=(Tgb+count_start))
       	Sb=0.;
         else
         Sb=1.;
         
         
	if(t<=(Tgc+count_start))
       	Sc=0.;
         else
         Sc=1.;


		
}






out[0]=Sa;
out[1]=Sb;
out[2]=Sc;

}



	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?