当前位置: 首页 > news >正文

S7协议下,如何搭建触摸屏与PLC之间无线通信?

在实际生产中经常遇到当一台PLC无法满足工艺要求,如高速脉冲通道数不够用,模拟量输入/输出通道数不够用时,如果更换大型PLC成本将大幅增加,此时可以考虑使用多台PLC协同工作,共同完成复杂的工艺要求,那么多个PLC之间如何进行便捷高效的通信呢?

在实际系统中,同一个车间里分布多台PLC,用触摸屏集中控制。通常所有设备距离在几十米到上百米不等。在有通讯需求的时候,如果布线的话,工程量较大且不美观,这种情况下比较适合采用无线通信方式。本方案以MCGS触摸屏和2台西门子S7-200SMART为例,介绍触摸屏与多台 PLC的无线S7协议通信实现过程。在本方案中采用了西门子PLC无线通讯终端DTD418M,作为实现无线通讯的硬件设备。

一、方案概述

本方案中,用户无需更改网络参数和原有程序,也不必了解S7协议细节,通过欧美系PLC专用无线通讯终端DTD418M,即可直接替换触摸屏与PLC之间有线以太网通讯,且稳定方便的实现S7协议下无线以太网通讯。

无线网络图 ▼

二、测试设备与参数

● 西门子PLC型号:S7-200Smart × 2台

● 触摸屏:MCGS-TPC7031KT × 1台

● 通讯设备:DTD418MA × 3块

● 主从关系:1主2从

● 通讯接口:RJ45接口

● 供电:12-24VDC

● 通讯协议:S7协议

● 传输距离:100米,1KM

三、通讯主 要 特 征:

◆ 可以直接代替有线以太网线,实现无线组网;

◆ 支持西门子S7协议、PROFINET协议、MODBUS TCP/IP协议等;

◆ 全数字无线加密传输方式,不插卡无运行费用;

◆ 无需更改程序,即插即用,自适应接口协议;

◆ 可工作于各种恶劣环境下的工业场合。

四、接线方式

1.触摸屏与DTD418M接线

用一根通讯线,一端接入DTD418M的RJ45接口,另一端接入MCGS触摸屏的RJ45接口。

2.PLC与DTD418M接线

用一根通讯线,一端接入DTD418M的RJ45接口,另一端接入S7-200SMART的RJ45接口

五、触摸屏配置

1.文件-新建工程

2.设备窗口-设备工具箱-通用TCP/IP设备-SMART200以太网

3.设置IP地址

4.每台设备的变量的添加

5.画面制作

六、PLC简单配置

1. 新建工程,并如下图所示

2. 简单程序的编写

用M点驱动响应的Q点输出

3.点击下载-全部-查找CPU

4.点击下载

2台PLC的IP分别设置192.168.2.10和192.168.2.11。将程序下载到PLC

七、无线通讯测试

1、用触摸屏的M点按钮控制PLC对应的Q点,同时在触摸屏上监测Q点输出

2、给PLC的I点输入信号,看触摸屏是否有监测到相应点的信号

相关文章:

  • java SpringBoot 静态方法中获取@Value注入的值
  • 以太坊账户私钥管理之导出、导出keystore 文件
  • byte[] 转换为图片并保存
  • opencv中直方图和颜色跟踪相关:calcHist, calcBackProject, Meanshift和Camshift
  • 敏感词过滤实践
  • 【面试题】公平锁和非公平锁/可重入锁
  • 【字体转换】快速实现繁简字体相互转换
  • Jeecg Online代码生成器--单表代码生成
  • 获取一个实时走动的时间
  • 现货黄金的收益怎么样
  • BLE广播事件包解析空口事例
  • 入行数据分析要知道什么是正态分布和其他变量分布
  • 【web-攻击本地编译性应用程序】(11.3)格式化字符串漏洞
  • 安装redis过程中make报错
  • 商城模板_商城模板网站html5_微信小程序商城模板
  • [译]如何构建服务器端web组件,为何要构建?
  • gops —— Go 程序诊断分析工具
  • Javascript设计模式学习之Observer(观察者)模式
  • javascript数组去重/查找/插入/删除
  • mongo索引构建
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • node-glob通配符
  • orm2 中文文档 3.1 模型属性
  • 分布式事物理论与实践
  • Semaphore
  • 正则表达式-基础知识Review
  • #ifdef 的技巧用法
  • #单片机(TB6600驱动42步进电机)
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (C#)获取字符编码的类
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (二)fiber的基本认识
  • (四)Linux Shell编程——输入输出重定向
  • (推荐)叮当——中文语音对话机器人
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)Oracle 9i 数据库设计指引全集(1)
  • (转载)利用webkit抓取动态网页和链接
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • .form文件_SSM框架文件上传篇
  • .gitignore文件---让git自动忽略指定文件
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .NET MVC 验证码
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .net 流——流的类型体系简单介绍
  • /run/containerd/containerd.sock connect: connection refused
  • ?
  • ?php echo $logosrc[0];?,如何在一行中显示logo和标题?
  • @Controller和@RestController的区别?
  • @RequestMapping-占位符映射
  • @Transactional 竟也能解决分布式事务?
  • @Transaction注解失效的几种场景(附有示例代码)
  • [ 云计算 | Azure 实践 ] 在 Azure 门户中创建 VM 虚拟机并进行验证
  • [Android]使用Android打包Unity工程
  • [C/C++] -- 二叉树
  • [ccc3.0][数字钥匙] UWB配置和使用(二)