视频二区制服丝袜人妻欧美,亚洲欧美日韩中文高清WWW777 ,丰满少妇女人A毛片视频,国产成人精品日本亚洲11,亚洲国产成人手机在线电影 ,午夜福利一区二区,中文字幕乱码一区二区免费,国产精品高清一区二区不卡

      使用Modbus Poll和Modbus Slave調試Modbus通訊

      2023/9/17 1:03:53 人評論 次瀏覽 分類:電子技術  文章地址:http://www.fg316.com/tech/5098.html

      MODBUS學習必備的三大神器分別是Modbus Poll、Modbus Slave及VSPD,可以非常方便的進行MODBUS調試。

      ModbusPoll軟件主要用于仿真Modbus主站或Modbus客戶端;ModbusSlave軟件主要用于仿真Modbus從站或Modbus服務器;而VSPD全稱Configure Virtual Serial Port Driver,是用來給電腦創建虛擬串口使用的。


      Modbus Poll

      MODBUS主機仿真器,用于測試和調試MODBUS從設備。該軟件支持ModbusRTU、ASCII、TCP/IP。用來幫助開發人員測試MODBUS從設備,或者其它MODBUS協議的測試和仿真。它支持多文檔接口,即可以同時監視多個從設備/數據域。每個窗口簡單地設定從設備ID,功能,地址,大小和輪詢間隔。可以從任意一個窗口讀寫寄存器和線圈。如果你想改變一個單獨的寄存器,簡單地雙擊這個值即可。或者你可以改變多個寄存器/線圈值。提供數據的多種格式方式,比如浮點、雙精度、長整型(可以字節序列交換)。

      Modbus Poll使用

      Modbus Poll安裝過程一直點next即可,安裝完成之后破解一下(輸一下密鑰,很簡單),軟件界面如下圖所示。



      狀態框:

      Tx=0表示向主站發送數據幀次數,圖中為0次;
      Err=0表示通訊錯誤次數,圖中為0次;
      ID=1表示模擬的Modbus子設備的設備地址,圖中地址為1;
      F=03表示所使用的Modbus功能碼,圖中為03功能碼;
      SR=1000ms表示發送周期,1s一次。
      紅字部分,表示當前的錯誤狀態,“No Connection”表示未連接狀態。

      單擊Setup----Read/Write Definition… 或者按F8進行參數設置,會彈出參數設置對話框。



      Slave ID為要訪問的Modbus從機的地址;

      Function功能碼的選擇;
      Address為寄存器起始地址,根據功能碼的不同,訪問地址不同;
      Quantity為訪問寄存器個數;
      Scan Rate為讀取數據周期,輪詢發送,單位毫秒。

      MODBUS協議同時規定了二十幾種功能碼,但是常用的只有8種,用于對存儲區的讀寫,如下表所示:



      當然我們用的最多的就是03和06,一個是讀取數據,一個是修改數據。


      點擊Display可以設置數據的顯示方式,默認為Signed方式(16進制無符號二進制),數據范圍為-32768~32767。



      點擊Connection→Connect或者按“F3”進行連接


      端口主從機分別選擇我們虛擬出來的com10和com11端口,其他選項如波特率9600,比特位8,校驗位1,無等價位等可以保持不變,然后點擊確定進行連接,未連接成功窗口第二行會給出提示信息。



      Response Timeout,表示讀取超時時間,從站在超時時間內沒有返回數據,則認為通訊失敗。

      Delay Between Polls,每次掃描的最小間隔時間,默認為20ms。
      Remote Modbus Server,表示TCP/IP模式時的終端從站設備的網絡設置。
      IP Address,表示TCP/IP模式時從站IP地址。
      Port,表示TCP模式時從站網絡端口
      Connect Timeout 表示TCP鏈接超時時間
      IPV4/IPV6

      這里我們等從機設置完成再進行連接

      修改寄存器值(06或16功能碼時生效):
      在主窗口寄存器地址上雙擊鼠標,彈出修改對話框,如下圖:



      Slave為Modbus從站的地址

      Address 為當前操作的寄存器的地址
      Value 修改的值 范圍為-32768-32767
      Use Function 設置功能碼,是06還是16

      Modbus Slave
      Modbus從設備仿真器,可以仿真32個從設備/地址域。每個接口都提供了對EXCEL報表的OLE自動化支持。主要用來模擬Modbus從站設備,接收主站的命令包,回送數據包。幫助MODBUS通訊設備開發人員進行MODBUS通訊協議的模擬和測試,用于模擬、測試、調試MODBUS通訊設備。可以32個窗口中模擬多達32個MODBUS子設備。Modbus Slave與Modbus Poll的用戶界面相同,支持功能01,02,03,04,05,06,15,16,22和23,監視串口數據。


      Modbus Slave使

      安裝過程一直點next即可,安裝完成之后破解一下(輸一下密鑰,很簡單),軟件界面如下圖所示。



      ID:表示從機的地址

      F:功能碼
      下方為寄存器數據

      點擊Setup----slave definition 設置從機數據



      點擊 Connection -> Connect或者按“F3”進行連接



      要注意的一個區別是從機這里的Function 是4個存儲區

      輸出線圈
      輸入線圈
      保持寄存器
      輸入寄存器

      Modbus協議規定了4個存儲區 分別是0、1、3、4區,其中1區和4區是可讀可寫,1區和3區是只讀。



      和主機部分基本一致,不再闡述,就是要注意主機如果選擇COM10從機就要選擇COM11


      雙擊從機寄存器數據框,即可修改寄存器數據


      查看通訊數據幀:

       

      點擊“Display”----“Communicatio”,可以調出串口收發數據幀監視信息對話框,用來查看分析收發的數據幀。如下圖所示:



      如果是從機 Rx為接收到的主機消息幀,
      Tx為發送到的主機數據, 我們可以對數據進行分析:

      1、主機對從機讀數據操作

      主機發送報文格式如下:


      含義:

      0x01:從機的地址
      0x03:查詢功能,讀取從機寄存器的數據
      0x00 0x00:代表讀取的起始寄存器地址.說明從0x0000開始讀取.
      0x00 0x0A:查詢的寄存器數量為0x000A(10)個 Modbus把數據存放在寄存器中,通過查詢寄存器來得到不同變量的值,一個寄存器地址對應2字節數據; 寄存器地址對應著從機實際的存儲地址
      0x62 0x67:循環冗余校驗 CRC

      從機回復報文格式如下:



      含義:

      0x01:從機的地址
      0x03:查詢功能,讀取從機寄存器的數據
      0x14:返回字節數為14個
      0x00… 0x00:寄存器的值
      0x62 0x67:循環冗余校驗 CRC

      從機修改寄存器值,主機接收也會改變 功能碼03



      主機修改寄存器值,從機寄存器值會改變 功能碼06



      Virtual Serial Port Driver 9.0虛擬com端口工具

      Modbus調試需要需要兩臺電腦聯機或者上位機與下位機進行調試。有了這個工具后就可以在一個電腦上虛擬出兩個連接的com端口,就可以在一臺電腦上進行調試。

      作者:Z小旋

      共有訪客發表了評論 網友評論

        客戶姓名:
      郵箱或QQ:
      驗證碼: 看不清楚?