基于DSP+CPLD的伺服控制卡的设计
0 引 言
随着先进制造技术的迅速发展,对运动控制的精度要求也越来越高,而运动伺服控制系统的性能很大程度上取决于伺服控制算法,通过运动控制与智能控制的融合,从改进传统的PID控制,到现代的最优控制、自适应控制、智能控制技术,应用先进的智能控制策略达到高质量的运动控制效果,已经成为当前研究的一个热点。
由于运动伺服控制系统中存在负载模型参数的变化,机械摩擦、电机饱和等非线性因素,造成受控对象的非线性和模型不确定性,使得需要依靠精确的数学模型,系统模型参数的常规PID控制很难获得超高精度、快响应的运动轨迹的要求。因此伺服控制系统越来越多采用PID与其他新型控制算法相结合的控制方式,如人工智能与专家系统、模糊控制、人工神经网络、遗传算法等,这里设计了一种基于神经网络控制算法的运动伺服控制卡,采用DSP+CPLD的硬件平台,采用单神经元PID与CMAC并行控制的伺服控制算法,通过对伺服电机的控制实现对位置的闭环控制。仿真和实践结果证明,这种运动控制算法有鲁棒性和抗干扰能力。
1 硬件设计
该运动控制卡是以PC机作为主机的运动控制卡,选用DSP作为核心微处理器,卡上集成编码器信号采集和处理电路,D/A输出电路,扩展存储器电路和DSP-PC通信电路。PC机把粗处理的数据通过DSP一PC通信接口传递给运动控制系统,DSP通过对光电编码器反馈信号处理电路的结果分析,计算出与给定位置的误差值,再通过软件位置调节器获得位置控制量,计算出运动速度控制量,产生的输出信号经D/A转换将模拟电压量送给伺服放大器,通过对伺服电机的控制实现对位置的闭环控制。系统的结构框图如图1所示。
选用美国TI公司的16位定点DSPTMS320LF2407A作为运动控制器的核心处理器,地址译码、时序逻辑、编码器信号处理电路用CPLD来完成,用PCI接口芯片实现双口RAM与PC机的通信,双口RAM用来存储和缓冲DSP与PC机间的通信数据,SRAM用来存储运动控制器运行时的程序和数据。
2 控制算法的设计
2.1 控制模型
在运动控制伺服系统中,需要控制的系统参数主要有位置、速度、加速度、输出扭矩/力矩等。传统的位置伺服控制策略是以PID控制为代表,但需依靠精确的数学模型,系统模型参数的变化及非线性因素等都会对常规PID的精确调节产生影响,因而PID对非精确、非线性对象的控制往往难以取得很好的控制效果。
CMAC神经网络具有处理非线性和自学习的特点,而且该控制网络的学习速度快。目前在工业中关于CMAC控制器的结构大都采用常规PD和CMAC并行的控制结构,它在阶跃输入或跟踪方波信号时,具有输出误差小,鲁棒性强等特点,然而在跟踪连续变化信号时,却容易产生过学习现象,进而导致系统的不稳定。为此,设计一种单神经元PID与CMAC复合控制的控制算法,用单神经元PID替代常规PID控制,由神经元来在线调整PID控制参数,利用神经网络的自学习和自适应能力,来改善系统的跟随性能。该算法的构成简单,易于实现,能够适应环境的变化,有较强的鲁棒性。仿真结果证明该算法具有较小的跟随误差,良好的鲁棒性和抗干扰能力,其结构图如图2所示。
2.2 并行控制算法的设计
由图2综合单神经元PID与CMAC控制算法,得到单神经元PID与CMAC并行控制完整的控制算法如下:
其中:η,ξ为网络学习速率;α为惯性系数。
2.3 算法的实现、仿真和结果分析
已知一位置伺服系统的数学模型系统的开环传递函数z变换后的表达式为:
采用的单神经元PID及CMAC相结合的复合控制算法,完成对位置伺服控制器典型输入斜坡输入响应的仿真实验。
图3和图4分别是位置伺服系统的单位斜坡输入响应曲线图,通过对图形的分析,可以看出,单神经元PID与CMAC相结合控制算法比常规PID控制算法有更小的跟随误差,直接决定该控制系统的控制精度。图4是在输出端加入lO%的阶跃扰动后,两种控制算法的输出曲线图,由图可知单神经元PID与CMAC相结合控制算法比常规PID控制算法有更好的抗干扰能力。
3 结 语
针对位置伺服控制系统的特点,设计了一种基于神经网络控制算法的伺服运动控制卡,将单神经元PID与CMAC并行控制的伺服控制算法应用在位置伺服系统的位置环控制。仿真结果证明了该控制算法较常规PID控制有更好的动态特性、控制精度、抗干扰能力,而且具有自适应功能。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)