模拟装置、模拟程序以及模拟方法与流程
本技术涉及一种能够对配置在虚拟空间内的工件(work)的行为进行推测的模拟(simulation)装置、模拟程序以及模拟方法。
背景技术:
使用计算机(computer)的模拟被应用于各种技术领域。通过使用此种模拟,即使在不存在现实装置的状态下,也能够进行各种事先研讨。作为将此种模拟利用于工厂自动化(factoryautomation,fa)的示例,例如日本专利特开2016-042378号公报(专利文献1)公开了一种包含与虚拟拍摄部对应的实际空间的视觉传感器在内的机械系统的综合模拟。
现有技术文献
专利文献
专利文献1:日本专利特开2016-042378号公报
技术实现要素:
发明所要解决的问题
所述专利文献1所公开的综合模拟是通过虚拟视觉传感器来虚拟地拍摄配置在虚拟输送机上的虚拟工件。虚拟工件的位置是由虚拟输送机的动作来唯一决定。在现实中,不仅存在通过输送机来搬送工件的系统,还存在通过某些致动器等来变更工件的位置的系统。专利文献1对于有关此种系统的模拟未作任何公开。
本技术的一个目的在于提供一种结构,对于对工件给予某些外力的系统也能够综合地模拟行为。
解决问题的技术手段
一个实施方式的模拟装置包括:第一模拟器,算出配置在虚拟空间内的一个或多个工件的行为;测量处理部,对于通过利用配置在虚拟空间的任意视点位置的虚拟摄像机来拍摄虚拟空间而生成的虚拟图像,执行测量处理;第二模拟器,算出机器人的行为,所述机器人基于根据测量处理部对工件的测量结果而生成的运行指令,来对配置在虚拟空间内的工件进行搬送;以及图像生成部,生成将虚拟空间视觉化的图像。
根据本公开,能够实现使下述处理彼此关联的模拟,即:算出配置在虚拟空间内的一个或多个工件的行为;对虚拟图像执行测量处理;以及算出机器人的行为,所述机器人基于根据工件的测量结果而生成的运行指令来对配置在虚拟空间内的工件进行搬送。由此,能够实现对各工件的行为进行再现的模拟。
所述公开中,模拟装置也可还包括:第三模拟器,算出工件搬送装置的行为,所述工件搬送装置对第一模拟器算出行为的一个或多个工件给予外力。根据本公开,能够再现决定对各工件给予的外力的工件搬送装置的行为,因此能够更准确地再现各工件的行为。
所述公开中,模拟装置也可还包括:虚拟摄像部,对配置在虚拟空间内的虚拟摄像机进行管理,并且根据虚拟摄像机的视点位置及视野范围来生成虚拟图像。根据本公开,将虚拟摄像机配置在虚拟空间的任意位置后,能够再现图像测量,因此也能够实现使虚拟摄像机的位置不同的评估。
所述公开中,第一模拟器也可在规定的每个时间步长(timestep)算出各工件的位置及姿势并进行更新。根据本公开,能够在每个时间步长再现工件的行为。
所述公开中,第一模拟器也可响应任意时间的、对任意工件的位置或特性的变更操作,根据变更后的位置或特性,来继续一个或多个工件的行为的算出。根据本公开,能够容易地实现使特定工件的行为不同等的任意的试行错误。
根据本技术的另一实施方式,提供一种用于使计算机执行模拟的模拟程序。模拟程序使计算机执行下述步骤:算出配置在虚拟空间内的一个或多个工件的行为;对于通过利用配置在虚拟空间的任意视点位置的虚拟摄像机来拍摄虚拟空间而生成的虚拟图像,执行测量处理;算出机器人的行为,所述机器人基于根据通过测量处理的执行所获得的测量结果而生成的运行指令,来对配置在虚拟空间内的工件进行搬送;以及生成将虚拟空间视觉化的图像。
根据本公开,能够实现使下述处理彼此关联的模拟,即:算出配置在虚拟空间内的一个或多个工件的行为;对虚拟图像执行测量处理;以及算出机器人的行为,所述机器人基于根据工件的测量结果而生成的运行指令来对配置在虚拟空间内的工件进行搬送。由此,能够实现对各工件的行为进行再现的模拟。
根据本技术的又一实施方式,提供一种在计算机中执行的模拟方法。模拟方法包含由计算机所执行的下述步骤:算出配置在虚拟空间内的一个或多个工件的行为;对于通过利用配置在虚拟空间的任意视点位置的虚拟摄像机来拍摄虚拟空间而生成的虚拟图像,执行测量处理;算出机器人的行为,所述机器人基于根据通过测量处理的执行所获得的测量结果而生成的运行指令,来对配置在虚拟空间内的工件进行搬送;以及生成将虚拟空间视觉化的图像。
根据本公开,能够实现使下述处理彼此关联的模拟,即:算出配置在虚拟空间内的一个或多个工件的行为;对虚拟图像执行测量处理;以及算出机器人的行为,所述机器人基于根据工件的测量结果而生成的运行指令来对配置在虚拟空间内的工件进行搬送。由此,能够实现对各工件的行为进行再现的模拟。
发明的效果
根据本技术,能够提供一种对于对工件给予某些外力的系统也能够综合地模拟行为的结构。
附图说明
图1是表示本实施方式的模拟装置的适用例的示意图。
图2是表示成为本实施方式的模拟装置的模拟对象的工件搬送系统的一例的外观图。
图3是对用于实现图2所示的工件搬送系统的控制功能进行说明的示意图。
图4是表示用于实现本实施方式的模拟装置的硬件结构的一例的示意图。
图5是表示用于实现本实施方式的模拟装置的功能结构的一例的示意图。
图6是表示显示画面的一例的图,所述显示画面表示将由本实施方式的模拟装置所执行的模拟结果视觉化的虚拟空间。
图7是表示由本实施方式的模拟装置所执行的模拟结果中的、表示工件的对象物的时间变化的一例的图。
图8是表示由本实施方式的模拟装置所执行的模拟结果中的与图像测量相关的显示画面的一例的图。
图9是表示由本实施方式的模拟装置所执行的物理模拟的一例的图。
图10是表示在本实施方式的模拟装置中执行的处理流程的流程图。
图11是表示与使用本实施方式的模拟装置的参数调整相关的处理流程的流程图。
具体实施方式
一边参照附图,一边详细说明本发明的实施方式。另外,对于图中的相同或相当的部分,标注相同的符号并不再重复其说明。
<a.适用例>
首先,对适用本发明的场景的一例进行说明。
本实施方式的模拟装置1对于对工件给予某些外力的系统也能够综合地模拟行为。典型的是,可适用于如下所述的应用,即:通过如后所述的工件搬送装置来给予外力,由此来搬送工件,并且对拍摄所搬送的工件而获得的虚拟图像执行测量处理,基于所述测量处理的结果,利用机器人来拾取工件。
图1是表示本实施方式的模拟装置1的适用例的示意图。参照图1,模拟装置1包含虚拟空间信息105,所述虚拟空间信息105对虚拟空间及配置在虚拟空间内的对象物进行规定。通过算出虚拟空间内的各对象物的行为,从而适当更新虚拟空间信息105的内容。
模拟装置1包含工件行为模拟器154,所述工件行为模拟器154算出配置在虚拟空间内的一个或多个工件的行为。工件行为模拟器154相当于第一模拟器。工件行为模拟器154基于工件参数来推测位于虚拟空间内的各工件的行为。
模拟装置1包含图像测量模块158,所述图像测量模块158对于通过利用配置在虚拟空间的任意视点位置的虚拟摄像机来拍摄虚拟空间而生成的虚拟图像,执行测量处理。图像测量模块158相当于测量处理部。即,图像测量模块158是将虚拟空间作为对象的一种视觉传感器。
模拟装置1包含机器人模拟器160,所述机器人模拟器160算出机器人的行为,所述机器人基于根据图像测量模块158对工件的测量结果而生成的运行指令,来对配置在虚拟空间内的工件进行搬送。机器人模拟器160相当于第二模拟器。
模拟装置1包含视觉化工具(visualizer)164,所述视觉化工具164生成将虚拟空间视觉化的图像。视觉化工具164相当于图像生成部。
通过这些组件及模块彼此联动,即使不存在现实的系统,也能够准确地推测在现实的系统中对工件进行处理时可能产生的工件及各装置的行为。
<b.对象系统例>
接下来,对成为本实施方式的模拟装置1的模拟对象的系统的一例进行说明。
图2是表示成为本实施方式的模拟装置1的模拟对象的工件搬送系统2的一例的外观图。参照图2,工件搬送系统2包括工件搬送装置10、与摄像机22连接的图像测量装置20、机器人30以及输送机50。
工件搬送装置10包含工件供给部12及工件搬送部14。工件供给部12将多个工件4保持在收容部中,并且定期地、或者根据某些事件而振动,由此,将保持在收容部中的工件的一部分或全部供给至工件搬送部14的搬送面16。关于工件搬送部14,也能定期地、或者根据某些事件而振动,对配置在搬送面16上的工件4给予外力,由此使各工件4的配置位置及姿势发生变更。
摄像机22被配置成,工件搬送部14的搬送面16的至少一部分进入视野。图像测量装置20对通过摄像机22的摄像而获取的图像执行测量处理,由此来测量配置在搬送面16上的工件4的位置及姿势。通过工件搬送部14定期地、或者根据事件而振动,从而适当变更各工件4的位置及姿势,提高通过图像测量装置20来适当地测量工件4的准确率。
机器人30基于图像测量装置20对工件4的测量结果(位置及姿势),通过配置在臂前端的吸附部32来吸附所测量的任一工件4。并且,机器人30将所吸附(拾取)的工件4搬送至输送机50,并配置(放置(place))到输送机50的规定位置。工件搬送系统2中的机器人30的运行也被称作拾取和放置运行。
输送机50的搬送面基本上以固定速度移动,配置于搬送面的工件4以固定速度被搬送向下游侧的处理工序。
图3是对用于实现图2所示的工件搬送系统2的控制功能进行说明的示意图。参照图3,工件搬送系统2具有连接于摄像机22的图像测量装置20。图像测量装置20基于预先设定的工件模型信息24,对由摄像机22所拍摄的图像执行测量处理,由此来输出工件测量结果(包含各工件的位置及姿势的测量结果)。
工件搬送系统2还具有机器人控制器40。机器人控制器40基于来自图像测量装置20的工件测量结果来获取应拾取的工件的位置及姿势,并基于所述获取的信息来对机器人30给予运行指令。
工件搬送系统2还具有进给控制器18。进给控制器18定期地、或者根据某些事件来驱动作为振动发生致动器的工件供给部12。同样地,进给控制器18定期地、或者根据某些事件来驱动作为振动发生致动器的工件搬送部14。
以下,作为典型例,对本实施方式的模拟装置1高精度地再现图2及图3所示的工件搬送系统2的各装置及工件4的运行或行为的情况进行说明。
<c.硬件结构>
接下来,对本实施方式的模拟装置1的硬件结构的一例进行说明。
图4是表示用于实现本实施方式的模拟装置1的硬件结构的一例的示意图。模拟装置1是通过图4所示的信息处理装置100执行必要的程序而实现。
信息处理装置100包含下述部分作为主要的组件,即:处理器102,执行操作系统(operatingsystem,os)及如后所述的各种程序;主存储器104,提供用于保存处理器102中的程序执行所需的数据的作业区域;键盘或鼠标等受理用户操作的操作单元106(操作受理部);显示器、各种指示器(indicator)、打印机等输出处理结果的输出单元108;网络接口110,连接于网络;光学驱动器112;本地通信接口116,与外部装置进行通信;以及贮存器120。这些组件经由内部总线118等可进行数据通信地连接。
信息处理装置100具有光学驱动器112,从非一次性地保存计算机可读取的程序的光学记录介质(例如数字多功能光盘(digitalversatiledisc,dvd))等计算机可读取的记录介质114中读取各种程序并安装于贮存器120等中。
由信息处理装置100所执行的各种程序也可经由计算机可读取的记录介质114而安装,但也可以从网络上的服务器装置等下载的形式而安装。而且,与本实施方式的功能安全的评估相关的程序也有时以利用os所提供的模块的一部分的形式而实现。
贮存器120例如包含硬盘驱动器(harddiskdrive,hdd)或闪速固态硬盘(flashsolidstatedrive,ssd)等,保存由处理器102所执行的程序。具体而言,贮存器120包含物理模拟程序122、图像测量程序126、机器人模拟程序130及综合程序134,以作为用于实现本实施方式的模拟的模拟程序。
物理模拟程序122算出工件搬送装置10的行为以及受到来自工件搬送装置10的影响的工件4的行为。对于物理模拟程序122,给予物理模拟参数124,所述物理模拟参数124包含对工件搬送装置10的行为进行规定的参数、以及对工件4的重量或形状等进行规定的参数。物理模拟参数124的值也可通过用户操作或综合程序134等来适当变更。
作为物理模拟参数124,也可使用工件搬送装置10及工件4的计算机辅助设计(computeraideddesign,cad)数据。通过使用cad数据,能够更准确地再现现实装置的行为。
图像测量程序126对于反映出由物理模拟程序122所算出的各工件4的位置及姿势的虚拟拍摄的图像,执行与图像测量装置20实质上相同的测量处理。对于图像测量程序126,给予图像测量参数128,所述图像测量参数128包含图像测量装置20中的测量处理所需的参数。
机器人模拟程序130作为对机器人30的行为进行再现的模拟器发挥功能。机器人模拟程序130基于通过图像测量程序126的执行而算出的测量结果,来再现机器人30对工件4的拾取和放置运行。对于机器人模拟程序130,给予机器人参数132,所述机器人参数132包含机器人30的行为的再现所需的参数。
综合程序134执行用于使物理模拟程序122、图像测量程序126与机器人模拟程序130彼此联动的处理。具体而言,典型的是,综合程序134在主存储器104上,生成及更新对虚拟空间的对象物的状态进行记述的虚拟空间信息105。物理模拟程序122、图像测量程序126以及机器人模拟程序130参照虚拟空间信息105来执行各模拟的处理,并且将其执行结果中的必要信息反映至虚拟空间信息105。通过综合程序134所提供的功能,对包含工件搬送装置10、图像测量装置20及机器人30的工件搬送系统2的行为及处理进行再现。
图4中表示了利用单个信息处理装置100来实现模拟装置1的示例,但也可使多个信息处理装置关联而实现模拟装置1。此时,也可利用信息处理装置100来执行实现模拟装置1所需的处理的一部分,并且利用网络上的服务器(云(cloud))等来执行剩余的处理。
图4表示通过处理器102执行一个或多个程序来实现模拟装置1的示例,但也可使用专用集成电路(applicationspecificintegratedcircuit,asic)或现场可编程门阵列(fieldprogrammablegatearray,fpga)等来安装实现模拟装置1所需的处理及功能的一部分。
<d.功能结构>
接下来,对本实施方式的模拟装置1的功能结构的一例进行说明。图5是表示用于实现本实施方式的模拟装置1的功能结构的一例的示意图。典型的是,图5所示的各功能结构是通过信息处理装置100的处理器102执行程序(物理模拟程序122、图像测量程序126、机器人模拟程序130以及综合程序134等)而实现。
参照图5,模拟装置1包含虚拟空间信息管理模块150、工件搬送模拟器152、工件行为模拟器154、虚拟摄像模块156、图像测量模块158、机器人模拟器160、工件跟踪模块162及视觉化工具164,以作为其功能结构。
虚拟空间信息管理模块150是通过执行综合程序134(图4)而实现,对虚拟空间信息105进行管理,所述虚拟空间信息105对实施模拟的虚拟空间的各对象物的位置及姿势等信息进行规定。
工件搬送模拟器152相当于算出工件搬送装置10的行为的第三模拟器,所述工件搬送装置10对工件行为模拟器154算出行为的一个或多个工件4给予外力。工件搬送模拟器152是通过执行物理模拟程序122而实现,通过物理模拟参数124来再现工件搬送装置10的行为。更具体而言,工件搬送模拟器152分别再现构成工件搬送装置10的工件供给部12及工件搬送部14的行为。由工件搬送模拟器152所算出的工件搬送装置10的行为的信息被反映至虚拟空间信息105。
工件行为模拟器154相当于算出配置在虚拟空间内的一个或多个工件4的行为的第一模拟器。具体而言,工件行为模拟器154是通过执行物理模拟程序122而实现,根据工件搬送模拟器152所模拟的工件搬送装置10的行为的信息,在规定的每个时间步长算出配置在虚拟空间内的各工件4的位置及姿势并进行更新。工件行为模拟器154在每个时间步长算出各工件4的位置及姿势时,在每个时间步长算出各工件4的重量、位置、姿势、移动速度、移动方向等。各工件4的位置及姿势是基于由用户等任意设定的工件参数而算出。由工件行为模拟器154所算出的工件4的位置及姿势的信息被反映至虚拟空间信息105。
虚拟摄像模块156相当于虚拟摄像部,所述虚拟摄像部对配置在虚拟空间内的虚拟摄像机进行管理,并且根据虚拟摄像机的视点位置及视野范围来生成虚拟图像。虚拟摄像模块156是通过执行图像测量程序126而实现,通过利用配置在虚拟空间的任意视点位置的虚拟摄像机来拍摄虚拟空间,从而生成虚拟图像。用户能够将虚拟摄像机配置在任意位置,且对于虚拟摄像机的视野范围也能够任意变更。
图像测量模块158相当于测量处理部,所述测量处理部对通过利用配置在虚拟空间的任意视点位置的虚拟摄像机拍摄虚拟空间而生成的虚拟图像执行测量处理。图像测量模块158是通过执行图像测量程序126而实现,对来自虚拟摄像模块156的虚拟图像执行由图像测量参数128所规定的测量处理,并输出测量结果。
机器人模拟器160相当于第二模拟器,所述第二模拟器算出机器人30的行为,所述机器人30基于根据测量处理部对工件的测量结果而生成的运行指令,来对配置在虚拟空间内的工件4进行搬送。更具体而言,机器人模拟器160是通过执行机器人模拟程序130而实现,根据来自图像测量模块158的测量结果来再现机器人30的行为。由机器人模拟器160所算出的机器人30的行为的信息被反映至虚拟空间信息105。
工件跟踪模块162是通过执行机器人模拟程序130而实现,基于来自机器人模拟器160的机器人30的行为信息,对在虚拟空间内由机器人30所拾取和放置的工件4进行跟踪。由工件跟踪模块162所跟踪的工件4的位置信息(工件位置)被反映至虚拟空间信息105。
视觉化工具164相当于图像生成部,所述图像生成部生成将虚拟空间视觉化的图像。视觉化工具164基于虚拟空间信息管理模块150所管理的虚拟空间信息105,将虚拟空间的各对象物(工件搬送装置10、机器人30、工件4等)的行为视觉化。
通过图5所示的各功能彼此联动,能够高精度地再现作为模拟对象的系统(例如工件搬送系统2)的行为。
<e.模拟例>
接下来,对通过本实施方式的模拟装置1所提供的模拟的一例进行说明。
图6是表示显示画面200的一例的图,所述显示画面200表示将由本实施方式的模拟装置1所执行的模拟结果视觉化的虚拟空间。参照图6,在显示画面200上,表达有执行模拟的虚拟空间202,并且表达有表示配置在虚拟空间202内的机器人的对象物204、相当于多个工件的对象物206、以及简略地表示工件搬送装置10的搬送面16的对象物208。
基于通过模拟装置1执行模拟而在每个时间步长算出的位置及姿势的信息(时间变化),这些对象物204、206、208使位置及姿势发生变化。其结果,表现得如同对象物204、对象物206、对象物208在虚拟空间202内移动那样。
图7是表示由本实施方式的模拟装置1所执行的模拟结果中的表示工件4的对象物206的时间变化的一例的图。图7(a)~图7(c)中,作为工件4,表示多个螺栓及螺母。图7(a)~图7(c)所示的经视觉化的结果中,与工件4各自对应的对象物206的位置随时间发生变化。
本实施方式中,通过物理模拟来个别地算出各工件4的位置及姿势,并且也反映出与其他工件4等的碰撞造成的影响。根据工件4各自的质量或被给予的外力的大小等,工件4各自的轨迹也将发生变化。
其结果,例如,如图7(a)~图7(c)所示,在初始状态下为一定程度的集合体的工件4随着时间的经过而变得四处分散。这样,本实施方式的模拟装置1中,通过物理模拟来个别地算出工件4的行为,因此能够实现高精度的模拟。
图8是表示由本实施方式的模拟装置1所执行的模拟结果中的与图像测量相关的显示画面的一例的图。参照图8,显示画面210包含成为图像测量模块158的测量处理对象的虚拟图像220的一例。在虚拟图像220内,显示有通过对虚拟图像220的测量处理而获得的识别结果222。
显示画面210包含用于设定与测量处理相关的图像测量参数128的设定窗口224。用户通过操作设定窗口224,也能够设定任意的图像测量参数128。关于图像测量参数128的详细,能够采用一般的测量处理中所用的参数,因此不再对各参数进行进一步的详细说明。
通过察看图6~图8所示的经视觉化的结果,即使现实中不存在作为模拟对象的系统(例如工件搬送系统2),用户也能够确认其高精度地再现的行为。
<f.物理模拟>
接下来,对在本实施方式的模拟装置1中采用的物理模拟进行说明。
本实施方式的模拟装置1中,即使在多个工件4成为对象的情况下,也能够算出各工件4的时间行为。在存在多个工件4的情况下,运算量增加,因此也可使用公知的算法来降低运算量。
作为此种降低运算量的算法的一例,能够使用分级近似凸分解(hierarchicalapproximateconvexdecomposition,hacd)算法。根据hacd算法,通过对成为物理模拟对象的对象物进行凸分解,从而无须使所述对象物的形状发生变化,而能够通过简化对象物来使物理运算高速化。
在本实施方式的模拟装置1中采用的物理模拟能够推测工件4各自的行为。进而,也能够在任意时间,任意变更任意工件4的位置或特性等。
图9是表示由本实施方式的模拟装置1所执行的物理模拟的一例的图。在图9(a)所示的显示画面230上,能够通过光标232来选择与任意工件4对应的对象物206。通过选择任意的对象物206,模拟整体也可暂时停止。此时,如图9(b)所示,通过光标232将所选择的对象物206配置到任意位置,由此,能够从所述新配置的位置开始继续模拟。
即,工件行为模拟器154(第一模拟器)响应任意时间的、对任意工件的位置或特性的变更操作,根据变更后的位置或特性而继续一个或多个工件4的行为的算出。
这样,在本实施方式的模拟装置1中所采用的物理模拟中,能够在任意时间变更关于多个工件4中的任意工件4的行为,因此通过在虚拟空间上将任意工件4配置到任意位置,从而能够事先确认各装置的行为。
<g.处理流程>
接下来,对在本实施方式的模拟装置1中执行的处理流程进行说明。
图10是表示在本实施方式的模拟装置1中执行的处理流程的流程图。典型的是,图10所示的各步骤是通过信息处理装置100的处理器102执行程序(物理模拟程序122、图像测量程序126、机器人模拟程序130以及综合程序134等)而实现。
参照图10,首先,信息处理装置100读取由用户所指定的各种设定(物理模拟参数124、图像测量参数128、机器人参数132、cad数据及其他设定信息)(步骤s100),生成模拟所需的初始数据(步骤s102)。
当指示模拟的开始时(步骤s104中为是),信息处理装置100执行算出配置在虚拟空间内的一个或多个工件4的行为的处理。
具体而言,信息处理装置100算出下个时间步长的工件搬送装置10的状态(位置、速度、加速度、姿势等)(步骤s106)。然后,信息处理装置100基于下个时间步长的工件搬送装置10的状态,算出对各工件4给予的外力(步骤s108),并基于所算出的外力来算出各工件4的状态(位置、速度、加速度、姿势等)(步骤s110)。
典型的是,步骤s106~步骤s110的处理是通过物理模拟程序122的执行而提供。
继而,信息处理装置100对通过利用配置在虚拟空间的任意视点位置的虚拟摄像机拍摄虚拟空间而生成的虚拟图像执行测量处理。更具体而言,信息处理装置100通过配置在虚拟空间内的虚拟摄像机的虚拟摄像而生成虚拟图像(步骤s112),对所述生成的虚拟图像执行测量处理(步骤s114)。测量处理包含对虚拟图像的形状搜索(search)等处理。继而,信息处理装置100基于通过测量处理而获得的测量结果,生成或更新对机器人的指令(步骤s116)。
步骤s114及步骤s116的处理是通过图像测量程序126的执行而提供。
继而,信息处理装置100执行下述处理,即,基于根据通过测量处理的执行所获得的测量结果而生成的运行指令,来算出对配置在虚拟空间内的工件4进行搬送的机器人30的行为。更具体而言,信息处理装置100根据在步骤s116中所生成或更新的对机器人的指令,来算出机器人30的状态(位置、速度、加速度、姿势等)(步骤s118)。同时,若所算出的机器人30的状态处于预先规定的状态(拾取位置或放置位置)(步骤s120),则信息处理装置100将对象工件4设定为拾取状态或放置状态(步骤s122)。
步骤s116~步骤s122的处理是通过机器人模拟程序130的执行而提供。
最终,信息处理装置100基于反映出在所述步骤中算出的各装置的状态的信息(对虚拟空间的对象物的状态进行记述的虚拟空间信息105),生成将虚拟空间视觉化的图像并予以输出(步骤s124)。
信息处理装置100判断预先规定的结束条件或停止条件是否成立(步骤s126)。若预先规定的结束条件及停止条件均不成立(步骤s126中为否的情况),则重复步骤s106以下的处理。
另一方面,当预先规定的结束条件或停止条件成立时(步骤s126中为是的情况),信息处理装置100结束处理。
<h.模拟装置的应用例>
通过利用如上所述的本实施方式的模拟装置1,即使在不存在现实装置的情况下(例如设备导入前或施工中等),也能够预先调整最佳的参数。而且,也能够用于因工厂错误或某些问题导致机器人停止时等的原因分析。
以下,作为本实施方式的模拟装置1的应用例,对进行各种参数调整的示例进行说明。作为此种参数调整的对象,设想图像测量参数128,但也可将除此以外的参数作为调整对象。通常,关于图像测量,参数值会大幅影响识别结果,因此重要的是对图像测量参数128进行最佳化。
作为此种参数的调整方法,通过重复适当变更参数值并对执行所述模拟而获得的结果(例如工件4的搬送率或不识别率等)进行评估的处理,能够将获得最佳结果的参数设定为最佳值。
图11是表示与使用本实施方式的模拟装置1的参数调整相关的处理流程的流程图。典型的是,图11所示的各步骤是通过信息处理装置100的处理器102执行程序(物理模拟程序122、图像测量程序126、机器人模拟程序130以及综合程序134等)而实现。
参照图11,信息处理装置100受理作为调整对象的参数候选以及调整对象的参数调整幅度的设定(步骤s200)。继而,信息处理装置100从在步骤s200中受理的作为调整对象的参数候选中,将一个或多个参数值设定为对应的参数调整幅度的任意值(步骤s202)。
继而,信息处理装置100基于在步骤s202中设定后的参数以及其他的经固定的参数,来执行图10所示的模拟(步骤s204)。若模拟的内容成为预先规定的状态(步骤s206中为是),则信息处理装置100停止模拟的执行,并且算出关于所述模拟结果的评估值(步骤s208)。
继而,信息处理装置100对于在步骤s200中受理的作为调整对象的参数候选,判断是否已选择了对应的参数调整幅度的所有值(步骤s210)。即,判断是否已将在步骤s200中受理的所有作为调整对象的参数候选设定为所设定的参数调整幅度的所有值,而完成了模拟的执行。
若并非已选择对应的参数调整幅度的所有值(步骤s210中为否),则信息处理装置100重复步骤s202以下的处理。
与此相对,若已选择了对应的参数调整幅度的所有值(步骤s210中为是),则信息处理装置100将与在步骤s208中分别算出的评估值中的最高的评估值对应的参数值输出作为调整结果(步骤s212)。并且,参数调整的处理结束。
图11所示的流程图所示的处理将根据作为调整对象的参数候选的数量、以及关于各参数候选的参数调整幅度的大小而重复多次。
通过使用此种参数调整处理,即使不存在现实的装置,也能进行事先的参数调整。
<i.附注>
如上所述的本实施方式包含如下所述的技术思想。
[结构1]
一种模拟装置,包括:
第一模拟器(154),算出配置在虚拟空间(202)内的一个或多个工件(4)的行为;
测量处理部(158),对于通过利用配置在所述虚拟空间的任意视点位置的虚拟摄像机来拍摄所述虚拟空间而生成的虚拟图像(220),执行测量处理;
第二模拟器(160),算出机器人(30)的行为,所述机器人(30)基于根据所述测量处理部对工件的测量结果而生成的运行指令,来对配置在所述虚拟空间内的所述工件进行搬送;以及
图像生成部(164),生成将所述虚拟空间视觉化的图像。
[结构2]
根据结构1所述的模拟装置,还包括:
第三模拟器(152),算出工件搬送装置(10)的行为,所述工件搬送装置(10)对所述第一模拟器算出行为的所述一个或多个工件(4)给予外力。
[结构3]
根据结构1或2所述的模拟装置,还包括:
虚拟摄像部(156),对配置在所述虚拟空间内的所述虚拟摄像机进行管理,并且根据所述虚拟摄像机的视点位置及视野范围来生成所述虚拟图像。
[结构4]
根据结构1至3中任一项所述的模拟装置,其中
所述第一模拟器在规定的每个时间步长算出各工件的位置及姿势并进行更新。
[结构5]
根据结构1至4中任一项所述的模拟装置,其中
所述第一模拟器响应任意时间的、对任意工件的位置或特性的变更操作,根据变更后的位置或特性,来继续所述一个或多个工件的行为的算出。
[结构6]
一种模拟程序,是用于使计算机执行模拟的模拟程序(122、126、130、134),所述模拟程序使所述计算机(100)执行:
步骤(s110),算出配置在虚拟空间内的一个或多个工件的行为;
步骤(s114),对于通过利用配置在所述虚拟空间的任意视点位置的虚拟摄像机来拍摄所述虚拟空间而生成的虚拟图像(220),执行测量处理;
步骤(s118),算出机器人的行为,所述机器人基于根据通过所述测量处理的执行所获得的测量结果而生成的运行指令,来对配置在所述虚拟空间内的所述工件进行搬送;以及
步骤(s124),生成将所述虚拟空间视觉化的图像。
[结构7]
一种模拟方法,是在计算机(100)中执行的模拟方法,所述模拟方法包括由所述计算机所执行的:
步骤(s110),算出配置在虚拟空间内的一个或多个工件的行为;
步骤(s114),对于通过利用配置在所述虚拟空间的任意视点位置的虚拟摄像机来拍摄所述虚拟空间而生成的虚拟图像(220),执行测量处理;
步骤(s118),算出机器人的行为,所述机器人基于根据通过所述测量处理的执行所获得的测量结果而生成的运行指令,来对配置在所述虚拟空间内的所述工件进行搬送;以及
步骤(s124),生成将所述虚拟空间视觉化的图像。
<j.优点>
依据本实施方式的模拟装置1对于对工件给予某些外力的系统也能够综合地模拟行为。
应认为,此次公开的实施方式在所有方面仅为例示,并非限制者。本发明的范围是由权利要求而非所述说明所示,且意图包含与权利要求均等的含义及范围内的所有变更。
符号的说明
1:模拟装置
2:工件搬送系统
4:工件
10:工件搬送装置
12:工件供给部
14:工件搬送部
16:搬送面
18:进给控制器
20:图像测量装置
22:摄像机
24:工件模型信息
30:机器人
32:吸附部
40:机器人控制器
50:输送机
100:信息处理装置
102:处理器
104:主存储器
105:虚拟空间信息
106:操作单元
108:输出单元
110:网络接口
112:光学驱动器
114:记录介质
116:本地通信接口
118:内部总线
120:贮存器
122:物理模拟程序
124:物理模拟参数
126:图像测量程序
128:图像测量参数
130:机器人模拟程序
132:机器人参数
134:综合程序
150:虚拟空间信息管理模块
152:工件搬送模拟器
154:工件行为模拟器
156:虚拟摄像模块
158:图像测量模块
160:机器人模拟器
162:工件跟踪模块
164:视觉化工具
200、210、230:显示画面
202:虚拟空间
204、206、208:对象物
220:虚拟图像
222:识别结果
224:设定窗口
232:光标
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除