热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

at指令获取网络连接类型_ABPLC|LOGIX5000控制器之间通过MSG指令实现数据交互

前言:ABPLC控制器系列很多,主要分为小型MicroLogix和Micro800系列、中型CompactLogix系列、大型ControlLogix系

前言: AB PLC控制器系列很多,主要分为小型MicroLogix和Micro800系列、中型CompactLogix系列、大型ControlLogix系列,而大、中型又统称为LOGIX 5000控制器。在项目实行过程中,控制器之间数据交互是经常涉及到的课题,LOGIX 5000控制器之间数据交互主要有两种方式,一是通过MSG指令,二是生产者/消费者标签。今天,本文介绍的是第一种方式,而选用的控制器为CompactLogix与ControlLogix控制器,非常具有代表性,希望能帮助有需要的朋友。

01 实现功能

1. CompactLogix控制器:1769-L33ERM,IP地址:192.168.1.20

2. ControlLogix控制器:1756-L72+1756-EN2TR,IP地址:192.168.1.10

3. 网络连接:1769-L33ERM与1756-L72通过网线或交换机连接

4. 实现功能:两台控制器之间通过MSG指令实现数据交互

02 软件环境

1. 操作系统:Windows7 旗舰版 SP1 64位

2. 编程软件:Studio 5000 V30.00.00

3. 通信软件:RSLinx Classic Gateway 3.90.00

03 CompactLogix端MSG编程

1. 打开Studio 5000软件,新建项目名称为“CMP”,控制器选择1769-L33ERM,版本为30,如下图所示,已经创建好的项目.

dc665df748737e2876c67671e4c922fe.png

2. 在项目CMP的控制器标签,新建4个标签:

(1) MSG_Rd,数据类型MESSAGE,从1756-L72中读取数据的通信指令结构体;

(2) MSG_Wr,数据类型MESSAGE,把数据写到1756-L72的通信指令结构体;

(3) Read_tag,数据类型DINT[5],存储从1756-L72读取的数据;

(4) Write_tag,数据类型DINT[5],把这五个数据发送到1756-L72.

9eaa0560fed18f8d48d0643657c234ba.png
a71423e832bdd845fdec549b75a75d8a.png

3. 再次打开Studio 5000软件,新建项目名称为“CTL”,控制器选择1756-L72,添加以太网通信模块1756-EN2TR,命名为EN2T, 并在控制器标签里面创建2个标签,Write_tag,Read_tag,数据类型均为DINT[5],将程序下载到控制器并在线.

92dc33c2068d6c0391afd3353f1eca68.png

4. 在EXCEL中,编制数据通信协议表,这步很重要,尤其是大量数据交互时,编程通信表让数据清晰明了,建议大家在程序开发时,养成多用EXCEL的习惯.

cff8811b75f59d2b19eab93e96b44139.png

5. 在项目CMP(1769-L33ERM)里面调用MSG指令,编写读取、发送数据的程序,详见下图.

17bf9a7b38a5e1580b6575f929a96a0a.png

6. 指令MSG_Rd用来1769-L33ERM读取1756-L72里面的数据,详细配置见下图:

(1) Message Type:选择CIP DataTable Read,从另一控制器中读取数据;

(2) Source Element:源对象,填写通信伙伴中的标签起始地址,本文为1756-L72中的Write_tag[0];

(3) Destination Element:目标对象,填写本地控制器存储数据标签起始地址,本文为1769-L33ERM中的Read_tag[0];

(4) Number of Element:交换数据的数量,本文为5,注意:Source 和 Destination 的类型必须匹配;

(5) 通信路径:2,192.168.1.10,1,0

228d3bc880e475b1c8a0ec673ba6c0aa.png

7. 指令MSG_Wr用于1769-L33ERM发送数据到1756-L72,详细配置见下图:

9271d12e950325b6c14105f31d402f11.png

8. 功能测试,将项目CMP中的程序下载并在线,在CMP标签Write_tag写入数据,控制器CTL中的标签Read_tag数据立即发生变化与之相同;在CTL标签Write_tag写入数据,控制器CMP中的标签Read_tag数据立即发生变化与之相同,说明通信成功.

f7eba6e58c08c36cd545b9a15cf5049e.png

04 ControlLogix端MSG编程

1. 在项目CTL(1756-L72)控制器,再创建2个标签:

(1) MSG_Rd,数据类型MESSAGE,从1769-L33ERM中读取数据的通信指令结构体;

(2) MSG_Wr,数据类型MESSAGE,把数据写到1769-L33ERM的通信指令结构体.

03d691f8666de51a69b074d94bcdcf41.png

2. 编写通信程序,调用MSG指令,与在项目CMP的指令完全相同.

d38eae662c54d66c7d5759f1aacf83de.png

3. 指令MSG_Rd用来读取1769-L33ERM数据,详细配置见下图:

(1) Message Type等参数与CMP程序配置相同,请参考前面表述;

(2) 通信路径:EN2T,2,192.168.1.20,1,0

204e57e4ecc5e2529a846385620d0ba6.png

4. 指令MSG_Wr用来发送数据到1769-L33ERM,其中Message Type等参数与CMP程序配置相同,请参考前面表述,通信路径:EN2T,2,192.168.1.20,1,0(注意:符号为英文符号,前面也是).

bcd19b87366760f622d490e5036b41fc.png

5. 功能测试,将项目CTL中的程序下载并在线,在CMP标签Write_tag写入数据,控制器CTL中的标签Read_tag数据立即发生变化与之相同;在CTL标签Write_tag写入数据,控制器CMP中的标签Read_tag数据立即发生变化与之相同,说明通信成功.

07ed6c8ff9d4c88075f4e26bb5b69ad3.png

05 资料下载

1. MSG指令的应用非常广泛,不仅限于LOGIX 5000控制器之间进行数据交换,同样适用于LOGIX 5000控制器与其他系列控制器.

78224231e5d1a4646bd674992adc91c7.png

2. MSG指令,其难点在于通信路径的设置,本文案例就非常典型.

10ca660e0e67dbd3879fa563d78ebb64.png

3. 如果,你需要了解更多关于MSG指令的详细说明,请下载以下官方资料:

  • 《1756-rm003_-zh-p》,LOGIX 5000通用指令集,中文,2018年3月
  • 《1756-pm012_-en-p》,LOGIX 5000 Message指令,英文,2018年12月

4. 下载方法:点击左下角“了解更多”,提取码:9zx3

结语: 综上所述,本文详细介绍了AB LOGIX 5000控制器之间通过MSG指令交互数据,而通信伙伴选用的具体代表性的CompactLogix与ContolLogix控制器,其难点在于通信路径的配置,大家在配置的时候需要注意。另外,CompactLogix控制之间、ContolLogix控制器之间进行数据交互,其MSG通信路径的配置,请自行研究,不在累述。


【AB PLC工作室】

坚持原创 注重实用

如果本文,对您有一点帮助或启示。

请分享给更多的朋友,对小编以示鼓励,谢谢!



推荐阅读
  • 本文详细介绍了在Linux虚拟化部署中进行VLAN配置的方法。首先要确认Linux系统内核是否已经支持VLAN功能,然后配置物理网卡、子网卡和虚拟VLAN网卡的关系。接着介绍了在Linux配置VLAN Trunk的步骤,包括将物理网卡添加到VLAN、检查添加的VLAN虚拟网卡信息以及重启网络服务等。最后,通过验证连通性来确认配置是否成功。 ... [详细]
  • CISCO ASA防火墙Failover+multiple context详细部署By 年糕泰迪[操作系统入门]
    一.文章概述本文主要就CISCOASA防火墙的高可用和扩张性进行阐述和部署。再cisco防火墙系列中主要有3种技术来实现高可用和扩张性。分别是Failover,multiplese ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • EPPlus绘制刻度线的方法及示例代码
    本文介绍了使用EPPlus绘制刻度线的方法,并提供了示例代码。通过ExcelPackage类和List对象,可以实现在Excel中绘制刻度线的功能。具体的方法和示例代码在文章中进行了详细的介绍和演示。 ... [详细]
  • HSRP热备份路由器协议的应用及配置
    本文介绍了HSRP热备份路由器协议的应用及配置方法,包括设计目标、工作原理、配置命令等。通过HSRP协议,可以实现在主动路由器故障时自动切换到备份路由器,保证网络连通性。此外,还介绍了R1和R2路由器的配置方法以及Sw1和Sw2交换机的配置方法,最后还介绍了测试连通性和路由追踪的方法。 ... [详细]
  • 交换机配置:intg100unshintvlani1ipadd192.168.56.177qstelseuser-iv4authaaaproinsshupl3qsshuserpyt ... [详细]
  • 移动传感器扫描覆盖摘要:关于传感器网络中的地址覆盖问题,已经做过很多尝试。他们通常归为两类,全覆盖和栅栏覆盖,统称为静态覆盖 ... [详细]
  • 网关(Gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • 微软评估和规划(MAP)的工具包介绍及应用实验手册
    本文介绍了微软评估和规划(MAP)的工具包,该工具包是一个无代理工具,旨在简化和精简通过网络范围内的自动发现和评估IT基础设施在多个方案规划进程。工具包支持库存和使用用于SQL Server和Windows Server迁移评估,以及评估服务器的信息最广泛使用微软的技术。此外,工具包还提供了服务器虚拟化方案,以帮助识别未被充分利用的资源和硬件需要成功巩固服务器使用微软的Hyper - V技术规格。 ... [详细]
  • Java如何导入和导出Excel文件的方法和步骤详解
    本文详细介绍了在SpringBoot中使用Java导入和导出Excel文件的方法和步骤,包括添加操作Excel的依赖、自定义注解等。文章还提供了示例代码,并将代码上传至GitHub供访问。 ... [详细]
  • 华为和阿里VPN
    阿里云创建VPN1、 创建VPN网关2、 填写名称,选择对应的VPC,不指定交换机,选择带宽3、购买的是IPSEC-VPN不开启SSLVPN,点击立即购买 4、 创建客户网关  ... [详细]
  • 用户视图(查看运行状态或其他参数)系统视图(配置设备的系统参数)system-viewEntersystemview,returnuservi ... [详细]
author-avatar
你走以后_心若逝世灰决_677
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有