1.一种基于CANopen协议的多轴同步误差补偿方法,用于控制多台伺服器的协同运行,其特征在于,所述CANopen协议包括主节点和从节点,所述主节点为主控制器,所述多台伺服器均作为从节点伺服器,所述基于CANopen协议的多轴同步误差补偿方法,包括:步骤S1、主节点获取目标轨迹曲线并对目标轨迹曲线进行速度规划与粗插补处理,将目标轨迹曲线离散为连续的多个小直线段,各小直线段包含目标速度与距离信息;
步骤S2、主节点依次取小直线段作为当前插补线段;
步骤S3、主节点间隔发送同步信号至从节点伺服器,并接收各从节点伺服器返回的当前实际位置,计算当前实际位置到当前插补线段的距离作为轮廓误差,根据所述轮廓误差计算各从节点伺服器在下一个同步控制周期中的插补目标位置,如下:a、若所述轮廓误差为零,则取当前插补线段包含的目标速度,并根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至对应从节点伺服器的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;
b、若所述轮廓误差在误差允许范围内,则根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,并取当前插补线段包含的目标速度,根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;
c、若所述轮廓误差超出误差允许范围,则取运动情况为滞后且滞后距离最大的从节点伺服器,将该从节点伺服器在上一个同步控制周期的平均速度作为下一个同步控制周期内该从节点伺服器的目标速度,以该从节点伺服器的目标速度计算各从节点伺服器在下一个同步控制周期的给进量;
并根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;
步骤S4、主节点将计算得到的各从节点伺服器在下一个同步控制周期中的插补目标位置发送至对应从节点伺服器,并且周期性执行步骤S3直至从节点伺服器运动至当前插补线段的末端;
步骤S5、主节点判断当前插补线段是否为目标轨迹曲线中的最后一个小直线段,若是则完成并结束;若不是则重新执行步骤S2。
2.如权利要求1所述的基于CANopen协议的多轴同步误差补偿方法,其特征在于,所述步骤S3的第b点中根据所述轮廓误差计算各从节点伺服器对应的补偿值,包括:取各从节点伺服器对应的补偿值为轮廓误差在各从节点伺服器控制的运动轴的运行方向上的分量。
3.如权利要求1所述的基于CANopen协议的多轴同步误差补偿方法,其特征在于,所述步骤S3的第b点中利用补偿值对各从节点伺服器的当前实际位置进行补偿,包括:根据当前实际位置与当前插补线段的相对位置判断各从节点伺服器的运动情况,若从节点伺服器的运动情况为超前,则将该从节点伺服器的当前实际位置减去对应的补偿值;
若从节点伺服器的运动情况为滞后,则将该从节点伺服器的当前实际位置加上对应的补偿值。
4.如权利要求1所述的基于CANopen协议的多轴同步误差补偿方法,其特征在于,所述步骤S3的第c点中根据所述轮廓误差计算各从节点伺服器对应的补偿值,包括:将轮廓误差乘以比例系数得到比例误差;
取各从节点伺服器对应的补偿值为比例误差在各从节点伺服器控制的运动轴的运行方向上的分量。
5.如权利要求4所述的基于CANopen协议的多轴同步误差补偿方法,其特征在于,所述比例系数为不大于1的正数。
6.如权利要求1所述的基于CANopen协议的多轴同步误差补偿方法,其特征在于,所述步骤S3的第c点中利用补偿值对各从节点伺服器的当前实际位置进行补偿,包括:根据当前实际位置与当前插补线段的相对位置判断各从节点伺服器的运动情况,若从节点伺服器的运动情况为超前,则将该从节点伺服器的当前实际位置减去对应的补偿值;
若从节点伺服器的运动情况为滞后,则将该从节点伺服器的当前实际位置加上对应的补偿值。
7.一种基于CANopen协议的多轴同步误差补偿系统,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的基于CANopen协议的多轴同步误差补偿方法的步骤。