background image

利用定时器检测两次换向之间的时间间隔,计算出电机运行的速度,再通过调整 PWM

 

信号的占空比,调整定子电流,实现调速。

    DSP568xx

 

中使用到的主要模块

    在 Motorola 的 DSP568xx 系列数字信号处理器的软件开发包中,给出了一个利用上述思
路对直流无刷电机控制的应用程序:bldc_sensors。主要用到了 DSP 的脉宽调制 PWM 模块、
定时器模块、相位检测器 DECODER 模块。

    PWM

 

模块共有六路输出,分别用来控制三相的顶底共六个功率管。

    模块可以被配置成互补通道模式,即 PWM0 与 PWM1 为一对互补对,共三对互补对。
互补对内的两个信号可以在芯片内部被互相交换;也可以同时被屏蔽,使得输出全为
0

 

,该相就关断。

    定时器模块是最普通的外设,在这个应用中,使用了 5 个定时器模块,它们分别是
A0、A1、A2、A3 和 D0。前 3 个分别接积分编码器的一路输出,利用它们的输入捕捉功能,
产生中断,在中断子程序内检测新的积分编码器输出状态,实现换相。A3 接的也是积分
编码器的一路输出,它用来测量某路霍尔信号两个跳变沿间的时间间隔,计算转子速度 。
D0 用来产生 20ms

 

间隔的节拍,周期性的对系统状态进行转换和检测。

    相位检测器 DECODER 模块对于电机控制非常有用,它不仅能用于本文所说的六状态
积分编码器,还能用于转子每转一圈产生相当多数目脉冲的积分编码器。该模块框图如图
2 所示。