CN114237161A - 一种基于数字滤波的工业机器人nurbs曲线插补方法 - Google Patents
一种基于数字滤波的工业机器人nurbs曲线插补方法 Download PDFInfo
- Publication number
- CN114237161A CN114237161A CN202111355818.1A CN202111355818A CN114237161A CN 114237161 A CN114237161 A CN 114237161A CN 202111355818 A CN202111355818 A CN 202111355818A CN 114237161 A CN114237161 A CN 114237161A
- Authority
- CN
- China
- Prior art keywords
- curve
- length
- point
- constraint
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000001914 filtration Methods 0.000 title claims abstract description 27
- 238000006073 displacement reaction Methods 0.000 claims abstract description 24
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 13
- 230000008859 change Effects 0.000 claims abstract description 12
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims abstract description 4
- 230000001133 acceleration Effects 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 23
- 230000004044 response Effects 0.000 claims description 12
- 230000036461 convulsion Effects 0.000 claims description 9
- 230000003044 adaptive effect Effects 0.000 claims description 6
- 239000002131 composite material Substances 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 4
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 230000000737 periodic effect Effects 0.000 claims description 3
- 239000004576 sand Substances 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000011960 computer-aided design Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- -1 periodo Chemical group 0.000 description 1
- 238000002203 pretreatment Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/41—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
- G05B19/4103—Digital interpolation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34148—Coons interpolation, patch
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
Abstract
本发明公开了一种基于数字滤波的工业机器人NURBS曲线插补方法,包括如下步骤:S1、读取NURBS曲线数据和运动约束;S2、根据曲率变化情况、轨迹弦高误差约束和最大进给速度约束确定速度极低点的位置和速度,并在该点处将曲线分割成块;S3、利用自适应辛普森算法计算各块曲线的长度,计算过程中各分块曲线将被细分为若干段并生成反长度函数;S4、根据运动约束及各分块曲线的长度和始末速度,计算各滤波器的最短时间长度,然后据此配置配置滤波器和双阶跃输入信号参数,通过数字滤波得到位移规划;S5、位移规划结果结合步骤S3中相应段的反长度函数快速计算得到插值点参数,进而求得期望点的坐标。
Description
技术领域
本发明属于运动控制领域,具体涉及一种基于数字滤波的工业机器人NURBS曲线插补方法。
背景技术
目前主流的工业机器人只支持直线插补和圆弧插补,在加工复杂曲线和曲面时,往往需要需要将其离散成大量的小线段,然而该方法主要存在两个方面的不足:一是小线段一阶不连续导致进给速度存在大小和方向的突变,影响加工精度且会导致系统振动;二是庞大的工程文件会增加内存消耗并对数据通信造成负担,不能满足系统的实时性要求。与传统的小线段方法相比,使用参数插值法具有内存消耗小,速度平滑度高的特点,其中非均匀有理B样条(Non-Uniform Rational B-Spline,NURBS)为自由曲线曲面和解析形状提供了统一的数学表达形式,由于其具有直观性、局部性、收敛性和逼近性等优点,因此STEP-NC采用NURBS作为计算机辅助设计与制造(CAD/CAM)系统中数据交换的标准接口,并得到广泛的应用。应用NURBS曲线进行复杂曲线曲面加工可以大幅提高工件的加工精度和效率,同时NURBS曲线参数插值也已经成为工业机器人加工中的重要工具。进给速度规划是NURBS曲线插补中的最重要组成部分,Shpitalni(“Realtime curve interpolators,”Computer-Aided Design)提出以恒定的进给速率进行NURBS曲线插补,但此方法未考虑到曲线大曲率对轨迹精度的负面影响;Syh-Shiuh("Adaptive-feedrate interpolation forparametric curves with a confined chord error,"Computer-Aided Design)提出在插补过程中根据曲线曲率和弦高误差约束自适应调节进给速度,但此方法未考虑到速度和加速的的平滑性,调整过程中的速度突变会导致运动控制系统振动;Jahanpour("A novelacc-jerk-limited NURBS interpolation enhanced with an optimized S-shapedquintic feedrate scheduling scheme,"International Journal of AdvancedManufacturing Technology)对每个曲线转角使用五次多项式规划进给速度,但需要额外的优化算法且只能离线插补,无法满足实时性要求;此外,目前的轨迹规划通常以时间最优、能量最优及平滑性作为规划目标,这类规划方法主要考虑的是单数控设备作业的情况,无法灵活调节运动控制器的运行时间,而在实际应用场景中,工业机器人在进行焊接或分拣操作时,通常需要与其他设备协同完,另外在机器人进行工件切削或打磨操作时,需要根据工件的形状调节进给速度,因此,为了满足与其他运动设备的配合要求和轨迹精度要求,曲线插补器需要灵活地调整轨迹中特定点的进给速度和到达时间。
发明内容
针对现有技术存在的上述问题,本发明的目的是提出一种基于数字滤波的工业机器人NURBS曲线插补方法,该方法可获得良好的轨迹精度,速度平滑性和较高的插补实时性,且能灵活调节轨迹中关键点的进给速度和到达时间。
本发明至少通过如下技术方案之一实现。
一种基于数字滤波的工业机器人NURBS曲线插补方法,包括如下步骤:
S1、获取NURBS曲线数据和运动约束;
S2、根据曲率变化情况、轨迹弦高误差约束和最大进给速度约束确定速度极低点的位置及进给速度,然后在该点处将曲线分割成块;
S3、利用自适应辛普森算法计算各块曲线的长度,计算过程中各分块曲线将被细分为若干段并生成反长度函数;
S4根据运动约束及各分块曲线的的特征参数,计算各滤波器的最短时间长度,配置滤波器和双阶跃的输入信号参数,通过数字滤波得到位移规划;
S5、基于位移规划结果,结合相应段的反长度函数快速计算得到插值点参数,进而求得期望点的坐标。
优选地,获取的运动约束包括:最大弦高误差最大进给速度vt、最大进给加速度At、最大进给加速度Jt、插补周期Ts;获取的NURBS曲线数据包括:阶数p、控制点Pi、节点向量U、控制点权重因子wi,则具有n+1个控制点的p次NURBS曲线定义如下:
其中{Ni,p(u)}是定义在非周期且非均匀节点向量U上的p次B样条基函数,节点向量U是m+1个非递减数的集合:
采用如下递推方式定义基函数:
控制点数n+1,节点数m+1和曲线阶数p+1满足关系m=n+p+1。
优选地,根据曲率变化情况和运动约束找到速度极低点,具体为:首先扫描整条曲线的曲率,若κ(Pi)>κ(Pi-1),κ(Pi)>(Pi+1),则控制点Pi为曲率极大值点,并将其作为速度极低点候选点,然后根据弦高误差约束、最大进给速度约束和插补周期筛选候选点筛选速度极低点。
优选地,在速度极低点处将曲线分割为块,并根据曲率、弦高误差约束和插补周期设置速度极低点处的进给速度:
优选地,利用自适应辛普森算法计算各分块曲线的长度,包括以下步骤:
(1)使用积分表示NURBS曲线在分块区间[a,b]的长度,根据辛普森公式,得曲线区间[a,b]的近似长度为;
(2)根据复合辛普森积分公式原理,两相等子区间的辛普森积分结果之和近似于对完整区间的积分结果;
(3)比较步骤(1)、步骤(2)得到的近似结果,判断是否满足误差条件,若满足误差条件,则该区间的曲线长度为步骤(2)得到的结果,否则,将区间[a,b]细分,相应的分块曲线会被细分为段,然后分别对得到的两个曲线分段重复上述步骤(1)~步骤(3),直至所有子区间满足误差条件,此时区间[a,b]的曲线长度为所有子区间曲线长度之和,即分块曲线的长度为所有分段曲线长度之和。
优选地,五次多项式拟合曲线长度l和曲线参数u的关系为各分块曲线内的各分段曲线生成反长度函数。
优选地,对于每个曲线分块,使用串联的三个有限脉冲响应滤波器对双阶跃输入信号进行数字滤波,并将结果叠加斜坡信号以获得满足S形加减速和始末速度约束的位移规划。优选地,根据运动约束和各分块曲线的特征参数设置三个滤波器的时间长度参数和双阶跃输入信号参数,其中运动约束包括弦高误差约束、最大进给速度约束、最大加速度约束、最大加加速度约束,分块曲线的特征参数包括始末速度和曲线长度。
优选地,双阶跃的输入信号的幅值参数h1、h2是根据目标分块初速度vo、末速度vs和曲线长度L进行配置。
优选地,步骤S5中,位移规划结果为各插补周期时刻的期望插补点相对于所在曲线分块起点的曲线长度,为了获得期望插补点的曲线参数,应先定位其所在曲线分段,当位移规划结果li对应的插补点位在第k个曲线分段时,其满足如下条件:
lk≤li<lk+(Δl)k
其中(Δl)k为第k个曲线分段的曲线长度,在使用自适应辛普森算法计算分块曲线长度时已求出,lk为曲线分段起点相对于曲线分块起点的曲线长度。
与现有的技术相比,本发明的有益效果为:
1、轨迹精度高。根据曲率变化情况,弦高误差约束,最大速度约束确定速度极低点的位置和进给速度,并在速度极低点处分割曲线获得若干分块曲线,然后分别对各分块曲线进行速度规划和轨迹插补,保证在轨迹大曲率处也能获得良好的轨迹精度,此外,还使用反长度函数取代了传统的泰勒展开法求取目标插补点参数,利用边界条件避免了逼近拟合计算中的截断误差,进步提高了轨迹精度。
2、速度平滑性高。使用了有限脉冲响应滤波器算法,生成满足S形加减速的位移规划,保证了各曲线分块间,各分块曲线内速度、加速度的连续性和平滑性,有效降低了插补中的速度波动,减少运动设备的振动,此外,正确配置输入信号的幅值参数和滤波器的时间长度参数,可保证轨迹规划满足最大速度约束,最大加速度约束和最大加加速度约束。
3、插补实时性高。使用了自适应的辛普森算法将曲线分块细分为若干段并计算曲线长度,细分操作根据设定的长度误差约束自适应执行,有效减小了计算冗余;再者,使用反长度函数取代了传统的一阶泰勒展开求取目标插补点参数,减少了复杂耗时的NURBS曲线导数计算;此外,使用数字滤波获得满足S形加减速的位移规划,相比于传统的基于分段5次多项式的速度规划方法,不需要额外了分支判断且极大地减少了计算量。
4、灵活性高。将曲线分割为若干块并使用有限脉冲响应滤波器对各曲线分块进行轨迹规划,只需调整滤波器的时间长度参数和输入信号的幅值参数,就可快速调节分割点处的进给速度和到达时间。
附图说明
图1为本发明所述的基于数字滤波的工业机器人NURBS曲线插补方法的流程图。;
图2为本发明实例中的机器人D-H图;
图3为本发明实例中的“∞”形NURBS曲线;
图4为∞形NURBS曲线的曲率图;
图5为本发明方法得到的速度曲线图;
图6为本发明方法得到的加速度曲线图;
图7为本发明方法得到的加加速度曲线图;
图8为本发明方法得到的弦高误差曲线图。
具体实施
下面结合附图和具体实施实例对本发明作进一步详细的描述。
如图1所示,本实施例提供一种基于数字滤波的工业机器人NURBS曲线插补方法,其包括预处理模块和实时插补模块两部分,具体如下:
预处理模块包括:读取NURBS曲线数据和运动参数;根据曲率变化情况、轨迹弦高误差约束和最大进给速度约束确定速度极低点的位置及进给速度;在速度极低点处将曲线分割成块;对各分块曲线,使用自适应辛普森算法将曲线细分为段并计算分区曲线的长度;为各分段曲线生产反长度函数;预估各分块曲线满足运动约束条件下的最短运行时间,即滤波器的最小时间长度。
实时插补模块包括:为配置滤波器时间长度参数使其满足相互条件和最短运行时间条件,并进一步根据分块曲线的长度、始末速度配置双阶跃输入信号的幅值参数;构建输入信号的离散表达式,再使用数字滤波处理输入信号,获得满足S形加减速及运动约束的位移规划;位移规划结果结合响应曲线分段的反长度函数计算得到目标插值点的参数;根据参数和读取NURBS曲线参数计算插值点坐标。
一种基于数字滤波的工业机器人NURBS曲线插补方法,包括以下步骤:
1、预处理阶段,包括以下步骤:
1.1、读取NURBS曲线数据和运动参数
获取的运动参数包括:最大弦高误差最大进给速度vt、最大进给加速度At、最大进给加加速度Jt、插补周期Ts;获取的NURBS曲线数据包括:阶数p、控制点{Pi}、节点向量U、控制点权重因子{wi}。则具有n+1个控制点的p次NURBS曲线可定义如下:
其中{Ni,p(u)}是定义在非周期且非均匀节点向量U上的p次B样条基函数,节点向量U是m+1个非递减数的集合:
可采用如下递推方式定义基函数:
控制点数n+1,节点数m+1和曲线阶数p+1满足关系m=n+p+1。
1.2、根据曲率变化情况和运动约束找到速度极低点
根据曲率变化情况和运动约束找到速度极低点,具体为:首先扫描整条曲线的曲率,若κ(Pi)>κ(Pi-1),κ(Pi)>(Pi+1),则Pi为曲率极大值点,并将其作为速度极低点候选点,然后根据弦高误差约束、最大进给速度约束和插补周期筛选候选点获得速度极低点,筛选条件如下:
1.3、分割曲线并设置分割点处进给速度
在速度极低点出将曲线分割为块,并根据曲率、弦高误差约束和插补周期设置速度极低点处的进给速度:
其中Ts为插补周期,κi为速度极低点曲率,为弦高误差约束,相邻速度极低点的速度是该分块曲线的初速度和末速度。本实例曲线中,各速度极低点的进给速度被设置为vA=vD=139.0mm/s,vB=vC=103.3mm/s。
1.4、计算各分块曲线长度
使用自适应辛普森算法计算各分块曲线的长度,具体为:
首先NURBS曲线在分块区间[a,b]的长度用积分表示为:
其中x′(u)、y′(u)、z′(u)分别为曲线在x轴、y轴、z轴方向上的导数;积分式用辛普森公式近似,辛普森公式如下:
其中,f(u1)、f((u1+u2)/2)、f(u2)分别为被积函数在积分区间左端点、中间点和右端点的值,则令u为NURBS曲线参数;利用上述辛普森公式及其复合形式求取NRUBS曲线长度,包括以下步骤:
(1)根据辛普森公式,得曲线区间[a,b]的近似长度为:
lab≈S(a,b)
其中S(a,b)表示将区间左右端点代入上述辛普森公式所获得的结果,即令u1=a,u2=b。
(2)根据复合辛普森积分公式原理,两相等子区间的辛普森积分结果之和近似于对完整区间的积分结果,由此可得:
其中S(a,(a+b)/2)和S((a+b)/2,b)为将两子区间左右端点代入前述辛普森公式所获结果。
(3)比较上述两次得到的近似结果,判断是否满足误差条件:
其中φ为允许的长度误差。若满足误差条件,则该区间的曲线长度为lab=S(a,(a+b)/2)+S((a+b)/2,b),否则,将区间[a,b]细分为[a,(a+b)/2]和[(a+b)/2,b],相应的分块曲线会被细分为段,然后分别对得到的两个曲线分段重复上述步骤(1)~步骤(3),直至所有子区间满足误差条件,此时区间[a,b]的曲线长度为所有子区间曲线长度之和,即分块曲线的长度为所有分段曲线长度之和。
在本实例中,各分块曲线的长度为:LOA=LDO=67.3mm,LAB=LCD=90.4mm,LBC=143.9mm。
1.5为曲线中的各分段曲线生成反长度函数
为各分块曲线内的各分段曲线生成反长度函数,以通过五次多项式拟合曲线长度l和曲线参数u的关系,设某块曲线内的第k段曲线的参数区间为[uk,uk+1],则其反长度函数可表示为:
u(l)=c0+c1(l-lk)+c2(l-lk)2+c3(l-lk)3+c4(l-lk)4+c5(1-lk)5
式中,c0~c5为多项式系数,lk为曲线上的点C(uk)相对于该分段所在曲线块起点的曲线长度,点C(uk)也是该曲线分段的起点,其中多项式系数通过下列边界等式联立计算得到:
其中uk和uk+1是参数区间起点和末点,而uk+0.5是参数区间中点,即uk+0.5=(uk+uk+1/2,lk+0.5和lk+1分别是曲线上的点C(uk+0.5)和C(uk+1)相对于该分段所在曲线块起点的曲线长度,l′(uk)、l′(uk+1)、l′(uk+0.5)分别是参数区间起点、末点和中点处曲线长度关于曲线参数的导数,其表达式为x′(u)、y′(u)、z′(u)分别为曲线在x轴、y轴、z轴方向上的导数。
1.6、计算各滤波器的最小时间长度参数
根据运动约束和各分块曲线的特征参数设置三个滤波器的时间长度参数和双阶跃输入信号参数,其中运动约束包括弦高误差约束、最大进给速度约束、最大加速度约束、最大加加速度约束,分块曲线的特征参数包括始末速度和曲线长度,配置过程具体如下:
为了使用有限脉冲响应滤波器实现S形加减速规划,三个滤波器的时间长度参数需满足如下相互条件:
其次,S形加减速位移规划与有限脉冲响应滤波器的时间长度参数T1、T2、T3有如下关系:
T2=(V-v1)/A
T3=A/J
其中,v1=min(vo,vs),v2=max(vo,vs),vo,vs分别为分块曲线的初速度和末速度,L为轨迹长度,V、A、J分别为速度最大值、加速度绝对值最大值、加加速度绝对值最大值;
为了实现满足运动约束的最短运动时间规划,令V=vt,A=At,J=Jt,其中vt,At,Jt分别为最大进给速度约束、最大加速度约束、最大加加速度约束,将其代入上式并得到各滤波器的最短时间长度但结果可能不满足时间长度的相互条件,需分情况进行校正:
使用修正的最大速度V′,最大加速度绝对值A′重新计算滤波器的时间长度参数,并重新验证是否满足相互条件,若不满足,则继续根据不满足条件继续修正,直至满足;最终得到的结果即为满足S形加减速的最短运行时间规划,实际配置滤波器的时间长度参数时需大于该结果并满足时间长度的相互条件,即:
2.1、配置滤波器时间长度参数
2.2、配置双阶跃输入信号参数
根据期望轨迹的始末速度和分块曲线长度,结合滤波器的时间长度参数来设置输入双阶跃输入信号的幅值参数,具体如下:
在正确配置滤波器时间长度参数T1、T2、T3的前提下,双阶跃输入信号的幅值参数h1、h2根据目标分块初速度vo、末速度vs和曲线长度L进行配置,即:
2.3、构建离散输入信号并使用串联的三个滤波器对其进行数字滤波
对于每个曲线分块,使用串联的三个有限脉冲响应滤波器对双阶跃输入信号进行数字滤波,并将结果叠加斜坡信号以获得满足S形加减速和始末速度约束的位移规划,具体如下:
首先,有限脉冲响应滤波器的传递函数如下:
r(t)=h1ε(t)+h2ε(t-T1)
其中h1,h2为常数,t为时间,ε(t)是阶跃函数:
2.4、计算插值点坐标
根据有限脉冲响应滤波器输出的位移规划,结合反长度函数快速计算插补点,包括以下步骤:
首先位移规划结果为各插补周期时刻的期望插补点相对于所在曲线分块起点的曲线长度,为了获得期望插补点的曲线参数,应先定位其所在曲线分段,当位移规划结果li对应的插补点位在第k个曲线分段时,其满足如下条件:
lk≤li<lk+(Δl)k
其中(Δl)k为第k个曲线分段的曲线长度,在使用自适应辛普森算法计算分块曲线长度时已求出,lk为曲线分段起点相对于曲线分块起点的曲线长度,可通过累加其前部各曲线分段的曲线长度获得,即:
其中(Δl)j为第j个曲线分段的曲线长度,接着调用该分段区间的反长度函数计算插补点的曲线参数u,即:
u(li)=c0+c1(li-lk)+c2(li-lk)2+c3(li-lk)3+c4(li-lk)4+c5(li-lk)5
所得结果结合NURBS曲线的参数表达式C(u)即可获得目标插补点的位置坐标。所得轨迹的速度、加速度、加加速度和弦高误差如图5、图6、图7、图8所示。
将本发明方法在PC上进行仿真实验,所用的编程软件为Visual Studio 2015,使用C#语言编写程序,测试环境如下:
操作系统:windows10
CPU:Intel(R)Core(TM)i5-5200U
主频:2.20GHz
内存:8G
机器人:SCARA(SSP400-150-3)
建立所使用SCARA机器人的D-H坐标系如图2所示,本实验以空间∞形的NURBS曲线为例,其形状如图3所示,其参数如下:
阶数p:3
控制点{Pi}:(120,300,70),(180,360,80),(180,240,60),(120,300,70),(60,360,80),(60,240,60),(120,300,70)
权重因子{wi}:[1,10,10,1,10,10,1]
节点向量U:[0,0,0,0,0.354,0.5,0.646,1,1,1,1]
设定曲线的运动参数如下:
最大进给速度vt:200mm/s
最大加速度At:1500mm/s2
最大加加速度Jt:30000mm/s3
插补周期Ts:1ms。
以上所述,仅为本发明创造较佳的具体实施方式,但本发明创造的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明创造披露的技术范围内,根据本发明创造的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明创造的保护范围之内。
Claims (10)
1.一种基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,包括如下步骤:
S1、获取NURBS曲线数据和运动约束;
S2、根据曲率变化情况、轨迹弦高误差约束和最大进给速度约束确定速度极低点的位置及进给速度,然后在该点处将曲线分割成块;
S3、利用自适应辛普森算法计算各块曲线的长度,计算过程中各分块曲线将被细分为若干段并生成反长度函数;
S4根据运动约束及各分块曲线的的特征参数,计算各滤波器的最短时间长度,配置滤波器和双阶跃的输入信号参数,通过数字滤波得到位移规划;
S5、基于位移规划结果,结合相应段的反长度函数快速计算得到插值点参数,进而求得期望点的坐标。
3.根据权利要求1所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,根据曲率变化情况和运动约束找到速度极低点,具体为:首先扫描整条曲线的曲率,若κ(Pi)>κ(Pi-1),κ(Pi)>(Pi+1),则控制点Pi为曲率极大值点,并将其作为速度极低点候选点,然后根据弦高误差约束、最大进给速度约束和插补周期筛选候选点筛选速度极低点。
5.根据权利要求1所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,利用自适应辛普森算法计算各分块曲线的长度,包括以下步骤:
(1)使用积分表示NURBS曲线在分块区间[a,b]的长度,根据辛普森公式,得曲线区间[a,b]的近似长度为;
(2)根据复合辛普森积分公式原理,两相等子区间的辛普森积分结果之和近似于对完整区间的积分结果;
(3)比较步骤(1)、步骤(2)得到的近似结果,判断是否满足误差条件,若满足误差条件,则该区间的曲线长度为步骤(2)得到的结果,否则,将区间[a,b]细分,相应的分块曲线会被细分为段,然后分别对得到的两个曲线分段重复上述步骤(1)~步骤(3),直至所有子区间满足误差条件,此时区间[a,b]的曲线长度为所有子区间曲线长度之和,即分块曲线的长度为所有分段曲线长度之和。
6.根据权利要求1所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,五次多项式拟合曲线长度l和曲线参数u的关系为各分块曲线内的各分段曲线生成反长度函数。
7.根据权利要求1所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,对于每个曲线分块,使用串联的三个有限脉冲响应滤波器对双阶跃输入信号进行数字滤波,并将结果叠加斜坡信号以获得满足S形加减速和始末速度约束的位移规划。
8.根据权利要求7所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,根据运动约束和各分块曲线的特征参数设置三个滤波器的时间长度参数和双阶跃输入信号参数,其中运动约束包括弦高误差约束、最大进给速度约束、最大加速度约束、最大加加速度约束,分块曲线的特征参数包括始末速度和曲线长度。
9.根据权利要求8所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,双阶跃的输入信号的幅值参数h1、h2是根据目标分块初速度vo、末速度vs和曲线长度L进行配置。
10.根据权利要求1~9任一项所述的基于数字滤波的工业机器人NURBS曲线插补方法,其特征在于,步骤S5中,位移规划结果为各插补周期时刻的期望插补点相对于所在曲线分块起点的曲线长度,为了获得期望插补点的曲线参数,应先定位其所在曲线分段,当位移规划结果li对应的插补点位在第k个曲线分段时,其满足如下条件:
lk≤li<lk+(Δl)k
其中(Δl)k为第k个曲线分段的曲线长度,在使用自适应辛普森算法计算分块曲线长度时已求出,lk为曲线分段起点相对于曲线分块起点的曲线长度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111355818.1A CN114237161B (zh) | 2021-11-16 | 2021-11-16 | 一种基于数字滤波的工业机器人nurbs曲线插补方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111355818.1A CN114237161B (zh) | 2021-11-16 | 2021-11-16 | 一种基于数字滤波的工业机器人nurbs曲线插补方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114237161A true CN114237161A (zh) | 2022-03-25 |
CN114237161B CN114237161B (zh) | 2023-07-21 |
Family
ID=80749566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111355818.1A Active CN114237161B (zh) | 2021-11-16 | 2021-11-16 | 一种基于数字滤波的工业机器人nurbs曲线插补方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114237161B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114779721A (zh) * | 2022-06-20 | 2022-07-22 | 济南邦德激光股份有限公司 | 基于位置点进行速度滤波的方法、设备和存储介质 |
CN116009473A (zh) * | 2022-10-25 | 2023-04-25 | 华中科技大学 | 基于非对称fir滤波器的刀具位姿轨迹插补与光顺方法 |
CN116079714A (zh) * | 2022-12-02 | 2023-05-09 | 盐城工学院 | 一种基于b样条的六轴机械臂轨迹规划方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6046564A (en) * | 1997-12-31 | 2000-04-04 | Samsung Electronics Co., Ltd. | Path planning apparatus and method for robots |
CN101221655A (zh) * | 2007-12-17 | 2008-07-16 | 华为技术有限公司 | 一种对数字图像进行插值的方法及装置 |
CN102722141A (zh) * | 2012-06-28 | 2012-10-10 | 华南理工大学 | 一种基于pc-fpga的nurbs曲线实时插补方法 |
CN106814694A (zh) * | 2017-02-14 | 2017-06-09 | 华南理工大学 | 一种高速高精度的参数曲线前瞻插补算法 |
CN107817764A (zh) * | 2017-10-23 | 2018-03-20 | 山东大学 | 一种基于s曲线加减速算法的nurbs曲线双向自适应插补算法 |
CN112379638A (zh) * | 2020-10-22 | 2021-02-19 | 哈尔滨工程大学 | 一种基于有限脉冲响应滤波的样条曲线插补方法 |
CN112486101A (zh) * | 2020-12-14 | 2021-03-12 | 大连大学 | Nurbs曲线自适应前瞻插补方法 |
-
2021
- 2021-11-16 CN CN202111355818.1A patent/CN114237161B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6046564A (en) * | 1997-12-31 | 2000-04-04 | Samsung Electronics Co., Ltd. | Path planning apparatus and method for robots |
CN101221655A (zh) * | 2007-12-17 | 2008-07-16 | 华为技术有限公司 | 一种对数字图像进行插值的方法及装置 |
CN102722141A (zh) * | 2012-06-28 | 2012-10-10 | 华南理工大学 | 一种基于pc-fpga的nurbs曲线实时插补方法 |
CN106814694A (zh) * | 2017-02-14 | 2017-06-09 | 华南理工大学 | 一种高速高精度的参数曲线前瞻插补算法 |
CN107817764A (zh) * | 2017-10-23 | 2018-03-20 | 山东大学 | 一种基于s曲线加减速算法的nurbs曲线双向自适应插补算法 |
CN112379638A (zh) * | 2020-10-22 | 2021-02-19 | 哈尔滨工程大学 | 一种基于有限脉冲响应滤波的样条曲线插补方法 |
CN112486101A (zh) * | 2020-12-14 | 2021-03-12 | 大连大学 | Nurbs曲线自适应前瞻插补方法 |
Non-Patent Citations (2)
Title |
---|
SHI BU-HAI: "NURBS Piecewise Interpolation Algorithm Based on Discrete S-Type Velocity Planning" * |
XIANGLING SHI: "Multi-objective Optimal Trajectory Planning of Manipulators Based on Quintic NURBS" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114779721A (zh) * | 2022-06-20 | 2022-07-22 | 济南邦德激光股份有限公司 | 基于位置点进行速度滤波的方法、设备和存储介质 |
CN114779721B (zh) * | 2022-06-20 | 2022-09-02 | 济南邦德激光股份有限公司 | 基于位置点进行速度滤波的方法、设备和存储介质 |
CN116009473A (zh) * | 2022-10-25 | 2023-04-25 | 华中科技大学 | 基于非对称fir滤波器的刀具位姿轨迹插补与光顺方法 |
CN116009473B (zh) * | 2022-10-25 | 2024-02-06 | 华中科技大学 | 基于非对称fir滤波器的刀具位姿轨迹插补与光顺方法 |
CN116079714A (zh) * | 2022-12-02 | 2023-05-09 | 盐城工学院 | 一种基于b样条的六轴机械臂轨迹规划方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114237161B (zh) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114237161A (zh) | 一种基于数字滤波的工业机器人nurbs曲线插补方法 | |
CN109571473B (zh) | 一种误差可控的小线段轨迹光顺方法 | |
CN106393106B (zh) | 参数自适应密化的机器人nurbs曲线运动插补方法 | |
WO2016127826A1 (zh) | 曲线速度规划方法、装置及其数控加工路径数据处理方法 | |
Wang et al. | Real-time NURBS interpolator: application to short linear segments | |
Feng et al. | Design of a real-time adaptive NURBS interpolator with axis acceleration limit | |
CN106814694A (zh) | 一种高速高精度的参数曲线前瞻插补算法 | |
CN113276130B (zh) | 一种基于点云切片的自由曲面喷涂路径规划方法及系统 | |
Park et al. | Development of a real-time trajectory generator for NURBS interpolation based on the two-stage interpolation method | |
CN112486101A (zh) | Nurbs曲线自适应前瞻插补方法 | |
CN114859815A (zh) | 自由曲面三轴球头刀等逼近误差精加工刀轨生成方法 | |
CN113848809A (zh) | 基于数值滤波的轨迹规划方法 | |
CN109991921B (zh) | 一种平顺b样条轨迹直接生成方法 | |
CN116627086A (zh) | 一种空间连续小线段圆弧拟合方法 | |
Zhao et al. | A novel trajectory interpolation algorithm for wedm-unit generalized arc length increment method | |
Jahanpour et al. | High-speed contouring control with NURBS-based C 2 PH spline curves | |
Jiang et al. | A real-time feedrate planning method and efficient interpolator with minimal feedrate fluctuation for parametric toolpath | |
Tang et al. | Real-time corner smoothing based on FIR filtering for CNC machine tools | |
CN108628255B (zh) | 一种指令点纠正平滑处理方法 | |
Li et al. | Trajectory planning of high precision collaborative robots | |
CN115430926A (zh) | 一种激光切割的拐角处理方法、装置、设备及存储介质 | |
Haas | Set point optimisation for machine tools | |
CN112698623B (zh) | 一种用于多轴轮廓应用场合中的多轴轮廓控制方法 | |
JP2002366208A (ja) | 工作機械の自由曲線補間方法及び数値制御装置 | |
CN118288121B (zh) | 一种非球面光学元件的加工方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |