0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

西門子博途:發(fā)送函數(shù)的編程示例

機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 來源:機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 2023-07-10 10:41 ? 次閱讀

簡介

在以下示例中,在 S7-1500 系列的兩個(gè) CPU 間創(chuàng)建一個(gè)編程連接,并將一個(gè)字符串從 CPU 1 發(fā)送到 CPU 2。待發(fā)送字符串的數(shù)據(jù)類型為 STRING。

要求

兩個(gè) S7-1500 系列的 CPU 通過 PROFINET 進(jìn)行互連,它們之間的連接尚未組態(tài)。

7cb7af32-1cba-11ee-962d-dac502259ad0.png

基于“屬性 > 保護(hù)”(Properties > Protection) 中的低保護(hù)級別,可確保每個(gè) CPU 都可進(jìn)行讀寫訪問。

CPU 1 中的程序

在全局?jǐn)?shù)據(jù)塊中,創(chuàng)建 9 個(gè)變量存儲(chǔ)“TSEND_C”的數(shù)據(jù)。

7cd3cb2c-1cba-11ee-962d-dac502259ad0.png

創(chuàng)建函數(shù)塊“SLI_FB_TSEND_C”,并在該函數(shù)塊中創(chuàng)建以下局部變量。

7cf35b4a-1cba-11ee-962d-dac502259ad0.png

程序段 1:互連“TSEND_C”指令的參數(shù),如下所示:但請勿互連參數(shù) CONNECT。

7d10eae8-1cba-11ee-962d-dac502259ad0.png

程序段 2:保存 TSEND_C 的錯(cuò)誤狀態(tài),如下所示。

7d3bff6c-1cba-11ee-962d-dac502259ad0.png

TSEND_C 的組態(tài)

要互連參數(shù) CONNECT,可通過“屬性 > 組態(tài)”(Properties > Configuration) 打開指令“TSEND_C”的向?qū)А?/p>

對 TSEND_C 的組態(tài)進(jìn)行如下設(shè)置:

輸入字段 條目
端點(diǎn) 在下拉列表中,選擇作為發(fā)送方和接收方的 CPU。
系統(tǒng)將自動(dòng)輸入接口、子網(wǎng)和地址。
連接數(shù)據(jù) 在下拉列表中選擇“新建”(New),為每個(gè) CPU 創(chuàng)建一個(gè)數(shù)據(jù)塊。
該數(shù)據(jù)塊用于存儲(chǔ)連接數(shù)據(jù)。數(shù)據(jù)塊的名稱可任意設(shè)置。
為 CPU 1(本地 CPU)建立主動(dòng)連接。
連接類型 選擇條目“TCP”。
這意味著,連接建立時(shí)使用“TCP”協(xié)議的以太網(wǎng)連接。
組態(tài)模式 選擇條目“使用程序塊”(Use program block)。
這意味著,將通過編程連接建立連接。
連接 ID 在該通信連接中,輸入任意一個(gè)選定的連接 ID。
該連接 ID 在項(xiàng)目中尚未分配。
伙伴端口 輸入一個(gè)伙伴端口值。該值必須 >=2000。

7d59b5e8-1cba-11ee-962d-dac502259ad0.png

CPU 2 中的程序

在全局?jǐn)?shù)據(jù)塊中,創(chuàng)建 10 個(gè)變量存儲(chǔ)“TRCV_C”的數(shù)據(jù)。

7d714208-1cba-11ee-962d-dac502259ad0.png

創(chuàng)建函數(shù)塊“SLI_FB_TRCV_C”,并在該函數(shù)塊中創(chuàng)建以下局部變量。

7d909810-1cba-11ee-962d-dac502259ad0.png

程序段 1:互連“TRCV_C”指令的參數(shù),如下所示:但請勿互連參數(shù) CONNECT。

7db2a6da-1cba-11ee-962d-dac502259ad0.png

程序段 2:保存 TRCV_C 的錯(cuò)誤狀態(tài),如下所示。

7dd0285e-1cba-11ee-962d-dac502259ad0.png

TRCV_C 的組態(tài)

對 TRCV_C 的組態(tài)進(jìn)行如下設(shè)置:

說明
連接數(shù)據(jù)
組態(tài) TSEND_C 后,已創(chuàng)建了一個(gè)數(shù)據(jù)塊(“SLI_cDB_Connector”),并帶有為各個(gè) CPU 存儲(chǔ)的連接數(shù)據(jù)。如果不希望創(chuàng)建新的數(shù)據(jù)塊并輸入連接數(shù)據(jù),也可直接使用創(chuàng)建的數(shù)據(jù)塊(“SLI_cDB_Connector”)。
如果要選擇已創(chuàng)建的數(shù)據(jù)塊,則這些數(shù)據(jù)塊必須位于“項(xiàng)目樹”(project tree) 的“程序塊 > 系統(tǒng)塊”(Program blocks > System blocks) 中。

7de6f1d8-1cba-11ee-962d-dac502259ad0.png

連接建立的操作過程

要在 RUN 模式下建立通信連接,請按以下步驟操作:

對于 TRCV_C,將參數(shù) EN_R 更改為“1”。
對于 TRCV_C,將參數(shù) CONT 更改為“1”。
對于 TSEND_C,將參數(shù) REQ 更改為“1”。
對于 TSEND_C,將參數(shù) CONT 更改為“1”。

終止連接的操作過程

要在 RUN 模式下終止通信連接,請按以下步驟操作:

對于 TSEND_C,將參數(shù) CONT 更改為“0”。
對于 TSEND_C,將參數(shù) REQ 更改為“0”。
對于 TRCV_C,將參數(shù) CONT 更改為“0”。
對于 TRCV_C,將參數(shù) EN_R 更改為“0”。

CPU 1 的行為

輸入?yún)?shù) REQ(“start”)返回信號(hào)狀態(tài)“TRUE”時(shí),啟動(dòng)指令“TSEND_C”。輸入?yún)?shù) CONT(“comControl”)中的信號(hào)狀態(tài)為“TRUE”時(shí),“TSEND_C”指令將在 CPU 1 與 CPU 2 間創(chuàng)建一個(gè)通信連接。為此,可通過輸入?yún)?shù) CONNECT(或數(shù)據(jù)塊“SLI_cDB_Connector”)檢索該連接數(shù)據(jù)。

進(jìn)行多次調(diào)用時(shí),“TSEND_C”指令將傳送輸入?yún)?shù) DATA(“sendData”)處檢測到的數(shù)據(jù)記錄。數(shù)據(jù)記錄傳送成功時(shí),輸出參數(shù) DONE(“#statDone”)的信號(hào)狀態(tài)為“TRUE”,且輸出參數(shù) STATUS(“status”)的值為“0000”。由于輸出參數(shù)的值僅在有效時(shí)才顯示,因此 DONE(“#statDone”)的成功狀態(tài)將保存在變量“done”中。

將該數(shù)據(jù)記錄發(fā)送到 CPU 2 后,將繼續(xù)監(jiān)視該通信連接(狀態(tài)為“7004”)。輸出參數(shù) ERROR(“error”)或變量“memErrStatus”)可用于指示本示例中的執(zhí)行過程是否出錯(cuò)。

7e06596a-1cba-11ee-962d-dac502259ad0.png

CPU 2 的行為

輸入?yún)?shù) EN_R(“start”)返回信號(hào)狀態(tài)“TRUE”時(shí),啟動(dòng)指令“TRCV_C”。輸入?yún)?shù) CONT(“comControl”)中的信號(hào)狀態(tài)為“TRUE”時(shí),“TRCV_C”指令將在 CPU 2 與 CPU 1 間創(chuàng)建一個(gè)通信連接。為此,可通過輸入?yún)?shù) CONNECT(或數(shù)據(jù)塊“SLI_cDB_Connector”)檢索該連接數(shù)據(jù)。

進(jìn)行多次調(diào)用時(shí),“TRCV_C”指令將接收所傳送的數(shù)據(jù)記錄。該數(shù)據(jù)記錄將記錄在參數(shù) DATA(“rcvData”)中。數(shù)據(jù)記錄傳送成功時(shí),輸出參數(shù) DONE(“done”)的信號(hào)狀態(tài)為“TRUE”,且輸出參數(shù) STATUS(“status”)的值為“0000”。并通過輸出參數(shù) RCVD_LEN(“#statRcvLen”),確定 BYTE 中實(shí)際傳送的數(shù)據(jù)記錄長度。僅當(dāng)傳送成功時(shí),才顯示該值。之后,將檢查“0”。

由于輸出參數(shù)的值僅在有效時(shí)才顯示,因此請進(jìn)行以下操作步驟:

將“#statRcvLen”的值保存在“rcvLen”中。

將“#statDone”的值保存在“done”中。

將“#status”的值保存在“memErrStatus”中。

CPU 2 接收到該數(shù)據(jù)記錄后,將繼續(xù)監(jiān)視該通信連接(狀態(tài)為“7006”)。輸出參數(shù) ERROR(“error”)或變量“memErrStatus”)可用于指示本示例中的執(zhí)行過程是否出錯(cuò)。

7e2aa202-1cba-11ee-962d-dac502259ad0.png

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10863

    瀏覽量

    211799
  • 西門子
    +關(guān)注

    關(guān)注

    94

    文章

    3039

    瀏覽量

    115889
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3616

    瀏覽量

    93740
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4331

    瀏覽量

    62633
  • S7-1500
    +關(guān)注

    關(guān)注

    3

    文章

    300

    瀏覽量

    6409

原文標(biāo)題:西門子博途:發(fā)送函數(shù)的編程示例

文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    北京回收西門子組態(tài)軟件

    回收西門子變頻器SINAMICS V10系列變頻器回收西門子觸摸屏回收西門子組態(tài)軟件回收西門子
    發(fā)表于 05-27 12:16

    西門子s7-200庫函數(shù)安裝程序

    西門子s7-200庫函數(shù)安裝程序,官網(wǎng)的200庫函數(shù)程序含有全部西門子原裝庫函數(shù)
    發(fā)表于 01-20 15:55 ?4次下載

    西門子大賽1200電梯參考程序

    西門子大賽1200電梯參考程序,V13文件.有需要的加油!
    發(fā)表于 06-22 15:56 ?183次下載

    西門子PLC編程電纜型號(hào)

    西門子PLC編程電纜型號(hào),感興趣的小伙伴們可以看看。
    發(fā)表于 07-29 18:42 ?40次下載

    西門子PLC培訓(xùn)編程講義

    西門子PLC培訓(xùn)編程講義,感興趣的小伙伴們可以看看。
    發(fā)表于 07-29 18:42 ?105次下載

    詳解編程實(shí)現(xiàn)S7300與西門子觸摸屏通訊

    目前國內(nèi)流行用昆侖通泰或者威綸通觸摸屏做項(xiàng)目,一方面價(jià)格便宜,另一方面編程簡單。但西門子屏也經(jīng)常會(huì)被用到,所以不得不學(xué)。簡單寫一下會(huì)用圖建立西門子觸摸屏和S7300PLC的通訊。
    的頭像 發(fā)表于 05-05 11:37 ?1.7w次閱讀

    淺談西門子SCL編程

    淺談西門子SCL編程資料免費(fèi)下載。
    發(fā)表于 04-23 10:44 ?27次下載

    西門子PLC編程軟件下載

    西門子PLC編程軟件TIA V13 SP1 SIMATIC_WinCC_Runtime_Professional_SP1_for_V13---江西工控論壇有下載密碼www.jx-g
    發(fā)表于 03-01 11:04 ?68次下載

    西門子PLC編程軟件功能及安裝

    西門子PLC編程軟件官方版是一款專為西門子產(chǎn)品打造的PLC編程工具。西門子PLC編程軟件最新版支
    發(fā)表于 04-17 14:31 ?8次下載
    <b class='flag-5'>西門子</b>PLC<b class='flag-5'>編程</b>軟件功能及安裝

    大型西門子PLC程序結(jié)構(gòu)示例

    大型的西門子PLC程序結(jié)構(gòu)示例。
    的頭像 發(fā)表于 07-06 10:34 ?1340次閱讀

    西門子PLC編程技巧(軟件篇)

    為大家整理一些西門子PLC的軟件編程小竅門
    的頭像 發(fā)表于 07-10 09:34 ?2135次閱讀
    <b class='flag-5'>西門子</b>PLC<b class='flag-5'>編程</b>技巧(軟件篇)

    西門子1200/1500PLC單按鈕啟??刂?0種設(shè)計(jì)方法

    西門子1200/1500PLC單按鈕啟??刂?0種設(shè)計(jì)方法
    的頭像 發(fā)表于 08-31 09:14 ?8109次閱讀
    <b class='flag-5'>西門子</b><b class='flag-5'>博</b><b class='flag-5'>途</b>1200/1500PLC單按鈕啟??刂?0種設(shè)計(jì)方法

    西門子plc單按鈕啟停的十種方法(1200/1500PLC)

    西門子1200/1500PLC單按鈕啟??刂?0種設(shè)計(jì)方法
    發(fā)表于 08-31 09:15 ?6655次閱讀
    <b class='flag-5'>西門子</b>plc單按鈕啟停的十種方法(<b class='flag-5'>博</b><b class='flag-5'>途</b>1200/1500PLC)

    常見的西門子編程軟件介紹

    很多初入門的PLC工程師和不了解西門子產(chǎn)品的工程師不是很清楚西門子編程軟件有哪些?
    的頭像 發(fā)表于 10-26 17:01 ?8872次閱讀
    常見的<b class='flag-5'>西門子</b><b class='flag-5'>編程</b>軟件介紹

    西門子標(biāo)準(zhǔn)化編程和虛擬調(diào)試應(yīng)用

    西門子標(biāo)準(zhǔn)化編程和虛擬調(diào)試應(yīng)用,西門子標(biāo)準(zhǔn)化編程、仿真與虛擬調(diào)試應(yīng)用培訓(xùn)PPT。
    發(fā)表于 11-16 14:58 ?561次閱讀
    <b class='flag-5'>西門子</b>標(biāo)準(zhǔn)化<b class='flag-5'>編程</b>和虛擬調(diào)試應(yīng)用