張吳波
(湖北汽車工業(yè)學(xué)院電氣與信息工程學(xué)院,湖北十堰442002)
隨著汽車發(fā)動機(jī)排放標(biāo)準(zhǔn)要求越來越高,發(fā)動機(jī)的設(shè)計要求、零件加工和裝配質(zhì)量要求也越來越高。在汽車生產(chǎn)規(guī)模不斷擴(kuò)大、生產(chǎn)節(jié)拍不斷提高的背景下,發(fā)動機(jī)裝配大多己實現(xiàn)混流裝配。由于不同型號發(fā)動機(jī)的共線生產(chǎn),裝配線上每天都要更換產(chǎn)品型號,而每種產(chǎn)品所搭配的零件物料及工藝要求各不同,使得發(fā)動機(jī)裝配過程錯綜復(fù)雜[1]。
外協(xié)件裝配是發(fā)動機(jī)的重要組成部分。雖然發(fā)動機(jī)裝配線應(yīng)用了在線自動裝配、自動檢測等技術(shù)功能,但如果采用人工目測、人工分檢等傳統(tǒng)的預(yù)防方法,當(dāng)發(fā)動機(jī)大批量、連續(xù)混流生產(chǎn)時,操作者受視覺疲勞和勞動強(qiáng)度的影響、裝配過程中分辨效率低下等原因而容易出錯[2]。因此需要在發(fā)動機(jī)外協(xié)件的裝配過程中采用一些防錯技術(shù),以有效地控制發(fā)動機(jī)的制造質(zhì)量,保證發(fā)動機(jī)高精度、高效率、高質(zhì)量的裝配。
發(fā)動機(jī)外協(xié)件裝配線根據(jù)生產(chǎn)計劃,將發(fā)動機(jī)裝配所需的外購件按裝配需求,輸送到指定工位,并按照要求裝配,如圖1所示。
圖1 發(fā)動機(jī)外協(xié)件裝配線示意圖
1#工控機(jī)位于發(fā)動機(jī)轉(zhuǎn)配線的噴漆下線處,當(dāng)發(fā)動機(jī)下線時,需要登記發(fā)動機(jī)的標(biāo)識號,用以指示外協(xié)件庫的物料管理員,按照下線的發(fā)動機(jī)型號將需要集配的零件裝到物料小車。裝車后的物料被送往外協(xié)件裝配線,操作工人按照看板,選取相應(yīng)零件進(jìn)行集配。
在外協(xié)件裝配中容易因人為因素導(dǎo)致發(fā)生錯裝、漏裝:1)在選取集配零件時,操作工人可能將裝車物料選錯;2)在裝配工位上,操作工人從物料小車中選取零件時,可能將零件選錯;3)在裝配時可能將零件裝錯,或者安裝不到位。防錯系統(tǒng)應(yīng)對這些易出錯的環(huán)節(jié)進(jìn)行監(jiān)控和管理。
外協(xié)件裝配防錯系統(tǒng),開發(fā)采用基于.NET 架構(gòu)的C#語言開發(fā),采用C/S(客戶端/服務(wù)器)模式,各個工控機(jī)作為客戶端,完成數(shù)據(jù)的采集、顯示;服務(wù)器端完成數(shù)據(jù)的存儲??蛻舳碎_發(fā)工具采用VS2005,服務(wù)器端的數(shù)據(jù)庫采用Sql Server 2000。根據(jù)系統(tǒng)要求,設(shè)計系統(tǒng)的拓?fù)浣Y(jié)構(gòu)如圖2所示。
裝配線上的各工控機(jī)通過局域網(wǎng)連接,數(shù)據(jù)庫服務(wù)器通過交換機(jī)與MES 服務(wù)器交互,定時從MES系統(tǒng)提取發(fā)動機(jī)裝配零件數(shù)據(jù)。1#工控機(jī)對下線的發(fā)動機(jī)條碼進(jìn)行掃描,并將發(fā)動機(jī)的條碼與發(fā)動機(jī)型號對應(yīng),并保存在數(shù)據(jù)庫服務(wù)器中。2#工控機(jī)和3#工控機(jī)根據(jù)裝配的發(fā)動機(jī)標(biāo)識號,提示操作工人正確選擇裝車的零件。當(dāng)2 臺集配小車上的零件全部掃面合格后,物料小車才能送往裝配線。4#工控機(jī)安裝在外裝上線,用于比對物料小車的條碼和發(fā)動機(jī)條碼是否吻合。
圖2 拓?fù)浣Y(jié)構(gòu)
根據(jù)裝配線要求,防錯系統(tǒng)的處理流程設(shè)計如圖3所示。系統(tǒng)定時從MES系統(tǒng)中下載機(jī)型信息以及BOM信息等,并將其保存到數(shù)據(jù)庫服務(wù)器中,實現(xiàn)與MES系統(tǒng)的無縫連接。在1#工控機(jī)掃描完發(fā)動機(jī)條碼后,從數(shù)據(jù)庫服務(wù)器中提取發(fā)動機(jī)所屬機(jī)型,操作員確認(rèn)后,保存進(jìn)數(shù)據(jù)庫,并根據(jù)裝配的先后順序?qū)Υb配發(fā)動機(jī)進(jìn)行排序。2#、3#工控機(jī)按照發(fā)動機(jī)的排序選擇裝配的發(fā)動機(jī),然后提示發(fā)動機(jī)所需裝配的零件。在將零件裝車時,掃描零件的條碼,并判斷其是否符合發(fā)動機(jī)的裝配條件。裝車完畢后,打印發(fā)動機(jī)裝車清單,掃描裝零件的物料小車條碼,建立小車與發(fā)動機(jī)對應(yīng)信息。在4#工位掃描發(fā)動機(jī)條碼、小車條碼,如果發(fā)動機(jī)條碼和小車條碼匹配,進(jìn)入工人裝配環(huán)節(jié),完成裝配。
對系統(tǒng)需要處理的數(shù)據(jù)進(jìn)行抽象、建模,設(shè)計出如圖4所示的E-R圖。
圖3 系統(tǒng)流程
圖4 系統(tǒng)E-R圖
發(fā)動機(jī)型號表示裝配線需要裝配的發(fā)動機(jī)機(jī)型,具體裝配的發(fā)動機(jī)具有唯一的條碼,通過生產(chǎn)計劃與發(fā)動機(jī)型號對應(yīng)。每種類型的發(fā)動機(jī)機(jī)型都有一個物料裝配清單BOM,指明生產(chǎn)實際使用的BOM,即實際生產(chǎn)按照什么樣的工藝,需要哪些材料,在什么設(shè)備上生產(chǎn),安排多少工人等等信息。具體安裝在發(fā)動機(jī)上的零件具有唯一的條碼,在安裝完成后,每臺發(fā)動機(jī)有一個具體的安裝清單表。其中關(guān)鍵的物理表設(shè)計如表1~2所示。
表1 發(fā)動機(jī)表
表2 BOM表
根據(jù)系統(tǒng)功能與系統(tǒng)流程圖,系統(tǒng)設(shè)計的主要功能如圖5所示。
圖5 系統(tǒng)功能結(jié)構(gòu)圖
1)發(fā)動機(jī)BOM 數(shù)據(jù)管理 定時從MES系統(tǒng)下載機(jī)型數(shù)據(jù),并保存到本地數(shù)據(jù)庫服務(wù)器中。提供根據(jù)發(fā)動機(jī)型號,查詢所需裝配的零件、安裝工位等信息。
2)發(fā)動機(jī)條碼管理 完成對發(fā)動機(jī)的掃描,登記發(fā)動機(jī)所屬的型號,并按照掃描順序?qū)Πl(fā)動機(jī)進(jìn)行排序。將掃描的發(fā)動機(jī)條碼推送到下一工位。
3)零件選取管理根據(jù)選擇的發(fā)動機(jī)條碼,完成對零件條碼的掃描,并根據(jù)定義的發(fā)動機(jī)BOM 數(shù)據(jù)比對所選擇的零件號和發(fā)動機(jī)型號,匹配成功的零件提示裝入小車,不成功的提示錯誤,并記錄發(fā)動機(jī)條碼和零件號的對應(yīng)。完成對已經(jīng)裝車完畢的小車條碼掃描,并記錄其和發(fā)動機(jī)條碼的對應(yīng)關(guān)系。只有所有需裝配的零件裝車完畢后才能對小車條碼掃描,并送入下一工位進(jìn)行裝配,并打印所裝配的零件清單以及裝車號。
4)發(fā)動機(jī)裝配管理 掃描發(fā)動機(jī)條碼、小車條碼,根據(jù)裝配清單進(jìn)行對比。比對成功的送入裝配線進(jìn)行裝配。
防錯系統(tǒng)中的核心數(shù)據(jù)——BOM 數(shù)據(jù),是在其上游的MES系統(tǒng)中設(shè)計、管理,為了保證在裝配過程裝配零件的正確性,并指示操作工能正確選取裝車零件,系統(tǒng)需提取MES系統(tǒng)中的BOM數(shù)據(jù),并與其保持一致,因此需要定時從MES系統(tǒng)提取數(shù)據(jù)。定時任務(wù)使用Quartz.NET實現(xiàn)。
Quartz.NET是一個開源的作業(yè)調(diào)度框架,是OpenSymphony的Quartz API的.NET移植。它提供了巨大的靈活性而不犧牲簡單性。
在Quartz.NET框架代碼中,通過創(chuàng)建一個調(diào)度器構(gòu)造工廠StdSchedulerFactory,并通過GetScheduler()函數(shù)構(gòu)造調(diào)度器,定義任務(wù)(JobDetail)和觸發(fā)器(trigger),在任務(wù)中指定需要定時執(zhí)行類,觸發(fā)器設(shè)定定時執(zhí)行的時間。再將任務(wù)與觸發(fā)器添加到調(diào)度器中,并啟動調(diào)度器。SynJob是一個實現(xiàn)了IJob 接口和Execute()方法的數(shù)據(jù)同步類,在調(diào)度器的管理下按照定時器的時間設(shè)定,定時執(zhí)行其實現(xiàn)的Execute()。
在SynJob中,首先連接MES系統(tǒng)的數(shù)據(jù)庫,根據(jù)生產(chǎn)計劃表,查找當(dāng)天需要裝配的發(fā)動機(jī)型號,根據(jù)發(fā)動機(jī)型號,將BOM 數(shù)據(jù)表中的相關(guān)記錄下載到本地。根據(jù)物料號,在本地數(shù)據(jù)庫的BOM 數(shù)據(jù)表中查詢是否存在該物料的信息,如果存在則更新,如果不存在則將其插入到數(shù)據(jù)庫中。
在發(fā)動機(jī)裝配中,存放各式零部件和物料,物料管理員需要根據(jù)裝配的發(fā)動機(jī)要求,按需提取物料進(jìn)行裝配操作。物料的提取過程存在錯拿、漏裝等人為失誤,這些人為失誤將直接影響到發(fā)動機(jī)的裝配效率品質(zhì)。因此將倉庫中的各個零件,打上不同條形碼,其格式為“廠代碼+零件號+流水號”,其中流水號為零件的唯一碼,不可重復(fù)。系統(tǒng)通過條形碼辨識具體的零件和發(fā)動機(jī)。
零件入庫時,為每一個零件制作、打印、粘貼一個條碼,用條碼掃描槍對零件條碼進(jìn)行逐件掃描,讀取掃描槍掃描的零件號,將其保存在數(shù)據(jù)庫中。當(dāng)發(fā)動機(jī)從噴漆線下來后,對發(fā)動機(jī)的條碼進(jìn)行掃描,發(fā)動機(jī)條碼送入待裝配的發(fā)動機(jī)排序表,并從數(shù)據(jù)庫服務(wù)器的BOM表中,根據(jù)其發(fā)動機(jī)型號進(jìn)行查找,得到需要裝配的零件號、安裝工位、數(shù)量和裝配要求。物料管理員在待裝配的發(fā)動機(jī)排序表中選擇一臺發(fā)動機(jī)后,工控機(jī)上顯示該發(fā)動機(jī)需要裝配的零件號和個數(shù)。管理員選取相應(yīng)的物料小車,使用掃描槍掃描小車上的條碼,將其與發(fā)動機(jī)的條碼對應(yīng)后,保存數(shù)據(jù)庫中。在選取的零件中,逐一掃描零件上的條形碼,根據(jù)條形碼確定零件所屬型號,判斷零件是否屬于BOM 數(shù)據(jù)表中提取發(fā)動機(jī)的零件裝配清單中的零件,如果是提示正確,否則提示錯誤。系統(tǒng)根據(jù)掃描的零件型號,對裝車零件數(shù)量進(jìn)行計數(shù)。只有所有零件正確地裝入物料小車后,物料小車被送往裝配線裝配。在裝配線進(jìn)行裝配時,操作人員先對物料小車條碼和發(fā)動機(jī)條碼進(jìn)行掃描,判斷物料小車是否為在選料時發(fā)動機(jī)對應(yīng)的小車條碼,二者匹配才能進(jìn)行裝配。
防錯系統(tǒng)依托上游MES系統(tǒng)的BOM 數(shù)據(jù),根據(jù)需要裝配的發(fā)動機(jī)型號,指示操作工正確選擇裝車零件,并對裝車零件進(jìn)行有效判斷,可以減少物料提取的錯誤;對裝車的零件進(jìn)行保存,可以有效地追溯零件,從而防止物料裝配過程的失誤。
[1]王建國.防錯技術(shù)在發(fā)動機(jī)制造中的應(yīng)用[J].汽車與配件,2014(19):72-75.
[2]黃謙.防錯技術(shù)在發(fā)動機(jī)制程中的應(yīng)用[J].裝備制造技術(shù),2014(1):189-191.
[3]李英婧.發(fā)動機(jī)總裝的防錯措施[J].現(xiàn)代零部件,2010(8):48-50.
[4]吳春其.典型防錯技術(shù)在生產(chǎn)制造中的應(yīng)用[J].科技視界,2012(35):137+150.
[5]王云,竇本虎.關(guān)鍵零部件裝配防錯及追溯技術(shù)[J].汽車工藝與材料,2014(7):51-53.
[6]張友兵,楊亞會,夏鵬濤.基于S-BOM的汽車狀態(tài)數(shù)據(jù)管理系統(tǒng)研究與實現(xiàn)[J].湖北汽車工業(yè)學(xué)院學(xué)報,2012(1):38-41.