CN110861080B - 用于对机器人编程的方法以及计算装置和计算机程序 - Google Patents
用于对机器人编程的方法以及计算装置和计算机程序 Download PDFInfo
- Publication number
- CN110861080B CN110861080B CN201910757246.6A CN201910757246A CN110861080B CN 110861080 B CN110861080 B CN 110861080B CN 201910757246 A CN201910757246 A CN 201910757246A CN 110861080 B CN110861080 B CN 110861080B
- Authority
- CN
- China
- Prior art keywords
- program
- robot
- database
- programming
- computing device
- 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
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/1671—Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
-
- 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/1658—Programme controls characterised by programming, planning systems for manipulators characterised by programming language
-
- 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
-
- 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/408—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 data handling or data format, e.g. reading, buffering or conversion of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/51—Source to source
-
- 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/36—Nc in input of data, input key till input tape
- G05B2219/36231—Translate, convert machine independent to machine dependent program
-
- 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/50—Machine tool, machine tool null till machine tool work handling
- G05B2219/50391—Robot
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Numerical Control (AREA)
- Programmable Controllers (AREA)
Abstract
本申请涉及一种用于对机器人(10)编程的方法,所述机器人用于执行作业,其中,所述机器人(10)配备有可编程的控制单元(70)。所述方法的特征在于,利用统一的程序生成器(60)创建机器人程序,其中,所述程序生成器(60)以如下方式将一个或多个关键词序列转换为对于所述可编程的控制单元(70)有效的程序代码,即,在转换相应的序列的关键词时,所述程序生成器(60)调用编程规则集合中的信息,所述程序生成器(60)以预先给定的语法从所述编程规则集合中取回与相应的机器人类型匹配的程序代码,并且其中,所述程序生成器(60)将接收到的程序代码段合成为完成的程序代码。
Description
技术领域
本申请涉及机器人、无人机和要完成特定任务的其它可编程装置的编程技术领域。特别是涉及在制造产品时使用的工业机器人的自动编程。
背景技术
对于制造用机器人,涉及执行一个或多个工作步骤。对于复杂的制造,例如在车辆的车身制造中,要执行许多工作步骤。作为示例,提到部件拾取、部件保持/定位、部件粘贴、部件熔焊、部件焊接、部件铆合、部件铣削、部件冲压、部件压铸、部件深冲等等。对于这些任务,存在专门的机器人,例如拾取机器人、熔焊机器人、铆合机器人、粘贴机器人等等。应当明确指出,术语制造用机器人也包括在质量保证中使用的机器人。在此,涉及为了进行检查对在制造中装配的不同的部件/组件进行测量。设置有对应的测量装置的机器人经常完成高精度的测量。
用于向离线生成的机器人程序中输入SPS操作数和宏命令的数据接口目前是手动的。由此产生高错误率,其结果是在调试和设备起动时在制造车间中机器人程序的大的校正开销。根据现有技术,部分在由测试工具支持的情况下,在设备上对机器人程序进行手动校正。在复杂的制造中,使用许多工业机器人与大量不同的应用设备。编程开销对应地大。在手动创建程序时,误输入也不可避免。如果给予程序员完全的自由,则对于相同的编程任务,形成各种各样的程序变体。这些程序变体难以进行比较,并且相应的后续的程序员难以理解并且进一步处理这些不同的变体。
但是即使遵守各种各样的规定,程序员也难以理解并且进一步处理不同的变体。在大的企业集团中,使用来自不同的机器人制造商的不同的机器人类型,对于其分别存在特殊的规定。对于程序员来说,几乎不可能记住所有规定并且遵守所有这些规定。然后,在验收创建的程序时,被证实程序不符合规定,并且必须费力地进行返工,以使程序符合规定的形式。需要大的时间开销来进行处理,因为机器人部分地仅在周末可用于这些校正和测试。然后,校正的执行还又与程序员有关,并且部分需要重复进行校正。无论如何,在制造设备的启动阶段,这需要增加的人力投入。
特别是,在对机器人编程时,需要没有解释余地的统一。这在本发明的过程中已被认识到。
DE 10 2016 216 409 A1公开了一种具有处理装置的设备,用于控制用户和家电设备之间的交互。处理装置被配置为检测用户和设备之间的自然语言对话的开始,并且基于对话控制家电设备。
DE 10 2016 011 020 A1公开了一种梯形图监视设备,其在监视器上显示梯形图程序的运行状况,梯形图程序在安装到CNC中的可编程控制器上执行。对添加到梯形图程序的电路的注释设置用于显示关于CNC的运行状况的信息的区域,在该区域中反映梯形图程序的运行状况,并且显示示出CNC的运行状况的显示数据。
DE 296 05 700 U1公开了一种用于翻译对机器人进行控制的按照DIN66025的程序指令的设备,这些程序指令以部分程序的形式存在,这些部分程序又由程序指令的集合形成。
DE 100 21 389 A1公开了一种用于对系统进行控制的方法。为了简化并且方便系统的使用,设置为,与可使用的应用装置对应地解释输入的控制信息,并且与解释结果对应地控制应用装置。
EP 1 571 514 A1公开了一种用于操作和控制技术过程的系统,具有被构造为测量和控制设备的至少一个组件以及控制程序,所述组件借助电导线与过程的传感器和执行器连接,其中,测量和控制单元、操作和观察组件以及相应的可选地设置的数据库、过程文档及必要时过程自动化的其它组件通过数据通道和控制程序彼此连接。
EP 1 355 208 A1公开了一种用于自动化技术过程和/或试验的系统,其中设置有测量和控制单元、包含视觉化对象和控制模块的至少一个程序库以及控制所述系统的软件,所述测量和控制单元借助测量和控制通道与过程或者试验单元的传感器和执行器连接。所述系统使得使用者能够在没有编程技术的知识的情况下开发应用。
发明内容
本发明要解决的技术问题是,找到一种方案,通过这种方案能够统一编程。上述技术问题通过根据本发明的用于对机器人编程的方法、根据本发明的在所述方法中使用的计算装置以及根据本发明的计算机程序来解决。
下面对这些措施的描述包含本发明的有利的扩展方案和改进方案。
解决方案在于用于对机器人编程的方法,机器人用于执行作业,其中,机器人配备有可编程的控制单元,机器人控制程序要在机器人上运行。根据本申请,通过机器利用统一的程序生成器创建机器人程序,其中,程序生成器将一个或多个关键词序列,转换为对于可编程的控制单元有效的程序代码。这以如下方式进行,即,在利用相应的序列的相应的关键词进行转换时,程序生成器调用编程规则集合中的信息,程序生成器以预先给定的语法从编程规则集合中取回与相应的机器人类型匹配的程序代码。程序生成器将接收到的程序代码段合成为完成的程序代码。对关键词序列的这种处理产生完成的程序代码。在此,关键词序列可以由程序员手动创建。附加地,程序员还必须对特定关键词进行特定参数说明。
所述方法针对机器人编程提供显著的优点。关键词本身被最准确地指定,并且程序员从表格中取出关键词。错误源可能还在于给出了错误的关键词或者错误的参数。但是关键词专门与机器人技术的理解协调,并且用作宏和操作数、特别是SPS宏和SPS操作数的占位符,并且使得能够以面向功能的方式启发式地可靠地输入到机器人离线程序(OLP)中。通过结合编程规则集合的合适的算法,从关键词序列形式的原始程序,变成能够应用的符合标准的机器人程序。因此避免所有仅在手动编程时存在的错误源。
通过将可启发式地简单地使用的功能性关键词与基于规则的算法结合,可以针对机器人应用自动化地进行程序创建。
在本领域中使用这种编程方法的情况下,还存在其它优点:
·创建机器人程序的速度提高
·所有使用者统一以相同的方式对程序进行编程
·程序的质量提高
·再加工的开销减少
·个体化的错误明显减少
·可以在更早的时间点进行设备验收–机器人验收。
同样有利的是,编程规则集合被设计为,使得程序生成器在程序代码中插入用于描述功能的一个或多个注释。程序由此更容易阅读并且更好地进行记录。
对于大的集团公司,在不同的国家存在不同的驻地。这里有利的是,OLP生成器以选择的多种语言中的一些语言插入所述一个或多个注释,使得在相应的驻地能够理解注释。
此外,有利的是,作为数据库实施编程规则集合,数据库存储在计算机上,在该计算机上创建用于控制机器人的程序,或者安装在与计算机连接的中央计算机上。计算机不一定位于机器人附近。计算机可以放置在程序员编写离线程序的办公室中。稍后将完成的程序传输到机器人的可编程的控制设备。数据库可以安装在相应的计算机本地,或者可以安装在与办公计算机连接的中央计算机上。
对于所述方法,一个优选实施方式设置为,在调用数据库中的信息时,在请求中向数据库发送关键词,在存在参数说明的情况下,还发送参数说明,关键词用作用于调用数据库中的信息的索引信息。可以说,关键词对数据库进行寻址。由数据库对这些信息进行处理,使得数据库回报完成的程序段。在一个实施方式中,数据库可以被组织为关联存储器CAM(Content Addressed Memory,内容寻址存储器)。
对于用于执行所述方法的步骤的对应的计算装置,有利的是,计算装置具有与编程规则集合连接的计算单元,编程规则集合作为数据库实施,其中,计算装置被配置为,向数据库发送描述控制过程的关键词的序列,并且从数据库中取回对于关键词的序列有效的程序代码。
对应的优点适用于对应地设计为用于执行所述方法的步骤的计算装置。
数据库可以安装在计算装置本身中。
为了更好地对数据库进行控制,有利的是,计算装置被配置为与外部的中央计算机通信,数据库安装在中央计算机上。
本发明还可以利用计算机程序来实现,所述计算机程序被设计为,在计算装置中运行时,执行根据本发明的方法的步骤。
附图说明
在附图中示出了本发明的实施例,下面根据附图详细说明本发明的实施例。
附图中:
图1a至图1e示出了制造机器人的典型视图,该制造机器人专门用于在一个位置拾取部件并且将部件放置在另一个位置;
图2示出了用于实现自动程序创建的概念视图;
图3示出了包含拾取机器人的编程所需的关键词序列的列表的文本文档;
图4a示出了包含完成实现的程序的文本文档的第一部分,该完成实现的程序具有用于在图3中示出的不同的序列的程序代码;以及
图4b示出了包含完成实现的程序的文本文档的第二部分,该完成实现的程序具有用于在图3中示出的不同的序列的程序代码。
具体实施方式
本说明书示出了根据本发明的公开的原理。因此,应当理解,本领域技术人员能够想到不同的布置,这些布置虽然在这里未明确描述,但是也应当体现根据本发明的公开的原理,并且同样应当在本发明的范围内得到保护。
在制造复杂的产品时,使用各种各样的专门类型的制造机器人。作为示例,考虑车辆车身的生产线。在那里,例如使用用于以下作业的专门的机器人:拾取、定位、放置、接合、熔焊、粘贴、拧紧、铆合、焊接、铣削、压铸、铆焊(铆接)、切割、激光熔焊、填充、测量等等。这种列举是一般性的,而不声称是完整的。对应地,必须对许多专门的机器人进行编程,以便能够以点精度执行作业。
图1a至图1e示出了机器人10的视图,机器人10在制造产品时用于拾取部件。机器人10同样用于将拾取的部件转移到另一个位置,部件被保持在该位置,以便通过另一个机器人安装在形成的产品上,或者部件仅简单地被放置在该位置。在第二种情况下,拾取机器人用于材料馈送的目的。示出了典型的5轴机器人臂12。在机器人臂12上安装有拾取钳14。通过圆形示出了机器人臂12的不同的轴。轴的数量对于本申请不起重要作用,本发明可以在任意的多轴机器人类型中使用。目前,在市场上有一轴到十二轴机器人,这些机器人都可以使用。
作为示例描述对拾取机器人的编程。向程序员提供关键词概览。在关键词概览中列举关键词和其含义。详细考虑在材料馈送中使用拾取机器人10的示例。其作业可以划分为在图1a至1e中示出的不同的阶段。首先,将机器人10初始化,并且在此,其移动到初始位置。在图1a中示出了初始位置。在此,拾取钳14打开。之后,机器人10向拾取位置移动。在图1b中可以看到拾取位置。之后,为了拾取部件16,必须对机器人10进行编程。在图1c中示出了拾取钳14对应地闭合。之后是机器人位置向目标位置移动的过程。在图1d中示出了目标位置。将部件16放置在那里。这在图1e中通过拾取钳14再次打开示出。最后,拾取机器人10又移动到初始位置,初始位置在图1a中已经可以看到。
在图1中未详细示出机器人10的电气和电子装备。可编程控制器SPS负责机器人的控制,可编程控制器SPS通常被定位在机器人10旁边或者附近。在图2中对可编程控制器设置了附图标记70。也可以在一个开关柜中放置控制多个机器人的同样多个可编程控制器,然后将机器人全部连接到该开关柜。为了执行希望的作业,必须对机器人10进行编程。这通常远离可编程控制器利用办公计算机进行。
图2示出了用于根据本发明的设计实现自动程序创建的计算机的布置。附图标记30表示办公计算机,程序员在办公计算机上检查机器人程序的创建。在办公计算机30上安装有程序生成器60,程序生成器60用于进行运行。首先,程序员针对不同的控制过程创建关键词的多个序列。程序员从指定的表中取出关键词,并且添加需要的参数。在此,形成按照一定的顺序排列的关键词的多个序列。程序生成器60对该顺序进行分析,并且向中央计算机40发送不同的关键词序列。在中央计算机40上安装有数据库50。在数据库50中包含编程规则集合。在其中还通过关键词找到与公司的编程准则对应的合适的兼容的程序代码段,将这些程序代码段从数据库50中取出并且发送回办公计算机30。程序生成器60将接收到的代码段合成为完成的程序代码。还可以在办公计算机30中针对个体的特殊性对完成的程序代码进行个体处理。这由程序员手动执行。将完成的程序传输到工业机器人10的可编程控制装置70。
也就是说,编程以三个步骤进行:
在步骤S1中,程序员输入适合用于编程的关键词。为此,向程序员提供关键词概览。在关键词概览中列出了用于拾取器(Greifer)的关键词和其含义。
从表中提取:
对于在图1中示出的关于材料馈送的应用的第一阶段,创建如下关键词的序列。其是初始化阶段:
PTP VB=100% VE=100% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]
等待序列开始
--G_AUF 1,M2--
--BTK 2--
PTP VB=100% VE=100% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]
第二阶段(参见图1b)涉及机器人臂12到拾取位置的移动。
为了实现这一点,程序员创建如下关键词的序列:
--取出位置--
--BTK 1--
--G_ZU 1--
PTP VB=100% VE=100% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]
在此,表述“取出位置”不对应于任何关键词,而是对应于期望的保留的注释。
第三阶段(参见图1c)涉及机器人臂12到放置位置的移动。
但是,为此不手动创建关键词序列,而是仅进行对应的位置给出,参见图3中的序列2:。
2:PTP VB=100% VE=100% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]{Pno1=1,Pno2=-1,SPSno=-1};1:
在机器安全性方面,通过OLP程序生成器60根据先前开启的上级可编程控制器(SPS)和自己的条件、例如部件检查(BTK),向完成的程序中插入行驶条件。以程序代码实现的示例为:
FB PSPS=M1&M30&M32&M95
在图1d中还示出了放置拾取的部件20的阶段。下面列出了对应的关键词的序列:
---M1--
--放置位置--
--G_AUF 1--
PTP VB=100% VE=100% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]
--等到M2--
--M2--
PTP VB=100% VE=100% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]
为了驶向初始位置,又在没有关键词序列的情况下自动产生程序部分。顺序始终是相同的并且是指定的。下面的源自准则的示例示出了用于驶向初始位置的完成生成的代码的显示:
--整体工作完成通知--
PTP VB=100% VE=0% ACC=100% RobWzg=0 Base=0 SPSTrig=5[1/100s]P
FB PSPS=接通
A23=断开
等到M2
SPSMAKRO15=接通
等到E23
A23=接通
FB PSPS=M2&M30&M31&M95
PTP VB=100%VE=0% ACC=100% RobWzg=0 Base=0 SPSTrig=0[1/100s]P
FB PSPS=接通
t1(接通)=停止
t2(接通)=t1[1/10秒]
t2(接通)=停止
在图3中示出了在图1a至图1e中示出的示例的完成的关键词序列。图3示出了利用文本编辑器生成的标题为“序列100”的文档。其中总共列出了9个序列。在此,仅序列1:、3:、6:和7:涉及前面描述的由程序员编制的关键词序列。其它序列由OLP生成器程序60自动添加。将该文档称为序列,因为该文档已经不仅仅包含关键词序列。序列已经是机器人编程中的所谓的协同程序。
然后,在步骤S1中针对各个控制阶段编制关键词序列之后,将关键词序列转换为真正的程序代码。在此,形成基本程序,基本程序包含面向应用的编程语言的程序代码。其涉及SPS宏和SPS操作数,SPS宏和SPS操作数在可编程控制器的编程中也是已知的。这在步骤S2中借助数据库50和算法60进行。
这种转换与程序员无关地由机器进行。为此,使用具有由使用机器人的公司创建的编程准则的转换工具。该准则包含根据公司规定对于编程应当遵守的规则。这例如是遵守安全规定所需的。但是这也用于保持程序可读并且容易理解。对于在也还使用不同的语言的不同的地点使用工业机器人的大的企业集团来说,这是一个关键点。然后,通过编程的这种统一,也可以避免各种各样的错误编程。
在编程准则中列出的规则的示例是用于绕过障碍的规范、用于姿态释放或者锁定的规范、用于夹紧反馈和零件控制的规范、用于给出位置和坐标的规范、用于拾取器、释放和标志的规范、用于要使用的插值类型的规范、用于跳转命令的编程的规范、用于给出运动参数的规范、用于子程序和宏的编程的规范和示例、用于序列的编程的规范、用于序列重复的编程的规范、用于初始化阶段的规范、用于技术调用的规范、用于工具更换过程的编程的规范、用于工作完成通知的编程的规范、等等。
示例:
2.利用夹紧组的处理任务的编程
2.1序列的第2点的编程
示例:具有4个夹紧组和2个部件控制的拾取器
2:PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=1 SPSTrig=0[1/100s]
1:FB PSPS=接通 ~在线行驶条件关闭
2.A23=断开 ~保护栅格锁闭
3:t1(接通)=0[1/10秒] ~开始周期时间测量
4:SPS MAKRO50=接通 ~标记初始化
5:A80=接通 ~释放夹具打开/夹紧
6:A15=断开 ~关闭通知“基本姿态”
7:F1=接通 ~预选夹紧组1
8:F2=接通 ~预选夹紧组2
9:F3=接通 ~预选夹紧组3
10:F4=接通 ~预选夹紧组4
11:SPS MAKRO342=!E579&!E580 ~拾取器打开
12:SPS MAKRO340=接通 ~拾取器初始化
13:等到M31&M33&M35&M37 ~询问拾取器打开
14.等到E23 ~没有进入请求
15.A23=接通 ~保护栅格锁闭
16:FB PSPS=E14&E24&E80&M31&M33&M35&M37
4.3序列的最后一点的编程
在相应的序列的最后一点,可以停止用于整个周期时间的对应的计时器,对值进行保存,并且在需要时触发监视时间。
示例:
55:PTP VB=100%VE=0% ACC=100% RobWzg=1 Base=1 SPSTrig=0[1/100s]
1:FB PSPS=接通
2:t1(接通)=停止 ~当前遍历的整个周期时间
3:t2(接通)=t1[1/10秒]
4:t2(接通)=停止
序列
整体工作完成通知
W:PTP VB=100% VE=0% ACC=100% RobWzg=1 Base=1 SPSTrig=5[1/100s]
1:FB PSPS=接通
2:A23=断开 ~保护栅格释放
3:SPS MAKRO15=接通 ~整体工作完成通知
4:等到E23 ~SPS进行行驶释放
5:A23=接通 ~保护栅格锁闭
6:FB PSPS=M30&E80&M95
仅允许在序列结束时调用用于整体工作完成通知的宏15,而不允许在最后一点调用用于整体工作完成通知的宏15!!!如果需要,则必须复制最后一点,然后作为倒数第二点插入。
编程准则可以以数据库的形式在办公计算机30或者在通过网络与办公计算机30连接的中央计算机40上实现。要转换的关键词序列中的相应的关键词用作地址信息,在数据库50中可以在地址信息下找到相关的规范。然后,利用包含在数据库50中的针对关键词和规范的代码示例,进行具有可选的参数说明的关键词的转换。作为在办公计算机30上运行的OLP程序生成器60的一部分的算法将各个代码段合成一个程序。因此,通过进行转换,形成在很大程度上完成的基本程序。还自动生成特定注释行。如果要插入多语言注释,则可以在进行转换之前,在转换器工具的菜单中输入语言选择。
图4a和图4b示出了针对在图3中示出的9个序列完成的程序代码。
显示完成的程序代码的文档具有标题“序列100_生成”。除了程序代码之外,其还包含一些重要的注释行。所有这里提到的示例以及有条件的表述应当理解为不局限于具体地列举的这些示例。因此,例如本领域技术人员知道,示出的流程图、状态转移图、伪代码等,是用于示出基本上存储在计算机可读介质中、因此可以由计算机或者处理器执行的过程的不同的变形。
应当理解,所提出的方法和相关联的装置可以以硬件、软件、固件、专用处理器或者其组合的不同的形式实现。专用处理器可以包括专用集成电路(ASIC)、精简指令集计算机(RISC,Reduced Instruction Set Computer)和/或现场可编程门阵列(FPGA,FieldProgrammable Gate Array)。优选作为硬件和软件的组合来实现所提出的方法和装置。软件优选作为应用程序安装在程序存储装置上。一般涉及具有硬件、例如一个或多个中央单元(CPU)、直接存取存储器(RAM)和一个或多个输入/输出(I/O)接口的基于计算机平台的设备。此外,一般在计算机平台上安装操作系统。这里描述的不同的过程和功能可以是应用程序的一部分或者通过操作系统执行的一部分。
附图标记列表
10 机器人
12 机器人臂
14 拾取钳
20 部件
30 办公计算机
40 中央计算机
50 数据库
60 算法
70 可编程控制装置
S1-S3 编程方法的不同的步骤
Claims (10)
1.一种用于对机器人(10)编程的方法,所述机器人用于执行作业,其中,所述机器人(10)配备有可编程的控制单元(70),其特征在于,利用统一的程序生成器(60)创建机器人程序,其中,所述程序生成器(60)以如下方式将一个或多个关键词序列转换为对于所述可编程的控制单元(70)有效的程序代码,即,所述程序生成器(60)首先对所述一个或多个关键词序列自动添加其它序列,随后在转换相应的序列的关键词时,所述程序生成器(60)调用编程规则集合中的信息,所述程序生成器(60)针对每一个关键词以预先给定的语法从所述编程规则集合中取回与相应的机器人类型匹配的程序代码段,其中,所述关键词用作宏和操作数的占位符,并且其中,所述程序生成器(60)将接收到的程序代码段合成为完整的程序代码。
2.根据权利要求1所述的方法,其中,所述关键词至少部分设置有参数说明。
3.根据权利要求1或2所述的方法,其中,所述程序生成器(60)在程序代码中插入用于描述功能的一个或多个注释。
4.根据权利要求3所述的方法,其中,所述程序生成器(60)以选择的多种语言中的一些语言插入所述一个或多个注释。
5.根据权利要求2所述的方法,其中,作为数据库(50)实施所述编程规则集合,所述数据库存储在计算机上,在所述计算机上创建用于控制所述机器人(10)的程序,或者安装在与所述计算机连接的中央计算机(40)上。
6.根据权利要求5所述的方法,其中,在调用所述数据库(50)中的信息时,在请求中向所述数据库(50)发送关键词,在存在参数说明的情况下,还发送参数说明,所述关键词用作索引信息,所述索引信息用于调用所述数据库(50)中的信息。
7.一种用于执行根据权利要求1至6中任一项所述的方法的步骤的计算装置,其特征在于,所述计算装置具有与编程规则集合连接的计算单元,所述编程规则集合作为数据库(50)实施,其中,所述计算装置被配置为,向所述数据库(50)发送描述控制过程的关键词的序列,并且从所述数据库(50)中取回对于所述关键词的序列有效的程序代码。
8.根据权利要求7所述的计算装置,其中,所述数据库(50)安装在所述计算装置中。
9.根据权利要求8所述的计算装置,其中,所述计算装置被配置为与外部的中央计算机(40)通信,所述数据库(50)安装在所述中央计算机(40)上。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被设计为,在计算装置中运行时,执行根据权利要求1至6中任一项所述的方法的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018214417.6A DE102018214417B3 (de) | 2018-08-27 | 2018-08-27 | Verfahren zur Programmierung eines Roboters sowie Recheneinrichtung und Computerprogramm |
DE102018214417.6 | 2018-08-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110861080A CN110861080A (zh) | 2020-03-06 |
CN110861080B true CN110861080B (zh) | 2023-04-11 |
Family
ID=66999611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910757246.6A Active CN110861080B (zh) | 2018-08-27 | 2019-08-16 | 用于对机器人编程的方法以及计算装置和计算机程序 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11491652B2 (zh) |
EP (1) | EP3620271A1 (zh) |
CN (1) | CN110861080B (zh) |
DE (1) | DE102018214417B3 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019135810B3 (de) * | 2019-12-27 | 2020-10-29 | Franka Emika Gmbh | Erzeugung eines Steuerprogramms für einen Robotermanipulator |
CN111752573B (zh) * | 2020-07-03 | 2021-11-09 | 中山市恺特自动化科技有限公司 | 工业机器人通用编程方法及编程器 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060206219A1 (en) * | 1995-05-30 | 2006-09-14 | Brown David W | Motion control systems and methods |
US6209037B1 (en) * | 1995-05-30 | 2001-03-27 | Roy-G-Biv Corporation | Motion control systems using communication map to facilitating communication with motion control hardware |
DE29605700U1 (de) | 1996-03-27 | 1996-06-05 | Siemens AG, 80333 München | Vorrichtung zum Übersetzen von eine Werkzeugmaschine, einen Roboter o.dgl. steuernden Programmanweisungen |
DE10021389A1 (de) | 2000-05-03 | 2001-11-08 | Nokia Mobile Phones Ltd | Verfahren zum Steuern eines Systems, insbesondere eines elektrischen und/oder elektronischen Systems mit zumindest einer Anwendungseinrichtung |
JP4108342B2 (ja) * | 2001-01-30 | 2008-06-25 | 日本電気株式会社 | ロボット、ロボット制御システム、およびそのプログラム |
EP1355208A1 (de) | 2002-04-15 | 2003-10-22 | Peter Renner | System zur Automatisierung technischer Prozesse |
JP2004038876A (ja) * | 2002-07-08 | 2004-02-05 | Hitachi Ltd | プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム |
EP1571514B1 (de) | 2004-03-06 | 2010-03-03 | Peter Renner | System zur Steuerung und Bedienung technischer Prozesse |
US8355818B2 (en) * | 2009-09-03 | 2013-01-15 | Battelle Energy Alliance, Llc | Robots, systems, and methods for hazard evaluation and visualization |
EP2142132B1 (en) * | 2007-04-16 | 2012-09-26 | NeuroArm Surgical, Ltd. | System for non-mechanically restricting and/or programming movement of a tool of a manipulator along a single axis |
CN102119072B (zh) * | 2008-06-09 | 2013-09-11 | Abb技术有限公司 | 有助于对离线编程机器人单元进行校准的方法和系统 |
US8847115B2 (en) * | 2008-06-16 | 2014-09-30 | Illinois Tool Works Inc. | Configurable welding interface for automated welding applications |
KR101658795B1 (ko) * | 2010-05-04 | 2016-09-23 | (주)로보티즈 | 중간언어 생성기를 포함한 로봇 프로그래밍 툴과 그 중간 언어 코드를 수행할 수 있는 버츄얼 머신을 기반으로 하는 로봇 프로그래밍 방법 |
EP2737375B1 (en) * | 2011-07-27 | 2016-11-16 | ABB Schweiz AG | System for commanding a robot |
US9063535B2 (en) * | 2011-12-22 | 2015-06-23 | Fanuc Robotics America Corporation | Numerical control program execution by robot |
AU2013204965B2 (en) * | 2012-11-12 | 2016-07-28 | C2 Systems Limited | A system, method, computer program and data signal for the registration, monitoring and control of machines and devices |
CN104698855A (zh) * | 2013-12-05 | 2015-06-10 | 上海能感物联网有限公司 | 汉语文本现场控制机器人的方法 |
US9358685B2 (en) * | 2014-02-03 | 2016-06-07 | Brain Corporation | Apparatus and methods for control of robot actions based on corrective user inputs |
DE102015204641B4 (de) * | 2014-06-03 | 2021-03-25 | ArtiMinds Robotics GmbH | Verfahren und System zur Programmierung eines Roboters |
FR3038245B1 (fr) * | 2015-06-30 | 2017-12-29 | Staubli Sa Ets | Procede de commande d'une cellule de travail automatisee |
JP6325500B2 (ja) | 2015-09-17 | 2018-05-16 | ファナック株式会社 | Cncの動作状況をコメント中に追加表示可能なラダー図モニタ装置 |
CN108698230B (zh) * | 2016-02-25 | 2021-10-29 | 豪夫迈·罗氏有限公司 | 用于手持式分析装置的质量评估的方法和系统 |
EP3243607B1 (en) * | 2016-05-09 | 2021-01-27 | OpiFlex Automation AB | A system and a method for programming an industrial robot |
DE102016216409A1 (de) | 2016-08-31 | 2018-03-01 | BSH Hausgeräte GmbH | Interaktive Bedienvorrichtung |
JP6624008B2 (ja) * | 2016-10-27 | 2019-12-25 | 横河電機株式会社 | エンジニアリングツール連携装置、エンジニアリングツール連携方法、エンジニアリングツール連携プログラム及び記録媒体 |
KR102012073B1 (ko) * | 2017-02-03 | 2019-08-19 | 두산로보틱스 주식회사 | 스킬 기반 로봇 프로그래밍 장치 및 방법 |
CN107650123A (zh) * | 2017-06-30 | 2018-02-02 | 哈尔滨工大特种机器人有限公司 | 一种可扩展指令集的机器人编程方法和装置 |
US10311874B2 (en) * | 2017-09-01 | 2019-06-04 | 4Q Catalyst, LLC | Methods and systems for voice-based programming of a voice-controlled device |
JP6950415B2 (ja) * | 2017-09-29 | 2021-10-13 | オムロン株式会社 | 制御装置 |
-
2018
- 2018-08-27 DE DE102018214417.6A patent/DE102018214417B3/de active Active
-
2019
- 2019-06-19 EP EP19181271.8A patent/EP3620271A1/de not_active Withdrawn
- 2019-08-16 CN CN201910757246.6A patent/CN110861080B/zh active Active
- 2019-08-27 US US16/551,818 patent/US11491652B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US11491652B2 (en) | 2022-11-08 |
DE102018214417B3 (de) | 2019-07-25 |
CN110861080A (zh) | 2020-03-06 |
US20200061818A1 (en) | 2020-02-27 |
EP3620271A1 (de) | 2020-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11986962B2 (en) | Method for extending end user programming of an industrial robot with third party contributions | |
US5555179A (en) | Control method and control apparatus of factory automation system | |
US20040088119A1 (en) | System for controlling and monitoring machines and/or systems with active components belonging to different active groups | |
US20170300036A1 (en) | Parameter setting device and parameter setting method | |
US20180264651A1 (en) | Controller, control system, and control method | |
CN110861080B (zh) | 用于对机器人编程的方法以及计算装置和计算机程序 | |
EP1214178B1 (en) | Method for off-line programming an industrial robot | |
Matthaiakis et al. | Flexible programming tool enabling synergy between human and robot | |
JPH01267777A (ja) | 製造システム、製造インタフェースシステム及び製造システムのインタフェーシングの方法 | |
CN109074065B (zh) | 用于将数控装置匹配于待控制的机器的设备和方法以及数控装置 | |
JP5602076B2 (ja) | ロボットプログラミング装置および方法 | |
US11561526B2 (en) | Control system of industrial machine | |
WO2019021044A1 (en) | METHOD AND SYSTEM FOR PERFORMING MANEUVER USING INDUSTRIAL ROBOT | |
Brecher et al. | Model-based control of a handling system with SysML | |
CN114245883B (zh) | 程序开发装置、工程制作方法以及存储介质 | |
CN110312975B (zh) | 闭合回路的产品 | |
JP4301976B2 (ja) | プログラミングツール | |
Brecher et al. | Development and programming of portable robot systems for material handling tasks | |
US20230101320A1 (en) | Method for creating and executing a control program for controlling an automation system, and automation system | |
Hajarnavis et al. | A comparison of sequential function chart and object-modelling PLC programming | |
US11188061B2 (en) | Configuration of an automation system | |
Finkemeyer et al. | Task-Oriented Programming System for Cobot-Assisted Assembly Workstations | |
Makris et al. | An Approach for Validating the Behavior of Autonomous Robots in a Virtual Environment | |
CN117829076A (zh) | 一站式生产系统及方法 | |
Paredes | Simplifying peripheral integration in ROS for manufacturing |
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 |