EtherCAT从站转modbus RTU协议转换网关用modbus slave测试的方法

远创智控YC-ECT-RTU通讯网关具有EtherCAT从站功能,主要功能是将EtherCAT网络和Modbus-RTU网络连接起来。在使用方面,本网关可以连接到EtherCAT总线中作为从站使用,也可以连接到Modbus-RTU总线中作为主站或从站使用。这款通讯网关还支持多种不同的通讯协议,可以在不同的网络中进行自由切换,极大的提高了通讯的灵活性。

以下就是通过modbus 从站软件进行操作的方法

MODBUS-RTU 技术参数

网关的 MODBUS 接口可通过拨码选择做为主站或从站,两种工作方式二选一工作。

网关的 MODBUS 接口可通过拨码选择 RS485 接口或 RS232 接口,两种接口二选一工作。

网关的 MODBUS 波特率支持: 2400、4800、9600、19.2K、38.4K、57.6K、 115.2K 等。

网关的 MODBUS 字符格式及校验位:8 位无校验+1 停止位、8 位+偶校验+1 停止位、8 位+奇校验+1 停止位、8 位无校验+2 停止位。

网关作为 MODBUS 主站,支持 01H、02H、03H、04H、05H、06H、0FH、 10H 号功能。

网关作为 MODBUS 从站,支持 03H、04H、06H、10H 号功能。

网关作为 MODBUS 主站,最大能带 32 个 Modbus 从站。

MODBUS 的电气连接

RS485 电气连接

使用 RS485 通讯时,所有设备的信号 A 连接到一起,信号 B 连接到一起。

当需要使用终端电阻时,可以将网关端子的 B 与 TR 短接到一起。

协议及数据转换

协议转换原理

网关分别从 ETHERCAT 一侧和 MODBUS 一侧读写数据,存入各自的缓冲区,网关内部将缓冲区的数据进行交换,从而实现两边数据的传输。

MODBUS 功能码

MODBUS 报文相对比较固定,所以您只需要稍作了解,看几条报文之后就知道了它的结构,在需要的时候再来具体查询。

读取保存寄存器(03H)

功能码:03H 主站询问报文格式:

地址功能码起始地址高位起始地址低位寄存器数高位寄存器数低位CRC
13H03H00H60H(96)00H02Hxxxx

功能:读从站保持寄存器4XXXX值。

本例:读13H号从站保持寄存器值,起始地址=0060H=96,寄存器数=0002;

因此,本询问报文功能是:读19(13H)号从站3个保持寄存器40096—40097的值;从站应答格式:

地址功能码字节计数寄存器
40096 高位
寄存器
40096 低位
寄存器
40097 高位
寄存器
40097 低位
CRC
13H03H04H03H00H02H2AHxxxx

功能:从站返回保持寄存器的值:40096=0300H,40097=022AH

读取输入寄存器(04H)

功能码:04H 主站询问报文格式:

地址功能码起始地址高位起始地址低位寄存器数高位寄存器数低位CRC
13H04H00H05H00H01Hxxxx

功能:读从站输入寄存器3XXXX值。

本例:读13H号从站输入寄存器值,起始地=0005H=0005,寄存器数=0001;因此,本询问报文功能:读19(13H)号从站1个保持寄存器30005的值;从站应答格式:

配置网关的 MODBUS 报文

网关做为 MODBUS 主站

首先,我们需要将电脑与网关的LAN网口连接,然后在右侧添加一个虚拟主站到项目中。在软件左侧项目树中可以看到此主站。

接下来,双击主窗口中的“Modbus Master”图标,弹出Modbus主站参数设置窗口。在这个窗口里,用户可以设置Modbus总线的运行参数和网关做为Modbus主站工作时的特性。

双击主窗口的“Modbus Slave”,可以设置该从站的报文。配置完成后,用户再次双击“Modbus Master”,点击“地址表”按钮,弹出Modbus从站数据列表。此列表展示出用户配置的全部报文,可以帮助用户进行数据的地址映射

配置网关的 ETHERCAT 从站

将网关xml文件拷贝到主站相应路径下,然后新建工程后添加ETHERCAT主站。

在主站建立后,添加ETHERCAT从站。在弹出的对话框中,选择网关设备,点击OK。

添加后的从站,点击左侧项目树中的Box1,在右侧的主视图中,点击Slots,可以看到网关配置输入输出数据的页面。

如下图所示,在 Slot 列表中,添加对应的字节长度

注意:此处输入、输出长度的配置,要与网关的配置一致。

测试数据:

网关配置的第一个字节是读线圈,我们在 Modbus Slave 软件中,手动修改线

圈的状态,如下图:

可以在 TWINCAT 软件中监控到第一个上传数据,改变为 1,数据修改成功。

在 TWINCAT 软件上手动修改一个 output 数据值,如下图:

在 Modbus Slave 软件中可以监视到,数据已经成功下发。

以上就是网关的配置流程如果你也需要一款高效、可靠的通讯网关,那么远创智控的这款新品或许是你的不二之选。更多详情请关注远创智控官网。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/116960.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++ qt连接操作sqlite

qt客户端编程,用到数据库的场景不多,但是部分项目还是需要数据库来保存同步数据,客户端用到的数据库,一般是sqlite。 Qt提供了数据库模块,但是qt本身的数据库模块并不好用,会有各种问题, 建议大家不要,可以自己封装数据库的操作。本篇博客介绍qt连接操作sqlite。 sqlit…

nmp、yarn、yeoman、bower是什么东西?

1:npm(Node Package Manager):npm 是 Node.js 的包管理器,用于安装、管理和共享 JavaScript 包。它是 JavaScript 生态系统中最常用的包管理工具,可以轻松地安装和管理项目的依赖项。 2:Yarn&a…

【python VS vba(系列2)】 python和vba读写EXCEL文件的方式比较 (建设ing)

目录 1 用VBA读写EXCEL文件 1.1 用VBA读写,本工作簿workbook里的特定sheet的特定内容 1.1.1 EXCEL表内内容访问 1.1.2 注意点 1.1.3 代码 1.2 用VBA读写本工作簿workbook里的所有sheet的内容 1.2.1 麻烦之处 1.2.2 方法,如何指定EXCEL里的内容…

【珠峰 WEB 前端架构师课程】学习笔记 100 篇(完结)

该课程是珠峰姜文老师讲的,个人觉得讲的很不错,一路在 b 站学习下来做了 100 篇的学习笔记,收获颇丰。 该课程主要讲了高阶函数、函数柯里化、发布订阅模式、观察者模式、从 0 到 1 实现一个 promise,co 库的实现、eventloop 执行…

apk反编译修改教程系列-----任意修改apk版本号 版本名 防止自动更新【二】

往期教程 apk反编译修改教程系列-----修改apk应用名称 任意修改名称 签名【一】 上期演示了下如何修改apk的名称。相信只要用心的友友都会操作了。这次讲解下如何修改软件的版本号与版本名字的操作 名词浅释: 在apk反编译中的VersionCode---是版本号的意思.是一…

Vue3 实现页面简单的CRUD

请求拦截器 import axios from axios; import { ElNotification, ElMessageBox, ElMessage, ElLoading } from element-plus; import { saveAs } from file-saver; import store from /store; import { getToken } from /utils/token; import errorCode from /utils/errorCode…

基于斑点鬣狗算法的无人机航迹规划-附代码

基于斑点鬣狗算法的无人机航迹规划 文章目录 基于斑点鬣狗算法的无人机航迹规划1.斑点鬣狗搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要:本文主要介绍利用斑点鬣狗算法来优化无人机航迹规划。 …

LuatOS-SOC接口文档(air780E)-- ioqueue - io序列操作

ioqueue.init(hwtimer_id,cmd_cnt,repeat_cnt) 初始化一个io操作队列 参数 传入值类型 解释 int 硬件定时器id,默认用0,根据实际MCU确定,air105为0~5,与pwm共用,同一个通道号不能同时为pwm和ioqueue int 一个完…

Java 基础 面试 多线程

1.多线程 1.1 线程(Thread) 线程时一个程序内部的一条执行流程,java的main方法就是由一条默认的主线程执行 1.2 多线程 多线程是指从软硬件上实现的多条执行流程的技术(多条线程由CPU负责调度执行) 许多平台都离不开多…

【Matlab笔记_17】查找数组中相同元素

案例一:找到数组中相同元素所在位置索引 方法:使用unique函数用于找到唯一的元素和它们在原数组中的索引。然后,histc函数用于计算每个唯一元素的出现次数,并通过ismember函数找到重复元素在原数组中的索引。最后,通过…

动手学深度学习—网络中的网络NiN(代码详解)

目录 1. NiN块2. NiN模型3. 训练模型 LeNet、AlexNet和VGG都有一个共同的设计模式: 通过一系列的卷积层与汇聚层来提取空间结构特征;然后通过全连接层对特征的表征进行处理。 如果在过程的早期使用全连接层,可能会完全放弃表征的空间结构。 …

Day 1 Vue 页面框架

现在前端框架越来越像后端了,特别是TypeScript这样的语言出现后,开发前端的体验跟后端渐渐接近了。当然,作为一个后端,直接上手前端,还是有很多坑要填的。 本次开发,前端页面框架直接选择Vue。原因很简单&…

深入浅出排序算法之归并排序

目录 1. 归并排序的原理 1.1 二路归并排序执行流程 2. 代码分析 2.1 代码设计 3. 性能分析 4. 非递归版本 1. 归并排序的原理 “归并”一词的中文含义就是合并、并入的意思,而在数据结构中的定义是将两个或者两个以上的有序表组合成一个新的有序表。 归并排序…

Python-pptx教程之一从零开始生成PPT文件

简介 python-pptx是一个用于创建、读取和更新PowerPoint(.pptx)文件的python库。 典型的用途是根据动态内容(如数据库查询、分析数据等),将这些内容自动化生成PowerPoint演示文稿,将数据可视化&#xff0c…

hutool 工具类提高编码效率

hutool 工具类 hutool 依赖 引入 hutool 依赖包。 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.6</version> </dependency>StrUtil 常用方法&#xff1a; StrUtil.equals&…

【IDEA配置】IDEA配置

参考视频&#xff1a;【idea必知必会】优化设置 告别卡顿 1. 显示内存 右击底下空白区域&#xff0c;出现memory indicator内存指示器&#xff0c;点击勾选即可显示。有的是在Settings->Appearance->Window Options里&#xff0c;如图所示&#xff1a; 2. 内存设置 …

虚拟世界游戏定制开发:创造独一无二的虚拟体验

在游戏开发领域&#xff0c;虚拟世界游戏定制开发是一项引人注目的任务&#xff0c;旨在满足客户独特的需求和愿景&#xff0c;创造一个完全个性化的虚拟世界游戏。这种类型的游戏开发需要专业的技能、深刻的游戏开发知识和密切的与客户合作&#xff0c;以确保游戏满足客户的期…

数据库Redis(二):基本数据类型

Redis中采用Key-Value键值对的形式将数据存储在数据库中&#xff0c;首先介绍Redis中针对键Key的操作命名。 Redis键Key相关命令 # 查看当前库所有key keys * # 判断某个key是否存在 exists <key> # 查看你的key是什么类型 type <key> # 删除指定的key数据 …

uboot移植之环境变量bootargs

一. 简介 uboot 中有两个非常重要的环境变量 bootcmd 和 bootargs。本文来学习 uboot的环境变量 bootargs。 bootargs 环境变量也叫命令行参数。bootargs 保存着 uboot 传递给 Linux 内核的参数。 二. uboot移植之环境变量bootargs 环境变量 bootargs 的设置是在 mx6ull_al…

CI2454 2.4g无线MCU芯片应用

Ci2454集成MCU芯片 | Ci2454是一款集成无线收发器和 8 位 RISC&#xff08;精简指令集&#xff09;MCU 的SOC芯片。 #Ci2454芯片 集成MCU芯片# 中国芯片# 无线收发器特性&#xff1a; 工作在 2.4GHz ISM 频段 调制方式&#xff1a;GFSK/FSK 数据速率&#xff1a;2Mbps/1Mbps…