目录

1、前序

2、配置从机1给主机发送数据

2.1 创建从机1的结构体

2.2创建从机1结构体的全局变量

2.3 添加从机1的Publisher

2.4 从机1变量关联

2.5 主机中配置接收从机1的Subscriber

3 配置从机2给主机发送数据

3.1创建从机2结构体

3.2 添加Slave2State全局变量

3.3 配置从机2发送给主机的的Publisher

3.4 关联从机2的Publisher变量

3.5 主机中配置接收从机1的Subscriber

4 测试

4.1 主机发送给从机

4.2 从机分别给主机发送

5、工程 下载


1、前序

从机给主机发送数据分为两种情况。第一种是从机设备硬件不同需要单独开发从机PLC程序,那么需要单独配置不同的变量发送给主机。第二种方式是所有的从机设备硬件相同、程序工程也相同,此时只需要将第一套开发好的从机程序复制给多个从机即可(程序工程的IO中Device1、Device2、Device3、Device4等设需要选择各自PLC的网卡)。不论哪种方式,在主机中都需要对每个从机设备发送过来的数据进行Subscriber配置。

本节介绍第一种方式,两个从机中不同程序工程配置,给主机发送数据。

2、配置从机1给主机发送数据

从机给主机发送方法和主机给从机发送方法差不多,需要注意的是从机只能给主机发送,因此需要设置主机AMS NetID地址。

还是以从机1工程举例。

2.1 创建从机1的结构体

将从机设备需要发送给主机的变量创建在结构体SlaveState中(结构体中BOO型变量最好是8的整数倍,其它数据类型变量数量为偶数个)

TYPE SlaveState :STRUCTbState1:                  BOOL;bState2:                   BOOL;bState3:                   BOOL;bState4:                   BOOL;bState5:                   BOOL;bState6:                   BOOL;bState7:                   BOOL;bState8:                   BOOL;nData1:                        INT;nData2:                     INT;nData3:                     INT;nData4:                     INT;fData1:                     LREAL;fData2:                       LREAL;fData3:                       LREAL;fData4:                       LREAL;END_STRUCT
END_TYPE

然后“convert to Global Data Type”

2.2创建从机1结构体的全局变量

_SlaveState          AT%Q*:          SlaveState;                     //从机输出结构体变量

PLC程序工程重新编译生成。

2.3 添加从机1的Publisher

在Device1中添加新项,选择Publish生成Box2。然后在Box2中添加Pub-Var1

设置Publish发送的指定控制器AMS NetID地址

2.4 从机1变量关联

关联从机Pub-Var1和结构体全局变量_SlaveState。

激活从机工程。

2.5 主机中配置接收从机1的Subscriber

在Device2 中添加新项,选择Subscriber

在Subscribe中添加新项,选择从机1控制器的Pub-Var1

在全局变量中定义从机1的 结构体全局变量_SlaveState1

_SlaveState1     AT%I*:          SlaveState;                     //从机1输出结构体变量

重新编译生成主机PLC程序工程,然后IO变量关联

激活主机PLC工程程序

监视主机和从机1

同理,配置从机2给主机发送

3 配置从机2给主机发送数据

方法同从机1配置方式相同,为了方便区分从机设备,从机2结构体名定义为SlaveState2,结构体中变量直接从从机1中复制(为了方便直接复制从机1结构体变量,实际中可以定义不一样的变量)。

3.1创建从机2结构体

将从机设备需要发送给主机的变量创建在结构体SlaveState2中

TYPE Slave2State :STRUCTbState1 : BOOL;bState2 : BOOL;bState3 : BOOL;bState4 : BOOL;bState5 : BOOL;bState6 : BOOL;bState7 : BOOL;bState8 : BOOL;nData1 : INT;nData2 : INT;nData3 : INT;nData4 : INT;fData1 : LREAL;fData2 : LREAL;fData3 : LREAL;fData4 : LREAL;END_STRUCT
END_TYPE

然后“convert to Global Data Type”

3.2 添加Slave2State全局变量

添加Slave2State全局变量,并且重新编译生成从机2得PLC程序工程

_Slave2State     AT%Q*:          Slave2State;                    //从机2输出结构体变量

3.3 配置从机2发送给主机的的Publisher

Device1中添加新项选择Publish,然后添加变量

设置publish 主机的AMS NetID,仅针对主机发送

3.4 关联从机2的Publisher变量

激活从机2工程。

3.5 主机中配置接收从机1的Subscriber

在Device2 中添加新项,选择Subscriber

在Subscribe中添加新项,选择从机2控制器的Pub-Var1

在全局变量中定义从机2的 结构体全局变量_SlaveState2,并且重新编译和生成主机PLC程序工程

_SlaveState2     AT%I*:          Slave2State;                    //从机2输出结构体变量

IO变量关联

激活主机PLC工程程序

4 测试

4.1 主机发送给从机

主机写入后

4.2 从机分别给主机发送

从机1给主机发送

从机2给主机发送

5、工程 下载

程序工程连接:TwinCAT3EAP通讯测试.rar-制造文档类资源-CSDN下载

TwinCAT3 控制器PLC之间EAP通讯2-从机发送方式1相关推荐

  1. TwinCAT3 控制器PLC之间EAP通讯1-主机给多个从机发送

    目录 1.硬件组成 2.主机给多个从机发送数据 2.1 创建结构体MastCommand 2.2 创建MastCommand结构体全局变量 2.3 IO扫描和publisher box添加 2.4 激 ...

  2. 西门子1200 plc与台达14ES plc之间modbus 通讯实战程序 西门子1200plc做主站,台达DVP plc做从站,进行数据交换

    西门子1200 plc与台达14ES plc之间modbus 通讯实战程序 西门子1200plc做主站,台达DVP plc做从站,进行数据交换. 功能:通过MODBUS指令,通过西门子CM1241 4 ...

  3. 触摸屏与PLC之间无线通讯步骤详解

    在工厂里,触摸屏往往位于程控室内,作为控制多个不同位置PLC的主站设备.因为触摸屏和plc所处位置距离较为分散,重新铺设电缆线工期长,成本高,故采用无线方式解决触摸屏与PLC之间的通讯问题. 接下来, ...

  4. 如何有效建立触摸屏与PLC之间无线通讯?

    想要建立触摸屏与PLC之间无线通讯其实很简单,接下来,我们就来详细说说威纶通触摸屏与三菱FX3U PLC基于三菱专用协议下的无线通信实现方法. 首先你需要一台威纶通触摸屏作为主站,两台三菱FX3U P ...

  5. 三菱PLC与第三方设备TCP通讯_不用在PLC内编程,快速实现西门子与欧姆龙、三菱等品牌的PLC之间实时通讯...

    项目中需要西门子S7-1513和欧姆龙的CJ2M之间通讯,为了快速实现完成项目,先采用一个智能网关模块来完成PLC之间的通讯任务.相关软件和手册下载 PLC与数据库双向通讯 西门子PLC从欧姆龙PLC ...

  6. 如何实现人机界面与多台plc之间无线通讯?

    本文将以MCGS触摸屏与三菱FX5U PLC基于MODBUS协议下的无线通信为例,为大家详细讲解如何用无线方式解决触摸屏与PLC之间的通讯问题. 测试设备与参数 1. 三菱PLC型号:FX5U *1台 ...

  7. 不用编程,实现三菱FX5U与罗克韦尔(AB)PLC之间实时通讯

    IGT-DSER智能网关模块支持西门子.三菱.欧姆龙.AB等各种品牌的PLC之间通讯,同时也支持PLC与Modbus协议的工业机器人.智能仪表等设备通讯.网关有多个网口.串口,也可选择WIFI,4G无 ...

  8. 不用在PLC内编程,实现西门子与罗克韦尔(AB)PLC之间数据通讯

    智能网关IGT-DSER支持多点对多点的设置之间通讯,支持以太网,串口设备混合数据交换:无需编程开发,只须配置数据的起始地址和数量即可,支持热插拔,断电重启后自恢复运行,在实际的工程项目中应用方便. ...

  9. plc与plc之间怎么通讯?

    看你用什么plc,最简单的一个可以通过IO.232通信.485通信.DP通信.以太网通信等很多方式进行通信,主要看你的功能需求和plc的功能. 首先,初始化通信格式(包括站号.波特率.校验.停止位等. ...

  10. 倍福mySQL通讯_C#和倍福PLC之间的通讯控制

    1.新建项目并引用TwinCAT动态链接库 2.引用类,并编写倍福控制的相关对象 1 usingSystem;2 usingSystem.Collections;3 usingSystem.Colle ...

最新文章

  1. 在CentOS 6.3 64bit上安装最新版tsar并监控ATS 5.3
  2. Memcached在Asp.net下的应用
  3. 10进制转16进制,16进制转10进制,随机出一个6位十六进制颜色值
  4. Python字典dict的增删查改及常用操作
  5. Weblogic下创建JMS消息服务
  6. fcn网络训练代码_用FCN做分割
  7. JavaFX的响应式设计
  8. 计算机专业410分能上哪些大学,2021年高考410分能报什么学校
  9. SAP License:SAP MM中的几个概念
  10. Egret中的三种单例写法
  11. java项目怎么启动_github上的java项目怎么运行(面向小白)
  12. 程序人生之常见术语与名词解释
  13. 量子计算机和量子纠缠的关系,科普:什么是量子纠缠和量子计算?
  14. 响应“交通强国”战略,百度地图重构行业生态价值
  15. UTF-8和utf8的区别
  16. 怎样设置阿里云Web应用攻击防护?
  17. 【工具】Gamepad Tester游戏手柄在线测试平台
  18. 论文笔记之Estimator Varience in RL
  19. 和 谐 文 化 简 介
  20. 操作系统综合实验验优:OSLab小型操作系统仿真实验(大大小小实验)

热门文章

  1. 简单易用的程序多开器软件-V5程序多开器提供下载
  2. 如何使用TCPA300电流放大器和电流探头进行电流测试
  3. 深度学习-对抗神经网络简介
  4. 工业3D互联网可视化三维数字化智能工厂管理系统
  5. softmax 激活函数
  6. socket服务器主动下发消息,socket服务器主动发送消息给客户端
  7. 深度学习与计算机视觉教程(2) | 图像分类与机器学习基础(CV通关指南·完结)
  8. 计算机视觉教程2-8:你知道图像背景虚化效果的原理吗?(附代码)
  9. 项目管理-产品开发流程
  10. 使用C++实现FC红白机模拟器 概述