杭州電子科技大學電子信息學院 朱詩榜
神經網絡在水晶研磨機中的應用
杭州電子科技大學電子信息學院 朱詩榜
水晶研磨機的磨盤因為在工作中的磨損,導致同樣的物品需要由有經驗的工人不斷地調整研磨時間,這樣大大降低了機器的自動化水平。本文通過對研磨機的一系列數據運用神經網絡進行分析,擬合出最佳的研磨時間,并通過增加WiFi模塊對系統進行遠程控制,實現水晶研磨機的自動化研磨控制,實驗結果表明數據擬合符合預期,建立的研磨時間模型可以正確地應用到實際生產中。
神經網絡;水晶研磨機;自動化
隨著人們生活水平的提高,人們對于身邊裝飾品的要求也越來越高,因此對水晶飾品的需求也很高。現有的水晶研磨機因為磨盤的磨損需要手動調整研磨時間,這樣就降低了機器的自動化水平。本文基于BP算法設計了兩層神經網絡,采集電機的轉矩,接觸面的壓力,轉動次數等數據經過神經網絡模型的訓練,實現對研磨時間精準、自動的輸出,進一步提升了設備的自動化水平。
2.1 水晶研磨機的硬件設計
水晶研磨機系統是由三臺研磨機組成,分別處理粗磨、細磨、拋光三道工藝加工工序[1],研磨機之間采用CAN總線進行連接,具體的結構如圖1所示。

圖1 水晶研磨機硬件設計框圖
每一臺水晶研磨機由微控制器、交互設備、驅動器、電機、磨盤以及固定架等設備組成。控制器采用STM32F103ZET6,由MCU控制驅動器,進而控制電機進行機械臂的運動和水晶研磨。WiFi模塊和STM32之間采用SPI總線進行通信。人機交互可以通過鍵盤顯示屏,也可以通過WiFi和上位機進行通信。
2.2 水晶研磨機的軟件設計
控制系統的工作主要就是實現水晶的加工,這個主要就是協調擺角電機、轉面電機和升降電機這三個電機的運動來進行的。其中擺角電機用來轉動鋁排改變傾斜度,繼而改變水晶的行轉角。轉面電機通過內部機械轉軸帶動水晶的自轉運動,這樣可以用來控制研磨的角度。升降電機通過調整磨盤高度控制研磨面積。我們可以根據需求對以上參數進行設置,從而改變水晶的樣子。程序設計流程如圖2所示。

圖2 研磨機加工流程圖
3.1 神經網絡參數選取
研磨時間和許多參數存在著相關性,包括磨盤的性能參數,環境等。但是不同的參數對研磨時間的影響大小不同,因此通過分析之后選取了轉矩、研磨次數、水晶和磨盤之間的壓力這幾個參數作為神經網絡的輸入信息,研磨時間作為輸出信息。
3.2 BP神經網絡建模
BP神經網絡建模的關鍵是確定網絡的層數和輸入層、隱含層、輸出層的神經元個數。輸入層根據選取的參數定為三個神經元,輸出層為研磨時間,故將神經元定為一個,隱含層先根據經驗公式,其中h為隱含層節點數目,m、n為輸入和輸出層節點數目,a為1~10之間的調節參數,因此可先將隱含層的神經元定為3個,后期根據情況可以進行調整。激活函數隱含層選用雙曲正切S型函數,輸出層選擇線性函數f(x) = x,建立的神經網絡模型如圖3所示:

圖3 BP神經網絡

權值和偏置值矩陣形式的更新公式如下所示:

其中:

3.3 數據預處理
3.4 過擬合處理
神經網絡因為輸入參數維度過多或訓練過度等原因可能導致過擬合問題,過擬合會嚴重影響神經網絡的性能,對神經網絡過擬合的處理有許多方法,有提前停止法、交叉驗證、Dropout方法等。本文采用提前停止法,提前停止法將數據分為訓練集合、驗證集合和測試集合。訓練集合是用于對目標神經網絡進行訓練。驗證集合用來對網絡的訓練結果進行評判,當驗證集合精度連續多次都不再提高時,就停止訓練。測試集合的作用是用來檢驗最后的效果的,也就是對神經網絡的預測能力的一個檢驗。
3.5 軟件仿真
將采集到的數據歸一化處理后,通過MATLAB建立模型,求得BP神經網絡的各個神經元的權值和偏置值如下所示: