文/ 王永銳
WIP(Working In Progress)指的是在制零件,概念來自于ERP系統(tǒng),指車間里已裝配但尚未隨成品下線報(bào)交而被扣除庫存的零件。
我們建立一個(gè)最簡(jiǎn)單的模型,來直觀說明WIP,如圖1:
● SAP系統(tǒng)中有倉庫庫存點(diǎn)和總裝(General Assembly,以下簡(jiǎn)稱“GA”)車間兩個(gè)庫存點(diǎn);
● 倉庫庫存點(diǎn)A零件系統(tǒng)數(shù)與實(shí)物數(shù)一致為8個(gè);
GA庫存點(diǎn),系統(tǒng)數(shù)為6個(gè),但是其中4個(gè)在工位n的線旁料架上還未使用,還有2個(gè)已在工位n裝車,經(jīng)過工位n的車輛都裝上了A零件;這2個(gè)已經(jīng)裝車的A零件就是WIP。SAP系統(tǒng)中只能顯示出GA庫存點(diǎn)的庫存6個(gè),而不能區(qū)分線旁料架和WIP。
經(jīng)過整車下線報(bào)交點(diǎn)的車輛,A零件庫存在SAP系統(tǒng)的GA庫存點(diǎn)扣除,不再以零件形式而存在。
● 當(dāng)然,實(shí)際中的WIP要比這個(gè)模型復(fù)雜得多,在后文中會(huì)逐步體現(xiàn)出來。
圖1 兩個(gè)庫存點(diǎn)的模型
圖2 GA的單一線性結(jié)構(gòu)
圖3 BS的樹狀結(jié)構(gòu)
我們首先需要理解兩種具有代表性的生產(chǎn)線結(jié)構(gòu),實(shí)際上就是GA的單一線性結(jié)構(gòu)和BS(Body Shop,車身車間)的樹狀結(jié)構(gòu)。
圖4 順序計(jì)算法的生產(chǎn)線
圖5 順序計(jì)算法的生產(chǎn)線盤點(diǎn)
如圖2所示:
生產(chǎn)線從左向右流動(dòng),G1/G2/G3/G4/G5/G6是工位,每個(gè)工位上一輛在制品車,B1/B2/B3是buffer,為連接G1~G4與G5~G6兩段剛性生產(chǎn)線的緩沖地帶,共3個(gè)車位(buffer也是造成ERP系統(tǒng)中看到的WIP不精確的一個(gè)原因,系統(tǒng)中只能對(duì)buffer設(shè)定一個(gè)恒定值,而buffer的實(shí)際值如圖2所示可以是0~3輛車)。
● 零件A在G1工位安裝,零件B在G2工位安裝,零件C和D在G3工位安裝。
表1 《盤點(diǎn)表》示例
表2 《車號(hào)表》示例
表3 《BOM表》示例
表4 《盤點(diǎn)表》
表5 《BOM表》
如圖3所示:
● 兩條主線,主線1(經(jīng)由G1/G2/G3/G4/G5)與主線2(經(jīng)由G'1/ G'2)匯合在G6工位。
● 主線1的分拼線1,經(jīng)由G2'和G2''兩個(gè)工位后匯合到G2工位。
● 主線1的分拼線2,經(jīng)由G4''和G4'兩個(gè)工位后匯合到G4工位。
● A/B/C/D/E/F/E'/F'/H/I/J/K/L這些零件,分別在箭頭所指的工位上安裝。
顯然,BS的樹狀結(jié)構(gòu)WIP要比GA的單一線性結(jié)構(gòu)復(fù)雜一些。
一般來說,主機(jī)廠如果不清線,要獲取WIP的現(xiàn)狀情況有四種,但都不精確。本文由于篇幅所限,在此不進(jìn)行詳細(xì)展開。接下來,我們將以其中一種情況入手,循序漸進(jìn)講述所有車間的WIP精確獲取辦法。
表6
概要:?jiǎn)我恢骶€從裝車工位順序依次計(jì)算到下線報(bào)交點(diǎn)前第一輛車。
首先,我們建立一條生產(chǎn)線(生產(chǎn)線方向,如圖4),包含剛性的工位段,以及buffer段,然后我們要計(jì)算A、B兩個(gè)零件的WIP。
我們走到G1和G2兩個(gè)工位,盤點(diǎn)出G1工位車號(hào)為Sn9,G2工位車號(hào)為Sn8,如圖5。
然后,我們會(huì)把這個(gè)盤點(diǎn)結(jié)果記錄到表上,以下我們稱此表為《盤點(diǎn)表》,預(yù)留“WIP”列用于填寫計(jì)算的WIP結(jié)果,如表1。
接下來,我們從生產(chǎn)控制系統(tǒng)中拉出車號(hào)序列清單,以下簡(jiǎn)稱《車號(hào)表》,內(nèi)容如表2。
(假設(shè)Sn3由于某問題被Set Out,《車號(hào)表》也將精確體現(xiàn)這個(gè)情況。)
隨后,我們?cè)俅蜷_《BOM表》,關(guān)鍵內(nèi)容如表3。
接下來,我們就根據(jù)上面三張表,用簡(jiǎn)單的Excel VBA編程,順序計(jì)算A、B兩個(gè)零件的WIP數(shù)量。算法如下:
a.從表4《盤點(diǎn)表》中從上往下順序執(zhí)行—首先程序找到零件號(hào)A,及其在工位G1上的盤點(diǎn)車號(hào)是Sn9(注意:工位很重要,可能存在同零件多工位)。
b.接下來程序到表5《BOM表》中查找到,A零件在工位G1上只用于ES6車型,用量為1。
c.程序(如表6)隨后就知道,從工位G1對(duì)應(yīng)的車號(hào)Sn9開始,往報(bào)交點(diǎn)前第一輛車(Sn1)數(shù)過去,凡是《車號(hào)表》中為ES6的車型,就把A零件的WIP數(shù)量累加1。從表6中我們可以看到從Sn9~Sn1,車型為ES6的車號(hào)分別是Sn9/8/6/4/2/1,共6個(gè),那么在G1工位使用的A零件的WIP就是6。
d.盤點(diǎn)表中A零件的“WIP列”就會(huì)被程序填寫上數(shù)字6,如表7,然后程序循環(huán)回到步驟a,開始對(duì)B零件進(jìn)行同樣a/b/c/d四個(gè)步驟的計(jì)算。
結(jié)合上文所述,我們可以思考并總結(jié)復(fù)述一下B零件WIP的計(jì)算過程:
B零件用于工位G2(《盤點(diǎn)表》和《BOM表》一致);《BOM表》上B零件在G2工位同時(shí)用于ES6和ES8且用量為2;然后《盤點(diǎn)表》上G2工位所盤點(diǎn)到的車號(hào)是Sn8,那么到《車號(hào)表》中找到車號(hào)Sn8,從上往下數(shù)到最后的Sn1,看到ES6和ES8總共7輛車,于是7輛車×用量2=14,G2工位B零件的WIP=14就計(jì)算出來了。
圖6 逆向計(jì)算法的生產(chǎn)線
圖7 逆向計(jì)算法的生產(chǎn)線WIP分步情況
表7
表9
表10
表11
表12
表13
基于這個(gè)計(jì)算原理,《盤點(diǎn)表》的“零件號(hào)+工位+車號(hào)”可以往下延長(zhǎng),《BOM表》的“零件號(hào)+工位”也可以往下延長(zhǎng),同時(shí)BOM表的車型配置列也可以往右增加,于是就可以精確計(jì)算出任意零件+工位的WIP了。當(dāng)然,前提是單一主線,生產(chǎn)控制系統(tǒng)中的《車號(hào)表》精確體現(xiàn)了實(shí)際的在制車輛序列,實(shí)際上也就是主機(jī)廠的GA車間適用。
表14
表15
概要:對(duì)于單一主線的WIP,計(jì)算該工位的在制品由哪些零件構(gòu)成。
算法1是正向算法,既然有正向思路,就有逆向的辦法,下面我們看看如何以逆向的思路來計(jì)算WIP。這種逆向的計(jì)算方式,將突破單一主線的框架,將適用于幾乎任何形式的生產(chǎn)線。不過,我們?cè)谂e例講解時(shí),為便于理解,還是先以單一主線的模型來講述這一原理。
同樣,我們繼續(xù)剛才的例子,建立一條生產(chǎn)線,包含剛性的工位段,以及數(shù)量不確定的buffer段(這個(gè)buffer段后面會(huì)很有用),如圖6。
基于圖6的假設(shè),我們把A/B/C三個(gè)零件在各個(gè)工位上的WIP先標(biāo)識(shí)出來,如圖7。
由圖7可見,從G1工位開始,后面的每一輛ES車型,都含有A零件×1件;從G2工位開始,后面的每一輛ES車型,都含有C零件×3件;從G4工位開始,后面的每一輛ES和ET車型,都各有B零件×2件,我們標(biāo)注在每個(gè)工位號(hào)和當(dāng)前工位車型的下面。
如果我們把每個(gè)工位上停留的車由哪些零件裝配組合而成,形成清單;再把每個(gè)工位的清單全部集合起來,就可以知道整個(gè)生產(chǎn)線的WIP了。
我們從G 1工位到G 5工位一路加過去,得出A零件WIP=5,B零件WIP=8,C零件WIP=12。
這就是逆向計(jì)算法—計(jì)算每個(gè)工位的在制品由哪些零件構(gòu)成,再求每個(gè)工位的并集,得出整個(gè)車間的零件WIP。
這個(gè)時(shí)候,對(duì)于盤點(diǎn)的要求就有所變化了,不再是針對(duì)零件進(jìn)行盤點(diǎn),而是針對(duì)工位上放置的是什么車型配置進(jìn)行盤點(diǎn),《盤點(diǎn)表》會(huì)變成表8所示,盤點(diǎn)出每個(gè)工位上有什么車型,多少臺(tái)。
需要注意的是, buffer車位不是工位,不安裝零件,buffer上車型也屬于已完成G4工位裝配的在制車型。所以,buffer上的在制車輛都盤進(jìn)G4工位里面了。
接下來,我們根據(jù)《BOM表》開始計(jì)算,為便于理解,我們?cè)僭谇懊妗禕OM表》中模型增加一個(gè)C零件,在ES車型上單車用量為3,如表9。
a.我們從《盤點(diǎn)表》的G1工位開始,從上往下,按G1工位往G5工位的順序開始計(jì)算每個(gè)工位上的車型由哪些零件組成。程序先來到G1工位,查看到G1工位上有1臺(tái)ES,于是程序轉(zhuǎn)到《BOM表》,查找到所有工位在G1,且用于ES車型的零件,是A這個(gè)零件,1件,于是程序生成了表10《后臺(tái)計(jì)算過程數(shù)據(jù)暫存表》(以下簡(jiǎn)稱《暫存表》)。
b.然后,程序轉(zhuǎn)回《盤點(diǎn)表》,從G1工位轉(zhuǎn)到了G2工位。程序查看到,G2工位上有一臺(tái)ES車型,于是程序轉(zhuǎn)到《BOM表》,查找到所有工位在G2和G1上,且用于ES車型的零件—為什么是G2和G1工位呢?因?yàn)榘凑铡侗P點(diǎn)表》,程序知道G2工位前面還有G1工位,到達(dá)G2工位的在制品一定經(jīng)G1工位裝配過了。因此,程序執(zhí)行的邏輯是執(zhí)行到哪個(gè)工位,就從《BOM表》中查找≤該工位,且符合該工位車型配置的所有零件。于是程序在《BOM表》中查找到,ES車型在《BOM表》的G2工位安裝C零件3件,在G1工位安裝A零件1件,程序在a中的《暫存表》中增加了兩行數(shù)據(jù),如表11。
表11中最后一行數(shù)據(jù)之所以將工位標(biāo)G2,表示的是在G2工位上已安裝的意思,而不是說A零件的《BOM表》工位是G2,注意與第一行的區(qū)別。
c.接下來程序回到《盤點(diǎn)表》,繼續(xù)往下執(zhí)行到工位G3,然后看到G3工位上有1臺(tái)ET車型;同樣,程序到《BOM表》中查看從ET車型在G3/G2/G1工位上有哪些零件安裝,結(jié)果發(fā)現(xiàn)無零件安裝,返回值為空,于是《暫存表》保持不變。
d.再下去程序執(zhí)行到《盤點(diǎn)表》的G4工位,發(fā)現(xiàn)G4工位上有2臺(tái)ES和1臺(tái)ET,那么就兩個(gè)車型WIP分別計(jì)算再相加。
程序回到《BOM表》,查找G4/G3/G2/G1工位上ES車型所裝配的零件分別是B×2/無/C×3/A×1,因G4工位上有2臺(tái)ES,于是程序計(jì)算出來G4工位上的兩臺(tái)ES車型共有(B×2+無+C×3+A×1)×2=B×4+C×6+A×2。然后,程序接著前面的《暫存表》增加了三行記錄,如表12。
執(zhí)行完對(duì)G4工位上2臺(tái)ES的計(jì)算,程序不會(huì)忘記G4上還有1臺(tái)ET,根據(jù)同樣的原理,程序在《BOM表》中查找G4/G3/G2/G1工位上ET車型所裝配的零件,查找結(jié)果只有G4工位上有B零件2件,于是繼續(xù)在《暫存表》增加一行記錄,如表13。
圖8 存在樹狀結(jié)構(gòu)的工位模型
圖9 單一序列工位圖
e.程序回到《盤點(diǎn)表》繼續(xù)分別執(zhí)行最后一個(gè)G5工位,然后G5工位在《BOM表》中沒有零件安裝,所以G5工位上這臺(tái)ES在制品WIP計(jì)算結(jié)果與G4工位中的1臺(tái)ES在制品WIP一致,B×2/無/C×3/A×1(計(jì)算過程原理與上同,不具體展開),于是在《暫存表》增加三行記錄,如表14。
f.至此,程序已經(jīng)從《盤點(diǎn)表》的G1執(zhí)行到了G5工位,執(zhí)行完畢,最后程序?qū)Α稌捍姹怼钒凑樟慵?hào)匯總,得到最終的WIP計(jì)算結(jié)果,如表15。
在此進(jìn)行小結(jié),有兩個(gè)關(guān)鍵點(diǎn)值得注意:
一是程序按照《盤點(diǎn)表》工位順序從上往下順序執(zhí)行,即從第一個(gè)工位一直執(zhí)行到最后一個(gè)工位,每個(gè)工位上的在制品分別計(jì)算WIP。
二是程序在執(zhí)行《盤點(diǎn)表》的每個(gè)工位時(shí),針對(duì)工位上盤點(diǎn)到的不同車型配置,查找《BOM表》中該車型配置下≤該工位安裝的所有零件,也就是從該工位一直往前到整個(gè)生產(chǎn)線的起點(diǎn)工位。(這一條很重要,后面我們?cè)谥v非單一主線裝配結(jié)構(gòu)生產(chǎn)線WIP的計(jì)算時(shí)將要舉一反三)。
概要:通過“工位插入截止法”,把樹狀工位轉(zhuǎn)化成單一主線,計(jì)算任何形式結(jié)構(gòu)工位的WIP。
BS的樹狀工位,顯然無法用算法2的單一主線WIP逆向算法來計(jì)算。但是,該算法是一個(gè)基礎(chǔ),我們對(duì)于樹狀工位WIP的算法,也需要把樹狀工位轉(zhuǎn)化成單一主線工位。筆者稱之為“工位插入截止法”,來將多主線、多分枝分拼線整合成單一主線。
表16 《BOM表》
表17
表18 《盤點(diǎn)表》
表19
表20
表21 《盤點(diǎn)表》
我們先建立一個(gè)存在樹狀結(jié)構(gòu)的工位模型,如圖8。在這個(gè)模型里,主線工位從最前端到最末尾,從左向右依次為G1/G2/G3/G4;同時(shí),G3工位還和一段分拼線相連接,分拼工位從G7開始,經(jīng)過G7/G6/G5后匯合到G3。
假設(shè)各個(gè)工位上需要安裝的零件是A/B/C/D/D'/E/F/H,把這些零件按照《BOM表》(如表16)標(biāo)注在對(duì)應(yīng)的工位附近。假設(shè)各個(gè)工位上的車型配置分別是ET和ES,直接標(biāo)注在各個(gè)工位下面。
上面標(biāo)注到各個(gè)工位上的車型是我們盤點(diǎn)出來的,《盤點(diǎn)表》如表17。
這里注意該《盤點(diǎn)表》,實(shí)際上已經(jīng)在第一列把樹狀工位串成了一條“單一主線”工位序列,過程如圖9。
這就是“工位建?!钡倪^程,將樹狀的工位全部插入、拉直,形成一條“單一主線”工位序列。這個(gè)工位序列,也就是《盤點(diǎn)表》第一列中從上往下的工位序列。
看起來和前文第六部分中的算法有些像,但還不完整,我們還需要在工位序列的右邊增加一列“截止工位”。什么是截止工位呢?其實(shí)在前文第五部分也是有截止工位的,只不過所有的截止工位都是同一個(gè),也就是單一線性工位的起點(diǎn)工位G1。
在前文的算法總結(jié)中提到,“程序在執(zhí)行《盤點(diǎn)表》的每個(gè)工位時(shí),針對(duì)工位上盤點(diǎn)到的不同車型配置,查找《BOM表》中該車型配置下≤該工位安裝的所有零件,也就是從該工位一直往前到整個(gè)生產(chǎn)線的起點(diǎn)工位”。但現(xiàn)在我們用“插入截止法”把分拼樹狀枝線工位插進(jìn)了主線工位,而分拼枝線工位的起點(diǎn)并非是整個(gè)生產(chǎn)線的起點(diǎn)工位,而是枝線工位自己的起點(diǎn)。因此,在《盤點(diǎn)表》中,我們可以看到工位列中G5/G6/G7旁邊的“截止工位”標(biāo)注的都是G7工位,如表18。
接下來我們舉例看看截止工位在程序中所起到的作用:略去前面執(zhí)行過程,假如程序按《盤點(diǎn)表》從上到下執(zhí)行到了工位G6,要計(jì)算G6工位上的在制品有多少零件WIP。
a.程序從《盤點(diǎn)表》中識(shí)別到G6工位上有6臺(tái)ES和5臺(tái)ET。
b.程序到《BOM表》中,先查看BOM中所有工位在G6且車型配置為ES的零件,查到為D零件,單車用量1,再乘以6臺(tái),得出D零件6件;隨后,程序繼續(xù)查看BOM中所有工位在G6且車型配置為ET的零件,查到為D’零件,單車用量為2,再乘以5臺(tái),得出D’零件10件,把計(jì)算結(jié)果寫入到《暫存表》,表19。
c.與前文第五部分講的算法原理同,程序在計(jì)算完G6工位后,會(huì)沿著《盤點(diǎn)表》中的工位順序,依次向上計(jì)算G6工位前面的每一個(gè)工位相應(yīng)車型配置會(huì)安裝什么零件,即按照G7、G2、G1的順序依次計(jì)算。
程序在b.計(jì)算完G6后,再計(jì)算G6前面的G7工位,到BOM中查找工位在G7且車型配置為ES的零件,查到為C零件1件,然后乘以《盤點(diǎn)表》上G6工位上盤點(diǎn)到的6臺(tái)ES,得到這6臺(tái)ES在經(jīng)過G7工位時(shí)被安裝了C零件1×6=6件;程序自然也不會(huì)忘記還有5臺(tái)ET也經(jīng)由G7工位到達(dá)G6工位,于是程序再?gòu)腂OM中查找所有工位在G7且車型配置為ET的零件,查到也是C零件,單車用量2,得到這5臺(tái)ET在經(jīng)過G7工位時(shí)被安裝了C零件2×5=10件。程序把這兩行計(jì)算結(jié)果增加寫入到《暫存表》中,如表20。
注意工位還是G6,因?yàn)槭轻槍?duì)G6工位WIP的計(jì)算。
d. 如果仍按照前面算法2的算法,計(jì)算完G7工位后還要繼續(xù)沿著《盤點(diǎn)表》工位順序向前,輪到計(jì)算G2工位。但是,G6工位是在分拼線上,其起點(diǎn)是G7工位,并沒有經(jīng)由G2和G1工位,因此在《盤點(diǎn)表》的工位列旁邊增加的“截止工位”列就要起作用了,我們對(duì)于G6工位旁邊標(biāo)注的截止工位是G7,也就是說當(dāng)計(jì)算G6工位WIP時(shí),沿著《盤點(diǎn)表》繼續(xù)往前爬的時(shí)候不要爬到最前面的工位G1,而是只要爬到G7工位就需要截止了。程序執(zhí)行到步驟c.的時(shí)候,已經(jīng)爬到了G7工位從而截止,針對(duì)G6工位的WIP就計(jì)算完畢了。這就是“截止工位”的重要作用。
e.這個(gè)程序執(zhí)行過程用文字模擬到了插入的這段工位內(nèi),為更加明白我們繼續(xù)模擬下去,略去工位G5,我們假設(shè)現(xiàn)在程序沿著《盤點(diǎn)表》工位順序執(zhí)行到了G3工位。現(xiàn)在主要講下程序執(zhí)行到G3工位時(shí)的子步驟:
e1. BOM中查詢G3工位的所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》。
e2. 沿著《盤點(diǎn)表》往前往上計(jì)算工位G5(因?yàn)镚3工位的截止工位是G1,所以要一直往前往上追溯)。
?算出BOM中G5工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
圖10 樹狀結(jié)構(gòu)的Excel建模1
圖11 樹狀結(jié)構(gòu)的Excel建模2
圖12 以第一人稱視角的盤點(diǎn)示意圖
?算出BOM中G6工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?算出BOM中G7工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?G5工位的截止工位是G7,到此,針對(duì)G5工位計(jì)算完畢。
表22
表23
表24
表25 《盤點(diǎn)表》
e3. 沿著《盤點(diǎn)表》繼續(xù)往前往上計(jì)算工位G6;
?算出BOM中G6工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?算出BOM中G7工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?G6工位的截止工位是G7,到此,針對(duì)G6工位計(jì)算完畢。
e4. 沿著《盤點(diǎn)表》繼續(xù)往前往上計(jì)算工位G7;
?算出BOM中G7工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?G7工位的截止工位是G7,到此,針對(duì)G7工位計(jì)算完畢。
e5. 沿著《盤點(diǎn)表》繼續(xù)往前往上計(jì)算工位G2;
?算出BOM中G2工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?算出BOM中G1工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?G2工位的截止工位是G1,到此,針對(duì)G2工位計(jì)算完畢。
e6. 沿著《盤點(diǎn)表》繼續(xù)往前往上計(jì)算工位G1;
?算出BOM中G1工位上所有符合G3工位盤點(diǎn)出來的車型的所有零件,加入《暫存表》;
?G1工位的截止工位是G1,到此,針對(duì)G1工位計(jì)算完畢。
至此,G3工位上所盤到的車型WIP計(jì)算完畢。對(duì)于計(jì)算結(jié)果,可以根據(jù)程序進(jìn)行自行驗(yàn)算。
這里要補(bǔ)充明確一個(gè)關(guān)鍵點(diǎn),我們通篇所講的工位上的某車型在制品,不一定是一臺(tái)車,甚至哪怕這個(gè)工位只有一個(gè)零件,都叫做該工位的在制品,只要辨明這個(gè)在制品是什么車型配置,盤出該在制品的車型配置及數(shù)量即可。假如BS的第一個(gè)工位G1就是放一個(gè)零件A上去,待下一個(gè)工位G2的機(jī)器人去抓,那么我們盤點(diǎn)G1工位時(shí),只需要盤出G1工位上有1臺(tái)什么車型配置即可,不需要知道是什么零件。就像我們前面舉例的G1工位上盤出一臺(tái)ET,如表21。
總結(jié)來看,根據(jù)算法3,盤點(diǎn)WIP時(shí)只需要盤出該工位有多少個(gè)什么車型的在制品。接下來我們看看如何將理論運(yùn)用于實(shí)際盤點(diǎn)工作。
BS WIP只能使用算法3所述的“工位插入截止法”,我們?cè)賹⑦@個(gè)過程更加真實(shí)地展現(xiàn)一遍:
(1)完成BS工位按其實(shí)際樹狀結(jié)構(gòu)的Excel建模(參見圖10)。
(2)完成BS工位由樹狀結(jié)構(gòu)到單一主線工位的轉(zhuǎn)換,標(biāo)注“截止工位”。
截止工位是可以多層級(jí)嵌套的,注意每一段分拼枝線的截止工位都是該分拼枝線的起點(diǎn)工位,轉(zhuǎn)換也是靈活多變不影響計(jì)算結(jié)果的,比如舉兩種方法來轉(zhuǎn)換:
●方法一:
把G'1—G'2—G6—G7看作第一層級(jí)主線,把G1—G2—G3—G4—G5看作第二層級(jí)枝線,把G2''—G2'看作第二層級(jí)枝線下的第三層級(jí)枝線,把G4''—G4'看作第二層級(jí)枝線下的另一條第三層級(jí)枝線,如圖10。
然后,我們把第三層級(jí)枝線插入到第二層級(jí)枝線,插入后的結(jié)果,如表23。
然后,我們?cè)侔焉媳碚w插入到第一層級(jí)工位序列的G'2工位和G6工位之間,完成了樹狀工位到單一主線工位的轉(zhuǎn)換,如表23。
●方法二:
把G1—G2—G3—G4—G5—G6—G7看作第一層級(jí)主線,把G2''—G2'看作第一段第二層級(jí)枝線,把G4''— G4'看作第二段第二層級(jí)枝線,把G'1—G'2看作是第三段第二層級(jí)枝線,如圖11。
然后,把三段第二層級(jí)枝線插入到第一層級(jí)主線序列中,如表24。
如果看到最初的樹狀工位要用“插入截止法”進(jìn)行“拉直”,方法二可能更加符合第一印象,不過為了說明“插入截止法”可以嵌套,所以筆者也將方法一舉例示意出來了。
這兩種”拉直“方法雖然工位的排列順序不同,但是對(duì)于接下來的盤點(diǎn)方法、計(jì)算結(jié)果,都是一樣,沒有影響。
以上的步驟(1)和(2)可以說基本上是一勞永逸的,除非遇到車間的改造,再做相應(yīng)的工位建模維護(hù)。
(3)準(zhǔn)備《盤點(diǎn)表》和《BOM表》
《盤點(diǎn)表》就是在(2)中的工位序列插入截止表的右邊,預(yù)置上該車間里面所有的車型配置。
(BS車間的車型配置一般也不多,如果一個(gè)成熟的車間柔性化同時(shí)生產(chǎn)三種車型,每種車型再分高低配的話,也就六種車型配置;而BS的高低配區(qū)別,一般也就在諸如是否帶天窗,是否車門、行李箱蓋上有預(yù)留的飾條飾板孔之類的微小區(qū)別上,影響少數(shù)零件。)
《BOM表》里有與《盤點(diǎn)表》相同字符的工位、車型配置信息,程序才能參照BOM進(jìn)行計(jì)算,如表25。
圖13 WIP在制零件計(jì)算VBA程序界面
(4)車間各工位實(shí)際盤點(diǎn)
如圖12,是以第一人稱視角來畫的盤點(diǎn)示意圖。
比如G'1工位上對(duì)A和B兩個(gè)零件進(jìn)行裝配,其產(chǎn)成品在G'1工位的工裝臺(tái)上有1個(gè),G'1工位的產(chǎn)成品還會(huì)放置到一個(gè)buffer料架上供下一個(gè)工位使用,圖12上在這個(gè)buffer料架上下兩層各4個(gè)共有8個(gè),那么我們就盤點(diǎn)得到G'1工位產(chǎn)成品(也就是G'1工位在制品)數(shù)量為1+8=9,然后盤點(diǎn)人員這點(diǎn)基本素質(zhì)還是有的,知道該產(chǎn)成品是車型ES的,于是就在《盤點(diǎn)單》G'1工位旁邊、配置為ES列的格子內(nèi)填入數(shù)量“9”。
再盤點(diǎn)G'2工位,我們看到G'2工位上放著一件在制品,同時(shí)G'2工位旁邊還有該在制品的buffer庫存6件,該工位在制品共計(jì)1+6=7件;盤點(diǎn)人員也識(shí)別出該產(chǎn)成品為ES車型的,于是在《盤點(diǎn)單》的G'2工位旁邊、配置為ES列的格子內(nèi)填寫入數(shù)量7。
接下來,看到G6工位上的在制品是1輛ES車型、G7工位上的在制品是1輛ET車型,于是分別在《盤點(diǎn)單》上做1件的記錄,如圖12。(BS車間主線工位也經(jīng)常有在制品車身被拉下來的情況,這些車身需要注明從哪個(gè)工位拉下來的,是什么車型,將其計(jì)入到相應(yīng)工位盤點(diǎn)數(shù)量中,即成為WIP盤點(diǎn)的一部分)。
如果主機(jī)廠的BS生產(chǎn)控制系統(tǒng)中能精確看到在制車型的工位分布,將進(jìn)一步簡(jiǎn)化盤點(diǎn)過程。
(5)完成《盤點(diǎn)單》和《BOM表》后,用VBA程序進(jìn)行運(yùn)算,從而得出整個(gè)BS車間的在制零件WIP(VBA程序界面如圖13)
GA WIP的實(shí)際盤點(diǎn)操作,本文將不詳細(xì)展開講述,算法1、2、3都可以使用,而算法2實(shí)際上就是算法3中的工位如果沒有任何枝線的一個(gè)極端情況。熟練掌握方法,只要靈活務(wù)實(shí)、因地制宜的選用即可。