3 系统软件设计
3.1 系统软件设计流程与概述
系统软件主要实现无刷直流电机的位置调节、速度调节等。其中速度调节采用PID控制,可以克服模糊控制特有的稳态误差问题,提高系统的稳态性能;位置调节采用自适应模糊PID控制,其特点是不依赖于具体的对象模型,而是用语言变量来描述系统特征,并依据系统的动态信息和模糊控制规则进行推理以获得合适的控制量。图2为主程序的软件流程图。首先关闭中断进行系统初始化,开启ADC中断,ADC中断是通过CPLD来控制,然后读取启动时刻的位置值,根据位置值来产生PWM控制信号。启动后,主程序就进入了等待循环,等待中断的产生。当中断标志为真时,进行系统的三闭环调节,读取给定位置值和位置反馈值进行自适应模糊推理,完成位置调节器功能,将输出值送到速度调节器进行PID控制,输出电流调节器的控制信号,从而输出PWM控制信号。
3.2 系统软件的控制策略
在实际控制系统中,随着负载的变化电机绕组的自感、互感、阻尼系数、转动惯量等呈不确定性,因此仅采用PID策略已不能提供很好的控制性能,而模糊控制把一些具有模糊性的成熟经验和规则有机地融人到控制策略中,具有较强的鲁棒性,并且能够克服系统中的不确定因素[4]。系统设计采用全数字三闭环(电流环、速度环、位置环)控制。其中电流环的设计要考虑跟随性,使电流调节速度快;速度环主要用于增强系统抗负载扰动的能力,抑制速度波动;位置环作为外环,决定了系统响应的快速性及稳定性。基于以上考虑,为了获得优良的性能,电流环和速度环采用PID控制,位置环采用自适应模糊PID控制技术。将模糊控制和PID控制集合起来,既可以提高控制精度,又能够根据对象输出的变化调整参数,取得良好的控制效果。
自适应模糊PID控制器结构如图3所示,误差e和误差变化ee作为输人,在PID算法的基础上,通过计算当前系统误差e和误差变化率ec,利用模糊规则进行模糊推理,查询模糊矩阵表在线对Kp、Ki和Kd进行调整。
根据上式可以看出|e|和|ec|的大小变化对系统输出u的影响程度是不同的,为了使控制对象具有良好的动态性能和静态性能,参数Kp, Ki,和Kd的在线模糊自整定应遵循如下规则:
(1)当|e|较大时,即误差较大,为了加快系统的响应速度,应把K。取得大一点;为防止|ec|瞬时过大,Kd应该取较小一点的值;为了避免出现较大的超调,应对积分作用加以限制,取消积分环节,即取Ki=O。
(2)当|e|为中等大小时,为使系统的超调量减小,Kp, Ki和Kd都不宜取大,应取较小的K ,而Ki和Kd大小应适中,以保证系统的响应速度。
(3)当|e|较小时,为使系统具有良好的稳态性能,应增大Kp,Ki的值,同时为提高系统的抗干扰能力并避免系统在设定值附近出现震荡现象,应选取适当的Kd值,其原则为:当|ec|较小时,Kd应取大一些;当|ec|较大时,Kd应取小一些。