<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. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 梯形圖實例 >> 正文

      基于S7-200SMART實現Modbus TCP通信_200smart modbus tcp

      作者:佚名    文章來源:網絡整理    點擊數:    更新時間:2024/12/29

      關鍵字:S7-200 SMART;Modbus TCP;Modbus Slave;Modbus Poll。

      系列文章目錄

      基于S7-200 SMART實現一鍵啟停
      順序功能圖——(二)設計機組延時關機程序
      基于S7-200 SMART實現MATLAB寫入與讀取PLC數據



      前言

        Modbus TCP作為工業中的重要通信協議已經受到了廣泛的運用,西門子系列的PLC大多也支持免費的Modbus TCP通信,本文將基于S7-200 SMART實現PLC與PC的Modbus TCP通信。


      一、Modbus通信協議簡介

        首先我們需要對通信有一個簡單的認識,通信其實在我們生活中很常見,就像我們平時QQ微信的聊天、打電話甚至是寫信,都可以是通信。如果我們以寫信為例就能提取出三個重要部分:發信人、信息、發信人。對于現在的工業通信也有類似于此的主體,稱之為:主站、從站、數據或者是服務端、客戶端、數據。
       

      圖1.1 主站、從站

        一般主站、從站進行的的通信我們稱之為主從通信方式,在Modbus協議中的Modbus RTU和Modbus ASCII都屬于這種通信方式,在這種通信方式中,主站和從站可以理解為雇主和隨從的關系,只能由雇主向隨從提要求——由主站向從站發起通信(打工人落淚😵‍💫)。
       

      圖1.2 服務端、客戶端

        Modbus TCP則是通過服務端、客戶端的方式進行通信,在這種通信方式中,服務端和客戶端可以理解為商店和顧客之間的關系,只能顧客向商店提要求——由客戶端向服務端發起通信(顧客是上帝😎)。

      二、工程環境

        以下的案例基于:

      • PC操作系統:WIN11
      • PLC:S7-200 SAMRT CPU ST60
      • 通信介質:普通網線一根
      • PLC編程軟件:STEP 7-Micro/WIN SMART V2.8
      • PC端客戶端模擬軟件:Modbus Poll 7.0
      • PC端服務端模擬軟件:Modbus Slave 6.2

      三、PLC——Server、PC——Client

      1.流程

      ①在工程樹中MBUS_SERVER功能塊
       

      圖3.1 在工程樹中MBUS_SERVER功能塊

      ②將MBUS_SERVER拖入程序窗口并設置參數 
       
      圖3.2 將MBUS_SERVER拖入程序窗口并設置參數

      • EN:功能塊使能端
      • Connect:是否開始通信
      • IP_Port:IP端口號
      • MaxIQ:設置輸入/輸出線圈
      • MaxAI:設置輸入寄存器
      • MaxHold:設置保持寄存器
      • HoldStart:設置被操作的保持寄存器的起始地址
      • Done:通信是否結束的標志
      • Error:錯誤報文

      輸入線圈、輸出線圈、輸入寄存器、保持寄存器是Modbus協議中定義的四種不同的數據類型:
       

      圖3.3 Modbus存儲區


      注意上述程序中使用的數據是通過數據塊進行設置的: 

        

      圖3.4 通過數據塊設置V寄存器數據


      而且需要注意,如同使用高速計數器、PID等,要為MBUS_SERVER功能塊分配空間用于設定相關參數: 

        

      圖3.5 設置庫存儲器

       

      圖3.6 分配地址

      ③連接PLC后點擊下載程序
       

      圖3.7 連接PLC后點擊下載程序


      ④查找PLC 

        

      圖3.8 查找PLC


      ⑤與PLC建立通信連接 

        

      圖3.9 與PLC建立通信連接


      ⑥下載程序 

        

      圖3.10 下載程序


      ⑦運行PLC 

        

      圖3.11 運行PLC


      ⑧在STEP 7中監視 

        

      圖3.12 在STEP 7中監視


      ⑨設置觸點 

        

      圖3.13 設置觸點


      ⑩設置觸點為ON 

        

      圖3.14 設置觸點為ON


      ⑪打開ModbusPoll 

        

      圖3.15 打開ModbusPoll


      ⑫點擊Connect 

        

      圖3.16 點擊Connect

      ⑬設置連接參數
       

      圖3.17 設置連接參數


      ⑭讀取默認讀寫情況下的數據 

        

      圖3.18 讀取默認讀取情況下的數據


      ⑮設置讀寫參數 

        

      圖3.19 設置讀寫參數


      ⑯設置讀寫參數 

        

      圖3.20 設置讀寫參數

      ⑰讀取結果
       
      圖3.21 讀取結果

      2.報文分析

       

      圖3.22 Modbus TCP 報文格式

        Modbus TCP的報文形式

      • 事務處理標識箱:Modbus請求/響應事務處理的標識
      • 協議標識符:0=Modbus協議
      • 長度:當前之后的字節總數
      • 單元標識符:串行鏈路活其它總線的從站識別
      • 功能碼:1——讀取輸出線圈、2——讀取輸入線圈、3——讀取保持寄存器、4——讀取輸入寄存器、5——寫入單線圈、6——寫入單寄存器、15——寫入多線圈、16——寫入多寄存器
      • 數據:根據功能碼不同

       

      圖3.23 Modbus TCP 報文

      TX發送報文

      • 00 03:事務處理標識箱
      • 00 00:Modbus協議
      • 00 06:后面有6個字節的數據
      • 01:1號從站
      • 03:讀取保持寄存器
      • 00 0A:從0AH=10地址開始
      • 00 14:讀取14H=20個數據

      需要注意的是,雖然這里我們報文中顯示是從地址10開始,但實際上開始的地址需要結合PLC中MBUS_SERVER功能塊的端口設置的開始地址,例如本文中圖3.2設置的是VB10000,在軟件Modbus Poll中的操作的起始地址是VB10000+2×20=VB10020(數據是以兩字節為一單元)。
      RX接收報文

      • 00 03:事務處理標識箱
      • 00 00:Modbus協議
      • 00 06:后面有6個字節的數據
      • 01:1號從站
      • 03:讀取保持寄存器
      • 28:后面有40個字節的數據
      • 00 0A:第一個數據10
      • 00 0B:第二個數據11
      • 00 0C:第三個數據12
      • 00 0D:第四個數據13
      • 00 0E:第五個數據14
      • 00 0F:第六個數據15
      • 00 10:第七個數據16
      • 00 11:第八個數據17
      • 00 12:第九個數據18
      • 00 13:第十個數據19
      • 00 14:第十一個數據20
      • 00 15:第十二個數據21
      • 00 16:第十三個數據22
      • 00 17:第十四個數據23
      • 00 18:第十五個數據24
      • 00 19:第十六個數據25
      • 00 1A:第十七個數據26
      • 00 1B:第十八個數據27
      • 00 1C:第十九個數據28
      • 00 1D:第二十個數據29

      注意由于窗口不夠長這里的RX部分報文沒有顯示出來

      四、PLC——Client、PC——Server

      1.流程

        PLC作為客戶端PC作為服務端的流程類似,只不過在程序中需要調用的是MBUS_CLIENT功能塊而在PC中需要使用的是Modbus Slave軟件。
      在STE7中的程序:
       

      圖4.1 MBUS_CLIENT功能塊


      上述功能塊的各端口含義: 

        

      圖4.2 MBUS_CLIENT各端口含義


      不同情況下的端口設置: 

        

      圖4.3 MBUS_CLIENT不同情況下的端口設置

      根據圖4.2可知,圖4.1中的程序設置了客戶端需要的服務端的IP為192.168.2.2、IP端口為502、寫入數據、從第1個地址開始、寫入10個數據、寫入的數據存放在以VB6000為開始的V寄存器中。

      同樣通過數據塊設置V寄存器:
       

      圖4.4 通過數據塊設置V寄存器數據

       

      圖4.5 Modbus Slave讀取到的數據

      2.報文分析

       

      圖4.6 Modbus Slave通信報文

      TX發送報文

      • 11 64:事務處理標識箱
      • 00 00:Modbus協議
      • 00 06:后面有06H=6個字節的數據
      • FF:255號從站
      • 10:寫入多個保持寄存器
      • 00 00:從00H=0地址開始
      • 00 0A:讀取0AH=10個數據

      RX接收報文

      • 11 64:事務處理標識箱
      • 00 00:Modbus協議
      • 00 1B:后面有1BH=27個字節的數據
      • FF:255號從站
      • 00 00:從00H=0地址開始
      • 00 0A:讀取0AH=10個數據
      • 16:后面有16H=20個字節數據
      • 00 14:第一個數據20
      • 00 16:第二個數據22
      • 00 18:第三個數據24
      • 00 1A:第四個數據26
      • 00 1C:第五個數據28
      • 00 1E:第六個數據30
      • 00 20:第七個數據32
      • 00 22:第八個數據34
      • 00 24:第九個數據36
      • 00 26:第十個數據38
          
        圖4.7 顯示報文

      總結

        本文基于S7-200 SMART和Modbu Poll、Modbus Slave實現了PC與PLC之間的Modbus TCP通信。過程比較詳細,提供給適合剛剛入門的小白食用,包學包會,學不會,那就再學學😁

      Tags:TCP通信,200smart,modbus  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      推薦文章
      最新推薦
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 国产色婷婷精品综合在线| 日韩亚洲国产综合久久久| 色婷婷久久综合中文久久蜜桃| 一本一本久久A久久综合精品| 国产一区二区三区亚洲综合| 亚洲综合无码无在线观看| 天天躁日日躁狠狠躁综合| 亚洲第一页综合图片自拍| 久久狠狠色狠狠色综合| 亚洲综合色一区二区三区小说| 色综合久久综合网观看| 色综合天天综合网国产国产人| 东京热TOKYO综合久久精品| 国产精品综合专区中文字幕免费播放| 国产成人综合久久精品尤物| 色欲综合久久中文字幕网| 色综合久久综合网| 自拍三级综合影视| 2020国产精品亚洲综合网| 婷婷综合久久中文字幕蜜桃三| 激情五月激情综合网| 综合久久久久久久综合网| 国产精品综合色区在线观看| 香蕉尹人综合在线观看| 亚洲国产综合专区在线电影| 狠狠色综合7777久夜色撩人| 色欲香天天天综合网站| 激情综合色综合久久综合| 狠狠色狠狠色综合日日五| 国产在线五月综合婷婷| 人人婷婷色综合五月第四人色阁| 综合五月激情五月开心婷婷| 一本色道久久综合狠狠躁| 香蕉99久久国产综合精品宅男自| 色婷婷综合久久久| 亚洲妓女综合网99| 色欲综合一区二区三区| 奇米综合四色77777久久| 亚洲一本综合久久| 色综合久久久久久久久五月 | 久久婷婷五月综合97色|