# 高速foc主频108mhz可以实现60ksvpwm运行频率 **Repository Path**: iproject888/hSpeedFoc ## Basic Information - **Project Name**: 高速foc主频108mhz可以实现60ksvpwm运行频率 - **Description**: 高速foc主频108mhz可以实现60ksvpwm运行频率 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-08-25 - **Last Updated**: 2026-08-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 高速foc主频108mhz可以实现60ksvpwm运行频率 #### 介绍 高速foc主频108mhz可以实现60ksvpwm运行频率 #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. 这里是列表文本 ## //systf.Mot1AngleDian = focFmod(adcCnt/ 0.0093128382f) ; //systf.Mot1AngleDian = _normalizeAngle(systf.Mot1Angle * PolarPair - systf.iap.Mot1ZeroOff); //systf.Mot1AngleDian = _normalizeAngle(adcCnt / 93.128382571f); //U_alpha= -systf.Mot1Uq * focSin (systf.Mot1AngleDian); //U_beta= systf.Mot1Uq * focCos (systf.Mot1AngleDian); //arm_mult_f32( &U_alpha,&U_alpha,&U_alpha,1); //arm_mult_f32( &U_beta,&U_beta,&U_beta,1); //arm_add_f32(&U_alpha,&U_beta,&U_alpha,1); //Uref= F4DSPSQRT(U_alpha); //if(Uref)Uref =Uref /voltagePowerS* _SQRT3; if(systf.Mot1Uq != uq){ uq = systf.Mot1Uq; arm_abs_f32(&systf.Mot1Uq,&Uref,1); uref22 = Uref =Uref /voltagePowerS ; } 算法抛弃ud,只使用uq计算母线电压,省去park计算的三角函数计算环节,大大节约park运算的时间消耗 6.283185取模使用的是int数据类型,抛弃C语言fmod函数,从而减少对6.283185取模的计算量 if( systf.Mot1Uq < 0 ){ //标准化电角度值2pi是参考电压矢量的位置 //systf.Mot1AngleDian = _normalizeAngle(systf.Mot1AngleDian-_PI_2OffSet); //systf.Mot1AngleDian = _normalizeAngle(adcCnt / 93.128382571f -_PI_2OffSet); angleddian = (s32)(adcCnt/0.0093128382f -_PI_2OffSetX10K); if(angleddian < 0) angleddian = angleddian + _2PIX10K; systf.Mot1AngleDian = focFmod(angleddian); }else{ //systf.Mot1AngleDian = _normalizeAngle(systf.Mot1AngleDian+_PI_2OffSet); //systf.Mot1AngleDian = focFmod(adcCnt/0.0093128382f +_PI_2OffSetX10K); angleddian = (adcCnt/0.0093128382f +_PI_2OffSetX10K); angleddian = angleddian + _PI_2OffSet; if(angleddian> _2PIX10K)angleddian= angleddian - _2PIX10K; systf.Mot1AngleDian = focFmod(angleddian); } #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技