317|1

2

帖子

0

资源

一粒金砂(初级)

基于ATC7801的BLDC六步换相的PWM控制

硬件: AC7801电机demo板
软件: Keil 5.23

      BLDC是用六步换相原理去控制无刷电机的,即AB->AC->BC->BA->CA->CB. 每次换相PWM模块都会输出不同的PWM波形。在PWM模块初始化配置好后,只需在换相时刻,设置PWM的软件输出控制寄存器PWM_CHOSWCR即可完成换相,非常简单方便,耗时非常短(实测,只需1us),只对一个寄存器操作就完成,非常适合于对时间要求非常高要求的场合应用,例如高速电机。
      之前用过其他的MCU做BLDC电机控制,很多是用到操作两个寄存器才能完成的,操作繁琐且耗时长。如果只操作一个寄存器也可以完成换相,但是有缺点,比如换相时刻PWM不衔接,或者下桥臂要配置成IO模式才行。下桥臂配置成IO模式,在触发大电流保护时,下桥臂MOS或IGBT又不是硬件关断的(上下桥臂都配置成PWM才是硬件关断,硬件关断比软件关断快的多,且安全)。
     ATC7801上下桥臂都可以配置成PWM模式,用硬件关断,换相时刻只需调用一个寄存器(PWM_CHOSWCR),真是很方便,很有效率,感觉专门为电机控制而设计的,做过产品了解这方面需求的朋友应该很清楚这个点的重要性。
     下面附上换相调用的函数:

void MosDriver(uint8_t ChangePhanseTemp)
{       
      switch(ChangePhanseTemp)
     {
          case AH_PWM_BL_ON://AH_PWM - BL_ON - C_Phanse OFF       
                PWM1->CHOSWCR = 0x083C;                     
                PWM_SET_SOFT_TRI;
                break;

          case AH_PWM_CL_ON://AH_PWM - CL_ON - B_Phanse OFF
                PWM1->CHOSWCR = 0x203C;
                PWM_SET_SOFT_TRI;
                break;

          case BH_PWM_CL_ON://BH_PWM - CL_ON - A_Phanse OFF
                PWM1->CHOSWCR = 0x2033;
                PWM_SET_SOFT_TRI;
                break;

          case BH_PWM_AL_ON://BH_PWM - AL_ON - C_Phanse OFF
                PWM1->CHOSWCR = 0x0233;
                PWM_SET_SOFT_TRI;
                break;

          case CH_PWM_AL_ON://CH_PWM - AL_ON - B_Phanse OFF;
                PWM1->CHOSWCR = 0x020F;
                PWM_SET_SOFT_TRI;
                break;        

          case CH_PWM_BL_ON://CH_PWM - BL_ON - A_Phanse OFF
                PWM1->CHOSWCR = 0x080F;
                PWM_SET_SOFT_TRI;                       
                break;                                
      }                                                       
}


      通过这个函数可以知道,函数入口是序号(0~5),导通相应的相(AB->AC->BC->BA->CA->CB之一)。可见,换相只需设置PWM1->CHOSWCR即可,PWM_SET_SOFT_TRI是一个宏定义,刷新PWM1->CHOSWCR的值的意思(即ATC7801里面介绍到的同步功能),这两个语句完成换相,只需1us时间。
      0x083C,0x203C,0x2033,0x0233,0x020F,0x080F这几个值,根据外部驱动芯片的逻辑而定,可定义成宏方便修改。
    

回复

76

帖子

0

资源

禁止发言

讲的非常好,看了收获很多,十分感谢


回复
您需要登录后才可以回帖 登录 | 注册

关闭
站长推荐上一条 1/6 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表