<object id="ir2le"></object>
  • 加入收藏 在線留言 聯系我們
    關注微信
    手機掃一掃 立刻聯系商家
    全國服務熱線15267534595
    公司新聞
    S7-300 集成PN口作客戶端與S7-300/400/1200/1500的 S7 單邊通信
    發布時間: 2023-08-24 17:10 更新時間: 2024-12-27 09:10

    S7單邊通信,僅需在客戶端側進行組態編程;服務器側CPU無需組態編程。

    所以在編程組態和建立連接方面,S7-300PN口做客戶端,只需要在 S7-300CPU 側建立單邊連接,使用單邊編程方式 PUT,GET 指令進行通信。

    圖片 S7-300集成PN口側組態編程

    圖片 服務器側:S7-1200/1500CPU注意事項

    所完成的通信任務:

    圖片 S7-300 集成PN口CPU 作為客戶端讀取 對方S7 CPU中 DB1 的數據到 S7-300 的 DB3 中。
    圖片 S7-300 集成PN口CPU 作為客戶端將本地 DB4 中的數據寫到 對方 S7 CPU中 DB2 中。

    項目創建環境:TIA V13 SP1

    S7-300集成PN口側組態編程

    圖片 新建項目并完成硬件配置(具體步驟請參見文檔:CPU硬件組態入門)

    圖片

    圖1. 組態設置子網

    圖片 網絡組態

    打開 “Network View(網絡視圖)” 配置網絡,首先點中左上角的“Connections(網絡)”圖標,選擇“S7 Connection(S7連接)”,然后選中300 CPU,右鍵選擇“Add new connection(添加新連接)”如圖所示。

    圖片

     

    圖2. 添加連接

    然后在“Create new connection(連接)”窗口中,選擇“Unspecified”,然后點擊“Add”建立 S7 連接,如圖2.所示。

    圖片

    圖3.建立 S7 連接

    “S7_Connection_1(S7_連接_1)”為建立的連接,選中連接,在屬性的“General(常規)”條目中填寫對方設備的IP地址,如下圖4.所示。

    圖片

    圖4. 定義連接對方的 IP 地址

    圖片

    圖5. 定義通訊雙方的 TSAP 號

    圖片注意:

    通信的對方設備為

  • S7-300集成PN口或CP卡 ,TSAP地址:03.02

  • S7-400集成PN口或CP卡 ,TSAP地址:03.XX;XX為400CPU設計插槽號

  • S7-1200集成PN口 ,TSAP地址:03.00,或03.01

  • S7-1500集成PN口或CP卡,TSAP地址:03.01

  • 圖片

    圖6. 連接 ID 號

    圖片注意:此處的ID號,將在編程的PUt,GET塊中填寫(16進制)

    配置完網絡連接,編譯保存并下載。

    圖片

    圖7. 通訊連接狀態

    圖片 指令塊編程

    在 OB1 中,從“Instruction(指令)” >“Communication(通信)” >“S7 Communication(S7通信)”下,調用Get、Put通信指令,創建接收和發送數據塊 DB3 和 DB4,定義成 101 個字節的數組,程序調用如下圖8.所示。

    圖片

    圖8. 程序調用功能

    功能塊管腳說明:

    CALL “GET”DB1//調用 GET,使用背景DB塊:DB1;
    REQ M10.0+P沿//上升沿觸發或使用系統時鐘 ;
    IDW#16#0001//連接號,要與連接配置中一致,創建連接時的連接號,如圖5.所示;
    NDRM30.0//為1時,接收到新數據;
    ERRORM30.1//為1時,有故障發生;
    STATUSMW32//狀態代碼;
    ADDR_1P#DB1.DBX0.0 BYTE 10//從通信伙伴數據區讀取數據的地址;
    RD_1P#DB3.DBX0.0 BYTE 10//本地接收數據地址;


    CALL “PUT”DB2//調用 PUT,使用背景DB塊:DB2;
    REQM10.0+P沿//上升沿觸發或使用系統時鐘 ;
    IDW#16#0001//連接號,要與連接配置中一致,創建連接時的連接號,如圖5.所示;
    DONEM30.2// 為1時,發送完成;
    ERRORM30.3// 為1時,有故障發生;
    STATUSMW34// 狀態代碼;
    ADDR_1P#DB2.DBX0.0 BYTE 10// 發送到通信伙伴數據區的地址;
    SD_1P#DB4.DBX0.0 BYTE 10// 本地發送數據區。

    圖片 監控結果

    通過在 S7-300 側編程進行 S7 通訊,實現兩個 CPU 之間數據交換,以S7-1200為例,結果如下圖。
    圖片

    圖9. 監控結果

    服務器側:S7-1200/1500CPU注意事項

    當通信的對方CPU為S7-1200或S7-1500時,有如下步驟必須設置。

    1. S7-1200,S7-1500用于通信存放數據的DB塊,必須設置為“非優化”(即默認的勾選取消掉)如圖10所示:

    圖片

    圖10. S7-1x00的數據塊非優化設置

    2. S7-1200CPU固件V4.0以上和S7-1500CPU,在CPU屬性--->保護--->連接機制中,

    勾選“允許從遠程伙伴...”,如圖11所示,

    圖片


    聯系方式

    • 電  話:18126392341
    • 聯系人:梁濤
    • 手  機:15267534595
    • 微  信:15267534595