工序模拟系统的制作方法

文档序号:6499475阅读:176来源:国知局
专利名称:工序模拟系统的制作方法
技术领域
本发明涉及一种工序模拟系统,用于进行使多个构成要素(例如,加工组件或夹紧组件、输送组件等)相互关联而动作的生产系统(例如,传送线等)的工序模拟。
背景技术
以往,作为这样的工序模拟系统,在专利文献1(特开平4-64164号公报)中公开有下述工序模拟系统用表的形式表示生产系统的各构成要素的模拟模型,将这些模型在内部存储部中展开,一边在关联的模型间参照关联结构列表进行数据的交换,一边进行模拟。另外,作为各构成要素的模拟模型,例示有关于操作员、生产单元、输送系统的模型。
在专利文献2(特开昭61-61752号公报)中公开有下述工序模拟系统将关于工作机械和安排位置、输送装置、加工工件等变量数据输入输入数据文件中,基于该变量数据进行工序模拟,并输出模拟结果。
在专利文献3(特开平10-335193号公报)中公开有下述工序模拟系统关于LSI(大型集成电路)制造工序的每个装置,可分别设定模拟模型及参数。

发明内容
本发明是鉴于这样的背景技术作成的,目的在于提供一种工序模拟系统,可容易地生成进行生产系统的工序模拟用的模拟程序,另外,也可容易地与成为模拟对象的生产系统的工序的增加和删除等对应。
本发明提供一种工序模拟系统,进行生产系统的工序模拟,其特征在于,具有要素配置数据读入机构,从要素配置数据以与工序识别名称组合的状态依次读入构成要素名称,所述要素配置数据是借助工序识别名称与构成要素名称的组合,沿着工件的流动记述构成生产系统的各种构成要素的配置而形成的;要素定义文件读入机构,从多个要素定义文件依次读入与由前述要素配置数据读入机构读入的构成要素名称对应的要素定义文件,所述多个要素定义文件是按前述各种构成要素记述进行前述各种构成要素动作模拟用的模拟程序而形成的;程序数组生成机构,依次排列在由前述要素定义文件读入机构读入的前述各要素定义文件中记述的模拟程序,生成模拟程序数组;程序执行机构,执行在由前述程序数组生成机构生成的前述模拟程序数组中包含的一连串的模拟程序,来模拟构成前述生产系统的前述各种构成要素的动作。
另外,在本发明中,优选地,前述要素配置数据由使用软件生成的表形式的数据形成,沿列方向设定工件的流动方向,沿行方向记述工序识别名称和构成要素名称,所述软件可进行文字信息的追加和删除等编辑。
另外,本发明中,优选地,前述各要素定义文件包括记述自模拟程序的程序记述部、和记述自模拟程序中使用的变量的变量记述部,在前述变量记述部中,若为参照其他要素定义文件的变量的要素定义文件,则定义指定参照目标变量的外部参照变量,若为使其他要素定义文件参照变量的要素定义文件,则定义被外部参照变量参照的取出变量,还具有变量数组生成机构,生成变量数组,所述变量数组包含在由前述要素定义文件读入机构读入的前述各要素定义文件的前述变量记述部中记述的所有变量;变量对应机构,对应标注在由前述变量数组生成机构生成的前述变量数组中包含的前述外部参照变量与前述取出变量。
进而,本发明中,优选地,在前述要素配置数据中记述有变量名置换数据,用于将在前述各要素定义文件的前述变量记述部中记述的变量名置换成其他变量名,还具有变量名置换机构,将在前述要素配置数据中设定有前述变量名置换数据的变量名置换成在前述变量名置换数据中记述的其他变量名。
进而,本发明中,优选地,在由前述变量数组生成机构生成的前述变量数组中生成有变量表格,所述变量表格具有所要数目的记载区域,用于统一管理多个构成要素间的多个同种变量,在前述各要素定义文件中,在包含统一管理的同种变量的要素定义文件中记述有初期处理程序,所述初期处理程序在与该变量对应生成的前述变量数组内的对应的变量表格中记载前述变量数组内的该变量的变量位置,前述程序排列生成机构依次排列在由前述要素定义文件读入机构读入的前述各要素定义文件中记述的初期处理程序,生成初期处理程序数组,前述程序执行部执行在由前述程序数组生成机构生成的前述初期处理程序数组中包含的初期处理程序,关于统一管理的同种变量,在前述变量数组内的变量表格内记载前述变量数组内的该变量的变量位置。
进而,本发明中,优选地,在前述各要素定义文件的前述程序记述部中记述的模拟程序以梯形图语言方式的指令组记述。
本发明的工序模拟系统也可以计算机可读取的记录媒体的方式提供,作为该工序模拟系统,记录有使计算机起作用的工序模拟系统用程序。
根据本发明,预先准备要素配置数据,所述要素配置数据借助工序识别名称与工序要素名称的组合,沿着工件的流动记述构成生产系统的各种构成要素的配置。按照这样准备的要素配置数据,依次读入工序识别名称和构成要素名称,并且依次读入与该读入的构成要素名称对应的要素定义文件,将其中记载的模拟程序依次存储到模拟程序数组中,生成最终执行的一连串模拟程序。因此,即使在要素配置数据上的不同配置位置上存在同样的构成要素的情况下,该构成要素也可通过构成要素名称与工序识别名称的组合而识别为另一构成要素。因此,关于同一构成要素的要素定义文件,仅记述1种也足够,在生成模拟程序时,生成要素定义文件的生成作业容易。另外,由于基于要素配置数据生成模拟程序数组,所以即使为了进行另一模拟工序而变更要素配置数据时,也可容易地生成与该变更的要素配置数据对应的一连串的模拟程序。
另外,在本发明中,若使用软件生成要素配置数据,所述软件可进行文字信息的追加和删除等编辑,则在要素配置数据中,可利用软件的编辑功能,容易地追加或删除新工序识别名称和构成要素名称的组合,极容易地生成要素配置数据,所述要素配置数据反映了成为模拟对象的生产系统的工序的增加或删除等。
进而,在本发明中,若基于在要素配置数据中记述的变量名置换数据,将要素定义文件内记述的变量名置换成另一变量名,则例如,在要素定义文件中,可通过将以一般名称记述的外部参照变量的参照目标变量的名称置换成在要素配置数据中记述的具体的名称,而使用1个要素定义文件,指定各种参照目标。另外,例如,在同一工序中,配置有多个同种加工组件时,可通过将表示加工组件的一般变量名置换成区别加工组件的另一变量名,而使用1个要素定义文件,区别不同的加工组件。
进而,在本发明中,关于适合统一管理的变量(例如,被成为机械的故障的变量),若在要素定义文件中预先记述其宗旨,并用预先准备的变量表格统一管理,则即使在进行查找机械的故障状态,操作员进行修理的模拟时,可通过使用该统一的变量表格进行变量状态的判别,查找机械的故障状态,所以可在较短的执行时间内进行生产系统的工序模拟。
进而,在本发明中,若以梯形图语言方式记述模拟程序,则不必使用复杂的转移指令,便可记述构成要素的动作模拟,可容易地生长包含模拟程序的要素定义文件。


图1是表示本发明一实施方式的工序模拟系统整体结构的框图。
图2是表示在图1所示的工序模拟系统中使用的要素配置数据的一例的图。
图3是表示在图1所示的工序模拟系统中使用的要素定义文件的一般结构的图。
图4是表示图3所示的要素定义文件的具体例的图。
图5是表示图3所示的要素定义文件的具体例的图。
图6是表示在图1所示的工序模拟系统中执行的模拟程序中包含的指令组的具体例的图。
图7是用于说明图1所示的工序模拟系统的动作的流程图。
图8是表示在图1所示的工序模拟系统的动作过程中产生的要素数组的一例的图。
图9是表示在图1所示的工序模拟系统的动作过程中产生的变量数组的一例的图。
图10是表示在图1所示的工序模拟系统的动作过程中产生的变量数组的一例的图。
图11是用于说明在图1所示的工序模拟系统的动作过程中产生的变量数组的外部参照变量与取出变量之间的对应关系的图。
图12是用于说明在图1所示的工序模拟系统的动作过程中产生的变量数组的外部参照变量与变量表格之间的对应关系的图。
图13是表示在图1所示的工序模拟系统的动作过程中产生的外部参照变量对应数组的一例的图。
图14是表示在图1所示的工序模拟系统的动作过程中产生的初期处理程序数组的一例的图。
图15是表示在图1所示的工序模拟系统的动作过程中产生的模拟程序数组的一例的图。
图16是表示在图1所示的工序模拟系统中使用的要素配置数据的其他例子(变量名置换数据的其他使用例)的图。
图17(图17A及图17B)是表示成为模拟对象的生产系统的一例的工厂配置图。
具体实施例方式
下面,参照附图,说明本发明的实施方式。
首先,基于图1,对本发明的一实施方式的工序模拟系统的整体结构进行说明。
如图1所示,工序模拟系统1用于进行生产系统的工序模拟,其具有模拟系统主体1a、与模拟系统主体1a连接的输入装置11及输出装置12。另外,输入装置11对模拟系统主体1a输入各种指令(软件起动或停止等),由鼠标和键盘等构成。另外,输出装置12用于输出(显示)模拟结果等,由CRT(阴极射线管)等构成。
其中,模拟系统主体1a具有程序生成部2,基于要素配置数据3与要素定义文件4生成模拟程序;程序执行部10,执行由程序生成部2生成的模拟程序。
程序生成部2基于要素配置数据3和要素定义文件4,生成要素数组5、变量数组6、外部参照变量对应数组7、初期处理程序数组8及模拟程序数组9,具有要素配置数据读取部2a、要素定义文件读取部2b、初期处理程序数组生成部2c、模拟程序数组生成部2d、变量数组生成部2e、变量对应部2f及变量名置换部2g。另外,关于由这些各部分2a~2g构成的程序生成部2的详细情况如后所述。
程序执行部10执行包含于由程序生成部2生成的初期处理程序数组8中的初期处理程序,进行初期处理,并且,执行包含于模拟程序数组9中的一连串模拟程序,来模拟构成生产系统的各种构成要素的动作。另外,关于程序执行部10的详细情况如后所述。
另外,模拟系统主体1a的程序生成部2及程序执行部10可通过使用于模拟目的的计算机程序在个人计算机(PC)上工作来实现。另外,将这样的工序模拟系统用程序存入存储器或硬盘、软盘、CD-ROM(只读光盘)、DVD(数字化视频光盘)等计算机可读取的记录媒体上,通过从计算机的处理器逐次读出并执行,来实现程序生成部2及程序执行部10的功能。
下面,为了具体说明图1所示的工序模拟系统1的详细情况,作为进行工序模拟的具体的生产系统,举出下述生产系统的例子,即用输送机将在前存料器中储存的工件送入连接台上,对送入该连接台的工件一边用提升移送方式的输送装置输送,一边用2个加工组件加工,排出到排出侧的连接台,并借助输送机从该排出侧的连接台输出,储存到后存料器中。
如图17A及图17B所示,在该生产系统中,工件W储存在前存料器101中,由前存料器101的推进器101a将工件W送入输送机102。
在此,连接台103在工件输送方向的两侧具有载置部分103a、103a。输送机102进入这些载置部分103a、103a之间,通过输送机102的旋转,将工件W送入连接台103上。另外,连接台109在工件输送方向的两侧具有载置部分109a、109a。输送机110进入这些载置部分109a、109a之间,通过输送机110的旋转,将工件W从连接台109取出交接到后存料器111中。
提升移动(LF输送)装置104连结前后连接台103、109和2个加工组件(加工机械)106、106。加工组件106、106分别具有旋转刀具107,沿刀具轴线方向在原位置与加工位置之间进退。在加工组件106、106的前方,配置有设置于工件输送方向两侧的工件载置部108、108。另外,与工件载置部108、108关联地设置有工件固定用的夹具,但是在此省略图示。
如上所述,在位于工件输送方向两侧的连接台103、109的载置部分103a、109a及工件载置部108、108之间,配置有提升移动装置104的输送部件105。提升移动装置104的输送部件105从待机位置A仅上升规定高度,提升载置在载置部分103a及工件载置部108上的工件W(上升位置B),同时沿输送方向仅前进连接台103、各加工组件106及连接台109间的输送方向的配置间距P(上升前进位置C),然后,下降到下降前进位置D。由此,位于连接台103上的工件W被交接到输送方向前方的加工组件106上,位于输送方向前方的组件106上的工件W被交接到输送方向后方的加工组件106上,位于输送方向后方的加工组件106上的工件W被交接到连接台109上。
另外,在生产系统中,设机械维修用的人员为2人(维修成员A、B)。
在进行上述说明那样的生产系统的工序模拟时,在图1所示的工序模拟系统1中,首先,准备记述了构成成为模拟对象的生产系统的构成要素(装置)的配置的要素配置数据3。要素配置数据3是通过工序识别名称和构成要素名称的组合,沿着工件的流程来记述构成生产系统的各种构成要素的配置而形成的,基本上与工厂内的装置配置图对应。另外,要素配置数据3是用可进行文字信息的追加、删除、置换等编辑的软件(例如,通用的表计算软件(例如微软公司的EXCEL(注册商标)))生成的表形式的数据(数据表)。这样的表形式的数据表也可使用文字编辑器那样的编辑软件生成。
表形式的数据表、即要素配置数据3基本上如图2所示,沿列方向(表的纵向行排列方向)设定有工件的流动方向,行方向(表的横向列排列方向),在由工序识别名称区分的工序中,每行记述有工序识别名称与构成要素名称。具体地说,在各行的B列单元中记述有模块名,在C列单元中记述有工序名,在D列单元以后的任意单元中记述有构成要素名称。工序识别名称由同一行的模块名和工序名构成,也存在省略工序名的情况。在1个要素配置数据3内,工序识别名称以所有名称都相互不同的方式记述。
在要素配置数据3中,同一规格的构成要素以同一名称记述。在此,2个加工组件都用同一的“组件1”表示,2个夹具都用同一的“夹具1”表示,进而由于2个输送机、连接台、维修成员都为同一规格,所以都以同一名称记述。
在要素配置数据3中,也记述有实际在工厂中没有配置的构成要素名称。构成要素“综合1”是用于在模块140T内,预先汇集便于在执行生产系统的工序模拟时统一管理的变量信息的要素,如后所述,具有统一管理关于2个夹具1的松开的变量的“松开T”表格、和统一管理各组件1的“原位置”数据(未图示)的变量表格,相对于LF输送进行下述模拟基于该松开信息,松开所有的夹具,并且在所有组件位于原位置时,流过可输送信息。另外,构成要素“维修指令1”是用于预先汇集便于在执行生产系统的工序模拟时统一管理的变量信息的要素,具体地如后所述,例如,预先汇集所有机械的工作状况和维修成员的操作状况等数据。
与要素配置数据3中记述的这些构成要素名称分别对应地准备要素定义文件4,图3表示所述要素定义文件4的一般结构。另外,图4及图5表示与在要素配置数据3中记述的构成要素名称分别对应的具体的要素定义文件4a~4j。
如图3所示,作为要素定义文件4的一般结构,起始处包含要素名称记述部4A,后面包含变量记述部4B及程序记述部4C。
其中,在变量记述部4B中,与初期值一起记述有在自模拟程序中使用的内部变量(例如,在组件1(加工组件)中,加工时的前进速度和后退速度等)。另外,在变量记述部4B中,若存在参照其他要素定义文件的变量的要素定义文件,则定义指定参照目标变量的外部参照变量,若存在使其他要素定义文件参照变量的要素定义文件,则与初期值一起定义被外部参照变量参照的取出变量。
下面,具体说明外部参照变量及取出变量。
外部参照变量按照下述规则记述。
“自文件中的变量名(外部参照变量)参照目标变量名(或参照目标变量表格名)参照目标工序名模块名”在此,参照目标工序名及模块名可相对于定义该外部参照变量的要素定义文件的构成要素,使用相对位置关系的词来记述,也可以记述特定的模块名及工序名。另外,所谓“表示相对位置关系的词”记述有“前工序”、“自工序”、“次工序”,或“前模块”、“自模块”、“次模块”。在此,“前工序”指相对于自要素在要素数组数据3中位于同一列的上侧的构成要素的模块名和工序名,“自工序”指与自要素同一行的构成要素的模块名和工序名,“后工序”指相对于自要素位于同一列的下侧的构成要素的模块名和工序名。同样,关于“前模块”、“自模块”、“次模块”也表示相对于自模块的相对位置关系。另外,参照目标变量名(或参照目标变量表格名)设成在指定的模块或工序内与其他变量名不重复。
具体地说,例如,在组件1及夹具1中进行下述顺序动作包含于同一工序中的夹具1的夹紧结束后,组件1开始加工,加工结束后,以该加工结束信号使夹具1松开。
在这种情况下,由于在组件1与夹具1之间进行这样的信息交换,所以在“组件1”的要素定义文件(图5所示的要素定义文件4g)中,参照“自工序”的“加工准备结束”(参照目标变量名)定义“自工序加工准备结束”(外部参照变量)。与此相对,在“夹具1”的要素定义文件(图5所示的要素定义文件4f)中,定义“加工准备结束”(意味着工件的夹紧结束)作为取出变量。另外,在“夹具1”的要素定义文件(图5所示的要素定义文件4f)中,参照“自工序”的“加工结束”定义作为外部参照变量的“组件加工结束”,在“组件1”的要素定义文件(图5所示的定义文件4g)中,定义“加工结束”作为取出变量。因此,在这些夹具1与组件1配置在同一工序的状态下,要素配置数据3中,“组件1”与配置于同一行(即自工序)中的“夹具1”之间,外部参照变量与取出变量相互对应。另外,定义了外部参照变量与取出变量的同样的关系。例如,在“连接台”的要素定义文件(图4所示的要素定义文件4c)与“输送机”的要素定义文件(图4所示的要素定义文件4b)、以及“连接台”的要素定义文件(图4所示的要素定义文件4c)与“LF输送”的要素定义文件(图4所示的要素定义文件4e)之间、定义了同样的关系。
接着,就外部参照变量的参照目标变量为变量表格的情况进行说明。
在图5所示的“组件1“的要素定义文件4g中,外部参照变量之一定义成“维修指令·机械状态机械状态T NONE维修指令”。
在此,“NONE”表示没有工序名。总之,变量“维修指令·机械状态”与模块名“维修指令”的“机械状态T”的变量表格对应。在其他的构成要素的要素定义文件中,也定义关于“机械状态”的外部参照变量,“夹具1”的要素定义文件4f和“LF输送”的要素定义文件4e中,也包含同样的记述。
与此对应,在图5所示的“维修指令1”的要素定义表4i中,作为取出变量,记述有[11]机械状态T。
在此,括号([])内的数为装置数。在有这样的记述时,在生成后述的变量数组6时,读入“维修指令1”的要素定义文件时的数组区域中,展开“装置数(在此为11)+1”个的数据记载区域,如图12(A)所述,生成具有“机械状态T
~机械状态T[11]”的表格变量的“机械状态T”的变量表格20。除去“维修指令1”与“综合1”的各构成要素(“维修指令1”与“综合1”为空指令,变量没有“机械状态”)的被称为“维修指令·机械状态”的外部参照变量,依次与作为该取出变量的表格变量“机械状态T[1]~T[11]”对应。作为同样的变量表格20,在图9及图10所示的变量数组6中,例示有与“维修指令1”关联生成的“操作员状态T”表格、和与“综合1”关联生成的“松开T”表格。
另外,在图2所示的要素配置数据3中配置有构成要素名称,结果,也存在不能简单地以自工序的前工序和次工序之间的关联来记述外部参照变量的参照目标。例如,图2所示的构成要素“连接台”连结前后输送要素,将前后输送要素作为外部参照变量的参照目标。在此,在图2所示的要素配置数据3中,在工件流动方向的上游侧构成要素“连接台”中,前工序指“140T·输送机”,后工序指“140T·1ST”,前后参照目标不整合。另外,在下游侧的构成要素“连接台”中,前工序指“140T·2ST”,后工序指“140T·搬出输送机”,在此,前后参照目标也不整合。
由此,在图4所示的“连接台”的要素定义文件4c中,外部参照变量的参照目标工序名以“后输送”“前输送”这些一般的名称记述,另一方面,在图2所示的要素配置数据3中,预先记述变量名置换数据,用于将以这样的一般名称记述的外部参照变量的参照目标工序名置换成别的名称,在生成变量数组6时进行置换。
即,在要素配置数据3中,在上游侧的构成要素“连接台”中,前输送指“输送机”,后输送指“输送”,另一方向,在下游侧的构成要素“连接台”中,前输送指“输送”,后输送指“搬出输送机”,关于各构成要素“连接台”,前输送与后输送的对象不同,所以,本来,作为各输送机必须生成要素定义文件。但是,如上所述,若置换变量名,则也可以用一个要素定义文件,与前输送与后输送工序不同的情况对应。
另外,如图2所示,变量名置换数据记述在设定构成要素名称的单元的后一个单元,对其的记述按照下述规则进行。
“置换后变量名=置换前变量名”在此,在要置换多个变量时,同样的记述排列在同一行中。
另外,上述那样的变量名的置换并不限于外部参照变量的参照目标工序名,可对在各要素定义文件中记述的所有变量名进行。具体地说,例如,如图16所示,在同一工序“140T·1ST”中配置有2个同一加工组件的情况下,不能单纯地通过“模块名+工序名”的组合来分别进行区分。在这种情况下,只要用与上述同样的方向置换构成要素名,便可不存在问题地分别进行区分。另外,在图16所示的情况下,将上侧的“组件1”置换成“L组件”,将下侧的“组件1”置换成“R组件”,另外,也分别置换各组件的原位置。
返回图3继续说明,要素定义文件4的程序记述部4C具有初期处理程序记述部4C1、和模拟程序记述部4C2。
其中,在初期处理程序记述部4C1中,在上述的变量表格20中,记述有存储该变量的变量位置用的数据存储指令(SET TBNO)、和用于对执行模拟程序用的变量进行数据设定等的初期处理程序。
另外,在模拟程序记述部4C2中,记述有用于进行各构成要素的动作模拟的模拟程序。
具体地说,在构成要素“前存料器”的要素定义文件的情况下,记述有模拟下述动作用的程序从成为后工序的输送机发出工件要求信号,在工件位于前存料器上时,将前存料器上的工件交接到输送机上。
在构成要素“输送机”的要素定义文件的情况下,记述有模拟下述动作用的程序没有工件时,向前工序要素发出工件要求信号,后工序要素发出工件要求时,工件从前工序要素被交接,此时,进行前进动作,工件被交接到后工序要素上。
在构成要素“连接台”的要素定义文件的情况下,记述有模拟下述动作用的程序所述连接台连结输送要素与输送要素,判断工件的有无,向前输送要素发出工件要求信号,或者,向次输送要素发出工件准备结束信号。
在构成要素“LF输送”的要素定义文件的情况下,记述有模拟下述动作用的程序从前输送要素接收工件准备结束信号,并且,在自模块内的所有夹具1松开,组件1也位于原位置时,进行提升移送动作,依次输送工件。
在构成要素“夹具1”的要素定义文件的情况下,记述有模拟下述动作用的程序确认LF输送结束,夹紧工件,在由组件1的加工结束后夹紧。
在构成要素“组件1”的要素定义文件的情况下,记述有模拟下述动作用的程序确认由夹具1的夹紧,从原位置前进、加工、后退、返回原位置。
在构成要素“后存料器”的要素定义文件的情况下,记述有模拟下述动作用的程序若在后存料器上没有工件,则向前工序要素要求工件。
在构成要素“维修成员”的要素定义文件的情况下,记述有模拟下述动作用的程序判断需要维修的机械是否经过了预先设定的维修操作时间,并判断是否处于维修操作执行中。
另外,这样,在要素定义文件4的程序记述部4C的模拟程序记述部4C2中记述的模拟程序优选地是以存储程序循环处理方式(即,所谓的梯形图语言方式)的指令组进行记述。
在此,举出构成要素“组件1”的例子,说明模拟程序的具体例。
图6的左侧表示实际的模拟程序,右侧以梯形图表示该模拟程序。
图6中,“MOTION”指令是动作模拟指令,在指令后,分别指示前进动作、后退动作。每次执行该指令时,动作对象的位置和速度等变量的值时刻变化。
“TMR”指令是时间的模拟指令。若执行该指令,在经过被称为“前进端定时器设定”的变量中设定的时间后的时刻,接点被关闭。
“MOV”指令是将前变量的值复制成后变量的指令。
“OUT”指令是将后变量设成ON(“1”)的指令。
“LD”指令是表示电路框的开始的指令。
“LDF”指令是表示伴随判识的电路框的开始的指令。
“AND”指令是表示逻辑积的指令。
“ANDNOT”指令是表示否定的逻辑积的指令。
“ANDF”指令是表示伴随比较的逻辑积的指令。
“SUB”指令是从起始变量减去中间变量的值进入第3变量的指令。
“SET”指令是在变量中设置“1”的指令。
图6所示的模拟程序的指令组C1~C8分别与梯形图的R1~R8对应,所以通过比较两者,可理解上述各指令的意思。
在此,若详细说明,则指令组C1意味着在自工序加工准备结束(夹具的夹紧完成)、组件位于原位置、机械没有故障、加工没有结束时,发出前进指令。
指令组C2意味着在前进指令中进行前进动作。
指令组C3意味着前进动作的结果,一到达前进端,前进端定时器就接通。
指令组C4意味着在经过了前进端定时器的设定时间后的时刻结束加工。
指令组C5、C6意味着若加工结束组件部处于原位置,则发出后退指令,进行后退动作。
指令组C7是关于故障产生的模拟程序,判断出被称为“故障产生时间计数”的变量在“0”以上,并且被称为故障产生执行的变量在“0”以上(这意味着产生故障),若两个条件都满足,则进行下述模拟从“故障产生时间计数”中设定的时间减去执行模拟程序时的一次扫描的时间(扫描间距),存储到“故障产生时间计数”中。另外,“故障产生时间计数”中,由于各机械预先设定的故障产生为止时间(故障产生时间)被复制到初期处理程序中(参照图5所示的“组件1”的定义文件4g中的处理程序(MOV)),所以在此进行下述计算从故障产生时间减去从模拟开始所经过的时间。
在指令组C7中的演算结果为“0”以下,即判断经过了故障产生相应的时间,此时,若机械状态为“0”(无故障),则指令组C8进行下述模拟将被称为机械状态的变量设成“1”(故障)。
另外,作为模拟程序指令另外还准备几个,对进行各构成要素的动作模拟来说,构成必要的指令组。作为其他指令,例如有在一定条件下对变量表格20进行检索的指令、和用于模拟旋转动作的指令等。
在上述梯形图语言方式的指令组中,在满足某个指令组所记述的条件的情况下,进行处理下一个指令组的模拟处理。因此,即使在与几个条件对应地进行几个处理的情况下,不必使用下述形式的条件式(复杂的转移指令)使用复杂的IF文进行处理程序的几处跳往目标,便可以更简单的记述容易地处理模拟程序。
接着,按照图7所示的流程图,说明如1所示的工序模拟系统1的动作。
首先,通过程序生成部2的要素配置数据读入部2a,逐行读取准备的要素配置数据3(步骤S1)。接着,要素配置数据读入部2a将这样读入的1行的模块名、工序名及要素名依次如图8所示那样排成要素数组5的一行(步骤S2)。在图8所示的要素数组5中,在模块名的前面,记录有用于表示各要素在要素数组5内的位置的地址。另外,若读取一行要素配置数据3,该地址便对应地增加1。另外,在要素数组5中,在要素名后面,与后述的变量数组6中的各要素对应的变量的存储位置由用起始变量位置与变量个数示出的区域表示。此时,若在要素配置数据3内,存在关于要素名的变量名置换数据,则通过程序生成部2的变量名置换部2g,用置换后的变量名置换要素名。
接着,通过程序生成部2的要素定义文件读入部2b,找出并读入与由要素配置数据读入部2a读入的构成要素名称对应的要素定义文件4a~4j(步骤S3)。
通过程序生成部2的变量数组生成部2e,将由要素定义文件读入部2b读入的要素定义文件(要素定义文件4a~4j中的某一个)的变量记述部4B中记述的所有变量名及值,与变量属性(内部变量、取出变量及外部参照变量)一起读出,排成图9及图10所示那样的变量数组6(步骤S4)。在图9及图10所示的变量数组6中,在属性前一侧标注记录有表示各变量在变量数组6内的位置的地址。在此,在要素配置数据3内,在存在关于变量名的变量名置换数据的情况下,通过程序生成部2的变量名置换部2g,检索用于置换的变量名是否在读入的变量名中,若用于置换的变量名在,则将置换后的变量名记载到变量数组6中。在此,在变量数组6中,在外部参照变量的情况下,在变量名的后面,记述有参照目标变量名、参照目标程序及模块名,由于没有具体的数值,所以在该步骤S4的时刻,只读入属性及变量名,值为空白(参照图11(A)及图12(A))。在此,变量表格20也与程序生成部2的变量数组生成部2e一样读入。如上所述,在变量表格20中,展开成具有“(被宣告的记载区域)+1”个记载区域的变量表格20,并记载到变量数组6中。
另外,在读入记载有外部参照变量的要素定义文件的情况下,程序生成部2的变量数组生成部2e逐行读出外部参照变量名、参照目标变量名、参照目标工序名和模块名,生成图13所示那样的外部参照变量对应数组7(步骤S5)。在生成该数组时,若在要素配置数据3内,存在关于变量名的变量名置换数据,并且,在该变量名置换数据中,存在关于参照目标名称的用于置换的变量名,则将置换后的参照目标名称记载到外部参照变量对应数组7中。例如,在构成要素“140T·连接台·连接台”中,在要素定义文件4c中记述的外部参照变量中,将“前输送”置换成“输送机”,将“后输送”置换成“输送”并记录。
接着,若在要素定义文件4中记述有初期处理程序,则通过程序生成部2的初期处理程序数组生成部2c,读入该初期处理程序,并记载到图14所示的初期处理程序数组8中(步骤S6)。同样,通过程序生成部2的模拟程序数组生成部2d,读出在要素定义文件4中记述的模拟程序,并记载到图14所示的模拟程序数组7中(步骤S7)。另外,在读入这些程序时,在模拟程序中使用的变量与变量数组6内的该变量的变量位置(地址)对应地标注。
以上的步骤S1~S7的处理,在每次逐行读入构成要素数据3,并读入一个与其对应的要素定义文件4时进行。在该处理进行到构成要素数据3(要素数组5)的行末时,关于包含于构成要素数据3中的构成要素,与其关联的数据的读入及数组的生成结束(步骤S8)。
在该时刻,由于外部参照变量与参照目标变量之间没有对应(图11(A)),通过程序生成部2的变量对应部2f,一边参照外部参照变量对应数组7,一边进行赋予该对应的处理,在变量数组6中成为空白的外部参照变量的值/位置的栏中,写入对应的取出变量的变量数组6内的变量位置(地址)(步骤S9)。例如,由于在图11(A)的“140T·1ST·组件1”的外部参照变量“自工序加工准备结束”中,同一工序的夹具1的取出变量“加工准备结束”对应,所以外部参照变量“自工序加工准备结束”中,记载有地址“R5”(参照图11(B)。
在此,在作为取出变量记载有变量表格20的情况下,在与该变量表格20对应的外部参照变量的值/位置栏中,依次记载有变量表格20在变量数组6内的位置。如图12(A)所示,由于在上述的被称为“机械状态T”的变量表格20的表格变量中,对应有各机械的外部参照变量“维修指令·机械状态”,所以在变量数组6的生成当初为空白的各机械的“维修指令·机械状态”的值/位置栏,例如在具有被称为“维修指令·机械状态”的变量的要素配置数据3中,在第6个要素(“140T·1ST·组件1”)的变量“维修指令·机械状态”中,记载有变量表格“作业状态T”的第6个取出位置的变量位置(在此,为“T0+6)(参照图12(B)。
接着,通过程序执行部10,逐条指令地执行包含于初期处理程序数组8中的初期处理程序(步骤S10)。在此,例如,作为初期处理程序,若执行“SET TBNO”指令,则进行下述处理将在此指定的变量在变量数组6内的位置数据写入表示指定的外部参照变量的表格变量的值/位置栏中,同时,将作为该表格变量的起始的表格变量“作业状态T
”的数据的记载个数加“1”。
具体地说,在上述的构成要素“140T·1ST·组件1”对应的初期处理程序中,设成如下所述那样。
“SET TBNO“机械状态”数据位置维修指令·机械状态”在这种情况下,将变量“机械状态”在变量数组6内的位置数据(“Q6”)写入“维修指令·机械状态”所示的地址“T0+6”的变量“机械状态T[6]”的值栏中(图12(C))。在被称为“松开T”的变量表格20与2个“夹具1”的变量“松开”之间,进行同样的处理(参照图9)。另外,“SET TBNO”指令构成记载机构,所述记载机构记载变量表格20中对应的变量位置、和向表格的记载数。
由此,如图9及图10所示,在变量数组6中,包含有模拟中所用的所有内部变量、外部参照变量及取出变量,外部参照变量与取出变量对应地标注,并且适于统一管理的变量、与统一管理的变量表格20对应标注,所以通过参照该变量数组6来求出所有的变量的值。
接着,若存在来自于输入装置11的模拟指示(步骤S11)时,则通过程序执行部10,从起始依次逐指令地执行一连串的模拟程序,所述模拟程序按照在模拟程序数组9中包含的要素数组5排列的(步骤S12)。在此,关于模拟程序,各指令的记述是文字信息,所以也可在每次读取该指令时,程序执行部10解释并执行由文字信息的指令记述,但是也可通过预先将各指令置换成与这些各指令对应设定的数值,读出与该指令对应的数值,程序执行部10执行与该数值对应的指令处理,从而提高执行速度,故优选。
若这样执行模拟程序,则变量数组6对应的变量值时刻变化。
模拟程序从起始到末尾以一定的扫描间距(在进行模拟上经过的时间)(例如0.1秒间隔)反复执行。执行时,参照变量数组的各变量。该扫描间距可任意设定,例如,可设定成以实际的机械动作时间(实时间)进行模拟,相反,也可以缩短尽早输送的方式模拟。在外部参照变量中,参照目标参数依靠该外部参照变量所示的地址(变量数组6内的位置)读出。在进行工序模拟上,可在经过规定时间的时刻(或者每次扫描结束),停止执行。
此时,若通过输入装置11,指定特定的构成要素来指示模拟结果的显示,则基于要素数组5,读出变量数组6的变量存储范围,通过输出装置12,与工序识别名称及构成要素名称一起显示变量名和其值,由此,可确认模拟结果(步骤S13)。此时,若在显示画面上模式性地显示构成要素,并且动画显示变量的值的变化来作为构成要素的动作。
另外,在执行模拟程序时,在构成要素“维修指令1”中,进行下述模拟动作使用“机械状态T”的变量表格,判断所有的机械状态(异常或故障中),使用“操作员状态T”表格,检索空闲的维修成员,使空闲的维修成员朝向要修理机械进行修理。在这样的模拟中,即使作为变量表格20,不具有“机械状态T”表格,只要从起始到末尾依次检索变量数组6,便可知道所有“机械状态”数据,但是,如上所述,关于每个构成要素的“机械状态”,若统一其变量位置(在变量数组6内的地址),集中到“机械状态”表格中,则通过参照其有限存储区域的数据,便可知道所有“机械状态”数据,所以可缩短模拟程序的执行时间。
如上述那样,可进行关于某特定的要素配置数据13的工序模拟。但是,例如,在“140T·2ST”后,想增加与“140T·2ST”同样的工序,进一步进行工序模拟的情况下,在要素配置数据3中,利用表计算软件的编辑功能,复制“140T·2ST”的1行,在“140T·2ST”下面,追加1行,将其作成“140T·2ST”,进而,只要修正由于该加工工序(“夹具1”、“组件1”)的追加编修变更的关联数据(例如,“松开T”表格的数据记载区域数、“机械状态T”表格的数据记录区域数等)即可。在该状态下,按照图7所示的流程图,若使图1所示的工序模拟系统1动作,则关于追加的“夹具1”和“组件1”之间的变量间的对应,通过要素配置数据3上的配置,根据在“夹具1”的要素定义文件4f、“组件1”的要素定义文件4g中记述的相同的参照目标指示,定为一致。只要在要素定义文件4f、4g中没有变更,就生成反映新追加的工序的模拟程序数组9、变量数组6及其他数组。若执行这样作成的模拟程序数组9中包含的一连串的模拟程序,便可容易地进行由新工序编成的模拟程序。
权利要求
1.一种工序模拟系统,进行生产系统的工序模拟,其特征在于,具有要素配置数据读入机构,从要素配置数据以与工序识别名称组合的状态依次读入构成要素名称,所述要素配置数据是借助工序识别名称与构成要素名称的组合,沿着工件的流动记述构成生产系统的各种构成要素的配置而形成的;要素定义文件读入机构,从多个要素定义文件依次读入与由前述要素配置数据读入机构读入的构成要素名称对应的要素定义文件,所述多个要素定义文件是按前述各种构成要素记述进行前述各种构成要素动作模拟用的模拟程序而形成的;程序数组生成机构,依次排列在由前述要素定义文件读入机构读入的前述各要素定义文件中记述的模拟程序,生成模拟程序数组;程序执行机构,执行在由前述程序数组生成机构生成的前述模拟程序数组中包含的一连串的模拟程序,来模拟构成前述生产系统的前述各种构成要素的动作。
2.如权利要求1所述的工序模拟系统,其特征在于,前述要素配置数据由使用软件生成的表形式的数据形成,沿列方向设定工件的流动方向,沿行方向记述工序识别名称和构成要素名称,所述软件可进行文字信息的追加和删除等编辑。
3.如权利要求2所述的工序模拟系统,其特征在于,前述各要素定义文件包括记述自模拟程序的程序记述部、和记述自模拟程序中使用的变量的变量记述部,在前述变量记述部中,若为参照其他要素定义文件的变量的要素定义文件,则定义指定参照目标变量的外部参照变量,若为使其他要素定义文件参照变量的要素定义文件,则定义被外部参照变量参照的取出变量,还具有变量数组生成机构,生成变量数组,所述变量数组包含在由前述要素定义文件读入机构读入的前述各要素定义文件的前述变量记述部中记述的所有变量;变量对应机构,对应标注在由前述变量数组生成机构生成的前述变量数组中包含的前述外部参照变量与前述取出变量。
4.如权利要求3所述的工序模拟系统,其特征在于,在前述要素配置数据中记述有变量名置换数据,用于将在前述各要素定义文件的前述变量记述部中记述的变量名置换成其他变量名,还具有变量名置换机构,将在前述要素配置数据中设定有前述变量名置换数据的变量名置换成在前述变量名置换数据中记述的其他变量名。
5.如权利要求3或4所述的工序模拟系统,其特征在于,在由前述变量数组生成机构生成的前述变量数组中生成有变量表格,所述变量表格具有所要数目的记载区域,用于统一管理多个构成要素间的多个同种变量,在前述各要素定义文件中,在包含统一管理的同种变量的要素定义文件中记述有初期处理程序,所述初期处理程序在与该变量对应生成的前述变量数组内的对应的变量表格中记载前述变量数组内的该变量的变量位置,前述程序排列生成机构依次排列在由前述要素定义文件读入机构读入的前述各要素定义文件中记述的初期处理程序,生成初期处理程序数组,前述程序执行部执行在由前述程序数组生成机构生成的前述初期处理程序数组中包含的初期处理程序,关于统一管理的同种变量,在前述变量数组内的变量表格内记载前述变量数组内的该变量的变量位置。
6.如权利要求1~5任一项所述的工序模拟系统,其特征在于,在前述各要素定义文件的前述程序记述部中记述的模拟程序以梯形图语言方式的指令组记述。
7.一种计算机可读取的记录媒体,作为在权利要求1~6中任一项所述的工序模拟系统,记录有使计算机起作用的工序模拟系统用程序。
全文摘要
准备表形式的要素配置数据(3),所述要素配置数据借助工序识别名称与工序要素名称的组合,沿着工件的流动记述构成生产系统的各种构成要素的配置。另外,准备多个要素定义文件(4),所述多个要素定义文件按前述各种构成要素记述进行前述各种构成要素动作模拟用的模拟程序。程序生成机构(2),以与工序识别名称组合的状态下,依次从要素配置数据读入构成要素名称,并且,依次读入与该读入的构成要素名称对应的要素定义文件。生成包含在各要素定义文件中记述的多个变量的变量数组(6),并且,生成包含在各要素定义文件中记述的多个程序的初期处理程序数组(8)及模拟程序数组(9)。此后,由程序执行机构(10),执行在初期处理程序数组中包含的处理处理程序并对应标注相互参照的变量彼此,同时,执行在模拟程序数组中包含的一连串的模拟程序,来模拟构成生产程序的各构成要素的动作。
文档编号G06Q50/04GK1879069SQ20048003324
公开日2006年12月13日 申请日期2004年11月9日 优先权日2003年11月11日
发明者芹泽一明, 田中彰一, 石田胜义 申请人:丰和工业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1