張博 霍天龍
摘要:實際生產中,中小型自動化生產線很少攜帶生產過程信息。為解決生產過程信息實時掌握困難、可視化程度低等問題,提出了一種基于以太網通訊的中小型自動化生產線生產過程信息自動化的設計。使用西門子CP343-1模塊的以太網通訊功能和C#進行信息交互,依靠PLC強大的邏輯功能及信息處理能力,對物料信息進行跟蹤記憶,實現生產信息自動獲取、自動傳輸。應用結果表明了該方法的有效性。
關鍵詞:中小型;自動化生產線;生產過程信息;以太網
中圖分類號:TP278 文獻標志碼:A 文章編號:1009—9492(2021)03—0153—02
0引言
“中國制造2025”提出,以體現信息技術與制造技術深度融合的數字化、網絡化、智能化制造為主線,加快我國工業自動化進程。隨著人力成本的不斷增加,大部分生產制造類企業出現了用工難問題,傳統的自動化生產線要求完全脫離人工。然而實際生產中,雖然生產過程能夠實現自動化,但產品生產過程信息卻很少能夠達到設備的工位級,即生產線上的產品是沒有“身份”的,往往需要操作人員參與。針對此問題,本文以成品物料垛盤輸送生產線為例,結合PLC的以太網通訊功能,從上位機獲取產品的生產信息,依靠PLC強大的邏輯功能及信息處理能力對物料信息進行跟蹤記憶,實現了物料信息的自動化獲取和傳輸。
1 PLC以太網通訊
工業以太網是基于IEEE 802.3的強大區域和單元網絡。利用工業以太網,西門子SIMATIC NET提供了一個無縫集成到新的信息世界的途徑。西門子PLC以太網通訊的類型有很多,不同的用戶技術需求下可以采用相應性能的以太網。常見的以太網通信主要有ISO、ISO-on-TCP、TCP/IP、UDP等類型傳輸協議。ISO傳輸連接用于S5站和s7站或PC站之間的數據交換(S5兼容通訊)。ISO-on-TCP傳輸連接用來進行S5站和S7站或PC站間的數據交換(兼容S5的通訊)。TCP/IP連接的配置用于西門子系列PLC與第三方的控制系統進行數據交換。UDP類型的協議用于實現西門子控制器兩站間的數據交換。本文采用TCP/IP和C#軟件進行通訊。TCP通信傳送數據前,雙方必須對通信進行初始化,并得到對方的認可。TCP協議位于ISO/OSI參考模型的傳輸層,是一種面向連接的通信,即發送方與接收方通信時,必須首先建立連接,主動方為客戶端,被動方為服務器。本文中,PLC作為服務器,C#作為客戶端。
2系統通訊設計
2.1硬件
成品垛盤輸送控制系統集成有ABB機器人用于料袋碼垛,觸摸屏用于人機信息交互。ABB機器人掛接PLC的DP口,使用Profibus總線協議與PLC通信,觸摸屏連接在PLC的MPI口,采用MPI協議與PLC進行信息交互。本案例中采用CP343-1以太網模塊和第三方的上位機軟件C#,利用網線連接采用TCP/IP協議建立通訊。通訊模型如圖1所示。
2.2軟件
打開西門子SIMATIC Manager軟件,插入SIMATIC 300station站點,根據實際PLC組成,分別插入對應的CPU和I/O模塊,再插入CP343-1以太網模塊,如圖2所示。IP組態設置在“屬性Ethernet接口”對話框中,設置lP地址,配置CP343-1模塊IP地址為192.168.1.107,子網掩碼為255.255.255.0,并新建Ethernet子網。此外,還應該寫入以太網模塊的MPI地址,如果PLC使用了MPI協議與其他控制器連接,應注意此處的MPI地址不能和CPU中的地址重復,否則會造成CPU報警,導致以太網模塊出錯,不能正常使用。
打開通信連接,選中CPU模塊,插入新連接,項目中選擇默認的未指定,連接類型選擇TCP連接,標識號選擇002A050,本地端口號設置為2000。遠程IP地址和端口號默認為空白。以上步驟完成后,應對配置進行保存、編譯及下載,否則通信連接不能設置成功。如圖3所示。
OB1為PLC的主模塊,即PLC的程序執行總是從OB1開始。打開OB1模塊進行通訊部分程序編寫,從庫函數中分別插入FC5和FC6,用于PLC和C#的數據發送和接收。如圖4所示。新建DB1和DB2數據塊,分別用來對發送和接收的數據做存儲處理,CP343-1和C#發送以及接收數據長度為10 WORD。FC5為信息發送功能塊,EN為該功能塊的使能端,ID和LADDR為配置硬件時自動生成的,按照硬件配置填寫即可。SEND為發送數據的起始地址,該位置應引用指針變量,LEN為發送數據的長度,單位是WORD,DONE為發送數據結束通知位,數據發送完成后,在PLC的一個掃描周期內該位置“1”。ERROR為出錯通知位,使用FC5功能塊發送數據出錯時,該通知位將在一個周期內置“1”,STATUS為發送狀態字,可以用來查詢發送數據的狀態。實際發送數據時,當ACT被觸發后,指針指向的起始地址P#DBl.DBX0.0以后的10個字被發送。FC6為信息接收功能塊,各個引腳功能與發送功能塊類似,在此不做贅述。當有新信息傳送時,NDR通知位M4.1置1,代表有新的數據從C#傳輸到PLC中。新的數據臨時存放在指針變量P#DB2.DBX0.0指向的起始地址為DB2.DBW0以后的10個字中。可用M4.1作為條件把新的數據拷貝到其他的DB數據區中做處理。
3應用實例
3.1系統模型
把第2節介紹的方法應用于實際工程項目。如圖5所示,該系統為某化工廠成品物料后處理系統中的垛盤輸送系統。該系統完成的功能:對上游包裝機系統處理好的成品物料在托盤上進行碼垛。碼垛完成的物料垛盤被自動地輸送至薄膜纏繞工位進行纏膜,以防止物料潮濕。纏膜完成后,垛盤自動地被輸送至貼標工位。當垛盤在該工位停穩后,PLC把需貼標的信息經過C#中轉后送入貼標機,控制其對物料貼標簽。PLC收到貼標完成信號后,控制垛盤輸送機運行,把物料輸送至電梯井中升降轎廂中,升降機自動把物料垛盤提升至二樓。升降機停穩后,轎廂輸送機及垛盤緩存工位處輸送機同時運行,帶動垛盤經由垛盤緩存工位進入立體庫系統,完成一垛物料的生產。本案例中,物料工位間的輸送均攜帶有垛盤上的物料信息。
3.2信息傳遞過程設計
系統運行后,操作人員使用c#軟件從用戶數據庫找到當前生產的物料信息,通過以太網通訊把物料信息發送給PLC。PLC根據當前生產班組,把從觸摸屏收到的牌號、生產流水號等信息自動累加,把累加結果儲存到指定的DB數據存儲區,再把從C#接收到的物料信息等(包括批次號、班組號等信息)存儲到相應的DB數據存儲區。當碼垛完成一垛新的物料后,PLC收到機器人碼垛完成信號,觸發垛盤從碼垛工位輸送至薄膜纏繞工位。利用PLC工位間的傳送記憶中間變量,把當前生產班組、物料生產流水號、批次號、牌號等信息連同垛盤一起傳送至下一工位,其中信息傳遞采用SFC20,如圖6所示,為本案例中相鄰工位信息傳遞程序。
SFC20為數據存儲、移動功能塊。使用SFC20“BLK-MOV”(塊移動)可將存儲器區(=源區域)的內容復制到另一個存儲器區(=目標區域)。M1.0為ON時為系統進入運行狀態,Q36.3和Q36.4分別為薄膜纏繞工位與貼標電機運行,DB6.DBX1.6為上一工位向下一工位運行中間過程記憶,垛盤被輸送至下一工位觸發薄膜纏繞工位檢測開關后,該中間變量被復位。DB10.DBW80至DB10.DBW118區域為薄膜纏繞工位的信息記憶存儲區。垛盤輸送至貼標工位時,PLC把信息發送給組態好的貼標機,對垛盤上的物料自動貼標簽。垛盤進入立體庫系統時,PLC把相應的物料進入聯鎖請求信號以及生產過程信息一并發送給C#,C#根據收到的立體庫系統狀態,把信號反饋給PLC。
4結束語
本文結合西門子PLC的以太網通訊模塊,使用TCP/IP協議與第三方C#軟件,提出了一種帶有信息自動化的垛盤輸送生產線控制系統設計方法。實際應用結果表明了其有效性,本研究得出以下主要結論。
(1)生產線上各個工位的生產信息清晰明了,便于查看。
(2)由于物料帶有生產信息,使得貼標機標簽信息更加全面,豐富了用戶的產品數據庫。
(3)與下游立體庫系統交接時,免去了以往信息交互需人工參與的麻煩。
(4)為中小型自動化生產線控制系統實現訂單式、數字化生產提供設計思路。