技术新讯 > 控制调节装置的制造及其应用技术 > 一种面向微段的多轴机器的速度前瞻方法与流程  >  正文

一种面向微段的多轴机器的速度前瞻方法与流程

  • 国知局
  • 2024-08-01 00:12:44

本发明属于多轴联动机器人控制的,具体涉及一种面向微段的多轴机器的速度前瞻方法。

背景技术:

1、制造业是国家生产能力和经济社会发展的基础,是高新技术产业化的载体,它体现了社会生产力的发展水平。为了满足装备制造业的发展需要,一系列先进加工技术如雨后春笋般诞生和发展,其中最具代表的便是机床加工技术。先进数字技术的诞生和快速升级,标志着机床领域已经进入以数字化自动控制为核心的智能制造时代。特别是近十年以来,随着计算机网络技术的飞速发展,机床制造业也已经进入了以高速、高精度、高效率为主要特征的数控时代。

2、随着经济社会的不断发展,人们对于个性化产品的需求越来越大,供求关系促使了产品制造企业必须提高加工的速度及精度。这是因为,加工速度决定了产品的生产效率,而加工精度又是产品质量的重要保障。同时,高速高精度加工需求迫切需要数控系统在其计算和控制能力上有进一步的提升。这主要体现在两个方面:

3、其一,数控系统的运算速度要快,具体包括核心算法的简洁有效性和各运动部件的反应快速性,如此缩短加工准备的时间;

4、其二,要求各执行机构在运动过程中不产生冲击、振荡、失步等现象,从而满足高速高精度加工的需求。

5、当前,前瞻算法建立的前提是将整个轨迹拆分为许多微小的直线微段,并且各个微段内匀速运动——一个微段内v不变,但是要注意头结点速度startv和尾结点速度endv是可以不同的,v取startv,不同微段之间以速度跳变的方式改变速度。之所以不同微段间虚拟轴(运动轨迹上)以速度跳变的方式改变速度,是因为不可能使得各个物理轴的速度同时满足速度连续,不妨使得虚拟轴速度跳变,只需要使得虚拟轴及各个物理轴满足加速度,加加速度等条件。

6、数控系统中常用的加减速控制算法包括直线加减速算法、指数加减速算法、s型加减速算法和多项式加减速算法等,其中s形加减速算法因其实用性,受到的关注最多。传统的s型速度规划没有对微段分类,需要对一个或几个微段就进行一次s型速度规划,使得速度曲线频繁震荡,相较于t型速度,速度上升或下降过程缓慢,也难以适应各种复杂的运动情形。对于一条长线段,理想的s型速度曲线是可以在一次加减速中直接达到最大速度,然而,传统的s型速度规划为了适应各种复杂的运动轨迹,即使在长线段的速度规划中,也是在多次s型加减速才能达到最高速度。

7、为了既能让更长的轨迹能在一次s型加减速过程中规划,又能适应各种各样的运动轨迹,本发明提出将多个具有相似物理属性的微段进行分类,形成一个具有多个相似物理属性微段的长段。本发明可适用于多轴联动控制加工,使得运动更加平滑柔顺,而且大大减少了计算量,提升了运行效率。也提供了一个高效,平稳的s型速度前瞻通用方案。

技术实现思路

1、本发明的目的在于提供一种面向微段的多轴机器的速度前瞻方法,旨在解决上述的问题。

2、本发明主要通过以下技术方案实现:

3、一种面向微段的多轴机器的速度前瞻方法,已知多轴机器的运动轨迹,且运动轨迹拆分为若干个微段,对若干个微段进行分类,得到若干个大段;然后,针对分类后的大段,进行速度规划;

4、对若干个微段进行分类包括以下步骤:

5、步骤s1:根据isfirst标志属性判断当前微段是否分为大段的第一段微段,若isfirst标志属性为1,则当前微段是分类的第一段微段,进入步骤s2,否则进入步骤s3;

6、步骤s2:计算当前微段的临时速度上限最大值temmaxv,当tempmaxv与maxv相等时,则将isfirst标志置为0,当前大段的第一段指向当前微段,并进入步骤s4;

7、步骤s3:计算tempminv,tempmaxv,tempminvbyacc,tempmaxvbyacc,tempminvbyjerk,tempmaxvbyjerk,tempmaxa,tempmina;

8、步骤s4:若同时满足以下条件,则进入步骤s5,否则进入步骤s6;

9、tempmaxv-tempminv≦vrang

10、tempmaxvbyacc-tempminvbyacc≦accvrange

11、tempmaxvbyjerk-tempminvbyjerk≦jerkvrange

12、tempmaxa-tempmina≦accrange

13、步骤s5:分别更新minv,maxv,minvbyacc,maxvbyacc,minvbyjerk,maxvbyjerk,maxa,mina值为tempminv,tempmaxv,tempminvbyacc,tempmaxvbyacc,tempminvbyjerk,tempmaxvbyjerk,tempmaxa,tempmina;判断当前微段是否是所有微段的最后一个微段,如果是,转到步骤s6,如果不是,则将下一微段作为当前微段并进入步骤s1;

14、步骤s6:将从大段的第一段微段到当前微段中所有微段合并为一个大段,将大段的isfirst标志置为1;

15、其中:

16、maxv为所有微段的速度上限最大值;

17、minv为所有微段的速度上限最小值;

18、minvbyacc为所有微段的加速度限制的速度上限最小值;

19、maxvbyacc为所有微段的加速度限制的速度上限最大值;

20、minvbyjerk为所有微段的加加速度限制的速度上限最小值;

21、maxvbyjerk为所有微段的加加速度限制的速度上限最大值;

22、maxa为所有微段的加速度最大值;

23、mina为所有微段的加速度最小值;

24、tempminv为微段的临时速度上限最小值;

25、temmaxv为微段的临时速度上限最大值;

26、tempminvbyacc为微段的加速度限制的临时速度上限最小值;

27、tempmaxvbyacc为微段的加速度限制的临时速度上限最大值;

28、tempminvbyjerk为微段的加加速度限制的临时速度上限最小值;

29、tempmaxvbyjerk为微段的加加速度限制的临时速度上限最大值;

30、tempmaxa为微段的临时加速度最大值;

31、tempmina为微段的临时加速度最小值;

32、vrange为所有微段速度上限最大值和最小值相差的范围;

33、accvrange为所有微段加速度限制的速度上限最大值和最小值相差的范围;

34、jerkvrange为所有微段加加速度限制的速度上限最大值和最小值相差的范围;

35、accrange为所有微段虚拟轴加速度上限最大值和最小值相差的范围。

36、为了更好地实现本发明,进一步地,所述步骤s3中的计算公式如下:

37、

38、

39、

40、

41、

42、

43、

44、

45、其中:

46、line1.startvlimit为当前微段的下一微段line1的头结点速度限制值;

47、line1.endvlimit为当前微段的下一微段line1的尾结点速度限制值;

48、line1.startvlimitbyacc为当前微段的下一微段line1的头结点的加速度限制的速度限制值;

49、line1.endvlimitbyacc为当前微段的下一微段line1的尾结点的加速度限制的速度限制值;

50、line1.startvlimitbyjerk为当前微段的下一微段line1的头结点的加加速度限制的速度限制值;

51、line1.endvlimitbyjerk为当前微段的下一微段line1的尾结点的加加速度限制的速度限制值;

52、line1.acc为前微段的下一微段line1的加速度。

53、为了更好地实现本发明,进一步地,所述步骤s5中,初始的minv,maxv,minvbyacc,maxvbyacc,minvbyjerk,maxvbyjerk,maxa和mina的计算公式如下:

54、

55、

56、

57、

58、

59、

60、

61、

62、其中:

63、line.startvlimit为当前微段line的头结点速度限制值;

64、line.endvlimit为当前微段line的尾结点速度限制值;

65、line.startvlimitbyacc为当前微段line的头结点的加速度限制的速度限制值;

66、line.endvlimitbyacc为当前微段line的尾结点的加速度限制的速度限制值;

67、line.startvlimitbyjerk为当前微段line的头结点的加加速度限制的速度限制值;

68、line.endvlimitbyjerk为当前微段line的尾结点的加加速度限制的速度限制值;

69、line.acc为前微段的下一微段line的加速度。

70、为了更好地实现本发明,进一步地,所述步骤s4中,所述vrange、accvrange、jerkvrange和accrange的计算公式如下:

71、

72、

73、

74、。

75、为了更好地实现本发明,进一步地,所述步骤s6中,若当前微段是有微段的最后一个微段,则结束流程;若前微段不是所有微段的最后一个微段,则将下一微段作为当前微段并进入步骤s1。

76、为了更好地实现本发明,进一步地,所述步骤s6中,分类后的大段的头结点速度限制值和尾结点速度限制值均为minv,且速度上限最大值与minv相等。

77、为了更好地实现本发明,进一步地,基于s型速度曲线进行速度规划包括以下步骤:

78、步骤t1:对初始速度的最小值minvs和最大值maxvs进行赋值,并作为轨迹的初始速度范围;

79、步骤t2:若minv大于当前大段的起始节点速度限制startvlimit,则进入步骤t3;否则进入步骤t4;

80、步骤t3:将当前大段的起始节点速度startv赋值为startvlimit,并从前一大段开始进行回溯;

81、步骤t4:对当前大段的起始速度赋值,并对当前大段进行速度规划,得到大段末尾速度的最小值minve和最大值maxve;

82、步骤t5:令minvs=minve,maxvs=maxve;并将当前大段指针移动至下一大段,进入步骤t1。

83、为了更好地实现本发明,进一步地,所述步骤t3包括以下步骤:

84、步骤t31:起始回溯大段cursegment指向输入大段incursegment,起始速度vs为输入起始速度;

85、步骤t32:当前大段的起始速度为vs,并计算得到末速度的最大值maxve;

86、步骤t33:若上一大段的末速度大于maxve,则进入步骤t34,否则进入步骤t35;

87、步骤t34:当前大段起始速度和上一大段末尾速度均赋值为maxve,当前大段cursegment指向上一大段,并进入步骤t32;

88、步骤t35:当前大段的起始速度赋值为上一大段的末尾速度。

89、为了更好地实现本发明,进一步地,在步骤t5之后还包括以下步骤:

90、步骤t6:从大段的第一个微段开始速度规划,初始当前长度l=0;

91、步骤t7:由当前长度l得到当前时间t,然后计算得到当前速度v,令当前微段速度为v;

92、步骤t8:更新l为当前长度l+当前微段的长度lin[i],l;然后,当前微段指向下一微段line[i+1],并进入步骤t7。

93、本发明的有益效果如下:

94、本发明将分类前小微段的速度规划问题转换为分类后大段的速度规划,解决了现有技术中每次s型速度规划首尾加速度均为0,使得速度曲线频繁震荡,相较于t型速度,速度上升或下降过程缓慢,一些情况下速度达不到理想值的问题。同时降低了计算复杂度,而且大大减少了计算量,提升了运行效率,具有较好的实用性。

本文地址:https://www.jishuxx.com/zhuanli/20240730/200025.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。