IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> modscan32为主设备 -> 正文阅读

[网络协议]modscan32为主设备

一、modscan32为主设备,界面介绍

首先,最重要的一步:

打开modscan,不要连可执行文件都找不到哦,ModScan32.exe

打开后,是如下界面,标注本人添加

?

?

?

?本次讲解,主要为模拟主站,接收从站的数据(遥信、遥测),并且给从站下令(遥控、遥调)

Connetion→connect,后如图

类型:直接默认Remote modbus TCP Server,IP Address:从站IP地址,端口:默认502

PS:本地测试网段要跟从站一个网段,并在一个内网里,或者你测试也可直接在从站机器上测发数据的IP地址,设好后,回到一开始的界面,

主要调整的几个位置:①Device Id,从站和主站约定好的设备地址,按照实际情况填写,如果填错,会出现连不上的情况;

②Address,接收数据的起始地址,最小为1,不可为0,modbus tcp规约中,点表都是从0开始的,但测试时是从1开始的,例:遥信实际为0→99,测试时1→100,遥测实际为0、2、4、6、8...100,测试时1、3、5、7、9...101

③Length,长度,modscan工具最长可接100,也就是图中设的100,

modscan使用时有个需注意的问题:如果实际从站只发出10个遥测,那长度设置太长 ,超过24,一般会造成工具中数据不刷新或者直接溢出,无法查看的情况,所以根据实际情况进行长度设置。

100长度,可接100个遥信,50个遥测(单精度浮点占两个寄存器位置)

④图中的01、02、03、04就是四个功能码,一般01为遥信和遥控、02一般不用、03为遥测和遥调、04为统计量上送,你要看哪个数据就选哪个类型

⑤数据类型选择区:最常用的就是3:2标志的Floating Pt.,如果测出的数据乱码,可以点旁边的Swapped FP,转换报文的高低字节,我们看到的数据都是解析后的,实际真正传输的是报文,其之后的6:4是双精度浮点,之前的几个是整型、小数之类的

最后,介绍下遥控,遥调,找到测试出对应的点,双击后,如图所示

在Value中输入你要下的令,然后点击Update即可,模拟有风险,下令需谨慎

注意:数据溢出如果无法连接,那么需要先断开连接再尝试连接,将长度改小些,经常使用才会熟能生巧

正常测出数据截图:

?二、一直显示MODBUS MESSAGE TIME-OUT

背景描述
1、modsim做modbus设备从站

2、modcan做modbus设备主站

3、valid slave responses:0 ?也就是没有收到数据

?4、modbus message time out

解决方案
建议用modbus poll与modbus slave两个软件来做主从站测试,modscan不适合做这个,存在缺陷;

?三、报文解析

浅色部分即为Modscan发送的报文:

01 03 00 00 00 0A C5 CD 其中,

01 从站地址

03 Modbus功能码

00 00 为所要读取的Modbus从站的起始地址

00 0A 为所要读取的寄存器长度,即所要读取的为10个字。40001——40010

C5 CD为指令的CRC校验

深色部分即为Modscan接收的报文:

01 03 14 00 0A 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0A 29 33

01 从站地址

03 Modbus功能码

14指令中所包含的数据数量,即14H(十进制即20)个字

00 0A 40001地址寄存器的值(16进制)

00 02 40002地址寄存器的值(16进制)

00 03 40003地址寄存器的值(16进制)

00 04 40004地址寄存器的值(16进制)

00 05 40005地址寄存器的值(16进制)

00 06 40006地址寄存器的值(16进制)

00 07 40007地址寄存器的值(16进制)

00 08 40008地址寄存器的值(16进制)

00 09 40009地址寄存器的值(16进制)

00 0A 40010地址寄存器的值(16进制)

29 33为指令的CRC校验

Modsim:显示 --> 十六进制(此时数据均显示为16进制,同理二进制、浮点数等也一样)。然后,显示 --> 显示数据流,在此可以看到Modbus发送与接收的报文信息。其与Modscan类似,不再冗述。
?

四、ModSim32和ModScan32区别

ModSim32-ModScan32Modbus调试工具使用及配置说明

ModSim32下边选择Remote TCP/IP Server连接方式,IP Address处填写本机IP地址,Service处为默认的502即可,点击OK。

按照Modbus协议的要求去读相应功能代码(0、1、3、4)的地址即可,注意选择相同的Device Id、功能代码、起始地址(Address)和长度(Length),否则会提示

,这是ModSim32和ModScan32种的地址不一样所致。

另外,还需要注意的是,ModSim32可以对所有功能代码的地址进行写操作,而ModScan32只能对0和4功能代码的地址进行写操作,不能对1和3功能代码的地址进行写操作。对于ModScan32而言,1和3功能代码的地址是只读的,而0和4功能代码的地址是可读写的。 在ModSim32中分别对地址30001、30002、30003写入99、123、2217,则在图6的ModScan32中可以看到30001、30002、30003三个地址显示的值也为99、123、2217。
?


?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:34:02  更:2021-08-04 11:35:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 13:32:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计