秋水秋叶

Welcome To Everybody From Alan Bruce !

  • 博客(33)
  • 资源 (10)
  • 论坛 (57)
  • 收藏
  • 关注

原创 如何快速入门Modbus协议(是概述也是总结)

先干了这碗鸡汤第一句,Modbus协议是一种简单的应用层协议。但是,各行如隔山,入门者遇见Modbus协议犹觉面至绝壁,本文以自身多年从业经验分享MODBUS的学习经验。对协议的陌生感主要还是不熟悉设计协议人的惯常套路,在此先要洗个脑。大部分协议大致包含3个部分:交互流程、报文格式、数据定义。交互流程中不仅介绍通信过程中有哪些角色,同时定义了角色之间可完成哪些功能及其实现步骤。通常协议中将交互流程和报文格式放在一起定义,建议阅读者先从流程入手,不要直接去关注报文格式的具体定义。数据定义看似是一份协议

2020-09-25 14:43:17 2286 6

原创 MThings和MODBUS Poll 比较

希望通过直观比较,让读者更快的认识MThings能够解决什么问题。项目 Modbus Poll MThings 串口-MODBUS-RTU ✔ ✔ 串口-MODBUS-ASCII ✔ ✔ TCP客户端-MODBUS-TCP ✔ ✔ TCP客户端-MODBUS-RTU ✔ ✔ TCP客户端-MODBUS-ASCII ✔ ✔ TCP服务端-MODBUS-TCP ✘ ✔ TCP服务端-MODBU

2020-08-27 11:48:31 3313 6

原创 MThings 下载地址 (支持以主机或从机方式进行MODBUS协议簇调试调测 工具 助手)

如何获取MODBUS调试调测软件MThings软件包

2020-05-31 18:48:50 14462 25

原创 一种成熟的MODBUS调试测试工具助手软件(MThings) 免费中文

一种成熟的MODBUS调试测试工具助手软件(MThings) 免费中文现有MODBUS调测软件种类丰富,基本可以满足日常调测需求,但是面对用户群体对高效灵活友好的进一步需求都存在着差距。MThings是一款全新的标准化MODBUS调测工具,提供主从机一体化操作。全功能覆盖MODBUS Poll Slave,功能全网最强。

2020-05-30 15:18:42 13884 16

原创 【重要】MThings V0.2.0更新要点

小时候,幸福是件很简单的事;长大后,简单是件很幸福的事。下载地址:https://gulink.blog.csdn.net/article/details/106459315或 百度搜索“MThings 下载”01. [新增]支持CRC字节序大端模式。 MODBUS-RTU标准协议中,CRC字节序为小端,为适应部分厂家设备的特殊性,用户可在设备高级参数中指定CRC字节序为大端或小端,从而控制MThings的CRC校验方法和数据打包方法。02. [新增]支持设备...

2020-11-09 15:51:55 286 1

原创 MThings分享大赛,奖品多多,等你来拿

分享MThings优秀使用经验,携带分享链接(博客、视频、发帖)即可报名参加大众评选!

2020-10-29 10:14:46 107 1

原创 即刻免费获取Modbus学习资料和工具集

加入我们的“MThings(MODBUS)技术交流”QQ群(683664093),内有丰富Modbus资料,且实时在线技术交流,大佬多。《从MODBUS到透明就绪》下载《MODBUS软件开发实战指南》下载《基于Modbus协议的工业自动化网络规范 GB-T19582-2008》下载《Modbus高级通讯教程.pdf》

2020-10-22 18:59:37 533 1

转载 Modbus​协议​深入​讲解

概览Modbus​是​一种​工业​协议,​于​1979​年​开发,​旨​在​实现​自动​化​设备​之间​的​通信。 Modbus​最初​是​作为​通过​串​行​层​传输​数据​的​应用​级​协议​实现​的,​现​已​扩展​到​包括​通过​串​行、​TCP/​IP​和​用户​数据​报​协议​(UDP)​的​实现。 本文​档​提供​了​协议​实现​的​深入​讲解。内容什么​是​Modbus​协议? 协议​数据​单元​(PDU) 应用​数据​单元​(ADU) 新​功能​代码 网络层 ADU​

2020-10-16 10:32:49 283 1

原创 【重要】MThings V0.1.9更新要点

我们一路奋战,不是为了改变世界,而是为了不让世界改变我们。下载地址:https://gulink.blog.csdn.net/article/details/106459315########################################版本: V0.1.9变更:01. [新增]支持通过拖拽方式新增拷贝数据配置行。02. [新增]支持通过拖拽方式拷贝模拟从机中的数值配置。03. [新增]支持查看TCP客户端链接的当前本地端口号和TCP服务端的对端端口号。04

2020-10-15 19:35:35 336 1

原创 MThings从入门到精通(2):基于MThings模拟PLC设备与触摸屏(HMI)建立MODBUS通信

基于MThings模拟PLC设备与触摸屏(HMI)建立MODBUS通信https://www.bilibili.com/video/BV1sK411P7pj

2020-09-28 19:28:14 488

原创 MODBUS TCP 的应用和网络分层

关于MODBUS - TCP协议,发现其在应用过程中很多人对其理解得五花八门,这里不妨再增加一门。谈MODBUS TCP协议肯定要分层看,Modbus是应用层协议,其所依赖的网络层协议栈可以是TCP,也可以是UDP。而TCP又可以分为客户端和服务器。有趣的是,MODBUS-TCP由于其应用于全双工网络环境,注定其行为与MODBUS-RTU/ASCII不同。关于链接模式常见的局域网链接模式,MODBUS主机就是TCP客户端。MODBUS主机也可以作TCP服务端,这种方式一般用于主从机.

2020-09-25 16:54:41 602

原创 MThings从入门到精通(1):搭建模拟主机(串口)调试MODBUS从机设备

基于MThings搭建模拟主机调试MODBUS从机设备

2020-09-12 18:49:22 413 1

原创 基于MThings完成MODBUS设备在线状态扫描

MThings可快速便捷完成MODBUS设备在线状态扫描,操作步骤如下:1、创建串口设备(模拟主机),地址区间设置为最大:1~247,点击“添加”按钮2、进入数据页面,选择任一设备,添加一条测试数据,并同步至其它设备3、进入统计页面,启动统计功能4、回到数据页面,启动批量读,选择循环,并同步至其它设备5、进入统计页面查看结果,切换至设备视角,可查看每台设备是否出现超时或其他异常,如未出现丢包,代表设备通信状态正常。...

2020-09-08 10:59:37 1502 1

原创 【重要】MThings V0.1.8更新要点

本次版本界面变更较大,已同步推出使用手册,建议下载替换原软件包。部分变更可能导致网络链接配置不兼容,升级后,请重新确认网络链接中的本地端口号和目标端口信息。下载地址:https://gulink.blog.csdn.net/article/details/106459315或 百度搜索“MThings 下载”########################################版本: V0.1.8变更:01. [新增]支持主界面可压缩至小窗口。02. [新增]支持丢

2020-09-08 10:12:13 180 1

原创 基于MThings玩转MODBUS协议数据配置表

日常调试测试过程中,可能会碰到调测环境总是在变化,更换一个环境后,调试口和设备地址都可能不一样,但是我们总是期望能保留已有的数据配置,无缝切换并适配新的环境。MThings为了解决这个问题,提供数据模板机制,并支持其设备动态修改所属链接和地址。其中数据模板机制,可参考博客:基于MThings分享MODBUS数据配置模板MThings 针对已创建的设备,支持修改设备关键属性,包括:设备名称、所属链接、设备地址。通过修改设备名称,用户可根据自定义需求命名更佳的标记。通过修改所属链接、设备地址,用

2020-09-04 16:24:37 673

原创 基于MThings配置MODBUS协议数据的字节序和字序

通信调试中,字节序是个常见概念,比如本地字节序、网络字节序。字节存储机制又分两种:大端(Big-Endian)和小端(Little-Endian)。MODBUS协议中同时存在字序概念,存储机制同字节序。不同的是,MODBUS数据帧中对关键字段(寄存器地址)都定义为大端字节序,但是数据部分在不同厂家的定义方式可能不同,甚至同一厂家某一型号设备中,对不同数据的字节序定义也不统一。基于MODBUS报文的字节排序,大端字节序即数据高字节在前,低字节在后,小端字节序相反。例如:01 03 04 1

2020-09-02 20:17:01 882 1

原创 【重要】MThings V0.1.7更新要点

01. [新增]支持TCP客户端短链接测试功能。当链接模式为TCP客户端模式时,通过设置“重新建链周期”可指示软件按照指定的时间间隔重启TCP链接,从而用来模拟基于TCP短链接的数据通信或测试。该参数默认值为0秒,代表不执行周期重新建链,即为长链接模式。“链接空闲保持时间”用来向软件指示当TCP链接空闲(无任何数据收发)后,按照指定的空闲保持时间后,自动断开链接,直到下一次重新建链。该参数默认值为600秒,即为10分钟。02. [新增]支持“设备启动后立即自动批量读写”功能。...

2020-07-27 22:44:08 279

原创 基于MThings配置MODBUS数据中常见的几种时间概念介绍(超时时间、间隔时间、轮询时间)

超时时间:主机使用,主机请求发出后,依据该时间判定从机回复的最大时间范围,超出该时间后,主机判定请求超时。如果超时时间设置过小,从机可能会在超时时间范围外才能回复请求,此时可能会导致总线中持续的报文冲突。间隔时间:主机使用,主机收到从机响应后,到发出下一包请求之间的时间称为间隔时间,也可称之为交互间隔时间(一次请求和响应称之为一个交互)。间隔时间仅在同步协议模式下生效,针对MODBUS-TCP异步并发模式,该参数无效。轮询时间:即使在定量的MODBUS数据交互中,由于主从机端口稳定性

2020-07-26 09:21:18 1314

原创 理解MODBUS调试调测工具MThings的应用场景

MThings可以服务于哪些应用场景?

2020-06-19 16:22:16 1312 1

原创 基于MThings实现MODBUS寄存器中位数据的读写操作

背景寄存器中按位定义数据的方法存在于很多厂家设备的MODBUS数据协议中。区别于线圈状态(RW)和离散输入(RO),寄存器中通过定义组合位数据,更有利于高效传输状态信息和设置开关量。由于位数据被定义在寄存器中,其读写操作必须遵循寄存器的读写流程。RO位数据要求从机以拼装的方式同时上报相关的位数据,而在向RW位数据写入位数据时,主机需要携带其他位数据的当前值一并下发至从机。这些处理过程相比较线圈状态(RW)和离散输入(RO)的读写操作更加复杂。目前普通的MODBUS调试调测软件都不具备这种情形下的

2020-06-08 10:48:26 1368

原创 基于MThings实现MODBUS数据直观可视化

MODBUS协议中的数据在总线传输阶段,一般定义为整形传输,这样更高效且传输不丢精度。例如,从机上报电压数据10.5V,寄存器中数据则为0X0069,主机侧收到数据后,需要将整形数据乘以0.1的系数,最终得到实际数据(10.5V)。然而大多数MODBUS调试测试软件主责实现数据收发,寄存器数据的界面呈现则显得简单粗暴。以整形十进制、十六进制方式展现获取到的数据往往并非数据实际含义,使用者为了确认数据的正确性需要想办法重新计算,不够直观的数据无疑严重影响调测效率。MThings可以让软件使用者在软

2020-06-03 20:30:48 4684 1

原创 基于MThings的MODBUS设备接入能力剖析

MThings设计为服务于标准MODBUS组网场景,同时对非标准化的组网情况同样具备支撑能力。设备接入能力在MThings中被分离为独立的四个关键要素:端口类型、协议类型、设备类型、数据配置共同组成一个完整设备,同时解耦的设备关键要素可以灵活组合,这也决定了MThings很强的组网场景适应能力。从性能方面看,MThings未对接入设备个数做限制,理论上,可以在任意通道上添加符合设备地址空间的任意台数设备。实测:测试条件:MODBUS-TCP异步模式下,由于请求并发特性,对性能

2020-06-03 11:09:10 4065 2

原创 基于MThings实现MODBUS设备数据曲线化持续监控(数据录波)

MThings的数据曲线功能是免费的。调试嵌入式设备过程中,时常需要持续对某一项变化数据的运行趋势进行观察,确认其是否符合预期。此时,MODBUS调试工具提供的数据曲线功能将发挥作用。

2020-06-02 14:51:31 5931

原创 基于MThings分享MODBUS数据配置模板

前言:在接触MThings之前,你一定没有见过这种骚操作!数据配置是什么:参考博客一种成熟的MODBUS调试测试软件第二章节为什么要分享:MODBUS中的数据定义很多,任何人都不希望因为调试环境、端口、协议类型的变化或差异,而需要重新配置一份相同MODBUS协议数据,因为工作量实在太多。MThings已经提供多种方法简化数据配置问题,例如MThings将主机、从机的数据配置设计为相互兼容,即主机配置可以直接共享给从机使用。MThings提供设备之间的数据配置一键同步功能,这一点同样参考参考博..

2020-06-02 11:41:27 5280 1

原创 基于MThings快速入门串口设备的创建和读写

基于两个不同串口,创建一个主机设备和一个从机设备,模拟主机可以向模拟从机发起数据读写。

2020-06-02 10:28:57 5239

原创 基于MThings实现MODBUS链路丢包监控

MThings不仅可以执行主从机相关的读写操作,同时可以实现对端口和设备两种不同维度的链路监测。链路监测信息主要面向丢包统计,同时将异常细化到具体的异常类型,包括超时、帧长、CRC/LRC。链路丢包监控功能不仅支持串口,同时支持TCP、UDP链路上的设备。丢包的具体信息可以通过保存的报文数据进一步详细分析。设备维度统计结果示例:端口维护统计结果示例:异常报文示例:...

2020-06-01 15:14:15 5096 2

原创 一种高效快速的MODBUS串行总线数据轮询协议

背景 串行总线(RS485)由于其非平衡传输特性的限制,广泛应用主从MODBUS RTU(ASCII)协议。主从协议严格遵循请求应答机制,尤其在主机向总线中各从机查询数据时,需要逐个设备节点、逐片寄存器发起请求。实际应用中称之为MODBUS总线数据轮询,在多设备多数据场景下,无法保证数据实时性。 问题分析 产生的数据更新延时主要源于两方面原因:交互次数多和冗余的上报数据。 交互次数与从机个数、MODBUS数据定义个数正相关,同时存在由于MODBUS数据地址不连续,...

2020-05-31 18:14:59 5974 1

原创 基于MThings构建嵌入式通信设备(MODBUS)自动化测试/工装测试平台

声明:1、本文目的是介绍MThings的能力,而不是研究如何搭建自动化测试平台,所以在自动化测试方面存在诸多个人理解,并不系统、准确、完整。2、本文面向嵌入式通信设备测试场景,而非单纯软件,主要解释在通信接口测试工作中,MThings能够完成哪些辅助工作。3、本文中介绍的部分MThings功能尚未开发完成(截止时间:2020.06.01)。下图是一个典型的通信设备自动化测试系统,该系统可以应用于嵌入式设备系统集成测试、工装测试。自动化测试代替繁杂的手工测试工作,大部分测试用例都内涵**“闭环”*

2020-05-31 14:49:01 4980

原创 基于MThings实现MODBUS设备数据模拟仿真

嵌入式设备的接口通信开发过程中,MODBUS协议时常作为一种数据传输协议,负责采集终端(传感器)设备数据,或上传数据至就地数据服务器。如下图中的“嵌入式数据采集设备”作为系统中数据采集和传输的关键节点,同时承载MODBUS-TCP和MODBUS-RTU协议。 这种嵌入式设备的集成开发测试过程中,为了更好验证内部的数据流、功能实现,需要借助电表(举例)设备数据,但往往实验室无法快速搭建与实际应用一致的环境,即使可以镜像一致的环境,采集设备的数据也无法覆盖左右测试场景。 ...

2020-05-31 13:43:35 6246 4

原创 VS2008下ACE/TAO的编译for WINDOWS

<br /><br />1. 下载ACE+TAO.zip<br />示例版本:ACE+TAO+CIAO-5.7.0.zip(选择Full下载,它包含了vc9的解决方案)<br />下载地址:http://download.dre.vanderbilt.edu/<br />2. 解压至自定义目录<br />我们现在把它解压到C:/,现在ACE的目录如下显示 C:/ACE_wrappers |- ace |- apps |- gperf |... |- docs |- TAO |- CIAO |- docs |

2011-03-20 23:21:00 3858

转载 浮点数在内存中的存储格式

      浮点型变量在计算机内存中占用4字节(Byte),即32-bit。      遵循IEEE-754格式标准。 一个浮点数由2部分组成:底数m 和 指数e。 ±mantissa × 2exponent (注意,公式中的mantissa 和 exponent使用二进制表示) 底数部分 使用2进制数来表示此浮点数的实际值。 指数部分 占用8-

2010-05-27 20:26:00 2937

原创 重写(Overriding)和重载(Overloading)和隐藏

重写:如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。被覆盖的函数必须是虚(virtual)的,或者是动态(dynamic)的。重载:如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。O

2010-05-27 20:23:00 2802 1

转载 全局变量、extern/static/const区别与联系

在讨论全局变量之前我们先要明白几个基本的概念:1. 编译单元(模块):    在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如果你经常使用gcc,makefile等工具在linux或者嵌入式下做开发工作的话,那么你可能非常的理解

2010-03-10 10:33:00 3844 2

MThings使用手册 V1.0.0

MThings是一款基于MODBUS协议簇,面向开发、测试、运维人员的辅助工具。支持模拟主机和模拟从机两种模拟式。  支持多设备、多通道并发运行,无设备个数限制。  支持持久化数据配置、无菜单设计,操作友好。  支持MODBUS-RTU、MODBUS-ASCII、MODBUS-TCP。  支持串口、TCP客户端、TCP服务器(可接入多客户端)、UDP单播。  支持全链路报文监控、存储、分析。  支持丰富的链路丢包统计方法。  支持数据曲线录波,统计数据极值和均值,并可导出所有数据。  支持MODBUS数据配置模板导入导出。  支持多种变化数据模拟方法。

2020-09-22

【推荐】CORBA示例代码

CORBA示例代码CORBA示例代码CORBA示例代码CORBA示例代码CORBA示例代码CORBA示例代码CORBA示例代码

2010-03-17

【推荐】ACE TAO安装说明(VS2008)

ACE TAO安装 很全面(VS2008)

2010-03-17

分布式对象系统的处理过程

分布式对象系统的处理过程分布式对象系统的处理过程

2010-03-17

【推荐】CVS版本控制

CVS版本控制CVS版本控制CVS版本控制CVS版本控制 资料已经很全啦!

2010-03-17

STL 入门最全的资料

这是一篇指导您如何在Microsoft Visual Studio下学习STL并进行实践的文章。这篇文章从STL的基础知识讲起,循序渐进,逐步深入,涉及到了STL编写代码的方法、STL代码的编译和调试、命名空间(namespace)、STL中的ANSI / ISO字符串、各种不同类型的容器(container)、模板(template)、游标(Iterator)、算法(Algorithms)、分配器(Allocator)、容器的嵌套等方面的问题,作者在这篇文章中对读者提出了一些建议,并指出了使用STL时应该注意的问题。这篇文章覆盖面广,视角全面。不仅仅适合初学者学习STL,更是广大读者使用STL编程的实践指南。

2010-03-12

ASCII表 ,好东西啊

ASCII表 方便大家观看 …………………………………………

2010-03-12

CString 操作指南

CString 操作指南 ****************************

2010-03-12

【推荐】C++经典练习例题200例

C++经典练习例题200例 帮助你迅速提高C++水平!

2010-03-12

语音程序C++ 好东西

很好的语音C++源码 望大家快下啊 网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|版权声明|问题报告

2008-12-31

最强免费中文Modbus调试测试运维工具助手MThings

发表于 2020-12-16 最后回复 2020-12-16

XML 和 脚本语言 之间的关系

发表于 2010-12-22 最后回复 2016-08-31

好久不再,归来散分。。。

发表于 2013-12-08 最后回复 2014-04-17

疑惑???

发表于 2012-03-09 最后回复 2013-12-08

几个关于类成员函数指针的问题

发表于 2012-03-19 最后回复 2013-12-08

计算量 量化指标?

发表于 2012-02-14 最后回复 2012-02-14

大家来讨论一下什么时候应该用互斥机制、锁、关键区域。怎么用?

发表于 2010-03-22 最后回复 2012-01-04

< 、<= 平台实现有何不同,与语言是否有关系

发表于 2011-11-10 最后回复 2011-11-11

XML描述通信协议,如何抽象?

发表于 2011-11-10 最后回复 2011-11-10

如何从后台向界面刷新大数据,同时能做好分离

发表于 2011-11-04 最后回复 2011-11-04

CMFCTabCtrl 添加属性页问题

发表于 2011-09-26 最后回复 2011-09-26

VS2008 项目设置中如何切换控件的语言

发表于 2011-09-24 最后回复 2011-09-26

字符编码

发表于 2011-08-22 最后回复 2011-08-23

外码? 内码?

发表于 2011-08-22 最后回复 2011-08-22

时间加速

发表于 2011-08-10 最后回复 2011-08-11

Protected 继承 应用场景是什么?

发表于 2011-08-09 最后回复 2011-08-10

/0mnn 正则表达式

发表于 2011-08-08 最后回复 2011-08-08

VS2010中如何添加System字体?

发表于 2011-07-19 最后回复 2011-07-20

在多线程程序中,MFC对象的使用不应该穿越线程的边界

发表于 2010-05-03 最后回复 2011-07-09

一个不规则图形如何表示?

发表于 2011-07-05 最后回复 2011-07-06

CORBA::ORB_init()中没有命令行参数怎么处理??

发表于 2010-04-14 最后回复 2011-04-27

有没有电气通信类 中英文翻译资料 3万字

发表于 2011-04-26 最后回复 2011-04-26

求解释

发表于 2011-03-23 最后回复 2011-03-24

谁有快到手的专利,5月之前拿到证书的最好

发表于 2011-03-19 最后回复 2011-03-20

visio图插入word中,导致word文件太大

发表于 2010-11-18 最后回复 2010-11-18

一直在忧虑一个事。。

发表于 2010-11-06 最后回复 2010-11-08

年轻,给我动力!

发表于 2010-10-07 最后回复 2010-10-07

CButtonST 重绘问题

发表于 2010-09-15 最后回复 2010-09-15

[已处理]头像看不见

发表于 2010-09-01 最后回复 2010-09-15

ACE_Process && MFC

发表于 2010-09-05 最后回复 2010-09-15

考了第九次。。。六级终于过了。。。散分。。。

发表于 2010-08-27 最后回复 2010-08-31

CButtonST 响应没反应

发表于 2010-08-24 最后回复 2010-08-24

CbuttonST SetMenu

发表于 2010-08-24 最后回复 2010-08-24

RTEventService.exe

发表于 2010-08-22 最后回复 2010-08-23

头像怎么还是挂的??

发表于 2010-08-12 最后回复 2010-08-20

IDL 。。 unsigned char

发表于 2010-07-14 最后回复 2010-07-14

互斥体、信号量、读/写互斥体和令牌

发表于 2010-07-13 最后回复 2010-07-14

STL map

发表于 2010-07-07 最后回复 2010-07-08

内存泄露

发表于 2010-07-02 最后回复 2010-07-03

(LPSTR)(LPCTSTR)

发表于 2010-06-14 最后回复 2010-06-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除