<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發(fā)網(wǎng)

      電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
      搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> 梯形圖實例 >> 正文

      【圖文詳解】西門子PLC之S7-200SMART的TCP通信 TCP_CONNECT和TCP_SEND、TCP_RECV指令用法

      作者:佚名    文章來源:本站原創(chuàng)    點擊數(shù):    更新時間:2024/6/2

      西門子plc之S7-200SMART的TCP通信 (上)

      200SMART的開放式通信(Open User Communication)包括TCP通信,UDP通信以及ISO-on-TCP通信,支持CPU固件版本V2.2以上,常用于與第三方支持相同協(xié)議的設(shè)備通信。

      開放式通信(OUC)編程可以通過指令或者調(diào)用OUC的指令庫,通信雙方均要調(diào)用指令,通信數(shù)據(jù)量可以達到1024個字節(jié),這次我們將介紹OUC通信中的TCP通信。

      TCP通信是一種面向連接的通信協(xié)議,通信之前需要先建立連接,是一種數(shù)據(jù)流的服務(wù),不傳輸開始消息和結(jié)束消息,是一種可靠,安全的數(shù)據(jù)傳輸。所謂數(shù)據(jù)流,舉一個簡單的例子來說,發(fā)送方第一次發(fā)送10個數(shù)據(jù),然后第二次再發(fā)送10個數(shù)據(jù),然后接收方啟用接受會一下子接收到20個數(shù)據(jù)。

      TCP通信的編程可以通過通信指令或者開放式用戶通信庫指令,如圖:

       

      圖一:通信指令

       

        圖二: 開放式用戶通信庫指令

      這里建議使用開放式用戶通信庫指令,編程和填寫參數(shù)都能簡單一點。

      下面開始介紹一下TCP通信的流程:

      ①:建立連接(關(guān)鍵!必須!)TCP_CONNECT和TCP_SEND、TCP_RECV指令用法

       

      ②:交換數(shù)據(jù)(發(fā)送/接收)

               

      ③:斷開連接(一般不用)

       

      ④:分配庫存儲器(必須!建議選擇較大的地址避免沖突)

       

      接下來介紹一下各個指令的每個引腳的含義,

      首先介紹TCP_CONNECT指令

      參數(shù)

      數(shù)據(jù)類型

      描述

      EN

      BOOL

      使能輸入

      Req

      BOOL

      如果Req=TRUE,CPU啟動連接操作。如果 Req = FALSE,則輸出顯示連接的當前狀態(tài)。

      Active

      BOOL

      設(shè)置本地CPU在通信中的角色

      Active= TRUE為主動連接(一般用于客戶端)

      Active= FALSE為被動連接(一般用于服務(wù)器)

      ConnID

      WORD

      CPU使用連接 ID (ConnID) 為其它指令標識該連接。可能的ConnID范圍為0到65534。

      IPadd

      IPaddr4

      BYTE

      這些是IP地址的四個八位字節(jié)。IPaddr1到IPaddr4 填寫通信伙伴的IP地址

      RemPort

      WORD

      RemPort 是遠程設(shè)備上的端口號。遠程端口號范圍為 1 到 49151。對于被動連接,使用零。

      LocPort

      WORD

      LocPort 是本地設(shè)備上的端口號。本地端口號范圍為 1 到 49151,但存在一些限制。

      Done

      BOOL

      完成標志位,建立通信連接之后一直保持1。

      Busy

      BOOL

      當連接操作正在進行時,指令置位 Busy 輸出。

      Error

      BOOL

      當連接操作完成但發(fā)生錯誤時,指令置位 Error 輸出。

      Status

      BYTE

      如果指令置位 Error 輸出,Status 輸出會顯示錯誤代碼。如果指令置位 Busy 或 Done 輸出,Status 為零(無錯誤)。

      這里我們再對一些參數(shù)進行一些補充解釋

      1. ConnID:ConnID用于標識通信連接,不同的ConnID不能重復,且占用開放式通信資源最多16個,客戶端的ConnID與服務(wù)器的ConnID無關(guān)。

      2. IPaddr:填寫通信伙伴的IP地址,客戶端填寫服務(wù)器的IP,服務(wù)器填寫客戶端的IP。主動連接不能填0.0.0.0,被動連接可以填0.0.0.0,表示接受任意遠程IP地址的連接。

      3. RemPort 和LocPort:端口號設(shè)置,建議采用2000~5000,主動方和被動方的RemPort 和LocPort交叉對應(yīng);對于被動連接,本地端口號必須唯一(不重復),且可以忽略遠程端口號,RemPort可以填0。

      4. Req & Active:CPU作為客戶端:Active設(shè)置為TURE,然后再觸發(fā)Req,主動發(fā)送報文,請求建立連接。如圖Active設(shè)置SM0.0。

       

      CPU作為服務(wù)器先就緒,客戶端發(fā)送請求報文后,才可建立連接,否則被拒絕。

       

      例如我設(shè)置本地客戶端IP為192.168.0.100,ConnID為10,端口號為2000;

      遠程服務(wù)器IP為192.168.0.101,ConnID為20,端口號為2001;如圖

       

       

      這次關(guān)于200SMART的TCP通信就暫時介紹到這里,下一篇將繼續(xù)為大家介紹TCP的發(fā)送和接收指令,以及TCP程序編寫。


      西門子plc之S7-200SMART的TCP通信 (下)

      上次為大家介紹了200SMART的TCP_CONNECT指令,這次繼續(xù)介紹TCP_SEND指令和TCP_RECV指令。

      TCP_SEND指令和TCP_RECV這兩個指令比較簡單,就放在一起介紹。

       

      EN:使能,對于接收指令,建議常1觸發(fā)。

      Req:發(fā)送指令觸發(fā)發(fā)送指令,建議使用上升沿觸發(fā)。

      ConnID:連接標識,與各自的TCP_CONNECT的ConnID相同。

      DataLen發(fā)送數(shù)據(jù)的長度,最多1024個字節(jié)。

      MaxLen:接收數(shù)據(jù)的最大長度,最多1024個字節(jié)。

      Length:實際接收數(shù)據(jù)的長度。

      DataPtr:發(fā)送數(shù)據(jù)的地址指針,發(fā)送數(shù)據(jù)的首地址。

      其他的Done,Busy等與TCP_CONNECT指令相同。



      接下來對這些參數(shù)進行一個詳細的解釋:

      如圖,是TCP_SEND的調(diào)用時序圖,藍色為Req上升沿觸發(fā),紅色為Req電平觸發(fā)。

       

      使用Req上升沿觸發(fā)→Busy=1→完成后DONE=1(一個掃描周期)→Error=1且Status=24,然后等待下一次上升沿觸發(fā)信號進行循環(huán),這里Status=24表示指令調(diào)用但是未觸發(fā)操作,并不代表錯誤。

      使用Req電平觸發(fā)→Busy=1→完成后DONE=1(一個掃描周期),然后不停循環(huán)Busy和Done。

      這里建議使用上升沿觸發(fā)TCP_SEND指令。

      如圖,是TCP_RECV的調(diào)用時序圖,藍色為EN上升沿觸發(fā),紅色為EN電平觸發(fā)。

       

      EN上升沿觸發(fā),需要兩次觸發(fā)才可以接收數(shù)據(jù),DONE保持為1,直至下次上升沿的到來;而EN電平觸發(fā),有數(shù)據(jù)就接收,大部分時間處于Busy,Done為1一個周期,所以建議EN使用電平觸發(fā)TCP_RECV指令。

      對于TCP_RECV的MaxLen,當MaxLen<發(fā)送方數(shù)據(jù)的長度時,按照MaxLen設(shè)置的長度進行接收,多余部分舍棄,Done不置位,同時Error=1,Status=25。

      所以建議MaxLen=發(fā)送方數(shù)據(jù)的長度,如果發(fā)送方的長度是變化的,則MaxLen按照最大長度進行填寫。

      最后以下題為例:本地客戶端IP為192.168.0.100,ConnID為10,端口號為2000;遠程服務(wù)器IP為192.168.0.101,ConnID為20,端口號為2001,將本地站從VB200開始的10個字節(jié)發(fā)送到遠程站的VB100開始的10個字節(jié)。

      首先我們在系統(tǒng)塊中設(shè)置本地站和遠程站的IP地址

       

       

      然后設(shè)置TCP_CONNECT參數(shù),如圖

       

       

      接著分別設(shè)置TCP_SEND和TCP_RECV

       

      按下I0.4,啟動客戶端TCP_CONNECT的連接,SM0.5不斷觸發(fā)SEND的Req,

      如圖所示,數(shù)據(jù)成功發(fā)送,通訊成功。

       

      Tags:TCP通訊,SMART,西門子plc  
      責任編輯:admin
      相關(guān)文章列表
      組態(tài)王與西門子S7-200的幾種通信方式,組態(tài)王的幾種通訊方式
      西門子S7-200SMART和組態(tài)王以太網(wǎng)通訊(圖文)
      西門子S7-200 SMART PLC軟元件、數(shù)據(jù)類型及數(shù)據(jù)直接尋址講解!
      【STEP7】西門子S7-200SMART中局部變量的類型以及使用方法 創(chuàng)建庫
      【STEP7】多軸運控、靈活自如——S7-200 SMART V2.7 新功能解讀
      STEP7創(chuàng)建庫,西門子200SMART PLC寫時鐘及寫時鐘用戶庫的創(chuàng)建典型
      西門子PLC的PID指令與應(yīng)用
      S7-200中西門子CP243-1 通過 SIMATIC NET 連接 WinCC
      【STEP7軟件】S7-200中如何通過CP243-1與STEP 7-Micro/WIN 通信
      小白必看 | 西門子S7-200SMART通信概述
      西門子S7-200 SMART PLC擴展模塊,西門子plc擴展模塊
      西門子S7-200SMART PLC的DR32、DR16和DR08模塊 接線圖
      西門子S7-200PLC編程PTO脈沖的產(chǎn)生與使用
      西門子PLC S7-200SMART間接尋址應(yīng)用——西門子plc模擬量濾波程序
      STEP7軟件 S7-200 SMART高速脈沖輸出如何斷電保持當前位置
      STEP7軟件,S7-200SMART PLC 自編模擬量輸入結(jié)構(gòu)化編程并生成庫
      西門子SMART PLC MODBUS通訊控制英威騰變頻器,變頻器狀態(tài)字
      西門子PLC S7-200SMART Modbus TCP通訊的步驟和要點
      西門子S7-200 PLC模擬量輸入處理
      西門子PLC電機正反轉(zhuǎn)電路圖轉(zhuǎn)S7-200SMART PLC梯形圖兩種方式
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網(wǎng)友評論
      推薦文章
      最新推薦
      關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 久久综合日韩亚洲精品色| 色久综合网精品一区二区| 亚洲综合久久久久久中文字幕| 国产精品无码久久综合| 亚洲综合亚洲国产尤物| 狠狠色综合久久婷婷色天使| 国产AV综合影院| 亚洲综合综合在线| 国产精品 综合 第五页| 亚洲综合无码无在线观看| 久久综合综合久久狠狠狠97色88| 亚洲综合色区中文字幕| 狠狠狠色丁香婷婷综合久久五月| 青青草原综合久久大伊人精品| 国产成人精品综合在线观看| 亚洲综合在线一区二区三区 | 色综合久久天天综线观看| 国产综合成人久久大片91| 亚洲AV综合色区无码一二三区| 亚洲综合激情另类专区| 婷婷综合激六月情网| 欧洲97色综合成人网| 一本久久a久久精品综合夜夜| 伊人色综合久久大香| 精品国产天堂综合一区在线| 色综合久久精品亚洲国产| 91精品国产综合久久香蕉| 久久综合九色综合91| 亚洲综合日韩久久成人AV| 五月天色婷婷综合| 九九综合VA免费看| 在线亚洲97se亚洲综合在线| 国产91久久综合| 91精品国产色综合久久不卡蜜| 婷婷亚洲综合一区二区| 五月天色婷婷综合| 一本色道久久88精品综合| 色噜噜狠狠色综合日日| 亚洲狠狠色丁香婷婷综合| 国产成人精品久久综合| 久久综合精品国产二区无码|