西門子DP總線電纜6XV1830-0EH10
西門子DP總線電纜6XV1830-0EH10
OUC 指令庫使用非常簡單、方便,更便于用戶編程,建議用戶使用指令庫編程,固文本只介紹OUC 指令庫的使用。
OUC 指令庫包含以下庫指令:
● TCP_CONNECT:創(chuàng)建 TCP 連接。
● ISO_CONNECT:創(chuàng)建 ISO-on-TCP 連接。
● UDP_CONNECT:創(chuàng)建 UDP 連接。
● TCP_SEND:發(fā)送用于 TCP 和 ISO-on-TCP 連接的數(shù)據(jù)指令。
● TCP_RECV:接收用于 TCP 和 ISO-on-TCP 連接的數(shù)據(jù)指令。
● UDP_SEND:發(fā)送用于 UDP 連接的數(shù)據(jù)指令。
● UDP_RECV:接收用于 UDP 連接的數(shù)據(jù)指令。
● DISCONNECT:終止所有協(xié)議的連接。
TCP通信
下面以TCP通信為例介紹OUC指令庫的使用。
TCP通信為有連接通信,通信雙方進行數(shù)據(jù)交換之前首先需要建立TCP連接,TCP客戶端會向TCP服務(wù)器發(fā)送建立TCP連接請求,TCP服務(wù)器接收到連接請求后,
服務(wù)器會發(fā)回建立連接應(yīng)答,客戶端確認(rèn)服務(wù)器發(fā)回的應(yīng)答之后TCP連接就被成功建立了。
TCP連接建立后,通信雙方就可以發(fā)送和接收數(shù)據(jù)了。通信結(jié)束后,通信雙方可以斷開連接,釋放通信資源。 TCP通信流程見下圖。
1.S7-200 SMART CPU 首先需要調(diào)用TCP_Connect建立TCP連接
TCP_CONNECT指令主要參數(shù)如下:
●Req為TRUE,啟動連接操作
●Active為TRUE,則S7-200 SMART 為TCP客戶端,否則為TCP 服務(wù)器。
●ConnID 連接ID
●IPaddr1~IPaddr4: 伙伴方IP地址
●RemPort 伙伴通信端口
●LocPort 本地通信端口
2.TCP通信連接建立后,S7-200 SMART CPU 需要調(diào)用TCP_SEND 指令發(fā)送數(shù)據(jù),調(diào)用TCP_RECV指令接收數(shù)據(jù)。
TCP_SEND指令主要參數(shù)如下:
●Req為TRUE,啟動數(shù)據(jù)發(fā)送操作
●ConnID 連接ID,需要與TCP_CONNECT 建立的連接ID相同。
●DataLen 發(fā)送數(shù)據(jù)長度,大長度為1024字節(jié)
●DataPtr 發(fā)送數(shù)據(jù)指針
TCP_RECV指令主要參數(shù)如下:
●ConnID 連接ID,需要與TCP_CONNECT 建立的連接ID相同。
●MaxLen 允許接收數(shù)據(jù)長度,大長度為1024字節(jié)
●DataPtr 接收數(shù)據(jù)指針
●Length 接收數(shù)據(jù)實際長度
3.TCP通信連接建立后,如果不再需要該連接,則可以調(diào)用DISCONNECT終止之前建立的連接。
TCP_RECV指令主要參數(shù)如下:
●Req為TRUE,啟動斷開連接操作
●ConnID 連接ID,需要與TCP_CONNECT 建立的連接ID相同。
4.調(diào)用開放式用戶通信指令庫,需要在程序中為其分配庫存儲區(qū)。