< 返回
《mes制造执行系统的原理与实现》连载(2)

第三章工艺路线

3.1工位(step)

在现代化生产中,批量生产多采用流水作业,流水线由若干个独立作业的工位组成。工位是产品生产周期中的一个点,或者说一次作业。工位是一个逻辑概念,一个工位可以对应若干个实际的工作台,比如电脑的主板装配工位,可以由4个工人、在4个工作台上做相同的装配作业,那么我们说这4个工作台对应于同一个工位。在mes系统中,工位的定义可以和实际的作业有一定的出入。还是举主板装配工位为例,在实际生产中可能作进一步的细化,分成定位、焊接、固定3个工位,但在mes系统中只定义一个工艺路线控制点,那么我们可以看作是一个工位。

3.2工艺路线(route)

工艺路线是指产品的生产方法。通常我们用流程图来表示工艺路线,流程图由当前工位、结果、下一工位组合而成,如图3-1。

工艺路线表达了产品完整的生产周期。一个产品可以定义若干个工艺路线,如试生产工艺路线、量产工艺路线、返工工艺路线等。但是一个工单只能驱动一条工艺路线,因此工单从erp刷新到mes后,在生产之前,必须由车间主管或生产线组长指定工单到某一工艺路线。简单地说,工艺路线是产品的一种属性,由工位组成,受工单驱动。

3.3当前工艺状态(routestatus)

生产控制的目的,是为了实现“在指定的工位,做指定的产品”。我们在工艺路线里已经定义了当前工位、结果、下一工位的组合关系,因此我们只要再记录某个序列号对应的产品当前的工位和结果,就可以得到下一工位,由此可以进行工艺检查和工艺记录。对当前工位的定义方法有两种。第一种定义刚刚结束的工位是当前工位。这样在工艺状态表里记录了序列号、当前工位名、当前工位结果。第二种定义下一工位是当前工位。这样在工艺状态表里记录了序列号、当前工位名。

3.4工艺检查(routecheck)

工艺检查是判断序列号是否出现在正确的工位。方法如下:

按第一种定义,前台录入工单、序列号、作业工位。

后台根据工单得到工艺路线;根据序列号得到当前工位和结果;然后根据工艺路线和当前工位、结果,得到下一工位;比较下一工位和作业工位,得到工艺检查的结果。如图3-2所示:

按第二种定义,前台录入序列号、作业工位。后台根据序列号得到当前工位;比较当前工位和作业工位,得到工艺检查的结果。如图3-3所示:

3.5工艺记录(routeupdate)

工艺记录是指工位作业完成后,对工艺的状态进行更新。按第一种定义,前台录入序列号、作业工位、结果,后台直接将此数据更新到工艺状态表。如图3-4所示:

按第二种定义,前台录入工单、序列号、作业工位、结果;后台根据工单得到工艺路线;根据工艺路线、作业工位、结果,得到下一工位;根据序列号、下一工位更新工艺状态。如图3-5所示:

我们可以看出,两种方法的区别是:第一种方法在routecheck时引用工艺路线,第二种方法在routeupdate时引用工艺路线。第一种方法在routecheck时较为繁琐,但是适合以下这种特殊情况,即当前工位和结果的组合,对应的下一工位有多条记录,如图3-6:

3.6工艺历史(routehistory)

在进行routeupdate的时候,同时产生一条log记录,包括作业时间、作业人员、作业工单、序列号、当前工位、结果。当生产结束的时候,一个序列号有多条routelog记录,这些记录就构成了一个序列号的工艺历史routehistory,也就是一个完整的生产周期的记录。

3.7工艺初始化(routeinitial)

工艺的起始点比较特殊,因为有了它之后才能进行工艺检查。为了设计的方便,我们在所有的工艺路线中,均设计其起始点为工艺初始化点,此点之后的工位就可以使用routecheck和routeupdate方法了。

初始化的方法有两种。

第一种是在序列号创建之时就进行初始化。

第二种是在routecheck时检查是否有routestatus记录,如果没有,则先进行初始化。

初始化是一种特殊的routeupdate,其工位名是initial。

3.8工艺结束(routeclose)与工单关闭

工艺结束点也是较为特殊的一个工位,它是所有工艺路线的最后一个工位。按照routeupdate的第二种方法,则系统通过routeupdate自动产生close工位。关闭工单时,系统得到此工单驱动的所有序列号;然后routecheck其当前工位是否都是close;如果全部close则允许关闭工单,否则需强行关闭工单。

按照routeupdate的第一种方法,则routehistory里不包括close工位,所以必须手动关闭。关闭工单时,系统得到此工单驱动的所有序列号;然后routecheck其当前工位是否都是close;如果全部close则允许关闭工单,否则需强行关闭工单。可以在关闭工单时,将其驱动的序列号routeupdate到close工位。

3.9故障与维修

故障工位与维修工位是较为特殊的route工位,因为它们在routeupdate的同时,还要记录相应的故障与维修记录。故障与维修信息可以看成routeupdate的扩展信息,每一次的故障与维修记录,都通过外键关联到一条routelog历史记录,因此route与故障、维修的动作就接合在一起,可以通过序列号找到它们之间的关联。

3.10自动测试

在现代企业的生产中,为保证产品的质量,往往在生产周期中设置若干个测试点,在大批量的生产中,这些点往往采用自动测试完成。具体的操作是:首先根据产品与工位定义testprofile测试模板,然后输入实测数据,生成测试数据文件,并关联到序列号。由于测试文件与测试模板是关联的,因而能够根据testprofile进行分类统计。自动测试是一个特殊的route工位,操作前需要routecheck,完成后进行routeupdate并生成routelog。测试数据与routelog进行关联,因而可以根据routehistory直接定位测试数据。

3.11产品、工单与工艺路线

产品、工单与工艺路线的关系,见图3-7,装配结构、包装结构、材料跟踪的定义参见后面的章节。