CN115997182A - 模拟装置及模拟系统 - Google Patents

模拟装置及模拟系统 Download PDF

Info

Publication number
CN115997182A
CN115997182A CN202180053238.9A CN202180053238A CN115997182A CN 115997182 A CN115997182 A CN 115997182A CN 202180053238 A CN202180053238 A CN 202180053238A CN 115997182 A CN115997182 A CN 115997182A
Authority
CN
China
Prior art keywords
robot
data
simulation
model
server system
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.)
Pending
Application number
CN202180053238.9A
Other languages
English (en)
Inventor
谷明纪
成相一志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawasaki Motors Ltd
Original Assignee
Kawasaki Jukogyo KK
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kawasaki Jukogyo KK filed Critical Kawasaki Jukogyo KK
Publication of CN115997182A publication Critical patent/CN115997182A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/06Control stands, e.g. consoles, switchboards
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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/406Numerical 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 monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/25Manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Geometry (AREA)
  • Accounting & Taxation (AREA)
  • Automation & Control Theory (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

一种模拟装置包括处理电路和存储装置,所述存储装置存储用于表示一系列的目标的动作的目标动作数据和与虚拟的机器人模型相关联的数据,所述处理电路包括:模拟器功能部,其根据目标动作数据使机器人模型进行动作,并将机器人模型的图像数据输出到显示装置;以及信息处理部,其接受对基于目标动作数据的机器人模型的动作且显示在显示装置所显示的图像上的第一动作的变更的输入,将表示反映了所述变更的动作的第二动作中的机器人模型的状态的信息与包含在所述目标动作数据中的所述第一动作的信息相关联地存储在所述存储装置中,所述模拟器功能部在使所述机器人模型进行所述第一动作的情况下,将表示所述第二动作的图像数据输出到所述显示装置。

Description

模拟装置及模拟系统
相关申请的相互参照
本申请要求2020年8月28日向日本专利厅申请的特愿2020-144512号的优先权及利益,通过参照其整体,作为构成本申请的一部分进行引用。
技术领域
本发明涉及模拟装置和模拟系统。
背景技术
以往,为了设计工业用机器人及其周边环境,利用计算机装置上的模拟。例如,专利文献1公开了具有多关节臂的偏置机器人的虚拟机器人开发系统与实际机器人运用系统动态连接的综合管理系统。实际机器人运用系统能够从虚拟机器人开发系统接收基于模拟的控制命令,进行偏置机器人的运动控制的模拟。实际机器人运用系统将基于模拟的偏置机器人的运动的误差等虚拟运用信息反馈给虚拟机器人开发系统。通过该模拟和反馈,在虚拟机器人开发系统中开发控制程序。
现有技术文献
专利文献
专利文献1:日本特开2007-260834号公报
发明内容
例如,在实机偏置机器人的动作与虚拟机器人开发系统中模拟的虚拟偏置机器人的模型的动作之间,存在偏置机器人的惯性及刚性、偏置机器人的关节的粘性以及由于关节的驱动装置的反应时间等特性的差异而引起的差异。很难完全消除特性的差异。使用虚拟操作信息开发的控制程序也难以完全消除特性的差异,在使偏置机器人的模型执行的动作与使实机的偏置机器人执行的动作之间存在产生差异的可能性。例如,控制程序可能不能使偏置机器人的模型按照预期进行动作。
本发明的目的在于提供一种能够输出用于表示与实机机器人同样的动作的虚拟机器人模型的图像的模拟装置及模拟系统。
本公开的一个方式的模拟装置包括处理电路和存储装置,所述存储装置存储用于表示一系列的目标的动作的目标动作数据和与虚拟的机器人模型相关联的数据,所述处理电路包括:模拟器功能部,其根据所述目标动作数据使所述机器人模型进行动作,并将进行动作的所述机器人模型的图像数据输出到显示装置;以及信息处理部,其接受对基于所述目标动作数据的所述机器人模型的动作且显示在所述显示装置所显示的图像上的第一动作的变更的输入,将表示反映了所述变更的动作即第二动作中的所述机器人模型的状态的信息与包含在所述目标动作数据中的所述第一动作的信息相关联地存储在所述存储装置中,所述模拟器功能部在使所述机器人模型进行所述第一动作的情况下,将表示所述第二动作的图像数据输出到所述显示装置。
附图说明
图1是用于表示示例性实施方式的模拟系统的配置一例的概要图。
图2是用于表示示例性实施方式的机器人工作区的一例的俯视图。
图3是用于表示示例性实施方式的计算机装置的硬件结构的一例的框图。
图4是用于表示构成示例性实施方式的模拟装置的计算机装置的功能结构一例的框图。
图5是用于表示示例性实施方式的计算机装置的模拟器功能部的功能结构的一例的框图。
图6是以相同尺度表示机器人及机器人模型各自的第一动作的状态的一例的侧视图。
图7是表示使用校正控制程序数据执行模拟时的机器人模型的第一动作的状态的一例的侧视图。
图8A是用于表示示例性实施方式的模拟系统的动作的一例的流程图。
图8B是用于表示示例性实施方式的模拟系统的动作的一例的流程图。
图8C是用于表示示例性实施方式的模拟系统的动作的一例的流程图。
图9是用于表示示例性实施方式的变形例1的模拟系统的结构的一例的概要图。
图10是用于表示示例性实施方式的变形例2的模拟系统的结构的一例的概要图。
具体实施方式
(实施方式)
接下来将参照附图说明本发明的示例性实施方式。另外,以下说明的实施方式均表示通用或具体的示例。另外,对于以下实施方式中的组成部分中表示最上位概念的独立权利要求中未记载的组成部分,作为任意的组成部分进行说明。另外,附图中的各图是示意图,并不一定严格图示。此外,在各图中,对实质上相同的组成部分赋予相同的符号,重复的说明可以省略或简化。另外,在本说明书和权利要求中,“装置”不仅可以指一个装置,还可以指由多个装置构成的系统。
[模拟系统的结构]
将说明示例性实施方式的模拟系统1的结构。图1是用于表示示例性实施方式的模拟系统1的结构的一例的概要图。如图1所示,模拟系统1包括模拟计算机100、实机机器人200、机器人控制器300和操作输入输出装置400。机器人控制器300是实机控制装置的一例。
虽不限于此,在本实施方式中,机器人200是工业用机器人,具备机器人臂210和末端执行器220。机器人臂210具有至少一个关节,并且具有至少一个自由度。末端执行器220构成为能够对工件等作业的对象物W施加作用。机器人臂210的前端构成为安装末端执行器220。机器人臂210可自由地改变末端执行器220的位置和姿态。机器人200使用机器人臂210及末端执行器220处理对象物W。在本实施方式中,机器人臂210的型式是垂直多关节型,但不限于此,可以是任何型式,例如也可以是水平多关节型、极坐标型、圆筒坐标型或直角坐标型等。
机器人控制器300控制机器人200的动作。机器人控制器300对输入到操作输入输出装置400的指令、信息以及数据等进行处理。机器人控制器300根据上述指令、信息及数据等控制机器人200的动作。例如,机器人控制器300控制向机器人200供给动力等。机器人控制器300将各种指令、信息及数据等输出到操作输入输出装置400。这样的机器人控制器300具备计算机装置310(参照图3)。机器人控制器300可以包括用于控制向机器人200供给的电力的电路以及用于控制向末端执行器220供给的涂料等物质的供给的设备等。
机器人控制器300通过有线通信、无线通信或有线通信和无线通信的组合与机器人200和操作输入输出装置400连接。它们之间的通信可以是任何有线通信和无线通信。在本实施方式中,机器人控制器300及操作输入输出装置400配置在配置有机器人200的机器人工作区RA中。另外,机器人控制器300及操作输入输出装置400中的至少一个也可以配置在与机器人工作区RA不同的场所,例如远程的场所。
操作输入输出装置400具备输入装置410和提示装置420。输入装置410接受各种指令、信息以及数据等的输入,并输出到机器人控制器300。输入装置410可以是任何已知的输入装置,例如可以是能够进行用于操作机器人200的输入的装置。提示装置420将从机器人控制器300等接收到的指令、信息及数据等以可感知的方式提示给用户(以下也称为“操作者”)P。例如,提示装置420可以包括显示器和扬声器等。
另外,虽不限于此,在本实施方式中,如图2所示,在机器人工作区RA中,作为机器人200周边设备,配置有将对象物W向机器人200输送的第一输送装置510和分别向其它的区域WAa、WAb和WAc输送被机器人200处理过后的对象物W的第二输送装置521、522和523。图2是用于表示示例性实施方式的机器人工作区RA的一例的俯视图。
在本实施方式中,机器人200进行将由第一输送装置510输送来的对象物W根据该对象物W的输送目的地的区域WAa、WAb及WAc向第二输送装置521、522及523输送的生产线作业。虽不限于此,在本实施方式中,输送装置510、521、522及523是带式输送机,使封闭环状的输送带510a、521a、522a及523a环绕移动。机器人控制器300构成为,作为机器人200的控制的外部轴控制,与机器人200的动作控制协调地执行输送装置510、521、522及523的动作控制。
如图1所示,模拟计算机100配置在与机器人工作区RA不同的位置的设计作业区DA中。模拟计算机100用于设计配置在机器人工作区RA中的机器人及其周围环境。例如,模拟计算机100可以构建包括虚拟机器人模型和虚拟周围环境模型、虚拟工作空间模型等的虚拟工作区模型。周围环境模型可以包括虚拟周围设备模型、虚拟周围结构物模型和作为机器人模型的处理对象的虚拟对象模型等。例如,模拟计算机100用于工厂和仓库等中的生产线的设计等,能够构建虚拟的生产线等。
进而,模拟计算机100能够生成用于使机器人模型及周围设备模型等自动地进行规定动作的控制程序数据。控制程序数据可以是用于自动执行该规定动作的全部的数据,也可以是用于自动执行该规定动作的一部分的数据。控制程序数据可由控制机器人200等的动作的机器人控制器300利用。机器人控制器300根据控制程序数据,使机器人200等自动地进行规定的动作。模拟计算机100也可以根据控制程序数据使机器人模型及周围设备模型等自动地进行规定的动作。模拟计算机100能够构建工作区模型和模拟离线的工作区模型。
例如,在机器人模型、周围环境模型以及作业空间模型中,可以使用三维CAD(Computer-Aided Design)模型以及三维CG(Computer Graphics)模型等三维模型,也可以使用二维模型。三维模型和二维模型被构成为具有与实物机器人、周边环境和工作空间的特征相对应的特征。例如,三维模型和二维模型可以具有与实物的形状和尺寸对应的形状和尺寸、与实物的可动部分对应的可动部分以及与实物的各部分的特性对应的各部分的特性等。例如,三维模型和二维模型的可动部分的动作方向和动作范围可以对应于实物的动作方向和动作范围。例如,三维模型和二维模型的各部分的惯性、刚性和粘性等阻抗特性也可以对应于实物的阻抗特性。三维模型和二维模型的各部分的重量特性和重量分布可以对应于实物的重量特性和重力分布。
模拟计算机100具备计算机装置110、输入装置120和提示装置130。计算机装置110的结构没有特别限定,例如,计算机装置110也可以是个人计算机、工作站及服务器等。模拟装置140(参见图4)构成于计算机装置110内,模拟装置140的功能由计算机装置110实现。
输入装置120接受各种指令、信息以及数据等的输入,并输出到计算机装置110。例如,输入装置120可以包括已知的输入装置,例如杆、按钮、键、键盘、触摸面板、触摸显示器、操纵杆、运动捕捉、相机和麦克风等。例如,输入装置120可以是智能手机和平板电脑等智能设备、个人信息终端(PDA:Personal Data Assistant)或其他终端装置等。
提示装置130将从计算机装置110等接收到的指令、信息及数据等以可察觉的方式提示给模拟计算机100的用户(以下也称为“设计者”)。例如,提示装置130可以包括显示器和扬声器等。例如,提示装置130显示虚拟工作区模型等图像。输入装置120包括触摸面板或触摸显示器时,则输入装置120可兼作提示装置130的功能。提示装置130是显示装置的一例。
在本实施方式中,计算机装置110通过有线通信、无线通信或有线通信及无线通信的组合,以能够相互进行数据通信的方式与机器人控制器300连接。它们之间的通信可以是任何有线通信和无线通信,但是在本实施方式中是经由通信网络N的通信。在该情况下,计算机装置110和机器人控制器300可构成为直接连接到通信网络N,也可构成为通过通信计算机等通信设备连接到通信网络N。
例如,计算机装置110将控制程序数据发送给机器人控制器300。机器人控制器300根据该控制程序数据使机器人200等动作。当通过操作者P校正了根据该控制程序数据的机器人200等的动作时,反映了校正的校正控制程序数据由机器人控制器300发送到计算机装置110。设计者可以使用模拟计算机100及校正控制程序数据中包含的信息,进行工作区模型的构建及该工作区模型的模拟。
通信网络N没有特别限制,例如可以包括局域网(Local Area Network:LAN)、广域网(Wide Area Network:WAN)、因特网或它们之中2个以上的组合。通信网络N可以构成为使用蓝牙(Bluetooth(注册商标))及ZigBee(注册商标)等近距离无线通信、网络专用线路、通信运营商专用线路、公共交换电话网(Public Switched Telephone Network:PSTN)、移动通信网、因特网、卫星通信或它们之中2个以上的组合。移动通信网可以使用第四代移动通信系统和第五代移动通信系统等。通信网络N可以包括一个或多个网络。
计算机装置110和机器人控制器300也可以构成为经由存储介质相互输入输出信息等。例如,存储介质可包括半导体或其他集成电路(IC:Integrated Circuit)、硬盘驱动器(HDD:Hard Disk Drive)、混合硬盘驱动器(HHD:Hybrid Hard Disk Drive)、光盘、光盘驱动器(ODD:Optical Disk Drive)、光磁盘、光磁盘驱动器、软盘驱动器(FDD:Floppy DiskDrive)、磁带、固态驱动器(SSD:Solid State Drive)、RAM驱动器、安全数字卡或驱动器、任何其它合适的存储介质或它们之中2个以上的组合。
下面说明模拟计算机100的计算机装置110及机器人控制器300的计算机装置310的硬件结构的一例。图3是用于表示示例性实施方式的计算机装置110和310的硬件结构的一例的框图。如图3所示,计算机装置110和310均包括处理器11、内存12、存储器13、输入输出I/F(接口:Interface)14和通信I/F15作为组成部分。虽不限于此,但这些组成部分例如经由总线20相互连接。另外,计算机装置110及310所具备的组成部分并不限定于上述组成部分,例如也可以对应于计算机装置110及310的控制对象及连接对象而追加组成部分。
处理器11和内存12构成处理电路或电路。处理电路或电路进行与其他装置的指令、信息及数据等的收发。处理电路或电路进行来自各种设备的信号的输入以及向各控制对象的控制信号的输出。电路可以包括处理电路。
内存12存储处理器11执行的程序以及各种数据等。内存12也可以由易失性存储器和非易失性存储器等半导体存储器等存储装置构成。虽不限于此,在本实施方式中,内存12包括作为易失性存储器的RAM(Random Access Memory随机存储器)和作为非易失性存储器的ROM(Read-Only Memory只读存储器)。
存储器13存储各种数据。存储器13也可以由硬盘驱动器及SSD等存储装置构成。
处理器11与RAM和ROM一起形成计算机系统。计算机系统可以通过处理器11使用RAM作为工作区来执行存储在ROM中的程序来实现计算机装置110或310的功能。计算机装置110和310的部分或全部功能可以由上述计算机系统实现,也可以由电子电路或集成电路等专用硬件电路实现,也可以由上述计算机系统和硬件电路的组合实现。计算机装置110和310可以通过单个计算机装置的集中控制来执行各个处理,也可以通过多个计算机装置协作的分散控制来执行各个处理。
虽不限于此,例如,处理器11包括CPU(中央处理装置:Central ProcessingUnit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、微处理器(Microprocessor)、处理器核(processor core)、多处理器(multiprocessor)、ASIC(Application-Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等,可通过形成于IC(集成电路)芯片、LSI(Large Scale Integration)等中的逻辑电路或专用电路来实现各处理。多个处理可以由多个集成电路实现,也可以由一个集成电路实现。
通信I/F15是连接计算机装置110或310和通信网络N的接口。通信I/F15具有经由通信网络N执行与其他计算机装置等的通信、收发数据等的功能。通信I/F15根据来自处理器11的指令,将数据等发送给其他计算机装置等,接收从其他计算机装置等发送的数据等,并传递给处理器11。
输入输出I/F 14是连接计算机装置110或310和外部装置30的接口。例如,外部装置30包括输入装置120、提示装置130、操作输入输出装置400的输入装置410和提示装置420等,但也可以包括其他装置。例如,外部装置30可以是存储装置或存储介质的驱动器(辅助存储装置)。输入输出I/F14可以一体化地包含接受数据等的输入的输入I/F和输出数据等的输出I/F,也可以分离地包含。
接下来说明计算机装置110的功能性结构。图4是用于表示构成示例性实施方式的模拟装置140的计算机装置110的功能结构的一例的框图。图5是用于表示示例性实施方式的计算机装置110的模拟器功能部1405的功能结构的一例的框图。
如图4所示,计算机装置110包括模拟装置140。例如,模拟装置140的动作可以通过安装在计算机装置110上的软件来实现。计算机装置110的处理器11通过执行上述软件而作为模拟装置140的动作。
模拟装置140包括输入部1401、输出部1402、构建部1403、数据生成部1404、模拟器功能部1405、数据发送部1406、数据接收部1407、数据更新部1408、处理部1409、存储部1410作为功能性组成部分。存储部1410的功能由存储器13实现,但存储部1410的功能的一部分也可以由内存12实现。除了存储部1410以外的模拟装置140的各功能组成部分的功能也可以通过处理器11及内存12等来实现。处理部1409是信息处理部的一例。
如图5所示,模拟器功能部1405包括模拟执行部140a、虚拟机器人控制器140b和转换部140c作为功能组成部分。
如图4所示,输入部1401从模拟计算机100的输入装置120接受指令、信息以及数据等的输入,发送给模拟装置140内的各功能性组成部分。输入部1401的功能也可以通过输入输出I/F14等来实现。
输出部1402将从构建部1403以及模拟器功能部1405等接收到的指令、信息以及数据等输出到模拟计算机100的提示装置130。输出部1402的功能也可以通过输入输出I/F14等来实现。
存储部1410能够存储各种信息,读出所存储的信息。存储部1410存储模型数据Dm,该模型数据Dm包含能够成为形成虚拟的工作区模型的材料的虚拟的组成部分模型的数据。例如,模型数据Dm可以包括各种虚拟机器人模型、各种虚拟周围环境模型和各种虚拟工作空间模型等组成部分模型的三维模型的数据。
存储部1410存储由构建部1403等构建的工作区模型M的数据。存储部1410存储由数据生成部1404等生成的控制程序数据Dp。
构建部1403构建模拟的工作区模型M。具体而言,构建部1403根据输入到输入装置120的指令及信息等,设定模拟的三维空间模型并显示在提示装置130上。此外,构建部1403从存储部1410的模型数据Dm读取通过输入装置120指定的虚拟工作空间模型、虚拟机器人模型和虚拟周围环境模型的三维模型的数据。构建部1403在提示装置130上显示模拟的三维空间模型,并根据经由输入装置120指定的位置、姿势及尺寸等,将读出的各三维模型配置在该三维空间模型内。构建部1403根据输入到输入装置120的指令,将配置有各三维模型的三维空间模型作为工作区模型M存储在存储部1410中。工作区模型M包括虚拟的机器人模型Ma、虚拟的周围环境模型Mb以及虚拟的作业空间模型Mc等。例如,机器人模型Ma具备机器人臂模型Maa和末端执行器模型Mab。在存储部1410中可以存储各种工作区模型M。
数据生成部1404根据输入到输入装置120的指令等,生成控制程序数据Dp,并存储在存储部1410中。数据生成部1404也可以针对每个工作区模型M生成控制程序数据Dp,为了使该控制程序数据Dp和工作区模型M相互关联而赋予ID等识别信息。
控制程序数据Dp可以包括用于使机器人模型Ma和周围环境模型Mb在工作区模型M中执行动作的控制程序、该控制程序用于执行动作的执行数据、或这两者。虽不限于此,在本实施方式中,上述控制程序也是用于使与机器人模型Ma及周围环境模型Mb对应的实物机器人及周边环境执行动作的程序。
执行数据包括目标动作数据Dt和设置数据Ds等。设置数据Ds可以包括设定在模型中的数据和设定在用户环境中的数据。设定在模型中的数据可以包括对机器人模型Ma及周围环境模型Mb的每个种类设定的数据以及对机器人模型Ma的末端执行器模型Mab的每个种类设定的数据等。设定在用户环境中的数据,可以包括针对与机器人模型Ma及周围环境模型Mb对应的实物机器人及用于操作周边环境的操作输入输出装置400等的各操作器的每个种类而设定的数据、以及设定在操作器上显示的画面上的数据等。数据生成部1404根据从输入装置120、输入装置120以外的外部装置30或这两者输入的指令、信息及数据等生成设置数据Ds。
目标动作数据Dt是表示机器人模型Ma及周围环境模型Mb在工作区模型M内执行的一系列目标动作的数据。目标动作数据Dt可以是可用作示教数据的数据,用于使对应于机器人模型Ma和周围环境模型Mb的实机机器人和周围环境的周围设备执行一系列的动作。目标动作数据Dt的一系列目标动作中包含的各动作,包含机器人模型Ma的各部的位置、姿势及力的信息以及周围环境模型Mb的各部的位置及姿势的信息。位置和姿势的信息是表示工作区模型M内的三维位置和姿势的信息,力的信息是用于表示工作区模型M内的三维的力的方向和大小的信息。
例如,在机器人模型Ma对应于图1和图2所示的机器人200的情况下,机器人模型Ma的机器人臂模型Maa和末端执行器模型Mab分别是机器人200的机器人臂210和末端执行器220的虚拟模型。机器人模型Ma的各部的位置、姿势及力的信息也可以是末端执行器模型Mab的位置、姿势及力的信息。
例如,在周围环境模型Mb是图2所示输送装置510、521、522及523的虚拟模型的情况下,周围环境模型Mb的各部的位置及姿势的信息可以对应于输送带510a、521a、522a及523a的环绕位置、输送带510a、521a、522a和523a的驱动装置的驱动量或这两者。
数据生成部1404根据输入到输入装置120的指令及信息等,使机器人模型Ma及周围环境模型Mb动作,检测机器人模型Ma及周围环境模型Mb的各动作中的各部分的位置、姿势及力,并通过使用检测出的位置、姿势及力的信息生成目标动作数据Dt。目标动作数据Dt是将位置、姿势及力的信息与执行时刻相关联的时序数据。
数据生成部1404在生成控制程序时,也可以使用目标动作数据Dt生成机器人模型Ma及周围环境模型Mb的控制程序。数据生成部1404有时也使用计算机装置110从其他装置接收到的目标动作数据来生成控制程序。
数据发送部1406根据输入到输入装置120的指令等,将存储在存储部1410中且经由输入装置120指定的控制程序数据Dp等经由通信网络N发送给机器人控制器300。
数据接收部1407从机器人控制器300经由通信网络N接收控制程序数据Dpa等,并发送给数据更新部1408。控制程序数据Dpa是根据控制程序数据Dp由机器人控制器300决定的控制程序数据。例如,控制程序数据Dp有时接收校正,以使得当由机器人控制器300执行的结果,实物机器人200和输送装置510、521、522和523的动作成为目标动作。此时,控制程序数据Dpa是校正后的控制程序数据Dp。在不需要校正控制程序数据Dp时,控制程序数据Dpa是未校正的控制程序数据Dp。
例如,在机器人工作区RA中,有时障碍物存在于机器人200的侧方及上方等。机器人200的阻抗特性有时与机器人模型Ma的阻抗特性不同。此时,可以使用机器人控制器300来校正控制程序数据Dp,以使机器人200以及输送装置510、521、522以及523执行目标动作。
数据更新部1408将从数据接收部1407接收到的控制程序数据Dpa存储在存储部1410中。数据更新部1408也可以根据输入到输入装置120的更新指令,用控制程序数据Dpa替换与控制程序数据Dpa对应且存储在存储部1410中的控制程序数据Dp。数据更新部1408也可以根据输入到输入装置120的保存指令,将控制程序数据Dpa作为与控制程序数据Dp对应的第二数据,与控制程序数据Dp一起存储在存储部1410中。
如图4及图5所示,模拟器功能部1405的模拟执行部140a根据输入到输入装置120的指令等,使用存储在存储部1410中的控制程序数据Dp和工作区模型M执行工作区模型M的动作模拟。具体而言,模拟执行部140a根据目标动作数据Dt生成用于指令机器人模型Ma及周围环境模型Mb的目标的动作的目标动作指令。例如,目标动作指令可以包括位置指令和力指令。例如,位置指令可以包括机器人模型Ma的末端执行器模型Mab以及周围环境模型Mb的动作部分的位置、姿势、位置变化的方向以及速度、姿势变化的方向以及速度等。例如,力指令可以包括机器人模型Ma的末端执行器模型Mab对对象物模型Md施加的力的大小和方向等。对象物模型Md是对象物W的虚拟模型。模拟执行部140a将目标动作指令发送给转换部140c。
模拟执行部140a通过转换部140c从虚拟机器人控制器140b接收与目标动作指令对应的控制指令,并根据该控制指令使机器人模型Ma及周围环境模型Mb动作。进而,模拟执行部140a生成根据该控制指令进行动作的机器人模型Ma及周围环境模型Mb的图像数据并输出到提示装置130,使提示装置130显示与该图像数据对应的图像。作为模拟计算机100的用户的设计者可以目视确认根据控制程序数据Dp的机器人模型Ma和周围环境模型Mb的动作。
虚拟机器人控制器140b构成为对应于机器人控制器300而设置,并进行与机器人控制器300同样的处理。虚拟机器人控制器140b从转换部140c接收作为接受了转换部140c的处理后的目标动作指令的转换动作指令。虚拟机器人控制器140b根据转换动作指令生成用于使机器人模型Ma及周围环境模型Mb的各部分动作的控制指令,并发送给转换部140c。
例如,虚拟机器人控制器140b可根据转换动作指令,生成包括机器人模型Ma的机器人臂模型Maa的各关节、末端执行器模型Mab的动作部分及周围环境模型Mb的各动作部分的动作量、动作速度及动作扭矩等指令值的控制指令。
转换部140c在模拟执行部140a和虚拟机器人控制器140b之间,将从一方输出的数据转换为另一方能够利用的数据。
在此,虽不限于此,在本实施方式中,模拟装置140与模拟的对象的机器人模型的类别无关地进行构建。模拟执行部140a与模拟装置140一起作为模拟装置140的一部分而构建。
虚拟机器人控制器140b根据模拟的对象的机器人模型的种类而构建。机器人控制器300根据控制对象的机器人的种类而生成。例如,机器人控制器300的规格根据控制对象的机器人的制造商而不同,机器人控制器300的发送接收信号根据控制对象的机器人的制造商而不同。虚拟机器人控制器140b的规格也因对应的各机器人控制器300而不同,虚拟机器人控制器140b的输入输出信号也因对应的各机器人控制器300而不同。虚拟机器人控制器140b的规格根据与控制对象的机器人模型对应的实机机器人的制造商而不同。
虚拟机器人控制器140b和转换部140c可以作为软件等组装到模拟装置140中。虚拟机器人控制器140b和模拟执行部140a不能相互直接地收发信号,但通过转换部140c,能够相互收发信号。由此,模拟装置140的通用性提高。另外,模拟执行部140a也可以对应于虚拟机器人控制器140b而构建,使得模拟执行部140a和虚拟机器人控制器140b能够相互直接地收发信号。
如图4所示,处理部1409构成为能够接受对显示在提示装置130的画面上的图像所显示的机器人模型Ma的动作的变更的输入。具体而言,处理部1409能够对显示在提示装置130的画面上的机器人模型Ma的像接受变更该机器人模型Ma的动作状态这样的输入。上述画面是通过模拟器功能部1405使用控制程序数据Dp执行模拟而显示在提示装置130上的工作区模型M的画面。
例如,处理部1409以根据输入到输入装置120的变更的指令等,在表示机器人模型Ma的动作中的第一动作的第一图像中将第一动作变更为第二动作的方式,将第一图像变更处理为第二图像,并显示在提示装置130的画面上。第二动作是输入的反映出被变更了的动作,第二图像是表示第二动作中的机器人模型Ma的图像。例如,第二动作不同于第一动作。例如,第一动作和第二动作等的机器人模型Ma的动作可以包括由1帧图像表示这样的瞬时动作,以及由多帧图像表示并且包括多个瞬时动作这样的一系列动作等。
此外,处理部1409将用于表示第二动作中的机器人模型Ma的状态的信息作为状态信息Di,与目标动作数据Dt中包含的第一动作的信息相关联地存储在存储部1410中。处理部1409也可以将状态信息Di作为工作区模型M的信息的一部分存储在存储部1410中。例如,用于表示第二动作中的机器人模型Ma的状态的信息可以包括表示第二动作中的机器人模型Ma的各部分的位置和姿势等的信息以及表示第二动作中的机器人模型Ma的第二图像的数据等。
在此,将机器人模型Ma的阻抗特性设定为与机器人200的阻抗特性完全一致是非常困难的。此外,机器人200的阻抗特性可以受到作用于机器人200的重力以及机器人200周围的热等的影响。例如,为了降低运算量,有时在机器人模型Ma中不设定阻抗特性。因此,如图6所示,在根据控制程序数据Dp分别使机器人200及机器人模型Ma执行用于把持对象物W及对象物模型Md的第一动作的情况下,机器人200的机器人臂210(实线显示)与机器人模型Ma的机器人臂模型Maa(虚线显示)之间产生挠曲量的差异。在本例中,由于机器人臂模型Maa的刚性大于机器人臂210的刚性,因此末端执行器220的位置从作为目标位置的末端执行器模型Mab的位置向下方偏置。图6是以相同尺度表示机器人200及机器人模型Ma各自的第一动作的状态的一例的侧视图。
因此,操作者P对根据控制程序数据Dp执行第一动作的机器人200,校正机器人控制器300的控制程序数据Dp,以使末端执行器220的位置及姿势与目标的位置及姿势一致。例如,操作者P可以通过将末端执行器220移动到目标的位置和姿势,向机器人控制器300示教目标的位置和姿势。机器人控制器300也可以根据上述示教对控制程序数据Dp进行校正,从而生成校正控制程序数据Dpa。另外,示教方法可以是任何方法。
如图7所示,当模拟装置140的模拟器功能部1405使用校正控制程序数据Dpa执行模拟时,机器人模型Ma的末端执行器模型Mab的位置及姿势(实线表示)有时与目标的位置及姿势(虚线显示)不一致。这是由于机器人200和机器人模型Ma之间的阻抗特性的差异。目标的位置及姿势是使用控制程序数据Dp时的位置及姿势。在本例中,由于机器人臂模型Maa的刚性大于机器人臂210的刚性,因此末端执行器模型Mab的位置从目标位置向上方偏置。图7是表示使用校正控制程序数据Dpa执行模拟时的机器人模型Ma的第一动作的状态的一例的侧视图。
因此,设计者在执行使用了校正控制程序数据Dpa的模拟中,在提示装置130的画面上,通过使用输入装置120使末端执行器模型Mab移动到目标的位置及姿势,使处理部1409将机器人模型Ma的状态从第一动作变动为第二动作。进而,设计者使处理部1409将表示第二动作中的机器人模型Ma的状态的信息存储在存储部1410中。
之后,模拟器功能部1405在执行使用了校正控制程序数据Dpa的模拟时,要求设计者选择用于表示机器人模型Ma的动作的图像。模拟器功能部1405根据经由输入装置120接收到的指令,在使机器人模型Ma进行第一动作时,输出用于表示第二动作的第二图像的图像数据或表示第一动作的第一图像的图像数据。
例如,当变更模型及模型的布局等工作区模型M的一部分时以及使用工作区模型M的机器人模型Ma等生成新的工作区模型时,模拟器功能部1405能够使用反映了实机机器人200的特性的校正控制程序数据Dpa,模拟工作区模型的动作。而且,模拟器功能部1405为了对第一动作进行图像显示,能够通过输出用于表示第二动作的第二图像的图像数据,向设计者提示没有不协调感的图像。因此,能够对使用了模拟的工作区模型进行正确的验证。
[模拟系统的动作]
对实施方式的模拟系统1的动作进行说明。图8A、图8B和图8C是用于表示根据示例性的实施方式的模拟系统1的操作的一例的流程图。在图8A、图8B及图8C中,步骤S101至S110的处理是与工作区模型及控制程序数据的生成相关的处理,步骤S111至S115的处理是与使用了实物机器人200的控制程序数据的验证相关的处理,步骤S116至S126的处理是关于验证后的控制程序数据的处理。
如图8A、图8B及图8C所示,首先,设计作业区DA的设计者通过向输入装置120的输入,使计算机装置110的模拟装置140存储模型数据Dm及设置数据Ds(步骤S101)。
接着,设计者通过对输入装置120的输入,使模拟装置140构建工作区模型M的布局(步骤S102)。具体而言,设计者在由模拟装置140形成的虚拟的三维空间内,使用模型数据Dm,指定机器人模型Ma、周围环境模型Mb及作业空间模型Mc的位置及姿势,配置各模型。设计者使模拟装置140存储配置有各模型的工作区模型M。
接着,设计者验证各模型的干涉(步骤S103)。具体而言,设计者将干涉检查的指令输入到输入装置120。模拟装置140根据设置数据Ds等,使工作区模型M的各模型动作,检查各模型间有无干扰。在存在干扰的情况下,模拟装置140提示干扰部位等,设计者通过向输入装置120的输入校正模型的配置。
接着,设计者使模拟装置140决定并存储工作区模型M的机器人模型Ma及周围环境模型Mb的概要目标动作数据(步骤S104)。具体而言,设计者通过对输入装置120的输入,指定工作区模型M内的机器人模型Ma及周围环境模型Mb的概要目标动作,并使模拟装置140根据该目标动作生成概要目标动作数据。
接着,设计者使模拟装置140提示根据概要目标动作数据的节拍时间(步骤S105)。具体而言,设计者使模拟装置140执行根据概要目标动作数据的工作区模型M的模拟。模拟装置140向设计者提示根据概要目标动作数据的一系列动作所需的节拍时间和节拍时间的目标时间范围。
在节拍时间偏离目标时间范围的情况下(步骤S106中为“否”),设计者指示模拟装置140变更各模型的布局,重复步骤S102至S105。
在节拍时间落入目标时间范围内的情况下(步骤S106中为“是”),设计者使模拟装置140生成控制程序(步骤S107)。具体而言,设计者使模拟装置140决定并存储机器人模型Ma及周围环境模型Mb的详细的目标动作数据Dt。设计者通过对输入装置120的输入,指定机器人模型Ma及周围环境模型Mb的详细的目标动作,使模拟装置140根据该目标动作生成详细的目标动作数据Dt。进而,设计者使模拟装置140生成使用了详细的目标动作数据Dt的控制程序。模拟装置140存储包括目标动作数据Dt和控制程序的控制程序数据Dp。
接着,与步骤S105同样地,设计者使模拟装置140提示根据详细的目标动作数据的最终的节拍时间(步骤S108)。
在节拍时间偏离目标时间范围的情况下(步骤S109中为“否”),设计者指示模拟装置140变更详细的目标动作数据Dt,并重复步骤S107及S108。
在节拍时间落入目标时间范围内的情况下(步骤S109中为“是”),设计者使模拟装置140向机器人工作区RA的机器人控制器300发送控制程序数据Dp(步骤S110)。机器人控制器300存储接收到的控制程序数据Dp。
接着,机器人工作区RA的操作者P通过向操作输入输出装置400的输入,使机器人控制器300根据控制程序数据Dp使机器人200以及输送装置510、521、522以及523动作(步骤S111)。
在需要校正机器人200的动作的情况下(步骤S112中为“是”),操作者P校正机器人200的动作(步骤S113)。在机器人200的动作与目标动作不一致的情况以及机器人200与周围的物体产生干涉的情况等,需要进行上述校正。
接着,操作者P通过向操作输入输出装置400的输入,使机器人控制器300将机器人200的动作的校正反映在控制程序数据Dp中,由此生成并存储校正控制程序数据Dpa(步骤S114)。
接着,操作者P使机器人控制器300向计算机装置110的模拟装置140发送校正控制程序数据Dpa(步骤S115)。另外,操作者P在不需要校正机器人200的动作的情况下(步骤S112中为“否”),在本步骤中,使机器人控制器300将控制程序数据Dp作为校正控制程序数据Dpa发送。
接着,模拟装置140存储接收到的校正控制程序数据Dpa(步骤S116)。
接着,设计作业区DA的设计者使模拟装置140执行基于校正控制程序数据Dpa的模拟(步骤S117)。
在显示在提示装置130上的机器人模型Ma的动作存在异常的情况下(步骤S118中为“是”),设计者通过向输入装置120输入指令,使模拟装置140在提示装置130的画面上,将作为机器人模型Ma的相应动作的第一动作校正为作为目标动作的第二动作(步骤S119)。
接着,模拟装置140将表示第二动作中的机器人模型Ma的状态的信息作为状态信息Di,与校正控制程序数据Dpa的第一动作的信息相关联地存储(步骤S120)。
另外,在机器人模型Ma的动作没有异常的情况下(步骤S118中为“否”),由于没有设计者的校正,所以模拟装置140将存储的校正控制程序数据Dpa原样维持(步骤S121)。
之后,由设计者向输入装置120输入根据校正控制程序数据Dpa的模拟的执行指令(步骤S122),以及模拟装置140在表示机器人模型Ma的动作的图像中向设计者请求是否使用状态信息Di(步骤S123)。
在有使用状态信息Di的指令的情况下(步骤S124中为“是”),模拟装置140使用状态信息Di执行模拟,使用反映了状态信息Di的图像将与状态信息Di对应的机器人模型Ma的动作显示在提示装置130上(步骤S125)。
在没有使用状态信息Di的指令的情况下(步骤S124中为“否”),模拟装置140不使用状态信息Di而执行模拟,使用未反映状态信息Di的图像使与状态信息Di对应的机器人模型Ma的动作显示在提示装置130上(步骤S126)。
在模拟系统1中,模拟装置140能够使用反映了实机机器人200中的动作结果的校正控制程序数据Dpa,执行工作区模型M的模拟。而且,即使在机器人200与机器人模型Ma之间存在特性差异的情况下,模拟装置140也能够使在图像上的机器人模型Ma的动作与机器人200的动作一致。此外,模拟装置140在校正工作区模型M的情况下以及生成新的工作区模型的情况下,能够使用校正控制程序数据Dpa生成新的控制程序数据。由于新的控制程序数据反映了实机机器人的特性,因此对于实机机器人的动作可以具有较高的精度。
另外,模拟装置140也可以构成为重复步骤S123至S126的处理。例如,模拟装置140也可以在模拟的执行中,每当出现与状态信息Di对应的机器人模型Ma的动作时,向设计者请求有无使用状态信息Di,并根据设计者的指令,决定表示该动作的图像。
(变形例1)
示例性实施方式的变形例1的模拟系统1A与实施方式的不同之处在于,模拟计算机的一部分存在于云上。以下,以与实施方式的不同之处为中心对变形例1进行说明,适当省略与实施方式相同之处的说明。
图9是用于表示根据示例性实施方式的变形例1的模拟系统1A的结构的一例的概要图。如图9所示,模拟系统1A包括模拟终端101A、服务器系统102A、机器人200、机器人控制器300和操作输入输出装置400。模拟终端101A、服务器系统102A、机器人控制器300配置在相互不同的场所,经由通信网络N相互可数据通信地连接。例如,多个模拟终端101A、用于分别控制多个机器人200的多个机器人控制器300或这两者可经由通信网络N与服务器系统102A连接。模拟终端101A是终端装置的一例。
服务器系统102A具有根据实施方式的模拟装置140的功能,例如可以实现多个模拟装置140的功能。服务器系统102A构成为分别对一个或多个模拟终端101A作为模拟装置140发挥作用,并且对一个或多个机器人控制器300作为模拟装置140发挥作用。服务器系统102A包括服务器102Aa和存储器102Ab。另外,服务器102Aa也可以包括存储器102Ab。服务器102Aa是计算机装置,存储器102Ab是存储装置。虽不限于此,在本变形例中,服务器102Aa具备存储部1410以外的模拟装置140的全部功能性组成部分的功能,存储器102Ab具备存储部1410的功能。服务器102Aa的输入部1401及输出部1402与通信网络N连接,与模拟终端101A收发数据等。
模拟终端101A是具有输入装置120及提示装置130的计算机装置,并具有能够与通信网络N连接的通信接口。模拟终端101A可以是个人计算机、智能手机和平板电脑等智能装置、个人信息终端或其他终端装置等。模拟终端101A可以通过通信网络N使服务器系统102A执行期望的处理。多个模拟终端101A可以访问服务器系统102A,并使服务器系统102A执行各个期望的处理。
例如,模拟终端101A可以构成为能够安装专用的应用,并通过启动该应用而与服务器系统102A连接。模拟终端101A能够通过该应用向服务器系统102A发送指令,使服务器系统102A执行根据实施方式的模拟装置140可以执行的各种处理,并且将各处理的结果被输至该应用的屏幕画面。
例如,模拟终端101A可以构成为能够访问专用的网站,并通过登录该网站而与服务器系统102A连接。模拟终端101A能够在该网站上向服务器系统102A发送指令,使服务器系统102A执行模拟装置140能够执行的各种处理,并将各处理的结果输出到该网站。
由于服务器系统102A将各种工作区模型、模型数据和控制程序数据等各种数据存储在存储器102Ab中,所以模拟终端101A不需要具有很大的存储容量。由于服务器系统102A执行工作区模型的构建、控制程序数据的生成以及模拟的执行等需要大量处理量的处理,所以模拟终端101A不需要具有很高的处理能力。因此,各种用户可以使用各种模拟终端101A来利用模拟系统1A。服务器系统102A通过与多个机器人控制器300进行数据通信,能够执行利用了各机器人控制器300的校正控制程序数据Dpa的各种机器人模型的模拟。
(变形例2)
示例性实施方式的变形例2的模拟系统1B与变形例1的不同之处在于,机器人控制器的至少一部分存在于云上。以下,以与实施方式及变形例1的不同之处为中心对变形例2进行说明,适当省略与实施方式及变形例1相同之处的说明。
图10是用于表示根据示例性实施方式的变形例2的模拟系统1B的结构的一例的概要图。如图10所示,模拟系统1B包括模拟终端101A、作为第一服务器系统的服务器系统102A、机器人200、第二服务器系统301B、电力控制装置302B、中继装置303B和操作输入输出装置400。模拟终端101A、第一服务器系统102A、第二服务器系统301B、中继装置303B配置在相互不同的场所,经由通信网络N相互可数据通信地连接。例如,分别与多个机器人200连接的多个中继装置303B能够经由通信网络N与第二服务器系统301B连接。
第二服务器系统301B具有实施方式的机器人控制器300的计算机装置310的功能,例如能够实现多个计算机装置310的功能。第二服务器系统301B被构成为,对于一个或多个机器人200的每个、一个或多个电力控制装置302B的每个和一个或多个操作输入/输出装置400的每个起到机器人控制器300的作用。第二服务器系统301B被构成为对于第一服务器系统102A起到机器人控制器300的作用。
第二服务器系统301B包括服务器301Ba和存储器301Bb。另外,服务器301Ba可以包括存储器301Bb。服务器301Ba是计算机装置,存储器301Bb是存储装置。虽不限于此,在本变形例中,服务器301Ba具有计算机装置310的处理器11和内存12的功能,存储器301Bb具有存储器13的功能。
服务器301Ba安装有用于控制各种机器人200及其周围设备的软件。存储器301Bb存储各种机器人200及周围设备的数据、用于控制各种机器人200和周围设备的控制程序数据以及各种机器人200和周围设备的日志数据等信息。服务器301Ba使用存储在存储器301Bb中的信息,按照从外部接收的指令生成用于使机器人200等进行动作的指令,并发送给该机器人200的中继装置303B。服务器301Ba从第一服务器系统102A接收控制程序数据Dp,存储在存储器301Bb中,并将校正控制程序数据Dpa发送到第一服务器系统102A。
中继装置303B具有能够与通信网络N连接的通信接口。中继装置303B能够经由通信网络N与第二服务器系统301B连接。中继装置303B与搭载在机器人200上的传感器等、电力控制装置302B及操作输入输出装置400连接。中继装置303B居中调节该传感器、电力控制装置302B以及操作输入输出装置400与第二服务器系统301B之间的通信。中继装置303B例如可以包括调制解调器、ONU(光线路的终端装置)以及路由器等装置。
电力控制装置302B与外部电源连接,根据经由中继装置303B及通信网络N从第二服务器系统301B接收的指令等,控制向机器人200及其周围设备供给的电力。电力控制装置302B可以包括放大器、反相器和转换器等。第二服务器系统301B可以构成为将机器人200的各部及周围设备的各电机的电流的指令值等发送给电力控制装置302B,也可以构成为将机器人200的末端执行器220的目标动作指令等发送给电力控制装置302B。在后者的情况下,可以在电力控制装置302B中设置将目标动作指令转换为电机的电流的指令值的运算装置,也可以作为与电力控制装置302B不同的装置而设置。电力控制装置302B也可以将各电机的电流值及旋转量等作为反馈信息发送给第二服务器系统301B。
操作输入输出装置400的输入装置410根据输入的指令,将指令、信息及数据等经由中继装置303B及通信网络N发送给第二服务器系统301B。操作输入输出装置400的提示装置420提示经由中继装置303B及通信网络N从第二服务器系统301B接收的指令、信息及数据等。操作输入输出装置400能够经由通信网络N使第二服务器系统301B执行期望的处理。多个操作输入输出装置400能够访问第二服务器系统301B,使第二服务器系统301B执行各个期望的处理。
操作输入输出装置400可以包括计算机装置。例如,操作输入输出装置400可以是示教器、个人计算机、智能手机及平板电脑等智能装置、个人信息终端或其他终端装置等。
例如,操作输入输出装置400也可以构成为能够安装专用的应用,并通过启动该应用来确立中继装置303B与第二服务器系统301B的连接。操作输入输出装置400通过该应用,能够使第二服务器系统301B执行各种处理,并将各处理的结果输出到该应用的画面。
例如,操作输入输出装置400也可以构成为能够访问专用的网站,通过登录该网站来建立中继装置303B和第二服务器系统301B的连接。操作输入输出装置400可以在该网站上使第二服务器系统301B执行各种处理,并将各处理的结果输出到该网站上。
由于第二服务器系统301B将各种机器人200、周围设备以及控制程序数据等各种数据存储在存储器301Bb中,所以电力控制装置302B、中继装置303B以及操作输入输出装置400等不需要具有很大的存储容量。由于第二服务器系统301B执行机器人200的动作控制以及控制程序数据的校正等需要较多处理量的处理,所以电力控制装置302B、中继装置303B以及操作输入输出装置400等不需要具有很高的处理能力。因此,各种用户可以使用第二服务器系统301B来使各种机器人200进行动作。
另外,在变形例2中,操作输入输出装置400也可以构成为经由通信网络N与第二服务器系统301B、中继装置303B或这两者收发数据等。由此,能够通过配置在机器人工作区RA以外的场所的操作输入输出装置400进行机器人200的操作。
另外,在变形例2中,也可以不设置第一服务器系统102A。例如,可以设置实施方式的模拟计算机100来代替模拟终端101A和第一服务器系统102A。模拟计算机100可以通过通信网络N以数据通信的方式连接到第二服务器系统301B。
(其他的实施方式)
以上,对本发明的示例性实施方式进行了说明,但本发明不限于上述实施方式及变形例。即,可以在本发明的范围内进行各种变形和改良。例如,对实施方式和变形例实施了各种变形的方式以及组合不同的实施方式和变形例中的组成部分而构建的方式也包含在本发明的范围内。
例如,在实施方式的模拟系统中,模拟装置140也可以构成为,经由通信网络N可数据通信地与分别控制多个机器人200的多个机器人控制器300进行连接,与各机器人控制器300收发数据等。
尽管实施方式及变形例的模拟系统以工业用机器人200及其机器人模型为对象,但不限于此。例如,模拟系统的机器人对象可以是其它类型的机器人,如服务机器人、医用机器人、制药机器人和仿人机器人。服务机器人是在护理、医疗、清扫、警备、引导、救助、烹调、商品提供等各种服务业中使用的机器人。
另外,本发明的技术的各方式例如下所示。本发明的一个方式的模拟装置包括处理电路和存储装置,所述存储装置存储用于表示一系列的目标的动作的目标动作数据和与虚拟机器人模型相关联的数据,所述处理电路包括:模拟器功能部,其根据所述目标动作数据使所述机器人模型进行动作,并将进行动作的所述机器人模型的图像数据输出到显示装置;以及信息处理部,其接受对基于所述目标动作数据的所述机器人模型的动作且显示在所述显示装置所显示的图像上的第一动作的变更的输入,将表示反映了所述变更的动作即第二动作中的所述机器人模型的状态的信息与包含在所述目标动作数据中的所述第一动作的信息相关联地存储在所述存储装置中,所述模拟器功能部在使所述机器人模型进行所述第一动作的情况下,将表示所述第二动作的图像数据输出到所述显示装置。
根据上述方式,例如,在目标动作数据基于实机机器人的动作结果的情况下,目标动作数据可以反映实机机器人的刚性、惯性及粘性等特性。实机机器人与机器人模型之间存在特性差异,因此,根据相同目标动作数据的这些动作之间可能产生差异。模拟装置接受对于显示在显示装置的显示图像中且基于目标动作数据的机器人模型的第一动作的变更的输入。反映了上述变更的机器人模型的第二动作例如也可以设为与根据目标动作数据进行第一动作的实机机器人同样的动作。模拟装置在使机器人模型执行第一动作时,使显示装置显示表示第二动作的图像。因此,模拟装置能够根据目标动作数据使机器人模型进行动作,并在显示装置上显示表示与实机机器人同样的动作的机器人模型的图像。
在本发明的一个方式所涉及的模拟装置中,所述模拟器功能部在使所述机器人模型进行所述第一动作的情况下,按照从所述模拟装置的用户接受的指令,可选择地输出用于表示所述第二动作的图像数据或表示所述第一动作的图像数据。根据上述方式,模拟装置能够在使机器人模型执行第一动作的情况下,在显示装置上也显示表示第二动作和第一动作中的任一个的图像。因此,模拟装置能够显示用户期望的图像。
在本发明的一个方式的模拟装置中,所述处理电路还包括:构建部,其接受所述机器人模型及所述机器人模型的虚拟的周围环境模型的设定,构建所述机器人模型及所述周围环境模型;数据生成部,其接受使用了所述机器人模型及所述周围环境模型的所述机器人模型的目标的动作的设定,生成所述目标动作数据并存储在所述存储装置中;以及数据更新部,其接收来自外部设备的所述目标动作数据的输入,并使用接收到的所述目标动作数据,更新存储在所述存储装置中的所述目标动作数据。
根据上述方式,模拟装置能够进行机器人模型及周围环境模型的构建和使用了该机器人模型及周围环境模型的目标动作数据的生成。进而,模拟装置能够进行来自外部的目标动作数据的输入和使用了该目标动作数据的机器人模型及周围环境模型的动作。例如,在由模拟装置生成的目标动作数据通过实机机器人的实机控制装置等外部装置执行的过程中接受了变更的情况下,模拟装置能够使用变更后的目标动作数据而更新现有的目标动作数据。进而,模拟装置能够构建使用了更新后的目标动作数据的机器人模型及周围环境模型。因此,模拟装置能够构建反映了实机机器人的动作结果的机器人模型及周围环境模型。
在本发明的一个方式的模拟装置中,所述处理电路还包括数据发送部,该数据发送部经由通信网络向与所述机器人模型对应的实机机器人的实机控制装置发送所述目标动作数据,所述数据更新部经由所述通信网络从所述实机控制装置接收所述目标动作数据,并使用接收到的所述目标动作数据,更新存储在所述存储装置中的所述目标动作数据。根据上述方式,模拟装置容易与实机控制装置收发目标动作数据。模拟装置容易更新使用了由实机控制装置生成的目标动作数据的目标动作数据。
在本发明的一个方式的模拟装置中,所述目标动作数据是用于使与所述机器人模型对应的实机机器人执行动作的示教数据,所述数据更新部接受由所述实机机器人的实机控制装置校正后的所述示教数据的输入,并使用校正后的所述示教数据,更新所述存储装置中存储的所述示教数据。根据上述方式,模拟装置能够使用由实机控制装置更新的示教数据来执行机器人模型的模拟。
在本发明的一个方式的模拟装置中,所述模拟器功能部包括:模拟执行部,其根据所述目标动作数据而生成用于指令所述机器人模型的目标的动作的目标动作指令,并按照与所述目标动作指令对应的控制指令使所述机器人模型进行动作,将按照所述控制指令进行动作的所述机器人模型的所述图像数据输出到所述显示装置;虚拟机器人控制器,其从所述模拟执行部接收所述目标动作指令,根据所述目标动作指令而生成用于使所述机器人模型的各部进行动作的所述控制指令,并发送给所述模拟执行部;以及转换部,其在所述模拟执行部与所述虚拟机器人控制器之间,将从一方输出的数据转换为另一方能够利用的数据。
根据上述方式,例如,虚拟机器人控制器可以对应于实机控制装置,并对应于实机机器人的型号以及制造厂家等实机机器人的规格来设定。通过设置转换部,模拟执行部不需要分别对应于各种虚拟机器人控制器而设定。因此,模拟装置能够根据各种虚拟机器人控制器接受转换部的设定而发挥作用,能够提高通用性。
本发明的一个方式的模拟系统包括:第一服务器系统,其包含本发明一个方式的模拟装置的所述处理电路的所述模拟器功能部、所述信息处理部及所述存储装置的功能;以及终端装置,其具备所述显示装置和从所述模拟装置的用户接受输入的输入装置,所述第一服务器系统和所述终端装置经由通信网络相互可数据通信地连接,所述第一服务器系统构成为使所述终端装置发挥所述模拟装置的功能。根据上述方式,即使终端装置不具备模拟装置的功能,用户也能够使用终端装置访问第一服务器系统来进行机器人的模拟。例如,用户能够使用处理能力比第一服务器系统低的终端装置进行机器人的模拟。
本发明的一个方式的模拟系统具备多个所述终端装置,所述多个终端装置经由所述通信网络与所述第一服务器系统可相互数据通信地连接,所述第一服务器系统构成为分别使所述多个终端装置发挥所述模拟装置的功能。根据上述方式,多个用户能够使用各自的终端装置访问第一服务器系统来进行机器人的模拟。
在本发明的一个方式的模拟系统中,所述第一服务器系统经由所述通信网络与对应于所述机器人模型的实机机器人的实机控制装置可相互数据通信地连接,所述第一服务器系统构成为使所述实机控制装置发挥所述模拟装置的功能。根据上述方式,第一服务器系统能够通过通信网络与对应于上述机器人模型的实机控制装置进行信息的收发。例如,第一服务器系统能够与实机控制装置进行目标动作数据的收发。
在本发明的一个方式的模拟系统中,所述第一服务器系统经由所述通信网络与包含实机机器人的实机控制装置的运算功能及存储功能的第二服务器系统可相互数据通信地连接,所述第一服务器系统构成为使所述第二服务器系统发挥所述模拟装置的功能,所述第二服务器系统经由所述通信网络而与所述实机机器人的电力控制装置、所述实机机器人的操作输入输出装置可相互数据通信地连接,所述第二服务器系统构成为使所述电力控制装置、所述操作输入输出装置及所述第一服务器系统实现所述实机控制装置的运算功能及存储功能。
根据上述方式,即使在实机控制装置、电力控制装置和操作输入输出装置中的至少2个未配置在彼此的附近的情况下,用户也能够使用操作输入输出装置访问第二服务器系统并使实机机器人进行动作。而且,第一服务器系统能够经由通信网络与第二服务器系统进行信息的发送接收。
在本发明的一个方式的模拟系统中,所述第二服务器系统经由所述通信网络而与多个所述电力控制装置、多个所述操作输入输出装置可相互数据通信地连接,所述第二服务器系统构成为包含多个所述实机控制装置的运算功能及存储功能,使多个所述电力控制装置、多个所述操作输入输出装置及所述第一服务器系统实现多个所述实机控制装置的运算功能及存储功能。根据上述方式,多个用户能够使用各自的操作输入输出装置访问第二服务器系统,使多个机器人中的作为对象的机器人进行动作。
本说明书公开的组成部分的功能可使用电路或处理电路来执行,所述电路或处理电路包括配置或编程以执行所公开的功能的通用处理器、专用处理器、集成电路、ASIC(Application-Specific Integrated Circuit)、常规电路和/或它们的组合。处理器被视为处理电路或电路,因为包括晶体管、其它电路。在本发明中,电路、单元或装置是执行所列举的功能的硬件,或者是被编程为执行所列举的功能的硬件。硬件可以是本说明书公开的硬件,或者可以是编程或配置成执行所例举的功能的其它已知硬件。如果硬件是被认为是电路的一种的处理器,则电路、装置或单元是硬件和软件的组合,软件用于硬件和/或处理器的构成。
上述使用的序号、数量等数字全都是为了具体说明本发明的技术而例示的,本发明不限于例示的数字。另外,组成部分间的连接关系是为了具体说明本发明的技术而例示的,用于实现本发明的功能的连接关系不限于此。
由于本发明的范围由所附权利要求而非说明书的记载定义,因此本发明不脱离其本质特征的精神,可以以各种形式实施,示例性实施方式和变形例是示例性的而非限制性的。权利要求及其范围内的所有变更或权利要求及其范围的等同物均被权利要求所包含。
标号说明
1,1A,1B模拟系统
101A模拟终端(终端装置)
102A第一服务器系统
110计算机装置
130提示装置(显示装置)
140模拟装置
140a模拟执行部
140b虚拟机器人控制器
140c转换部
200机器人(实机机器人)
300机器人控制器(实机控制装置)
301B第二服务器系统
302B电力控制装置
400操作输入装置
1403构建部
1404数据生成部
1405模拟器功能部
1406数据发送部
1408数据更新部
1409处理部(信息处理部)
1410存储部
N通信网络
W对象物

Claims (11)

1.一种模拟装置,其特征在于,
包括处理电路和存储装置,
所述存储装置存储用于表示一系列的目标的动作的目标动作数据和与虚拟的机器人模型相关联的数据,
所述处理电路包括:
模拟器功能部,其根据所述目标动作数据使所述机器人模型进行动作,并将进行动作的所述机器人模型的图像数据输出到显示装置;以及
信息处理部,其接受对基于所述目标动作数据的所述机器人模型的动作且显示在所述显示装置所显示的图像上的第一动作的变更的输入,将表示反映了所述变更的动作即第二动作中的所述机器人模型的状态的信息与包含在所述目标动作数据中的所述第一动作的信息相关联地存储在所述存储装置中,
所述模拟器功能部在使所述机器人模型进行所述第一动作的情况下,将表示所述第二动作的图像数据输出到所述显示装置。
2.根据权利要求1所述的模拟装置,其特征在于,
所述模拟器功能部在使所述机器人模型进行所述第一动作的情况下,按照从所述模拟装置的用户接受的指令,可选择地输出用于表示所述第二动作的图像数据或表示所述第一动作的图像数据。
3.根据权利要求1或2所述的模拟装置,其特征在于,
所述处理电路还包括:
构建部,其接受所述机器人模型及所述机器人模型的虚拟的周围环境模型的设定,构建所述机器人模型及所述周围环境模型;以及
数据生成部,其接受使用了所述机器人模型及所述周围环境模型的所述机器人模型的目标的动作的设定,生成所述目标动作数据并存储在所述存储装置中;以及
数据更新部,其接收来自外部设备的所述目标动作数据的输入,并使用接收到的所述目标动作数据,更新存储在所述存储装置中的所述目标动作数据。
4.根据权利要求3所述的模拟装置,其特征在于,
所述处理电路还包括数据发送部,该数据发送部经由通信网络向与所述机器人模型对应的实机机器人的实机控制装置发送所述目标动作数据,
所述数据更新部经由所述通信网络从所述实机控制装置接收所述目标动作数据,并使用接收到的所述目标动作数据,更新存储在所述存储装置中的所述目标动作数据。
5.根据权利要求3或4所述的模拟装置,其特征在于,
所述目标动作数据是用于使与所述机器人模型对应的实机机器人执行动作的示教数据,
所述数据更新部接受由所述实机机器人的实机控制装置校正后的所述示教数据的输入,并使用校正后的所述示教数据,更新所述存储装置中存储的所述示教数据。
6.根据权利要求1~5中任一项所述的模拟装置,其特征在于,
所述模拟器功能部包括:
模拟执行部,其根据所述目标动作数据而生成用于指令所述机器人模型的目标的动作的目标动作指令,并按照与所述目标动作指令对应的控制指令而使所述机器人模型进行动作,将按照所述控制指令进行动作的所述机器人模型的所述图像数据输出到所述显示装置;
虚拟机器人控制器,其从所述模拟执行部接收所述目标动作指令,根据所述目标动作指令而生成用于使所述机器人模型的各部进行动作的所述控制指令,并发送给所述模拟执行部;以及
转换部,其在所述模拟执行部与所述虚拟机器人控制器之间,将从一方输出的数据转换为另一方能够利用的数据。
7.一种模拟系统,其特征在于,包括:
第一服务器系统,其包含权利要求1~6中任一项所述的模拟装置的所述处理电路的所述模拟器功能部、所述信息处理部及所述存储装置的功能;以及
终端装置,其具备所述显示装置和从所述模拟装置的用户接受输入的输入装置,
所述第一服务器系统和所述终端装置经由通信网络相互可数据通信地连接,
所述第一服务器系统构成为使所述终端装置发挥所述模拟装置的功能。
8.根据权利要求7所述的模拟系统,其特征在于,
具备多个所述终端装置,
所述多个终端装置经由所述通信网络与所述第一服务器系统可相互数据通信地连接,
所述第一服务器系统构成为分别使所述多个终端装置发挥所述模拟装置的功能。
9.根据权利要求7或8所述的模拟系统,其特征在于,
所述第一服务器系统经由所述通信网络与对应于所述机器人模型的实机机器人的实机控制装置可相互数据通信地连接,
所述第一服务器系统构成为使所述实机控制装置发挥所述模拟装置的功能。
10.根据权利要求7~9中任一项所述的模拟系统,其特征在于,
所述第一服务器系统经由所述通信网络与包含实机机器人的实机控制装置的运算功能及存储功能的第二服务器系统可相互数据通信地连接,
所述第一服务器系统构成为使所述第二服务器系统发挥所述模拟装置的功能,
所述第二服务器系统经由所述通信网络而与所述实机机器人的电力控制装置、所述实机机器人的操作输入输出装置可相互数据通信地连接,
所述第二服务器系统构成为使所述电力控制装置、所述操作输入输出装置及所述第一服务器系统实现所述实机控制装置的运算功能及存储功能。
11.根据权利要求10所述的模拟系统,其特征在于,
所述第二服务器系统经由所述通信网络而与多个所述电力控制装置、多个所述操作输入输出装置可相互数据通信地连接,
所述第二服务器系统构成为包含多个所述实机控制装置的运算功能及存储功能,对多个所述电力控制装置、多个所述操作输入输出装置及所述第一服务器系统实现多个所述实机控制装置的运算功能及存储功能。
CN202180053238.9A 2020-08-28 2021-08-30 模拟装置及模拟系统 Pending CN115997182A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020144512A JP7442413B2 (ja) 2020-08-28 2020-08-28 シミュレーション装置及びシミュレーションシステム
JP2020-144512 2020-08-28
PCT/JP2021/031659 WO2022045320A1 (ja) 2020-08-28 2021-08-30 シミュレーション装置及びシミュレーションシステム

Publications (1)

Publication Number Publication Date
CN115997182A true CN115997182A (zh) 2023-04-21

Family

ID=80355217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180053238.9A Pending CN115997182A (zh) 2020-08-28 2021-08-30 模拟装置及模拟系统

Country Status (5)

Country Link
US (1) US20240037294A1 (zh)
JP (1) JP7442413B2 (zh)
KR (1) KR20230048430A (zh)
CN (1) CN115997182A (zh)
WO (1) WO2022045320A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7386282B2 (ja) 2022-03-14 2023-11-24 株式会社アマダ 切断部材処理装置及び切断システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0929673A (ja) * 1995-07-10 1997-02-04 Mitsubishi Heavy Ind Ltd マニピュレータ制御装置
JP2001100834A (ja) 1999-09-29 2001-04-13 Nissan Motor Co Ltd ロボット教示データの作成装置およびその方法
JP2007260834A (ja) 2006-03-28 2007-10-11 Japan Aerospace Exploration Agency オフセット・ロボット総合管理システム
JP7117237B2 (ja) 2018-12-27 2022-08-12 川崎重工業株式会社 ロボット制御装置、ロボットシステム及びロボット制御方法

Also Published As

Publication number Publication date
KR20230048430A (ko) 2023-04-11
US20240037294A1 (en) 2024-02-01
JP2022039471A (ja) 2022-03-10
JP7442413B2 (ja) 2024-03-04
WO2022045320A1 (ja) 2022-03-03

Similar Documents

Publication Publication Date Title
TWI673148B (zh) 遠端操作機器人系統及其運轉方法
US10864632B2 (en) Direct teaching method of robot
US20220212340A1 (en) Control device, control system, mechanical apparatus system, and controlling method
JP7184595B2 (ja) 工作機械システム
KR102525831B1 (ko) 제어 시스템, 컨트롤러 및 제어 방법
US10786898B2 (en) Method for the automatic configuration of an external control system for the open-loop and/or closed-loop control of a robot system
KR102518766B1 (ko) 데이터 생성 장치, 데이터 생성 방법, 데이터 생성 프로그램 및 원격 조작 시스템
CN115997182A (zh) 模拟装置及模拟系统
WO2022131335A1 (ja) 制御装置、ロボットシステム及び学習装置
JP6905651B1 (ja) ロボットシステム及びワークの3次元モデルの形成方法
CN115697649A (zh) 生产系统、单元控制器、机器人控制器以及控制方法
CN116635799A (zh) 模拟装置和模拟程序
US10754320B2 (en) Method and apparatus for integrating an external motion planner with an industrial controller
JP2021142596A (ja) シミュレーション装置およびプログラム
CN112041128A (zh) 机器人的教导方法和机器人的教导系统
JP7374867B2 (ja) 制御システム、ローカルコントローラ及び制御方法
US20220283568A1 (en) System and method for controlling at least one machine, more particularly a collective of machines
Kuts et al. Digital Twin: Universal User Interface for Online Management of the Manufacturing System
US20230166403A1 (en) An industrial robot system
KR20150044241A (ko) 로봇 자세 교시장치 및 그 방법
JP2021045816A (ja) 冗長自由度ロボットアームの操作支援装置、方法及びプログラム
WO2023068351A1 (ja) ロボットデータ処理サーバ及び軌跡データ算出方法
WO2023068352A1 (ja) ロボットデータ処理サーバ及び補正プログラム算出方法
WO2021193905A1 (ja) ロボットシステムの制御方法
Bonci et al. ROS 2 for enhancing perception and recognition in collaborative robots performing flexible tasks

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