欧美午夜欧美,台湾成人av,久久av一区,最近看过的日韩成人

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

電子開發(fā)網(wǎng)電子設(shè)計(jì) | 電子開發(fā)網(wǎng)Rss 2.0 會(huì)員中心 會(huì)員注冊(cè)
搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> plc工業(yè)軟件使用 >> 正文

干貨 | Modscan32  Modsim32 Modbus協(xié)議調(diào)試分享_modbus調(diào)試

作者:佚名    文章來源:網(wǎng)絡(luò)整理    點(diǎn)擊數(shù):    更新時(shí)間:2024/8/29

Modbus協(xié)議采用主從式通信,日常使用較多的是Modbus RTU和Modbus TCP/IP兩種。

比較常用的Modbus通信調(diào)試軟件有ModScan32和ModSim32。

ModScan32主要用來模擬主設(shè)備,它可以發(fā)送指令到從設(shè)備(使用Modbus協(xié)議的智能儀表等設(shè)備終端),從機(jī)響應(yīng)之后,就可以在界面上返回相應(yīng)寄存器的數(shù)據(jù)。

ModSim32用來模擬從設(shè)備,它可以模擬采用Modbus協(xié)議的智能終端。

在和組態(tài)軟件交互的過程中,咱們的板子或者軟件一般作為從設(shè)備,為了了解Modbus協(xié)議的具體交互過程,我們今天來使用ModScan32軟件和串口助手來調(diào)試一下Modbus協(xié)議。

實(shí)現(xiàn)目標(biāo)

  • 熟悉ModScan32軟件的使用

  • 串口助手模擬從設(shè)備與ModScan32軟件進(jìn)行數(shù)據(jù)交互

素材獲取

本文相關(guān)軟件及Modbus協(xié)議手冊(cè)的獲取方式在微信交流群內(nèi)發(fā)布。

測(cè)試前提

創(chuàng)建一對(duì)虛擬串口供調(diào)試使用。

 
我們這里選擇COM4和COM5,使用這一對(duì)虛擬串口可以實(shí)現(xiàn),COM4發(fā)送的數(shù)據(jù)可以轉(zhuǎn)發(fā)至COM5中,反過來,COM5發(fā)送的數(shù)據(jù)可以轉(zhuǎn)發(fā)到COM4中,通過這兩個(gè)COM口可以實(shí)現(xiàn)數(shù)據(jù)的交互。

ModScan32軟件使用教程

ModScan32是一個(gè)運(yùn)行在Windows下,作為在RTU或者ASCII傳輸模式下的Modbus協(xié)議主設(shè)備的應(yīng)用程序。

把一個(gè)或多個(gè)Modbus從站設(shè)備通過串口,調(diào)制解調(diào)器或者網(wǎng)絡(luò)連接到電腦上,就可以使用ModScan 讀取和修改數(shù)據(jù)點(diǎn)。

打開軟件

雙擊ModScan32.exe打開軟件。

軟件界面介紹

 
窗口右上角有兩個(gè)計(jì)數(shù):

Number of Polls: 表示ModScan32軟件發(fā)送的數(shù)據(jù)包個(gè)數(shù);

Valid Slave Responses: 表示從設(shè)備返回的應(yīng)答個(gè)數(shù)。

如果這兩個(gè)計(jì)數(shù)都在增加,表明數(shù)據(jù)通訊正常。

連接串口

首先要對(duì)安裝Modbus設(shè)備的串口通信參數(shù)進(jìn)行配置,連接參數(shù),串口選擇串口通信的串口,這里選擇上面一對(duì)虛擬串口中的COM4。

 

點(diǎn)擊協(xié)議選擇按鈕,在彈出對(duì)話框中設(shè)置Modbus傳輸模式,我們選擇RTU進(jìn)行測(cè)試。

通信參數(shù)設(shè)置

通信參數(shù)包括:起始地址(Address)、Device Id、寄存器長(zhǎng)度(Length)及讀取的功能代碼。
 

其中MODBUS Point Type(Modbus數(shù)據(jù)模型)包括以下四種:

 

  • 01:COIL STATUS:讀寫開關(guān)量類型(DO),位操作,可用于設(shè)定端口輸出狀態(tài),或者讀取該位的輸出狀態(tài),常用于電磁閥輸出、MOSFET輸出、LED顯示等;
  • 02:INPUT STATUS:讀開關(guān)量類型(DI),位操作,通過外部設(shè)定改變輸入狀態(tài),可讀但是不可寫,常用于撥碼開關(guān)、接近開關(guān)等;
  • 03:HOLDING REGISTER:保持寄存器,讀寫WORD類型,字操作,輸出參數(shù)或者保持參數(shù),控制器運(yùn)行時(shí)被設(shè)定的某些參數(shù),可讀可寫,常用于模擬量輸出設(shè)定值、PID運(yùn)行參數(shù)、變量閥輸出大小、傳感器報(bào)警上下限等;
  • 04:INPUT REGISTER:輸入寄存器,讀WORD類型,字操作,輸入?yún)?shù),控制器運(yùn)行時(shí)從外部設(shè)備獲得的參數(shù),可讀但是不可寫,常用于模擬量輸入。

根據(jù)硬件說明書選擇具體的Modbus數(shù)據(jù)模型。

連接

點(diǎn)擊菜單“連接設(shè)置”中的“連接”,彈出的界面中配置好通訊參數(shù)之后,點(diǎn)擊“確定”,建立連接。

 

使用串口助手調(diào)試

查詢

主機(jī)ModScan32軟件發(fā)送讀從機(jī)線圈寄存器當(dāng)前狀態(tài)的指令,從機(jī)(串口助手模擬從機(jī))收到的數(shù)據(jù)為:01 01 00 00 00 64 3D E1

此數(shù)據(jù)包為讀取線圈寄存器的指令,具體含義為:

從機(jī)地址 0x01
功能碼 0x01
尋址地址 0x0000
寄存器數(shù)量 0x0064
CRC校驗(yàn)碼 0x3DE1

 

應(yīng)答

正常主機(jī)發(fā)送一個(gè)數(shù)據(jù)包,我們要在一定時(shí)間內(nèi),發(fā)送一個(gè)固定格式的數(shù)據(jù)包作為應(yīng)答,否則會(huì)提示超時(shí)“MODBUS Message TIME-OUT”或者接收的應(yīng)答格式不正確“Received Invalid Response to MODBUS Query”或者提示校驗(yàn)錯(cuò)誤“Checksum Error in Response Message”等提示。

 

正確的應(yīng)答包如下:

01 01 0D 08 00 00 00 00 00 00 00 00 00 00 00 00 AD E5

從機(jī)地址 0x01
功能碼 0x01
返回字節(jié)數(shù) 0x0D
數(shù)據(jù)1 0x08
數(shù)據(jù)2 0x00
CRC校驗(yàn)碼 0xADE5

返回字節(jié)數(shù)N=讀取寄存器數(shù)量/8,如果余數(shù)不為0,則N=N+1。

此實(shí)例中讀取寄存器的數(shù)量為0x64,即100,100/8=12余4,所以N=12+1,即0x0D 。

返回?cái)?shù)據(jù)的每一位對(duì)應(yīng)線圈狀態(tài),1-ON,0-OFF。

每一字節(jié)的數(shù)據(jù)的最低位代表最低地址的線圈狀態(tài),如果不夠8位,字節(jié)高位填充為0。

 

主機(jī)ModScan32軟件收到應(yīng)答之后,寄存器地址0x0004位置的值被修改為0x01,并且Valid Slave Responses計(jì)數(shù)+1。

 

將數(shù)據(jù)的第一個(gè)字節(jié)0x08用二進(jìn)制表示為0b0000 1000,正好第四位為1,跟我們應(yīng)答返回的內(nèi)容一致。

同理,如果從機(jī)返回?cái)?shù)據(jù)包:01 01 0D FF 00 00 00 00 00 00 00 00 00 00 00 00 E6 53 ,代表寄存器00001~00008的線圈狀態(tài)都為ON:

 

主機(jī)設(shè)置線圈通斷狀態(tài)

請(qǐng)求

 

修改地址0001的值為0x01的串口數(shù)據(jù)為:01 05 00 00 FF 00 8C 3A

 

MODBUS部分功能碼

功能碼 含義 寄存器地址 位操作/字操作 操作數(shù)量
01 讀線圈狀態(tài) 00001-09999 位操作 單個(gè)或多個(gè)
02 讀離散輸入狀態(tài) 10001-19999 位操作 單個(gè)或多個(gè)
03 讀保持寄存器 40001-49999 字操作 單個(gè)或多個(gè)
04 讀輸入寄存器 30001-39999 字操作 單個(gè)或多個(gè)
05 寫單個(gè)線圈 00001-09999 位操作 單個(gè)
06 寫單個(gè)保持寄存器 40001-49999 字操作 單個(gè)
15 寫多個(gè)線圈 00001-09999 位操作 多個(gè)
16 寫多個(gè)保持寄存器 40001-49999 字操作 多個(gè)

功能碼可以分為位操作和字操作兩類。位操作的最小單位為bit,字操作的最小單位為WORD(兩個(gè)字節(jié))。

由上表可知,主機(jī)修改某個(gè)寄存器的值的功能碼為:0x05,即寫單個(gè)線圈,寫單個(gè)線圈的數(shù)據(jù)包的結(jié)構(gòu)為:

從機(jī)地址 0x01
功能碼 0x05
輸出地址 0x0000
輸出值 0xFF00
CRC校驗(yàn)碼 0x8C3A

注意:設(shè)置某個(gè)線圈值為ON的話,該值為0xFF00,設(shè)置線圈值為OFF的話,該值為0x0000。

應(yīng)答

響應(yīng)跟請(qǐng)求是一樣的數(shù)據(jù)包:01 05 00 00 FF 00 8C 3A

從機(jī)地址 0x01
功能碼 0x05
輸出地址 0x0000
輸出值 0xFF00
CRC校驗(yàn)碼 0x8C3A

總結(jié)

其實(shí)直接使用ModSim32軟件作為從機(jī),ModScan32軟件作為主機(jī),二者進(jìn)行數(shù)據(jù)通訊,這樣調(diào)試起來最便利了。

不過我們做這個(gè)演示的目的是了解ModScan32軟件的工作過程,如果使用ModSim32軟件,看不明白工作過程。

使用串口助手的話,對(duì)于整個(gè)工作的過程比較清晰,也方便我們下一步自己編寫Modbus從機(jī)軟件。

歡迎關(guān)注

小伙伴們可關(guān)注微信公眾號(hào):電子開發(fā)網(wǎng) ,與更多同道中人一起成長(zhǎng)。

聲明:此軟件僅供學(xué)習(xí)使用,請(qǐng)支持正版。
Tags:Modscan32,Modsim32,Modbus  
責(zé)任編輯:admin
相關(guān)文章列表
西門子PLC S7-200 smart如何使用Modbus 485通訊傳輸接收數(shù)據(jù)_200
S7-200和組態(tài)王的連接,cpu226 PLC 與組態(tài)王如何連接
基于S7-200SMART實(shí)現(xiàn)Modbus TCP通信_(tái)200smart modbus tcp
三菱plc FX3U與三菱E800變頻器專用指令通信應(yīng)用,IVDR指令和 IVCK
三菱PLC的modbus-rtu通訊實(shí)例_三菱小型PLC FX3U系列Modbus 通訊教
西門子200SMART與眾辰變頻器的MODBUS通信實(shí)例40001和十六進(jìn)制的轉(zhuǎn)
西門子S7-200 smart通過modbus rtu 協(xié)議采集K37A數(shù)據(jù)項(xiàng)目案例
昆侖通態(tài)MCGS觸摸屏和西門子V20變頻器之間的MODBUS通訊
Modbus通信協(xié)議介紹以及Modbus Poll、Slave軟件使用介紹_modbus 
【工具教程】Modbus Slave使用教程
Modscan32軟件的使用 Modsim32
西門子plc控制英威騰變頻器實(shí)例,西門子200SMART的MODBUS通訊!
施耐德PM500電量表通過MODBUS協(xié)議與組態(tài)王通訊
組態(tài)軟件的無線485通訊實(shí)例,組態(tài)王modbus通訊實(shí)例
組態(tài)王和三菱plc 基于數(shù)傳電臺(tái)的組態(tài)王控制實(shí)現(xiàn)遠(yuǎn)程采集控制器PL
KingView組態(tài)王與信捷PLC通訊解決方案 MODBUS通訊設(shè)置
KingView組態(tài)王通過modbus與第三方設(shè)備通訊,如何實(shí)現(xiàn)字節(jié)或字的
組態(tài)王modbus通信用法教程modbus-rtu、modbus-tcp莫迪康通信配置
KingView組態(tài)王如何獲取modbus TCP數(shù)據(jù)?_組態(tài)王數(shù)據(jù)轉(zhuǎn)發(fā)modbust
組態(tài)王連接ModbusTCP設(shè)備,利用Modbus Slave模擬從站設(shè)備
請(qǐng)文明參與討論,禁止漫罵攻擊,不要惡意評(píng)論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個(gè)字
[ 查看全部 ] 網(wǎng)友評(píng)論
最新推薦
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 招远市| 裕民县| 原阳县| 东阳市| 冀州市| 溧水县| 天等县| 土默特左旗| 叶城县| 梁平县| 阳谷县| 白城市| 阆中市| 枞阳县| 吉隆县| 宣武区| 渝北区| 昭平县| 金平| 康马县| 鄂托克前旗| 朝阳县| 濉溪县| 阳西县| 自贡市| 鸡东县| 崇明县| 平武县| 宁陕县| 视频| 乌鲁木齐县| 洪湖市| 瓦房店市| 巴彦县| 赤水市| 葵青区| 榆社县| 武鸣县| 临泉县| 平乡县| 上思县|