控制器支持装置、控制程序的仿真方法、控制器支持程序以及用于存储控制器支持程序的...的制作方法

文档序号:6318201阅读:222来源:国知局
专利名称:控制器支持装置、控制程序的仿真方法、控制器支持程序以及用于存储控制器支持程序的 ...的制作方法
技术领域
本发明涉及一种能够仿真控制程序的控制器支持装置、控制程序的仿真方法、控制器支持程序以及用于存储控制器支持程序的计算机可读存储介质,其中该控制程序包括在用于控制机器移动的控制器中针对每个控制周期被执行的顺序控制部分和运动控制部分。
背景技术
公开号为2001-209406的日本未审查专利(专利文献I)描述了一种用来仿真可编程逻辑控制器(PLC)程序指令执行的PLC仿真器装置。PLC程序具体而言是一种用诸如梯 形图或指令列表之类的语言描述的顺序程序。PLC仿真器装置针对每一个指令执行来执行PLC程序,并显示执行结果。因而方便了 PLC程序的调试。专利文献I :公开号为2001-209406的日本未审查专利

发明内容
待由本发明解决的问题通常而言,顺序程序的操作确认(check)基本上包括关于针对每一个指令执行获得了在预定输入条件下假定的输出的确认。而且,如同专利文献I中所描述的,一轮执行可以被重复多次以等待预定输入条件出现。然而,如果预定输入条件出现,则以一个周期的执行来确认指令执行的操作。代替重复一轮执行,可以通过手动输入或使用调试程序来提供预定输入条件,从而使得能够以一个周期的执行来确认某个指令执行的操作。在包括运动控制(该运动控制通过对于每个控制周期向用于驱动伺服电机、步进电机等的电机驱动器提供指令值来控制电机操作)的控制程序中,程序的运行需要被跟踪很多个控制周期以确认待提供给电机驱动器的指令值是否是如同设计时假定的那样所计算的。例如,当控制周期是Ims时,需要确认计算一万次所计算出的指令值的推移(transition)以确认十秒钟的电机操作。在这种情况下,为了检查中间的任意控制周期的指令值,需要重复地执行控制程序,从开始直至到达相关的那个控制周期。因此,与顺序控制部分的情况相反,不能通过提供预定输入条件以及仅执行针对程序的运动控制部分的相关控制周期来实施操作确认。因此,需要重新建立适于包括运动控制部分的控制程序的操作确认方法。在这种情况下,需要考虑以下的问题。在运动控制中,“以给定速度从当前位置移动到目标位置”为单位的运动以复数形式被连接以在整体上编程出一段长时间内的复杂移动。在这种情况下,如果控制程序的运动控制部分被修正或者影响运动控制部分的开始或中断的顺序控制部分被修正以确认结果,则对于一系列运动需要从开始实施仿真执行,因而关于程序修正结果的确认需要非常长的时间。此外,如果控制程序使得运动控制的内容根据来自传感器的输入以及来自手动开关的输入而改变,那么输入内容和输入时机需要在毎次重新执行仿真时被精确地再现,而这是很不方便的。鉴于上述问题,发明人发现,如果当仿 真包括运动控制的控制程序的执行时能够使从位于执行的开始和结束之间的中间控制周期开始进行重新执行,则能够实现高度便利。本发明的目的是提供一种控制器支持装置、控制程序的仿真方法、控制器支持程序以及用于存储控制器支持程序的计算机可读存储介质,该控制器支持装置能够使在仿真包括运动控制的控制程序的执行时从位于执行的开始和结束之间的中间控制周期开始进行重新执行。解决问题的方案根据本发明一个方案的一种控制器支持装置涉及ー种控制器支持装置,用于仿真控制程序,所述控制程序包括在用于控制机器移动的控制器中针对每个控制周期被执行的顺序控制部分和运动控制部分,所述控制器支持装置包括仿真单元,用于仿真所述控制程序的执行并且生成执行结果数据;显示数据创建単元,用于创建用于显示由所述仿真単元生成的所述执行结果数据随时间变化的显示数据;接受単元,用于接受用户关于所述仿真単元的指示;以及显示器,用于显示由所述显示数据创建单元创建的显示数据。所述仿真単元包括顺序计算执行部,用于仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据;顺序变量存储部,用于供用于执行仿真的所述顺序计算执行部所使用;运动计算执行部,用于仿真所述控制程序的运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据;运动变量存储部,用于供用于执行仿真的所述运动计算执行部所使用;控制周期计数部,用于对控制周期的执行数目进行计数;以及恢复数据存储部,用于保存恢复数据,所述恢复数据包括与能够开始重新执行仿真的可恢复控制周期相对应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真所使用的变量数据,所述变量数据为存储在所述顺序变量存储部和所述运动变量存储部中的数据。所述仿真単元指定所述可恢复控制周期,并将与所述可恢复控制周期相应的所述恢复数据存储在所述恢复数据存储部中。所述仿真単元从所述接受单元获取关于指定用来开始重新执行的控制周期的具体要求,并使用该具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相应的恢复数据来从所指定的控制周期开始重新执行仿真。优选地,还设置了用来编辑控制程序的控制程序编辑单元。该控制程序编辑单元能够接受用户操作以修正在所述仿真単元中执行的控制程序仿真。所述仿真単元能够接受用户操作以针对所述控制程序编辑单元修正的控制程序使用在所述控制程序被修正之前所保存的恢复数据来开始重新执行仿真。特别地,所述控制程序编辑单元通过用户操作来修正所述控制程序的所述运动控制部分。所述仿真单元从所述控制程序编辑单元获取用于指定被修正的运动控制部分的信息,从多个可恢复控制周期中指定能够从最新修正的运动控制部分实施重新执行的控制周期,并且从所述控制周期开始重新执行仿真。特别地,所述控制程序编辑单元在显示器上以列表显示所述控制程序的内容。所述接受単元接受列表显示上用来开始重新执行的运动控制部分的具体要求。所述仿真単元从多个可恢复控制周期中指定能够从指定的运动控制部分实施重新执行的控制周期,并且从所述控制周期开始重新执行仿真。优选地,所述控制程序的所述运动控制部分在每个控制周期中处于活动状态或者处于非所述活动状态的不活动状态,其中所述活动状态是计算指令值的状态。所述仿真单元以所述运动控制部分从所述不活动状态变为所述活动状态的控制周期作为基准来指定所述可恢复控制周期。优选地,所述控制程序的运动控制部分在每个控制周期中处于执行状态或处于非所述执行状态的不执行状态,其中在所述执行状态中所述运动控制部分处于执行中。所述仿真单元以所述运动控制部分从所述不执行状态变为所述执行状态的控制周期作为基准来指定所述可恢复控制周期。 优选地,所述仿真単元将对于每个恒定间隔的控制周期指定为所述可恢复控制周期。优选地,所述显示数据创建单元创建用于将所述执行结果数据随时间的变化显示为图形的显示数据。所述接受単元接受关于显示在显示器上的图形位置的用户指示。所述仿真单元从多个可恢复控制周期中指定与用户指示的图形上的位置相应的控制周期,并且从这个控制周期开始重新执行仿真。优选地,所述显示数据创建单元创建用来将针对所述仿真単元所生成的位置的执行结果数据随时间的变化显示为ニ维空间或三维空间中的轨迹的显示数据。所述接受単元接受关于所述轨迹上的位置的用户指示。所述仿真単元从多个可恢复控制周期中指定与用户指示的轨迹上的位置相应的控制周期,并且从所述控制周期开始重新执行仿真。优选地,所述显示数据创建单元创建用于将所述执行结果数据随时间的变化显示为位置列表的显示数据。所述接受単元接受关于显示在显示器上的位置列表中的位置的用户指示。所述仿真単元从多个可恢复控制周期中指定与用户指示的位置列表中的位置相对应的控制周期,并且从所述控制周期开始重新执行仿真。根据本发明另一方案的控制程序的仿真方法涉及ー种用于在包括显示器的控制器支持装置中仿真控制程序的控制程序仿真方法,所述控制程序包括在用于控制机器移动的控制器中针对每个控制周期被执行的顺序控制部分和运动控制部分,所述控制程序仿真方法包括以下步骤仿真计算步骤,根据用户指示仿真所述控制程序的执行,并生成执行结果数据;显示数据创建步骤,创建用于显示由所述仿真计算步骤生成的所述执行结果数据随时间变化的显示数据;显示步骤,将所述显示数据创建步骤创建的所述显示数据显示在所述显示器上。所述仿真计算步骤包括顺序计算执行步骤,仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据;运动计算执行步骤,仿真所述控制程序的所述运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据;控制周期计数步骤,对控制周期的执行数目进行计数;指定可恢复控制周期的步骤,所述可恢复控制周期是能够开始重新执行仿真的控制周期;恢复数据保存步骤,保存恢复数据,所述恢复数据包括关于与所述可恢复控制周期相应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真用到的变量数据,所述变量数据包括与所述顺序控制部分的执行相关联的顺序变量数据以及与所述运动控制部分的执行相关联的运动变量数据;以及重新执行开始步骤接受用来指定开始重新执行的控制周期的用户具体要求,使用所述具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相对应的恢复数据来从所指定的控制周期开始重新执行仿真。根据本发明的又一方案的控制器支持程序涉及ー种用于在包括显示器的控制器支持装置中仿真控制程序的控制器支持程序,所述控制程序包括在用于控制机器移动的控制器中针对每个控制周期被执行的顺序控制部分和运动控制部分。所述控制程序使所述控制器支持装置执行如下步骤仿真计算步骤根据用户指示仿真所述控制程序的执行,并生成执行结果数据;显示数据创建步骤创建用于显示由所述仿真计算步骤生成的所述执行结果数据随时间变化的显示数据;显示步骤将所述显示数据创建步骤创建的所述显示数据显示在所述显示器上。所述仿真计算步骤包括顺序计算执行步骤,仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据;运动计算执行步骤,仿真所述控制程序的所述运动控制部分的执行,并生成与所述运动控制部分相 关的执行结果数据;控制周期计数步骤,对所述控制周期的执行数目进行计数;指定可恢复控制周期的步骤,所述可恢复控制周期是能够开始重新执行仿真的控制周期;恢复数据保存步骤,保存恢复数据,所述恢复数据包括关于与所述可恢复控制周期相应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真所使用的变量数据,所述变量数据包括与所述顺序控制部分的执行相关联的顺序变量数据以及与所述运动控制部分的执行相关联的运动变量数据;以及,重新执行开始步骤,接受用来指定开始重新执行的控制周期的用户具体要求,使用所述具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相应的恢复数据来从所指定的周期开始重新执行仿真。根据本发明又一方案的一种用于存储控制器支持程序的记录介质涉及一种存储有控制器支持程序的计算机可读存储介质,所述控制器支持程序用于包括在显示器的控制器支持装置中仿真控制程序,所述控制程序包括在用于控制机器移动的控制器中针对每个控制周期被执行的顺序控制部分和运动控制部分。所述控制程序使所述控制器支持装置执行如下步骤仿真计算步骤,根据用户指示仿真所述控制程序的执行,并生成执行结果数据;显示数据创建步骤,创建用于显示由所述仿真计算步骤生成的所述执行结果数据随时间变化的显示数据;显示步骤,将所述显示数据创建步骤创建的所述显示数据显示在显示器上。所述仿真计算步骤包括顺序计算执行步骤,仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行結果数据;运动计算执行步骤,仿真所述控制程序的所述运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据;控制周期计数步骤,对控制周期的执行数目进行计数;指定可恢复控制周期的步骤,所述可恢复控制周期是能够开始重新执行仿真的控制周期;恢复数据保存步骤,保存恢复数据,所述恢复数据包括关于与所述可恢复控制周期相对应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真所使用的变量数据,所述变量数据包括与所述顺序控制部分的执行相关联的顺序变量数据以及与所述运动控制部分的执行相关联的运动变量数据;以及重新执行开始步骤接受用来指定开始重新执行的控制周期的用户具体要求,使用所述具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相应的恢复数据来从所指定的周期开始重新执行仿真。本发明的效果根据本发明,当仿真包括运动控制的控制程序的执行吋,由于能够从位于执行开始到结束之间的中间的控制周期开始重新执行,因而方便了程序的操作确认。


图I是描述根据本发明实施例的控制系统的配置的视图;图2是描述根据本发明实施例的PC 6的硬件配置的视图;图3是描述当CPU 901执行控制器支持程序8时实现的功能块的视图;图4是描述根据本发明实施例的仿真单元806的功能的详细框图; 图5是描述根据本发明实施例的控制程序调试操作的流程图;图6是描述根据本发明实施例的控制器支持程序8的执行的流程图;图7是描述根据本发明实施例的仿真单元806中仿真执行的流程图;图8A和图8B是描述控制周期中的处理以时间顺序排布的情况中的视图;图9是描述根据本发明实施例的与计算指令值的控制周期相关的仿真単元806中数据流的视图;图10是描述根据本发明实施例的与没有计算指令值的控制周期相关的仿真単元806中数据流的视图;图IlA和图IlB是描述根据本发明实施例的IC芯片转移装置100的视图。图12是描述根据本发明实施例的IC芯片转移装置100的操作流程的视图;图13是描述用来控制IC芯片转移装置100中XYZ导杆50的控制程序的一部分的视图;图14是描述根据本发明实施例的控制器支持程序的窗ロ屏幕的视图;图15是描述根据本发明实施例的可恢复点设置方法的选择窗ロ屏幕1100的视图;图16是描述根据本发明实施例的时间表窗ロ屏幕1200的视图;图17是描述根据本发明实施例的空间轨迹显示窗ロ屏幕1300的视图;图18是描述根据本发明实施例的轴位置列表的显示窗ロ屏幕1400的视图;图19A和图19B是描述根据本发明实施例的Buffered模式的视图;图20是描述根据本发明实施例的用于Aborting模式中一部分FB的端子的输入信号和输出信号的时序表的视图;图21是示出根据本发明实施例的用于BlendingNext模式中一部分FB的端子的输入信号和输出信号的时序表的视图;图22是描述根据本发明实施例的用于BlendingPrevious模式中一部分FB的端子的输入信号和输入信号的时序表的视图。
具体实施例方式下文将參照附图详细描述本发明的实施例。在整个附图中,相同的附图标记指代相同或相应的部分,并且将省略其描述。
图I是描述根据本发明实施例的控制系统的配置的视图。參见图1,根据本发明实施例的控制系统配置有服务器2、网络4、PC (个人电脑)6、控制器14以及控制对象装置16。服务器2通过网络4连接至PC 6。PC 6可通信地连接至用来控制该控制对象装置16的控制器14。PC 6用作根据本发明一个实施例的控制器支持装置。PC 6安装有控制器支持程序8,并且存储有由用户创建的控制程序10。紧凑只读光盘存储器(CD-R0M)12存储该控制器支持程序8。安装在PC 6中的控制器支持程序8是从CD-ROM 12中被安装的。控制器14控制该控制对象装置16的移动。在本发明的实施例中,可编程逻辑控制器(PLC)被用作控制器14的ー个实例。换言之,PLC具有所谓的运动控制功能。控制器14存储控制程序15,该控制程序15定义了关于控制对象装置16的控制内容。控制器14针对每个控制周期执行ー轮控制程序15。存 储在控制器14中的控制程序15是通过拷贝存储在PC 6中的控制程序10而获得的拷贝数据,并且是从PC 6传输过来的。控制对象装置16包括电机18 (例如,伺服电机和步进电机)以及用来驱动电机的电机驱动器17。驱动电流从电机驱动器17被供应至电机18。电机驱动器17从执行控制程序15的控制器14接受针对每个控制周期的位置指令值,井向电机18提供与该指令值相对应的驱动电流。如果电机18是伺服电机,则电机18包括编码器,并且电机18旋转位置的实际测量值由该编码器检测。电机旋转位置的实际测量值用于由电机驱动器17进行的反馈控制。在以上描述中,已经描述了通过⑶-ROM 12将控制器支持程序安装在PC 6中的情况,然而并非特别地限制于此,也可以通过网络4将控制器支持程序从服务器2下载到PC6。对于控制程序而言也是如此。图2是描述根据本发明实施例的PC 6的硬件配置的视图。參见图2,根据本发明实施例的PC 6包括CPU 901 (该CPU901是处理装置)、R0M902、RAM 903 以及 HDD 904 (ROM 902、RAM 903 以及 HDD 904 是存储装置)、CD-ROM 驱动装置908 (⑶-ROM驱动装置908是数据读取单元)、通信IF 909 (通信IF 909是通信装置)、监视器907 (监视器907是显示装置)以及键盘905和鼠标906 (键盘905和鼠标906是输入装置)。这些单元通过内部总线910的方式彼此连接。HDD 904典型地是非易失性磁性存储器,并且存储由⑶-ROM驱动装置908从⑶-ROM 12中读取的控制器支持程序。HDD 904还存储控制程序15。CPU 901开发存储在HDD 904至RAM 903等中的根据本实施例的控制器支持程序8,并且执行该程序。RAM 903是易失性存储器,并且用作工作存储器。ROM 902通常存储诸如操作系统(OS)等之类的程序。通信IF 909典型地支持诸如以太网(Ethernet,为已被注册的商标)和USB (通用串行总线)之类的通用通信协议,并且通过互联网4提供与服务器2之间的数据通信,以及提供与控制器14之间的数据通信。
监视器907被配置为液晶显示装置、CRT (阴极射线管)、等离子体显示装置等,并且显示PC 6的处理结果等。键盘905接受用户的按键输入,并且鼠标906接受用户的定点操作。图3是描述当CPU 901执行控制器支持程序8时实现的功能块的视图。參见图3,示出了用户接ロ单元802、显示数据创建单元804、仿真单元806、控制程序存储单元808、控制程序编辑单元810以及控制器接ロ単元812。用户接ロ单元802是这样ー个单元,其用来创建将被显示在PC 6的监视器907上的窗ロ屏幕内容,并且用来接受用户通过键盘905和鼠标906进行的操作。控制程序编辑单元810使用户能够输入并编辑控制程序。如果有必要进行编译来执行控制程序,则还实施编译。创建的控制程序通过控制器接ロ単元812被发送至控制器14。创建的控制程序存储在控制程序存储单元808中,控制程序存储单元808是HDD 904中的预定区域。控制程序编辑单元810通过控制器接ロ単元812读出存储在控制器14中 的控制程序15并且编辑该控制程序。仿真单元806是控制器14的仿真器。仿真单元806仿真控制器14的如下操作即,控制器14根据存储在控制程序存储单元808中的控制程序10来执行控制程序15,并计算针对每个控制周期控制器14将输出的位置指令值。仿真单元806还能够仿真信号从外部到达并且影响控制程序的操作的状态,或者能够仿真这样的状态,即,控制器14的内部状态(例如,控制器14中存储器的存储内容)通过控制程序15自己本身的执行而改变,并且这种改变影响控制程序15的操作。
仿真单元806通过用户接ロ単元802接收与仿真执行相关的用户指示。換言之,用户接ロ単元802还用作用来接收关于仿真单元806的用户指示的装置。显示数据创建单元804创建显示数据,该显示数据用来显示仿真单元806创建的执行结果数据随时间的变化。显示器数据创建単元804将创建的显示数据发送至用户接ロ単元802,以在PC 6的监视器907上以图形和字符的形式显示该显示数据。图4是描述根据本发明实施例的仿真单元806的功能的详细框图。參见图4,根据本发明实施例的仿真单元806包括仿真控制部820、调试辅助部822、控制周期计数部824、恢复数据存储部826、恢复数据缓冲器828、执行结果数据存储部830、顺序控制仿真部840以及运动控制仿真部850。恢复数据存储部826、恢复数据缓冲器828以及执行结果数据存储部830分别使用RAM 903或HDD 904的预定区域。仿真控制部820从控制程序存储单元808读取控制程序10,仿真执行以及从中间开始重新执行控制程序10,并且伴随着控制顺序控制仿真部840、运动控制仿真部850、控制周期计数部824、恢复数据缓冲器828、恢复数据存储部826以及执行结果数据存储部830中的数据流。稍后将描述具体的数据流。顺序控制仿真部840执行控制程序10的顺序控制部分。运动控制仿真部850执行控制程序10的运动控制部分。控制程序10的运动控制部分是用来计算针对每个控制周期待提供给电机驱动器17的指令值的部分。例如,以梯形图中使用的运动功能块(function block)的形式来描述运动控制部分。后文中,有时将运动功能块简化描述为FB。控制程序10的顺序控制部分是指除控制程序10的运动控制部分之外的部分。顺序控制部分除了包括梯形图的继电器(relay sequence)部分之外,还包括数值计算指令或数值计算功能块。顺序控制仿真部840包括顺序计算执行部844、顺序变量存储部846以及顺序计算控制部842。顺序计算控制部842控制顺序控制部分的执行。顺序计算执行部844根据顺序计算控制部842的指令仿真执行控制程序的顺序控制部分,并且生成与顺序控制部分相关的执行结果数据。顺序变量存储部846存储与根据顺序计算控制部842的指令进行的顺序控制部分执行相关的顺序变量。顺序变量存储部846使用RAM 903或HDD904的预定区域。 运动控制仿真部850包括运动计算执行部854、运动变量存储部856以及运动计算控制部852。运动计算控制部852控制运动控制部分的执行。运动计算执行部854根据运动计算控制部852的指令仿真执行控制程序的运动控制部分,并生成与运动控制部分相关的执行结果数据。运动变量存储部856存储与根据运动计算控制部852的指令进行的与运动控制部分执行相关的运动变量。运动变量存储部856使用RAM 903或HDD904的预定区域。控制周期计数部824对控制周期的执行数目数进行计数。恢复数据缓冲器828临时保存针对每个控制周期在恢复数据存储部826中保存的那种类型的数据。恢复数据存储部826保存对于在仿真被执行了至少一次后从仿真中间开始重新执行而言所必要的恢复数据。待被保存的数据是临时保存在恢复数据缓冲器828中的数据。恢复数据包括以下三种类型的数据。第一种是与可恢复控制周期相对应的控制周期的执行数目的数据,在可恢复控制周期中能够开始重新执行仿真。第二种是存储在顺序变量存储部846的数据中、从可恢复控制周期开始重新执行仿真所用到的顺序变量数据。第三种是存储在动作变量存储部856的数据中、从可恢复控制周期开始重新执行仿真所用到的运动变量数据。执行结果数据存储部830存储用于显示的执行结果数据。调试辅助部822提供调试中用到的功能,例如,断点设置(该断点是用来在控制程序中间暂停仿真的区域)、逐步执行设置(该逐步执行设置用来在每执行一步控制程序时暂停),等等。调试辅助部822使得仿真控制部820在通过用户接ロ単元802接收到与仿真执行和从中间开始的重新执行相关的用户指示以及其他调试功能时基于该用户指示来执行操作。当配置仿真单元806的每个部协调运行吋,仿真单元806通过用户接ロ単元802获取用来指定开始重新执行的控制周期的具体要求(specification),使用这种具体要求来指定用来开始重新执行的控制周期,并且使用与指定的控制周期相对应的恢复数据来从指定的控制周期开始重新执行仿真。图5是描述根据本发明实施例的控制程序的调试操作的流程图。
參见图5,首先创建控制程序(步骤SO)。然后,仿真执行该控制程序(步骤S2)。然后,确定是否获得了假定的结果(步骤S4)。如果在步骤S4确定获得了假定的结果,则该处理继续步骤S6,由作为实际机器的控制器14实施操作确认,并在必要时,根据控制器支持程序8修正PC 6中的控制程序。然后,结束该处理。如果在步骤S4确定没有获取假定的结果(在步骤S4中为否),则修正控制程序(步骤S8)。该处理再次返回到S2,并且基于修正后的控制程序来实施仿真执行。随后的处理与以上的处理类似,因此详细的描述将不再重复。获得了假定的结果的控制程序被存储在控制程序存储单元808中。图6是描述根据本发明实施例的控制器支持程序8的执行的流程图。參见图6,首先,准备控制程序10 (步骤S10)。存在各种方法来准备控制程序10。例如,能够使用如图5所描述的那样由新的输入创建的并且存储在控制程序存储单元808中的控制程序。可替代地,能够从存储介质(⑶-ROM 12)或者通过网络4从服务器2读取 控制程序。可替代地,可以从作为实际机器的控制器14中读取控制程序。仿真单元806根据用户指令仿真执行控制程序10,并生成执行结果数据(步骤S14)显示数据创建単元804创建用于显示执行结果数据随时间变化的显示数据(步骤S16)。然后,用户接ロ単元802将显示数据显示在监视器907上(步骤S18)。然后,控制程序编辑单元810确定是否作出开始进行修正的指示(步骤S20)。具体而言,控制程序编辑单元810确定是否用户通过用户接ロ単元802作出了开始进行修正的指示。如果在步骤S20中确定用户通过用户接ロ单元802作出了开始进行修正的指示(步骤S20中为是),则控制程序编辑单元810根据用户指示修正控制程序(步骤S22)。该处理再次返回到步骤S12,并通过用户指示仿真执行控制程序(步骤S12)。随后的处理是相同的。如果在步骤S20确定没有作出开始进行修正的指示(在步骤S20中为否),则控制程序编辑单元810通过用户指示将控制程序传输至作为实际机器的控制器14 (步骤S24)。然后结束该处理。现在将描述图6的步骤S12中根据用户指示进行控制程序仿真执行的处理以及步骤S14中生成执行结果数据的处理的具体内容。图7是描述根据本发明实施例的仿真单元806中仿真执行的流程图。參照图7,首先,仿真控制部820执行初始化处理或执行恢复初始化处理(步骤330)。“初始化处理”是指一种当从第一个控制周期开始执行控制程序时初始化变量等之类的值的处理。“恢复初始化处理”是指一种当从中间的控制周期开始重新执行控制程序时从恢复数据存储部826读取恢复数据并且使用该恢复数据来准备开始重新执行仿真的处理。仿真控制部820执行I/O刷新处理的仿真(步骤S32)。“I/O刷新处理”包括输出处理和输入处理。输出处理是ー种将先前周期中的执行结果数据输出的处理。输出处理包括将输出变量数据输出的处理以及将指令值输出的处理,输出变量是控制程序的顺序控制部分的执行结果,指令值是控制程序的运动控制部分的执行結果。在实际的控制器14中,输出变量数据通过I/O単元被传输至控制对象装置16,并用于对致动器等之类的驱动。指令值被传输至电机驱动器17,并用于对控制对象装置16的电机18的控制。然而,在仿真执行的情况下,执行结果数据实际上并没有被传输至控制对象装置16,而是一部分执行结果数据被存储在仿真结果存储部830中。输入处理是ー种获取(retrieve)待被顺序控制部分所使用的输入变量数据、待被运动控制部所使用的位置数据等的处理。在仿真执行的情况下,输入变量数据可以由用户手动提供,或者可以由复制控制对象装置操作的调试程序来提供。先前周期中的位置指令值可被采用作为位置数据。然后,顺序控制仿真部840仿真执行ー个周期的控制程序的顺序控制部分,井生成与顺序控制部分相关的执行结果(步骤S36)。运动控制仿真部850仿真ー个周期的运动控制部分的执行,并且生成与运动控制 部分相关的执行结果(步骤S38)。然后,仿真控制部820增量(increment)更新控制周期编号(步骤S40)。然后,仿真控制部820确定执行中的控制周期是否为可恢复控制周期(步骤S42)。換言之,如果执行中的控制周期与可恢复控制周期的指定条件(例如,为稍后将描述的“FB的活动开启(FB的Active 0N),,、“FB的忙碌开启(FB的Busy ON),,以及“恒定间隔”)相匹配,则将执行中的控制周期确定为可恢复控制周期,。根据这种确定从一系列控制周期中指定出可恢复控制周期。如果可恢复控制周期的条件是“恒定间隔”,则能够通过预先准备可作为可恢复控制周期的多个控制周期的列表来指定可恢复控制周期。在这种情况下,通过与相关列表相核实来确定执行中的控制周期是否为可恢复控制周期。如果在步骤S42中确定为可恢复控制周期(在步骤S42中为是),则仿真控制部820将先前控制周期中更新的恢复数据缓冲器828的内容保存在恢复数据存储部826中(步骤S44)。然后,该处理继续进行步骤S46。如果在步骤S42中确定不是可恢复控制周期(在步骤S42为否),则仿真控制部820基于在顺序控制仿真部840和运动控制仿真部850中生成的执行结果来更新恢复数据缓冲器828的内容(步骤S46)。然后,仿真控制部820确定是否结束仿真执行(步骤S48)。如果在步骤S48中确定结束仿真执行,则仿真控制部820结束该处理。如果在步骤S48中确定不结束仿真执行(步骤S48中为否),则仿真控制部820返回到步骤S32,并且根据被增量更新的下一个控制周期编号来执行步骤S32中的I/O刷新的仿真。重复上述处理直到仿真执行结束。如图6所示,在根据本实施例的控制器支持程序中,控制程序编辑单元810能够接收用户操作来修正已经在仿真单元806中被仿真过的控制程序。如图7所示,对于被控制程序编辑单元810修正的控制程序,仿真单元806能够使用在控制程序被修正之前保存的恢复数据,接收用户操作来开始重新执行仿真。因此,通过让用户指定在控制程序中执行结果受到修正影响的部分被执行的控制周期之前的控制周期以开始重新执行仿真,能够快速地检查控制程序中受到修正影响的那部分的操作。图8A和图8B是描述控制周期中的处理以时间顺序排布的情况的视图。參见图8A,如果不是可恢复控制周期,则执行I/O刷新处理、顺序控制部分的执行、运动控制部分的执行以及控制周期编号更新中的每ー个处理。之后,用更新后的控制周期编号以及在该控制周期中生成的执行结果数据来重写更新恢复数据缓冲器(更新恢复数据缓冲器)。參见图SB,如果是可恢复控制周期,则执行I/O刷新处理、顺序控制部分的执行、运动控制部分的执行以及控制周期编号更新中的每ー个处理。之后,将存储于恢复数据缓冲器828中的在先前控制周期中更新的控制周期编号以及在先前控制周期中生成的执行结果数据保存在恢复数据存储部826中(保存恢复数据)。然后,用在相关控制周期中更新的控制周期编号以及在该控制周期中生成的执行结果数据来重写更新恢复数据缓冲器828 (更新恢复数据缓冲器)。控制周期编号更新处理、恢复数据缓冲器更新处理以及恢复数据保存处理是特定于仿真的处理,而不会在作为实际机器的控制器14中执行。每个控制周期占用的时间在作为实际机器的控制器14中是恒定的,在这样的控制器14中,通过在定时器中断时启动控制周期而将控制周期设定为恒定时间,甚至在仿真执行中也是如此。在完成控制周期中的必要处理之后的时间是空闲时间。从而,由此提高了根据仿真执行所需的时间预测作为实际机器的控制器14中执行时间的准确度。如果这不是必要的话,则在完成该控制周期中的必要处理之后可立即开始下一个控制周期的处理。图9是描述根据本发明实施例的与计算指令值的控制周期相关的仿真単元806中的数据流的视图。參见图9,控制周期计数部824对当前“控制周期编号”进行计数。“控制周期编号”是从控制程序执行开始控制周期的执行总数。此处,“当前”是指执行中的控制周期的数据。在以下的描述中这都是相同的。这是以如下事实作为前提的数据在每个控制周期均可能变化。顺序变量存储部846存储顺序变量。“顺序变量”是与控制程序的顺序控制部分的执行相关联的数据。这包括对于顺序控制部分的执行所读取的数据和作为执行结果将被写入的数据这二者。具体而言,当前“ I/O数据”和“内部变量数据”被存储。“I/O”数据是与顺序控制部分的执行相关联的变量数据,并且是将成为I/O刷新处理对象的数据。換言之,它是输入变量数据和输出变量数据。“内部变量数据”是与顺序控制部分的执行相关联的变量数据,且限制为在程序内部使用的数据,而不会是I/O刷新处理的对象。运动变量存储部856存储运动变量。“运动变量”是与控制程序的运动控制部分的执行相关联的数据。运动变量包括为了执行运动控制部分所读取的数据以及作为执行结果被写入的数据这二者。具体而言,当前的“FB设置參数”、“指令值”、“轴位置”、“活动FB的ID”以及“忙碌FB的ID”被存储为运动变量。在本实施例中,假设将运动控制分描述为运动功能块(FB)。“FB设置參数”是用来指定FB操作方式的參数。FB设置參数可以是在编程阶段给定的常数值以及由程序执行确定的变量值。FB设置參数可包括使用FB的输入值在FB中计算出的二次參数。例如,カロ速时间由作为FB的输入值的速度和加速度计算得到,并且该加速时间在多个控制周期内加速时被作为參考,这里,不需要针对每个控制周期执行相同的计算,即通过计算在启动FB执行的控制周期中的加速时间并将加速时间存储在运动变量存储部。如果只是通过作为FB输入值的常数和顺序变量来配置FB设置參数,并且运动计算执行部854被配置为能够访问顺序变量存储部846,则FB设置參数由程序本身给出的常数以及存储在顺序变量存储部846中的顺序变量所确定,因而将FB设置參数存储到运动变量存储部856不是必须的。“指令值”是运动控制部分针对每个周期输出的数据。在本实施例中,指令值至少包括位置指令值。此外,指令值可以是速度指令值、扭矩指令值等。“轴位置”是电机18的旋转位置或者被电机18驱动的控制对象装置的特定部分的位置。使用旋转编码器等来測量控制对象装置的轴的实际位置。在仿真过程中,在运动变 量存储部856中准备虚拟轴,将指令值写入虚拟轴的存储区域中以使这样的存储内容作为轴位置,并且用新的指令值来更新该值。在运动控制部分针对每个控制周期输出用于某个轴的指令值的周期中,轴位置是在前一个控制周期中计算出的位置指令值。在运动控制部分没有针对每个控制周期输出指令值的周期中,不更新轴位置,并且保持相同的值。指令值在其用于轴位置时并不是直接被采用,而是可采用根据控制对象装置的可移动部分的物理特性(诸如カ矩、质量、摩擦等)由指令值的历史所计算出的预测位置。“Active (活动)”是ー种FB针对每个控制周期计算指令值的状态。它也被称作活动状态。“Busy (忙碌)”是FB处于执行中的状态。处于忙碌状态的FB可以是活动的,也可不是活动的。如同后文将描述的,当向FB输入了 ExecuteON时就实现了忙碌状态。通常,如果FB是忙碌的,则该FB就是活动的,但是,如同后文将描述的,如果多个FB通过Buffered模式或Blending模式连接,则除了连接头之外的FB可能处于忙碌但不活动的状态。“FB的ID”是用来分别指定在一个控制程序用使用的FB的信息。例如,它可以是在编程时给出的FB的名称。当启动控制周期吋,仿真控制部820使得顺序控制仿真部840和运动控制仿真部850执行ー个周期的仿真。控制周期计数部824増量更新“当前控制周期编号”。如上所述,然后,仿真控制部820确定是否是可恢复控制周期,如果确定不是可恢复控制周期,则重写并在恢复数据缓冲器828中保存来自控制周期计数部824的“当前控制周期编号”、来自顺序变量存储部846的“当前I/O数据”和“当前内部变量数据”、以及来自运动变量存储部856的“当前FB设置參数”、“当前指令值”、“当前轴位置”、“当前活动FB的ID”以及“当前忙碌FB的ID”。如果仿真控制部820确定为可恢复控制周期,则首先将恢复数据缓冲器828的内容记录在恢复数据存储部826中,然后与当确定为不是可恢复控制周期时相类似地重写恢复数据缓冲器828。在本实施例中,待被保存在恢复数据存储部826中的控制周期编号是能够开始重新执行的可恢复控制周期的前ー个周期的控制周期编号,但是该控制周期编号可以不从恢复数据缓冲器828中传送,并且可恢复控制周期本身的控制周期编号可被保存为恢复数据。在这种情况下,当重新执行仿真时,基于如下的前提来实施用于开始重新执行的准备处理在恢复数据中包含的控制周期编号指示的控制周期为生成了恢复数据而非控制周期编号的控制周期之后的那个控制周期。此外,如果存在约定条件将增加了常数偏移值的控制周期编号保存为恢复数据并且在恢复时减去相同的偏移值,则可以保存该控制周期编号而非上述值。換言之,将保存的是能够与可恢复控制周期相对应的控制周期编号。用于从可恢复控制周期开始重新执行的恢复数据从恢复数据缓冲器中读出,并被存储在恢复数据存储部826中。这不同于存储在可恢复控制周期中生成的恢复数据。在图8A和图SB的情况下,存储可恢复控制周期的前一个控制周期中所生成的恢复数据。如果恢复数据缓冲器828配置为用于多个周期的环形缓冲器,则在前几个周期的控制周期中生成的恢复数据可以被存储在恢复数据存储部826中。在这种情况下,通过从生成恢复数据的控制周期之后的控制周期开始进行数个周期的预备执行,能够在重新执行时从使用用户的具体要求所指定的控制周期开始重新执行。如果指令值和轴位置这二者均存储在恢复数据存储部826,则在轴位置是先前周期的指令值情况下能够基于指令值和轴位置的差来获得速度。 在生成恢复数据的控制周期的前个周期中更新的轴位置,S卩,反映了之前两个周期的那个周期中输出的指令值的轴位置可代替指令值被存储在恢复数据存储部826中。可以基于两个“轴位置”的差来获取速度。如果将考虑了控制对象装置的物理特性所计算出的轴位置作为预测位置,则能够获得与预测位置相对应的预测速度。代替如上所述的在恢复时基于两个位置的值获取速度,也可以将预先计算出的速度值存储在恢复数据存储部826中。可以将所有控制周期的恢复数据保存在恢复数据存储部826中。然后,能够从任ー控制周期开始重新执行仿真。所有控制周期的恢复数据均可以一次保存在恢复数据存储部826中,然后可以设置任意数目的可恢复控制周期,并且之后可以删除与不是可恢复周期设置对象的控制周期相对应的恢复数据。在每ー个控制周期中在执行图7中I/O刷新处理仿真的时刻(步骤S32),仿真控制部820将来自控制周期计数部824的“当前控制周期编号”、来自顺序变量存储部846的“当前I/O数据”以及来自运动变量存储部856的“当前指令值”和“当前轴位置”记录在执行结果数据存储部830中,并且还生成“轴的移动执行标志”,并且将其记录在执行结果数据存储部830中,如图9中的(I)、(2)和(3)所示。“轴的移动执行标志”是指示用于控制相关轴的多个FB之一处于活动的标志。I/O数据可以存储所有类型的I/O数据,但是用户可以指定在时间表中安排为将被图形显示的I/O数据,并且可以只存储这样的I/O数据以节省存储容量。只有指令值或轴位置的其中之一可以被存储在执行结果数据存储部。如果二者均被存储,则当轴位置为考虑了控制对象装置的物理特性所计算出的预测位置时,能够检查指令值和预测位置之间的差。如果速度将基于存储在执行结果数据存储部830中的执行结果数据来获得,则能够基于先前周期(控制周期编号#N-1)的轴位置和当前周期(控制周期编号#N)的轴位置来获取速度。如果轴位置是先前周期的指令值,则能够基于同一控制周期中的指令值和轴位置之间的差来获取速度。因此,代替在显示执行结果数据的同时基于两个位置值来获取速度,可以将预先计算出的速度值存储在执行结果数据存储部830。如果待被控制的轴有多个,则将针对每个轴的轴位置以及轴的移动执行标志存储在待存储它们的每个存储部中。如果对象FB有多个,则针对每个FB存储FB设置參数和FB的ID。 在图9中,任意控制周期均可以是可恢复控制周期,而不管哪个FB是活动,也就是说,不管控制周期是FB之一正在计算指令值的周期,还是只有顺序控制部分正在被执行的周期。图10是描述根据本发明实施例的与没有计算指令值的控制周期相关的仿真単元806中数据流的视图。參见图10,示出了一个没有任何FB处于活动的周期中的数据流。在该周期期间,与FB的状态相关的数据(FB设置參数、指令值、活动FB的ID、忙碌FB的ID)并不有效存在,因而与FB的状态相关的数据没有被存储为恢复数据和执行结果数据。即使是在FB不处于活动的周期中,轴位置也会有效存在,因而轴位置被存储。在该示例中,以堆满模式(packed mode)显示没有存储数据的区域,但是可确保数据区域本身不变。如果能够被设置为可恢复控制周期的周期被限制为没有FB是活动的周期,则与FB的状态相关的数据不需要被保存为恢复数据,因而能够減少用于保存恢复数据的存储容量。即使是当第一控制周期(在第一控制周期中,FB之一从没有FB处于活动的周期起变为活动的)成为可恢复控制周期吋,这也类似于能够被设置为可恢复控制周期的周期被限制为没有FB处于活动的周期的那种情况,这是因为在生成待被保存数据之前的周期中仍没有FB处于活动。如果不是从FB的中间开始恢复而总是从FB的头部开始恢复,则用于对可作为可恢复控制周期的控制周期进行限制的方法也是有用的。图IIA和图IlB是描述根据本发明实施例的IC芯片转移装置100的视图。在本发明的实施例中,将IC芯片转移装置100描述为控制对象装置来举例说明。图IlA示出IC芯片转移装置100的平面图。图IlB示出IC芯片转移装置100的正视图。參见图IlA和图11B,IC芯片转移装置100配置有XYZ导杆50和真空吸盘60,XYZ导杆50包括能够通过电机(未示出)进行X轴定位的X导杆51、能够进行Y轴定位的Y导杆52以及能够进行Z轴定位的Z导杆53,真空吸盘60用于使用XYZ导杆50来吸附IC芯片TP。真空吸盘60真空吸附以预定间隔布置在IC芯片传送器80上的IC芯片TP。使用XYZ导杆50在安装在IC托盘传送器75上的IC托盘70的预定位置安装IC芯片TP。IC托盘70包括用来以阵列形式安装IC芯片的空单元(empty cell) RN。XYZ导杆50—次将ー个IC芯片转移至布置在IC托盘70中的空单元RN中。具体而言,预先设置IC芯片TP被供应至的エ件供应位置,并且将IC托盘70中的空单元RN之一指定为エ件转移位置。XYZ导杆50使用真空吸盘60将被真空吸附的IC芯片TP从エ件供应位置转移至エ件转移位置,并在指定的エ件转移位置安装IC芯片TP。
通过移动IC芯片传送器80将安装在IC芯片传送器80上的IC芯片TP移动到エ件供应位置。沿着IC芯片传送器80的行进方向以预定间隔布置IC芯片TP。图12是描述根据本发明实施例的IC芯片转移装置100的操作流程的视图。參见图12,首先,使用IC托盘传送器75将其上没有安装IC芯片TP的IC托盘70(即未安装的IC托盘70)移动至供应接纳位置(步骤S50)。然后,移动IC芯片传送器80以将IC芯片TP移动至エ件供应位置(步骤S52)。然后,使用XYZ导杆50将真空吸盘60移动至エ件供应位置(步骤S54)。然后,使用真空吸盘60真空吸附IC芯片TP (步骤S56)。
将使用XYZ导杆50真空吸附的IC芯片TP移动至IC托盘70的空单元位置(エ件转移位置)(步骤S58)。将IC芯片TP安装在IC托盘70的空单元位置(エ件转移位置)(步骤S60)。然后,确定是否继续转移IC芯片TP (步骤S62)。如果在步骤S62中确定不继续转移IC芯片TP (在步骤S62中为否),则结束该处理。如果在步骤S62中继续转移IC芯片(在步骤S62中为是),则然后确定IC托盘70是否有空单元RN (步骤S64)。如果确定IC托盘70有空单元RN (在步骤S64中为是),则将IC芯片TP移动至供应位置(步骤S52)。随后的处理相同,因而将不再重复其详细描述。换言之,一次将ー个IC芯片TP安装在IC托盘70的空单元RN上。如果在步骤S64中确定IC托盘70没有空单元(在步骤S64中为否),则将未安装的IC托盘70移动至供应接纳位置(步骤S50)。然后重复以上处理。图13是描述用来控制IC芯片转移装置100中的XYZ导杆50的控制程序的一部分的视图。參见图13,此处示出了用来控制XYZ导杆50将真空吸盘60移动至IC托盘70中的空単元RN的位置的这部分程序。FBl和FB2是相同类型的运动功能块,具有相同的名称MC_MoveAbsolute,并且具有针对每个控制周期生成指令值以将ー个轴(电机的旋转位置)从当前位置移动到用绝对坐标给出的目标位置的功能。FBI (MoveToTray_X)用于将真空吸盘60的X坐标位置移动至空単元的X坐标位置。FB2 (MoveToTray_Y>用于将真空吸盘60的Y坐标位置移动至空单元的Y坐标位置。此处,FBl和FB2与控制程序的运动控制部分相对应。每个FB左侧的端子是输入端子,而右侧的端子是输出端子。首先将描述输入端子。为“Axis”端子赋予与相关FB相对应的轴名称。X轴被分配为Axis_l,Y轴被分配为 Axis_2。当将ON (开)输入提供至“Execute”端子吋,FB开始进入忙碌状态和活动状态。为“Position,,、“Velocity,,、“Acceleration,,、“Deceleration”以及“Jerk,,中姆ー个端子分别提供目标位置、速度、加速度、减速度以及跃度(jerk)的值。
以变量名称Cell_X、Cell_Y将目标位置提供至“位置”端子。在程序不同区域计算出的空单元的X坐标和Y坐标被存储在Cell_X、Cell_Y中。在编程阶段为“Velocity”、“Acceleration” 以及 “Deceleration” 中姆一个端子赋予常数值。“Jerk”端子的输入被省略。“Direction”是用于环形模式的端子,在环形模式中,即使轴绕了几圈并达到位置,但只要该轴在ー圈中的旋转位置是相同的,那也没有区別,此处将不再对此进行描述。后文将描述“BufferMode”。此处不使用BufferMode。现在将描述输出端子。输出的“ Axis”端子不作改变地将输入的Axis端子的数据输出。“Done”端子在完成FB的执彳丁的控制周期之后的控制周期中输出0N。 “CommandAborted”端子在FB的执行异常中断的控制周期之后的控制周期中输出
ON0当FB处于忙碌状态时“Busy”端子输出0N。在FB处于活动状态时“Active”端子输出0N。当出现某种错误时“Error”端子输出0N。当出现错误时“ErrorID”输出错误代码。当名称为Under_MovingToTray的接触点(contact)(变量)变为ON时,将ON提供至FBl和FB2的“ Execute”端子,FBl和FB2开始指令值计算以将X轴和Y轴朝向空单元RN的位置移动。在每个轴的移动完成后,每个“Done”端子输出ON。“Done”端子输出的ON或OFF的值被存储在名称为ToTray_Done_X、ToTray_Done_Y的接触点(变量)中。这种接触点用来开始Z轴的降低操作以将IC芯片TP安装在空单元中。图14是描述根据本发明实施例的控制器支持程序的窗ロ屏幕的视图。參见图14,根据本发明实施例的控制器支持程序的窗ロ屏幕1000包括设置栏1002和控制程序编辑栏1004。设置栏1002是用来实施在进行控制程序的编辑和仿真中必要的各种设置输入的部分。控制程序编辑栏1004用来输入和编辑控制程序。在右下方区域中,示出提供了可恢复点设置方法的设置按钮1010、仿真执行控制按钮1006以及仿真执行结果显示链接部1008的情況。当按下可恢复点设置方法的设置按钮1010时,打开图15中的选择窗ロ屏幕1100作为不同的窗ロ。在作出这种设置后,在执行仿真时保存恢复数据。针对仿真执行控制按钮1006提供了四个按钮,从左到右提供了用于指示开始、停止、暂停和逐步执行仿真的按钮。当链接部被点击(按下)吋,仿真执行结果显示链接部1008打开图16中的时间表窗ロ屏幕作为不同的窗ロ。图15是描述根据本发明实施例的可恢复点设置方法的选择窗ロ屏幕1100的视图。參见图15,根据本发明实施例的选择窗ロ屏幕1100包括复选框1102,在复选框1102处能够选中“FB的Active 0N”、“FB的Busy ON”以及“恒定间隔”中的每ー个,在本示例中示出了通过鼠标906等选中“ FB的ActiveON”的情况。布置有“确定(0K)”按钮1104和“取消(cancel)”按钮1106,当点击(或按下)“确定”按钮1104时,在复选框中选中的设置方法变得有效。当点击(或按下)“确定”按钮1104或“取消”按钮1106时,关闭该窗ロ屏幕。如果选中了 “FB的Active ON",则将每个FB变成Active On (活动状态开启)的控制周期假定为可恢复控制周期。在每个FB变成Active ON的控制周期之前的某个编号的控制周期可以成为可恢复控制周期。通过以运动控制部分变成活动状态的控制周期作为基准来设置可恢复控制周期,用户能够容易地从运动控制部分变为活动状态的时刻附近开始重新执行。通过不设置与运动控制部分变成活动状态的控制周期不相关联的可恢复控制周期或者減少这种设置的数目,能够减少保存恢复数据的量,但是仍然能够保持一定程度的便利性。 如果选中了 “FB的Busy ON",则将每个FB变成Busy ON (忙碌状态开启)的控制周期假定为可恢复控制周期。如果将某个FB变成Busy ON的控制周期假定为可恢复控制周期,则在前ー个周期中,即在生成恢复数据的周期中,关于该轴的处于忙碌或活动的另ー个FB可能会存在,因而需要将“当前活动FB的ID”保存为恢复数据,但是关于该轴的处于忙碌但是不活动的另ー个FB不会存在,因而可以不将“当前忙碌FB的ID”保存为恢复数据。可以将每个FB变成Busy ON的控制周期之前的某个编号的控制周期假定为可恢复控制周期。通过以运动控制部分变成执行状态的控制周期作为基准来设置可恢复控制周期,用户能够容易地从运动控制部分变成执行状态的时刻附近开始重新执行。通过不设置与运动控制部分变为执行状态的控制周期不相关联的可恢复控制周期或者減少这种设置的数目,能够减少保存恢复数据的量,但是仍然能够保持一定程度的便利性。如果选中了 “恒定间隔”并且指定了时间(秒),则将与用于每个指定时间间隔的时刻相对应的控制周期假定为可恢复控制周期。如果将可恢复控制周期的间隔设置为充分小,则能够从任意地方适当地开始重新执行。不限于一个设置方法,而是能够使多个设置方法同时有效。图16是描述根据本发明实施例的时间表窗ロ屏幕1200的视图。參见图16,当点击(按下)图14中的仿真执行结果显示链接部1008时,打开根据本发明实施例的时间表窗ロ屏幕1200。对于ー个IC芯片TP的一轮的吸附和安装操作,示出了每个轴的速度状态以及移动执行标志的状态。在“恢复点指定方法”栏中,能够可交替地从五种方法中选择恢复点指定方法。具体而言,如果选择了 “恢复点指定方法”栏中的“在图上”,则能够通过在水平方向上拖动时间指定标签(tab)来指定恢复点。如果将恢复点设置为“FB的Active ON”或“FB的Busy 0N”,则多个轴中ー个轴的移动执行标志的上升时刻就是可恢复点。通过垂直标线(cursor line) 1208的位置来指示恢复点,标线1208随着时间指定标签1206的移动而移动,从而使得时间指定标签1206能够持续地改变位置而标线1208的移动方式是离散的,这是因为恢复点是以离散的方式存在的。在本示例中,标线1208定位在与时间指定标签1206的位置最接近的3. 18秒的可恢复点处。如果将时间指定标签从这种状态向左稍微移动,则将标线1208离散地移动到3. 04秒的位置,在该位置处Z轴的移动执行标志上升。在时间显示栏1203中,将标线1208位置处的时间显示在时间标尺1212上,其中标线1208位置处每个图形的垂直轴的值被显示在数值显示栏1204中。能够通过操作滚动条1210来改变时间标尺1212的位置。因此,通过接收关于在监视器907上所显示的图形上的位置的用户指示,指定与用户指示的图形上的位置相对应的可恢复控制周期,并且从可恢复控制周期开始重新执行仿真,用户能够与控制程序的执行结果的推移(transition)相一致地指示开始重新执行。如果选中了 “恢复点指定方法”栏中“在图上”右侧的“临时释放”,则临时释放恢复点的指定操作状态,将标线1208显示在与时间指定标签1206相同的位置,并且持续移动标线1208,通过数值显示栏1204的显示,能够检查在任意时刻每个图形的值。如果选择了“恢复点指定方法”栏中的“最終修正的FB”,则将能够从在图14中的程序编辑栏1004中输入值最新被修正的FB处实施重新执行的可恢复控制周期指定为恢复点。在这种情况下,通过仿真単元806,从控制程序编辑单元810获取用来指定修正的FB的信息,指定能够从最新修正的FB开始实施重新执行的可恢复控制周期,并且从可恢复控制周期开始重新执行仿真。因此,能够容易地从修正的运动控制部分开始实施重新执行。如果选择了 “恢复点指定方法”栏中的“在程序列表上”,则从位于图14的控制程序编辑栏1004中显示的程序列表中选择FB,并将能够从这样的FB开始实施重新执行的可恢复控制周期指定为恢复点。具体而言,通过在程序列表中点击来选择ー个FB,并从下拉菜单中选择“指定为恢复点”。在这种情况下,仿真单元806指定能够从显示的程序列表上指定的FB开始实施重新执行的可恢复控制周期,并从可恢复控制周期开始重新执行仿真。因此,用户能够与控制程序的列表显示中示出的运动控制部分相一致地指示重新执行的开始。
如果选择了“恢复点指定方法”栏中的“在空间轨迹上”,则将与在图17的空间轨迹显示窗ロ屏幕1300中显示的空间轨迹上所指定的位置相对应的控制周期指定为恢复点。如果选择了 “恢复点指定方法”栏中的“在轴位置列表上”,则根据图18的关于轴位置列表的具体要求来指定恢复点。在“最終修正的FB”、“在程序列表上”、“在空间轨迹上”以及“在轴位置列表上”所有这些情况中,图形自动滚动以使显示指定的恢复点。当选择“在程序列表上”、“在空间轨迹上”或“在轴位置列表上”其中之一并且按下“跳转(G0)”按钮1201时,图14、图17或图18中的对应窗ロ屏幕被打开或者近侧窗ロ屏幕被显示。图17是描述根据本发明实施例的空间轨迹显示窗ロ屏幕1300的视图。參见图17,使用存储在执行结果数据存储部中的一系列轴位置绘制出显示在空间轨迹显示窗ロ屏幕1300上的空间轨迹。可以使用存储的指令值来代替轴位置进行绘制。图17中显示的空间轨迹示出了一个轨迹的示例,该轨迹绘制出在Z方向升高时投影到XY坐标平面上的半圆形,与IC芯片转移装置100的XYZ导杆50的情况相反。在屏幕上部的虚拟机构设置栏1301中显示当前正在被使用的虚拟机构的名称。虚拟机构是电子建立模型,并且是通过一系列指令值来移动的三维模型,其配置是针对每一种类型的机构(例如XYZ导杆)抽象出来的。当点击栏右侧的三角形标志时,会出现虚拟机构列表,并且能够作出从当前使用的虚拟机构至另一种虚拟机构的改变。当按下用于设置和编辑的按钮1303时,虚拟机构设置屏幕被打开作为不同的窗
ロ屏幕。在坐标值显示栏1304中显示针对每个坐标轴的轴当前位置。在轴和运动FB的对应显示栏1306中显示在控制程序中使用的轴名称与当前操作的FB的对应关系。在本示例中,按下显示设置栏1307的“3D”按钮1307A,从而在图像显示栏1302中显著地显示3D显示。当再次按下“3D”按钮1307A时,实现四维显示,该四维显示除了包括3D显示之外,还包括到XY平面的投影视图、到XZ平面的投影视图以及到YZ平面的投影视图。当按下ー个不是“3D”的按钮时,以放大形式显示对应的平面投影视图。 通过透视性的描绘方法来描述3D显示,在该3D显示中,通过鼠标操作能够自由地改变三维空间中的视点位置和视线方向。小球体被显示为当前位置标记,该当前位置标记指示Z方向上线性移动元件末端(distal end)的当前位置。在显示设置栏1307中,能够选择是否显示指令值的轨迹,并且能够选择是否显示虚拟机构。如果不显示虚拟机构,则只显示轨迹曲线。当按下详细设置按钮1307P时,能够实施轨迹厚度设置、轨迹显示颜色设置、显示坐标轴和坐标数值的设置等。移动图像再现控制按钮1310显示在屏幕的下部。再现时间条1314表示从开始到结束执行控制程序所需的时间。随着控制程序执行时间的推移,当前时刻标签1312在再现时间条1314上从左到右移动。能够通过用鼠标906拖动操作当前时刻标签1312来调整移动图像的显示开始时间。轨迹开始点标签1308和轨迹结束点标签1316指示轨迹的显示开始时刻和结束时刻,二者均能够通过鼠标906的拖动操作而沿着再现时间条1314移动。当前位置随着时间的推移连续移动时,正在被显示的轨迹长度在轨迹开始点标签1308和轨迹结束点标签1316据此移动时会被改变。当开始显示移动图像吋,显示每个机构元件移动和当前位置标记沿着轨迹移动的状态。用来配置成移动图像的每个顺序显示的静态图像可以不是针对所有控制周期而被创建的,但是可以针对每个恒定间隔的控制周期而创建。在图像显示栏1302中,大量的与轨迹重叠显示的十字标记指示设置了仿真的可恢复点的位置。在该示例中,以时间恒定间_ (temporally constant interval)来设置可恢复点。用户能够通过点击并选择这样的标记之一并从下拉菜单中选择“指定为恢复点”来指定仿真恢复点。在这种情况下,仿真单元指定与用户指示的轨迹上的位置相对应的可恢复控制周期,并且从相关的可恢复控制周期开始重新执行仿真。因此,用户能够与位置指令值的空间轨迹相一致地开始重新执行。图18是描述根据本发明实施例的轴位置列表的显示窗ロ屏幕1400的视图。參见图18,根据本发明实施例的显示窗ロ屏幕1400显示与设置了可恢复点的控制周期相对应的时间以及轴位置列表,从而使得能够从中指定恢复点。通过操作滚动条1402能够滚动显示在显示窗ロ屏幕中的内容。能够被指定的恢复点只有ー个。在本示例中,每个轴的位置用数值显示,但是也可以用表示该轴位置的变量名称来显示。通过点击(按下)“确定”按钮1404,恢复点的指定变为有效。通过点击(按下)“取消”按钮1406,能够取消恢复点的指定。在这种情况下,仿真单元806指定与用户指示的位置列表中的位置相对应的可恢复控制周期,并且从可恢复控制周期开始重新执行仿真。因此,用户能够与控制程序的执行结果的推移相一致地来指示开始重新执行。图19A和图19B是描述根据本发明实施例的Buffered模式的视图。參见图19A,Buffered模式是通过将前边的(左边)FB的Axis输出端子与后边(右边)的FB的Axis输入端子直接耦接来将两个FB串联连接一起的模式,并且将ON (值为I)输入到后边的FB的Execute端子,以使后边的FB在前边的FB执行期间处于忙碌状态。被预先设置为忙碌状态的后边的FB从前边的FB完成执行的控制周期之后的控制周期变为活 动的,并且开始计算指令值。通过将“Buffered”输入到后边的FB的BufferMode端子来指定Buffered模式。即使还有另外的FB被串联连接在后边的FB的后面,也仍然能够在这样的FB上指定Buffered模式。參见图19B,示出了用于Buffered模式中一部分FB的端子的输入信号和输出信号的时序图。示出了在时刻tlFBl开始将处于忙碌状态和活动状态的情況。还示出了在时刻t2FB2开始将处于忙碌状态的情況。进ー步示出了 FB2在时刻t3变为活动状态的情況。当针对可恢复点的设置方法指定了 “FB的Active ON”和“FB的BusyON”这二者时,与图中的tl、t2和t3相对应的控制周期成为可恢复点。图20是描述根据本发明实施例的用于在Aborting模式中一部分FB的端子的输入信号和输出信号的时序表的视图。当将“Aborting”输入到图19A中两个串联连接的FB中的后边的FB的BufferMode端子时,实现了 Aborting模式。在Aborting模式中,当在前边的FB执行期间将ON (值为I)输入到后边的FB的Execute端子时,前边的FB的执行立即被取消,并且后边的FB在下一个控制周期变成活动的进而开始计算指令值。即使还有另外的FB串联连接到后边的FB的后面,也能够在这样的FB上指定Aborting模式。当针对可恢复点的设置方法指定了 “FB的Active ON”和“FB的BusyON”这二者时,与图中的时刻tl和t2相对应的控制周期成为可恢复点。在Buffered模式情况下后边的FB开始执行的时刻t3不会成为Aborting模式中的可恢复点。现在将描述Blending模式。Blending模式与Buffered模式共同之处在于前边的FB完成了执行而没有被取消,但是速度没有如同Buffered模式中的那样一次变为零,并且从前边的FB处于活动的状态转移至后边的FB处于活动的状态的同时以中继速度持续运动。依赖于确定中继速度的方式,Blending模式具有四个模式BlendingNext模式、BlendingPrevious 模式、BlendingHigh 模式以及 BlendingLow 模式。图21是示出根据本发明实施例的用于在BlendingNext模式中一部分FB的端子的输入信号和输出信号的时序表的视图。当将“BlendingNext”输入到图19A中两个串联连接的FB中的后边的FB的BufferMode 端子时,实现了 BlendingNext 模式。在BlendingNext模式中,当在前边的FB执行期间将ON(值为I)输入到后边的FB的Execute端子时,调节前边的FB的指令值计算内容,从而使得前边的FB的结束速度变为后边的FB的目标速度。预先处于忙碌状态的后边的FB从前边的FB完成执行的控制周期之后的控制周期开始变成活动,并且开始指令值计算。即使还有另外的FB串联连接在后边的FB的后面,也能够在这样的FB上指定BlendingNext 模式。如果针对可恢复点的设置方法指定了 “FB的Active ON”和“FB的BusyON”这ニ者,则与图中的时刻tl、t2和t3对应的控制周期成为可恢复点。图22是描述根据本发明实施例的用于在BlendingPrevious模式中一部分FB的端子的输入信号和输入信号的时序表的视图。
当将“BlendingPrevious”输入到图19A中两个串联连接的FB中的后边的FB的BufferMode 端子时,实现了 BlendingPrevious 模式。在BlendingPrevious模式中,当在前边的FB执行期间将ON (值为I)输入到后边的FB的Execute端子时,调节前边的FB的指令值计算内容,从而使得前边的FB维持目标速度直到执行完成。预先处于忙碌状态的后边的FB从前边的FB完成执行的控制周期之后的控制周期开始变成活动的,并且后边的FB开始指令值的计算。即使还有另外的FB串联连接在后边的FB的后面,也能够针对这样的FB指定BlendingPrevious 模式。如果针对可恢复点的设置方法指定了 “FB的Active ON”和“FB的BusyON”这ニ者,则与图中的时刻tl、t2和t3相对应的控制周期成为可恢复点。当将“BlendingHigh”输入到图19A中两个串联连接的FB中后边的FB的BufferMode端子时,实现了 BlendingHigh模式。在BlendingHigh模式中,前边的FB的目标速度或后边的FB的目标速度中较大的ー个变为中继速度。换句话说,在前边的FB的目标速度较大时的操作与BlendingPrevious模式的操作相同,在前边的FB的目标速度较小时的操作与BlendingNext模式中的操作相同。当将“BlendingLow”输入到图19A中两个串联连接的FB中后边的FB的BufferMode端子时,实现了 BlendingLow模式。在BlendingLow模式中,前边的FB的目标速度或后边的FB的目标速度中较小的ー个变为中继速度。换言之,在前边的FB的目标速度较大时的操作与BlendingNext模式的操作相同,在前边的FB的目标速度较小时的操作与BlendingPrevious模式中的操作相同。以上通过举例说明,已经描述了用于以针对ー个轴的绝对坐标来指定目标位置的运动功能块,然而动作功能块具有不同的类型,例如,用于以相对于FB执行开始时位置的相对坐标来指定目标位置的功能块,用于将多个轴分组并对包括在该组中的每个轴的移动开始时刻和移动结束时刻以及中间的速度控制进行同步以使得在位于ニ维空间或三维空间内两个点之间线性移动的功能块,以及用来在绘制弧线轨迹的同时在两个点之间移动的功能块。毫无疑问,本发明能够应用于任意一种情况。还可以提供用于执行在以上流程中所描述的控制的计算机运行方法以及用来实现这种方法的程序。这种程序可以被记录在非临时存储的计算机可读记录介质中,例如软盘(flexible disc)、紧凑只读光盘存储器(⑶-ROM)、只读存储器(ROM)、随机存取存储器(RAM)以及与计算机相连的存储卡,并且这种程序作为程序产品被提供。可替代地,该程序可以通过被记录在诸如集成在计算机中的硬盘的记录介质中而被提供。该程序还可以通过网络被下载而提供。该程序可以以预定阵列和预定时序调用作为计算机操作系统(OS)的一部分所提供的程序模块中的必要模块,并且可以处理该必要模块。在这种情况下,相关模块不是被包括在程序本身中,并且该处理是与OS协同执行的。不包括这种模块的程序也被涵盖在根据本发明的程序之内。根据本发明的程序可以通过集成到另ー个程序中的一部分中而被提供。在这种情况下,另ー个程序的模块也不是被包括在该程序本身中,而且该处理是与另ー个程序配合执行的。集成到另一个程序中的该程序也被涵盖在根据本发明的程序之内。将被提供的程序产品安装在待被执行的程序存储部(例如硬盘)中。该程序产品包 括程序本身以及记录了该程序的记录介质。如上已经描述了本发明的实施例,然而本文公开的实施例在所有的方面均是示意性的,不应当被解释为是限制性的。本发明的范围应当由权利要求来限定,与权利要求等同的含义以及权利要求范围内的所有改型均被涵盖在本文中。附图标记说明2服务器4 网络8控制器支持程序10、15控制程序14控制器16控制对象装置17电机驱动器18 电机50XYZ 导杆60真空吸盘70IC 托盘75IC托盘传送器80IC芯片传送器100IC芯片转移装置802用户接ロ单元804显示数据创建単元806仿真单元808控制程序存储单元810控制程序编辑单元812控制器接ロ单元820仿真控制部822调试辅助部
824控制周期计数部826恢复数据存储部828恢复数据缓冲器830执行结果数据存储部分840顺序控制仿真部842顺序计算控制部844顺序计算执行部846顺序变量存储部
850运动控制仿真部852运动计算控制部854运动计算执行部856运动变量存储部
权利要求
1.一种控制器支持装置,用于仿真控制程序,所述控制程序包括在用于控制机器移动的控制器中在每个控制周期执行的顺序控制部分和运动控制部分,所述控制器支持装置包括 仿真单元(806),配置为仿真所述控制程序的执行并生成执行结果数据; 显示数据创建单元(80),配置为创建用于显示由所述仿真单元生成的所述执行结果数据随时间变化的显示数据; 接受单元(802),配置为接受关于所述仿真单元的用户指示;以及 显示器(907),用于显示由所述显示数据创建单元创建的显示数据; 其中,所述仿真单元包括 顺序计算执行部(844),配置为用于仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据, 顺序变量存储部(846),配置为供用于执行仿真的所述顺序计算执行部所使用; 运动计算执行部(854),配置为用于仿真所述控制程序的运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据, 运动变量存储部(856),配置为供用于执行仿真的所述运动计算执行部所使用, 控制周期计数部(824),配置为用于对控制周期的执行数目进行计数,以及 恢复数据存储部(828),配置为用于保存恢复数据,所述恢复数据包括 与能够开始重新执行仿真的可恢复控制周期相对应的执行数目的数据,以及变量数据,为存储在所述顺序变量存储部和所述运动变量存储部中的数据,被使用于从所述可恢复控制周期开始重新执行仿真; 所述仿真单元配置为 指定所述可恢复控制周期,并将与所述可恢复控制周期相对应的所述恢复数据存储在所述恢复数据存储部中;以及 所述仿真单元配置为从所述接受单元获取关于指定用来开始重新执行的控制周期的具体要求,并使用该具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相应的恢复数据来从所指定的控制周期开始重新执行仿真。
2.根据权利要求I所述的控制器支持装置,还包括 控制程序编辑单元(810),配置为编辑所述控制程序;其中, 所述控制程序编辑单元配置为接受用户操作以修正在所述仿真单元中执行的控制程序仿真;以及 所述仿真单元配置为接受用户操作,以针对所述控制程序编辑单元修正的控制程序使用在所述控制程序被修正之前所保存的恢复数据来开始重新执行仿真。
3.根据权利要求2所述的控制器支持装置,其中, 所述控制程序编辑单元配置为通过用户操作来修正所述控制程序的所述运动控制部分;以及 所述仿真单元配置为从所述控制程序编辑单元获取用于指定被修正的运动控制部分的信息,从多个可恢复控制周期中指定能够从最新修正的运动控制部分实施重新执行的控制周期,并且从这个控制周期开始重新执行仿真。
4.根据权利要求2所述的控制器支持装置,其中,所述控制程序编辑单元配置为在显示器上以列表显示所述控制程序的内容; 所述接受単元配置为接受列表显示上用来开始重新执行的运动控制部分的具体要求;以及 所述仿真単元配置为从多个可恢复控制周期中指定能够从指定的运动控制部分实施重新执行的控制周期,并且从这个控制周期开始重新执行仿真。
5.根据权利要求I所述的控制器支持装置,其中, 所述控制程序的所述运动控制部分在每个控制周期中处于活动状态或者处于非所述活动状态的不活动状态,其中所述活动状态是计算指令值的状态;以及 所述仿真単元配置为以所述运动控制部分从所述不活动状态变为所述活动状态的控制周期作为基准来指定所述可恢复控制周期。
6.根据权利要求I所述的控制器支持装置,其中, 所述控制程序的运动控制部分在每个控制周期中处于执行状态或处于非所述执行状态的不执行状态,其中在所述执行状态中所述运动控制部分处于执行中,以及 所述仿真単元配置为以所述运动控制部分从所述不执行状态变为所述执行状态的控制周期作为基准来指定所述可恢复控制周期。
7.根据权利要求I所述的控制器支持装置,其中,所述仿真単元配置为将对于每个恒定间隔的控制周期指定为所述可恢复控制周期。
8.根据权利要求I所述的控制器支持装置,其中, 所述显示数据创建単元配置为创建用于将所述执行结果数据随时间的变化显示为图形的显示数据; 所述接受単元配置为接受关于显示在所述显示器上的图形位置的用户指示;以及所述仿真単元配置为从多个可恢复控制周期中指定与所述用户指示的所述图形上的位置相应的控制周期,并且从这个控制周期开始重新执行仿真。
9.根据权利要求I所述的控制器支持装置,其中, 所述显示数据创建単元配置为创建用来将针对所述仿真単元所生成的位置的执行结果数据随时间的变化显示为ニ维空间或三维空间中的轨迹的显示数据; 所述接受単元配置为接受关于所述轨迹上的位置的用户指示;以及所述仿真単元配置为从多个可恢复控制周期中指定与所述用户指示的所述轨迹上的位置相应的控制周期,并且从这个控制周期开始重新执行仿真。
10.根据权利要求I所述的控制器支持装置,其中, 所述显示数据创建単元配置为创建用于将所述执行结果数据随时间的变化显示为位置列表的显示数据; 所述接受単元配置为接受关于显示在所述显示器上的位置列表中的位置的用户指示;以及 所述仿真単元配置为从多个可恢复控制周期中指定与所述用户指示的所述位置列表中的位置相应的控制周期,并且从这个控制周期开始重新执行仿真。
11.一种控制程序的仿真方法,用于在包括显示器的控制器支持装置中仿真控制程序,所述控制程序包括在用于控制机器移动的控制器中在每个控制周期执行的顺序控制部分和运动控制部分,所述控制程序仿真方法包括以下步骤仿真计算步骤(S14):根据用户指示仿真所述控制程序的执行,并生成执行结果数据;显示数据创建步骤(S16):创建用于显示由所述仿真计算步骤生成的所述执行结果数据随时间变化的显示数据;以及 显示步骤(S18):将所述显示数据创建步骤创建的所述显示数据显示在所述显示器上;其中, 所述仿真计算步骤包括 顺序计算执行步骤(S36):仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据, 运动计算执行步骤(S38):仿真所述控制程序的所述运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据, 控制周期计数步骤(S40):对控制周期的执行数目进行计数; 步骤(S42):指定可恢复控制周期,所述可恢复控制周期是能够开始重新执行仿真的控制周期; 恢复数据保存步骤(S44):保存恢复数据,其中所述恢复数据包括关于与所述可恢复控制周期相应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真所使用的变量数据,所述变量数据包括与所述顺序控制部分的执行相关联的顺序变量数据以及与所述运动控制部分的执行相关联的运动变量数据;以及 重新执行开始步骤(S48):接受用来指定开始重新执行的控制周期的用户具体要求,使用所述具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相对应的恢复数据来从所指定的控制周期开始重新执行仿真。
12. —种控制器支持程序,用于在包括显示器的控制器支持装置中仿真控制程序,所述控制程序包括在用于控制机器移动的控制器中在每个控制周期执行的顺序控制部分和运动控制部分,其中,所述控制程序使所述控制器支持装置执行如下步骤 仿真计算步骤(S14):根据用户指示仿真所述控制程序的执行,并生成执行结果数据;显示数据创建步骤(S16):创建用于显示由所述仿真计算步骤生成的所述执行结果数据随时间变化的显示数据;以及 显示步骤(S18):将所述显示数据创建步骤创建的所述显示数据显示在所述显示器上;其中, 所述仿真计算步骤包括 顺序计算执行步骤(S36):仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据, 运动计算执行步骤(S38):仿真所述控制程序的所述运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据, 控制周期计数步骤(S40):对控制周期的执行数目进行计数; 步骤(S42):指定可恢复控制周期,所述可恢复控制周期是能够开始重新执行仿真的控制周期; 恢复数据保存步骤(S44):保存恢复数据,其中所述恢复数据包括关于与所述可恢复控制周期相应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真所使用的变量数据,所述变量数据包括与所述顺序控制部分的执行相关联的顺序变量数据以及与所述运动控制部分的执行相关联的运动变量数据;以及 重新执行开始步骤(S48):接受用来指定开始重新执行的控制周期的用户具体要求,使用所述具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相对应的恢复数据来从所指定的控制周期开始重新执行仿真。
13.一种计算机可读存储介质,存储有控制器支持程序,所述控制器支持程序用于在包括显示器的控制器支持装置中仿真控制程序,所述控制程序包括在用于控制机器移动的控制器中在每个控制周期执行的顺序控制部分和运动控制部分,其中,所述控制程序使所述控制器支持装置执行如下步骤 仿真计算步骤(S14):根据用户指示仿真所述控制程序的执行,并生成执行结果数据;显示数据创建步骤(S16):创建用于显示由所述仿真计算步骤生成的所述执行结果数据随时间变化的显示数据;以及 显示步骤(S18):将所述显示数据创建步骤创建的所述显示数据显示在所述显示器上;其中, 所述仿真计算步骤包括 顺序计算执行步骤(S36):仿真所述控制程序的所述顺序控制部分的执行,并生成与所述顺序控制部分相关的执行结果数据, 运动计算执行步骤(S38):仿真所述控制程序的所述运动控制部分的执行,并生成与所述运动控制部分相关的执行结果数据, 控制周期计数步骤(S40):对控制周期的执行数目进行计数; 步骤(S42):指定可恢复控制周期,所述可恢复控制周期是能够开始重新执行仿真的控制周期; 恢复数据保存步骤(S44):保存恢复数据,其中所述恢复数据包括关于与所述可恢复控制周期相应的执行数目的数据以及从所述可恢复控制周期开始重新执行仿真所使用的变量数据,所述变量数据与所述顺序控制部分的执行相关联的顺序变量数据以及与所述运动控制部分的执行相关联的运动变量数据;以及 重新执行开始步骤(S48):接受用来指定开始重新执行的控制周期的用户具体要求,使用所述具体要求来指定用来开始重新执行的控制周期,并且使用所保存的与所指定的控制周期相对应的恢复数据来从所指定的控制周期开始重新执行仿真。
全文摘要
控制程序的顺序控制部分被配置为执行一个周期的仿真,以生成与顺序控制部分相关的执行结果。运动控制部分被配置为执行一个周期的仿真,以生成与运动控制部分相关的执行结果。然后,增量更新控制周期编号。确定是否为可恢复控制周期,如果确定为可恢复控制周期,则将在先前的控制周期中更新的恢复数据缓冲器(828)的内容存储在恢复数据存储单元(826)中。
文档编号G05B19/4069GK102804087SQ201180014340
公开日2012年11月28日 申请日期2011年2月14日 优先权日2010年3月15日
发明者阪口泰规, 森健一郎 申请人:欧姆龙株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1