基于Cortex-M3内核MCU的BLDCM控制器研究

时间:2012-02-08来源:网络

3 电机的开环软启动控制
在闭环条件下启动电机,因瞬时转速为零PWM占空比会达最大值,带载时可能因电机过流而启动失败,为此采用开环启动方式,流程如图5所示。启动按键按下电机转子从当前位置准备启动,先读取转速设定值(n0)并设置一个占空比常数D1,首次通电占空比为5%,以后以5%步距递增直至启动结束。因起始占空比较小,不管转速设定是大还是小,空载还是带载,都会顺利启动,不会出现启动大过冲现象。启动过程中MCU会不断进行转速判断,当转差率小于0.2时切换至闭环(图5中n为实时转速)。

d.jpg



4 软件编制中的主要问题解决策略
系统软件除主程序外,主要有开环启动、A/D转换、速度计算、增量PI、PWM生成、1602驱动、按键中断等子程序。TI给Stellaris(群星)系列MCU配备了完善的外设驱动库,片内外设使用和控制极为方便,外设驱动库中的API支持下可完全控制外设和快速开发应用程序而不需了解外设细节,这一特点可称为以后MCU应用的趋势。
对LCD1602驱动中用到的多个GPIO端口,其编程流程可归纳为:初始化(设置LDO输出电压,设置系统时钟);外设(GPIO端口)使能;设置GPIO端口每一位的输入/输出类型(高阻输入、推挽输出、开漏输出);读/写GPIO端口的状态。
4.1 按键控制
5个按键均要工作在中断状态,为实现良好控制编程时需注意两点:一是在主程序中做好相应GPIO引脚的设置,具体工作按顺序为,使能按键所在GPIO端口、设置按键所在引脚为输入、设置按键在引脚的中断触发类型(边沿、电平)、使能引脚的中断、使能GPIO端口中断、使能处理器中断;二是注意在中断服务程序中读完中断状态后要清楚中断状态。
4.2 PWM驱动信号的产生
LM3S615的PWM模块功能非常强大,由3个PWM发生器模块和1个控制模块组成。控制模块决定PWM信号的极性,以及传递管脚。每个PWM发生器都有1个16位定时器和2个比较器,可以产生2路PWM。在PWM发生器工作时,定时器在不断计数并和两个比较器的值进行比较,可以在和比较器相等时或者定时器计数值为零、为装载值时对输出的PWM产生影响。在使能PWM发生器之前,要配置好定时器的计数速度、计数方式、定时器的转载值以及两个比较器的值,从原理图1可知PWM输出受ACR运算结果、过流判断结果、霍尔信号逻辑3个事件的影响。表1中霍尔逻辑组合和开关导通组合的对应关系应事先存储在存储器中以便每次确定PWM输出引脚时查表。
4.3 电机过流检测
过流判断使用Timer的捕捉/比较模块实现比较简便,但ACR运算必需电流值的A/D转换结果,为提高系统效率,过流判断不用比较器,直接使用A/D转换结果。具体编程时可通过分析事先设置一常数,在每次输出PWM波时可将该常数与当前电流的A/D转换值的比较结果作为输出条件之一,若过流立即封锁PWM。

1 2 3 4

关键词: 控制器 研究 BLDCM MCU Cortex-M3 内核 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版