周俊雄,周明歐,范 鵬,盧其輝
(1.廣東省智能化鋰電池制造裝備企業(yè)重點實驗室,廣東惠州 516000;2.廣東利元亨智能裝備股份有限公司,廣東惠州 516000)
超聲波焊接系統(tǒng)由超聲波發(fā)生器和負(fù)載共同組成,超聲波發(fā)生器的任務(wù)是不斷提供穩(wěn)定的超聲能量輸出[1]。在超聲焊接的過程中,由于負(fù)載具有非線性時變特征,使得焊接過程很難控制,從而影響到焊接質(zhì)量的穩(wěn)定性。為解決此問題,必須對變化的輸出功率進(jìn)行準(zhǔn)確預(yù)測,并采取可靠的控制策略才能實現(xiàn)穩(wěn)定控制,提高焊接質(zhì)量。
國內(nèi)外研究者對超聲波發(fā)生器的穩(wěn)定性做了大量研究,主要集中在頻率跟蹤[2-5]、優(yōu)化控制策略、控制方法等方面[6]。文獻(xiàn)[7-8]研究了基于FPGA的超聲波發(fā)生器數(shù)字化控制以及改進(jìn)頻率跟蹤方法,實現(xiàn)了負(fù)載突變后迅速準(zhǔn)確的鎖相功能。文獻(xiàn)[9-10]基于STM32 設(shè)計并優(yōu)化硬件以及頻率跟蹤算法,達(dá)到了良好的控制效果和動態(tài)響應(yīng)能力。文獻(xiàn)[11]提出基于模糊PI 的頻率跟蹤方法,解決負(fù)載狀態(tài)切換頻率跟蹤不準(zhǔn)確的問題。神經(jīng)網(wǎng)絡(luò)技術(shù)作為機(jī)器學(xué)習(xí)的方法,可以自動構(gòu)造特征進(jìn)行學(xué)習(xí)以預(yù)測目標(biāo),該方法能夠保證較高的精度和泛化能力,優(yōu)化結(jié)構(gòu)也能夠提高預(yù)測精度[12-14]。而對于神經(jīng)網(wǎng)絡(luò)在超聲波發(fā)生器中的應(yīng)用研究,在識別焊件品質(zhì)中較為常見。文獻(xiàn)[15]使用了BP 神經(jīng)網(wǎng)絡(luò)預(yù)測匹配電感量的輸出值,實現(xiàn)超聲波鑄造電源的動態(tài)匹配。文獻(xiàn)[16-17]利用神經(jīng)網(wǎng)絡(luò)技術(shù),實現(xiàn)了焊縫位置的空間定位,保障了焊接質(zhì)量和效率。文獻(xiàn)[18]設(shè)計一種基于BP 神經(jīng)網(wǎng)絡(luò)的電力負(fù)荷模型,改進(jìn)超聲波鑄造電源系統(tǒng),提高了工作效率。文獻(xiàn)[19]基于神經(jīng)網(wǎng)絡(luò)設(shè)計了分類器,監(jiān)控焊件質(zhì)量。綜上所述,目前國內(nèi)外對超聲波發(fā)生器輸出的有功功率進(jìn)行預(yù)測的研究相對較少,本文針對這一現(xiàn)狀對超聲波發(fā)生器輸出有功功率的預(yù)測進(jìn)行研究,以期作為超聲波焊接控制工作的參考。
影響超聲波焊接質(zhì)量的主要因素是超聲波發(fā)生器輸出的有功功率。影響超聲波發(fā)生器輸出有功功率的主要因素有焊頭的摩擦因數(shù)μ、焊接壓力F、焊接振幅A、超聲波頻率f以及焊印面積S等參數(shù)。這使得超聲波焊接控制系統(tǒng)呈現(xiàn)復(fù)雜的非線性,目前傳統(tǒng)的控制算法缺乏有效的多目標(biāo)非線性數(shù)學(xué)分析工具。神經(jīng)網(wǎng)絡(luò)算法因其可解決多變量和多目標(biāo)之間的映射關(guān)系而被廣泛應(yīng)用于輸入輸出關(guān)系復(fù)雜的非線性映射場景,它不依賴于系統(tǒng)模型。針對神經(jīng)網(wǎng)絡(luò)控制算法,研究人員提出了多種控制結(jié)構(gòu)[20-21]。本文針對超聲波焊接過程的工藝特點,在Tensorflow框架下設(shè)計了基于全連接層(Multi-Layer Perception,MLP)和基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)原理的2 種預(yù)測模型,并采集各種超聲焊接場景下的數(shù)據(jù)進(jìn)行訓(xùn)練,特征量為影響超聲波發(fā)生器輸出功率的各參數(shù)。訓(xùn)練結(jié)果表明,神經(jīng)網(wǎng)絡(luò)預(yù)測模型具有較強(qiáng)的容錯性和魯棒性,可以準(zhǔn)確預(yù)測出控制目標(biāo)。
通過簡單的更新規(guī)則來說明神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程:
定義學(xué)習(xí)參數(shù)lr,迭代輸入數(shù)據(jù)集,神經(jīng)網(wǎng)絡(luò)前向傳播計算參數(shù),計算損失,再通過反向傳播算法不斷向參數(shù)回傳梯度G,更新網(wǎng)絡(luò)參數(shù)的權(quán)重W[l]直至損失達(dá)到目標(biāo)。
優(yōu)化算法簡單地說就是最小化損失函數(shù),即縮小預(yù)測值和真實值之間的差距,神經(jīng)網(wǎng)絡(luò)常用梯度法學(xué)習(xí)訓(xùn)練,傳統(tǒng)的梯度下降法損失下降慢,易陷入局部最優(yōu)值。改進(jìn)的隨機(jī)梯度下降法以及mini-batch 梯度下降雖然在一定程度上改善了傳統(tǒng)算法的缺陷,但仍然存在損失函數(shù)波動大、運(yùn)行慢等問題,此時就需使用動量法和自適應(yīng)梯度算法。
本文在TensorFlow 這一經(jīng)典的人工智能計算框架下搭建神經(jīng)網(wǎng)絡(luò)模型,調(diào)用該框架中的Adam 優(yōu)化器優(yōu)化神經(jīng)網(wǎng)絡(luò)算法。Adam優(yōu)化算法同時使用動量和自適應(yīng)梯度思想,一方面通過動量積累梯度,另一方面通過自適應(yīng)梯度思想使得損失波動幅度更小,其更新過程如下:
預(yù)測下一時刻的功率Pn+1值,與當(dāng)前功率Pn作差,以差值為判斷依據(jù),通過控制器調(diào)參,維持焊接功率穩(wěn)定。其中,從焊接過程中摩擦力做功的角度考慮,超聲波焊接所需要的有功功率可按照式(3)進(jìn)行計算。
式中:S為焊印面積;W為摩擦力在時間t內(nèi)所做的功;F為摩擦力;s為在摩擦力的方向上發(fā)生的位移;μ為焊頭與被焊物之間的摩擦因數(shù);FN為正壓力;A為振幅最大值;f為輸出頻率。
電源穩(wěn)定輸出控制框圖如圖1 所示。為了預(yù)測下一時刻的功率Pn+1,在Tensorflow 框 架下,分別基于MLP 以及CNN 原理設(shè)計了2 種網(wǎng)絡(luò)結(jié)構(gòu),如圖2和圖3所示。
圖1 基于神經(jīng)網(wǎng)絡(luò)預(yù)測模型的電源穩(wěn)定輸出控制框圖
圖2 MLP網(wǎng)絡(luò)預(yù)測模型
圖3 一維卷積層結(jié)構(gòu)
由式(3)可知,由于焊印面積S基本保持不變,壓力FN、振幅A與占空比、電流有關(guān)。因此,以當(dāng)前時刻的頻率fn、占空比αn、電流I、功率Pn、下一時刻的頻率fn+1以及占空比αn+1共6 個變量作為輸入向量,輸出向量為下一時刻功率Pn+1。經(jīng)過多次調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)訓(xùn)練實驗,發(fā)現(xiàn)MLP 神經(jīng)網(wǎng)絡(luò)的隱藏層層數(shù)設(shè)置為2,每一層的神經(jīng)元個數(shù)設(shè)置為32時預(yù)測效果較好,損失相對較低。
CNN 大體結(jié)構(gòu)與MLP 類似,不同點在于每一層不僅僅是單純的神經(jīng)元,而是改為卷積層和池化層。通過設(shè)定大小的卷積核提取局部特征映射到下一層,池化層用來降維以減輕網(wǎng)絡(luò)負(fù)擔(dān)。由于本文的數(shù)據(jù)集均為數(shù)值數(shù)據(jù),使用一維卷積層和池化層搭建實驗?zāi)P?,一維卷積層結(jié)構(gòu)如圖3所示。
多個卷積層堆積構(gòu)成卷積神經(jīng)網(wǎng)絡(luò),每層的卷積核個數(shù)視情況設(shè)置,本文將卷積核大小設(shè)置為6,最后經(jīng)過一層全連接層恢復(fù)參數(shù)維度,輸出下一時刻功率。
數(shù)據(jù)集的生成以及處理方式能夠非常直觀地影響神經(jīng)網(wǎng)絡(luò)的精度,在壓力一定的條件下,改變占空比大小測得的焊接參數(shù)作為樣本生成數(shù)據(jù)集。部分樣本數(shù)據(jù)如表1 所示,將上文所提到的6 個變量作為訓(xùn)練集樣本數(shù)據(jù),對應(yīng)下一時刻的功率真實值作為標(biāo)簽,同時對輸入樣本數(shù)據(jù)作標(biāo)準(zhǔn)化處理:
表1 部分輸入樣本數(shù)據(jù)
式中:為輸入樣本Xi的標(biāo)準(zhǔn)化值,處理后能夠提高網(wǎng)絡(luò)訓(xùn)練效率和精度;μ為樣本均值;σ為樣本標(biāo)準(zhǔn)差。
本文分別基于MLP、CNN 神經(jīng)網(wǎng)絡(luò)訓(xùn)練,神經(jīng)網(wǎng)絡(luò)的隱藏層采用ReLU 函數(shù),CNN 網(wǎng)絡(luò)的隱藏層采用Tanh函數(shù),輸出層均未采用激活函數(shù)。
BN(BatchNormalization)層,即批量歸一化,也會影響訓(xùn)練損失以及網(wǎng)絡(luò)的泛化能力。雖然輸入前已人為將數(shù)據(jù)標(biāo)準(zhǔn)化,但訓(xùn)練時每一層輸入數(shù)據(jù)的分布是不斷更新的,因此可以添加BN 層達(dá)到每一層網(wǎng)絡(luò)輸入數(shù)據(jù)都?xì)w一化的效果,同時在一定程度上能夠防止訓(xùn)練集損失小,若驗證測試集損失大,以及驗證測試集與訓(xùn)練集損失相差過大,即為過擬合現(xiàn)象。網(wǎng)絡(luò)結(jié)構(gòu)如表2~3所示。
表2 MLP網(wǎng)絡(luò)模型參數(shù)
對應(yīng)的訓(xùn)練以及驗證損失曲線如圖4所示。通過表1比較模型MLP1、2 的損失值變化曲線可知,增加批量樣本數(shù),驗證集損失下降,模型泛化能力增強(qiáng),與訓(xùn)練集損失更接近,因此MLP 后續(xù)實驗的批量樣本數(shù)設(shè)置為64;比較模型MLP2和3的損失值變化曲線可知批量樣本數(shù)相同時,增加某層神經(jīng)元個數(shù),增加網(wǎng)絡(luò)復(fù)雜度有利于損失值下降,圖4中模型MLP3訓(xùn)練和驗證損失均相對下降,且驗證集損失波動更?。槐容^模型MLP3、4 的損失值變化曲線可知,添加BN 層后,模型MLP4 訓(xùn)練集損失反而增大,因為增加懲罰手段導(dǎo)致了訓(xùn)練難度增大。
圖4 MLP各模型訓(xùn)練驗證損失曲線
表3 中C(8,6)表示當(dāng)前卷積層有8 個卷積核,卷積核大小為6,m(3)表示池化層,卷積核大小為3。對應(yīng)的訓(xùn)練以及驗證損失曲線如圖5 所示。由圖可知,CNN 網(wǎng)絡(luò)訓(xùn)練集均與驗證集損失較接近,擬合效果較好,說明整體泛化能力較強(qiáng)。模型2 的網(wǎng)絡(luò)去掉一層卷積層,降低復(fù)雜度,此時損失值相對下降,并且驗證集損失振蕩比模型1 平緩,說明模型2 的復(fù)雜度已經(jīng)足夠,模型1 過于復(fù)雜,因此對于CNN 來說,采用模型2 復(fù)雜度已足夠,節(jié)省算力和時間成本,預(yù)測結(jié)果也會更好。
表3 CNN網(wǎng)絡(luò)模型參數(shù)
圖5 CNN各模型訓(xùn)練驗證損失曲線
綜合來看,CNN 網(wǎng)絡(luò)的驗證集損失均與訓(xùn)練集損失接近,CNN 網(wǎng)絡(luò)整體的擬合程度比MLP 強(qiáng),具有更強(qiáng)的泛化能力。
為驗證模型的有效性以及魯棒性,隨機(jī)抽取未訓(xùn)練的30組數(shù)據(jù),對焊接機(jī)下一時刻的功率進(jìn)行預(yù)測,將預(yù)測值與真實值作比較,各模型表現(xiàn)如圖6 所示。通過觀察兩條曲線的重合度來判斷預(yù)測效果,從預(yù)測結(jié)果來看,MLP 模型2 比模型1 表現(xiàn)好,模型3 比模型2 表現(xiàn)好,模型4 效果最優(yōu),沒有特別突出的異常值,預(yù)測功率值的整體趨勢與真實功率值接近。這與前文對損失函數(shù)的描述一致,但模型4 驗證集損失明顯小于訓(xùn)練集,此時模型存在過度規(guī)范化的問題,不予采納。因此,MLP 網(wǎng)絡(luò)結(jié)構(gòu)設(shè)置成模型3 的參數(shù)結(jié)構(gòu)時是比較可靠的,泛化能力相對較強(qiáng),具有一定魯棒性。
圖6 MLP各模型實際功率與預(yù)測功率曲線
圖7 所示為基于CNN 網(wǎng)絡(luò)搭建的功率預(yù)測模型。由圖可知,模型2表現(xiàn)更好,真實值和預(yù)測值重合度更高,預(yù)測值基本與實際功率值一致,無突出的異常值。
圖7 CNN各模型實際功率與預(yù)測功率曲線
對比圖6和圖7可以看出,CNN網(wǎng)絡(luò)預(yù)測效果整體比MLP網(wǎng)絡(luò)更優(yōu),功率的預(yù)測值走勢基本與真實值相同,這也與前文損失函數(shù)的結(jié)果相對應(yīng)。使用懲罰手段,訓(xùn)練更少的參數(shù),依然能達(dá)到更好的效果,說明在該場景下,卷積神經(jīng)網(wǎng)絡(luò)的泛化能力更強(qiáng),可靠度更高,更具魯棒性。
在超聲焊接的過程中,由于負(fù)載具有非線性時變特征,使得超聲波發(fā)生器的輸出功率受到影響,從而導(dǎo)致焊接質(zhì)量問題。對此,本文分別基于全連接層神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)設(shè)計了超聲波發(fā)生器輸出有功功率的預(yù)測模型,并采用超聲金屬焊接工程中的實際數(shù)據(jù)進(jìn)行了訓(xùn)練驗證,主要得出以下結(jié)論。
(1)經(jīng)過多次更改結(jié)構(gòu)并調(diào)整參數(shù)訓(xùn)練后,文中所設(shè)計的2 個神經(jīng)網(wǎng)絡(luò)模型的損失值均能下降到10-2以下。通過未訓(xùn)練的實測參數(shù)進(jìn)行功率預(yù)測試驗,預(yù)測功率與真實值功率曲線重合度證明了這2 種方法都是有效的,并且都具有良好的預(yù)測精度和魯棒性,能夠有效解決超聲波焊接這種場景下多變量輸入輸出映射關(guān)系的難題,為超聲波焊接的穩(wěn)定性控制提供了新思路。
(2)對比全連接層神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練結(jié)果,發(fā)現(xiàn)后者的訓(xùn)練驗證損失更小,預(yù)測效果更好。說明卷積神經(jīng)網(wǎng)絡(luò)模型的泛化能力更強(qiáng),更具魯棒性,可優(yōu)先考慮將這種算法應(yīng)用于超聲波金屬焊接中進(jìn)行功率預(yù)測。