赵盛烨, 吴文江, 佟 敏, 李 锁
(1. 中国科学院大学 计算机科学与技术学院, 北京 100049; 2. 中国科学院 a. 沈阳计算技术研究所; b. 沈阳高精数控智能技术股份有限公司, 沈阳 110168; 3. 吉林大学通信设计院股份有限公司 政企事业部, 长春 130012)
当前, 云计算、 大数据、 工业互联网和物联网等技术飞速发展, 由于这些技术在信息处理方面具有智能性特点, 对改造传统的制造业、 实现产业升级具有明显的优势, 因此制造技术面临着难得的发展机遇及挑战。同时, 智能制造对我国制造业的发展尤其重要, 其有助于发挥信息技术的优势, 尽快弥补与发达国家制造业的差距, 对实现弯道超车具有重要的积极意义[1]。而被称为“工业母机”的机床的智能化控制显然是重中之重。对于智能机床的内涵, 在国际范围内还没有形成统一标准。从目前研究现状看, 普遍认为智能机床应具有对外部环境的智能感知、 数据分析、 自我诊断和自我学习决策等类人的功能。自上世纪90年代以来, 为抢占智能制造的发展先机, 各发达制造强国纷纷投入到相关的研究中, 比较权威的研究机构包括美国国家标准技术研究所、 英国汉普郡大学等。国际名牌机床厂商随之推出了各自的智能化产品, 其智能化特征表现在如下几个方面[2]: 1) 具有智能感知功能, 既实现对周围环境的感知, 同时实现对自身工作状况的正确识别; 2) 在加工过程中, 可实现对切削参数的动态识别及自适应调整; 3) 利用统计分析方法对工件的加工质量进行动态评估, 以保证加工质量稳定性。此外, 瑞士米克朗公司认为, 人应作为智能制造的主体, 通过采用网络技术发挥人的能动作用, 与机床协调运行以实现智能加工功能; 日本Mazak公司认为智能机床应具有综合分析能力, 满足对加工参数的智能调整。
智能机床有3个基础共性问题----信息、 状态感知与数据处理。状态感知是智能数控的基础, 其所采集的信息成为上层数控软件进行信息处理的源泉[3]。从国际范围看, 国际知名的数控系统如西门子、 发那科等厂商, 推出了系列的智能化数控系统品牌, 在数控系统市场处于垄断地位。对于国产数控系统, 为改变智能数控的被动局面, 国内一些数控厂家及科研院所进行了大量研究, 已取得了一定的研究成果, 其中华中数控、 广州数控、 蓝天数控等国产系统针对自身的特点, 提出了各自的智能化的系统体系结构, 并结合具体应用场景, 进行了局部示范应用, 发展前景广阔, 但其研究深度还明显不够, 有待于深入。
数控机床在加工过程中受到各种因素综合作用的影响, 各种影响因素间相互关联, 并且具有时变参数的非线性等特点。以上影响因素对PID(Proportion Integration Differentiation)参数的实时调整提出了更高的要求, 常规的PID算法已无法满足。为此, 近年来有研究学者提出了采用模糊化处理、 参数自适应控制、 滑动平均处理、 PID 参数自整定, 神经网络控制以及以上方法组合控制方法等。刘春芳等[2]提出采用指数项的时变滑动平均处理方法, 不仅提高了控制算法的运算效率, 同时显著降低了数控机床的颤振。孙宇新等[3]通过建立控制系统的神经网络模型, 改善了数控机床对强耦合的影响因素、 加工动作同步和系统惯性环节等控制问题。上述研究成果对受多因素影响的数控加工具有一定的积极作用, 但需用基于数学模型的方法进行控制, 如采用模糊控制机理的模型、 基于神经网络的参数辨识模型等。而各模型的建立条件依赖于特定的加工环境, 有一定的局限性, 现实模型中参数具有时变特性, 需根据实际环境检测结果进行动态调整, 从而限制了以上控制方法在实际生产中的应用。
针对数控加工过程中影响因素的非线性、 强耦合性等特点, 采用无模型自适应控制(MFAC: Model-Free Adaptive Control)具有明显的优势, 该控制方法结构简单、 运算效率高, 具有良好的应用前景。其控制结构不采用数控机床的数学模型, 仅采用数控机床所采集的闭环数据实现机床控制器的设计, 使该方法成为一种可行的基于数据驱动的控制方法。
笔者针对基于MFAC的智能数控系统展开研究, 主要内容包括: 对智能数控系统的体系结构进行设计; 针对数控系统的多源信息特点, 提出了基于多通道信号采集技术; 改进基于MFAC的数据驱动控制算法; 此外, 为满足数控系统采用现场总线对多种现场信号的采集要求, 进行基础性研究, 并完成智能数控系统控制效果的相关验证。
面向制造技术的智能化, 数控系统具有操作、 加工、 维护和管理智能化等功能特点[4]。从实现技术看, 其主要表现为系统的网络化通讯、 开放式结构以及在此基础上的人工智能技术的应用。
1.1.1 系统的网络化通讯
数据的获取是数控系统智能化的前提条件。它是进行后续的智能分析、 智能决策的基础。数控系统需对外界各种信息进行采集, 其中包括温度、 切削力和噪声信号等。日本马扎克、 大隈等公司在智能化方面提供了许多先进的技术, 如主轴抑振、 智能防碰撞等功能[5-6]。沈阳机床i5数控提供了基于特征的编程和图形化诊断等功能, 因此其传感器种类较多, 进而通过采用实时监控及补偿技术提高机床的加工性能。由于传感器信号的数据量较大, 无论对数据存储还是分析, 传统的数控系统都不能满足要求, 需采用基于边缘计算的物联网技术的支持, 提高信息处理的实时性, 同时, 在云端的采集信息的数据汇集, 结合大数据处理技术提高系统的智能化水平[7]。
此外, 在互联网条件下, 数控系统成为了智能制造的一个智能终端, 可实现全生命周期的制造过程的数据透明, 不仅实现高效的制造过程, 同时为上层应用提供实时数据, 实现管理、 销售和财务等功能, 形成生产计划、 设计/制造一体化、 供应链管理、 OA(Office Automation)和库存管理等一系列生产和管理环节的资源整合与信息互联。
1.1.2 模块化开放式结构
智能化数控系统是包括多种功能并发处理系统, 并且各处理任务的实时性要求不同。为满足系统功能的扩充、 裁剪等需求, 系统的软件平台必须具备模块化开放式结构, 以便于系统的二次开发。
自上世纪80年代, 模块化开放式结构已成为世界范围内的研究课题, 目前已形成了著名标准, 其中包括欧共体的OSACA(Open System Architecture for Control within Automation)计划、 美国3大汽车公司联合研究的OMAC(Open Modular Architecture Controllers)和日本提出的OSEC(Open Systems and the Corresponding Interfaces for Automotive Electronics)等。3大标准的提出为国内外数控系统的标准化奠定了良好的基础, 关于各标准的特点分析已有相关文献进行了阐述, 此处不再赘述[8]。但由于各系统厂家考虑自身技术的保密性, 不情愿采用统一的标准, 完全标准化的系统开发是不现实的, 各系统厂家根据自身结构的特点提供开放的API(Application Programming Interface)使用户可以定制开发。
根据以上对智能数控系统特点的分析, 支持多信息融合的二次开发软件平台及支持智能化应用的可重构硬件平台是智能化数控系统体系结构两个最显著的特征。
智能化数控系统的任务繁多, 除了具体高精效的加工任务外, 还包括CAD(Computer Aided Design)/CAM(Computer Aided Manufacturing)一体化设计、 数控程序管理、 刀具管控、 任务调度和系统健康维护等应用需求, 同时满足系统智能控制要求的任务管理、 状态识别、 决策制定、 任务动态规划、 智能感知和机床故障预警等任务。智能化数控系统的二次开发平台如图1所示。通过该平台可进行满足实际智能控制需求的系统定制开发, 从而提高开发效率, 降低开发成本。
图1 智能化软件平台技术路线Fig.1 Technical route of intelligent software platform
图1所示各层的主要功能如下。
1) 硬件平台。该部分为系统的物理层, 采用开放式结构以支持多种CPU架构, 包括X86、 ARM(Advanced RISC Machine)、 国产龙芯等架构; 此外, 为满足对多种现场设备的控制, 支持多种现场数据传输总线, 包括EtherCAT总线、 MIII(Matrolink 3)总线、 SSBIII(Serial Synchronous Bus 3)总线等; 支持多种信号采集, 包括基于RS422/485、 SSI、 EnDat、 BiSS协议的编码信号, 模拟及脉冲信号, 从而满足对多种传感器设备的信号采集。
2) 操作系统平台。负责系统底层任务的调度及系统资源管理, 支持Linux及Windows等多种操作系统。多任务并发及实时处理是数控系统有别于其他系统的主要特点, 因此, 操作系统平台需要进行实时性扩展, 如RTAI(Realtime Application Interface)实时内核, 保证数控任务的实时调度, 提高系统的控制性能; 此外, 为满足在线监控及远程控制等需求, 提供Windows平台的智能终端部署。
3) 智能化中间件。数据是实现系统智能化的基础。智能化中间件包括各种组件数据库的开发, 搭建了数据驱动与数控系统功能的桥梁。组件数据库通过触发数据共享区的数据, 实现数控系统实时、 非实时及界面触发控制, 同时满足数据库中数据的及时更新。此外, 为满足大批量数据的处理需求, 数据可通过网络上传至云端, 在云端进行相关的数据处理及应用, 同时采用WebService方式进行网络通讯, 满足远程终端的智能控制。
为支持系统的智能化应用, 笔者提出了可重构硬件平台设计方案, 通过实现硬件的可重构以满足系统的灵活配置。该方案支持X86、 ARM、 龙芯等处理器、 多种现场总线(EtherCAT 总线、 MIII总线、 SSBIII总线等)。所设计的系统平台采用模块化分层次硬件结构, 分为车间网络层, 逻辑控制层和现场设备层。
1) 车间网络层。网络互联是实现系统智能化的前提条件。在该层通过将现场数控设备进行网络互联, 实现设备的远程健康管理及运行状态维护、 系统在线升级和智能调试等。此外, 有助于采用云计算技术实现数控系统的远程控制和智能化维护等功能。
2) 逻辑控制层。逻辑控制层数控系统是设备智能控制的核心层, 该层采用模块化结构, 主要包括控制、 显示和智能终端单元等。该设计方案采用灵活的配置方式, 支持M:N的控制方式, 即多个显示单元与多个控制单元进行连接的方式。为满足智能控制方式对实时性的需求, 各控制单元采用现场总线与设备连接, 此外, 控制单元与显示终端间采用千兆以太网总线, 如RGMII(Remote Group Multiplexer 2), 实现连接, 保证通信的实时性。
3) 现场设备层。负责数控系统功能的执行, 现场设备主要包括伺服驱动器、 I/O控制单元、 信息采集单元和通信网关等。其中通信网关用于互联网通信及物联网通信, 支持多种通信方式, 如有线、 无线通信(Zigbee, WiFi, RFID(Radio Frequency Identification))等。此外, 传感器采集信息的同步控制通过现场总线与广播通讯结合的方式实现。
高速、 高精和高效加工一直是数控机床加工不断追求的目标, 同时也是数控系统智能化要实现的目标之一。但加工质量受到多种因素的影响, 其中包括系统自身精度的影响及外界随机因素的干扰, 从而在加工过程中产生各种系统误差及随机误差。以上误差分为多种形式, 按照误差变化的快慢分为静态、 准静态和动态误差, 按照误差与时间的函数关系又分为线性与非线性误差, 如丝杠螺距、 反向间隙、 机床热、 切削力和噪声误差等。因此, 为实现高精、 高速和高效加工, 需对以上误差因素实现数控系统智能感知[9]。
为实现数据的采集与处理, 信号的检测是首要问题。根据受各因素影响的机床误差模型, 选择要进行信号采集的位置点, 以便于进行各种传感器的安装, 实现关键位置点信号的采集。采集的信号包括: 温度、 加速度和噪声等信号, 然后实时采集各位置点的信息, 并输入到数控系统中进行处理, 实现数控机床的精度补偿及故障预警等, 保证数控机床的加工精度并提高使用寿命[10]。
由于数控系统对各种信号检测的实时性要求不同, 例如对位置精度要求较高的误差因素, 需实时采集误差信号及进行补偿; 而对位置精度影响不敏感的误差因素, 实时性要求不强, 如温度误差, 切削力等非线性误差等[11]。此外, 为避免所采集的误差数据之间的相互干扰, 笔者提出了一种多通道的信号采集技术, 使每种误差因素的采集固定在一个通道内, 以便于上层应用程序分别处理, 提高数据信息的处理效率。
图2 基于多通道的数据采集示意图 Fig.2 Schematic diagram of data acquisition based on multi-channel
笔者提出的基于多通道的数据采集示意图如图2所示。系统驱动程序周期采集传感器信息, 将读取的信息存储在数据池中, 其信息按传感器顺序进行结构性放置。数据采集线程读取数据池中的信息, 根据采集任务的实时性需求将任务划分为3个不同优先级, 优先级最高的线程读取池中的信息后, 利用插补器进行实时的路径规划; 优先级次之的线程读取池中的信息后, 按照不同的通道进行采集, 基于数据驱动的方法进行模型构建, 模型的参数将由任务规划及调度层进行插补器的配置; 优先级最低的线程读取池中的信息后, 直接由界面显示, 便于对采集设备的调试。图2中的数据驱动方法包括人工神经网络、 支持向量机等多种方法, 笔者结合温度、 切削力等误差非线性及延迟性大等特点, 提出采用改进的无模型自适应控制方法进行数控机床的非线性误差控制, 以得到更为精确的控制效果。
MFAC(Model-Free Adaptive Control)算法是一种动态线性化方法, 适用于离散时间非线性系统的控制。在闭环控制系统中, 该算法在每个动态工作点建立等价的线性化动态数据模型, 然后根据所建立的数据模型实现控制系统的理论分析及自适应控制。
将试验数据用Excel2013进行处理,计算出不同处理下的吸力值和实测体积含水率。将实测体积含水率与相应的吸力值作为输入值,用Origin拟合曲线,将拟合参数代入Van-Genuchten模型、Gardner模型得到与吸力值对应的拟合土壤含水率,并与实测结果进行比较,直到满足精度要求。
MFAC算法主要由数据模型、 控制量变化律确定及特征参量的估计等组成部分。
一般情况下, SISO(Simple Input Simple Output)离散非线性系统可表示为
y(k+1)=f(y(k),…,y(k-ny),u(k),…,u(k-nu))
(1)
其中y(k),u(k)分别为时刻k的系统输出及输入值;ny,nu为待确定的两个正整数;f(·)为待确定函数。
当Δu(k)≠0时, 定义伪偏导数表示时变函数φ(k)的变化率, 为此, 利用微分原理将系统的数据模型表示为Δy(k+1)=φ(k)Δu(k), 其中φ(k)≤b,b是一个正常数。
考虑如下二次型控制输入准则函数
(2)
其中λ>0称为权重因子, 用以限制输入的变化量, 实现平滑的信号输入;y(k+1)、y*(k+1)分别表示系统的实际及期望输出量。
将式(1)代入式(2)中, 对u(k)求导并确定驻点, 可得
(3)
在规则函数中, 对φc(k)求极小值, 则伪偏导数的估计算法可写为
(4)
其中η∈[0,1]是步长因子, 加入η使该估计算法的可调性更强。
采用MFAC的控制系统原理如图3所示。MFAC控制基于上述动态数据模型, 由式(3)确定控制量大小及式(4)对控制量变化率的确定是该算法的主要组成部分。
由于传统的MFAC算法在预测控制方面存在不足, 笔者对其进行了改进。改进算法基于传统的MFAC算法, 利用无模型控制的数据模型和控制量变化律的反复迭代预测未来时刻的控制量输出值, 满足系统参数的自适应调整, 以补偿数控系统的非线性误差。
改进的MFAC算法结构如图4所示, 主要由3部分构成: 参数估计器、 时延补偿器和控制量预测器。其中参数估计器为控制量预测器提供的信息为3元组, 包括参考信号、 系统的输出及参数估计值; 然后控制量预测器利用所提供的信息生成预测的控制量; 时延补偿器补偿采集信号延时所造成的误差。
图3 MFAC算法原理图 图4 改进MFAC算法的结构图 Fig.3 MFAC algorithm schematic Fig.4 Structure chart of improved MFAC algorithm
3.2.1 参数估计器的设计
如图4所示, 参数估计器给出参考信号、 系统的输出及参数估计值; 参考信号由参数估计值提供, 通过事件驱动有助于保证控制量预测器与参数估计器的时钟同步性。利用式(4)对伪偏导数进行估计。
3.2.2 控制量预测
预测的控制量不是单个的数据量, 而是预测控制增量序列。控制量预测器接收到参数估计器提供的最新数据后, 计算控制增量序列
Δu(ks|ks)=α(ks)(r(ks+1)-y(ks))
(5)
控制增量序列由
(6)
中控制增量及输出控制序列迭代计算确定。其中y(ks|ks)=y(ks),i=1,2,…,d。
然后, 由式(5)和式(6)可得预测控制增量序列的前i项和
Δus(ks+i|ks)=Δus(ks+i-1|ks)+Δu(ks+i|ks)
(7)
其中Δus(ks|ks)=Δu(ks|ks)。预测控制量增量前i项和构成的预测序列为
(8)
将该预测序列与时间ks发送给时延补偿器。
3.2.3 时延补偿器的设计
在k时刻, 时延补偿器的数据缓冲区中最新的预测序列
此外, 时延补偿器与参数估计器间需满足一定的同步性, 时延补偿器所确定的补偿增量由下式确定
(9)
3.2.4 预测序列的确定
考虑输入误差变化率, 改进算法的控制律为
ρ2[(y*(k+1)-y(k))-(y*(k)-y(k-1))]}
(10)
其中ρ1和ρ2为两个常数。
在k时刻, 参数估计器将如下数据信息发送给预测控制器
(11)
利用式(5), 改进算法的控制预测器为
Δu(ks|ks)=α(ks)[ρ1e(ks+1)+ρ2Δe(ks+1)]
(12)
其中
改进算法的控制增量序列由
(13)
中控制增量及输出控制序列迭代计算确定。其中
目前, 基于嵌入式进行系统开发是数控系统的发展趋势之一。笔者的数据采集系统采用嵌入式系统进行开发, 嵌入式开发最为关键的是系统的低功耗及可靠性。采用现场总线的通讯技术进行现场采集设备的互联对实现系统的低功耗及可靠性具有明显优势。数控加工过程中, 工件加工质量会受到温度、 切削力和颤振等因素影响, 因此需要对以上信号进行实时采集, 用于数控系统对外部环境的全面感知[12]。下面分别从驱动层数据接口、 链路层帧格式和应用层等方面对所设计的数据采集系统进行阐述。
SSBⅢ现场总线是中科院沈阳计算技术研究所开发的数控现场总线, 拥有完全自主知识产权。SSBⅢ现场总线不局限于数控系统, 还可应用于工厂自动化控制相关领域, 具有一个从站连接若干控制从站的网络拓扑结构, 其从站类型包括伺服驱动器、 总线变频器以及智能模块单元等。
SSBⅢ现场总线包括一个C1控制主站, 最多可连接的控制从站设备为62个。根据实际的控制需求, 还可再扩展一个控制主站C2, 便于实现主从式控制方式。C1为系统的控制主站, 任务处理的优先级最高, 如运动控制、 PLC(Programmable Logic Controller)逻辑控制等; C2为系统的附属主站, 一般用于实现对较低优先级的外部设备的状态监视。
为满足数控系统对多种外部信号采集的需求, 采用SSBⅢ现场总线并对其通讯协议进行一定的扩展。每个信号采集设备所采用的通讯协议由50个字组成, 通过现场总线的传输技术, 实现各设备间的实时通信。用于数据采集的通讯协议数据结构如下。
typedef struct {
UINT addr_s;//从站地址信息
UINT addr_m;//主站地址信息
} addr_t;
typedef struct {
UINT len;//数据的总长度
UINT buf[16];//数据内容
} data_t;
typedef struct{
addr_taddr;//总线的地址信息
UINT sts_com; //总线状态标识
UINT err_count;//错误计数;
UINT time_delay;
UINT watchdog;//死锁监视计数
data_trcv;//接收的数据
data_tsnd;//发送的数据
} axis_t;
实时通信采用如上所述的字节流形式, 经结构化后提供给上层应用程序。通信数据的长度根据len信息可动态可伸缩, 若len为零, 表示没有实时数据通信; 否则根据len的值, 提取实时数据信息。每个通讯周期, 都要将len的值清零, 便于开启下一周期的通信。
在现场总线的应用层中, 主站与各从站的通信过程是动态执行的。为保证通信的可靠性, 采用有限状态机技术实现主站与各从站间状态的协调。现场总线的通信状态有4种: 上电初始化、 各站状态查询、 从站配置状态和通信状态。因此, 在进行采集数据的应用时, 应首先判断总线当前的状态, 如果处于通信状态, 说明所采集的数据可用; 否则, 说明现场总线不能进行数据的接收及控制信息的发送, 以避免系统产生错误的判断。
根据数控系统对智能采集的需要, 笔者对现场总线的链路层数据帧格式进行设计。在原系统组成单元的基础上, 对所包含的功能模块进行了一定扩展, 所扩展的功能单元具体包括: I/O控制扩展单元、 伺服轴控制扩展单元和外界信息智能检测单元等。其中外界信息智能检测单元, 即SSBⅢ-IDU扩展单元用于传感信号的检测, 具体包括机床加工用的温度(支持20路)、 振动(支持4路)和噪声等信号采集, 用于实现机床精度补偿及机床故障诊断等功能。基于SSBⅢ总线的数据检测单元的地址范围为0x41~0x4F。
遵循现场总线的通讯规范, 结合以上所设计的命令列表, 笔者进行了具体帧格式的设计, 具体的命令帧包括: 温度采集指令帧R_Temp、 向温度传感器发送命令帧W_Temp、 采集振动传感器信息指令帧R_Vib和向振动传感器发送命令帧W_Vib, 此外, 扩展的R_A/D用于从传感器读AD(Analog to Digital)值, 扩展的W_A/D用于写传感器AD值等。在每个通信周期内, 同步发送及接收16字节的缓冲区数据。SSB-III的数据帧格式如表1所示。
表1 SSB-III帧格式
在系统的硬件层, 为实现数据的高效传输, 现场总线模块与处理器之间采用双口RAM(Random Access Memory)进行两者数据交互, 通过链路层的逻辑控制, 保证两者间数据传输实时性及同步性。智能数据检测单元功能结构如图5所示。
笔者采用的SSBⅢ现场总线主站中协议芯片内部包含双口RAM, 其存储容量为1 024×16 bit。采用双口RAM实现现场总线模块与处理器之间交互, 为便于上层应用开发及交互逻辑编写, 将双口RAM的存储区间进行功能区间划分。针对从站设备, 包括写数据和读数据, 具体含义如下。
1) 写数据区布局。该区间由数据检测单元写入, 供处理器单元读取, 包括温度信号、 振动加速度信号、 噪声信号和其他A/D信号等。
2) 读数据区布局。该区间由处理器单元写入, 供数据检测单元读取, 提供状态显示, 便于实现远程故障诊断等。
图5 智能数据检测单元功能结构图Fig.5 Functional structure diagram of intelligent data detection unit
为满足数控系统智能化需求, 数据检测单元可通过参数配置支持多种工作模式, 以实现数控系统不同的应用开发。配置参数通过人机界面写入, 检测单元读取到配置信息后, 在不同的工作模式间进行切换。数据采集单元共有4种工作模式, 分别通过参数0x1,0x2,0x3,0x4进行标识, 其中0x1为停止数据采集的执行; 0x2为智能数据采集, 包括上传温度、 加速度、 噪声信号等; 0x3为上传16通道16 bit A/D值; 0x4为通过网络实现远程运行状态检测。
智能数据检测单元处理器开发, 采用FPGA(Field Programmable Gate Array)技术实现, 其中集成了NIOS(New Input Output of Soft core)软处理器, 并配置了上述的双口RAM 用于实现现场总线模块与处理器之间高效数据交互, ARM处理器用于对采集单元数据读取、 处理及采集单元状态读取等。SSBⅢ总线接口模块与ARM模块的通信流程如图6所示。图6为NIOS对双口RAM的初始化过程及数据检测模块工作模式的设置。
图6 SSBⅢ总线接口模块与ARM模块通信Fig.6 Handshake between SSBⅢ bus interface module and ARM module
根据4.3节所采集的多通道环境信息, 采用改进MFAC控制算法实现对数控机床伺服电机的自适应控制, 满足高精度数控加工的需求, 改进MFAC控制算法的具体实现过程如下。
步骤4 综合检测到的各外界信息, 根据以上所确定的各因素的补偿控制增量, 计算各增量的代数和, 并将其作为最终的补偿控制增量输出给执行器。
为验证所开发的智能检测单元的检测功能, 笔者搭建了数据检测单元测试平台。在该测试平台上, 对环境温度、 加速度和噪声等信号进行功能测试。此外, 还进行了SSBⅢ总线接口模块与ARM模块的通信测试, 所搭建的数据检测单元测试平台如图7所示。
在如图7所示的智能数据检测单元的测试平台上, 运行QuartusⅡ软件, 通过JTAG(Joint Test Action Group)方式对FPGA芯片中的逻辑程序进行在线调试及通信数据帧的检测。测试结果表明, 所开发的数据采集单元可满足对温度、 加速度和噪声等环境信息的采集。此外, 通过测试表明, SSBⅢ总线接口模块与ARM模块的通信功能可靠, 可满足智能数控系统对数据采集的需求, 为实现数控系统的精度补偿及远程机床故障诊断等功能奠定了良好的基础。
针对笔者所提出的改进MFAC算法, 在如图8所示的测试平台上进行验证。图9和图10分别为改进的MFAC算法及常规的PID控制算法的跟踪效果, 测试采用的目标期望位置为10 mm; 图11为伪偏导数估计值; 图12和图13分别表示改进的MFAC算法及常规的PID控制算法受到干扰后的测试曲线。
图7 智能数据检测单元的测试平台 图8 智能数据检测单元的测试平台 Fig.7 Test and verification environment for Fig.8 Test and verification environment for intelligent data detection unit intelligent data detection unit
由图11可见, 改进的MFAC算法比传统的PID控制算法具有更好的控制效果, 该算法通过对伪偏导数估计值的实时调整满足控制的准确性及稳定性。 由图11和图12的比较可见, 改进的MFAC 控制算法具有较好的鲁棒性能, 抗干扰性强。
图9 改进MFAC算法跟踪效果 图10 传统PID算法跟踪效果 图11 伪偏导数实时调整情况 Fig.9 Tracking effect of improved Fig.10 Tracking effect of Fig.11 Real-time adjustment of MFAC algorithm traditional PID algorithm pseudo partial derivative
图12 改进MFAC算法抗干扰效果 图13 传统PID算法抗干扰效果 Fig.12 Anti-interference effect of Fig.13 Anti-interference effect of improved MFAC algorithm traditional PID algorithm
智能制造是制造业发展的必由之路, 而被称为“工业母机”的机床智能化控制是实现智能制造的重中之重。笔者设计了智能化数控系统的二次开发平台及可重构的系统硬件结构, 具有分层模块化特征, 便于系统的灵活配置; 提出了采用多通道的信号处理技术, 既保证了处理的实时性, 又减小了信号间的干扰, 提高了数据处理效率; 提出并采用基于改进MFAC的数据驱动算法实现数控机床伺服电机的自适应控制; 采用自主开发的SSBⅢ现场总线进行传感器信号的采集, 完成了从链路层到应用层功能的功能扩充; 此外, 采用基于蓝天数控的测试验证平台对所提出的改进MFAC算法进行了测试, 表明所开发算法对伺服电机的轨迹跟踪具有良好的控制性能。