工业机器人的实时轨迹插补算法(精)
- 格式:doc
- 大小:37.50 KB
- 文档页数:10
工业机器人的轨迹规划与运动控制算法研究工业机器人在现代制造业中发挥着重要的作用,它能够自动执行复杂的任务,提高生产效率和质量。
轨迹规划和运动控制算法是实现机器人自动化的关键技术,本文将对此进行研究和探讨。
一、轨迹规划轨迹规划是指确定机器人从起始位置到目标位置的路径,使得机器人能够在规定的约束条件下安全、高效地完成任务。
常见的轨迹规划方法包括规划点插值法、直线插值法、样条插值法等。
1. 规划点插值法规划点插值法是一种简单且常用的轨迹规划方法。
它将机器人的路径划分为若干离散的规划点,然后通过插值算法确定规划点之间的路径。
这种方法计算简便,但可能导致机器人移动时出现抖动或曲线过于锐利的问题。
2. 直线插值法直线插值法是指将机器人的路径划分为若干直线段,然后通过线性插值得到每个直线段上的点。
这种方法的优点是计算简单,路径平滑,适用于一些简单的轨迹规划问题。
3. 样条插值法样条插值法是一种基于曲线的轨迹规划方法,它能够生成更加平滑的路径。
通过使用样条曲线进行插值,可以得到平滑的机器人轨迹,提高机器人的运动控制性能。
样条插值法相对于前两种方法来说计算更加复杂,但更适用于一些复杂的轨迹规划问题。
二、运动控制算法运动控制算法是指机器人根据规划得到的路径执行运动时的控制方法。
常见的运动控制算法包括PID控制、模糊控制、自适应控制等。
1. PID控制PID控制是一种常用的控制方法,它通过调节比例、积分和微分三个参数来实现对机器人的控制。
PID控制具有结构简单、调节灵活等优点,适用于对机器人位置和速度进行控制。
2. 模糊控制模糊控制是一种基于模糊逻辑的控制方法,它可以处理非线性和模糊的控制问题。
模糊控制通过将输入和输出变量模糊化,并使用一系列的模糊规则进行控制决策,实现对机器人的运动控制。
3. 自适应控制自适应控制是一种能够根据外部环境变化自动调整控制参数的控制方法。
它通过建立机器人与环境的数学模型,利用自适应算法实时调整控制器参数,以适应不同的工作条件。
机器人运动规划中的轨迹生成算法机器人运动规划是指描述和控制机器人在给定环境中实现特定任务的过程。
其中,轨迹生成算法是机器人运动规划中的关键环节。
本文将介绍几种常用的机器人轨迹生成算法,包括直线轨迹生成算法、插补轨迹生成算法和优化轨迹生成算法。
一、直线轨迹生成算法直线轨迹生成算法是最简单和基础的轨迹生成算法。
它通过给定机器人的起始位置和目标位置,计算机器人在二维平面上的直线路径。
该算法可以通过简单的公式求解,即直线方程,将机器人从起始点移动到目标点。
首先,根据起始点和目标点的坐标计算直线的斜率和截距。
然后,根据斜率和截距计算机器人在每个时间步骤上的位置。
最后,将计算得到的位置点连接起来,形成直线轨迹。
直线轨迹生成算法的优点是简单直观,计算效率高。
然而,该算法无法应对复杂的环境和机器人动力学模型,因此在实际应用中有着较大的局限性。
二、插补轨迹生成算法插补轨迹生成算法是一种基于离散路径点的轨迹生成算法。
它通过在起始位置和目标位置之间插补一系列路径点,使机器人在这些路径点上运动,并最终到达目标位置。
常用的插补轨迹生成算法包括线性插值算法和样条插值算法。
线性插值算法将起始点和目标点之间的轨迹划分为多个小段,每个小段的位置可以通过线性方程求解。
样条插值算法则通过引入额外的控制点,使得轨迹更加光滑。
插补轨迹生成算法的优点是适用于复杂环境和机器人动力学模型。
它可以在运动过程中改变速度和加速度,从而实现更加灵活的路径规划。
不过,插补轨迹生成算法的计算量较大,需要更多的计算资源。
三、优化轨迹生成算法优化轨迹生成算法通过优化目标函数来生成最优的机器人轨迹。
它将机器人运动规划问题转化为优化问题,通过调整机器人轨迹上的参数,使得目标函数达到最小或最大值。
常见的优化轨迹生成算法包括遗传算法、粒子群算法和模拟退火算法。
这些算法主要通过搜索机器人轨迹参数的空间来寻找最优解。
遗传算法模拟生物进化过程,粒子群算法模拟鸟群觅食行为,模拟退火算法则模拟物体在不同温度下的热力学过程。
《工业机器人轨迹规划算法的研究与实现》一、引言随着工业自动化技术的飞速发展,工业机器人已成为现代制造业不可或缺的重要工具。
轨迹规划作为机器人运动控制的核心技术之一,对于提高机器人的工作效率、精度和灵活性具有重要意义。
本文旨在研究工业机器人轨迹规划算法,探讨其实现方法,并分析其在工业领域的应用前景。
二、工业机器人轨迹规划算法概述工业机器人轨迹规划是指根据任务需求,为机器人规划出一条从起始点到目标点的最优路径。
这一过程涉及到机器人的运动学、动力学以及环境因素等多方面因素。
常见的轨迹规划算法包括插补法、优化法、学习法等。
1. 插补法插补法是一种基于数学模型的轨迹规划方法,通过在关键点之间插入适当的中间点,形成平滑的轨迹。
插补法具有计算简单、实时性好的特点,适用于对精度要求不高的场景。
2. 优化法优化法是一种以优化目标函数为手段的轨迹规划方法。
它通过考虑机器人的运动学、动力学约束以及任务需求,建立优化模型,并采用相应的优化算法求解。
优化法可以获得更优的轨迹,提高机器人的工作效率和精度。
3. 学习法学习法是一种基于机器学习技术的轨迹规划方法。
它通过学习历史数据和经验知识,自主生成适应新任务的轨迹。
学习法具有较高的自适应性和智能性,适用于复杂多变的工业环境。
三、工业机器人轨迹规划算法的实现实现工业机器人轨迹规划算法需要综合考虑机器人的运动学模型、动力学模型以及任务需求等因素。
下面以优化法为例,介绍轨迹规划算法的实现过程。
1. 建立优化模型根据任务需求和机器人的运动学、动力学约束,建立优化模型。
优化模型通常包括目标函数和约束条件两部分。
目标函数用于描述轨迹的优劣,如时间最短、能耗最低等;约束条件用于描述机器人的运动学、动力学约束以及安全要求等。
2. 选择优化算法根据优化模型的特点和需求,选择合适的优化算法进行求解。
常用的优化算法包括梯度下降法、遗传算法、模拟退火算法等。
在选择优化算法时,需要考虑算法的收敛速度、求解精度以及计算复杂度等因素。
工业机器人行走轨迹优化算法研究随着社会的发展,机器人在生产领域的应用越来越广泛。
在工业领域中,机器人在生产线上协同作业,提高了生产效率,缩短了生产周期。
然而,工业机器人的行走轨迹优化依然是生产线上的一个重要问题。
通过行走轨迹的优化,可以最大程度地提高机器人的工作效率,降低能耗和成本。
因此,本文着重探讨工业机器人行走轨迹优化算法研究的问题。
一、背景工业机器人行走轨迹优化是一个非常重要的问题,因为机器人在生产线上的移动速度和路径会直接影响工作效率和生产成本。
沿着最短路径行走可以提高生产效率和降低成本。
工业机器人在执行任务的过程中会出现转弯、停顿等不必要的操作,这对于生产效率和设备的寿命都会造成影响。
因此,有必要研究工业机器人的行走轨迹优化算法,以提高机器人的工作效率和生产效率。
二、研究内容工业机器人的行走轨迹优化算法主要通过优化机器人的行走路径和操作,以达到提高生产效率和降低成本的目的。
1. 路径规划路径规划是优化工业机器人行走轨迹的主要方法之一。
常用的路径规划算法有遗传算法、粒子群算法、模拟退火算法等。
这些算法通过计算机模拟人类智慧的思维方式,来求解机器人的最优行走路径。
2. 操作优化除了路径规划外,还可以通过优化操作来提高机器人的工作效率。
例如,对于重复性任务,可以通过编程实现自动化,减少人为干预的时间。
同时,还可以合理调整机器人的速度、加速度和转弯半径等参数,避免机器人重复做出不必要的操作,优化机器人的行走轨迹。
三、研究意义工业机器人是生产线上不可或缺的一部分,其运动轨迹的优化对于生产线的效率和生产成本有着极大的影响。
本研究将有助于提高工业机器人的工作效率和生产效率,也将为未来机器人技术的发展提供重要的基础。
通过对机器人轨迹的优化,还可以大大减少机器人对于生产环境的干扰,降低机器人使用成本。
四、总结工业机器人行走轨迹优化算法的研究是工业智能化发展的重要组成部分,其重要性不言而喻。
通过对机器人路径规划和操作优化的研究,可以提高机器人的工作效率和生产效率,降低成本。
工业机器人运动规划算法的使用方法与运动轨迹准确度分析工业机器人运动规划是指通过算法的设计与实现,使机器人能够在工作空间内高效、准确地完成指定的任务。
在工业生产中,机器人的运动规划算法的应用非常重要,它直接影响着机器人的运动轨迹准确度和工作效率。
本文将介绍工业机器人运动规划算法的使用方法,并对其运动轨迹准确度进行分析。
首先,工业机器人运动规划算法的使用方法可以分为以下几个步骤:1. 建立工作空间模型:在进行运动规划之前,首先需要建立机器人的工作空间模型。
这包括对机器人的结构和约束条件进行建模,并设置工作空间的边界和障碍物等。
2. 确定运动目标:根据实际需求,确定机器人的运动目标。
这可以是一个位姿、路径或轨迹。
3. 选择运动规划算法:根据机器人的结构和工作环境的要求,选择适合的运动规划算法。
常见的算法包括关节空间规划算法、任务空间规划算法和混合规划算法等。
4. 运动规划:根据选择的算法,对机器人进行运动规划。
这包括对机器人的路径进行生成、优化和插补等。
5. 生成机器人控制指令:根据运动规划的结果,生成机器人的控制指令。
这些指令可以是关节角度或位姿的控制命令,以实现机器人的运动。
以上是工业机器人运动规划算法的使用方法的基本步骤。
不同的算法和应用场景可能会有所不同,具体的使用方法需根据实际情况进行调整。
其次,对于工业机器人运动规划算法的运动轨迹准确度,可以通过以下几个方面进行分析:1. 算法精度:不同的运动规划算法具有不同的精度。
一般来说,算法精度越高,生成的轨迹也越准确。
因此,在选择算法时应考虑算法的精度。
2. 器件精度:除了算法的影响外,机器人自身的精度也会对运动轨迹的准确度产生影响。
例如,关节的编码器精度、传感器的测量精度等。
因此,在实际运用中,需要对机器人的器件精度进行准确测量并考虑其影响。
3. 环境干扰:在生产环境中,机器人的运动轨迹可能会受到环境干扰的影响,例如重力、摩擦力、气压等。
这些干扰会导致机器人的轨迹偏离预期值。
工业机器人的精确轨迹跟踪控制策略在现代工业生产中,工业机器人的应用越来越广泛,从汽车制造到电子设备组装,从物流搬运到食品加工,几乎无处不在。
而要确保工业机器人能够高效、准确地完成各种任务,精确的轨迹跟踪控制策略就显得至关重要。
工业机器人的轨迹跟踪控制,简单来说,就是让机器人的实际运动轨迹尽可能地接近预设的理想轨迹。
这听起来似乎很简单,但实际上涉及到众多复杂的因素和技术难题。
首先,我们来了解一下影响工业机器人轨迹跟踪精度的因素。
机械结构的误差是其中之一。
机器人的各个关节、连杆等部件在制造和装配过程中难免会存在尺寸偏差和安装误差,这些都会影响机器人的运动精度。
此外,驱动系统的性能也会对轨迹跟踪产生影响。
例如,电机的扭矩波动、传动系统的间隙和摩擦等,都可能导致机器人的运动不稳定。
同时,外界环境的干扰也是不可忽视的因素。
比如,温度变化可能会引起机器人部件的热膨胀或收缩,从而改变其几何结构和运动特性;工作现场的振动也可能影响机器人的运动精度。
为了实现工业机器人的精确轨迹跟踪,控制策略主要可以分为两大类:基于模型的控制和无模型控制。
基于模型的控制方法中,最常见的是 PID 控制。
PID 控制器通过比例、积分和微分三个环节的作用,对误差进行调节。
其优点是简单易懂、易于实现,在很多工业应用中都取得了不错的效果。
但是,PID控制对于复杂的非线性系统,如工业机器人,往往难以达到很高的控制精度。
为了提高控制精度,人们又提出了基于模型预测控制(MPC)的方法。
这种方法通过建立机器人的精确数学模型,预测未来一段时间内的系统状态,并根据优化目标计算出最优的控制输入。
然而,模型预测控制需要较高的计算资源,并且对于模型的准确性要求很高。
除了上述方法,自适应控制也是一种基于模型的控制策略。
自适应控制能够根据系统的运行情况自动调整控制器的参数,以适应系统的变化。
例如,当机器人的负载发生变化时,自适应控制器可以实时调整控制参数,保证控制精度。
工业机器人中的路径规划算法使用教程工业机器人是现代工业生产中的重要设备,其高速、高精度的特点使其成为生产线上的关键角色。
机器人的运动轨迹规划是机器人控制领域中的核心问题之一,合理的路径规划可以提高机器人的运动效率和精确度。
本文将介绍工业机器人中常用的路径规划算法,并提供使用教程,帮助读者更好地掌握这些算法。
1. 机器人运动的基本概念在介绍路径规划算法之前,首先需要了解机器人运动的基本概念。
在工业机器人中,通常使用笛卡尔坐标系描述机器人的位置和姿态。
位置由三个坐标表示,分别是机器人在水平面上的位置(X、Y坐标)和垂直方向上的位置(Z坐标)。
姿态由三个角度表示,分别是机器人绕X轴、Y轴和Z轴的旋转角度。
机器人通过控制关节的运动来实现位置和姿态的改变,关节角度是描述机器人姿态变化的重要参数。
2. 路径规划算法简介路径规划算法根据给定的起始点和目标点,在机器人工作空间中找到一条合适的路径。
常见的路径规划算法包括:直线运动规划、圆弧运动规划、样条曲线插补等。
- 直线运动规划:直线运动规划是最简单的路径规划方法,它将起始点和目标点之间的路径划分为若干个小线段,并通过控制机器人的速度和加速度,在每个小线段上做匀速运动。
直线运动规划适用于机器人在直线路径上的运动,但在复杂环境中可能存在碰撞风险。
- 圆弧运动规划:圆弧运动规划是通过定义一条圆弧路径来实现机器人的运动。
其基本原理是通过计算起始点、目标点和圆弧半径,确定圆弧曲线的参数方程,再结合机器人的速度和加速度限制,实现机器人的平滑运动。
- 样条曲线插补:样条曲线插补方法通过拟合多个散点来生成一条平滑的路径。
它可以实现复杂的路径规划,例如S曲线或贝塞尔曲线。
样条曲线插补方法通常需要使用插值算法进行计算,以满足机器人的运动要求。
3. 使用教程:直线运动规划实例下面将通过一个直线运动规划的实例来介绍路径规划算法的使用。
假设机器人需要从起始点(X1, Y1, Z1)移动到目标点(X2, Y2, Z2)。
分析工业机器人实时高精度路径跟踪与轨迹规划针对工业机器人实时高精度路径跟踪与轨迹规划,从原理、要点、超调性与振捣性、实践应用这4个方面展开分析,从而了解到其重要作用,以期能够为我国工业发展提供动力。
标签:工业机器人;高精度;路径跟踪;轨迹规划现如今,科学、信息技术得到广泛应用,工业机器人也开始得到广泛运用,为工业行业改革以及发展提供了诸多支持。
工业机器人作为现代化工业不可缺少的一部分,有利于提高工业生产效率,对于其实现企业长期发展有极为重要的意义。
工业机器人非常关键的两个部位是手部路径跟踪、关节轨迹规划,在工业领域实现应用,能够在机器人路径中增加节点数量,并且提高节点路径分段处理效率,从而使工业机器人手部跟踪路径以及路径节点更加精准。
1 高精度路径跟踪与轨迹规划基本原理将O0-X0Y0Z0假设为工业机器人坐标,按照工业机器人手部路径将起点设置为P0,终点设置为Pn,期间选择节点数量为(n+1),路径划分为n段。
关节空间内的其中1个关节j(j=1~N,N代表工业机器人自由度),由起点开始直至终点的轨迹划分为n段,这一段轨迹以n个方程代表。
在邻近的2个节点中间的手部路径中,再选择2个附加节点,这两个节点处于时间点t=ti-1+hi/3以及t=ti-1+2hi/3,这两个时间点分别对应的是时间以及节点之间的时间间隔。
由此一来,起点至终点的节点数量也会增加为(3n+1)个。
正因为如此,路径跟踪精度也得以提升[1]。
再如某工业机器人在时间t的影响下发生曲线位移。
取点q0、qi-1、qi、qn,代表节点p0、pi-1、pi、pn,此外,取点βi作为附加节点Bi的关节坐标,γi作为Ci的关节坐标。
假设to与tn为对应起点与终点的时间,如此一来区间[t0,tn]被划分为n段,其中1个子区间[ti-1,ti]节点数量为4个,也就是起点、终点和2个附加节点。
由此可以确定两个附加节点的对应时间,具体如下:,其中hi=ti-ti-1。
工业机器人中的运动规划算法及其实际应用案例1.引言工业机器人作为现代制造业中的重要装备和生产工具,在生产线上发挥着关键的作用。
机器人的运动控制是机器人技术中的重要组成部分之一,其中运动规划算法的优化和实际应用案例的研究对机器人的精度、效率和安全性具有重要意义。
本文将介绍工业机器人中常用的运动规划算法,并对其实际应用进行分析和讨论。
2.工业机器人的基本运动模式工业机器人的基本运动模式包括点到点运动、直线运动和圆弧运动。
在实际应用中,机器人需要根据不同的任务需求进行合理的运动规划,确保机器人能够按照要求完成任务。
3.运动规划算法的分类(1)路径规划算法:路径规划是指确定机器人从初始位置到目标位置的路径。
常用的路径规划算法有典型的A*算法、Dijkstra算法和朗格朗日乘数法等。
(2)轨迹规划算法:轨迹规划是指确定机器人在路径上的运动轨迹,即机器人在路径中的运动状态的变化。
常用的轨迹规划算法有插补运动算法、Bezier曲线算法和样条曲线算法等。
(3)碰撞检测算法:碰撞检测是指机器人在运动过程中避免与其他物体发生碰撞。
常用的碰撞检测算法有AABB树算法、包围球算法和凸包算法等。
4.工业机器人中的运动规划算法(1)路径规划算法路径规划算法主要应用于工业机器人需要从一个位置移动到另一个位置,根据路径规划算法生成的路径可以实现机器人的平滑过渡和准确移动。
其中,A*算法是一种常用的启发式搜索算法,通过将搜索问题分解为多个子问题来寻找最优路径。
Dijkstra算法则利用图论中的最短路径算法,可以得到机器人最短路径上的所有节点。
(2)轨迹规划算法轨迹规划算法主要应用于对机器人在路径上的运动进行规划和控制。
插补运动算法是一种常用的轨迹规划算法,可以根据机器人的速度、加速度和位移等参数生成平滑的运动轨迹。
Bezier曲线算法是一种基于参数曲线的轨迹规划算法,可以在满足规划要求的同时实现较高的自由度。
样条曲线算法则通过将曲线分段进行规划,实现机器人的连续运动。
《工业机器人轨迹规划算法的研究与实现》一、引言随着工业自动化技术的快速发展,工业机器人已成为现代制造业不可或缺的一部分。
轨迹规划作为机器人运动控制的核心技术之一,对于提高机器人的工作效率、精度和稳定性具有重要意义。
本文将针对工业机器人轨迹规划算法进行研究与实现,旨在为工业机器人的应用提供理论支持和实用方法。
二、工业机器人轨迹规划概述工业机器人轨迹规划是指根据机器人的工作任务和要求,制定出一条从起始位置到目标位置的合理路径。
该路径应满足机器人的运动学和动力学约束,同时尽可能提高工作效率和精度。
轨迹规划算法是机器人运动控制的核心,其优劣直接影响到机器人的性能表现。
三、常见的工业机器人轨迹规划算法1. 直线插补法:该方法将目标位置与起始位置之间的路径近似为直线,通过计算直线上的离散点来规划机器人的运动轨迹。
该方法简单易行,但精度较低。
2. 圆弧插补法:该方法利用圆弧来逼近目标位置与起始位置之间的路径,提高了轨迹的平滑性和精度。
但该方法对机器人的运动学约束考虑不足,可能导致实际运动中产生较大的误差。
3. 优化算法:包括遗传算法、蚁群算法、粒子群算法等,通过寻找最优解来规划机器人的运动轨迹。
这些算法可以充分考虑机器人的运动学和动力学约束,得到较为理想的轨迹。
但计算量大,实现难度较高。
四、本研究采用的轨迹规划算法本研究采用一种基于遗传算法的轨迹规划方法。
该方法首先建立机器人的运动学模型和动力学模型,然后根据工作任务和要求,设定合理的评价函数。
通过遗传算法在解空间中搜索最优解,得到机器人的最佳运动轨迹。
该方法可以充分考虑机器人的运动学和动力学约束,提高轨迹的精度和平滑性。
五、算法实现1. 建立机器人运动学模型和动力学模型:根据机器人的结构和工作环境,建立精确的运动学模型和动力学模型。
2. 设定评价函数:根据工作任务和要求,设定合理的评价函数,包括路径长度、运动时间、能量消耗等指标。
3. 遗传算法搜索最优解:采用遗传算法在解空间中搜索最优解,得到机器人的最佳运动轨迹。
机器人的运动轨迹插值方法研究与分析赵川;张鹏超;潘晓磊;吕海立【摘要】为了实现工业机器人手臂末端执行件在作业过程中的运动轨迹平稳、光滑且连续,同时关节运动轨迹中的速度、加速度变化光滑连续,且变化过程中不出现突变情况.基于NACHI的MZ07六自由度工业机器人,对其进行逆运动求解,在关节空间中,对过路径点的三次多项式、高阶多项式的插值算法进行研究与仿真.在过路径点的点到点(PTP)运动中采用三次与五次多项式结合的“353”多项式插值算法,并通过仿真,证明了“353”多项式插值能使各关节加速度变化得到平稳轨迹,并且降低了使用五次多项式插值后关节较高的最大加速度,使加速度变化更加平稳,减小了机构冲击.【期刊名称】《制造技术与机床》【年(卷),期】2016(000)006【总页数】5页(P65-69)【关键词】工业机器人;MATLAB;轨迹插值;多项式插值【作者】赵川;张鹏超;潘晓磊;吕海立【作者单位】陕西理工学院陕西省工业自动化重点实验室,陕西汉中723000;陕西理工学院陕西省工业自动化重点实验室,陕西汉中723000;陕西理工学院陕西省工业自动化重点实验室,陕西汉中723000;陕西理工学院陕西省工业自动化重点实验室,陕西汉中723000【正文语种】中文【中图分类】TP2422轨迹规划对工业机器人能够高效、稳定的运动有重要的影响。
机器人工作时必须保证运行轨迹的平滑。
若各关节的速度和加速度突变或者不连续会在机器人工作过程中,加剧机构的摩擦,机械臂出现振动现象,增大轨迹跟踪误差,降低跟踪精度,缩短机器人的使用寿命。
为此学者们提出了多项式插值、B样条曲线插值等插值方法,从而得到关节速度和加速度平稳、光滑且连续的轨迹。
本文通过在MATLAB环境中仿真研究了三次多项式与五次多项式插值后,各关节的关节角度位置、速度和加速度的变化轨迹,通过研究分析提出了过路径点的点到点运动间的“353”[9]多项式插值,并且得到了关节速度和加速度的平滑连续的变化轨迹。
工业机器人轨迹自动校正算法!用PLC写算法实现案例摩擦焊刀头工业机器人项目经常会有工具发生偏移,例如焊接机器人的焊枪,涂胶机器人的胶头,激光切割机器人的激光头,机械加工机器人的刀具等!不能因为小小的偏差就重新编写轨迹!下面给大家介绍一个自动修正枪头偏移数据的案例程序,给需要的朋友提供个思路!以下分三部分详细解析:1、项目整体思路;2、算法分析;3、ST程序举例;焊接机器人项目整体思路介绍此次举例为焊接机器人,焊枪头自动修正的案例;主要逻辑,机器人焊枪有小的碰撞,或者重新换了焊枪头,焊枪头相对于机器人法兰盘,有了一定的偏移!我需要把偏移的数据计算出来,补偿到轨迹里,保证轨迹不会跑偏!用一个X型对射传感器,枪头通过触碰激光线,发出触碰信号的同时,记录机器人的坐标,让机器人枪头走直线,触碰激光线四次,可以得出二元一次线性方程组!计算这个方程组得到一个坐标,即可枪头求出偏差值!下面就是算法分析详细讲解!X型校正工具具体算法分析部分如下图所示,机器人走直线经过两条激光线,通过刚触碰激光线和从激光线离开,可以得到P21/P22/P11/P12/P31/P32/P41/P42这八个坐标点!想通过方程组计算,我只需要触碰激光和离开激光的中间点,即图中的P100/P200/P300/P400这四个点!运动点位图示如下图所示,P100/P200/P300/P400四个点可以得到两条直线方程,Y=K1X+B1;Y=K2X+B2;通过解这个方程组的到交叉点P1000的坐标;(初中的二元一次方程组,挺简单吧!);具体使用逻辑是:1、机器人安装枪头后,先按照下图的两条枪头轨迹走一遍,得出的值为标定值;这个值校定后不可更改;2、后面如果有枪头偏移的情况,就再走一遍下图轨迹,得出新的值,新的值减去标定值,即可得出修正值!一般都是周期性自动调用校正程序,保证轨迹不偏移!方程组程序举例我用ST大概讲解下写法,首先定义变量,如下两个图,为机器人坐标系结构体和程序变量声明部分!机器人坐标的结构体程序变量声明下面就是解二元一次方程组的步骤;可以手动在草稿纸上写下这个方程,下面程序只是把草稿纸上的步骤写成程序表达!如下图所示:解方程组的算法结束语:上面是PLC计算,相同的方法可以机器人自己内部写程序计算,根据实际需求来,都可以!程序只是举例核心算法部分,实际使用需要一些变量和数据的逻辑判断!核心算法很简单,思路正确了,程序很好写,实际应用的判断逻辑反而更加复杂!如果想要精度更高的数据,还要反方向再运行一次,取中间值;如果想精确到两个小数点以内,首先机器人精度要保证,其次要用到时间戳,时间戳可以把信号触发时间存储在本地模块上,然后把时间分割成比如一亿份,可以做到纳秒级别的精度!当然大部分工况是用不到这么高的精度,机械精度就很难达到,得上千万,上亿的设备才能用到!。
工业机器人的实时轨迹插补算法李天友 ,孟正大 ,陈勍奇(东南大学自动化学院,江苏南京 210096)摘要:提出了一种实现工业机器人实时轨迹插补的规划算法。
该算法既能满足时间上的实时性,又能够在完成机器人当前轨迹插补的同时,实现在线调整插补参数,改变机器人当前插补方程,从而改变机器人运动轨迹与状态。
而对于不同插补类型,只要找准对应线长的表示,不需要对算法本身进行修改,就可以完成相应的轨迹插补。
本算法应用于“昆山一号”焊接机器人中,表明其满足焊接实时性和可调速性要求。
关键词:工业机器人;实时插补;算法;轨迹规划示教再现方式下的轨迹插补算法是工业机器人的一个传统课题[1],技术和方法比较成熟有效。
文献[2-4]分别解决了直线、圆弧、样条曲线等单一类型的轨迹插补,文献[5,6]讨论了复杂曲线在编程时用分段直线或圆弧进行拟合插补的方法,文献[7]研究了关节空间和笛卡儿空间的通用插补算法,把插补段分为加速段、匀速段、减速段进行插补, 但算法复杂,运算量大,且不能进行实时控制。
此外,时间上满足实时性的轨迹插补方法也得到了研究[3,4]。
但是既满足实时性要求又能够进行平滑调速并且能够同时完成关节空间和笛卡儿空间各种类型插补的通用轨迹插补算法却比较少见。
本文介绍工业机器人的实时轨迹插补算法。
它是为满足“昆山一号”焊接机器人的实时性而设计的,实时性包含两层涵义,一是满足时间上的实时性,即在一个采样周期内能够完成一次轨迹插补,多数算法能够满足这层要求;而实时性第二层涵义是系统能够在完成机器人当前轨迹插补的同时,实现在线调整插补参数,改变机器人当前插补方程,从而改变机器人运动轨迹与状态,本文的算法很好地完成了这层实时性的要求。
并且这种算法能够完成PTP (点到点)、多点关节空间、直线、圆弧、样条曲线、FlyBy [8,9]等多种类型的轨迹插补。
本文首先介绍实时轨迹插补算法的提出背景,然后给出了算法基本原理的详细说明,并且运用流程图进一步明确了基本算法,对算法的实时性和调速控制进行了分析,最后阐述了算法在多种插补类型中的实际应用。
1 实时轨迹插补算法1.1 提出背景“昆山一号”机器人是我国第一台自主研制的全自动工业焊接机器人,其核心技术“自动控制软件系统”第一版在轨迹插补方面,不仅实现了常见的PTP 、直线、圆弧这些插补方式,而且实现了样条曲线插补和多点笛卡尔坐标空间插补等新型插补方式,丰富了机器人的轨迹插补功能,这些插补算法在实际系统运行中,操作简单方便,机器人运行平稳[10]。
先前的算法是把插补段分为加速段、匀速段、减速段,分别对位置和姿态进行定时插补计算,然后把所有的插补点位姿全部求解出来形成位置和姿态链表。
通过对插补点位置和姿态链表进行依次读取执行,来完成各种类型的插补。
这种方法虽然能够完成姿态的插补,但是在已知插补类型的情况下,不能对机器人运动轨迹与状态进行控制,也就是不能满足实时性第二层内容的要求,当然也就不能满足“昆山一号”焊接机器人在实际应用中的电弧跟踪实基金项目:江苏省科技成果转化专项资金项目(BA2007058)和国家高技术研究发展计划资助项目(2006AA040202作者简介:李天友(1983-),男,河南民权人,硕士生,litianyouseu@时偏差补偿和插补过程中进行调速的需要,所以我们提出了实时轨迹插补算法。
1.2 基本算法机器人控制系统计算点列并形成轨迹的过程叫插补,插补工作有三个要素:插补的参数、插补的方程、插补形成的轨迹(点列)。
只有插补的参数、插补的方程都合乎操作者的需求时,产生的点列才是符合要求的。
其中把插补的参数分成两部分:第一部分参数一般包括示教点的位姿如始点位姿和终点位姿、示教点间的插补方式如直线、圆弧等,一般能够规定插补的轨迹方程,第二部分参数一般包括设定的匀速段速度、变速段加速度、始点速度和终点速度等,一般能够规定机器人工具手末端的运动状态。
为方便说明问题,我们定义空间两点始点A 和终点B 以及它们之间的线段为直线段(实际上两点之间可以为圆弧、样条曲线、FlyBy 等任意形状的线段),算法原理图如图1所示。
图1 实时轨迹插补算法原理示意图图2 实时轨迹插补算法关键步骤说明示意图由图1可知第一部分参数有:始点A 位姿startAuxiT6,终点B 位姿endAuxiT6,该图例表示的插补类型为直线;第二部分参数有:始点A 的速度为Vstart 、终点B 的速度为Vend 、始点A 和终点B 之间的匀速段速度velo 和变速段加速度accel 。
定义当前插补点的位姿为currentAuxiT6、速度为Vcurrent 和距离A 的线长Scurrent ,下一个插补点的位姿为nextAuxiT6、速度Vnext 和距离A 的线长Snext 。
定义A 和B 总线长为S ,SA 为A 附近的变速距离(Vstart 按设定加速度变化到velo 所需要的线长),SB 为B 附近的变速距离(velo 按设定加速度变化到Vend 所需要的线长),SAB 为总的变速距离。
定义SAECE 为当前插补点处于末段变速状态时所需的变速距离(Vcurrent 按设定加速度变化到Vend 所需要的线长),SCE 为当前插补点到B 的距离。
输入变量有:startAuxiT6、 Vstart、endAuxiT6、Vend 、currentAuxiT6、Vcurrent 、Scurrent (以上三个变量由上次插补算法计算得到)、velo 、accel 、调速控制量Vrate (通过控制该变量完成机器人的调速,集中反映了该算法通过控制输入变量对机器人的插补状态实行控制)。
输出变量有: Vnext、Snext 、nextAuxiT6(以上三个量作为下次轨迹插补的输入控制量。
算法的核心思想:由以上实时性的分析,可以通过控制输入变量对当前插补点状态施加控制,这样就把整段的连续插补变为可以控制插补状态(如插补的速度和姿态)的单步插补。
在完成当前插补点轨迹插补的同时输出Vnext 和Snext ,通过计算得到nextAuxiT6,以上三个变量作为下次轨迹插补的输入变量对下次轨迹插补的状态进行控制。
所以现在讨论的问题就变为如何通过控制当前插补点输入变量求解下一插补点的Vnext 和Snext 上。
在两个插补点之间,存在两个关键判断点:一是比较SCE 和SAECE ,若SCE 不大于SAECE ,当前插补点进入末段变速段;若SCE 大于SAECE ,则进入非末段的变速段;这就相当于直观的把整条线段分成了两个部分,末段变速段和非末段变速段。
第二个关键判断点是速度的对比。
若当前插补点进入末段变速段,首先比较velo 和Vend ,确定变速段是加速状态还是减速状态,然后比较Vcurrent 和Vend ,确定当前插补要进行相应的运动还是匀速运动。
而当前插补点处于非末段变速段的处理方法与处于末段变速段类似,首先比较velo 和Vstart ,确定本段是加速状态还是减速状态,然后比较Vcurrent 和Vstart ,确定当前插补要进行相应的运动还是匀速运动。
其关键步骤说明示意图见图2。
所以实时轨迹插补算法处理流程如下:step1:初始化操作,进行速度、加速度、距离合法性检验。
求解SA 和SB ,求和得SAB ;比较SAB 与S 的大小,判别S 的合法性;对插补点末点进行处理;step2:求解处理关键判断点一。
求解SAECE 和SCE ;比较SCE 和SAECE ;若SCE 不大于SAECE ,则进入末段的变速段,进入step3;若SCE 大于SAECE ,则进入非末段的变速段,进入step6;accel Vend Vcurrent fabs SAECE 2/ (22−= (1 step3:处理末段变速段的关键判断点二。
比较velo 和Vend ,若velo 小于Vend ,则本段为加速段,进入step4;若velo 大于Vend ,则本段为减速段,进入step5;step4:比较Vcurrent 和Vend 。
若Vcurrent 小于Vend ,加速操作,算出Vnext 、Snext ;Ts accel Vcurrent Vnext *+= (22**5. 0*Ts accel Ts Vcurrent Scurrent Snext ++= (3 其它情况,加速过程提前到达末点速度,则做匀速运动;Vend Vnext = (4 Ts Vcurrent Scurrent Snext *+= (5 step5:比较Vcurrent 和Vend 。
若Vcurrent 大于Vend ,减速操作,算出Vnext 、Snext ;Ts accel Vcurrent Vnext *−= (62**5. 0*Ts accel Ts Vcurrent Scurrent Snext −+= (7其它情况,减速过程中提前达到末点速度,则做匀速运动,计算公式同(4(5。
step6:处理非末段变速段的关键判断点二。
比较velo 和Vstart ,若Vstart 小于velo ,则本段为加速段,进入step7;若Vstart 不小于velo ,则本段为减速段,进入step8;图3 实时轨迹插补算法的流程示意图图4 直线在线实时插补的仿真效果示意图 step7:比较Vcurrent 和velo 。
若Vcurrent 小于velo ,加速操作,算出Vnext 、Snext ,计算公式同(2(3。
若Vcurrent 达到或暂时超过velo ,则需要将速度保持或调整为velo ,计算公式如下:velo Vnext = (8 Ts Vcurrent Scurrent Snext *+= (9 step8:比较Vcurrent 和velo 。
若Vcurrent 大于velo ,减速操作,算出Vnext 、Snext ,计算公式同(6(7。
若Vcurrent 达到或暂时超过velo ,则需要将速度保持或调整为velo ,计算公式同 (8(9。
step9:实时轨迹插补算法结束。
根据以上的分析推导过程可以得到如图3所示的实时轨迹插补算法流程图。
1.3 算法的实时性和调速控制分析要实现调速控制,引入调速控制量Vrate (其中有效范围:0-100%),作为插补点的输入变量,对轨迹插补的速度进行控制。
由Sstep Scurrent Snext += (10 其中Sstep 为单步插补步长;要实现速度的调节,既把V 调整为V*Vrate;设Ssteprate 为速度调整后的步长, 由dt V Sstept t ∫=21 (11调整为 Vrate dt V dt Vrate V Ssteprate t t t t * ( *(2121∫∫== (12所以对速度V 的调节转化为对步长Sstep 的调节,得到引入Vrate 后的控制方程:Vrate Sstep Scurrent Snext *+= (13 由以上推理可知,要实现速度的平滑调节,以公式(3为例,计算公式如下:Vrate Ts accel Ts Vcurrent Scurrent Snext * **5. 0*(2++= (14 要实现电弧跟踪实时偏差补偿,由以上算法得到Vnext 和Snext ,计算得到nextAuxiT6,再由电弧跟踪得到的偏差补偿量进行姿态调整,求得补偿后的新的nextAuxiT6位姿量,然后把这三个量作为中间变量,等待下一步调用,这样就完成了电弧跟踪偏差的实时补偿。