CN110300644B - 用于确定机器人制造中外轴的关节值的方法和系统 - Google Patents
用于确定机器人制造中外轴的关节值的方法和系统 Download PDFInfo
- Publication number
- CN110300644B CN110300644B CN201780086858.6A CN201780086858A CN110300644B CN 110300644 B CN110300644 B CN 110300644B CN 201780086858 A CN201780086858 A CN 201780086858A CN 110300644 B CN110300644 B CN 110300644B
- Authority
- CN
- China
- Prior art keywords
- robot
- joint
- sequence
- outer shaft
- axis
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000004519 manufacturing process Methods 0.000 title claims description 16
- 230000033001 locomotion Effects 0.000 claims abstract description 66
- 238000012545 processing Methods 0.000 claims description 22
- 238000005457 optimization Methods 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 8
- 238000005265 energy consumption Methods 0.000 claims description 6
- 230000002068 genetic effect Effects 0.000 claims description 3
- 230000003068 static effect Effects 0.000 claims description 3
- 238000000137 annealing Methods 0.000 claims description 2
- 101100182136 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) loc-1 gene Proteins 0.000 description 19
- 238000003860 storage Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 238000003466 welding Methods 0.000 description 5
- 101150039239 LOC1 gene Proteins 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- RVRCFVVLDHTFFA-UHFFFAOYSA-N heptasodium;tungsten;nonatriacontahydrate Chemical compound O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W] RVRCFVVLDHTFFA-UHFFFAOYSA-N 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000002922 simulated annealing Methods 0.000 description 2
- 238000010420 art technique Methods 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005553 drilling Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009957 hemming Methods 0.000 description 1
- 238000003698 laser cutting Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- 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/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41815—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
-
- 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/32—Operator till task planning
- G05B2219/32333—Use of genetic algorithm
-
- 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/39—Robotics, robotics to robotics hand
- G05B2219/39101—Cooperation with one or more rotating workpiece holders, manipulators
-
- 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/39—Robotics, robotics to robotics hand
- G05B2219/39102—Manipulator cooperating with conveyor
-
- 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/40—Robotics, robotics mapping to robotics vision
- G05B2219/40515—Integration of simulation and planning
-
- 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/49—Nc machine tool, till multiple
- G05B2219/49143—Obstacle, collision avoiding control, move so that no collision occurs
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
Abstract
提供了用于根据目标序列确定外轴的关节值序列的系统和方法。接收输入,该输入包括机器人表示、工具表示、目标序列、轴关节运动学、机器人‑轴运动的类型。针对每个目标生成至少一个权重因子表,所述至少一个权重因子表根据组合的机器人运动和轴运动的类型,针对轴关节运动的每个可用配置来表示机器人运动和轴运动的组合工作量。通过模拟到达目标的无冲突轨迹来确定表的有效权重因子值。通过从权重因子表中找到用于使到达目标位置序列的其相对应的权重因子之和最小化的关节值的序列,来确定至少一个外轴的关节值序列。
Description
技术领域
本公开内容一般地涉及管理用于产品和其他项目的数据的计算机辅助设计、可视化及制造(“CAD”)系统,产品生命周期管理(“PLM”)系统,产品数据管理(“PDM”)系统,以及类似的系统(统称为“产品数据管理”系统或PDM系统)。更具体地,本公开内容涉及生产环境模拟。
背景技术
在工业制造中,在工业机器人与待通过工具加工的部件之间的相互作用期间经常使用一个或更多个外轴。
例如,存在将机器人基部移动到某一位置使得工具能够通过到达待加工部件上的预定目标位置来执行一些制造操作的外轴。这样的外轴的示例包括但不限于轨道和输送机。
外轴的其他示例是将待加工的部件移动到某一位置使得工具能够到达部件上的某些特定目标的外轴。这样的外轴的示例包括但不限于操纵器和旋转/转台。
由工具执行的机器人制造操作的示例包括但不限于焊接、点焊、电弧焊、涂漆、涂覆、钻孔和铆接、激光切割、卷边以及在机器人制造中通过工具执行的其他类型的制造操作任务。
在实施方式中,工具优选地被安装在机器人上。在其他实施方式中,工具位于固定位置,并且机器人通过夹具保持部件以实现部件与工具之间的相互作用,例如,机器人将部件向前移动到工具枪中,在目标上执行焊接。
图2示意性地示出了机器人与作为外轴的旋转台相互作用的示例性情况场景的图示。
需要机器人21在待加工部件22上的目标位置23上经由机器人的安装工具25执行一些制造操作,例如,一些焊接操作。机器人的可达性区域26限于虚线区域,并且在不存在旋转台24的情况下,机器人工具25将并非能够到达部件22上的所有目标23。
在没有外轴的工业机器人的常规目标可达性问题中,假设机器人基部处于固定位置并且待加工的部件也处于固定位置。
在存在至少一个外轴的工业场景中,例如在图2的示意图中,由于机器人基部和/或部件不处于固定位置而是能够经由外轴移动,因此目标可达性优化问题更难以被解决。
遗憾的是,当需要待确定的解决方案无冲突且有效时,问题甚至更为关键。可以通过最小化基于生产周期时间、能量消耗、运动、其他相关权重因子及其任何组合的权重因子来获得效率。
生产周期时间是关键因子,因为每个工作站都需要在非常有限的时间帧内完成其机器人任务。出于成本和环境原因,期望节能解决方案。
为了解决这样的可达性问题并且确定外轴的关节值,当前现有技术通常依赖于使用手动“反复试验”方法的专家用户。遗憾的是,这样的已知技术经常提供效率低且有时不是无冲突的可达解决方案。因此,期望改进的技术。
发明内容
各种公开的实施方式包括用于根据目标位置的序列确定至少一个外轴的关节值序列的方法和相对应的系统以及计算机可读介质,由此机器人任务将由工具和机器人顺序地执行,由此所述至少一个外轴的关节运动使工具能够到达目标位置中的至少一个。一种方法包括接收信息输入,信息输入包括机器人的虚拟表示、工具的虚拟表示、关于目标位置序列的信息、关于所述至少一个外轴的关节的运动学信息、关于机器人与所述至少一个外轴之间的运动类型的信息。该方法包括:针对每个目标位置生成至少一个权重因子表,所述至少一个权重因子表根据机器人与外轴之间的组合运动的类型,针对轴关节运动的每个可用配置来表示机器人运动和轴运动的组合工作量。通过模拟在机器人和外轴的运动期间使工具能够到达目标位置序列的无冲突轨迹来确定所述至少一个权重因子表的有效权重因子值。通过从权重因子表得出使工具到达目标位置序列的其相对应的权重因子之和最小化的关节值的序列,来确定所述至少一个外轴的关节值序列。
前述内容已经相当广泛地概述了本公开内容的特征和技术优点,使得本领域技术人员可以更好地理解随后的详细描述。在下文中将描述本公开内容的形成权利要求书的主题的附加特征和优点。本领域技术人员将理解,他们可以容易地使用所公开的构思和具体实施方式作为用于修改或设计用于执行本公开内容的相同目的的其他结构的基础。本领域技术人员还将认识到,这样的等同构造不脱离本公开内容的最广义形式的精神和范围。
在进行下文的具体实施方式之前,阐述贯穿本专利文件使用的某些词或短语的定义可以是有利的:术语“包括(include)”和“包含(comprise)”及其衍生词表示没有限制的包括;术语“或”是包括性的,表示和/或;短语“与......相关联”和“与其相关联”及其衍生词可以表示包括、被包括在内、与......互连、包含、被包含在内、连接至或与......连接、耦接至或与......耦接、能够与......通信、与......合作、交错、并列、接近于、绑定至或与......绑定、具有、具有......的性质等;以及术语“控制器”表示控制至少一个操作的任何装置、系统或其一部分,而无论这样的装置是以硬件、固件、软件还是以其中至少两者的某种组合来实现。应当注意,与任何特定控制器相关联的功能无论是本地还是远程可以是集中式的或分布式的。贯穿本专利文件提供了某些单词和短语的定义,并且本领域普通技术人员将理解,这样的定义在许多(如若不是在大多数)实例中适用于这样被定义的单词和短语的现有使用以及未来使用。虽然一些术语可以包括各种各样的实施方式,但是所附权利要求可以将这些术语明确地限制于特定实施方式。
附图说明
为了更完整地理解本公开内容及其优点,现在结合附图参考以下的描述,在附图中相同的附图标记指示相同的对象,并且在附图中:
图1示出了可以实现实施方式的数据处理系统的框图;
图2示意性地示出了机器人和转台形式的外轴的示例性情况场景的图示;
图3示意性地示出了具有两个外轴的机器人的第一示例性情况场景的图示;
图4示意性地示出了具有两个外轴的机器人的第二示例性情况场景的图示;
图5示出了根据所公开的实施方式的用于根据目标序列确定外轴的关节值的序列的处理的流程图。
具体实施方式
在本专利文件中,以下讨论的图1至图5以及用于描述本公开内容的原理的各种实施方式仅作为例示,而不应当以任何方式理解成限制本公开内容的范围。本领域技术人员将理解,本公开内容的原理可以在任何适当地布置的装置中实现。将参考示例性非限制实施方式描述本申请的许多创新的教导。
用于基于手动的“反复试验”方法确定外轴的关节值的先前技术是麻烦的、繁琐的、容易出错的、以及以其他方式不适合于任务。
用于确定外轴的关节值的先前技术需要太多时间和工作量。
基于从每个目标位置视点搜索外轴的最佳关节值的局部方法来确定外轴的关节值的先前技术是次优的并且导致关节的冗余和低效运动以及增加的工作量。
实施方式以自动方式确定能够实现无冲突运动的外轴的关节值的序列。
实施方式以自动方式确定在投入的工作量方面是高效的外轴的关节值的序列。
实施方式例如通过减少周期时间、能量消耗、关节运动和/或其任何组合来减少操作期间的工作量。
实施方式优选地通过真实机器人模拟(“RRS”)来实现模拟,并且因此提供无冲突解决方案。
实施方式提供了具有减少的计算次数的快速解决方案。
实施方式在不使用导致生产延迟的真实物理机器人的情况下在三维虚拟环境中提供解决方案。
图1示出了数据处理系统100的框图,在该数据处理系统100中实施方式可以例如实现为PDM系统,该PDM系统特别地由软件或以其他方式配置成执行如本文描述的处理,以及特别地该实施方式被实现为如本文描述的多个互连和通信系统中的每一个系统。示出的数据处理系统100可以包括处理器102,处理器102连接至二级缓存/桥接器104,二级缓存/桥接器104又连接至本地系统总线106。本地系统总线106可以是例如外围组件互连(PCI)架构总线。在示出的示例中还连接至本地系统总线的是主存储器108和图形适配器110。图形适配器110可以连接至显示器111。
诸如局域网(LAN)/广域网/无线(例如WiFi)适配器112的其他外围设备也可以连接至本地系统总线106。扩展总线接口114将本地系统总线106连接至输入/输出(I/O)总线116。I/O总线116连接至键盘/鼠标适配器118、盘控制器120和I/O适配器122。盘控制器120可以连接至存储装置126,存储装置126可以是任何合适的机器可用或机器可读存储介质,包括但不限于:非易失性硬编码型介质例如只读存储器(ROM)或电可擦除可编程只读存储器(EEPROM);磁带存储装置;以及用户可记录型介质例如软盘、硬盘驱动器和光盘只读存储器(CD-ROM)或数字多功能盘(DVD);以及其他已知的光、电或磁存储装置。
在示出的示例中音频适配器124也连接至I/O总线116,扬声器(未示出)可以连接至音频适配器124用于播放声音。键盘/鼠标适配器118提供用于诸如鼠标、跟踪球、跟踪指示器、触摸屏等的指示装置(未示出)的连接。
本领域普通技术人员将理解,图1中所示的硬件对于特定实现方式可以变化。例如,除了示出的硬件之外或者代替示出的硬件,也可以使用其他外围装置例如光盘驱动器等。仅出于说明目的来提供所示的示例,并且所示的示例不意味着暗含对本公开内容的架构限制。
根据本公开内容的实施方式的数据处理系统可以包括采用图形用户界面的操作系统。该操作系统允许在图形用户界面中同时呈现多个显示窗口,其中每个显示窗口提供不同应用或同一应用的不同实例的接口。图形用户界面中的光标可以由用户通过指示装置来操纵。可以改变光标的位置和/或可以生成诸如点击鼠标按钮的事件以启动期望的响应。
也可以在适当地修改的情况下使用各种商用操作系统中之一例如位于华盛顿的雷德蒙的微软公司的产品Microsoft WindowsTM版本。根据所描述的本公开内容来修改或创建操作系统。
LAN/WAN/无线适配器112可以连接至网络130(并非数据处理系统100的一部分),网络130可以是如本领域技术人员已知的包括因特网的任何公共或专用数据处理系统网络或这些网络的组合。数据处理系统100可以经由网络130与服务器系统140进行通信,服务器系统140也不是数据处理系统100的一部分,但是可以例如实现为单独的数据处理系统100。
用于一个轴x的示例性实施方式/情况的算法步骤
在示例性实施方式中,下面示出了用于确定外轴x的N个关节值X1,...,XN的算法步骤,使得安装在机器人上的工具到达P个目标位置的序列,其中Z1,...,ZP指示P个目标位置。
为了说明的目的,假设该示例性实施方式涉及图2的场景,其中关节值X1,...,XN是旋转台24的旋转角度的值,使得机器人21能够到达待利用机器人焊接工具25加工的部件22上的Z个目标位置23的序列。
算法步骤I):接收输入
接收信息输入,信息输入包括:关于单元布局的三维(“3D”)研究环境的信息(例如,部件、设备、围栏和其他单元信息)、关于目标位置的序列的信息、关于机器人的信息和关于机器人工具的信息、关于外轴的信息和关于轴关节的信息。关于轴关节的信息包括但不限于最小值、最大值、步长、运动类型(例如,同步或并行运动以及不同步或串行运动)和其他相关的轴关节信息。
算法步骤II):生成缓存表
对于机器人工具25需要到达的每个目标位置Z,生成权重因子表(参见示例性表1,也称为缓存表),以表示经由该表存储的缓存信息。
表1
在表1中,X1,...,XN是外轴x的从给定的最小值开始并且以给定的步长达到给定的最大值的N个关节值,即,Xi+1是Xi+给定的步长。在表1中,Ti,j是表示从具有外关节值Xi的目标位置Z-1向前移动到具有外关节值Xj的位置Z机器人和外轴的组合工作量的权重因子。
在该示例性实施方式中,组合工作量Ti,j是从具有外关节值Xi的位置Z-1向前移动到具有外关节值Xj的位置Z机器人和外轴的持续时间。在其他实施方式中,表示工作量的权重因子Ti,j可以基于周期时间、能量消耗、运动、其他相关的工业工作量量度及其任何组合。
在外轴与机器人之间的组合运动不同步(也称为“串行”)的情况下,Ti,j是外轴运动的持续时间加上机器人运动的持续时间。在轴与机器人之间的组合运动同步(也称为“并行”)的情况下,Ti,j是机器人和外轴一起并行移动的持续时间。
在实施方式中,持续时间值Ti,j经由模拟技术例如经由RRS模拟进行测量。在机器人无法到达目标位置的情况下,返回的Ti,j值是不适用(“N/A”)。同样在机器人到达该位置但发生冲突的情况下,返回的Ti,j值为N/A。
下面的表2是用于第一目标位置Z=1的权重因子或缓存表的示例。
X<sub>1</sub> | X<sub>2</sub> | X<sub>3</sub> | … | X<sub>N</sub> | |
开始 | T<sub>1,1</sub> | T<sub>1.2</sub> | T<sub>1.3</sub> | … | T<sub>1.N</sub> |
表2
针对P个目标位置中的每一个,生成P个缓存表。
算法步骤III)寻找最优解
针对所有P个生成的缓存表,执行优化算法以寻找使权重因子之和最小化的最优解。
然后,通过在每个目标位置上设置与找到的最优解相对应的外轴的值,应用找到的最优解来确定外轴的关节值的序列。
优化算法的示例包括但不限于模拟退火算法、随机算法、遗传算法和任何其他合适类型的优化算法。
在实施方式中,优化算法的初始扰动/组合可以是前向或后向局部解。在实施方式中,可以选择随机初始组合。
通过从位置Z1开始直到位置Zp经历P个表来寻找前向局部解。对于用于位置Z1的第一表,即表2,选择最低的权重因子Ti,j。然后,对于任何其他表,仅从相关行中选择最低的Ti,j。例如,如果第一表中最低的Ti,j是T1,3,则在下表中选择第3行中的最低权重因子,依此类推。
类似地,通过从位置Zp开始直到位置Z1经历P个表来寻找后向局部解。对于用于位置Zp的第一表,选择最低的权重因子Ti,j。然后,对于任何其他表,仅从相关列中选择最低的Ti,j。例如,如果第一表中最低的Ti,j是T2,6,则在下表中选择第2列中的最低权重因子,依此类推。
下面的表3至表6示出了用于寻找局部前向解和局部后向解的数字示例。表3至表6的第一行和第一列是外轴的可能的关节值(即表示例如旋转台的角度的10、20、30、40、50,步长10,最小值10,最大值50)。在表3至表6的单元中是,测量用于到达四个Z=1、2、3、4目标位置23的机器人21和旋转台24的运动持续时间的权重因子值(假设轴24与机器人21之间不同步运动)。
对于位置Z=1的表3
对于位置Z=2的表4
对于位置Z=3的表5
对于位置Z=4的表6
前向局部解是:LocZ=1(X=10)→LocZ=2(X=40)→LocZ=3(X=10)→LocZ=4(X=30)。前向局部解的总时间是1.1+0.3+0.03+0.61=2.04秒。
后向局部解是:LocZ=1(X=40)→LocZ=2(X=40)→LocZ=3(X=20)→LocZ=4(X=40)。后向局部解的总时间是1.8+0.03+0.3+0.1=2.23秒。
从上述局部解出发,执行合适的优化算法以找到最优解。合适的优化算法在扰动列表上工作,并且通过考虑计算的权重因子表来对它们进行评估。
具有不同数字输入值的另一示例实施方式在下面的表7和表8中被示出,表7和表8示出了测量从一个位置到另一个位置的Δ时间的示例,每个周期具有不同的外轴值。表7示出了具有三个缓存表loc1、loc2、loc3的退火算法的示例性代码输入。表8示出了输出日志文件的文本,其中找到的最优解是具有最小总持续时间0.88的最后一行。
在表7中,矢量loc1表示从位置“Home”到位置“loc1”(具有外轴关节的所有可能值(即0、1、2、3))的缓存表。在表7中,矢量loc2表示从位置loc1到位置loc2(具有外轴关节的所有可能值)的缓存表。
表7
表8
用于两个轴x,y的示例性实施方式/情况的算法步骤
上述示例性实施方式解决了一个单外轴x的情况场景,其中,对于P个目标位置中的每一个,仅生成一个缓存表。
以下示例性实施方式示出了两个外轴x,y的情况场景。图3和图4分别示出了具有两个外轴的机器人的第一和第二示例性情况场景的示意图。
在图3中,存在工业机器人21和部件22,工业机器人21的基部31沿着移动轨道32移动,并且部件22通过转台33移动。两个外轴x,y是移动轨道32的轴35和转台33的轴34。
在图4中,存在工业机器人21和部件45,工业机器人21的基部31被固定,并且部件45由转台43根据转台43的不同外轴x,y 42、44而移动。
在一个单轴的情况场景下,对于每个目标位置,生成单个缓存表,其中下面的表9示出了对于位置Z的缓存表的一般表示。
表9
在两个轴的情况下,对于P个目标位置Z1,...,ZP中的每一个,生成上面类型表9的若干个缓存表。通过X1,...,XN表示轴x的可能的N个关节值。通过Y1,...,YM表示轴y的可能的M个关节值。
例如,假设轴y的可能的关节值是3个,分别为0、10、20。对于每个位置Z,然后生成如表9之一的九个权重因子表。更具体地:
1.从Y=0到Y=0的缓存表,
2.从Y=0到Y=10的缓存表,
3.从Y=0到Y=20的缓存表,
4.从Y=10到Y=0的缓存表,
5.从Y=10到Y=10的缓存表,
6.从Y=10到Y=20的缓存表,
7.从Y=20到Y=0的缓存表,
8.从Y=20到Y=10的缓存表,
9.从Y=20到Y=0的缓存表,
在实施方式中,首先移动异步轴/轴线,并且然后才移动具有同步轴/轴线的机器人。
每个外轴具有自己的输入(例如最大值、最小值、步长、同步运动/异步运动)。在实施方式中,用户可以有利地指定是否仅优化两个轴中的一个并且将另一轴固定在预定义值。
因此,为了到达位置Z,机器人应当从位置Z-1向前驱动到位置Z。将通过将x轴从其先前值(用于位置Z-1)移动到其新值(用于位置Z)来完成。
例如:
位置Z-1使用X=10
位置Z使用X=25
轴将通过15个单位从10移动到25,并且机器人关节也将移动。
在另一示例中,存在HOME(X=0,Y=0),存在两个位置Loc1、Loc2,存在用于X的两个值:0,10,存在用于Y的两个值:0,10。从HOME到Loc1以及到Loc2的所有可能的关节值如下:
HOME->Loc1(x=0,y=0)->Loc2(x=0,y=0)
HOME->Loc1(x=0,y=0)->Loc2(x=10,y=0)
HOME->Loc1(x=0,y=0)->Loc2(x=10,y=10)
HOME->Loc1(x=0,y=0)->Loc2(x=0,y=10)
HOME->Loc1(x=10,y=0)->Loc2(x=0,y=0)
HOME->Loc1(x=10,y=0)->Loc2(x=10,y=0)
HOME->Loc1(x=10,y=0)->Loc2(x=10,y=10)
HOME->Loc1(x=10,y=0)->Loc2(x=0,y=10)
HOME->Loc1(x=10,y=10)->Loc2(x=0,y=0)
HOME->Loc1(x=10,y=10)->Loc2(x=10,y=0)
HOME->Loc1(x=10,y=10)->Loc2(x=10,y=10)
HOME->Loc1(x=10,y=10)->Loc2(x=0,y=10)
HOME->Loc1(x=0,y=10)->Loc2(x=0,y=0)
HOME->Loc1(x=0,y=10)->Loc2(x=10,y=0)
HOME->Loc1(x=0,y=10)->Loc2(x=10,y=10)
HOME->Loc1(x=0,y=10)->Loc2(x=0,y=10)
图5示出了根据所公开的实施方式的用于根据目标位置的序列确定至少一个外轴的关节值序列的方法的流程图500。这样的方法可以例如通过上述图1的系统100来执行,但是下文处理中的“系统”可以是被配置成执行所描述的处理的任何装置。根据位置序列,由工具和机器人顺序地执行机器人任务,由此至少一个外轴的关节运动使工具能够到达至少一个目标。
在动作505处,接收信息输入,信息输入包括机器人的虚拟表示、工具的虚拟表示、关于目标序列的信息、关于外轴的关节的运动学信息以及关于机器人与外轴之间的组合运动的类型的信息。在实施方式中,信息输入还包括单元布局的虚拟表示和/或部件的虚拟表示。在实施方式中,关于轴关节的运动学信息包括但不限于最小值、最大值、步长、默认运动学设置以及它们的任何组合。
在动作510处,针对每个目标生成至少一个权重因子表,所述至少一个权重因子表根据机器人与外轴之间的组合运动的类型,针对轴关节运动的每个可用配置来表示机器人运动和轴运动的组合工作量。在实施方式中,可用配置是无静态冲突的配置。在实施方式中,机器人轴运动类型是同步的或异步的。
在动作515处,通过模拟在机器人和外轴的运动期间使工具能够到达目标序列的无冲突轨迹来确定所述至少一个权重因子表的有效权重因子值。在实施方式中,权重因子的示例包括但不限于:持续时间、周期时间、能量消耗、模拟轨迹的关节运动及其任何组合。
在动作520处,通过从权重因子表中找到使工具到达目标位置序列的其相对应的权重因子之和最小化的关节值序列,来确定外轴的关节值序列。在实施方式中,通过执行优化算法来确定所求解的关节值序列。优化算法的示例包括但不限于模拟退火算法、随机算法和遗传算法。在实施方式中,优化算法的初始扰动/组合可以是前向或后向局部解,或者可以被随机选择。
在实施方式中,通过考虑单元的几何模型、关于机器人的信息和关于机器人路径的信息来完成动态和/或静态冲突检查。
在实施方式中,在存在多个外轴的情况下,然后在动作510处根据所述多个外轴的可能运动组合针对每个目标位置确定多个权重因子表。
处理器102、存储器108和在处理器102上运行的程序中的一个或更多个经由本地系统总线106、适配器112、网络130、服务器140、接口114、I/O总线116、盘控制器120、存储装置126等中的一个或更多个接收输入。如本文使用的,接收可以包括从存储装置126检索、从另一装置或过程接收、经由与用户的交互接收、或以其他方式接收。
当然,本领域技术人员将认识到,除非由操作序列明确指出或要求,否则上述处理中的某些步骤可以被省略、同时地执行或顺序地执行或者以不同的顺序执行。
本领域技术人员将认识到,为了简单和清楚起见,本文中并未示出或描述适于与本公开内容一起使用的所有数据处理系统的全部结构和操作。而是,仅示出和描述了本公开内容特有的或者理解本公开内容所必需的数据处理系统的结构和操作。数据处理系统100的构造和操作的其余部分可以符合本领域已知的各种当前实现方式和实践中的任何实现方式和实践。
重要的是要注意,虽然本公开内容包括在全功能系统的背景下的描述,但是本领域技术人员将理解,本公开内容的机构的至少部分能够以包含在各种形式中的任何形式的机器可用、计算机可用或计算机可读介质内的指令的形式来分布,并且无论实际上实施分布所使用的指令或信号承载介质或存储介质的特定类型如何,本公开内容都同等地适用。机器可用/可读或计算机可用/可读介质的示例包括:非易失性硬编码类型介质例如只读存储器(ROM)或电可擦除可编程只读存储器(EEPROM),以及用户可记录型介质例如软盘、硬盘驱动器和光盘只读存储器(CD-ROM)或数字多功能盘(DVD)。
尽管已经详细描述了本公开内容的示例性实施方式,但是本领域技术人员将理解,在不脱离本公开内容的最广义形式的精神和范围的情况下,可以对本文公开的内容进行各种变化、替换、变型和改进。
本申请的描述决不应当阅读为暗含任何特定元件、步骤或功能为权利要求范围内所必须包括的必要元件:专利主题的范围仅由所允许的权利要求书来限定。
Claims (20)
1.一种由数据处理系统根据目标位置序列确定至少一个外轴的关节值的序列的方法,由此机器人任务将由工具和机器人顺序地执行,其中,所述至少一个外轴的关节运动使所述工具能够到达所述目标位置中的至少一个,所述方法包括以下步骤:
a)接收信息输入,所述信息输入包括所述机器人的虚拟表示、所述工具的虚拟表示、关于所述目标位置序列的信息、关于所述至少一个外轴的关节的运动学信息、关于所述机器人与所述至少一个外轴之间的运动类型的信息;
b)针对每个目标位置生成至少一个权重因子表,所述至少一个权重因子表根据所述机器人与所述外轴之间的组合运动的类型,针对轴关节运动的每个可用配置来表示机器人运动和轴运动的组合工作量;
c)通过模拟在所述机器人和所述外轴的运动期间使所述工具能够到达所述目标位置序列的无冲突轨迹,来确定所述至少一个权重因子表的有效权重因子值;
d)通过从所述权重因子表得出使所述工具到达所述目标位置序列的关节值序列相对应的有效权重因子值之和最小化的关节值的序列,来确定所述至少一个外轴的所述关节值的序列。
2.根据权利要求1所述的方法,其中,通过执行优化算法来得出步骤d)的确定的关节值的序列。
3.根据权利要求2所述的方法,其中,所述优化算法选自包括以下的组:
模拟退火算法;
随机算法;
遗传算法。
4.根据前述权利要求中任一项所述的方法,其中,步骤a)的所述信息输入还包括单元布局的虚拟表示和/或要通过所述机器人任务加工的部件的虚拟表示。
5.根据前述权利要求1至3中任一项所述的方法,其中,检查步骤b)的所确定的权重因子表的所述轴关节运动是否无静态冲突。
6.根据前述权利要求1至3中任一项所述的方法,其中,在存在多个外轴的情况下,在步骤b)处根据所述多个外轴的可能运动组合针对每个目标位置确定多个权重因子表。
7.根据前述权利要求1至3中任一项所述的方法,其中,所述机器人-轴运动类型是同步的或异步的。
8.根据前述权利要求1至3中任一项所述的方法,其中,所述权重因子选自包括以下的组:
从一个目标位置移动到下一目标位置机器人和外轴的持续时间;
完成机器人任务所需的生产周期时间;
从一个目标位置移动到下一目标位置机器人和外轴的能量消耗;
所述至少一个外轴的关节的运动;
上述的任何组合。
9.根据前述权利要求1至3中任一项所述的方法,其中,关于所述轴关节的所述运动学信息选自包括以下的组:
所述至少一个外轴的关节值的最小值;
所述至少一个外轴的关节值的最大值;
从所述至少一个外轴的一个关节值到达所述至少一个外轴的下一关节值的步长;
关于所述轴关节的运动类型;
上述的任何组合。
10.一种数据处理系统,包括:
处理器;以及
可访问存储器,所述数据处理系统特别地被配置成:
a)接收信息输入,所述信息输入包括机器人的虚拟表示、工具的虚拟表示、关于目标位置序列的信息、关于至少一个外轴的关节的运动学信息、关于所述机器人与所述至少一个外轴之间的运动类型的信息;
b)针对每个目标位置生成至少一个权重因子表,所述至少一个权重因子表根据所述机器人与所述外轴之间的组合运动的类型,针对轴关节运动的每个可用配置来表示机器人运动和轴运动的组合工作量;
c)通过模拟在所述机器人和所述外轴的运动期间使所述工具能够到达所述目标位置序列的无冲突轨迹,来确定所述至少一个权重因子表的有效权重因子值;
d)通过从所述权重因子表得出使所述工具到达所述目标位置序列的关节值序列相对应的有效权重因子值之和最小化的关节值的序列,来确定所述至少一个外轴的所述关节值的序列。
11.根据权利要求10所述的数据处理系统,其中,通过执行优化算法来得出项d)的所确定的关节值的序列。
12.根据权利要求10或11所述的数据处理系统,其中,在存在多个外轴的情况下,在项b)处根据所述多个外轴的可能运动组合针对每个目标位置确定多个权重因子表。
13.根据权利要求10或11所述的数据处理系统,其中,所述机器人-轴运动类型是同步的或异步的。
14.根据权利要求10或11所述的数据处理系统,其中,所述权重因子选自包括以下的组:
从一个目标位置移动到下一目标位置机器人和外轴的持续时间;
完成机器人任务所需的生产周期时间;
从一个目标位置移动到下一目标位置机器人和外轴的能量消耗;
所述至少一个外轴的关节的运动;
上述的任何组合。
15.根据权利要求10或11所述的数据处理系统,其中,关于所述轴关节的所述运动学信息选自包括以下的组:
所述至少一个外轴的关节值的最小值;
所述至少一个外轴的关节值的最大值;
从所述至少一个外轴的一个关节值到达所述至少一个外轴的下一关节值的步长;
关于所述轴关节的运动类型;
上述的任何组合。
16.一种非暂态计算机可读介质,所述非暂态计算机可读介质编码有可执行指令,所述可执行指令当被执行时使一个或更多个数据处理系统执行以下操作:
a)接收信息输入,所述信息输入包括机器人的虚拟表示、工具的虚拟表示、关于目标位置序列的信息、关于至少一个外轴的关节的运动学信息、关于所述机器人与所述至少一个外轴之间的运动类型的信息;
b)针对每个目标位置生成至少一个权重因子表,所述至少一个权重因子表根据所述机器人与所述外轴之间的组合运动的类型,针对轴关节运动的每个可用配置来表示机器人运动和轴运动的组合工作量;
c)通过模拟在所述机器人和所述外轴的运动期间使所述工具能够到达所述目标位置序列的无冲突轨迹,来确定所述至少一个权重因子表的有效权重因子值;
d)通过从所述权重因子表得出使所述工具到达所述目标位置序列的关节值序列相对应的有效权重因子值之和最小化的关节值序列,来确定所述至少一个外轴的所述关节值的序列。
17.根据权利要求16所述的非暂态计算机可读介质,其中,通过执行优化算法来得出项d)的所确定的关节值的序列。
18.根据权利要求16或17所述的非暂态计算机可读介质,其中,在存在多个外轴的情况下,在项b)处根据所述多个外轴的可能运动组合针对每个目标位置确定多个权重因子表。
19.根据权利要求16或17所述的非暂态计算机可读介质,其中,所述机器人-轴运动类型是同步的或异步的。
20.根据权利要求16或17所述的非暂态计算机可读介质,其中,所述权重因子选自包括以下的组:
从一个目标位置移动到下一目标位置机器人和外轴的持续时间;
完成机器人任务所需的生产周期时间;
从一个目标位置移动到下一目标位置机器人和外轴的能量消耗;
所述至少一个外轴的关节的运动;
上述的任何组合。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2017/000811 WO2019002898A1 (en) | 2017-06-30 | 2017-06-30 | METHOD AND SYSTEM FOR DETERMINING JOINT VALUES OF AN EXTERNAL AXIS FOR ROBOT MANUFACTURE |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110300644A CN110300644A (zh) | 2019-10-01 |
CN110300644B true CN110300644B (zh) | 2022-06-10 |
Family
ID=64741198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780086858.6A Active CN110300644B (zh) | 2017-06-30 | 2017-06-30 | 用于确定机器人制造中外轴的关节值的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11207778B2 (zh) |
EP (1) | EP3645217A4 (zh) |
CN (1) | CN110300644B (zh) |
WO (1) | WO2019002898A1 (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4087841B2 (ja) * | 2004-12-21 | 2008-05-21 | ファナック株式会社 | ロボット制御装置 |
WO2009103335A1 (en) * | 2008-02-20 | 2009-08-27 | Abb Research Ltd. | Method and system for optimizing the layout of a robot work cell |
US20110153080A1 (en) * | 2009-12-22 | 2011-06-23 | Siemens Product Lifecycle Management Software Inc. | Method and apparatus for industrial robotic pathscycle time optimization using fly by |
WO2012143044A1 (en) * | 2011-04-19 | 2012-10-26 | Abb Research Ltd. | An industrial robot having a kinematically redundant arm and a method for controlling the robot |
SG10201502615QA (en) * | 2011-09-28 | 2015-05-28 | Universal Robots As | Calibration and programming of robots |
JP6083145B2 (ja) * | 2012-07-31 | 2017-02-22 | セイコーエプソン株式会社 | ロボットの制御装置、およびロボット |
US9922144B2 (en) * | 2014-03-26 | 2018-03-20 | Siemens Industry Software Ltd. | Energy and cycle time efficiency based method for robot positioning |
US20150278404A1 (en) * | 2014-03-26 | 2015-10-01 | Siemens Industry Software Ltd. | Energy and cycle time efficiency based method for robot positioning |
JP6475435B2 (ja) * | 2014-07-30 | 2019-02-27 | 川崎重工業株式会社 | ロボット制御プログラム生成方法および装置 |
US9298863B2 (en) * | 2014-07-31 | 2016-03-29 | Siemens Industry Software Ltd. | Method and apparatus for saving energy and reducing cycle time by using optimal robotic joint configurations |
-
2017
- 2017-06-30 EP EP17915482.8A patent/EP3645217A4/en active Pending
- 2017-06-30 US US16/487,192 patent/US11207778B2/en active Active
- 2017-06-30 CN CN201780086858.6A patent/CN110300644B/zh active Active
- 2017-06-30 WO PCT/IB2017/000811 patent/WO2019002898A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP3645217A1 (en) | 2020-05-06 |
WO2019002898A1 (en) | 2019-01-03 |
US20210129332A1 (en) | 2021-05-06 |
US11207778B2 (en) | 2021-12-28 |
EP3645217A4 (en) | 2021-01-13 |
CN110300644A (zh) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9056394B2 (en) | Methods and systems for determining efficient robot-base position | |
US9469029B2 (en) | Method and apparatus for saving energy and reducing cycle time by optimal ordering of the industrial robotic path | |
EP2923805A2 (en) | Object manipulation driven robot offline programming for multiple robot system | |
US10414047B2 (en) | Method and a data processing system for simulating and handling of anti-collision management for an area of a production plant | |
CN107065790B (zh) | 用于确定虚拟环境中的虚拟机器人的配置的方法和系统 | |
US9298863B2 (en) | Method and apparatus for saving energy and reducing cycle time by using optimal robotic joint configurations | |
EP2942685B1 (en) | Method for robotic energy saving tool search | |
US10556344B2 (en) | Method and system for determining a sequence of kinematic chains of a multiple robot | |
EP2998078A1 (en) | Method for improving efficiency of industrial robotic energy consumption and cycle time by handling orientation at task location | |
EP2924621A1 (en) | Energy and cycle time efficiency based method for robot positioning | |
US20220019939A1 (en) | Method and system for predicting motion-outcome data of a robot moving between a given pair of robotic locations | |
US11370120B2 (en) | Method and system for teaching a robot in reaching a given target in robot manufacturing | |
EP3546138A1 (en) | Method and system to determine robot movement instructions. | |
EP2990164B1 (en) | Method and apparatus for automatic and efficient location generation for cooperative motion | |
CN110300644B (zh) | 用于确定机器人制造中外轴的关节值的方法和系统 | |
US9207667B2 (en) | Automatic generation of robotic processes for symmetric products |
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 |