一种无传感器的工业机器人直线软浮动控制方法与流程

文档序号:17740136发布日期:2019-05-22 03:45阅读:786来源:国知局
一种无传感器的工业机器人直线软浮动控制方法与流程

本发明涉及一种无传感器的工业机器人直线软浮动控制方法。



背景技术:

目前,工业现场越来越多的使用工业机器人替换人进行作业,特别是压铸、机床上下料行业。在从压铸机内取出工件的应用场合,压铸机的顶杆推出加工工件后,要求工业机器人抓取工件并顺应推力方向直线运动。但是,传统工业机器人的控制方式要求机器人具有足够的刚性,当机器人受到外力时,伺服系统视外力为干扰信号并进行补偿,使机器人保持在目标位置上,机器人不能够随外力而运动。

为解决上述问题,有两种解决办法:一种为被动控制,另一种为主动控制。被动控制是在机器人末端增加浮动机构,通过浮动的机构来实现软浮动的功能。主动控制则通过检测或估计外力的方式来主动控制机器人达到柔顺的效果,其中主动控制又分为带传感器和不带传感器控制,带传感器的控制是通过末端传感检测到接触外力进行控制。被动控制和主动控制中的带传感器控制均要加入外部设备,使得机器人成本提高。

为此,文献《面向直接示教的机器人零力控制[j]》(游有鹏,机械工程学报,2014)将伺服工作模式切换到力矩模式下,通过加入动力学补偿实现机器人无传感器的柔顺控制,但是伺服工作在力矩模式下,会降低系统的稳定性,同时不能够控制机器人精准地沿直线运动。欧洲专利ep0766161a1公开了一种机器人末端直线软浮动的控制方法,该方法通过修改伺服环路,由力产生的位置偏差估计外力,再根据动力学推导出对应的关节力矩,然后再计算出力对应的关节位置偏差,该方法虽然能实现末端的直线软浮动控制,但是对动力学模型精度要求较高,易受外界干扰造成系统不稳定,可能会出现上下串动的现象,同时该方法需要知道伺服内部控制环路各项系数的值,这些参数伺服厂商一般不会提供。



技术实现要素:

本发明的目的是针对上述问题提出一种无传感器的工业机器人末端直线软浮动的控制方法,当外力作用于机器人末端执行器上时,在各个关节处会产生实际位置和目标位置的位置偏差,通过调节位置偏差控制工业机器人运动,达到柔顺的效果,不根据动力学模型计算、无需修改伺服环路,实现方法简单、可靠,通用性更强。

为解决上述技术问题,本发明采用的技术方案是:

一种无传感器的工业机器人直线软浮动控制方法,包括如下步骤:

1)、准备工作,将工业机器人内的伺服电机调节到位置控制模式下,通过伺服驱动器将伺服控制环路中的比例项值和积分项值调小;

2)计算工业机器人末端法兰中心实际坐标位置;

2.1)将外力作用在步骤1中的工业机器人末端执行器上,使工业机器人内的各关节实际位置发生变化;

2.2)分别读取步骤2.1中工业机器人内各关节处的关节电机编码器值;

2.3)通过关节处的关节电机编码器值、减速机减速比以及编码器分辨率计算当前工业机器人的关节的实际关节角度;

2.4)重复步骤2.3,计算得出各个关节的实际关节角度;

2.5)对步骤2.4中的各个关节的实际关节角度进行运动学正解,得到工业机器人末端法兰中心实际位置坐标(xr,yr,)zr;

3)计算工业机器人末端法兰中心位置偏差;

3.1)对工业机器人预先设定各个关节的关节位置;

3.2)步骤3.1中的各个关节的关节位置进行运动学正解,得到工业机器人末端法兰中心目标位置坐标(xd,yd,)zd;

3.3)将步骤3.2的目标位置坐标与步骤2.5中的实际位置坐标进行比较,得出由外力作用而产生的工业机器人末端法兰中心位置偏差δx=xr-xd、δy=yr-yd、δz=zr-zd;偏差值相对于世界坐标系;

4)由限制方向约束工业机器人末端法兰中心位置偏差;

根据预先指定的直线软浮动方向进行工业机器人末端法兰中心位置偏差的限制,比如指定y方向(相对于世界坐标系)运动,则将x与z方向上的位置偏差值清零,令δx=0、δz=0,只保持在y方向上的位置偏差值δy;若指定x方向,另δy=0、δz=0;若指定z方向,另δx=0、δy=0;

5)通过比例系数k1、k2调节工业机器人末端法兰中心位置偏差;

5.1)设定比例系数k1、k2;

5.2)对指定的直线软浮动方向上的工业机器人末端法兰中心位置偏差值乘以k1以及偏差的变化量乘以系数k2;

设指定方向为y方向,则指定的直线软浮动方向上的工业机器人末端法兰中心位置偏差值δy乘以k1以及偏差的变化量乘以系数k2,得到新的工业机器人末端法兰中心位置偏差值通过k1、k2值的大小进行末端偏差值的放大与缩小,从而对直线软浮动的位置偏差进行二次调节,其中k1、k2的设定由实验针对不同机器人类型、不同工况调节获得;

若指定方向为x方向,则得到新的工业机器人末端法兰中心位置偏差值

若指定方向为z方向,则得到新的工业机器人末端法兰中心位置偏差值

6)计算直线软浮动所需要控制的工业机器人的各个关节角度;

6.1)设指定方向为y方向,将步骤5.2中得到的工业机器人末端法兰中心位置偏差值δ叠加到步骤3.2中的工业机器人末端法兰中心目标位置上,得到由外力作用产生的工业机器人末端法兰中心位置在限制方向为y方向下的新的位置坐标(xd,yd+δ),zd;

若限制方向为x方向,新的位置坐标(xd+δ,yd),zd;

若限制方向为z方向,新的位置坐标(xd,yd,z)d+δ;

6.2)将步骤6.1中新的工业机器人末端法兰位置坐标经过运动学逆解得到直线软浮动所需要控制的各个关节角度;

6.3)将步骤6.2中得到的控制所需的各个关节角度通过减速机减速比以及编码器分辨率转化为控制伺服电机的脉冲值控制伺服电机运动,实现直线软浮动的功能。

本发明方法中,步骤2.3通过关节处的关节电机编码器值、减速机减速比以及编码器分辨率计算当前工业机器人的关节的实际关节角度,这是现有技术中的常规计算。

本发明方法中,提及运动学正解和运动学逆解均为现有技术中的常规计算方法。

本发明的有益效果是:

1、本发明方法,不使用浮动机构或传感器实现直线软浮动功能,降低了机器人系统的成本。

2、目前机器人厂商采取的控制方式多为位置模式控制,本方法可在位置模式下实现直线软浮动,不用修改伺服环路,通用性更强。

3、本发明方法,不需要基于高精度动力学模型进行计算,系统稳定、可靠性强。

附图说明

图1是本方法的控制流程图。

具体实施方式

下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。

为使本发明的内容更加明显易懂,以下结合附图1和具体实施方式做进一步的描述。

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

一种无传感器的工业机器人直线软浮动控制方法,包括如下步骤:

1)、准备工作,将工业机器人内的伺服电机调节到位置控制模式下,通过伺服驱动器将伺服控制环路中的比例项值和积分项值调小;

2)计算工业机器人末端法兰中心实际坐标位置;

2.1)将外力作用在步骤1中的工业机器人末端执行器上,使工业机器人内的各关节实际位置发生变化;

2.2)分别读取步骤2.1中工业机器人内各关节处的关节电机编码器值;

2.3)通过关节处的关节电机编码器值、减速机减速比以及编码器分辨率计算当前工业机器人的关节的实际关节角度;2.4)重复步骤2.3,计算得出各个关节的实际关节角度;

2.5)对步骤2.4中的各个关节的实际关节角度进行运动学正解,得到工业机器人末端法兰中心实际位置坐标(xr,yr,)zr;

3)计算工业机器人末端法兰中心位置偏差;

3.1)对工业机器人预先设定各个关节的关节位置;

3.2)步骤3.1中的各个关节的关节位置进行运动学正解,得到工业机器人末端法兰中心目标位置坐标(xd,yd,)zd;

3.3)将步骤3.2的目标位置坐标与步骤2.5中的实际位置坐标进行比较,得出由外力作用而产生的工业机器人末端法兰中心位置偏差δx=xr-xd、δy=yr-yd、δz=zr-zd;偏差值相对于世界坐标系;

4)由限制方向约束工业机器人末端法兰中心位置偏差;

根据预先指定的直线软浮动方向进行工业机器人末端法兰中心位置偏差的限制,比如指定y方向(相对于世界坐标系)运动,则将x与z方向上的位置偏差值清零,令δx=0、δz=0,只保持在y方向上的位置偏差值δy;若指定x方向,另δy=0、δz=0;若指定z方向,另δx=0、δy=0;

5)通过比例系数k1、k2调节工业机器人末端法兰中心位置偏差;

5.1)设定比例系数k1、k2;

5.2)对指定的直线软浮动方向上的工业机器人末端法兰中心位置偏差值乘以k1以及偏差的变化量乘以系数k2;

设指定方向为y方向,则指定的直线软浮动方向上的工业机器人末端法兰中心位置偏差值δy乘以k1以及偏差的变化量乘以系数k2,得到新的工业机器人末端法兰中心位置偏差值通过k1、k2值的大小进行末端偏差值的放大与缩小,从而对直线软浮动的位置偏差进行二次调节,其中k1、k2的设定由实验针对不同机器人类型、不同工况调节获得;

若指定方向为x方向,则得到新的工业机器人末端法兰中心位置偏差值

若指定方向为z方向,则得到新的工业机器人末端法兰中心位置偏差值

6)计算直线软浮动所需要控制的工业机器人的各个关节角度;

6.1)设指定方向为y方向,将步骤5.2中得到的工业机器人末端法兰中心位置偏差值δ叠加到步骤3.2中的工业机器人末端法兰中心目标位置上,得到由外力作用产生的工业机器人末端法兰中心位置在限制方向为y方向下的新的位置坐标(xd,yd+δ),zd;

若限制方向为x方向,新的位置坐标(xd+δ,yd),zd;

若限制方向为z方向,新的位置坐标(xd,yd,z)d+δ;

6.2)将步骤6.1中新的工业机器人末端法兰位置坐标经过运动学逆解得到直线软浮动所需要控制的各个关节角度;

6.3)将步骤6.2中得到的控制所需的各个关节角度通过减速机减速比以及编码器分辨率转化为控制伺服电机的脉冲值控制伺服电机运动,实现直线软浮动的功能。

本具体实施方式中的无传感器的工业机器人直线软浮动控制方法,通过关节位置的偏差计算到末端位置偏差,再由末端方向限制并且通过偏差系数调节重新计算关节位置偏差来实现指定方向上的直线浮动功能。

实施例1

本实施例以某通用六关节工业机器人为控制对象,直线软浮动功能具体的实现如下:

1、将伺服比例项和积分项参数调小,外力推机器人末端执行器,采集此时各轴绝对式编码器的脉冲值为(292928,418865,296628,292080,278469,186613),根据各轴的关节减速比(80.0548,114.4723,81.066,79.8088,76.10328,51)及编码器分辨率131072计算出当前实际的关节位置值为(10.05,10.05,10.05,10.05,10.05,10.05);运动学正解得到实际的工业机器人末端法兰中心位置为x=467.804,y=-49.9743,z=517.14。

2、设当前目标位置(10,10,10,10,10,10);由目标位置计算出当前末端法兰中心目标位置x=468.108,y=-49.397,z=517.886。将前述得到实际的工业机器人末端法兰中心位置(为x=467.804,y=-49.9743,z=517.14)与当前末端法兰中心目标位置(x=468.108,y=-49.397,z=517.886)做差,得到δx=-0.304、δy=-0.5773、δz=-0.746。

3、指定直线软浮动的方向为世界坐标系的y方向,令δx=0、δy=-0.5773、δz=0。

4、令k1=0.5,k2=0.001。设此时所以控制用末端位置偏差δy=-0.78865。

5、由给定末端位置(10,10,10,10,10,10)与δy计算出控制用末端法兰中心位置x=468.108,y=-50.18565,z=517.886。运动学逆解得到控制用各关节位置(10.0995,10.0233,9.97266,9.50747,9.9881,10.5347),由关节位置计算得到最终控制电机运动的脉冲值为(294422,417745,294346,276313,276754,195613)。

如上所述,尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上作出各种变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1