从理论上来看,直流无刷电动机的速度和转矩控制主要依据如下的转矩和反电动势工程计算方程 其中,N为直流无刷电动机定子每相线圈数, 为转子的长度,r为转子的内径,B为转子的磁通密度,为电动机的角速度,i为相电流,L为相感抗,为转子的位置,R为相阻抗。
从方程可以看到,反电动势与电动机的转速成比例,而转矩与相电流也几乎势成比例的。根据这些特点,在方案中采用了图3所示的控制策略。给定转速与速度反馈形成偏差,经速度调节后产生电流参考量,它与电流反馈量的偏差经电流调节后形成PWM占空比的控制量,实现电动机的速度控制。电流的反馈是通过检测电阻上的压降来实现的。
图3 三相无刷直流电动机的速度和电流控制 4 软件控制
系统采用PWM控制算法,电机输入直流电流且每一时刻只有两个功率管导通,从2407来的PWM控制信号直接连至驱动器,驱动器的输出再连至功率MOSFET管的控制极。2407的CPU时钟频率是20MHz,PWM频率是20kHz。
4.1相电流检测
TMS320LF2407A接受到电阻上放大的压降信号后,经由A/D转换后得到电流信号。在转换结束时,A/D模块向CPU发送一个中断请求信号,等待CPU处理。每隔50us,DSP控制器对相电流进行采样,从而实现20kHz的电流调节环。
4.2转子位置和速度检测
掌握好恰当的换相时刻,可以减小转矩的波动。位置检测不但用于换相控制,而且还用于产生速度控制量。
位置信号是通过3个霍尔传感器得到的。他们的输出信号相差1200。每个机械转有6次换相,通过将DSP设置为双沿触发捕捉中断功能,可以获得正确的换相时刻。
位置信号还可以用于产生速度控制量。只要测得两次换相的时间间隔 ,就可以根据下式计算出两次换相时间的平均角速度。
两次换相的时间间隔可以通过捕捉中断发生时读定时器2的T2CNT寄存器的值来获得。
4.3电流和速度调节
相电流的调节可以通过调节载频为20kHz的PWM信号的脉冲宽度来实现。
Ierror="Iref" - Imea
cyclenew=cycleold+IerrorK
如果cyclenew>=Timer_period, 那么cyclenew=Timer_period
如果cyclenew>Timer_period,那么cyclenew=0
其中Iref—用户想要的参考电流;
Imea——实际测得的相电流;
Ierror——要调节的相电流误差;
速度调节采用PI算法,以获得最佳的动态效果。计算公式如下:
式中Iref-速度调节输出;
ek -第k次速度偏差;
Kp -速度比例系数;
Ki -速度积分系数;
T -速度调节周期;
试验证明能产生很好的三相PWM控制波形。图5为产生的PWM波形。
图5 利用DSP控制三相无刷直流电动机产生的PWM波形 前面所叙述的系统初始化、位置信号检测、PWM信号输出等软件模块,可以实现一个基本的具有位置传感器的三相直流无刷电动机速度控制系统。然而为了建立一个更完善的系统,还需要增加一些功能模块,如调节电动机转速的控制模块、保存系统运行数据的数据记录模块等,TMS320LF2407与pc机之间采用的通讯是采用RS-485进行半双工的接口电路。
5 结束语
本文作者创新点:将工业控制中普遍使用的PI算法在DSP上实现PWM波形输出,由于单片机自身性能的限制,已难以满足高速度,高精确的电机控制要求,而用DSP则很好的实现用于直流无刷电机控制的PWM波形输出。DSP(digital signal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号。再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。 |