董 超,王舒雁,涂智军
(北京控制工程研究所,北京100190)
圆锥扫描红外地球敏感器是中低轨道空间飞行器GNC分系统的配套单机之一,主要在电机驱动下绕扫描轴旋转形成圆锥面,对地平圈进行扫描,通过对扫描地平圈所产生的脉冲信号进行处理,计算出飞行器相对于地球的滚动角和俯仰角,进而确定飞行器的姿态。圆锥扫描红外地球敏感器的性能主要由滚动角和俯仰角的测量精度来标定,而电机转速的波动性是影响其精度的因素之一[1]。
考虑到低转速、小负载、转动平稳及控制灵活等设计目标,扫描电机采用的是无刷直流电机。在过去,产品的电机控制电路采用运算放大器等分立元件,以模拟电路的硬连接方式构成。老化和环境、温度的变化对构成系统的元件参数影响很大,而且由于构成器件较多,复杂性增加,最终导致可靠性降低。与模拟控制电路相比,FPGA具有可靠性高、控制精度高、控制策略更改灵活及对环境因素不敏感等优点,同时符合产品小型化设计的主流趋势,因而本设计采用基于FPGA的无刷直流电机控制系统,提出了一种双路闭环的PID控制算法,并通过仿真和实验进行了控制策略的验证。结果证明,该控制系统提高了电机转速控制的精度,有效抑制了电机转速的波动性,同时增强了控制的可靠性。
电机恒速控制系统的原理框图如图1所示,该电机控制系统主要包含4大部分,分别为:扫描电机、FPGA控制系统、功放驱动电路和光栅信号处理电路。
扫描电机是霍尔器件换相的永磁无刷直流电机,其定子绕组为三相星形接法,电机转子用12块极性相间的钐钴磁钢组成。霍尔器件换相器定子包含3个霍尔器件,相互间隔120°(电角度)进行配置,其转子与电机共用,用该换相器来敏感电机转子的位置。但是,由于霍尔器件所能提供的位置脉冲有限,在低速时仅采用霍尔器件提供的位置信息,很难得到精确的速度估计。本文中的电机工作转速为60r/min(1Hz),为此本设计采用了能产生10800个脉冲/转的光栅编码组件提供速度脉冲信号。
电机控制系统的本质是反馈控制,即根据给定值和当前反馈值的偏差实施控制,最终减少或消除偏差,最常用的就是PID控制[2-3]。在本文中,同时对霍尔脉冲信号和光栅脉冲信号进行处理,以实现双路闭环PID控制。
FPGA控制系统对霍尔脉冲信号进行逻辑处理可得3个相互衔接、占空比为120°(电角度)的功放驱动信号,使相应的功放管导通,并使电机产生连续驱动的力矩而实现连续旋转。FPGA控制系统将霍尔脉冲信号和经过光栅信号处理电路的光栅脉冲信号通过转速检测模块、PID调节模块和数字PWM模块的处理,输出PWM脉宽调制方波,经过换相信号的逻辑处理后再加到功放驱动电路,来控制电机的转速。
FPGA控制系统是整个系统的核心主控单元,主要包含2个方面:控制策略的选择和闭环控制算法的实现。算法模块主要包括3个部分:转速检测、PID调节器和数字PWM,本文主要对光栅闭环控制模式进行介绍。
本系统中能够提供速度反馈信息的来源有2个:霍尔器件提供的位置脉冲信号和光栅编码组件提供的速度脉冲信号。
本文中电机的工作转速为60r/min(1Hz),霍尔器件提供的位置脉冲有限,很难得到精确的速度估计,而光栅编码组件提供的速度脉冲为10800个脉冲/转,可以满足精度的要求。但是,当电机的转速达到480r/min(8Hz)及以上时,光栅脉冲信号输出会发生异常,影响控制,使电机无法回到工作转速。
为了兼顾精度和可靠性,本文采用光栅和霍尔双路分时段闭环控制策略。设置的门限为240r/min(4Hz),由计取霍尔脉冲得出。当电机转速低于门限值时,进入光栅闭环控制模式,对光栅脉冲信号进行处理,实现低速、高精度控制,控制电机的工作转速为60r/min(1Hz);当电机转速高于门限值时,进入霍尔闭环控制模式,对霍尔脉冲信号进行处理,实现可靠性控制,将电机转速拉到门限值以内,再由光栅闭环控制电机实现60r/min(1Hz)的转速。
电机转速的及时准确检测,与闭环调速系统的控制精度紧密相关。转速的数字检测方法有很多,本文采用的测速方法是M法(测频法),其测速原理是在设定的一定时间内,用计数器计取光栅脉冲数来表示电机转速[4]。
电机转速可表示为:
其中,T0为设定的采样周期,N为在T0时间内计取的光栅脉冲数,P为电机转一周的光栅脉冲数。
转速检测首先应该确定的是采样周期T0,也就是连续2次采样转速的间隔时间。为了使速度的改变能通过采样而迅速得以反映,而不致在随动控制中产生大的时延,同时为了提高系统的抗干扰性能,使扰动性能迅速得到校正,就要求采样周期尽可能短。
其次,需关注转速的测量精度。转速的测量精度用测速误差的百分数表示,当实际转速为n,转速实际值与测量值之差为Δn时,则测速精度为:
测量误差越小,测速精度越高。利用M法对光栅脉冲测速会出现1个脉冲的测量误差,根据式(1)和式(2)可得,测速精度为1/N,N越大,测速精度越高。
通过以上分析,为了保证测速精度和快速响应,应提高N(T0时间内计取的光电脉冲数)的值和缩短采样周期T0。为此,需将光栅信号进行双沿计数(N增大1倍),同时将采样周期T0设置小一些,使得在计数完成后能运算启动信号,其逻辑示意图如图2所示。
传统的PID模拟控制器是一种线性调节器,通过模拟器件实现:
其中,Kp是比例增益,Ti是积分时间,Td是微分时间。
FPGA控制系统采用的是数字PID控制器,对式(3)进行离散化处理得到:
增量式PID控制算法可由式(4)递推得出:
式中,e(k)为第k次采样时刻输入的偏差值,e(k-1)为第k-1次采样时刻输入的偏差值,e(k-2)为第k-2次采样时刻输入的偏差值,Kp是比例增益系数,Ki为积分系数,Kd为微分系数[5]。
式(5)为本文所采用的增量式PID的控制算法表达式,程序的流程图如图3所示。其中,N为在T0时间内计取的光栅脉冲数,Nref为设定转速所对应的光栅脉冲数。当运算启动信号(start)为1时,开始增量式PID运算,运算结束后将Δu(k)的结果传入U(k-1)寄存器中参与累加运算。
Kp、Ki、Kd是可调节的系数,参数匹配的PID控制器具有良好的动静态特性。比例环节的作用是对偏差做出快速反应,通过调节参数Kp可以减小稳态误差,但不能消除稳态误差;积分环节的作用是消除累积下来的误差(即稳态误差),通过调节参数Ki可以改善系统的动态性能;微分环节的作用是根据偏差的变化趋势进行控制,调节参数Kd有利于减小超调量,克服振荡,提高系统的稳定性。为了加快响应速度,对输出结果进行限幅处理,并将结果输出给PWM模块。
PWM(脉宽调制)技术是通过控制半导体开关器件的通断时间比,即通过调节脉冲宽度或周期来实现电压控制的一种技术。由于它可以有效地进行低次谐波抑制,同时动态响应好,因而在无刷直流电机中得到了广泛应用[6]。目前,PWM控制方式有很多,本文所采用的是锯齿波比较PWM方式,其实现流程如图4所示。锯齿波的频率和幅度均可通过程序进行设定,与PID控制模块输出的参考电平通过数字比较器输出。当参考电平大于锯齿波,比较器输出高电平;当参考电平小于锯齿波,比较器输出低电平,并生成PWM脉宽调制方波,经换相信号进行逻辑处理后再加到功放驱动电路,来控制电机的转速。
电机恒速控制系统的仿真验证主要包含2个方面,一个方面是对PID控制算法进行验证,这需要对光栅闭环PID控制算法和电机系统进行建模仿真,确定PID算法的参数;另一方面是对双路闭环控制策略进行验证,这需要对光栅脉冲和霍尔脉冲双路分时段闭环控制策略的切换进行功能性仿真。
首先利用Matlab中的Simulink工具建立PID控制算法和电机系统的模型,利用模型进行仿真,其目的在于确定PID的算法参数[7-8]。仿真模型如图5所示。
给定转速60r/min(1Hz),PID参数整定采取实验法,遵循 “先比例,后积分,最后微分”的原则,经过多次试验确定比例增益系数Kp=9,积分系数Ki=1,微分系数Kd=0.1,采样周期T0为1.25ms,得到速度仿真曲线如图6所示。
由图6可以看出,电机控制的响应速度比较快,而且电机转速的波动很小,这说明该控制系统的性能达到要求,实现了电机的高精度恒速控制。
光栅和霍尔双路分时段闭环控制策略的功能验证原理为:当电机转速低于240r/min(4Hz)时,进入光栅闭环控制模式,输出光栅闭环三相控制信号;当电机转速高于240r/min(4Hz)时,进入霍尔闭环控制模式,输出霍尔闭环三相控制信号,拉回到正常状态时再由光栅闭环控制,输出光栅闭环三相控制信号。
为方便验证,光栅信号给定10800Hz,三相霍尔信号相互间隔120°,初始给定周期为36ms(约280r/min),540ms后的给定周期改为 168ms(约60r/min)。在仿真结果中,一开始默认是输出光栅闭环三相控制信号,约250ms后检测出电机转速高于240r/min,输出霍尔闭环三相控制信号,在周期修改为168ms之后约250ms时检测出电机转速低于240r/min,输出光栅闭环三相控制信号,仿真结果正确,仿真波形如图7所示。
过去的红外地球敏感器电机控制电路是由模拟电路搭建而成,转速的调节控制是由2个待调电阻的阻值来确定,由于供电电源、高低温环境等因素的影响,会存在一定的变化波动。根据相关高低温环境试验数据统计,转速波动范围为1.000Hz~1.042Hz,如图8所示。同时,因为电机控制电路器件以及电机本体的差异,不同产品待调电阻的阻值也会有所不同,所以需要通过联调来挑选电阻,增加了调试环节。
本文利用了FPGA具有可靠性高、控制精度高、控制策略更改灵活及对环境因素不敏感等优点,转速的调节控制由FPGA程序确定,控制精度优于0.5%,基本不受环境因素的影响,转速波动范围为1.000Hz~1.001Hz。FPGA对于不同的电机具有普遍适用性,节省了调试环节,提高了工作效率。
本文针对造成电机转速波动的影响因素,在与过去的电机控制电路进行对比后,介绍了基于FPGA的电机恒速控制系统,提出了一种双路PID控制算法,并对程序进行了仿真验证。其应用效果比传统的模拟电路有了很大提高,减小了系统的硬件开销,实现了产品的小型化设计,提高了产品的可靠性和控制精度,有效地抑制了电机转速的波动。