1 引言
伺服驱动器(servo drives)又称为“伺服控制器”、“伺服放大器”,是用来控制伺服电机的一种控制器,其作用类似于变频器作用于普通交流马达,属于伺服系统的一部分,主要应用于高精度的定位系统。一般是通过位置、速度和力矩三种方式对伺服马达进行控制,实现高精度的传动系统定位,目前是传动技术的高端产品。
伴随着电机由有刷电机、无刷电机以及永磁同步电机的发展历程,伺服驱动器相应经历了模拟电路、8位单片机模数混合电路及高性能DSP电机专用控制解决方案等发展阶段。伺服进给系统的调速范围宽、定位精度高、有足够的传动刚性和高的速度稳定性、快速响应无超调、低速大转矩,过载能力强、可靠性高等诸多特点对控制芯片提出了更高的要求。
2 DSP电路设计
伺服驱动器选用微芯公司高性能16位数字信号控制器dsPIC 30F4011作为无刷电机的主控芯片,它集DSP的高速运算处理能力与电机常用检测接口于一体,成为很多伺服方案的首选。DSP在伺服系统中主要承担对实时输入数据按照某种控制规律、算法实时地计算、处理并且存储,最后将实时结果输出。DSP的性能对整个伺服系统的控制性能起着至关重要的作用,因此选择一款合适的DSP芯片变得尤为重要,整个伺服驱动器硬件都是围绕DSP来设计的。
2.1 dsPIC30F4011芯片及功能
dsPIC30F4011是伺服驱动器的主控芯片。是Microchip公司为满足高性能,高精度伺服要求而推出的一款电机专用芯片,如图1所示,外设资源比较丰富。
dsPIC30F4011采用改进的哈佛架构,能提供最高30MIPS的工作速度,指令宽度为24,16位的数据总线宽度,2KB数据RAM,48KB程序FLASH,除此之外:
(1)高灌/拉电流I/O引脚,25mA/25mA。
(2)5个16位定时器/计数器,需要时可组合成32位定时器。
(3)10位高速模数转换器(ADC)模块。
(4)6路PWM输出,边沿对齐或中心对齐,3个占空比发生器,输出可改写。
(5)可用于带霍尔传感器电机的输入捕捉模块。
(6)可用于进行速度和位置测量的正交编码器接口(QEI),A相、B相、索引脉冲三输入信号。
(7)通用异步收发器(UART)模块。
2.2 dsPIC30F4011开发环境及工具
dsPIC30F4011的开发环境由MPLAB IDE代码编辑器和ICD2程序下载和调试器构成,前者主要完成控制程序代码编辑、修改,经编译生成Hex文件后,通过ICD2下载到器件中,也可以使用ICD2进行调试。