一种基于CANopen协议的多轴同步误差补偿方法和系统技术方案

技术编号:25307615 阅读:23 留言:0更新日期:2020-08-18 22:26
本发明专利技术公开了一种基于CANopen协议的多轴同步误差补偿方法和系统,包括主节点将目标轨迹曲线离散为连续的多个小直线段,各小直线段包含目标速度与距离信息;主节点依次取小直线段作为当前插补线段;主节点间隔发送同步信号至从节点伺服器,并接收各从节点伺服器返回的当前实际位置,计算当前实际位置到当前插补线段的距离作为轮廓误差,根据轮廓误差计算各从节点伺服器在下一同步控制周期中的插补目标位置;主节点将计算得到的各从节点伺服器在下一同步控制周期中的插补目标位置发送至对应从节点伺服器。本发明专利技术根据轮廓误差设置插补目标位置,保证每一次同步控制都能减小各轴的同步误差,显著提升了多轴同步控制的精度。

【技术实现步骤摘要】
一种基于CANopen协议的多轴同步误差补偿方法和系统
本申请属于多轴控制
,具体涉及一种基于CANopen协议的多轴同步误差补偿方法和系统。
技术介绍
CANopen协议是基于控制局域网路(ControllerAreaNetwork,Can)的一个高层通信协定,是工业控制常用到的一种现场总线。CANopen协议具有数据链路层可靠、兼容性高、价格低等优势,因此在工业控制中的应用面广。在工业控制的多轴控制中,能通过CANopen协议能对不同电机伺服器进行统一配置。对伺服控制系统有专门的CiA402协议规定伺服器的通信方式。但协议中并没有规定伺服器之间的通信,单纯的CANopen协议无法做到伺服器之间同步以及插补控制,更无法做到对同步误差的补偿,容易造成在多轴控制中因无法同步控制多轴而影响正常工作,或者造成加工产品的合格率降低,直接影响企业的产能。因此如何基于CANopen协议实现多轴同步控制的同步误差补偿是有待解决的问题。
技术实现思路
本申请的目的在于一种基于CANopen协议的多轴同步误差补偿方法和系统,提升多轴协同运行的同步精度。为实现上述目的,本申请所采取的技术方案为:一种基于CANopen协议的多轴同步误差补偿方法,用于控制多台伺服器的协同运行,所述CANopen协议包括主节点和从节点,所述主节点为主控制器,所述多台伺服器均作为从节点伺服器,所述基于CANopen协议的多轴同步误差补偿方法,包括:步骤S1、主节点获取目标轨迹曲线并对目标轨迹曲线进行速度规划与粗插补处理,将目标轨迹曲线离散为连续的多个小直线段,各小直线段包含目标速度与距离信息;步骤S2、主节点依次取小直线段作为当前插补线段;步骤S3、主节点间隔发送同步信号至从节点伺服器,并接收各从节点伺服器返回的当前实际位置,计算当前实际位置到当前插补线段的距离作为轮廓误差,根据所述轮廓误差计算各从节点伺服器在下一个同步控制周期中的插补目标位置,如下:a、若所述轮廓误差为零,则取当前插补线段包含的目标速度,并根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至对应从节点伺服器的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;b、若所述轮廓误差在误差允许范围内,则根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,并取当前插补线段包含的目标速度,根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;c、若所述轮廓误差超出误差允许范围,则取运动情况为滞后且滞后距离最大的从节点伺服器,将该从节点伺服器在上一个同步控制周期的平均速度作为下一个同步控制周期内该从节点伺服器的目标速度,以该从节点伺服器的目标速度计算各从节点伺服器在下一个同步控制周期的给进量;并根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;步骤S4、主节点将计算得到的各从节点伺服器在下一个同步控制周期中的插补目标位置发送至对应从节点伺服器,并且周期性执行步骤S3直至从节点伺服器运动至当前插补线段的末端;步骤S5、主节点判断当前插补线段是否为目标轨迹曲线中的最后一个小直线段,若是则完成并结束;若不是则重新执行步骤S2。作为优选,所述步骤S3的第b点中根据所述轮廓误差计算各从节点伺服器对应的补偿值,包括:取各从节点伺服器对应的补偿值为轮廓误差在各从节点伺服器控制的运动轴的运行方向上的分量。作为优选,所述步骤S3的第b点中利用补偿值对各从节点伺服器的当前实际位置进行补偿,包括:根据当前实际位置与当前插补线段的相对位置判断各从节点伺服器的运动情况,若从节点伺服器的运动情况为超前,则将该从节点伺服器的当前实际位置减去对应的补偿值;若从节点伺服器的运动情况为滞后,则将该从节点伺服器的当前实际位置加上对应的补偿值。作为优选,所述步骤S3的第c点中根据所述轮廓误差计算各从节点伺服器对应的补偿值,包括:将轮廓误差乘以比例系数得到比例误差;取各从节点伺服器对应的补偿值为比例误差在各从节点伺服器控制的运动轴的运行方向上的分量。作为优选,所述比例系数为不大于1的正数。作为优选,所述步骤S3的第c点中利用补偿值对各从节点伺服器的当前实际位置进行补偿,包括:根据当前实际位置与当前插补线段的相对位置判断各从节点伺服器的运动情况,若从节点伺服器的运动情况为超前,则将该从节点伺服器的当前实际位置减去对应的补偿值;若从节点伺服器的运动情况为滞后,则将该从节点伺服器的当前实际位置加上对应的补偿值。本申请还提供一种基于CANopen协议的多轴同步误差补偿系统,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一技术方案所述的基于CANopen协议的多轴同步误差补偿方法的步骤。本申请提供的基于CANopen协议的多轴同步误差补偿方法和系统,根据轮廓误差设置下一个同步控制周期合适的插补目标位置,以保证每一次同步控制都能减小各轴的同步误差,显著提升了多轴同步控制的精度。附图说明图1为本申请的基于CANopen协议的多轴同步误差补偿方法的流程图;图2为本申请实施例1中速度规划和粗插补操作的示意图;图3为本申请实施例1中轮廓误差为零时的示意图;图4为本申请实施例1中轮廓误差小于误差允许范围时的示意图;图5为本申请实施例1中轮廓误差超过误差允许范围时的示意图;图6为本申请实施例1中误差补偿的CANopen通讯时序图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本申请。其中一个实施例中,提供一种基于CANopen协议的多轴同步误差补偿方法,用于控制多台伺服器的协同运行,实现多运动轴的协同控制。CANopen协议是基于Can总线的一个高层通信协定CANopen协议包括主节点和从节点。本实施例中设置主节点为主控制器,这里的主控制器应理解为与各伺服器能够通信连接的设备,主控制器可以是独立的一台计算机,也可以是工业控制中用于控制多轴运动的总控设备。并且设置多台伺服器均作为从节点伺服器本文档来自技高网
...

【技术保护点】
1.一种基于CANopen协议的多轴同步误差补偿方法,用于控制多台伺服器的协同运行,其特征在于,所述CANopen协议包括主节点和从节点,所述主节点为主控制器,所述多台伺服器均作为从节点伺服器,所述基于CANopen协议的多轴同步误差补偿方法,包括:/n步骤S1、主节点获取目标轨迹曲线并对目标轨迹曲线进行速度规划与粗插补处理,将目标轨迹曲线离散为连续的多个小直线段,各小直线段包含目标速度与距离信息;/n步骤S2、主节点依次取小直线段作为当前插补线段;/n步骤S3、主节点间隔发送同步信号至从节点伺服器,并接收各从节点伺服器返回的当前实际位置,计算当前实际位置到当前插补线段的距离作为轮廓误差,根据所述轮廓误差计算各从节点伺服器在下一个同步控制周期中的插补目标位置,如下:/na、若所述轮廓误差为零,则取当前插补线段包含的目标速度,并根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至对应从节点伺服器的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;/nb、若所述轮廓误差在误差允许范围内,则根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,并取当前插补线段包含的目标速度,根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;/nc、若所述轮廓误差超出误差允许范围,则取运动情况为滞后且滞后距离最大的从节点伺服器,将该从节点伺服器在上一个同步控制周期的平均速度作为下一个同步控制周期内该从节点伺服器的目标速度,以该从节点伺服器的目标速度计算各从节点伺服器在下一个同步控制周期的给进量;/n并根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;/n步骤S4、主节点将计算得到的各从节点伺服器在下一个同步控制周期中的插补目标位置发送至对应从节点伺服器,并且周期性执行步骤S3直至从节点伺服器运动至当前插补线段的末端;/n步骤S5、主节点判断当前插补线段是否为目标轨迹曲线中的最后一个小直线段,若是则完成并结束;若不是则重新执行步骤S2。/n...

【技术特征摘要】
1.一种基于CANopen协议的多轴同步误差补偿方法,用于控制多台伺服器的协同运行,其特征在于,所述CANopen协议包括主节点和从节点,所述主节点为主控制器,所述多台伺服器均作为从节点伺服器,所述基于CANopen协议的多轴同步误差补偿方法,包括:
步骤S1、主节点获取目标轨迹曲线并对目标轨迹曲线进行速度规划与粗插补处理,将目标轨迹曲线离散为连续的多个小直线段,各小直线段包含目标速度与距离信息;
步骤S2、主节点依次取小直线段作为当前插补线段;
步骤S3、主节点间隔发送同步信号至从节点伺服器,并接收各从节点伺服器返回的当前实际位置,计算当前实际位置到当前插补线段的距离作为轮廓误差,根据所述轮廓误差计算各从节点伺服器在下一个同步控制周期中的插补目标位置,如下:
a、若所述轮廓误差为零,则取当前插补线段包含的目标速度,并根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至对应从节点伺服器的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;
b、若所述轮廓误差在误差允许范围内,则根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,并取当前插补线段包含的目标速度,根据目标速度计算各从节点伺服器在下一个同步控制周期的给进量,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;
c、若所述轮廓误差超出误差允许范围,则取运动情况为滞后且滞后距离最大的从节点伺服器,将该从节点伺服器在上一个同步控制周期的平均速度作为下一个同步控制周期内该从节点伺服器的目标速度,以该从节点伺服器的目标速度计算各从节点伺服器在下一个同步控制周期的给进量;
并根据所述轮廓误差计算各从节点伺服器对应的补偿值,利用补偿值对各从节点伺服器的当前实际位置进行补偿,将给进量叠加至各从节点伺服器补偿后的当前实际位置上,得到各从节点伺服器在下一个同步控制周期中的插补目标位置;
步骤S4、主节点将计算得到的各从节点伺服器在下一个同步控制周期中的插补目标位置发送至对应从节点伺服器,并且周期性执行步骤S3直至从节点伺服器运动至当前插补线段的末端;
步骤S5、...

【专利技术属性】
技术研发人员:董辉葛天飞仲济磊吴祥张成祥唐旺山
申请(专利权)人:浙江工业大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1