西門子PLC以太網(wǎng)開放式用戶通信連載(4)-TSEND
前面的文章我們介紹了西門子開放式用戶通信(Open User Communication)中用于建立連接的指令—TCON;用于TCP、ISO-ON-TCP數(shù)據(jù)接收的指令—TRCV、用于UDP協(xié)議數(shù)據(jù)接收的指令—TURCV。今天這篇文章,我們來談談基于TCP、ISO-ON-TCP協(xié)議的數(shù)據(jù)發(fā)送指令:TSEND。

在使用TSEND指令發(fā)送數(shù)據(jù)之前,要首先使用TCON指令來建立連接。TSEND指令基于已經(jīng)建立好的連接來發(fā)送數(shù)據(jù),使用的協(xié)議為TCP或者ISO-ON-TCP。“DATA”參數(shù)用來指向要發(fā)送的數(shù)據(jù)的地址,發(fā)送數(shù)據(jù)類型不能是“位(bit)”或者“位(bit)”的數(shù)組,其它類型都可以。
下面來介紹下“TSEND”指令的用法:
首先在指令列表中找到TSEND指令,如下圖:

將其拖拽到程序塊中,系統(tǒng)會自動提示添加背景數(shù)據(jù)塊(Instance DB)??梢赃x擇獨立背景數(shù)據(jù)塊(Single Instance DB)或者多重背景數(shù)據(jù)塊(Mutil instance DB),也可以修改DB塊的名稱。這里,我們使用獨立背景數(shù)據(jù)塊,采用默認的名稱“TSEND_DB”,如下圖:

點擊【OK】確認后,TSEND指令就被添加到程序塊中了,如下圖:

TSEND指令中各參數(shù)的含義如下:
-
REQ:請求發(fā)送數(shù)據(jù),需要信號的上升沿(rising edge);
-
ID:使用TCON建立的連接ID;
-
LEN:發(fā)送數(shù)據(jù)的最大長度;對于S7-1200系列PLC,“LEN”最大為8192個字節(jié);對于S7-1500系列PLC,“LEN”最大為65536個字節(jié);
-
DATA:指向發(fā)送數(shù)據(jù)的指針;可以是數(shù)據(jù)輸入/輸出緩存區(qū)、位存儲區(qū)或者數(shù)據(jù)塊;
-
DONE:發(fā)送任務是否完成;1=任務已經(jīng)完成;0=任務沒有開始或者沒有結束;
-
BUSY:是否正在發(fā)送;1=正在發(fā)送數(shù)據(jù);0=任務沒有開始或已經(jīng)結束;
-
ERROR:發(fā)送過程是否有錯誤發(fā)送;1=有錯誤發(fā)生;0=沒有錯誤發(fā)生;
-
STATUS:指令的執(zhí)行狀態(tài);
當發(fā)送過程產生錯誤時,可以根據(jù)STATUS的值來判斷錯誤的類型,參考下面這張表格:

完整的TSEND指令如下圖:

好了,關于西門子開放式用戶通信用于TCP和ISO-ON-TCP協(xié)議的數(shù)據(jù)發(fā)送指令-TSEND就先介紹到這里。
-
Origin(Pro):學習版的窗口限制【數(shù)據(jù)繪圖】 2020-08-07
-
如何卸載Aspen Plus并再重新安裝,這篇文章告訴你! 2020-05-29
-
OriginPro:學習版申請及過期激活方法【數(shù)據(jù)繪圖】 2020-08-06
-
CAD視口的邊框線看不到也選不中是怎么回事,怎么解決? 2020-06-04
-
教程 | Origin從DSC計算焓和比熱容 2020-08-31
-
Aspen Plus安裝過程中RMS License證書安裝失敗的解決方法,親測有效! 2021-10-15
-
CAD外部參照無法綁定怎么辦? 2020-06-03
-
CAD中如何將布局連帶視口中的內容復制到另一張圖中? 2020-07-03
