1.一种适用于伺服控制器的控制算法,其特征在于:具体包括以下步骤:
步骤1,利用粒子群优化算法求PID控制器的Kp、Ki、Kd;
步骤2,在模糊控制器输入端输入e、ec,按照模糊规则,得出Kp、Ki、Kd的变化值ΔKp、ΔKi、ΔKd;
步骤3,将ΔKp、ΔKi、ΔKd分别与Kp、Ki、Kd相加,作为新的PID控制器的参数,输入给PID控制器,即可进行控制。
2.根据权利要求1所述的一种适用于伺服控制器的控制算法,其特征在于:
步骤1的具体步骤如下:
步骤1.1,初始化种群粒子规模、迭代次数、监测邻域粒子浓度上限δ,设置粒子速度与空间搜索范围,设置输出量和输入量之间的标准误差e0(t),并对第一代粒子进行PID参数编码;
步骤1.2,计算当前代粒子群适合度值,找到当前粒子的最佳位置Pbestij和种群最佳位置Gbestj;
步骤1.3,将粒子所在的当前代数与步骤1.1初始化代数进行比较,判断粒子所在的当前代数是否达到最大代数,若达到最大代数,则转到步骤1.8步执行;反之,执行步骤1.4;
步骤1.4,根据步骤1.3找到的当前粒子的最佳位置Pbestij和种群最佳位置Gbestj,计算监测邻域中的粒子个数,判断粒子种群是否满足多样性要求:若满足,则跳转至步骤1.6;反之,则执行步骤1.5;
步骤1.5,根据步骤1.2所得的粒子群适合度值,计算粒子被选中变异的概率,根据计算的变异概率确定进行变异的粒子;
步骤1.6,将步骤1.5选取的变异粒子进行变异,更新每一个粒子的位置,代数迭代加1;
步骤1.7,将当代粒子的输出量和输入量之间的误差e(t)与步骤1.1预设的标准误差e0(t)进行比较,当e(t)≤e0(t)时,执行步骤1.8,反之,则返回执行步骤1.2;
步骤1.8,输出PID控制器中的Kp、Ki、Kd参数。
3.根据权利要求2所述的一种适用于伺服控制器的控制算法,其特征在于:所述步骤1.2的具体过程如下:
步骤1.2.1,据PID的特性以及误差的要求,选取适合度函数f(t)的公式如下:
步骤1.2.2,根据如下公式(2)计算粒子适合度值fitnessi:
fitnessi=f(t)|(b(k,i),b(k-1,i),b(k-2,i),...,b(1,i)) (2);
其中,fitnessi表示第i个粒子的适合度,b(i,j)表示第i个粒子在第j维的位置,j=1,2,3…k,k表示粒子在空间上的最大维数。
4.根据权利要求2所述的一种适用于伺服控制器的控制算法,其特征在于:
所述步骤1.4的具体过程如下:
步骤1.4.1,定义监测邻域φ为:
φ={Pbestij|||Pbestij-Gbestj||2<ε} (3);
其中,||Pbestij-Gbestj||2表示粒子个体i最优位置Pbestij与全局最优位置Gbestj的空间距离,ε为粒子个体i最优位置Pbestij与全局最优位置Gbestj之间的标准距离,ε趋于0,ε表示监测邻域大小;
其中,Q表示寻优空间维数,Pbestij和Gbestj分别是第i个粒子和全局粒子当前所经过的第j维最佳位置;
步骤1.4.2,记Nφ为监测邻域φ中的粒子个数,Nφ开始会被初始化为0,当计算监测邻域φ的粒子数量时,每计算出一个满足公式(3)要求的粒子的时,Nφ加1;
步骤1.4.3,根据如下公式(5)计算种群预设的粒子数量:
Nδ=N×δ (5);
其中:Nδ表示在预设的粒子浓度下,监测邻域应有的粒子数量;N为种群粒子数,即种群粒子规模;
当Nφ≥Nδ成立时,表明监测邻域中粒子浓度过高,种群多样性有损失太多的危险,必须增加种群的多样性,即满足增加种群多样性的要求;
当Nφ<Nδ,则Nφ归0,此种情况不满足增加种群多样性的要求。
5.根据权利要求2所述的一种适用于伺服控制器的控制算法,其特征在于:所述步骤1.5的具体过程如下:
根据如下公式(6)计算粒子被选中进行变异的概率:
其中,Psi表示第i个粒子被选为变异的概率,其中,i=1.2….Nφ,fitnessj表示第i个粒子在第j维的适合度,粒子的适合度越大,被选为变异的概率越大;
将计算出的Ps1、Ps2、……、从大到小进行排序,并从最大值开始,选取60%Nφ~70%Nφ个粒子,作为进行变异的粒子。
6.根据权利要求2所述的一种适用于伺服控制器的控制算法,其特征在于:所述步骤1.6中进行变异的具体过程如下:
针对监测邻域φ中的每个粒子产生一个随机数randi,randi∈[0,Psi],此时,由如下公式式子(7)对被选粒子进行随机变异:
Pbestij=aj+(bj-aj)*rand(0,1) (7);
式中,Pbestij是在Nφ个粒子中被选中变异的第i个粒子当前所经过的第j维最好位置;aj,bj分别为粒子第j维寻优范围的下限和上限。
7.根据权利要求2所述的一种适用于伺服控制器的控制算法,其特征在于:所述步骤2的具体过程如下:
步骤2.1,在模糊控制器输入端输入e、ec,根据参数e、ec、Kp、Ki、Kd对控制系统的影响来制定模糊规则库;
步骤2.2,参数模糊推理器时刻监测e、ec的变化,按照步骤2.1制定的规则库确定Kp、Ki、Kd的输出变化值ΔKp、ΔKi、ΔKd。