8.7 基于遗传算法的伺服系统静态摩擦参数辨识 采用遗传算法,研究伺服系统静态摩擦参数辨识的仿真和设计方法。 8.7.1 伺服系统的静态摩擦模型 机械系统可描述为: (1) 其中 为转动惯量, 为转角, 为控制输入力矩, 为摩擦力。 考虑摩擦力为静摩擦力的情况,静摩擦力与转速之间的稳态对应关系为: (2) 伺服系统在正反转动速度方向运行时,其静态摩擦力的静态参数取不同的值,当 时,静态参数值为 ; 当 时,静态参数的值为 表示如下: (3) 由上式所确定的转速-摩擦力矩曲线称为Stribeck曲线。 8.7.2 静摩擦模型Stribeck曲线的获取 由式(1)可知,当 时,摩擦模型为静态摩擦模型,此时 , 。故采用一组恒速跟踪,可获得一组相应的控制输入信号和静态摩擦力,从而获得Stribeck曲线。 具体方法为:取闭环系统的一组恒定转速序列 作为速度指令信号,通过采用PD控制律,实现被控对象精确的速度跟踪,得到相应的控制力矩序列 ,从而获得一组相应的静态摩擦力矩序列 。 PD控制律为: (4) 8.7.3 基于遗传算法的静态摩擦参数辨识 取待辨识静态摩擦参数向量为个体,遗传算法的每步迭代得到静态摩擦参数的辨识值为: (5) 其中, 为种群规模。 则由下式得到相应的摩擦力矩辨识值 辨识误差为 其中 值根据所建立的Stribeck曲线得到。 (6) 取目标函数为 选择个体适应度函数如下: 采用十进制浮点编码格式,选择操作采取保存最优个体的随机采样选择方法,交叉操作采用均匀交叉算子,交叉概率 , 变异概率随进化代数自适应调整, 其中g为当前遗传代数。 遗传算法的步骤如下: Step 1. 置进化代数计数器为 ,随机产生初始化种群 ; Step 2. 计算个体适应度 , ; Step 3. 判断是否达到最大进化代数,若是,则算法终止,否则,转step 4; Step 4. 经过选择操作,产生新一代种群 ; Step 5. 以概率 进行交叉操作; Step 6. 以概率 进行个体变异操作; Step 7. ,转step 2; 一旦辨识得到的参数估计值,便可以设计摩擦力矩的补偿环节,实现对系统的摩擦进行补偿,基于摩擦力矩补偿的控制系统描述为: 8.7.4 仿真实例 被控对象为(1)式,取 ,控制律取PD控制。 仿真之一:Stribeck曲线的设计 恒速跟踪时,为静态摩擦, ,实际系统的静态摩擦模型取(3)式,取 取速度信号作为指令信号, 共41个速度指令信号。针对每个指令信号,采用PD控制律,取 。 仿真结果如图1-2所示。仿真结束后,将所得到的静摩擦力矩保存在文件Fi_file.mat中。 图1 恒速斜波跟踪(速度指令为1.0时) 图2 Stribeck曲线的辨识 仿真程序 (1)斜波跟踪测试:chap8_4.m (2)用于测试的模型:chap8_4plant.m 仿真之二:遗传算法的摩擦参数辨识 首先将仿真之一“Stribeck曲线设计”所得到的摩擦力矩从文件Fi_file.mat中调入,作为实际系统的静摩擦力矩 。 恒速跟踪时,为静态摩擦, 。取速度信号 作为指令信号,共41个速度指令信号。针对每个指令信号,采用PD控制律,取 ,