摘 要:本文對 S7-300 和 S7400 集成 PN 口與 S7-200 SMART PLC 的 S7 通信做了基本介紹,對其配置步驟以及編程方法作了完整的描述,。 關鍵詞:PN 接口,,S7 通信,編程 Key Words:PN Interface,,S7 Communication,,Programming S7 通信是 S7 系列 PLC 基千 MPI、PROFIBUS,、ETHERNET 網(wǎng)絡的一種優(yōu)化的通信協(xié)議,,主要用千 S7-300/400PLC 之間的通信,。S7-200 SMARTPLC V2.0 版本支持 SMART PLC 之間的 PUT/GET 通訊,經(jīng)過測試發(fā)現(xiàn) S7-300/400 集成的 PN 口與 S7-200 SMART PLC 之間的 PUT/GET 通訊也是可以成功的,,但是需要 S7-300/400 側編程調用 PUT/GET指令,。S7-300/400 集成 PN 口調用的功能塊的調用如圖 1、圖 2 所示,。 表1 圖1
圖2
要通過 S7-300/400 CPU 的 集成 PROFINET 接口實現(xiàn) S7 通信,,需要在硬件組態(tài)中建立連接,。 CPU 采用 1 個 315-2PN/DP,1 個 S7-200 SMART PLC 使用以太網(wǎng)進行通信,。 在 STEP7 中創(chuàng)建一個新項目,,項目名稱為 S7-300-SMART。插入 1 個 S7-300 站,,在硬件組態(tài)中插入 CPU 315-2 PN/DP,。如圖 3 所示。 圖3 設置 CPU 315-2PN/DP 的 IP 地址:192.168.0.1,,如圖 4 所示,。硬件組態(tài)完成后,即可下載該組態(tài),。 圖4 打開“NetPro'設置網(wǎng)絡參數(shù),,選中CPU 315-2PN/DP,在連接列表中建立新的連接,。步驟如圖 5 所示,。 圖5
選擇 Unspecified 站點,,選擇通訊協(xié)議 S7 connection,,點擊 Apply,如圖 6 所示,。 圖6 在彈出的 S7 connection 屬性對話框中,,勾選 Establish an active connection,設置Partner address:192.168.0.2(S7-200 SMART PLC IP 地址),如圖 7 所示,。 圖7
點擊 Address Details ,,再彈出來的對話框設置 Partner 的 Slot 為 1,如圖 8 所示,。點擊 OK 即可關閉該對話框,。 圖8 網(wǎng)絡組態(tài)創(chuàng)建完成后,需要編譯,,如圖 9 所示,。 圖9
網(wǎng)絡組態(tài)編譯無錯,,鼠標先點擊 CPU 315-2PN/DP ,然后點擊下載按鈕下載網(wǎng)絡組態(tài),步驟如圖 10 所示,。 圖10 可以通過 SFB/FB 14 'GET',,從遠程 CPU 中讀取數(shù)據(jù)。
S7-300:在 REQ 的上升沿處讀取數(shù)據(jù),。在 REQ 的每個上升沿處傳送參數(shù) ID,、ADDR_1和 RD_1。在每個作業(yè)結束之后,,可以分配新數(shù)值給 ID,、ADDR_1 和 RD_1 參數(shù)。 S7-400:在控制輸入 REQ 的上升沿處啟動 SFB,。在此過程中,,將要讀取的區(qū)域的相關指針(ADDR_i)發(fā)送到伙伴 CPU。遠程伙伴返回此數(shù)據(jù),。在下一個 SFB/FB 調用處,,已接收的數(shù)據(jù)被復制到組態(tài)的接收區(qū)(RD_i)中。必須要確保通過參數(shù) ADDR_i 和 RD_i 定義的區(qū)域在長度和數(shù)據(jù)類型方面要相互匹配,。 通過狀態(tài)參數(shù) NDR 數(shù)值為 1 來指示此作業(yè)已完成,。只有在前一個作業(yè)已經(jīng)完成之后, 才能重新激活讀作業(yè),。遠程 CPU 可以處千RUN 或 STOP 工作狀態(tài),。如果正在讀取數(shù)據(jù)時發(fā)生訪問故障,或如果數(shù)據(jù)類型檢查過程中出錯,,則出錯和警告信息將通過 ERROR 和STATUS 輸出表示,。 通過使用 SFB/FB 15 'PUT',可以將數(shù)據(jù)寫入到遠程 CPU,。 S7-300:在 REQ 的上升沿處發(fā)送數(shù)據(jù),。在 REQ 的每個上升沿處傳送參數(shù) ID、ADDR_1和 SD_1,。在每個作業(yè)結束之后,,可以給 ID、ADDR_1 和 SD_1 參數(shù)分配新數(shù)值,。 S7-400:在控制輸入 REQ 的上升沿處啟動 SFB,。在此過程中,將指向要寫入數(shù)據(jù)的區(qū)域(ADDR_i)的指針和數(shù)據(jù)(SD_i)發(fā)送到伙伴 CPU,。遠程伙伴將所需要的數(shù)據(jù)保存在隨數(shù)據(jù)一起提供的地址下面,,并返回一個執(zhí)行確認。必須要確保通過參數(shù) ADDR_i 和 SD_i 定義的區(qū)域在編號,、長度和數(shù)據(jù)類型方面相互匹配,。 如果沒有產(chǎn)生任何錯誤,,則在下一個 SFB/FB 調用時,通過狀態(tài)參數(shù)DONE 來指示,,其數(shù)值為 1,。只有在最后一個作業(yè)完成之后,才能再次激活寫作業(yè),。遠程 CPU 可以處千RUN 或 STOP 模式,。如果正在寫入數(shù)據(jù)時發(fā)生訪問故障,或如果執(zhí)行檢查過程中出錯,,則出錯和警告信息將通過 ERROR 和 STATUS 輸出表示,。 打開 SIMATIC 315PN-1 的 OB1,在 OB1 中依次調用 FB14,,F(xiàn)B15 如圖 11,、圖 12 所示: 圖11 參數(shù) | 描述 | 數(shù)據(jù)類型 | 存儲區(qū) | 描述 | REQ | INPUT | BOOL | I、Q,、M,、D、L | 上升沿觸發(fā)調用功能塊 | ID | INPUT | WORD | M,、D,、常數(shù) | 地址參數(shù) ID | ERROR | OUTPUT | BOOL | I、Q,、M,、D、L | 接收到新數(shù)據(jù) | STATUS | OUTPUT | WORD | I,、Q,、M、D,、L | 故障代碼 | S7-300:ADDR_1 S7-400: ADDR_i (1 ≤i ≤ | IN_OUT | ANY | M,、D I、Q,、M,、D,、 T,、C | 從 S7-200 SMART 的數(shù)據(jù)地址中讀取數(shù)據(jù);V 區(qū)數(shù)據(jù)對應 DB1。 | S7-300:RD_1 S7-400: RD_i (1 ≤i ≤4) | IN_OUT | ANY | S7-300:M,、D S7-400 I,、Q、 M,、D,、T,、C | 本站接收數(shù)據(jù)地址 |
FB14 參數(shù)說明 圖12 參數(shù) | 描述 | 數(shù)據(jù)類型 | 存儲區(qū) | 描述 | REQ | INPUT | BOOL | I、Q,、M,、D、L | 上升沿觸發(fā)調用功能塊 | ID | INPUT | WORD | M,、D,、常數(shù) | 地址參數(shù) | DONE | OUTPUT | BOOL | I、Q,、M,、D、L | 為 1 時,,發(fā)送完成 | ERROR | OUTPUT | BOOL | I,、Q、M,、D,、L | 為 1 時,有故障發(fā)生 | STATUS | OUTPUT | WORD | I,、Q,、M、D,、L | 故障代碼 | S7-300:ADDR_1 S7-400: ADDR_i (1 ≤i ≤ | IN_OUT | ANY | M,、D I、Q,、M,、D、 T,、C | 從 S7-200 SMART 的數(shù)據(jù)地址中讀取數(shù)據(jù);V 區(qū)數(shù)據(jù)對應 DB1,。 | S7-300:SD_1 S7-400: SD_i (1 ≤i ≤4) | IN_OUT | ANY | S7-300:M、D S7-400 I,、Q,、 M、D,、T,、C | 本站發(fā)送數(shù)據(jù)地址 |
FB15 參數(shù)說明 S7-200 SMART PLC 不需要編程。 (文章來源網(wǎng)絡,,僅供參考,。評論處大家可以補充文章解釋不對或欠缺的部分)
|