浙江中煙工業有限責任公司杭州卷煙廠 張弛,范禮峰中科院合肥物質研究院常州先進所 王玉
西門子PLC I-Device Connection與S7 Connection在條煙與煙箱輸送線中的應用
浙江中煙工業有限責任公司杭州卷煙廠 張弛,范禮峰
中科院合肥物質研究院常州先進所 王玉
杭州卷煙廠卷包車間條煙與煙箱輸送線是條煙運輸及件煙送入高架庫的重要樞紐橋梁,它每天都承擔著繁重的運輸任務,一旦出現停機,就需要大量的人力投入才能保證產品順利地進入下一環節。由于條煙與煙箱輸送線連接了超高速包裝機、國產高速包裝機、中速包裝機、條煙收集機、封箱機等諸多機型,節點組成復雜,上下游配合密切,因此它的電控設計要求網絡通信能力強,實時傳輸數據速度快,既能夠集中控制管理也能分流水線控制管理,且系統可靠性高。
條煙與煙箱輸送線涉及到卷包車間的諸多環節,車間有三條生產線,每條生產線有8~12臺生產設備,它們生產出的產品需要送到封箱機進行箱裝打包,然后送入碼垛區進行碼垛。從控制學角度來說,應有一個可控制三條生產線和煙箱輸送線的設備,而且每條生產線要有一個可整體控制輸送線啟停設備,每條生產線的各臺生產設備可以獨自控制產品是否通過輸送線運送。因此設計上應該有一個主控制柜,可整體控制三條條煙輸送線和煙箱輸送線。三條流水線各有一個分控柜。還包括了條煙提升、條煙收集機、條煙輸送動力頭、箱裝輸送、箱裝稱重、箱裝提升等64個子站。
當前西門子PLC基于工業以太網的通信方式有“S7 Connection”、“UDP Connection”、“PROFINET IO”、“ISO on TCP Connection”、“PROFINET IO I-Device Connection”等等。現在大多數系統都使用“S7 Connection”通信,而在實際應用中,我們選擇了S7 Connection與PROFINET IO I-Device Connection的混合連接方法,如圖1所示。現場有一個總電控柜(使用S7-400 PLC),三條條煙輸送線和兩條件煙輸送線,每條條煙輸送線有1個分控柜(使用S7-300 PLC),28臺提升機、13臺收集機、19個動力頭,在手動狀態下可以單獨控制,自動狀態下通過網絡給予的條件控制自動運行(為滿足此條件,特選型IM151-8 PN/DP CPU)。在這樣一個龐大的系統里,將3個分控柜的S7-300PLC和總電柜里的S7-400PLC通過“S7 Connection”連接通信,子站與分控柜之間的通信就使用PROFINET IO I-Device Connection的方法,方便快捷實時。這樣的設計方案,已經應用在實際生產中,達到預期效果。下面就簡單介紹一下這種混合連接的組態與編程方法。

圖1 現場設備站點通信圖
主控柜掛一個414-3PN/DP CPU,每條流水線分控柜掛一個315-2PN/DP CPU,主控柜與每個流水線的分控柜走“S7 connection”通信,每條流水線的分控柜下掛自己流水線內的帶CPU的PROFINET IO子站(IM151-8 PN/DP CPU),PROFINET IO子站下還掛了一系列走PROFIBUS-DP的變頻器從站,分控柜通過PROFINET IO I-Device Connection連接方式與下掛子站實時通信,從分控柜觸摸屏就可以設置自己流水線內子站的班次、牌號等數據,并且能得到來自子站的故障信號和產量數據等,還可以改變子站下從站變頻器的參數,控制子站下電機的運行狀態。系統連接示意圖,如圖2所示。

圖2 整體設備系統連接示意圖
2.1主控柜PLC
硬件配置:S7-400 PLC ,CPU:414-3PN/DP。
硬件組態如圖3所示。

圖3 S7-400 PLC硬件組態
2.2分控柜PLC
硬件配置: S7-300 PLC,CPU:315-2PN/DP。
硬件組態如圖4所示。

圖4 S7-300 PLC硬件組態
2.3子站PLC
硬件配置:ET200S,CPU:IM151-8 PN/DP。
硬件組態如圖5所示。

圖5 IM151-8 PN/DP CPU硬件組態
3.1S7連接的網絡組態
打開SIMATIC MANAGER,選中自己設定的項目,在右邊項目欄里雙擊“Ethernet(1)”選項(圖6)。

圖6 SIMATIC MANAGER窗口
在打開的”NetPro”窗口中,右擊CPU 414-3pn/dp,選中“Insert New Connection”,在彈開的窗口中選擇三個分控柜的PLC項目,在Type欄選擇“S7 Connection”(圖7)。

圖7 Insert New Connection
3.2PROFINET IO I-Device的網絡組態
以A1提升機子站為例來說:首先在A1子站的硬件組態里的網絡屬性中選擇I-Device,然后勾選“I-Device mode”,并勾選第二個選項作為較高級設備共享,如圖8所示。

圖8 I-Device設備共享設置
然后點擊下方“NEW”選項,增加需要進行網絡交換的IO點數和長度,這里需要在“Transfer area type”一欄中選擇“Application”,然后選擇32位長度的INPUT和OUTPUT點,如圖9所示。

圖9 Transfer area type
設置完畢后,點擊Options選項里的Create GSD file for I-Device創建一個它特有的I-Device網絡交換設備的GSD文件以便分控柜組態使用。如圖10所示。

圖10 創建GSD文件
創建完成后,回到分控柜S7-300 PLC里的硬件組態,完成最關鍵的一步,就是把剛才創建的GSD文件添加到PROFINET IO SYSTEM里,如圖11所示。

圖11 添加GSD文件至PROFINET IO SYSTEM
依次把各條流水線內的子站全部掛入PROFINET IO SYSTEM里,在S7-300主站里得到了每個子站的I address和Q address。這個地址就是分控柜與子站通信的識別地址,有了這個地址,只要在程序里將這些I地址的內容傳遞到自己的DB塊里,或者將自己的數據如牌號班次等傳遞到Q地址里去。需要注意的是,因為在S7-300 PLC組態里每個子站的I address和Q address是相對于主站來說的,也就是說可以把這些I address當作是主站的輸入點,把Q address當作是主站的輸出點。所以當主站做通信編程的時候,要以這個為基礎。而在子站做通信編程的時候,就是以子站為主體,上文提到的做I-Device通信組態的時候的I點和Q點,這時候就是子站的I和Q,與主站通信得到的內容應該寫在I點里,發給主站的內容應該寫在Q點里。
通信程序的編寫分兩大塊,一方面是S7通信的程序編寫,另一方面是PROFINET IO I-Device Connection的通信程序編寫。因為通信是主站與子站、子站與主站的自由實時通信,所以我們既要在主站里寫傳遞語句,也要在子站里寫傳遞語句。
4.1S7通信程序編寫
S7通信是雙邊進行的,因此需要在主控柜S7-400 PLC里和分控柜S7-300 PLC里編寫通信程序。但好處在于S7通信有標準的功能塊SFB12和SFB13,只需要調用便可。以主控柜和A分控柜通信為例說明。下面是主控柜里的程序:
第一段:主控柜數據到A分控柜(圖12)

圖12 S7-400主控柜數據到A分控柜程序
第二段:A分控柜數據到主控柜(圖13)

圖13 S7-400 A分控柜數據到主控柜程序
A分控柜里的程序,第一段:主控柜數據到A分控柜(圖14)
第二段:A分控柜數據到主控柜(圖15)

圖14 S7-300主控柜數據到A分控柜程序

圖15 S7-300 A分控柜數據到主控柜程序
由于都是常見的S7通信,有很多關于S7通信的教程,所以本文就不展開了,在此主要介紹PROFINET IO I-Device Connection的語句編寫。
4.2主站通信語句的編寫
由于主站網絡組態下掛的子站與子站的I address地址和Qaddress地址是默認設置為連續的,因此給編寫程序帶來了極大的方便,只要用到一個簡單的指針尋址和循環就可以把雙邊的數據進行傳遞,大大減少了工作量。下面是A分控柜的通信塊程序FC1:
第一段:提升機數據到分控柜
OPN DB 8
LAR1 P#832.0
LAR2 P#0.0
L 72
_001: T #times_1
L PID [AR1,P#0.0]
T DBD [AR2,P#0.0]
+AR1 P#4.0
+AR2 P#4.0
L #times_1
LOOP _001
第二段:分控柜數據到提升機
OPN DB9
LAR1 P#0.0
LAR2 P#880.0
L 72
_003: T #times_2
L DBD [AR1,P#0.0]
T PQD [AR2,P#0.0]
+AR1 P#4.0
+AR2 P#4.0
L #times_2
LOOP _003
這兩段程序都是通過執行72次循環,每1次循環中地址指針向后移4個字節,也就是說主站向子站傳遞了288字節的數據,子站也向主站傳遞了288字節的數據。在OB1主程序里調用FC1通信塊程序,只要上電后,網絡組態內的子站便和分控柜S7-300 PLC實時做數據交互。不論數據如何改變,只要主站和子站都在網絡里,都在運行狀態,數據便實時交互。
4.3子站通信語句的編寫
子站通信塊程序與主站的通信塊程序類似,只要遵循3.2節中所說的特別要注意的規則,就下面以A1提升機子站為例,子站的通信程序塊FC1如下:
第一段:分控柜數據到提升機
OPN DB5
LAR1 P#256.0
LAR2 P#32.0
L 8
_001: T #times_1
L PID [AR1,P#0.0]
T DBD [AR2,P#0.0]
+AR1 P#4.0
+AR2 P#4.0
L #times_1
LOOP _001
第二段:提升機數據到分控柜
OPN DB5
LAR1 P#256.0
LAR2 P#0.0
L 8
_002: T #times_2
L DBD [AR2,P#0.0]
T PQD [AR1,P#0.0]
+AR1 P#4.0
+AR2 P#4.0
L #times_2
LOOP _002
這兩段程序主站和子站之間互相傳遞了32字節的數據,上電后便不斷跟主站做著交互,這樣A分控柜主站與A1提升機子站之間的雙邊通信都已經完成。按照相同編程的思路,把其他子站統統寫好通信塊,這樣PROFINET IO I-Device Connection的架構已經完成。接下來,就可以寫每臺設備各自的程序了。
S7 Connection與PROFINET IO I-Device Connection的混合連接雖然要求通信的雙方都要進行組態和編程,但是它的組態和編程都極其方便,而且當出現其中一個子站或多個子站掉站的情況,也不會對其他子站與主站的通信有影響。因此,系統具有穩定的狀態和可靠的網絡成了它最大的優點。對于工控編程者來說,在實際應用中,遇到有多個子站而且既要可以遠程集中控制又可以本地控制的時候,就可以采用PROFINET IO I-Device Connection方法來組態和編程。如果需要多個遠程點控制,那就可以使用本文所說的S7 Connection與PROFINET IO I-Device Connection混合連接的方法。
[1] 西門子公司. SIEMENS. S7 - 400可編程序控制器產品目錄[Z].2003.
[2] 西門子公司. SIEMENS. S7 - 300可編程序控制器產品目錄[Z].2003.
[3] 西門子公司. SIMATIC自動化系統 S7 - 300入門指南[Z]. 2006.
張弛(1987-),現任浙江中煙工業有限責任公司杭州卷煙廠卷包車間電氣保養工。曾作為主要參與人開發的項目《基于PROFINET協議條煙輸送線故障統計分析系統的設計》獲得2014年全國設備管理一等獎。主要研究方向為西門子PLC自動控制、自動化生產線系統的開發和優化。
Application of Siemens PLC's I-Device Connection and S7 Connection in the Conveying Line of Cigarette Box and Carton
本文詳細介紹了基于工業以太網的西門子PLC中PROFINET IO IDevice Connection與S7 Connection混合連接的組態與編程方法,并成功應用于杭州卷煙廠條煙與煙箱輸送線,實現了既能在子站獨立控制,又能在主站集中控制管理的模式,較好地適用于車間生產流水線。該系統具有實時交互能力強,投入管理時間少,系統可靠性高的特點,在其中某一個子站或多個子站掉站的情況下,系統還能保證其他節點正常運行。
PLC;PROFINET IO I-Device Connection;S7 Connection;
This paper provides a detailed introduction for the configuration and programming method for the hybrid junction between Siemens PCL's PROFINET IO I-Device Connection and S7 Connection based on Industrial Ethernet. This system, which has been successfully applied to the conveying line of cigarette box and carton in HangZhou cigarette factory, is able not only to realize independent control in substation but also to adopt the centralized control management mode in master station. Thus, it can be effectively utilized for the production line in workshop. Characterized by strong real-time interactivity, little management time, and high reliability, this system can still ensure the normal operation of other nodes despite the failures of one or more substations..
PLC; PROFINET IO I-Device Connection; S7 Connection;