基于DSP的无刷直流电机控制器设计
并检测该口的电平状态,就可以知道每个霍尔传感器的电平状态从而得到当前转子的位置。
利用位置信号来计算电机当前的转速。电机每个机械转有六次换相,也就是转子转过60°机械角就有一次换相。通过DSP的定时器测得两次换相的时间间隔,就可以计算出两次换相间隔期间的平均角速度。
3.3 其他系统模块的设计
本系统中电机的转速设置有两种方式,一种是采用电位计分压的方式,由于DSP2812的A/D模块的电压采样范围是0~3.3 V,所以电位计供电也为3.3 V。另外一种方法是采用DSP2812内置的SCI模块与上位机PC端进行通讯,通讯方式采用RS485通讯总线。RS485总线采用差分传输,抗干扰能力强、传输距离远。电流设置也采用DSP2812的A/D模块采样电位计分压的方式。
4 软件系统设计
TMS320F2812是由德州仪器公司生产的,指令处理速度高达150MIPS的数字信号处理器,专门为工业自动化及自动化控制等应用而设计。软件系统采用结构化程序设计,在TI专用集成开发环境CCS中由C语言编写完成。
软件系统的设计主要包括两部分:转速计算程序和无刷电机的双闭环控制程序。转速计算程序主要实现速度参数计算和换相操作。转子每转过60°机械角都触发一次捕捉中断。当进入捕捉中断后,首先计算速度参数,然后将CAP管脚设置为I/O状态。进入I/O状态后就可以读出当前电机转子的位置状态。根据电机转子的位置状态进行换相后恢复CAP模块的捕捉功能。捕捉中断子程序框图如图6(a)所示。双闭环控制程序在A/D中断子程序中实现。通过定时器周期匹配事件启动ADC转换,转换结束后进入A/D中断。进入中断后首先判断是否进行速度调节。如果需要调节,则将当前电机转速参数值与电机转速参考值进行比较,两者的差值经过PID运算后得出电流参考值;如果不需要调节则保持之前的电流参考值不变。然后读取A/D转换值,将它与电流参考值进行比较,两者的差值经过PID运算后得出PWM波的占空比。最后在根据调节结果改变占空比后恢复现场退出A/D中断子程序。A/D中断子程序框图如图6(b)所示。
5 实验结果
试验样机为稀土永磁无刷直流电动机,转子为一对极,定子电枢绕组采用星形接法。PWM频率的选取要考虑电机性能及功率管效率等方面。频率越高,电机噪声越小,但会增加功率管的损耗;频率低时,功率管损耗减小,但噪声会增大。综合考虑,本系统中PWM频率选定为20 kHz。图7为DSP输出的对称PWM波。
实验结果表明,无刷直流电机在1000~4000 r/min范围内可以平稳调速,电机的启动时间以及最大启动电流均满足系统设计的要求。
6 结论
文中是基于TMS320F2812DSP的无刷直流电机控制系统设计,充分利用DSP丰富的片内资源及高效的数据处理能力,可以大大简化系统硬件结构。文中所设计与实现的无刷直流电机控制系统应用转速、电流双闭环对电机实际系统进行调节。对电流环和速度环使用PID调节,实现了具有超调量小、响应速度快特点的无刷直流电机双闭环控制系统。
DSP无刷直流电机控制 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)