通过机器人程序进行模拟的模拟装置制造方法
【专利摘要】本发明提供一种模拟装置,其不需要虚拟的外围设备的定义和PLC,不变更程序就能够执行适当的模拟。与机器人程序不同的信号状态设定用文件能够与程序并行地执行,并且包含设定或变更与程序的行对应记述的通过包含在程序中的指令的执行而参照的信号的状态的指令。例如,与第五行对应记述的文件的指令指示输出表示门的开放结束的信号。由此,在执行模拟时,与机器人程序的执行行同步地进行与执行行对应记述的信号的状态的设定或变更。
【专利说明】通过机器人程序进行模拟的模拟装置
【技术领域】
[0001 ] 本发明涉及一种通过机器人程序执行机器人模拟的模拟装置。
【背景技术】
[0002]之前为了在包含机器人的系统、工厂中进行其动作确认、性能评价,推广一种进行使用了虚拟的机器人等的模拟的技术。例如,在日本特开2000-081906号公报中,记载了一种虚拟工厂模拟装置,该装置包含:虚拟控制器,其根据动作数据来模拟控制器;多个虚拟设备模拟器,其具有通过来自虚拟控制器的驱动指令来模拟机械运动的虚拟设备。
[0003]在日本特开2004-148434号公报中记载了一种模拟装置,该装置具备:模拟控制器,其进行虚拟机器人的动作控制;时序产生器,其能够控制模拟控制器;主通信单元,其将模拟控制器和时序控制器进行连接;模拟操作盘,其向时序产生器进行操作信号的收发,其中,时序产生器和模拟控制器经由主通信单元进行虚拟机器人的动作确认。
[0004]另外,在日本特开平07-036516号公报中记载了以下的内容,即将机器人控制器和控制装置模型化为虚拟控制单元,从虚拟控制程序输入单元用时序控制语言输入该虚拟控制单元的控制程序,控制动作模拟单元根据所输入的时序控制语言模拟地执行虚拟控制单元的控制动作。
[0005]进而,在日本特开平09-038876号公报中记载了一种模拟装置,该装置具备:状态转移存储部,其存储记述了与机器人和外围设备的输入输出状态对应的动作的控制步骤的状态转移图表,其中,根据该状态转移图表执行使用了机器人和外围设备的模型的模拟。
[0006]在实际设备中使用的机器人程序中,大多包含用于进行与外围设备的联锁的信号控制指令、基于信号条件的分支指令/待机指令等。因此,即使通过模拟器直接执行这样的程序,也会存在由于没有来自外围设备的反馈信号而无法进行希望的动作的故障。
[0007]另外,作为确认机器人程序的方法,可以列举在模拟装置中配置虚拟的外围设备而输入输出虚拟的信号的方法、使用虚拟开关手动地输入信号的方法、或使用PLC (可编程逻辑控制器)进行信号的输入输出的方法等,但必须进行以下的工作,即定义对应的虚拟装置和虚拟操作盘、或将该虚拟装置和虚拟操作盘与实际PLC进行连接,存在模拟的准备要花费时间的问题。进而,在使用虚拟开关的方法中,需要进行手动的操作。
[0008]另一方面,也可以考虑变更实际设备程序而删除或注释掉不需要的部分的方法,但在该情况下,程序自身有可能变化,从而无法进行正确的模拟。
[0009]为了模拟外围设备的动作时间,有以下的方法,即准备虚拟外围设备和PLC而使用其计时器,或在程序中写入设定待机时间的指令,但它们也存在花费工时的问题。另外如果一旦执行模拟则信号状态发生变化,因此存在即使再次执行相同的模拟也无法得到相同的结果的问题。
【发明内容】
[0010]因此,本发明为了解决上述的问题,其目的在于:提供一种模拟装置,其不需要虚拟的外围设备的定义和PLC,不变更程序就能够执行适当的模拟。
[0011]为了达到上述目的,本发明提供一种模拟装置,其根据机器人程序执行机器人的模拟,还使用与机器人程序不同的文件,上述不同的文件包含设定与该机器人程序的行对应记述的通过该机器人程序的行的执行而参照的信号的状态的指令、或设定数据寄存器的值的指令,在根据上述指令执行上述模拟时,与上述机器人程序的执行行同步,变更为与上述执行行对应记述的信号的状态的设定或上述数据寄存器的值。
[0012]在适合的实施方式中,设定上述信号的状态的指令用于至少指定信号名和应该设定的信号状态,设定上述数据寄存器的值的指令用于至少指定数据寄存器名和应该设定的值。
[0013]在适合的实施方式中,从包含参照信号的状态和数据寄存器的值的逻辑指令的机器人程序中自动地确定并显示与上述逻辑指令对应的行。
[0014]在适合的实施方式中,上述指令包含延迟时间的指定,信号的状态或数据寄存器的值在经过了由对应的行的执行所指定的延迟时间后被设定为应该设定的信号状态或应该设定的值。
[0015]在适合的实施方式中,在模拟开始时指定信号的状态、数据寄存器的值、或机器人的位置,变更信号的状态、数据寄存器的值、或机器人的位置的初始设定。
[0016]在适合的实施方式中,在特定的行中,将信号的状态或数据寄存器的值变更为指定的信号或数据寄存器的值。
【专利附图】
【附图说明】
[0017]通过参照【专利附图】
【附图说明】以下的适合的实施方式,能够进一步了解本发明的上述或其他的目的、特征和优点。
[0018]图1是表示通过本发明的实施方式的模拟装置能够模拟的机器人系统的一个结构例子的图。
[0019]图2是表示模拟装置执行的机器人程序的一个例子的图。
[0020]图3是表示模拟装置的处理的一个例子的流程图。
[0021]图4是表示模拟装置的处理的另一个例子的流程图。
[0022]图5是表示程序开始时的信号状态的初始设定的图。
[0023]图6是表示能够根据来自外部的信号变更处理的机器人程序的例子的图。
【具体实施方式】
[0024]图1是表示通过本发明的实施方式的模拟装置能够模拟的机器人系统的一个结构例子的图。系统10包括:机器人16,其具有将可动的手12安装在前端的机器人臂14 ;机械(例如机床)24,其具有可开闭的门18、工作台20、以及可开闭的夹钳22,其中,根据机器人16的I/O信号控制手12、门18、以及夹钳22。手12构成为能够把持工件26,并且能够将工件26载置在机床24的工作台20上。另外,夹钳22构成为能够保持工作台上的工件26,机械24能够对所保持的工件26进行预定的加工。本实施方式的模拟装置对以下的一连串动作进行模拟,即在机器人16通过手12把持工件26的状态下接近机械24,如果手12到达预定位置,则门18打开,手12进入到机械24内,将工件26载置在工作台20上,夹钳22关闭,保持工件26。
[0025]图2是表示为了模拟上述的动作而由模拟装置执行的机器人程序30的一个例子的图。首先,在第一行和第二行中,分别指定用户框架和工具框架,在接着的第三行中,使把持了工件26的手12以预定的速度移动,定位于预定的位置(例如机械24的门18的前面)。
[0026]在接下来的第四行中,输出请求开放机械24的门18的信号(信号名:开门请求),在第五行中,进行待机直到输入表示门18的开放结束的信号(信号名:开门结束)为止。在此,在本申请发明中,使用与机器人程序30不同的信号状态设定用文件32。文件32能够与程序30并行地执行,并且包含设定或变更与机器人程序30的行对应记述的通过包含在机器人程序中的指令的执行而参照的信号的状态的指令。在图2的例子中,与第五行对应记述的文件32的指令34指示输入表示门18的开放结束的信号(1:开门结束)。由此,在执行模拟时,与机器人程序30的执行行(在此为第五行)同步地进行与执行行对应记述的信号的状态的设定(变更)。
[0027]在接下来的第六行中,使把持了工件26的手12以预定的速度移动(前进)从而使得通过开放了的门18,将工件26定位于预定的位置(例如工作台20上)上。
[0028]在接下来的第七行中,输出请求开放手12的信号(信号名:请求开放手),在第八行中,进行待机直到输入表示手12的开放结束的信号(信号名:开放手结束)为止。在此,与第五行同样,与机器人程序30不同的文件32包含与机器人程序30的第八行对应记述的指令36,指令36指示表示输入手12的开放结束的信号(1:开放手结束)。由此,与机器人程序30的第八行同步地进行与执行行对应记述的信号的状态的设定(变更)。
[0029]在接下来的第九行中,输出请求关闭机械24的夹钳22的信号(信号名:夹钳关闭请求),在第十行中,进行待机直到输入表示夹钳22的关闭结束的信号(信号名:夹钳关闭结束)为止。在此,与第五行和第八行同样,与机器人程序30不同的文件32包含与机器人程序30的第十行对应记述的指令38,指令38指示表示输入夹钳22的关闭结束的信号(2:夹钳关闭结束)。由此,与机器人程序30的第十行同步地进行与执行行对应记述的信号的状态的设定(变更)。
[0030]然后,在第十一行中,使手12以预定的速度移动(后退)使得通过开放的门18,定位于预定的位置(例如机械24的门18的前面)上。
[0031]在接下来的第十二行中,输出请求机械24的门18关闭的信号(信号名:门关闭请求),在第十三行中,进行待机直到输入表示门18的关闭结束的信号(信号名:门关闭结束)为止。在此,与第五行、第八行和第十行同样,与机器人程序30不同的文件32包含与机器人程序30的第十三行对应记述的指令40,指令40指示输入表示门18的关闭结束的信号(2:门关闭结束)。由此,与机器人程序30的第十三行同步地进行与执行行对应记述的信号的状态的设定(变更)。此外,指令34、36、38和40至少能够指示信号名和应该设定的信号状态。
[0032]图3是表示模拟装置进行模拟时的处理的流程的流程图。如果开始模拟,则依次执行机器人程序的行,但在此如步骤Si所示,判定正在执行的行是否伴随着信号状态设定。在伴随着信号状态设定的情况下(在图2的例子中,相当于第五、八、十、以及十三行),前进到步骤S2,根据包含在与机器人程序不同的文件中的信号状态设定(变更)指令,设定(变更)相应的信号状态。通过重复进行这样的处理直到机器人程序的最终行为止(步骤S3),来完成预定的模拟。
[0033]此外,虽然是任意的,但在图2中如表42所示那样,在进行文件32的信号状态设定时,也可以在从程序30对应的执行行的开始后到经过预定的设定时间不进行信号状态设定(即设定信号延迟时间)。在图示例子中,使与程序30的第五行同步进行的信号状态设定(指令34)延迟到从第五行的执行开始经过1000毫秒。对于程序30的第八、十、以及十三行,也能够同样地设定适当的信号延迟时间。通过这样的延迟时间的设定,能够设定实际设备的反馈信号的延迟时间,能够进行与实际设备更接近的模拟。此外,对于后述的数据寄存器的值的设定或变更,也同样能够应用延迟时间的设定。
[0034]图4是表示在设定了上述信号延迟时间的情况下,由模拟装置进行模拟时的处理的流程的流程图。如果开始模拟,则依次执行机器人程序的行,但在此,如步骤Sll所示那样,判定正在执行的行是否伴随着信号状态设定。在伴随着信号状态设定的情况下(在图2的例子中,相当于第五、八、十、以及十三行),首先如步骤S12所示那样,待机直到经过预定的设定时间(延迟时间)为止,然后,前进到步骤S13,根据包含在与机器人程序不同的文件中的信号状态设定(变更)指令,设定(变更)对应的信号状态。通过重复进行这样的处理直到机器人程序的最终行为止(步骤S14),来完成预定的模拟。
[0035]图5所示的表44表示模拟开始时的各信号的状态和机器人位置的初始设定的例子。在该例子中,在模拟开始时,将与门18的关闭请求相关的信号的输出、与门18的关闭结束相关的信号的输入设定为开通,将其他信号设定为切断。也能够通过与机器人程序30不同的文件等来进行这样的初始设定。通常,在程序(模拟)结束时,信号状态从初始状态发生变化,有时即使直接再次执行相同的模拟也无法得到相同的结果,但通过进行这样的初始设定,则能够将模拟开始时的信号状态等始终设定为固定,进而在模拟开始时使机器人移动到指定的位置,从而能够提高程序的再现性。此外,虽然在图5中没有表示,但可以对后述的数据寄存器的值也预先确定初始设定值,在模拟开始时将数据寄存器的值设定为其初始设定值。
[0036]图6是作为本申请发明的其他实施方式说明与机器人程序的执行同步地设定/变更数据寄存器的值的模拟装置的图。图6所示例的机器人程序46与寄存器的值对应地自动选择执行子程序A和B的任意一个,具体地说,重复进行以下的处理,S卩如果在第二行中寄存器的值是I则执行程序A,如果不是I则不执行程序A而执行程序B。
[0037]在此,在本申请发明中,使用与机器人程序46不同的数据寄存器设定用文件48。文件48能够与程序46并行地执行,并且包含设定或变更与机器人程序46的行对应记述的通过包含在机器人程序中的指令的执行而参照的数据寄存器的值的指令。在图6的例子中,与调用程序A的第三行对应记述的文件48的指令50与第三行同步,在数据寄存器(寄存器名:寄存[I])设定数值I。另一方面,与调用程序B的第六行对应记述的文件48的指令52与第六行同步,在数据寄存器(寄存器名:寄存[I])设定I以外的数值(在此为2)。进而,与第一行对应记述的文件48的指令54是与“寄存[I] ”的值对应地进行不同的信号状态的设定的指令,根据寄存器的条件变更信号状态。因此,如果根据机器人程序46执行模拟,则交替地反复执行程序A和B。此外,指令50和52能够至少指定数据寄存器名和应该设定的值。
[0038]在图6的实施方式中,在程序46的特定的行(在此为第三和第五行)中,变更寄存器的值,根据它来执行不同的程序,因此适合于根据外部控制装置的信号等外部信号使机器人动作的时序控制模拟。此外,虽然没有图示,但在对逐次加工多个同种类的工件的工作进行模拟的情况下,数据寄存器设定用文件也可以包含将表示进行几次工件的加工的计数器的数值设定或变更为数据寄存器的指令。
[0039]另外,如上述实施方式那样,在机器人程序包含参照信号的状态和数据寄存器的值的逻辑指令的情况下,也可以从该机器人程序中自动地确定并显示与该逻辑指令对应的行。由此,不使用虚拟的外围设备和PLC就能够容易地确认程序。另外,逻辑指令和行自动地对应,因此还能够容易地进行信号的状态设定。
[0040]根据本发明,与机器人程序的行对应地设定信号的状态或数据寄存器的值,在执行模拟时,与机器人程序的执行行同步地变更信号的状态和数据寄存器的值,因此不需要虚拟的外围设备和PLC就能够容易地确认程序,另外还不需要变更程序。
[0041]通过自动地确定并显示与参照信号的状态和数据寄存器的值的逻辑指令对应的行,能够从机器人程序中自动地检测出信号指令或数据寄存器指令,自动地进行行与信号或数据寄存器的对应。
[0042]通过延迟时间的设定,在根据机器人的输出信号使外围设备动作的情况下,将从输出该输出信号到从外围设备接受动作结束信号为止的时间设定为延迟时间,能够进行与实际设备更接近的模拟。
[0043]通过信号等的初始状态的设定,能够将模拟开始时的信号状态设定为希望的状态。
[0044]通过在特定的行中将信号的状态或数据寄存器的值变更为指定的信号或数据寄存器的值,从而能够进行可以与根据外部控制装置的信号(外部信号)而分支处理的程序等对应的模拟。
【权利要求】
1.一种模拟装置,其根据机器人程序(30、46)执行机器人(16)的模拟,其特征在于, 还使用与机器人程序不同的文件(32、48 ), 上述不同的文件包含设定与该机器人程序的行对应记述的通过该机器人程序的行的执行而参照的信号的状态的指令(34、36、38、40)、或设定数据寄存器的值的指令(50、52、54), 在根据上述指令执行上述模拟时,与上述机器人程序的执行行同步地变更为与上述执行行对应记述的信号的状态的设定或上述数据寄存器的值。
2.根据权利要求1所述的模拟装置,其特征在于, 设定上述信号的状态的指令用于至少指定信号名和应该设定的信号状态,设定上述数据寄存器的值的指令用于至少指定数据寄存器名和应该设定的值。
3.根据权利要求1或2所述的模拟装置,其特征在于, 从包含参照信号的状态和数据寄存器的值的逻辑指令的机器人程序中自动地确定并显示与上述逻辑指令对应的行。
4.根据权利要求1?3的任意一项所述的模拟装置,其特征在于, 上述指令包含延迟时间的指定,信号的状态或数据寄存器的值在经过了由对应的行的执行所指定的延迟时间后被设定为应该设定的信号状态或应该设定的值。
5.根据权利要求1?4的任意一项所述的模拟装置,其特征在于, 在模拟开始时指定信号的状态、数据寄存器的值、或机器人的位置,变更信号的状态、数据寄存器的值、或机器人的位置的初始设定。
6.根据权利要求1?5的任意一项所述的模拟装置,其特征在于, 在特定的行中,将信号的状态或数据寄存器的值变更为指定的信号或数据寄存器的值。
【文档编号】G05B19/04GK103970040SQ201410042418
【公开日】2014年8月6日 申请日期:2014年1月28日 优先权日:2013年1月30日
【发明者】井上幸三 申请人:发那科株式会社