施耐德PLC之间的的无线MODBUS通信实例

2023-10-30 08:20

本文主要是介绍施耐德PLC之间的的无线MODBUS通信实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文主要介绍施耐德(睿易)PLC之间的MODBUS通讯的具体操作和各参数的意义,此方案可以作为施耐德(睿易)PLC之间的的无线MODBUS 通信实例。在本方案中采用了西门子、施耐德等欧美系PLC专用无线通讯终端DTD434M,作为实现无线通讯的硬件设备。

一、方案概述

1. 有线MODBUS网络组成

2. 无线MODBUS 网络

通过DTD434MC方便实现无线MODBUS网络,无需更改网络参数直接替换有线连接。

二、施耐德PLC软件设置

在本方案中我们以施耐德PLC型号为M100C16R为例,实现施耐德PLC之间的无线通讯。

编程软件:EcoStruxure Machine Expert – Basic V1.0

1. 硬件配置

如下图所示,打开软件上对应的PLC型号。我们这里选择TM100C16R

选择后软件主视窗如下图所示:

如下图所示,双击绿色部分(串口配置)

按照下图新型串口配置:

如下图电机视窗左侧的SL1(串行线路)下方的MODBUS依次设置对应的从站号和主站。

注意:这里设置从站的话需要设置从站号

2. 从站读取指令

作为从站通讯时是不需要任何设置的,主站通讯时需要进行编程

从站读取指令:

使用%WRITE_VR0指令,鼠标放在指令上面会自动提示一个接口参数的意义,如下图所示:

鼠标左键点击指令会出现如下图所示的配置参数串口,这里我们配置为串口1,将%MW10.X0开始的6个位写入从站的%Q0.0-%Q0.5里面去。

读取指令:使用%READ_VAR 1指令进行从站的数据读取

鼠标放在指令框上面后会出现如下指令提示:

鼠标左键单击指令出现如下图参数设置框,如图所示:

这里我们是通过串口1读取从站的保持寄存器%MW0的数据读取长度为10个字存入本地的%MW10开始的10个字里面

三、实现MODBUS主站无线网络

1. 试验设备及其接线

如下图所示M100 PLC串口端子有4位接线孔,分别做如下定义。

取两根导线分别连接DTD434M的A、B两个端子,连接A端的线连接施耐德PLC的D1端子,连接B端的线连接施耐德PLC的DO端子。如下图所示

给DTD434M供电接入V+ V-,接入PLC电源,拨动DTD434的红色拨码开关,选择8/N/1,无校验(拨码开关操作必须在断电情况下),接上天线。

2. 检测无线通讯

取24VDC电源接入施耐德PLC主站,24V电源0V与COM0短接如下图所示;

24VDC的V+正接入INOUT的10号端子,则主站上相对应的信号指示绿灯亮启,同时通过无线远传子站PLC相对应的信号指示灯亮启,则无线通讯成功。

四、关于DTD434M的简单说明

无线数据通讯终端DTD434M能与施耐德PLC、组态软件、人机界面、触摸屏、测控终端等工控产品组成无线测控网络,实现西门子无线无线MODBUS协议的组网。

■ 主 要 特 征:

◆ 直接代替有线RS485方案,实现无线组网通讯;

◆ 全数字无线加密方式,保证数据安全可靠;

◆ 直流9~24V宽电源电压供电,平均工作电流小于50mA;

◆ 通信接口:RS232/RS485;

◆ 传输距离:10KM范围内可选;

◆ 支持标准串口协议:Modbus RTU协议、PPI协议。

这篇关于施耐德PLC之间的的无线MODBUS通信实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/306653

相关文章

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Apache Ignite缓存基本操作实例详解

《ApacheIgnite缓存基本操作实例详解》文章介绍了ApacheIgnite中IgniteCache的基本操作,涵盖缓存获取、动态创建、销毁、原子及条件更新、异步执行,强调线程池注意事项,避免... 目录一、获取缓存实例(Getting an Instance of a Cache)示例代码:二、动态

Python实现MQTT通信的示例代码

《Python实现MQTT通信的示例代码》本文主要介绍了Python实现MQTT通信的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 安装paho-mqtt库‌2. 搭建MQTT代理服务器(Broker)‌‌3. pytho

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Javaee多线程之进程和线程之间的区别和联系(最新整理)

《Javaee多线程之进程和线程之间的区别和联系(最新整理)》进程是资源分配单位,线程是调度执行单位,共享资源更高效,创建线程五种方式:继承Thread、Runnable接口、匿名类、lambda,r... 目录进程和线程进程线程进程和线程的区别创建线程的五种写法继承Thread,重写run实现Runnab

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试