首页> 中国专利> 机器人控制设备、机器人装置、机器人控制方法、用于执行机器人控制方法的程序、及在其上记录程序的记录介质

机器人控制设备、机器人装置、机器人控制方法、用于执行机器人控制方法的程序、及在其上记录程序的记录介质

摘要

所公开的是减少时间最优控制所必需的计算量的技术。插值函数计算部件361计算插值函数,该插值函数经过插值在各个示教点之间的多个插值的示教点。而且,微分系数计算部件362计算通过利用插值函数的变量数对包含在每个插值的示教点中的每个矢量分量进行微分而获得的每个微分系数。而且,估计值计算部件365基于每个经过速度和每个微分系数来计算在每个插值的示教点中的每个关节的估计速度。而且,时间最优控制部件369改变各个经过速度并且最小化目标函数,该目标函数通过在约束条件下利用变量数对各个经过速度的倒数进行积分而获得,该约束条件包括每个关节的估计速度与预定的允许速度的比率在预定约束范围之内的条件。位置命令产生部件373通过每当经过速度函数被利用预定时间间隔的值进行时间积分时将积分值代入插值函数中的变量数中来产生位置命令。

著录项

  • 公开/公告号CN104254430A

    专利类型发明专利

  • 公开/公告日2014-12-31

    原文格式PDF

  • 申请/专利权人 佳能株式会社;

    申请/专利号CN201380012677.0

  • 发明设计人 根岸真人;

    申请日2013-02-28

  • 分类号B25J9/16(20060101);G05B19/4103(20060101);

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人宋岩

  • 地址 日本东京

  • 入库时间 2023-12-17 02:50:00

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-05-11

    授权

    授权

  • 2015-01-21

    实质审查的生效 IPC(主分类):B25J9/16 申请日:20130228

    实质审查的生效

  • 2014-12-31

    公开

    公开

说明书

技术领域

本发明涉及机器人控制设备、机器人装置、机器人控制方法、用 于执行机器人控制方法的程序及在其上记录程序的记录介质,它们产 生其中当关节型机器人(articulated robot)沿着由示教点给定的轨 道移动时操作时间最短的位置命令。

背景技术

近年来,具有能够像人手一样实现复杂和高速组装的关节型机器 人的组装装置的开发已经扩展。在这方面,关节型机器人的高速操作 是重要的。

而且,为了处理复杂和精确的组装目标,有必要处理连接三个或 更多示教点的复杂的CP(连续路径)轨道,而不是连接两个示教点 的简单的PTP(点到点)的轨道。

满足这种需要的关节型机器人的时间最优控制技术已经被提出 (参考PTL 1)。自1980年代以来,时间最优控制已经在论文中被 提出并且众所周知。根据在PTL 1中所公开的技术,为了以预定的 时间间隔(例如,以1ms的间隔)输出关于关节型机器人的每个关 节的位置命令(目标位置),以预定的时间间隔在各个给定的示教点 之间执行插值来计算位置命令。然后,更正每个位置命令的值以最小 化操作时间。

参考文献列表

专利文献

PTL 1:日本专利申请特许公开第H11-198072号

发明内容

技术问题

但是,在PTL 1所公开的技术中,时间最优控制所必需的计算 量很大。具体而言,在PTL 1所公开的技术中,指示出目标位置的 位置命令是基于每个示教点计算的,时间最优控制的计算是为计算出 的位置命令执行的,然后,产生校正的位置命令。

为了抑制关节型机器人的速度和位置精度的减小,有必要以预定 的微小(例如,若干毫秒)时间间隔输出位置命令,因此,数据量大。 例如,当关节型机器人操作10秒钟并且位置命令以1ms的间隔输出 时,需要10x1000=10000个校正的位置命令。因此,在时间最优控制 中经历计算处理的数据量必然大。而且,时间最优控制回到解的优化 的问题,这需要计算时间。因此,数据量的增大导致计算时间的增加。 在计算处理中,难以操作关节型机器人,这引起一个问题,即难以执 行关节型机器人的高速操作,而关节型机器人的高速操作是时间最优 控制的目的。

因此,本发明的一目的是为了减少时间最优控制所必需的计算量。

问题的解决方案

根据本发明的一方面,提供了一种机器人控制设备,其以预定的 时间间隔输出位置命令到驱动控制单元,该驱动控制单元控制用于驱 动关节型机器人的每个关节的每个致动器的操作使得每个关节被操作 成顺序地跟随包括作为矢量分量的每个关节的示教位置的多个示教点, 该机器人控制设备包括计算单元,其中该计算单元执行:插值函数计 算处理,该处理计算经过插值在各个示教点之间的多个插值的示教点 (interpolated teach point)的插值函数;微分系数计算处理,该处 理计算通过利用插值函数的变量数来对在每个插值的示教点中包含的 每个矢量分量求微分所获得的每个微分系数;临时设置处理,该处理 临时设置指示出通过对在每个插值的示教点中的变量数求时间微分所 获得的微分值的每个经过速度;估计值计算处理,该处理基于每个经 过速度和每个微分系数来计算在每个插值的示教点中的每个关节的估 计速度;时间最优控制处理,该处理改变各个经过速度并且最小化目 标函数,该目标函数通过在约束条件下利用变量数对各个经过速度的 倒数进行积分而获得,该约束条件包括每个关节的估计速度与预定的 允许速度的比率在预定约束范围之内的条件;经过速度函数计算处理, 该处理根据在时间最优控制处理中所获得的每个经过速度来计算经过 速度函数;及位置命令产生处理,该处理通过每当经过速度函数被利 用预定时间间隔的值进行时间积分时将积分值代入插值函数中的变量 数中来产生位置命令。

根据本发明的另一方面,提供了一种机器人控制方法,该方法使 用包括计算单元的机器人控制设备,该计算单元产生要以预定的时间 间隔输出到驱动控制单元的位置命令,该驱动控制单元控制用于驱动 关节型机器人的每个关节的每个致动器的操作使得每个关节被操作成 顺序地跟随包括作为矢量分量的每个关节的示教位置的多个示教点, 该方法包括:由该计算单元进行的插值函数计算处理,该处理计算经 过插值在各个示教点之间的多个插值的示教点的插值函数;由该计算 单元进行的微分系数计算处理,该处理计算通过利用插值函数的变量 数来对在每个插值的示教点中包含的每个矢量分量求微分所获得的每 个微分系数;由该计算单元进行的临时设置处理,该处理临时设置指 示出通过对在每个插值的示教点中的变量数求时间微分所获得的微分 值的每个经过速度;由该计算单元进行的估计值计算处理,该处理基 于每个经过速度和每个微分系数来计算在每个插值的示教点中的每个 关节的估计速度;由该计算单元进行的时间最优控制处理,该处理改 变各个经过速度并且最小化目标函数,该目标函数通过在约束条件下 利用变量数对各个经过速度的倒数进行积分而获得,该约束条件包括 每个关节的估计速度与预定的允许速度的比率在预定约束范围之内的 条件;由该计算单元进行的经过速度函数计算处理,该处理根据在时 间最优控制处理中所获得的每个经过速度来计算经过速度函数;及由 该计算单元进行的位置命令产生处理,该处理通过每当经过速度函数 被利用预定时间间隔的值进行时间积分时将积分值代入插值函数中的 变量数中来产生位置命令。

发明的有利效果

根据本发明,执行了时间最优控制处理,该处理关于在每个插值 的示教点中的插值函数的变量数改变每个经过速度,以最小化目标函 数,并且在每个预定的时间间隔的位置命令是根据插值函数利用以这 种方式计算的每个经过速度产生的。以这种方式,由于位置命令是在 目标函数最小化后计算的,因此不必要把插值的示教点的数量设置成 与位置命令的数量相同,并且能够把插值的示教点的数量设置成小于 位置命令的数量。因此,能够减小时间最优控制处理所必需的计算量, 并且提高计算单元中用于位置命令计算的计算速度。

根据以下对示例性实施例的描述并参考附图,本发明的其它特征 将变得清楚。

附图说明

图1是示意性图示出根据本发明第一实施例的机器人装置的配置 的示图。

图2是图示出机器人控制设备的配置的框图。

图3包括图3A和3B,图3是机器人控制设备的功能框图。

图4A是示意性图示出示教点的示图。

图4B是示意性图示出插值的示教点和插值函数的示图。

图4C是示意性图示出经过速度的示图。

图5是示意性图示出位置命令的示图。

图6是示意性图示出根据本发明第二实施例的机器人控制设备的 微分系数计算部件的操作的示图。

图7A是示意性图示出根据本发明第三实施例的机器人装置的结 构的示图。

图7B是示意性图示出关于每个机器人臂的示教点序列的示图。

图8是图示出根据本发明第四实施例的在机器人控制设备中约束 条件违反率计算部件的处理操作的示图。

图9A是图示出根据本发明第四实施例的电动机的模型的示图。

图9B是图示出允许的电动机转矩的示图。

具体实施方式

在下文中,将参考附图详细描述用于实现本发明的实施例。

第一实施例

图1是示意性图示出根据本发明第一实施例的机器人装置的配置 的示图。在图1中图示出的机器人装置100包括作为关节型机器人的 机器人臂200,及控制机器人臂200的机器人控制设备300。而且, 机器人装置100包括示教板(teaching pendant)400,该示教板是把 有关多个示教点的数据传输到机器人控制设备300的示教设备。示教 板400是通过用户操作的,并且用于指定机器人臂200或机器人控制 设备300的操作。

在第一实施例中,机器人臂200是具有6个关节的机器人。机器 人臂200包括多个(6个)致动器201至206,其分别绕着各个关节 轴A1至A6旋转地驱动各个关节J1至J6。只要机器人臂200在可 移动的范围之内,机器人臂200就可以使端点(机器人臂的末端)能 够在任意的三维位置以任意的三向姿势定向。一般地,机器人臂200 的位置和姿势可以通过坐标系来表达。在图1中,To表示固定于机 器人臂200的台座的坐标系,并且Te表示固定于机器人臂200的端 点的坐标系。

在本实施例中,致动器201至206分别包括电动机211至216及 连接到电动机211至216的减速器221至226。致动器201至206中 的每一个的配置都不限于此,例如,可以使用人工肌肉等。

在第一实施例中,将描述其中各个关节J1至J6都是转动关节的 情况。在这种情况下,术语“关节位置”指关节的角度。每个关节都 可以是移动关节。在这种情况下,“关节位置”是移动关节的位置。 类似地,关于其时间微分,使用术语“关节速度”、“关节加速度” 和“关节加速度变化率(jerk)”。

机器人臂200还包括伺服控制设备230,该设备是驱动控制单元, 其控制各个致动器201至206的电动机211至216的驱动。伺服控制 设备230向电动机211至216输出电流命令,并且控制各个电动机 211至216的操作,使得各个关节J1至J6的位置基于输入位置命令 (目标位置)跟随位置命令。

机器人控制设备300从示教板400接收多个示教点(示教点序列) 的输入。机器人控制设备300基于示教点产生要以预定的时间间隔输 出到伺服控制设备230的位置命令,并且以预定的时间间隔输出位置 命令,使得机器人臂200的各个关节J1至J6被操作成顺序地跟随多 个示教点。

示教点是包括作为矢量分量的各个关节(六个关节)J1至J6的 示教位置的矢量(示教点矢量)。而且,在机器人控制设备300中最 终计算的位置命令是包括作为矢量分量的各个关节(六个关节)J1 至J6的目标位置的矢量。在第一实施例中,示教点和位置命令在点 的数量上彼此不同,但是它们的维度(单位)是相同的。

也就是说,机器人控制设备300根据输入的示教点计算CP轨道, 以产生沿着该轨道的多个位置命令,并且以预定的时间间隔向伺服控 制设备230输出位置命令。

这时,关于由给定的示教点序列所确定的轨道,机器人控制设备 300执行关节型机器人的时间最优控制,该时间最优控制用于把轨道 上的经过速度调整在不偏离约束条件的范围之内,其中约束条件诸如 机器人臂200的各个关节J1至J6的速度、加速度、转矩等。

这里,两种类型的方法可以视作通过示教的机器人臂200的操作 方法。

1在配置空间中的运动

用于以机器人臂200的关节角度指定示教点并且把机器人沿着由 指定的示教点所确定的轨道移动的方法。

2在任务空间中的运动

用于以三维位置和姿势指定示教点,并且把机器人臂200沿着由 指定的示教点和机器人臂200的端点所确定的轨道移动的方法。

在图1中,示意性图示出四个示教点p1、p2、p3和p4。在任何 情况下,机器人臂200的操作沿着由示教点所确定的轨道移动。这里, 示教点不是在所谓的三维空间中的点。在关节空间移动的情况下,示 教点对应于所有关节J1至J6的关节角度(所有电动机的旋转角度)。 在任务空间移动的情况下,如在图1中所图示出的,示教点对应于三 维空间中的位置和姿势,其中p1、p2、p3和p4表示为坐标系。

以下,在第一实施例中,将描述关节空间移动的情况。在关节空 间移动中,示教点对应于机器人的各个关节J1至J6的角度。因此, 在6轴和6关节机器人的情况下,一个示教点中包括六个矢量分量。

图2是图示出机器人控制设备300的配置的框图。在第一实施例 中,机器人控制设备300是包括CPU 301的计算机,其中CPU 301 是计算单元,如在图2中所图示出的。

机器人控制设备300包括作为计算单元的CPU 301、ROM 302、 RAM 303、HDD 304、记录盘驱动器305、及各种接口306至309。

ROM 302、RAM 303、HDD 304、记录盘驱动器305及各种接 口306至309通过总线310连接到CPU 301。用于操作CPU 301的 程序330存储在ROM 302中。程序330是使得CPU 301执行各种计 算处理的程序。CPU 301基于存储在ROM 302中的程序330执行各 种计算处理。RAM 303是临时存储CPU 301的计算处理结果的存储 单元。HDD 304是存储单元,用于存储作为计算处理结果的各种类 型的数据。

示教板400连接到接口306,并且CPU 301通过接口306和总线 310从示教板400接收有关示教点的数据的输入。

在CPU 301的命令下,指示CPU 301中的计算结果的数据(位 置命令数据)等存储在HDD 304中。

机器人臂200的伺服控制设备230连接到接口309,并且CPU 301以预定的时间间隔通过总线310和接口309向伺服控制设备230 输出位置命令数据。

监视器321连接到接口307,并且在监视器321上显示各种图像。 接口308配置成使得诸如可重写非易失性存储器或外部HDD的外部 存储设备322可以连接到该接口。记录盘驱动器305能够读取在记录 盘331中记录的各种类型的数据、程序等。

图3是图示出机器人控制设备300的功能框图。CPU 301执行存 储在ROM 302中的程序330,以充当各种处理部件351、352和353, 其中各个处理部件执行后面将要描述的各种处理。即,基于程序330, CPU 301充当在图3中图示出的第一插值部件351、经过速度计算部 件352、第二插值部件353。在图3中,圆角矩形表示数据,矩形表 示CPU 301的处理。

将简要描述各个部件351、352和353的操作。首先,第一插值 部件351利用插值函数在各个示教点之间执行插值,并且计算插值的 示教点的各个位置中各个关节的位置。而且,第一插值部件351计 算一阶微分值、二阶微分值和三阶微分值。

经过速度计算部件352定义在插值的示教点的每个位置中的经过 速度。然后,经过速度计算部件352计算经过速度的一阶微分值和经 过速度的二阶微分值。经过速度计算部件352根据每个关节的位置和 经过速度的一阶微分值和二阶微分值、在第一插值部件351中计算的 一阶微分值、二阶微分值和三阶微分值,计算机器人臂200的每个关 节的估计的速度、估计的加速度、估计的加速度变化率及估计的转矩。 而且,经过速度计算部件352计算机器人臂200的末端的估计的末端 速度(在下文中称为估计的端点速度),及机器人臂200的末端的估 计的旋转速度(在下文中称为估计的端点旋转速度)。

然后,经过速度计算部件352计算约束条件违反率,约束条件违 反率是所计算的估计速度、估计的加速度、估计的加速度变化率、估 计的转矩和估计的端点速度及估计的端点旋转速度与预定的约束值的 比率。

经过速度计算部件352求解不等式约束优化问题,即其中计算出 的约束条件违反率的整个或者预先选择的部分在预定的约束范围之内 (在±1的范围之内)的不等式约束被满足,并且经过速度的倒数的 总和(即,操作时间)是最短的,从而获得经过速度。

第二插值部件353利用插值函数,计算给予在通过以预定的时间 间隔积分计算的经过速度所获得的位置中的机器人臂200的每个关节 的位置命令。

这里,数学表达式中的符号定义如下。在数学表达式中,粗体字 表示矢量。

pi 示教点。由多个矢量分量构成的矢量。

在机器人臂具有6轴关节的情况下,一个示教点由六个示教位置 (关节角度)构成。

h(s,pi) 插值函数。

q(s) 插值的示教点。由多个矢量分量构成的矢量。

在机器人臂具有6轴关节的情况下,一个插值的示教点由六个示 教位置(关节角度)构成。

s 指示各个插值的示教点的序列号的变量数。这里,s不是整 数而是实数。

q(s)=q(s)s,q(s)=2q(s)s2,q(s)=2q(s)s2

在插值的示教点中,利用变量数s微分的一阶、二阶和三阶微分 系数。

φ(s)=s/t  经过速度。

Tall=stsds=s1φ(s)ds  全部所需的时间。

  关节的估计速度(时间的一阶微分)。

  关节的估计加速度(时间的二阶微分)。

  关节的估计加速度变化率(时间的三阶微分)。

an约束条件违反率。

qi 位置命令。要以各预定时间间隔传输到伺服控制设备的目标 位置。

机器人臂的估计的端点速度(在图1中坐标系Te的速度)。

  机器人臂的估计的端点旋转速度(在图1中坐标系Te的角 度速度)。

u(s) 应用到机器人臂的关节的估计的转矩。

在下文中,将参考图3、4和5详细描述各个部件351、352和 353的操作。如在图3中所图示出的,第一插值部件351包括插值函 数计算部件361和微分系数计算部件362。经过速度计算部件352包 括临时设置部件363、经过速度微分系数计算部件364、估计值计算 部件365、约束条件违反率计算部件368、时间最优控制部件369、 及经过速度函数计算部件372。第二插值部件353包括位置命令产生 部件373。估计值计算部件365包括计算部件366和运动计算部件 367。时间最优控制部件369包括收敛确定部件370和经过速度改变 部件371。

首先,插值函数计算部件361执行插值函数计算处理,该处理计 算经过插值在各个示教点(矢量)pi之间的多个插值的示教点(矢 量)q(s)的插值函数(插值函数计算处理)。例如,在其中获得在图 4A中所图示出的四个示教点p1至p4的情况下,插值函数计算部件 361计算经过在图4B中示出的插值在四个示教点p1至p4之间的多 个插值的示教点q(1)、q(2)、...的插值函数。示教点p1是起始点,且 示教点p4是终点。

这里,变量数s是作为各个插值的示教点中的序列号的变量数, 即,是作为以经过的顺序分配给各个插值的示教点的序列号的变量数, 其在插值函数中采用实数值。

在图4B中,插值函数示意性地由虚线表示。诸如线性插值、圆 弧插值或样条插值的各种插值都被建议作为插值函数,并且可以由以 下的表达式(1)来表达。

q(s)=h(s,pi)(1)

这里,在其中变量数s用作整数值的情况下,变量数s变成每个 插值的示教点q(s)的编号。例如,在其中各个示教点p1至p4之间的 每个区间被分成十份的情况下,获得被分成31个的插值的示教点 q(1)至q(31)。而且,变量数s在插值中可以采用连续数字值(实数 值)而不是整数值。

优选地,插值函数成为变量数s的多项式方程。在第一实施例中, 由于计算在后来执行到三阶微分系数,因此插值函数由下面的公式 (2)给出作为三维多项式方程。

h(s,pi)=a3s3+a2s2+a1s1+a0  (2)

在公式(2)中示出的多项式方程中的各个系数(矢量)a0、a1、 a2和a3被选作对于每个pi-pi-1区间不同的值。在本实施例中,各 个系数被选作区间边界中高达二阶微分系数的连续的值。

作为插值函数,使用经过每个示教点pi的插值函数和不经过每 个示教点pi的插值函数。即,插值函数不限于必须经过所有示教点 的插值函数。

以这种方式,插值函数计算部件361计算在公式(2)中示出的 各个系数a0、a1、a2和a3,以获得插值函数,并且通过在插值函数 的变量数s中代入s=1,2,...获得各个插值的示教点q(1),q(2),...。

这里,由于使用了插值的示教点q(1),q(2),...用于计算后面要 进行描述的经过速度,因此不需要把它们的点的数量增加到与位置命 令的数量一样多。例如,把示教点pi-pi-1之间的区间分成十份就足 够了。插值的示教点q(s)的数量设置成小于输出到伺服控制设备230 的位置命令的数量。例如,机器人臂200允许图4A中图示出的四个 示教点p1至p4移动10秒钟,并且在其中位置命令以1ms的预定 时间间隔输出到伺服控制设备230的情况下,需要10÷0.001=10000 个点的位置命令。在这方面,如果在示教点p1至p4之间的每个区 间都分成十份,那么插值的示教点q(s)的数量就变成31,因此,可 显著地减少位置命令的数量。

然后,微分系数计算部件362执行微分系数计算处理,该处理分 别计算通过利用插值函数的变量数s求各个矢量分量的微分所获得的 微分系数,其中各个矢量分量指示包含在各个插值的示教点q(1), q(2)...中的示教位置(微分系数计算处理)。

这里,在用于临时计算插值的示教点q(1)至q(31)之间的差分的 方法中,增加了插值误差,这不用于高阶微分。

在第一实施例中,由于微分执行到三阶微分,因此不使用相关领 域中的简单的差分公式,而使用通过对插值函数直接求微分所获得的 函数。即,如果公式(2)分别经历利用变量数s的一阶微分、二阶 微分和三阶微分,那么获得以下的公式(3)。

q(s)=q(s)s=h(s,pi)s=3a3s2+2a2s+a1q(s)=2q(s)s2=2h(s,pi)s2=6a3s+2a2q(s)=3q(s)s3=3h(s,pi)s3=6a3---(3)

因此,在第一实施例中,微分系数计算部件362利用公式(3) 计算一阶微分系数、二阶微分系数和三阶微分系数,作为通过利用变 量数s对各个插值的示教点q(1)至q(31)中的各个矢量分量求微分所 获得的微分系数。即,微分系数计算部件362通过在公式(3)的变 量数s中代入s=1,2,...,31计算各个插值的示教点中的微分系数。

然后,临时设置部件363执行临时设置处理,该处理临时设置经 过速度,经过速度指示通过分别求各个插值的示教点q(1)至q(31)中 的变量数s的时间微分所获得的微分值(一阶微分系数)(临时设置 处理)。在各个插值的示教点q(1)至q(31)中,每个经过速度表示变 量数s被改变的速度。

例如,如在图4C中所图示出的,在各个插值的示教点中,各个 经过速度初始地设置(临时设置)成φ(1)至φ(31)。经过速度φ(s)通过 以下公式定义。

φ(s)=s/t

例如,各个经过速度φ(1)至φ(31)设置成例如如下的预定的数。

φ(s)=1

这意味着经过一个插值的示教点用1秒钟。

然后,经过速度微分系数计算部件364执行计算处理,该处理计 算通过利用变量数s对各个插值的示教点q(1)至q(31)中的各个经过 速度φ(1)到φ(31)求微分所获得的微分系数(在本实施例中,一阶微分 和二阶微分)。

在经过速度微分系数计算处理中,计算处理基于以下公式(4) 执行。

φ(s)=φ(s)sφ(s)=2φ(s)s2---(4)

然后,计算部件366执行估计值计算处理,该处理基于各个经过 速度和各个微分系数计算机器人臂200的各个关节J1至J6的估计速 度、估计的加速度和估计的加速度变化率(估计值计算处理)。即, 计算部件366基于各个经过速度φ(s)的值(包括基于这些值计算的 微分系数φ’(s)和φ”(s))和各个微分系数q’(s)、q”(s)和q”’(s)的值 计算估计的速度、估计的加速度和估计的加速度变化率。这里,s=1, 2,...,31。

具体而言,计算部件366在以下公式(5)中代入各个计算结果, 来计算估计的速度q(·)(s)、估计的加速度q(··)(s)和估计的加速度变化 率q(···)(s)。估计的速度q(·)(s)、估计的加速度q(··)(s)和估计的加速 度变化率q(···)(s)是矢量。

q·(s)=q(s)φ(s)q··(s)=q(s)φ(s)2+q(s)φ(s)φ(s)q···(s)=q(s)φ(s)3+3q(s)φ(s)φ(s)2+q(s)φ(s)(φ(s)2+φ(s)φ(s))---(5)

估计的加速度是通过利用时间对估计的速度求一阶微分所获得的 值,并且估计的加速度变化率是通过利用时间对估计的速度求二阶微 分所获得的值。

然后,运动计算部件367执行估计值计算处理,该处理基于各个 经过速度和各个微分系数计算在各个插值的示教点中的各个关节的估 计的转矩、机器人臂200的估计的端点速度和机器人臂200的估计的 端点旋转速度。

具体地,运动计算部件367根据插值的示教点(关节示教位置) q(s)、估计的速度q(·)(s)和估计的加速度q(··)(s)计算施加到关节的估 计的转矩(矢量)u(s)。

这种计算被称为机器人臂200的逆动态计算。例如,参考Kono  Haruhisa,Robot Kinematics,2005年6月10日,Ohmsha (Tokyo),91页,获得以下公式(6)。

u(s)=I(q(s))q··(s)+C(q(s),q·(s))q·(s)+G(q(s))+J(q(s))f---(6)

在右侧,第一项称作惯性项,第二项称作科氏(Coriolis)项, 第三项称作重力项、及第四项称作外力项。这些是根据构成机器人臂 200的链接件的布置、质量和惯性张量以及各个关节的位置q(s)、估 计的速度q(·)(s)和估计的加速度q(··)(s)计算的。

而且,运动计算部件367根据机器人臂200的各个关节的插值的 示教点q(s)和估计速度q(·)(s)计算机器人臂200的估计的端点速度 (矢量)r(·)(s)和估计的端点旋转速度(矢量)w(·)(s)。

这种计算被称为正向运动学计算,并且简单地利用雅可比矩阵 (Jacobian matrix)T获得。例如,参考Kono Haruhisa,Robot  Kinematics,2005年6月10日,Ohmsha(Tokyo),42页,获得 以下公式(7)。

r·(s)w·(s)=[T(q(s))]q·(s)---(7)

以这种方式,运动计算部件367利用公式(6),根据关节的位 置、速度、加速度和加速度变化率的估计值、机器人的每个关节的质 量和惯性张量计算施加到关节的估计的转矩。而且,运动计算部件 367利用公式(7)计算机器人臂200的估计的端点速度和估计的端 点旋转速度。

然后,约束条件违反率计算部件368执行约束条件违反率计算处 理,该处理计算关节速度的约束条件违反率,其是每个关节的估计速 度与预定的允许速度的比率。即,约束条件违反率计算部件368计算 以下公式。

(机器人的第j个关节轴的速度与允许的速度Vj的比 率)

在6轴关节型机器人的情况下,j=1至6。

各个估计的速度是利用公式(5)基于各个经过速度(φ(s))和各个 微分系数(q’(s))计算的。

而且,约束条件违反率计算部件368执行约束条件违反率计算处 理,该处理计算关节加速度的约束条件违反率,其是每个关节的估计 的加速度与预定的允许的加速度的比率。即,约束条件违反率计算部 件368计算以下公式。

(机器人的第j个关节轴的加速度与允许的加速度Aj 的比率)

在6轴关节型机器人的情况下,j=1至6。

各个估计的加速度是利用公式(5)基于各个经过速度(φ(s)和 各个经过速度的一阶微分的值φ’(s))和各个微分系数(q’(s)和q”(s)) 计算的。

而且,约束条件违反率计算部件368执行约束条件违反率计算处 理,该处理计算关节加速度变化率的约束条件违反率,其是每个关节 的估计的加速度变化率与预定的允许的加速度变化率的比率。即,约 束条件违反率计算部件368计算以下公式。

(机器人的第j个关节轴的加速度变化率与允许的加速 度变化率Bj的比率)

在6轴关节型机器人的情况下,j=1至6。

各个估计的加速度变化率是利用公式(5)基于各个经过速度 (φ(s),一阶微分的值φ’(s)和二阶微分的值φ”(s))和各个微分系数 (q’(s),q”(s)和q”’(s))计算的。

而且,约束条件违反率计算部件368执行约束条件违反率计算处 理,该处理计算施加到关节的转矩的约束条件违反率,其是每个关节 的估计的转矩与预定的允许的转矩的比率。即,约束条件违反率计算 部件368计算以下公式。

(施加到机器人的第j个关节的转矩uj(s)与允许的转矩Uj的 比率)

在6轴关节型机器人的情况下,j=1至6。

各个估计的转矩是基于各个插值的示教点q(s)、各个经过速度 (φ(s)和各个经过速度的一阶微分的值φ’(s))和各个微分系数(q’(s) 和q”(s))计算的。

而且,约束条件违反率计算部件368执行约束条件违反率计算处 理,该处理计算端点速度的约束条件违反率,其是在每个插值的示教 点中机器人臂200的末端的估计的末端速度与预定的允许的末端速度 的比率。即,约束条件违反率计算部件368计算以下公式。

(估计的末端速度r(s)与允许的末端速度R的比率)

这里,估计的末端速度是机器人臂200的末端的速度矢量的大小。 即,估计的末端速度如下。

r(s)=rx(s)2+ry(s)2+rz(s)2

各个估计的末端速度是利用公式(7)基于各个插值的示教点 q(s)、各个经过速度φ(s)和各个微分系数q’(s)计算的。

而且,约束条件违反率计算部件368执行约束条件违反率计算处 理,该处理计算端点旋转速度的约束条件违反率,其是在每个插值的 示教点中机器人臂200的末端的估计的旋转速度与预定的允许的旋转 速度的比率。即,约束条件违反率计算部件368计算以下公式。

w(s)/W(估计的旋转速度w(s)与允许的旋转速度W的比率)

这里,估计的旋转速度是端点的旋转速度矢量的大小。即,估计 的旋转速度如下。

w(s)=wx(s)2+wy(s)2+wz(s)2

各个估计的旋转速度是利用公式(7)基于各个插值的示教点 q(s)、各个经过速度φ(s)和各个微分系数q’(s)计算的。

为了描述起见,上述约束条件违反率被表达如下。

αn(s)

这里,n表示约束条件违反率的类型。在第一实施例中,有 6+6+6+6+1+1=26种类型的约束条件违反率。约束条件的预定约束范 围利用这些约束条件违反率如以下的公式(8)中那样设置。

αn(s)-1≤0

n(s)-1≤0   (8)

为了满足约束,约束条件违反率αn(s)有必要在±1的范围之内。 即,需要满足这两个公式。

而且,把机器人臂200从示教点的起点移动到其终点所需要的时 间是通过用变量数s积分各个经过速度的倒数利用以下公式(9)的 目标函数确定的。

Tall=stsds=s1φ(s)ds---(9)

利用经过速度作为参数在其中满足公式(8)的不等式约束的范 围内最小化公式(9)的目标函数的问题已知为不等式约束最优值问 题,并且已经提出各种分析。例如,使用以下用于最小化拉格朗日函 数的方法。

L(φ(s))=Tall+ρ(Σnmax(αn-1,0)+Σnmax(-αn-1,0))---(10)

这里,ρ被称作惩罚参数。

在第一实施例中,时间最优控制部件369执行时间最优控制处理, 该处理在约束条件下改变各个经过速度,其中约束条件是约束条件违 反率αn(s)在±1的范围内,以最小化公式(9)的目标函数(时间最优 控制处理)。

具体而言,首先,时间最优控制部件369的收敛确定部件370确 定当下面两个条件满足时,收敛完成。

第一个条件是所有的约束条件违反率αn(1),αn(2),...,αn(31) 都在±1的范围之内的条件,即,第一个条件满足公式(8)。

第二个条件是与之前的经过速度分布φ0(1),φ0(2),...,φ0(31) 相比,经过速度分布φ(1),φ(2),...,φ(31)在预定的小量ε之内变化的 条件,即,第二个条件满足以下公式(11)。

|φ(s)-φo(s)|<ε   (11)

在其中不存在有关之前的经过速度分布φ0(1),φ0(2),...,φ0(31) 的数据的情况下(即,在第一重复处理中),收敛确定部件370在收 敛确定中只利用第一个条件执行确定。

在其中收敛确定部件370确定没有收敛的情况下,时间最优控制 部件369的经过速度改变部件371基于公式(10)执行改变各个经过 速度的值的处理。而且,经过速度微分系数计算部件364、估计值计 算部件365和约束条件违反率计算部件368利用改变的各个经过速度 执行上述各个计算处理。重复执行这些处理,直到收敛确定部件370 确定存在收敛。如上所述,时间最优控制部件369优化经过速度,使 得公式(9)的目标函数在其中满足公式(8)的不等式约束条件的范 围内最小化。

然后,在其中收敛确定部件370在收敛确定中确定存在收敛的情 况下,经过速度函数计算部件372执行经过速度函数计算处理,该处 理根据在时间最优控制处理中所获得的各个经过速度计算经过速度函 数(经过速度函数计算处理)。

然后,位置命令产生部件373执行位置命令产生处理,该处理通 过每当计算的经过速度函数利用预定的时间间隔值δ被时间积分时将 积分值代入插值函数中的变量数s中来产生位置命令(位置命令产生 处理)。

图5图示出在位置命令产生部件373中计算的位置命令的例子。 位置命令产生部件373以预定的时间间隔δ(例如,1ms)积分经过 速度函数φ(s)来计算示教点编号s,并且利用插值函数计算指示在该 位置的关节值的位置命令。这里,与第一插值部件351不同,不必要 执行微分系数计算。这个计算可以简单地利用最简单的积分公式表示, 如下所示。

Si+1=Si+φ(si)δ   (12)

qi+1=h(si+1,pi)   (13)

这里,下角标i表示以每个预定的时间间隔δ计算的命令值的编 号。而且,变量数s的初始值是零,如下所示。

s0=0

位置命令产生部件373在公式(12)中计算预定时间间隔δ之后 的示教点的位置si+1,并且在公式(13)中计算每个关节的位置命令 (矢量)qi+1。由于以这种方式以每个恒定时间间隔计算的位置命令 qi是在公式(8)和(9)中提到的不等式约束最优值问题的解,因 此机器人臂200是以最短的时间操作的。

以上,在第一实施例中,执行了时间最优控制处理,该处理关于 在各个插值的示教点中的插值函数的变量数s改变各个经过速度φ(1), φ(2),...,φ(31),使得目标函数最小化。而且,利用以这种方式计算 的各个经过速度φ(1),φ(2),...,φ(31),根据插值函数产生在每个预 定的时间间隔的位置命令q1,q2,...。这里,要在时间最优控制中 使用的插值的示教点的数量是由第一插值部件351确定的。通常,不 等式约束最优值问题花费计算时间,但是插值的示教点的数量可以设 置成小于最终产生的伺服控制设备230中以相等的时间间隔发送的位 置命令的数量。例如,如果积分的示教点的数量是31并且位置命令 的数量是10000,那么由于该比率为31/10000,即,大约0.3%,因 此,能够显著地减少计算量。

以这种方法,在第一实施例中,由于位置命令q1,q2,...是在 执行目标函数的最小化之后计算的,因此,不必要把插值的示教点的 数量设置成与位置命令的数量相同,并且能够把插值的示教点的数量 设置成小于位置命令的数量。因此,与现有技术相比,能够减少时间 最优控制处理所必需的计算量,并且能够减少在CPU 301中用于位 置命令计算的计算时间,以提高计算速度。

而且,每个插值的示教点的微分系数由微分系数计算部件362一 次计算并且在经过速度计算部件352中被当作常量,因此,计算量小, 并且缩短了计算时间。

而且,在现有技术中,约束条件只是机器人臂的关节的估计速度 的约束条件违反率在预定的约束条件的范围之内的条件。另一方面, 在第一实施例中,约束条件包括机器人臂200的关节的估计速度、估 计的加速度、估计的加速度变化率、估计的转矩、估计的端点速度和 估计的端点旋转速度的约束条件违反率在公式(8)中示出的预定的 约束条件范围之内的条件。因此,与现有技术比较而言,能够处理广 泛的约束条件,并且机器人臂200的操作被稳定化。例如,由于约束 条件包括估计的加速度变化率与预定的允许的加速度变化率的比率在 预定的约束范围之内的条件,因此,能够抑制异常的激励力施加到机 器人臂200,并且抑制机器人臂200的明显振动。

在第一实施例中,已经描述其中使用三阶样条作为插值函数的例 子,但是插值函数可以通过四阶或更高阶的样条插值或者多项式方程 插值来计算。而且,插值函数可以通过线性插值、圆弧插值等计算。

而且,在第一实施例中,在每个恒定时间从多个示教点产生位置 命令的处理执行为一系列连续的操作,但是可以执行为如下所示从中 间分开的两个阶段。

第一插值部件351和经过速度计算部件352的处理连续地执行为 计算处理A,以计算经过速度φ(s)。

由第二插值部件353(位置命令产生部件373)根据经过速度φ(s) 和示教点产生在每个恒定时间的位置命令,作为计算处理B。

计算处理A是优化的计算并且具有大量计算,因此,在操作机 器人臂200之前计算。由于后面的计算处理B具有少量的计算,因 此能够在实际移动机器人臂200的同时执行该处理。在这种情况下, 停止机器人臂200用于计算的时间对应于计算处理A的处理时间。

即,与在所有的计算处理A和B都完成之后移动机器人臂200 的方法相比,这能够缩短机器人臂200的停止时间。

第二实施例

下面,将描述根据本发明第二实施例的机器人控制设备。图6是 示意性图示出根据本发明第二实施例的机器人控制设备的微分系数计 算部分的操作的示图。在第二实施例中,只有微分系数计算部件362 (图3)的计算处理与第一实施例不同。因此,在第二实施例中,将 描述微分系数计算部件362的计算处理。

在第一实施例中,作为例子已经描述“在配置空间中运动”的情 况。在第二实施例中,将描述“在任务空间中运动”的情况。第二实 施例在公式(1)中示出的插值函数方面与第一实施例不同。

在“在任务空间中运动”的情况下,插值函数对在任务空间中表 达的示教点进行插值,然后计算机器人臂200的逆运动并且把结果转 换到关节空间以计算插值的示教点。这时,由于执行了复杂的逆运动 学计算,因此难以解析地计算微分系数。

在第二实施例中,类似于第一实施例,CPU 301(图2)是计算 单元,其基于程序330充当插值函数计算部件362。

而且,在第二实施例中,为了处理其中难以解析地对插值函数求 微分的情况,微分系数计算部件362执行数值微分。这里,在第二实 施例中,由于插值的示教点的数量通过粗糙地执行插值而减少,因此, 如果简单地利用插值的示教点之间的值执行数值微分,则插值误差增 加。因此,微分系数在被分割用于插值的各个位置获得。

当变量数s以小于各个插值的示教点的间隔的微小值e变化时, 微分系数计算部件362关于各个插值的示教点q(1)至q(31)的各个矢 量分量基于插值函数来计算各个矢量分量,作为微分系数计算处理。 而且,微分系数计算部件362利用计算结果计算各个微分系数。具体 而言,微分系数计算部件362计算在各个插值的示教点q(1)至q(31) 中的矢量分量的一阶微分值、二阶微分值和三阶微分值。

具体而言,首先,关于各个值s,微分系数计算部件362四点计 算s=1,2,...,31时插值函数的值以及在变量数s按微小值e移位 的位置的插值函数的值。

q(s)=h(s,pi)

q(s+e)=h(s+e,pi)   (14)

q(s-e)=h(s-e,pi)

q(s+2e)=h(s+2e,pi)

然后,微分系数计算部件362在以下的公式(15)中计算一阶微 分值、二阶微分值和三阶微分值。

q(s)=h(s+e,pi)-h(s-e,pi)2eq(s)=h(s+e,pi)+h(s-e,pi)-2h(s,pi)e2q(s)=h(s+2e,pi)-3h(s+e,pi)+3h(s,pi)-h(s-e,pi)e3---(15)

以上的公式(15)是例子,各种类型的其它数值微分公式是已知 的。根据这个方法,甚至在难以解析地微分的插值函数的情况下,也 能够高精度地计算一阶微分值、二阶微分值和三阶微分值,并且执行 时间最优控制。

第三实施例

然后,将描述根据本发明的第三实施例的机器人装置。在第三实 施例中,机器人装置100B是具有多个关节的机器人,并且包括两个 机器人臂200a和200b,及控制机器人臂200a和200b的机器人控制 设备300B。在第三实施例中,在作为计算单元的CPU的计算处理中, 第三实施例在计算插值函数的插值函数计算处理方面不同于第一和第 二实施例,但是在其它计算处理方面与第一和第二实施例相同。

因此,在第三实施例中,机器人控制设备300B使用两个机器人 臂200a和200b作为控制目标,并且除了在各个机器人臂中的插值函 数计算处理之外,执行与第一和第二实施例的那些处理相同的处理。

在手工组装中,诸如两个臂或手的多个元件同步移动。类似地, 在机器人臂的机器人控制设备中,应当实现多个机器人臂的同步操作。

在第三实施例中,与第一和第二实施例类似,CPU 301(图2) 是计算单元,其基于程序330充当插值函数计算部件361。

而且,在第三实施例中,插值函数计算部件361在每个示教点分 配对应于时间的示教点编号并且利用示教点编号通过样条插值计算插 值函数,作为插值函数计算处理。

具体而言,插值函数计算部件361把示教点编号设置成在每个示 教点序列的示教点中单调增大,并且计算插值函数,该函数利用示教 点编号通过不等距样条在示教点序列的示教点之间执行插值。

例如,如在图7A中所图示出的,假设对于第一机器人臂200a 呈现四个示教点(1p1、1p2、1p3和1p4),并且对于第二机器人臂 200b呈现三个示教点(2p1、2p3和2p4)。在这些示教点,假设两 个机器人臂200a和200b应当同时经过最后的两个示教点用于合作。

在每个示教点序列中单调增大的示教点编号从编号1开始,但是 在第二个机器人臂200b中少了编号2。目的是在具有在两个示教点 序列中相同的示教点编号的点中实现同步运动。即,目的是各个机器 人臂200a和200b同时经过除了编号2之外的编号为1、3和4的示 教点。

这可以通过把插值函数设置成不等距样条函数来实现。作为不等 距样条函数的例子,B样条等是已知的。

用于第一机器人臂的示教点序列的插值函数如下所示。

1h(s,1pi)

用于第二机器人臂的示教点序列的插值函数如下所示。

2h(s,2pi)

这两个元素合并,表示成如下所示的插值函数。

h(s,pi)=h1(s,pi1)h(s,pi2)2---(16)

随后的处理与第一和第二实施例中的那些一样。

在第三实施例中,除了第一和第二实施例的效果之外,还能够在 相同示教编号的地方以及在以上公式中相同值s的地方同步机器人臂 200a和200b。即,能够实现对应于多个机器人臂的同步操作的时间 最优控制。

第四实施例

下面,将描述根据本发明的第四实施例的机器人控制设备。图8 是图示出根据本发明第四实施例的在机器人控制设备中约束条件违反 率计算部件的处理操作的示图。

在根据第四实施例的机器人控制设备中,预定的约束值(允许值) 设置成对于每个插值的示教点具有不同的值。提前给予每个示教点不 同的约束值,并且根据该值利用公式(8)计算约束条件违反率。由 于其它计算处理与第一至第三实施例中的那些处理相同,因此将省略 其描述。

在根据第一至第三实施例的约束条件违反率计算部件368中,估 计值与预定的允许值的比率被计算为约束条件违反率。例如,在第j 个关节轴的速度的情况下,在第一至第三实施例中,关节的估计速度 与作为常量的允许速度Vj的比率被计算如下。

q·j(s)Vi

在第三实施例中,允许速度设置成根据变量数的值变化的值,并 且估计速度与对于每个示教点改变的允许速度的比率被计算如下。

q·j(s)Vj(s)

在图8中图示出的横轴是指示插值的示教点编号的变量数s,并 且变量数s在插值中不限于整数,但是具有连续的编号。图8图示出 优化经过速度的计算完成之后的状态。因此,关节的估计速度不超过 允许速度。

在第四实施例中,由于能够为每个示教点设置约束条件,因此与 第一至第三实施例比较而言,进一步提高了约束条件的自由度。

而且,在第四实施例中,如在图8中所图示出的,允许速度设置 成随着变量数s的值增大而减小。因此,由于随着机器人臂靠近终点 关节速度减小,所以能够利用机器人臂稳定地执行组装操作。

在第四实施例中,已经描述了关节速度约束,但是类似地,能够 关于诸如关节加速度、加速度变化率、转矩、端点速度或端点旋转速 度的其它约束条件,为每个示教点设置允许值。

如上所述,根据第四实施例,除了实现第一至第三实施例的效果 之外,还能够通过为每个示教点设置不同的允许值实现机器人臂的时 间最优控制。

第五实施例

然后,将描述根据本发明的第五实施例的机器人控制设备。在第 五实施例中,除了在第一至第四实施例中的条件之外,约束条件还包 括估计的电动机转矩与预定的允许的电动机转矩的比率在预定的约束 范围之内(在±1的范围内)的条件。

机器人臂200的关节J1至J6和电动机211至216通过减速器 221至226彼此连接。能够根据减速器221至226和电动机211至 216的计算模型在每个电动机211至216中计算估计的电动机转矩。

电动机211至216的模型在图9A中图示出。这里,使用了以下 符号。

Nj j轴减速器的减速比

τj j轴电动机的估计的电动机转矩

Ij j轴电动机的惯性力矩

cj j轴的粘滞元素

dj j轴的摩擦元素

该模型具体地表达为公式。当计算约束条件时使用的关节的估计 速度、估计的加速度和施加到关节的估计的转矩被使用。考虑到减速 比Nj的情况下,电动机211至216的估计的电动机转矩被书写如下。

τj(s)=uj(s)Nj+IjNjq··j(s)+cjNjq·j(s)+djsign(q·j(s))---(17)

在右侧,第一项是在公式(6)中计算的施加到关节的转矩。第 二项是与电动机的惯性力及加速度成比例的分量。第三项是与电动机 的粘滞力及速度成比例的分量。第四项是其中它的正负号(sign)根 据电动机的摩擦力及速度的正负号变化的分量。

估计值计算部件365基于减速器221至226的减速比、各个经过 速度和各个微分系数来计算在每个插值的示教点q(s)中的电动机211 至216的估计的电动机转矩。在这种情况下,由于估计的转矩uj(s) 可以根据公式(4)、(5)和(6)计算,因此,该计算基于每个插 值的示教点、每个经过速度(经过速度、经过速度的一阶和二阶微分 值)及每个微分系数(插值函数的一阶和二阶微分值)执行。

如从公式(17)清楚可见的,左侧的电动机转矩大于作为第一项 的施加到关节的转矩。即,由于减速器的惯性或粘性的影响,在电动 机中需要更大的转矩。

以这种方式计算的估计的电动机转矩不应该超过允许的电动机转 矩。允许的电动机转矩一般地通过称为TN曲线的图表达,在TN曲 线中,横轴是电动机的速度并且纵轴是电动机的转矩。通过把估计的 电动机转矩与允许的电动机转矩的比率添加到约束条件违反率的计算 中,能够实现考虑了电动机转矩的情况下的时间最优控制。

图9B图示出TN曲线的例子。允许的电动机转矩通常是速度函 数。以下约束条件违反率的计算被添加到在图3中描述的约束条件违 反率计算部件368中。

机器人臂的j轴关节的电动机转矩τj(s)与根据电动机的TN 曲线确定的电动机的允许转矩Tj的比率

在6轴关节机器人的情况下,j=1至6。

图9B图示出估计的电动机转矩完全在允许的范围内的情况。即, 约束条件违反率的大小是1或更小。由于除了约束条件违反率计算之 外的部件与第一至第四实施例中的部件相同,因此将省略其描述。

如上所述,根据第五实施例,由于除了第一至第四实施例的效果 之外,约束条件还可以关于电动机转矩设置,因此,与第一实施例相 比,能够提高约束条件的自由度。而且,能够实现满足允许的电动机 转矩约束条件的机器人臂的时间最优控制。

本发明不限于上述实施例,并且在本发明的范围内,本领域技术 人员可以进行各种修改。

在第一至第五的实施例中,考虑了所有类型的约束条件,但是这 些约束条件不应当在所有时间都必须考虑。例如,其中操作速度具有 优先级而不管估计的端点速度或估计的端点旋转速度如何的操作可以 通过仅从αn(s)的类型中去除估计的端点速度或估计的端点旋转速度 的约束条件来实现。以这种方式,可以提前确定使用哪种约束类型。 这时,微分系数计算部件362可以只计算必要的微分系数。而且,经 过速度微分系数计算部件364和估计值计算部件365可以只计算必要 的微分值和估计值。尤其,在其中只计算估计速度的情况下,可以省 略经过速度微分系数计算部件364。

而且,在第一至第五实施例中,已经描述了其中作为机器人控制 装置的控制目标的关节型机器人是机器人臂的情况,但是本发明可以 应用到其中关节型机器人是在机器人臂的末端提供的机器人手的情况。

而且,根据上述实施例的各个处理操作具体地由CPU 301执行, CPU 301是机器人控制装置的计算单元。因此,可以给机器人控制装 置300提供记录执行上述函数的程序的记录介质,机器人控制装置 300的计算机(CPU或MPU)可以读取存储在记录介质上要执行的 程序。在这种情况下,从记录介质中读取的程序实现实施例的上述功 能,因此,程序和记录该程序的记录介质构成本发明。

而且,在以上实施例中,已经描述了其中计算机可读记录介质是 ROM 302并且程序330存储在ROM 302中的情况,但是本发明不限 于此。只要记录介质是计算机可读的记录介质,程序330就可以记录 在任何记录介质上。例如,作为用于提供程序的记录介质,可以使用 在图2中图示出的HDD 304、外部存储设备322、记录盘331等。具 体而言,例如,可以使用软盘、硬盘、光盘、磁光盘、CD-ROM、 CD-R、磁带、非易失性存储卡、ROM等作为记录介质。

而且,在上述实施例中的程序可以通过网络下载并且可以由计算 机执行。

而且,本发明不限于其中实施例的功能通过执行由计算机读取的 程序代码来实现的情况。本发明还包括其中在计算机上运行的OS (操作系统)等根据程序代码的指令执行实际处理的部分或全部并且 实施例的功能通过这些处理来实现的情况。

而且,从记录介质读取的程序代码可以写入在存储器中,该存储 器在插入到计算机中的功能扩展板或连接到计算机的功能扩展单元中 被提供。在功能扩展板或功能扩展单元中提供的CPU等可以根据程 序代码的指令执行实际处理的部分或全部,并且实施例的功能可以通 过这些处理来实现。

尽管已经参考示例性实施例对本发明进行了描述,但是应当理解, 本发明不限于所公开的示例性实施例。以下权利要求的范围被赋予最 广泛的解释,从而涵盖所有这种修改以及等同的结构和功能。

本申请要求在2012年3月7日提交的日本专利申请No.2012- 050503的权益,该申请的全部内容通过引用被结合于此。

参考标号列表

100  机器人装置

200  机器人臂(关节型机器人)

201–206  致动器

211–216  电动机

221–226  减速器

230  伺服控制设备(驱动控制单元)

300  机器人控制设备

330  程序

331  记录盘(记录介质)

361  插值函数计算部件(计算单元)

362  微分系数计算部件(计算单元)

363  临时设置部件(计算单元)

365  估计值计算部件(计算单元)

368  约束条件违反率计算部件(计算单元)

369  时间最优控制部件(计算单元)

372  经过速度函数计算部件(计算单元)

373  位置命令产生部件(计算单元)

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号