• 大小: 16KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: Matlab
  • 标签:

资源简介

关于永磁同步电机转动惯量识别仿真的,matlab2012版本,完全没问题,含代码和模型。

资源截图

代码片段和文件信息

#define S_FUNCTION_NAME  RLSJ
#define S_FUNCTION_LEVEL 2
#include “simstruc.h“
#include “math.h“
#include “mex.h“ 
 /*输出定义 */


     /*定义中间矩阵 */
   // real_T           poldm[9];//poldm[3][3];
     float            poldm[2][2];//poldm[3][3];
     float            pnewm[2][2]; //pnewm[3][3];
     float            foldm[2][1]; //foldm[3][1];
     float            foldtm[1][2];//=zeros(13);//foldtm[1][3];
     float            fnewm[2][1];//=zeros(31);//fnewm[3][1];
     float            fnewtm[1][2];//=zeros(13);//fnewtm[1][3];
     float            ftpoldm[1][2];//=zeros(13); //ftpoldm[1][3];
     float            koldm[2][1];//=zeros(31);//koldm[3][1]
     float            knewm[2][1];//=zeros(31); //knewm[3][1];
     float            poldfm[2][1];//=zeros(31); //poldfm[3][1]; 
     float            kftm[2][2];//=zeros(33);//kftm[3][3];
     float            isubkft[2][2];//=zeros(33); //isubkft[3][3]; 
     float            abtnm[2][1];
     float            abtom[2][1];
     float            atm[2][1]=0;
     float            pratio=1000000; 
     float            lamd=0.95; 
     float            ftpf=0;
     float            kratio=0;
    // float            idnew=0idold=0idcha=0yk=0;
     float            udq[2][1]=0;
     float            iqcha=0;
     float            iqnew=0iqold=0;
     float            poldfsum=0ftpoldsum=0isubkftpsum=0;
     float            kratiosub=0;
     float            chazhi=0chazhi2=0;
     //float            ftpf[2][2]ftpfinv[2][2];
     float            ftpfsum=0;
    // float            kratiosub[2][1];
    // float            kratio[2][1];
     float            kmkratio[3][1];
     float            pfinvftpsum=0;
     float            invmsum=0;
     float            kftmsum=0;
     float             kmkratiosum=0;
    //real_T           id=0.005;
   // real_T           iq=5;
   // real_T           ud=30;
   // real_T           uq=60;
   // real_T           w=31.4;
     float             wmknew=0wmkold=0wmk=0wmk1=0wmk2=0yk=0;
     float             tek=0tek1=0tek2=0teknew=0tekold=0;
    unsigned int     cnt=0i=0j=0k=0;
    
static void mdlInitializeSizes(SimStruct *S)
{
    /* See sfuntmpl_doc.c for more details on the macros below */

    ssSetNumSFcnParams(S 0);  /* Number of expected parameters */
    if (ssGetNumSFcnParams(S) != ssGetSFcnParamsCount(S)) {
        /* Return if number of expected != number of actual parameters */
        return;
    }

    if (!ssSetNumInputPorts(S 1)) return;
    ssSetInputPortWidth(S 0 2);
    ssSetInputPortDirectFeedThrough(S 0 1);
    if (!ssSetNumOutputPorts(S 1)) return;
    ssSetOutputPortWidth(S 0 2);
    ssSetNumSampleTimes(S 1);
    
    ssSetOptions(S SS_OPTION_WORKS_WITH_CODE_REUSE | 
    SS_OPTION_EXCEPTION_FREE_CODE | 
    SS_OPTION_USE_TLC_WITH_ACCELERATOR);
    

}
static void mdlInitializeSampleTimes(SimStruct *S)
{
    ssSetSampleTime(S

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      72576  2017-10-17 20:18  JRLSsuc.mdl

     文件       8080  2017-10-15 18:32  RLSJ.c

----------- ---------  ---------- -----  ----

                80656                    2


评论

共有 条评论

相关资源