RM新时代注册|首入球时间

  • <u id="ra9x3"><table id="ra9x3"></table></u>
  • 歡迎光臨大柏電子科技(上海)有限公司
    當(dāng)前位置
    首頁(yè) > 新聞中心
    S7-1500之間通過(guò)程序建立TCP通信(PLC_1側(cè))
    2020/12/15 20:38:45

    S7-1500之間通過(guò)程序建立TCP通信(PLC_1側(cè))

    1.在 PLC_1 的 OB1 中調(diào)用“TCON” 通信指令

    ① 在第一個(gè) CPU 中調(diào)用發(fā)送通信指令,進(jìn)入 “Project tree” > “ PLC_1” > “Program blocks” > “OB1” 主程序中,從右側(cè)窗口 “Instructions” > “Communications” > “OPEN User Communications”下調(diào)用 “TCON” 指令,創(chuàng)建連接,如圖1.所示。

    圖1. 調(diào)用“TCON”通信指令

    ② 創(chuàng)建DB2 分配連接參數(shù),見(jiàn)圖2所示

    圖2. 創(chuàng)建連接數(shù)據(jù)塊 DB2(Con_DB)

    ③ 定義PLC_1的 “TCON”連接參數(shù)
    PLC_1 的 TCON 指令的連接參數(shù)需要在指令下方的屬性窗口“Properties”> “Configuration”>“Connection parameter”中設(shè)置,如圖3.所示。

    圖3. 定義 TCON 連接參數(shù)
    連接參數(shù)說(shuō)明:

    End point :可以通過(guò)點(diǎn)擊選擇按鈕選擇伙伴 CPU :PLC_2
    Connection type :選擇通信協(xié)議為 TCP(也可以選擇 ISO on TCP 或UDP協(xié)議)
    Connection ID :連接的地址 ID 號(hào),這個(gè) ID 號(hào)在后面的編程里會(huì)用到
    Connection data

    :創(chuàng)建連接時(shí),生成的Con_DB塊。見(jiàn)圖2所示

    Active connection setup :選擇本地 PLC_1作為主動(dòng)連接
    Address details :定義通信伙伴方的端口號(hào)為:2000;如果選用的是 ISO on TCP 協(xié)議,則需要設(shè)定的TSAP 地址(ASCII 形式),本地 PLC_1可以設(shè)置成“PLC1”,伙伴方 PLC_2 可以設(shè)置成“PLC2”。

    2.定義 PLC_1 的“TSEND”發(fā)送通信塊接口參數(shù)

    ① 調(diào)用 “TSEND” 在OB1內(nèi)調(diào)用 發(fā)送100個(gè)字節(jié)數(shù)據(jù)到PLC2中
    進(jìn)入 “Project tree” > “ PLC_1” > “Program blocks” > “OB1” 主程序中,從右側(cè)窗口 “Instructions” > “Communications” > “OPEN User Communications”下調(diào)用 “TSEND” 指令,,如圖4.所示。

    圖4. 調(diào)用 TSEND
    ② 創(chuàng)建并定義PLC_1的發(fā)送數(shù)據(jù)區(qū) DB 塊。
    通過(guò)“Project tree”>“PLC_1”>“Program blocks”>“Add new block”,選擇“Data block” 創(chuàng)建 DB 塊,選擇絕對(duì)尋址,點(diǎn)擊“OK”鍵,定義發(fā)送數(shù)據(jù)區(qū)為 100個(gè)字節(jié)的數(shù)組,如圖4.及圖5.所示。


    圖5. 創(chuàng)建發(fā)送數(shù)據(jù)區(qū) DB 塊
    注意:對(duì)于雙邊編程通信的 CPU ,如果通信數(shù)據(jù)區(qū)使用 DB 塊,既可以將 DB 塊定義成符號(hào)尋址,也可以定義成絕對(duì)尋址。使用指針尋址方式,必須創(chuàng)建絕對(duì)尋址的 DB 塊。

    圖6. 定義發(fā)送數(shù)據(jù)區(qū)為字節(jié)類(lèi)型的數(shù)組 圖 PLC1_TSENDC_DATA

    ③ 定義 PLC_1 的“TSEND”發(fā)送通信塊接口參數(shù),如圖7.所示。


    圖7. 定義 TSEND 接口參數(shù)
    參數(shù)說(shuō)明:
    輸入接口參數(shù):

    REQ
    := M0.3
    // 使用 2Hz 的時(shí)鐘脈沖,上升沿激活發(fā)送任務(wù)
    ID : = 1 //創(chuàng)建連接ID
    LEN
    := 100
    //發(fā)送數(shù)據(jù)長(zhǎng)度
    DATA
    := P#DB3.DBX0.0 BYTE 100
    // 發(fā)送數(shù)據(jù)區(qū)的數(shù)據(jù),使用指針尋址時(shí),DB塊要選用絕對(duì)尋址

    輸出接口參數(shù):

    DONE
    := M300.0
    //任務(wù)執(zhí)行完成并且沒(méi)有錯(cuò)誤,該位置 1
    BUSY
    := M300.1
    // 該位為 1,代表任務(wù)未完成,不能激活新任務(wù)
    ERROR
    := M300.2
    //通信過(guò)程中有錯(cuò)誤發(fā)生,該位置 1
    STATUS
    := MW302
    //有錯(cuò)誤發(fā)生時(shí),會(huì)顯示錯(cuò)位信息號(hào)

    3.在 PLC_1 的OB1中調(diào)用接收指令T_CV 并配置基本參數(shù)

    為了實(shí)現(xiàn) PLC_1 接收來(lái)自 PLC_2 的數(shù)據(jù),則在 PLC_1 中調(diào)用接收指令T_RCV 并配置基本參數(shù)。

    ① 創(chuàng)建并定義PLC_1的接收數(shù)據(jù)區(qū) DB 塊。
    通過(guò)“Project tree”>“PLC_1”>“Program blocks”>“Add new block”,選擇“Data block” 創(chuàng)建 DB 塊,選擇絕對(duì)尋址,點(diǎn)擊“OK”鍵,定義發(fā)送數(shù)據(jù)區(qū)為 100個(gè)字節(jié)的數(shù)組,如圖7.及圖8.所示。


    圖8. 創(chuàng)建接收數(shù)據(jù)區(qū) DB 塊
    注意:對(duì)于雙邊編程通信的 CPU ,如果通信數(shù)據(jù)區(qū)使用 DB 塊,既可以將 DB 塊定義成符號(hào)尋址,也可以定義成絕對(duì)尋址。使用指針尋址方式,必須創(chuàng)建絕對(duì)尋址的 DB 塊。

    圖9. 定義接收數(shù)據(jù)區(qū)為字節(jié)類(lèi)型的數(shù)組

    ② 調(diào)用 “TRCV” 在OB1內(nèi)調(diào)用
    進(jìn)入 “Project tree” > “ PLC_1” > “Program blocks” > “OB1” 主程序中,從右側(cè)窗口 “Instructions” > “Communications” > “OPEN User Communications”下調(diào)用 “TRCV” 指令,配置接口參數(shù),,如圖10.所示。

    圖10. 調(diào)用 TRCV 指令并配置接口參數(shù)

    參數(shù)說(shuō)明:
    輸入接口參數(shù):

    EN_R
    := TRUE
    // 準(zhǔn)備好接收數(shù)據(jù)
    ID
    := 1
    // 連接號(hào),使用的是 TCON 的連接參數(shù)中 ID號(hào)
    LEN
    := 100
    // 接收數(shù)據(jù)長(zhǎng)度為 100 個(gè)字節(jié)
    DATA
    := P#DB4.DBX0.0 BYTE 100
    // 接收數(shù)據(jù)區(qū)的地址

    輸出接口參數(shù):

    NDR
    := M310.0
    // 該位為 1,接收任務(wù)成功完成
    BUSY
    := M310.1
    // 該位為 1,代表任務(wù)未完成,不能激活新任務(wù)
    ERROR
    := M310.2
    // 通信過(guò)程中有錯(cuò)誤發(fā)生,該位置 1
    STATUS
    := MW312
    // 有錯(cuò)誤發(fā)生時(shí),會(huì)顯示錯(cuò)誤信息號(hào)
    RCVD_LEN
    := MW314
    // 實(shí)際接收數(shù)據(jù)的字節(jié)數(shù)

    注意:LEN設(shè)置為 65535 可以接收變長(zhǎng)數(shù)據(jù)。

    在PLC_2側(cè)的編程參見(jiàn):S7-1500之間通過(guò)程序建立TCP通信(PLC_2側(cè)) 

    用手機(jī)掃描二維碼關(guān)閉
    RM新时代注册|首入球时间

  • <u id="ra9x3"><table id="ra9x3"></table></u>
  • <u id="ra9x3"><table id="ra9x3"></table></u>
  • RM新时代入口 RM新时代官方 RM新时代注册 RM新时代正规网址 RM新时代是骗人的吗