郭高洁,蒋 平,李 欣,钱俊璋
(1.中国科学院光电技术研究所,四川 成都 610209;2.中国科学院大学,北京 100190)
现今高性能伺服系统对系统带宽和跟踪精度提出了越来越高的要求,而伺服系统的传动机构均存在一定的弹性,这就使得伺服控制系统不论采取直接驱动还是齿轮驱动的方式都会存在谐振现象。谐振会造成系统在谐振频率处工作不稳定。因此为了保证系统的稳定就需要牺牲部分系统带宽。谐振的存在不仅限制了系统带宽,同时也限制了伺服系统的控制器增益的提高,从而导致系统动态性能下降,限制了系统的控制精度[1]。
在实际应用中,伺服系统的机械谐振频率经常由于系统磨损、元部件老化、负载惯量变化等多方面因素而发生改变。为了保证系统工作稳定,需要进行谐振的在线检测。互相关分析法是目前应用较多的谐振在线检测的方式之一,它不需要进行额外的系统运行次数且对处于衰减较严重频带的谐振依然具有检测能力。实时工业以太网EtherCAT因为具有传输速度快、数据包容量大、上位机软件二次开发方便等特点,适于进行伺服控制系统谐振在线检测方案的开发设计[2]。
本文结合EtherCAT总线技术、Kingstar Motion软件,采用互相关分析法设计基于EtherCAT架构的谐振在线检测方案,并进行了实验验证。
在实际的伺服控制系统中,谐振是普遍存在的,其原因是伺服系统的传动部分并非是完全刚性的,在工作过程中会发生不同程度的弹性形变。尤其是在光电经纬仪系统中,由于转台负载大、转动惯量大、连接轴刚度不够等原因,谐振现象明显且对系统危害较大。这就需要对伺服控制系统进行简单的建模并对谐振进行分析。
电机、传动部分、负载组成的二质量负载模型如图1所示。
其中K和Cw是传动轴的弹性系数与阻尼系数,当传动轴工作过程中发生形变时会产生扭矩Tw,也就是电机的负载转矩,同时也是传动轴系的驱动转矩。驱动器控制电机运行,使电机的转轴输出电磁转矩Tm,此时对于电机端来说,电机电磁转矩Tm和传动轴系转矩Tw共同作用于转动惯量为Jm、阻尼系数为Cm的电机转轴。在负载端,负载的转动惯量为J1,阻尼系数为C1,在驱动转矩Tw和负载转矩T1的共同作用下决定负载的转速。因为系统阻尼系数影响很小,在忽略系统阻尼系数的情况下,当电机端转过θm、负载端转过θ1时,对系统模型建立微分方程并进行拉氏变换可得:
(1)
进而解得电机转速和负载转速与电机电磁转矩之间的传递函数:
(2)
由式(2)可以推导出系统的谐振频率点ωml和反谐振频率点ωl分别为:
(3)
从式(3)可以看出,谐振频率点及反谐振频率点与传动轴系的刚度系数及电机负载端的转动惯量有关,如果伺服系统是理想的刚性连接,刚度系数无穷大,则谐振及反谐振频率也是无穷大,即不会出现谐振。但是实际情况中不存在刚度系数无穷大的连接轴系,所以谐振是普遍存在于伺服控制系统中的现象。谐振的存在使得系统在特定频率处的响应发生异常,造成系统工作不稳定,进而影响跟踪精度甚至引发系统部件损害[3]。
EtherCAT系统采用主从式结构,所有通信均由主站发起。通过以太网设备运行在全双工模式下,主站发出的报文可通过双向传输线返回主站控制单元。这种通信机制使整个网络中不会出现通信冲突,保证数据的正确性。数据帧的转发处理由硬件完成,数据帧经过每个从站的时间延迟极小,约为100~500 ns;EtherCAT所搭配的工控机控制软件包含相应的RTX(Real-Time Extension)模块,它修改并扩展Windows的硬件抽象层(Hardware Abstraction Layer,HAL),实现独立的内核驱动模式,形成与Windows操作系统并列的实时子系统RTSS。通过在Windows和RTX线程之间增加独立的中断间隔,提供独立的RTSS调度器,从而保证系统的高度实时性[4]。基于EtherCAT架构的伺服控制系统主要由工控机、EtherCAT总线、伺服驱动器、伺服电机和反馈编码器五部分组成,系统结构如图2所示。工控机与伺服驱动器构成EtherCAT主从站结构。工控机作为主站,负责EtherCAT主站配置、主从数据实时通信、参数设定、状态显示以及数据处理等一系列工作,伺服驱动器作为从站,实现对电机的驱动控制,主要体现为转矩控制信息的下发和编码器数据的反馈。
图2 系统结构图
EtherCAT架构下可以实现伺服控制系统的数字化控制,获得的输入输出数据是离散的序列,经过快速傅里叶变换后可得输入输出数据的频域表示形式,利用输入输出数据的互相关函数以及自相关函数即可得离散化的系统频率特性数据,进而使用参数辨识算法得到传递函数的待定参数,最后就可以获得系统的传递函数模型,由函数模型获得系统的频率特性。首先定义电流输入序列为u(i),系统的速度响应序列为y(i),其中i=1,…,N,N为序列的长度。对u(i)和y(i)分别进行傅里叶变换(FFT)可以得到U(k)和Y(k),继而得到传递函数G(s):
(4)
令s=jω,系统在特定频率ω处的响应为:
G(jω)=
(5)
然后可以建立误差函数模型:
(6)
定义评价函数为全部采样点上的拟合误差的平方和,在此基础上用最小二乘法作为辨识算法对系统传递函数的未知系数进行求解[3]。引入加权因子D(jωi)可以使非线性极小化问题转化成线性极小化问题。从而建立了新的误差函数E(jω)并极小化评价函数J:
(7)
对J求偏导并整理就可以计算出拟合误差最小时系统传递函数模型的未知参数。通过辨识出的传递函数模型可以获知包括谐振频率在内的一系列系统频率特性。
互相关分析法可以不添加额外硬件,在EtherCAT架构的上位机软件中通过二次开发即可实现。首先是对输入输出数据进行快速傅里叶变换(FFT)。本方案采用基于频率抽取算法的快速傅里叶变换,即通过蝶形图算法来减少运算量进行加速计算。实验转台采用Kingstar Motion的上位机软件,可以基于Visual Studio 2013进行二次开发。本方案调用FFTW库来进行输入输出数据的快速傅里叶变换。FFTW库是目前比较完善的可通过Visual Studio直接调用的数学运算库。可以选择不同的运算基数来进行蝶形傅里叶变换,加快计算速度。
获得系统输入输出数据的频域变换之后,就可以进行传递函数模型的参数辨识。本方案采取传统的最小二乘法对传递函数的参数进行辨识。最小二乘法有诸多改进型算法,其中levy辨识法能够对误差函数的实部和虚部进行运算,是系统辨识中比较常用的一种参数辨识算法。而FFTW库可以通过模式选择进行保留实部和虚部的FFT变化,所以采取FFTW库搭配最小二乘法来进行传递函数的参数辨识。
实验在实验室现有的EtherCAT架构电机平台上进行。转台上位机为倍福公司的多核工控机,安装KingStar Motion软件;从站使用Phase公司的AxN型驱动器,已集成相关芯片和EtherCAT通信接口,通过网线直接与工控机相连;所用永磁同步电机部分参数如下:额定扭矩为35 Nm,额定转速12 °/s,额定电流3.5 A,转矩常数为9.72 Nm/A。最大转速1 150 °/s;编码器采用27位分辨率海德汉绝对式编码器ECA4000。电机惯量约为5.4×10-3N·m2,负载惯量约为2.9×10-3N·m2,轴系刚度系数为2 036 N·m/rad。计算得谐振频率约为126 Hz。
实验在转台速度闭环的情况下进行。为了得到更大频带范围内的系统频率特性,选择频率变化范围为0~500 Hz的正弦扫频信号作为系统的给定参考电流信号,EtherCAT采样频率设为1 kHz,系统运行时间设置为40 s,系统运行得到的输入输出数据如图3所示。
图3 输入输出时域数据
将得到的数据进行参数辨识,在选定14阶辨识算法的情况下进行参数辨识,程序运行得到的原始数据经MATLAB处理后的bode图如图4。
图4 bode图
实验程序给出的谐振频率为123 Hz,在线运算所需时间为2 361 ms,在考虑到误差存在的情况下与根据参数计算所得的谐振频率126 Hz基本一致。由实验结果可以看出,该实验转台的谐振频率处于系统响应衰减比较严重的区域。互相关分析法对低频段系统的频率特性具有良好的辨识效果,谐振处于衰减严重的频段时该方案依然具备一定的检测能力,受到系统响应衰减严重的影响,在保证在线检测运行速度的基础上谐振检测的精度有所损失,但基本能够满足转台实验系统在运行过程中对谐振频率的检测要求。
本文简要介绍了伺服系统谐振的产生机理,对伺服系统谐振进行建模分析;采用互相关分析法设计了一种基于EtherCAT架构的伺服系统谐振在线检测方案,并且将该谐振检测方案在转台实验系统上进行实验验证与分析。实验结果表明,该方案能够切实检测到转台实验系统存在的谐振频率点,在保证一定运算速度的前提下基本达到伺服控制系统谐振在线检测的精度要求。该谐振在线检测方案具有上位机程序开发方便、易于维护的特点,适于集成到伺服控制系统主程序中去,具有一定的工程应用价值。因为受到实验转台设计条件所限,没有对谐振频率靠近剪切频率或者谐振频率小于剪切频率的几种情况进行实验验证;在使用其他参数辨识算法来保证检测精度、提高运算速度等方面也都需要做进一步的深入研究。
[1] 郇极,刘艳强.工业以太网现场总线EtherCAT驱动程序设计及应用[M].北京:北京航空航天大学出版社,2010.
[2] 林梦云,马文礼,熊皑,等.基于 EtherCAT 实时通信的电机驱动控制[J].微型机与应用,2017,36(10):1-4.
[3] 杨辉,范永坤,舒怀亮.抑制机械谐振的一种改进的数字滤波器 [J].光电工程,2004, 31(B12):30-32.
[4] 任计羽. EtherCAT从站软件的设计与实现[D].成都:中科院光电技术研究所,2014.