楊勝源,尹政鑫,張清波,余德平
(四川大學(xué) 機械工程學(xué)院,成都610065)
球形鈦合金粉末是采用粉末冶金工藝制造復(fù)雜工件的重要原料[1-2],也是粉末注射成型和添加劑制造的原料。在粉末冶金應(yīng)用中,由于球形顆粒具有較好的流動性和密度,通常需要球形顆粒[1]。然而,鈦粉(包括球形鈦合金)的高成本一直是鈦粉廣泛應(yīng)用的主要障礙,特別是隨著基于金屬粉末的3D打印技術(shù)的日益重要,對球形鈦粉的性能、成本和粉末生產(chǎn)工藝的需求引起了新的關(guān)注。幸運的是球形鈦金屬粉末可以通過等離子體霧化(PA)方法生產(chǎn)。PA 生產(chǎn)的鈦合金粉末的典型顆粒尺寸范圍分布為10 μm~100 μm。等離子體霧化的示意圖如圖1所示[1]。

圖1 等離子體霧化的技術(shù)原理Fig.1 Technical principle of plasma atomization
目前,等離子體霧化技術(shù)的進一步推廣受到一些問題的挑戰(zhàn)[3],主要問題是等離子體在霧化過程中難以保證結(jié)果粉末的穩(wěn)定性[4]。在對金屬絲材進行等離子體霧化時由于等離子體發(fā)生器的電極產(chǎn)生燒蝕、工作氣體流量突變、冷卻水溫度變化等參數(shù)變化的影響,使得在一次霧化加工中產(chǎn)生的粉末質(zhì)量不同[5-7]。所以,研究鈦絲等離子體霧化過程在線診斷控制系統(tǒng)可以有效地對等離子體生產(chǎn)過程進行控制、檢測、判斷,通過控制系統(tǒng)可以了解等離子體霧化系統(tǒng)的運行狀態(tài),可以切實保障等離子體霧化產(chǎn)品的穩(wěn)定性,避免在一次生產(chǎn)之中由于不同等離子體束狀態(tài)不同,而產(chǎn)生粉末結(jié)果不同的情況[8], 此外可以通過等離子體在線控制診斷軟件全面地了解等離子體霧化系統(tǒng)的狀態(tài)、實現(xiàn)自動控制,為實際生產(chǎn)創(chuàng)造便利、為進一步研究等離子體霧化機理提供支持[9]。
伴隨著近年來計算機系統(tǒng)的不斷發(fā)展和進步,促使了我國工業(yè)界的智能監(jiān)控系統(tǒng)的發(fā)展。目前,在絕大多數(shù)的工業(yè)應(yīng)用中,并沒有采取智能計算機監(jiān)控系統(tǒng),導(dǎo)致信息傳輸效率較低,現(xiàn)場控制不便[10]。在此背景之下,傳統(tǒng)的等離子體霧化監(jiān)控系統(tǒng)功能不足,實際作業(yè)需要消耗大量人力和時間來確認(rèn)參數(shù)和操作設(shè)備,因此筆者自主開發(fā)了基于以太網(wǎng)的遠(yuǎn)程監(jiān)控等離子體遠(yuǎn)程霧化監(jiān)控設(shè)備運行狀態(tài)參數(shù)實時監(jiān)控系統(tǒng)[11]。
基于以太網(wǎng)的等離子體霧化自動在線監(jiān)控系統(tǒng)主要由電腦(上位機)和霧化在線監(jiān)控系統(tǒng)(下位機)組成,下位機包括MODBUS 網(wǎng)關(guān)、PLC 和等離子體電源柜。系統(tǒng)基本架構(gòu)如圖2所示。

圖2 系統(tǒng)架構(gòu)圖Fig.2 System architecture
等離子體霧化在線監(jiān)控系統(tǒng)主要包括工控機、MODBUS 網(wǎng)關(guān)、PLC、等離子體電源柜等設(shè)備,上位機負(fù)責(zé)進行等離子體設(shè)備霧化管理系統(tǒng)的數(shù)據(jù)采集、初始數(shù)據(jù)處理和下位機設(shè)備的控制,下位機系統(tǒng)的PLC 可以連接水溫傳感器、水流量傳感器、氣體流量計和霍爾傳感器等,并將實時收集到的測量參數(shù)傳送至PLC,以進行臨時數(shù)據(jù)儲存,當(dāng)上位機向下位機發(fā)出讀取參數(shù)的控制命令時,下位機通過以太網(wǎng)將臨時儲存的數(shù)據(jù)實時傳送連接到主機客戶端,以便后續(xù)進行處理。下位機系統(tǒng)連接有等離子體電源、伺服氣流量計等多個電子控制驅(qū)動裝置,通過網(wǎng)絡(luò)通訊, 當(dāng)上位機向下位機發(fā)送控制命令時,相關(guān)設(shè)備可以按照設(shè)備相應(yīng)的控制命令進行操作,以實現(xiàn)實時控制。上位機的軟件系統(tǒng)作為與操作者交互的關(guān)鍵平臺,分為前端和后端兩部分,WPF主要負(fù)責(zé)前端與用戶互動,C# 作為后端, 進行數(shù)據(jù)處理和存儲。軟件系統(tǒng)可以實現(xiàn)實時處理和顯示數(shù)據(jù)和圖片、等離子體霧化設(shè)備的監(jiān)控和數(shù)據(jù)存儲和相關(guān)設(shè)備的遠(yuǎn)程控制等。
基于以太網(wǎng)的PC 客戶端的作業(yè)流程如圖3所示,客戶端主要完成兩部分內(nèi)容。一是PC 客戶端向下位機發(fā)送讀寫數(shù)據(jù)的命令,下位機接收報文后反饋。工控機客戶端實時接收下位機發(fā)送的反饋數(shù)據(jù)并對其進行實時分析、存儲和實時顯示;另一個是PC 監(jiān)控客戶端通過以太網(wǎng)接口TCP 和IP 協(xié)議直接獲得下位監(jiān)控設(shè)備上的相關(guān)監(jiān)控信息數(shù)據(jù)后,進行數(shù)據(jù)顯示和分析診斷并實現(xiàn)實時的智能控制。這兩種監(jiān)控功能分別在兩個獨立的子線程中執(zhí)行,PC監(jiān)控客戶端在子線程收到監(jiān)控數(shù)據(jù)后,按照一個指定線程形式對其進行解釋,然后在子線程1 將監(jiān)控數(shù)據(jù)進行傳送連接到一個主線程,主線程在線程收到監(jiān)控數(shù)據(jù)后,在用戶界面的適當(dāng)位置實時進行數(shù)據(jù)的顯示,如果數(shù)據(jù)經(jīng)過判斷屬于異常數(shù)據(jù),則通過顏色、形態(tài)的變化友好地提示用戶設(shè)備出現(xiàn)了異常狀態(tài)。同時,子線程2 對主機接收采集到的在線監(jiān)控數(shù)據(jù)視頻信息流數(shù)據(jù)進行接收和預(yù)處理,在進行預(yù)處理之后將視頻圖片信息發(fā)送到主線程中,由主線程在用戶界面中進行友好地顯示。此外,在主線程中會對設(shè)備狀態(tài)進行實時的診斷和智能控制,當(dāng)任何設(shè)備出現(xiàn)異常狀態(tài)時,軟件系統(tǒng)可以智能診斷出異常狀態(tài),然后軟件系統(tǒng)會自動向下位機發(fā)出控制裝置命令,解除下位機設(shè)備的錯誤狀態(tài)。

圖3 系統(tǒng)工作流程Fig.3 System work flow chart
MODBUS 網(wǎng)關(guān)作為上位機與等離子體電源通訊的中間設(shè)備, 具有極其重要的地位。上位機與MODBUS 網(wǎng)關(guān)的通訊,采取了基于以太網(wǎng)的MODBUS 協(xié)議。
本文基于以太網(wǎng)和MOSBUS 網(wǎng)關(guān)實現(xiàn)了上位機與等離子體電源柜之間的MOSBUS 通信。MODBUS 支持RTU 和ASCII 兩種數(shù)據(jù)幀的模式。本研究中提出了等離子體霧化控制系統(tǒng)即采用了RTU 的數(shù)據(jù)幀模式。基于MODBUS/TCP 實現(xiàn)讀取命令的數(shù)據(jù)幀如表1所示。RTU 數(shù)據(jù)幀的主要優(yōu)點就是在相同的波特率下,它可以比ASCII 方式傳輸更多的數(shù)據(jù)。

表1 基于MODBUS/TCP 實現(xiàn)讀取的數(shù)據(jù)幀Tab.1 Data frame of read command in MODBUS/TCP
基于MODBUS/TCP 的讀取命令數(shù)據(jù)幀示例如表1所示。PC 客戶端向下位機請求1 號等離子電源單電壓寄存器的數(shù)據(jù)格式, 共8 字節(jié)。消息包含8字節(jié)的主機號、功能碼、起始地址、數(shù)據(jù)量和CRC 校驗位。功能碼03 代表該數(shù)據(jù)幀命令的含義是讀取寄存器數(shù)據(jù),地址2 對應(yīng)于1 號等離子電源的電壓讀取寄存器號為2。MODBUS 網(wǎng)關(guān)接收并分析指令后,將響應(yīng)數(shù)據(jù)幀返回上位機。響應(yīng)幀的格式如表2所示,共有10 位。返回的數(shù)據(jù)是十六進制的電壓信號,對應(yīng)259 V,利用該方法只需要改變起始地址,就可以得到多個等離子電源的電壓、電流和功率的等值。如果功能代碼更改為04,則會寫入該值,就實現(xiàn)了對等離子電源的控制。

表2 下位機收到讀取信號后回復(fù)的數(shù)據(jù)幀Tab.2 Data frame returned by lower computer after receiving read signal
TCP/IP+PLC 的控制模式是目前工業(yè)應(yīng)用最廣泛的自動化控制方式。在進行數(shù)據(jù)交換之前,需要與通信者建立一條路徑,不僅要確定通信者之間現(xiàn)有的路由,而且還確保通信雙方都是活躍的,能夠相互響應(yīng),并確保傳遞的數(shù)據(jù)是正確的。但是,這需要大量的通訊才可以確定接收者和發(fā)送者之間的連接暢通。由于工業(yè)現(xiàn)場的數(shù)據(jù)非常重要,需要保證數(shù)據(jù)不丟失,為了保證通信的準(zhǔn)確性,在等離子體霧化在線監(jiān)控軟件系統(tǒng)中采用了面向連接的通信方式。
2.2.1 PLC 通訊程序
為了讓S7-400 PLC 能夠與PC 機通信,需要通過互聯(lián)網(wǎng)網(wǎng)關(guān)模塊將S7-400 PLC 連接到以太網(wǎng),并設(shè)置正確的IP 地址和網(wǎng)關(guān)等PLC 控制信息。為了與通信伙伴(即上位機)進行通信,需要預(yù)先設(shè)置好PLC 的IP 地址和PLC 的運行端口號, 在網(wǎng)絡(luò)協(xié)議欄中選擇TCP 協(xié)議。此外,以TCP 方式進行通信時,雙方應(yīng)分別設(shè)置為服務(wù)器端和服務(wù)器端。在本文的研究中,S7-400 PLC 以服務(wù)器方式運行,PC 機以客戶端方式運行。為了實現(xiàn)交流S7-400 PLC 的通用通信功能塊,首先需要將PLC 采集到的數(shù)據(jù)復(fù)制到PLC 中一塊指定的內(nèi)存中,并將待發(fā)送的數(shù)據(jù)排隊,在適當(dāng)?shù)臅r間內(nèi)將緩存的數(shù)據(jù)傳送到以太網(wǎng)上的上位機。圖4展示PLC 程序的運行邏輯。

圖4 PLC 程序的運行邏輯Fig.4 Operation logic of PLC program
2.2.2 PC 端通訊程序
在C# 中自帶了支持TCP/IP 協(xié)議的Winsock包,利用這個包可以方便地實現(xiàn)應(yīng)用程序的網(wǎng)絡(luò)通訊功能。Winsock 提供了2 種套接字通訊方式:阻塞和非阻塞;同時Winsock 也提供了幾種模型,主要包括Overlapped I/O 以及Com-port 等等。因PLC 何時發(fā)送數(shù)據(jù)很難確定,因此采用多線程和非阻塞式通訊。
等離子體霧化的軟件系統(tǒng)主要負(fù)責(zé)實時發(fā)送讀取、控制命令給下位機系統(tǒng),并實時解析下位機反饋上來的反饋數(shù)據(jù)幀, 在將數(shù)據(jù)幀解析出數(shù)據(jù)后,再將數(shù)據(jù)友好地展示在用戶界面上。本研究的軟件系統(tǒng)使用了多線程以提高工控機CPU 的可用性,其中子線程負(fù)責(zé)與下位機連接,并發(fā)送讀取、控制的數(shù)據(jù)幀;此外子線程還可以實時接收并解析下位機反饋的數(shù)據(jù)幀,并將解析出來的數(shù)據(jù)發(fā)送給主線程以便進一步的展示和分析。上位機中的軟件系統(tǒng)向等離子體霧化設(shè)備發(fā)送查詢相關(guān)參數(shù)的命令,下位機接收到查詢命令后,回復(fù)上位機希望查詢的數(shù)據(jù),上位機收到回復(fù)的收據(jù)后,根據(jù)MODBUS 協(xié)議的數(shù)據(jù)幀進行解讀。等離子體霧化系統(tǒng)總共3 把等離子體發(fā)生器,每個發(fā)生器都有電壓、電流、功率和啟停狀態(tài)等參數(shù),這些參數(shù)均可以通過MODBUS通訊的方式獲取。此外,軟件界面要實時顯示所有數(shù)據(jù)的數(shù)值和狀態(tài)。
如圖5所示,視頻監(jiān)控模塊主要包括影像采集和本地視頻顯示、存儲兩部分,在遠(yuǎn)程影像采集模塊收集影像后, 通過以太網(wǎng)傳送到工控機客戶端,工控機客戶端接收影像數(shù)據(jù)后進行分析、實時顯示和儲存影像內(nèi)容。

圖5 客戶端視頻模塊工作流程Fig.5 Client video module work flow chart
提出的等離子體霧化在線監(jiān)控軟件,利用WPF的標(biāo)準(zhǔn)控件來進行軟件開發(fā), 利用WPF 中的圖片/視頻顯示控件實時顯示相機獲取到的現(xiàn)場環(huán)境圖像。在工控機上用戶進行視頻影像信息顯示時主要執(zhí)行操作兩個部分。一是通過通訊手段,將工控機連接到相機,實時獲取相機采集到的圖像信息并進行預(yù)處理;二是在軟件的圖片/視頻顯示控件上實時顯示圖像。本研究中,采用了多線程技術(shù),一個子線程用于與相機構(gòu)建通訊,接收來自相機的圖像信號,然后發(fā)送到主線程以進行圖像的實時顯示。主線程在主窗口進行繪圖,實時地顯示監(jiān)控視頻圖像。
客戶端的視頻工作流程如下:首先,利用VS2019設(shè)計用戶界面,在用戶界面的合適位置放置圖片/視頻控件用以顯示攝像頭獲取的圖像信息。相機獲取的圖片,實時通過網(wǎng)絡(luò)實時發(fā)送給上位機的軟件系統(tǒng)。軟件系統(tǒng)獲取了圖片信號后就可以更新圖片/視頻控件中的內(nèi)容。為了保證圖片的連續(xù)性和播放連貫性, 設(shè)置了定時器來循環(huán)變換相機獲取的圖像,這使得畫面可以在短時間間隔內(nèi)連續(xù)播放,只要間隔足夠短,就可以成為連續(xù)視頻,這種方式實現(xiàn)的視頻畫面流暢、不粘滯、清晰度高。參數(shù)顯示模塊和視頻顯示模塊在軟件中的布局如圖6所示。

圖6 參數(shù)顯示模塊和視頻顯示模塊Fig.6 Parameter display module and video display module
本研究設(shè)計的等離子體霧化在線監(jiān)控和診斷軟件系統(tǒng)利用WPF 和C# 軟件,實現(xiàn)了等離子體霧化過程的實時數(shù)據(jù)監(jiān)控、數(shù)據(jù)采集和保存、系統(tǒng)控制。系統(tǒng)軟件運行穩(wěn)定、操作簡單方便,具有一個可視化的自動人機交互操作界面,布局合理,各個主要功能模塊集中自動顯示,使用靈活。系統(tǒng)各個功能模塊功能獨立、效率較高,對等離子體霧化的自動控制具有重大的意義, 將使這一系統(tǒng)更安全、高效、通用性更好。