林靜 康競?cè)?張?zhí)熨?張晨曦 高艷俊
(吉利汽車研究院(寧波)有限公司,寧波 315336)
汽車白車身(Body in White,BIW)裝配尺寸偏差是影響整車制造質(zhì)量的重要因素,而白車身需要在裝配線6 個區(qū)域40 個工位上裝配完成[1],每個區(qū)域的每個工位都由人、機、料、法、環(huán)因素組成,都可能存在導致白車身尺寸發(fā)生偏差的因素。由這些因素導致的偏差在拼焊過程中傳播、耦合累積,會對汽車的密封性、動力性、平衡性等整車性能產(chǎn)生重要影響[2-3]。實際上,影響白車身裝配尺寸偏差的因素有很多,有些因素是偶發(fā)的、人為不能控制的,而有些是如工件定位、夾具磨損、焊接變形等的事實因素,可以通過定位誤差源而糾正偏差?;趯Υ罅坑墒聦嵰蛩匾鹧b配偏差的白車身進行分析,提出了一種通過對連續(xù)生產(chǎn)的離線白車身裝配偏差趨勢的分析方法,發(fā)現(xiàn)連續(xù)裝配的白車身存在的變形趨勢,快速定位源頭,糾正偏差,提高裝配質(zhì)量。
目前,汽車學術(shù)界針對白車身裝配偏差識別提出了很多有效的方法,如主成分分析[4]、模式識別[5]、結(jié)合模式識別和主成分分析[6]、反向傳播神經(jīng)網(wǎng)絡(luò)[7]等。上述分析方法或者計算效率不高,或者深度依賴工業(yè)領(lǐng)域知識,或者算法過于復雜難懂,汽車工業(yè)界基于產(chǎn)能、經(jīng)濟和效益的考慮,沒有很好地在實際生產(chǎn)中應用這些方法。
針對上述問題,提出了一種基于改進的、參數(shù)自適應的DBSCAN 算法,對連續(xù)的離線白車身的區(qū)域裝配偏差進行識別,能實現(xiàn)連續(xù)偏差區(qū)域診斷和自動報警,有效定位偏差源,及時發(fā)現(xiàn)和糾正問題,提高白車身的裝配質(zhì)量。其中,依據(jù)特征點的非空間屬性,劃分數(shù)據(jù)集,縮短聚類時間;構(gòu)建有權(quán)無向圖來改進DBSCAN 算法,不依賴工程經(jīng)驗,并對非均勻分布的白車身特征點的聚類效果也符合期望,對算法工程師友好;改進后的DBSCAN 算法復雜度低,過程和結(jié)果均能可視化,對工業(yè)制造工程師友好。
白車身的重要檢測點(也叫特征點)能反映白車身各分總成之間的焊接工藝質(zhì)量和車身整體裝配狀態(tài),需要通過分析白車身各個特征點的檢測信息,篩選出白車身某個區(qū)域上的特征點存在超差,且超差方向都相同,即識別白車身上存在裝配偏差的區(qū)域;將數(shù)據(jù)擴展到連續(xù)的多臺白車身,即可判斷連續(xù)的多臺白車身識別的裝配偏差區(qū)域是否存在重疊部分,從中挖掘出白車身的區(qū)域裝配偏差趨勢,從而快速定位偏差源,并及時糾正,提高裝配質(zhì)量。
本算法基于三坐標測量儀CMM 測量的白車身特征數(shù)據(jù),結(jié)合試制工藝數(shù)據(jù)進行預處理;對預處理后的白車身數(shù)據(jù)依次利用改進的DBSCAN算法進行區(qū)域裝配偏差識別,并記錄識別結(jié)果;再根據(jù)存儲的單臺白車身識別結(jié)果,分析連續(xù)多臺白車身是否存在重疊的裝配偏差區(qū)域,若存在,則可視化結(jié)果并報警,若不存在,則重復上述過程,如圖1所示。
圖1 連續(xù)白車身區(qū)域裝配偏差識別算法流程
DBSCAN 算法是一種典型的基于密度的聚類算法,以數(shù)據(jù)的稠密程度作為劃分簇的依據(jù),可在有噪聲的空間數(shù)據(jù)庫中發(fā)現(xiàn)任意形狀的簇。DBSCAN 算法簡單且易于理解,它將數(shù)據(jù)分為核心點、邊界點和噪聲點3 類;點與點之間的關(guān)系分為密度直達、密度可達、密度相連和非密度相連4種。但DBSCAN 算法聚類結(jié)果的準確性由輸入的參數(shù):鄰域Eps 和最小節(jié)點數(shù)MinPts 決定。傳統(tǒng)的方法一般依靠人工經(jīng)驗設(shè)定參數(shù),但這需要專家知識;且固定參數(shù)對非均勻密度的數(shù)據(jù)集不適用,參數(shù)過大或過小,都會使聚類結(jié)果不理想。由于存在上述問題,DBSCAN 算法并不能適用所有應用場景,為了更好地解決實際情況,需要對其進行改進。
目前DBSCAN 有很多改進方法,比如基于K 近鄰距離的改進DBSCAN[8],基于k-均值的改進DBSCAN[9],但這些改進方法都不能很好地解決本研究中的問題。針對傳統(tǒng)DBSCAN 的缺點和白車身特征點不是均勻分布的特性,提出了一種結(jié)合非空間屬性,基于構(gòu)建的有權(quán)無向網(wǎng)絡(luò)圖,對DBSCAN 算法進行改進,不固定全局參數(shù),不依賴人工經(jīng)驗,縮短聚類時間,提高聚類準確性。
目前,汽車工業(yè)界約定的繪制三維坐標軸方式為:以白車身前軸軸心的中心點為坐標原點,指向車身后部為X軸正方向,指向車身右側(cè)為Y軸正方向,指向車身上方為Z軸正方向,如圖2 所示。用夾具固定好白車身,利用CMM 測量白車身的特征點信息,包含白車身N個特征點的特征名Feature,三維空間坐標值(x,y,z),法向量(i,j,k)、測量日期、測量人員等信息。
圖2 白車身三維坐標系的標定
對測量數(shù)據(jù)進行預處理,得到需要的白車身數(shù)據(jù),其中特征點屬性包括,特征名Feature,測量空間坐標(x,y,z),試制工藝空間坐標(X,Y,Z),X軸公差范圍[-Tx,Tx],Y軸公差范圍[-Ty,Ty],Z軸公差范圍[-Tz,Tz],法向量(i,j,k),測量日期Date,裝配偏差值(Δx,Δy,Δz);一臺白車身樣本空間中有N個特征點組成的數(shù)據(jù)集D,每臺白車身有2 000 多個特征點,不同車型,特征點個數(shù)可能不同。根據(jù)行業(yè)約定,特征點的數(shù)據(jù)在公差范圍內(nèi)的都是合格的測點,只有超過公差范圍,即超差的特征點,才是不合格的,有問題的測點,算法針對的也是這些超差的點。
針對傳統(tǒng)DBSCAN 的缺點和白車身特征點的特性,從2 方面對DBSCAN 進行改進。
a.基于非空間屬性的數(shù)據(jù)劃分即縮短聚類時間?;谔卣鼽c法向量的方向和大小,將白車身的特征點劃分為多個模塊;基于特征點是否超差,將每個模塊中的特征點劃分為超差特征集和未超差特征集,其中,超差特征集是本研究關(guān)注的重點,有權(quán)無向圖是基于超差特征集構(gòu)建的,算法識別的結(jié)果區(qū)域也是這個數(shù)據(jù)集的子集;基于特征點的超差方向,即超差值的正負符號,將每個模塊中的超差特征集分為正超差特征集和負超差特征集。
b.基于有權(quán)無向圖的局部聚類—自適應的Eps 和MinPts。有權(quán)無向圖的構(gòu)建如上所述,是基于每個模塊中的超差特征集的,對點集中的每兩個特征點建立一條無向的邊,計算它們之間的歐式距離,作為邊的權(quán)值。整個算法過程中需要多次用到兩個特征點之間的距離,利用有權(quán)無向圖記錄計算結(jié)果,避免多次重復計算。且在過程中,會根據(jù)統(tǒng)計值對特征集中的噪聲點進行篩選,即去掉有權(quán)無向圖中相應的邊,使噪聲點成為孤立點。
對白車身劃分后的每個特征集,基于有權(quán)無向圖,先分別計算每個特征點的最小平均距離,從中選取最小的平均距離對應的特征點作為核心點,最小的平均距離為Eps,以核心點的最小平均距離范圍內(nèi)的特征點個數(shù)為MinPts,再用DBSCAN算法進行局部聚類;將聚類結(jié)果從有權(quán)無向圖中清除,再對清除后的有權(quán)無向圖重復上述計算、聚類和清除等步驟,直至有權(quán)無向圖沒有子圖時結(jié)束對該特征集的識別。
改進的DBSCAN 算法整體流程,如圖3 所示。
圖3 改進的自適應DBSCAN算法流程
改進DBSCAN 算法的實現(xiàn)步驟如下。
a.輸入:白車身特征點的數(shù)據(jù)集D;
b.輸出:識別的裝配偏差區(qū)域;
c.步驟1 根據(jù)特征點法向量的大小和方向劃分模塊Di;
d.步驟2 對每個Di,根據(jù)特征點裝配偏差值與公差范圍的比較,劃分成2 個數(shù)據(jù)集,超過公差范圍的數(shù)據(jù)集DiA,未超過公差范圍的數(shù)據(jù)集DiB,將DiA中的點構(gòu)建一個全連接的有權(quán)無向網(wǎng)絡(luò)圖,邊的權(quán)重是兩個節(jié)點之間的實際距離,節(jié)點的屬性包括特征名、空間屬性、裝配偏差值、偏差值的正負符號等;
e.步驟3 對全連接有權(quán)無向網(wǎng)絡(luò)圖中的每個節(jié)點,分別計算它與其他偏差值正負符號相同和不同的節(jié)點之間的平均距離,統(tǒng)計它與相同正負符號的節(jié)點最短距離范圍內(nèi)屬于數(shù)據(jù)集DiB的特征點個數(shù)、不同正負符號特征點的個數(shù),統(tǒng)計它與不同正負符號的節(jié)點的最短距離范圍內(nèi)屬于數(shù)據(jù)集DiB的特征點個數(shù)、相同正負符號特征點的個數(shù);根據(jù)統(tǒng)計結(jié)果,清除孤立點;
f.步驟4 按偏差值的正負符號,將有權(quán)無向圖拆分成兩個子圖;
g.步驟5 對每個子圖,計算每個節(jié)點與其他節(jié)點之間的平均距離,切斷兩節(jié)點之間距離大于平均距離的邊,清除孤立子圖(總節(jié)點數(shù)<3);
h.步驟6 對每個子圖,根據(jù)Dijkstra 算法,計算每個節(jié)點到其他節(jié)點的最短平均距離,組成最短平均距離集合,最小的最短平均距離Dmin_ave的節(jié)點為該子圖的中心點;統(tǒng)計每個節(jié)點在Dmin_ave領(lǐng)域范圍內(nèi),包含的聯(lián)通的節(jié)點個數(shù),組成聯(lián)通節(jié)點個數(shù)集合,計算聯(lián)通節(jié)點的平均個數(shù)Pave;
i.步驟7 對每個子圖,以該中心點為核心對象,以最短平均距離Dmin_ave為Eps 鄰域,以聯(lián)通節(jié)點的平均個數(shù)Pave為MinPts 進行DBSCAN 聚類,將聚類結(jié)果從子圖中清除;
j.步驟8 重復執(zhí)行步驟5~8,直到?jīng)]有子圖時,停止運算。
為了驗證方法的有效性和正確性,將上述方法應用于實際工程中,以某車型的右側(cè)圍為例,將右側(cè)圍上的特征點展示在三維空間上,如圖4所示。側(cè)圍上特征點的偏差會影響到車門的安裝,進而影響到汽車的風噪聲、密封性等。
圖4 右側(cè)圍的特征點位置
隨機選取3 種車型,對每種車型抽取連續(xù)的200 臺樣車,獲得CMM 測量的各個特征點的信息,按樣車生產(chǎn)先后進行排序,利用改進的DBSCAN 算法進行分析診斷,可視化結(jié)果并自動報警。將步長設(shè)定為1,即每次分析一臺白車身的區(qū)域裝配偏差;連續(xù)多臺的取值窗口設(shè)定為3,每輸入一臺白車身的區(qū)域裝配偏差,就舍棄最早輸入的那臺白車身的數(shù)據(jù),使窗口數(shù)據(jù)長度保持為3,即從每3 臺白車身的識別結(jié)果中提取一次變形趨勢。
識別的連續(xù)多臺白車身區(qū)域裝配偏差可視化結(jié)果如圖5 所示,每個圖上的點位置都是實際測量的結(jié)果展示。其中,圖5a~圖5c 中,點顏色的深淺表示偏差的大小,顏色越深,表示偏差越大;每個矩形表示算法識別的白車身右側(cè)圍存在的裝配偏差的區(qū)域,圖5d 展示的是對這連續(xù)的3 臺白車身進行相同問題區(qū)域識別的結(jié)果,圖5d 上的矩形,是3 臺連續(xù)白車身右側(cè)圍都識別出的存在裝配偏差的區(qū)域。
觀察圖5d 可以直觀提取出連續(xù)白車身存在變形趨勢的區(qū)域,根據(jù)區(qū)域位置可以快速地在100 多個裝配焊接夾具中定位到哪些夾具可能存在磨損、位置偏差等問題。將可能存在問題的夾具信息,通過平臺預警機制,向裝配工程師發(fā)送提醒短信和預警郵件,郵件內(nèi)容包括夾具ID、夾具照片、夾具所在位置、夾具定位精度、夾具對應的零件或分總成、夾具在倉庫中存放的位置ID 等信息,便于工程師快速定位誤差源,及時更換或糾正夾具,提高裝配質(zhì)量,減少生產(chǎn)過程中因裝配偏差造成的減產(chǎn),同時減輕工程師的工作量。
圖5 裝配偏差識別結(jié)果
本研究提出了一種簡單實用的離線連續(xù)白車身的區(qū)域裝配偏差識別方法,通過對數(shù)據(jù)集的劃分和有權(quán)無向網(wǎng)絡(luò)圖的構(gòu)建來改進DBSCAN 方法,并用3 種車型的實際測量數(shù)據(jù)進行驗證。結(jié)果表明該方法可以對離線的連續(xù)白車身的裝配偏差區(qū)域進行識別,可以加快聚類速度,不依賴工程經(jīng)驗,且聚類效果符合預期,有效地減輕了工程制造工程師的工作量,提高了白車身的裝配質(zhì)量。